/* V4 — per-program roles, CRUD affordances and finance access */
.account-switch{height:42px;display:flex;align-items:center;gap:8px;border:1px solid var(--line);background:#fff;border-radius:12px;padding:4px 7px 4px 10px;min-width:235px}.account-switch .role-icon{display:grid;place-items:center;color:var(--muted)}.account-copy{display:grid;line-height:1;flex:1}.account-copy small{font-size:8px;text-transform:uppercase;letter-spacing:.08em;color:var(--muted);font-weight:800;margin-bottom:3px}.account-copy select{appearance:none;border:0;background:transparent;padding:0 20px 0 0;font-size:11px;font-weight:750;outline:0;max-width:125px}.effective-role{font-size:8.5px;font-weight:850;white-space:nowrap;border-radius:999px;padding:4px 7px;background:#edf3f0;color:#456058}.effective-role.finance{background:#e9f1f8;color:#335d80}.effective-role.manager{background:#e8f2ee;color:#1d664e}.effective-role.educator{background:#f2edf8;color:#685080}.effective-role.admin{background:#182e27;color:#fff}.admin-only-nav[hidden]{display:none!important}
.crud-actions{display:flex;align-items:center;gap:4px;flex:0 0 auto}.icon-action{width:31px;height:31px;display:grid;place-items:center;border:1px solid var(--line);border-radius:9px;background:#fff;color:var(--text2);cursor:pointer;transition:.15s}.icon-action:hover{border-color:#bac9c3;background:var(--soft);color:var(--text)}.icon-action.danger{color:var(--red)}.icon-action.danger:hover{background:var(--red2);border-color:#efc8c8}.icon-action[disabled]{opacity:.38;cursor:not-allowed}.crud-inline{margin-left:auto;display:inline-flex;gap:4px}.program-card{position:relative}.program-card .card-crud{position:absolute;top:10px;right:10px;z-index:3;opacity:0;transform:translateY(-2px);transition:.15s}.program-card:hover .card-crud,.program-card:focus-within .card-crud{opacity:1;transform:none}.program-card.has-crud .program-card-head{padding-right:70px}.scale-chip,.role-chip{display:inline-flex;align-items:center;gap:5px;min-height:22px;border-radius:999px;padding:3px 8px;font-size:9px;font-weight:800;background:#f0f3f2;color:#65716d}.scale-chip.major{background:#f6ece8;color:#8a523c}.scale-chip.simple{background:#edf4f1;color:#36614f}.role-chip.manager{background:#e8f2ee;color:#1d664e}.role-chip.educator{background:#f2edf8;color:#685080}.role-chip.finance{background:#e9f1f8;color:#335d80}.role-chip.admin{background:#182e27;color:#fff}
.access-grid{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(300px,.75fr);gap:15px}.access-role-cards{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.access-role-card{border:1px solid var(--line);border-radius:13px;padding:14px;background:var(--soft)}.access-role-card .role-symbol{width:34px;height:34px;display:grid;place-items:center;border-radius:10px;background:#fff;border:1px solid var(--line);margin-bottom:11px;color:var(--accent)}.access-role-card h3{font-size:12px;margin:0}.access-role-card p{font-size:10px;color:var(--muted);margin:5px 0 0;line-height:1.55}.team-list{display:grid;gap:8px}.team-person{display:grid;grid-template-columns:34px minmax(0,1fr) auto;gap:10px;align-items:center;border:1px solid var(--line);border-radius:11px;padding:10px;background:#fff}.team-person .avatar{width:34px;height:34px}.team-person strong{display:block;font-size:11px}.team-person small{font-size:9.5px;color:var(--muted)}.permission-table{width:100%;border-collapse:collapse;font-size:10px}.permission-table th,.permission-table td{padding:9px 8px;border-bottom:1px solid var(--line);text-align:left}.permission-table th{font-size:8px;text-transform:uppercase;letter-spacing:.06em;color:var(--muted)}.permission-yes{color:var(--accent);font-weight:800}.permission-limited{color:var(--amber);font-weight:800}.permission-no{color:#9aa5a1}.restricted-card{padding:24px;border:1px dashed #cad7d2;border-radius:15px;background:#f8faf9;text-align:center}.restricted-card .restricted-icon{width:42px;height:42px;margin:0 auto 11px;display:grid;place-items:center;border-radius:12px;background:#edf3f0;color:#49665b}.restricted-card h3{font-size:14px;margin:0}.restricted-card p{max-width:520px;margin:7px auto 0;color:var(--muted);font-size:11px;line-height:1.6}.restricted-card .role-chip{margin-top:12px}.access-note{padding:11px 13px;border-radius:11px;background:#f3f7f5;color:#4d615a;font-size:10.5px;border:1px solid #dbe6e1}.access-note strong{color:var(--text)}
.item-editor-title{display:flex;align-items:center;gap:8px}.dialog-section-label{grid-column:1/-1;font-size:9px;text-transform:uppercase;letter-spacing:.08em;font-weight:850;color:var(--muted);padding-top:5px}.form-grid label>small{font-size:9px;color:var(--muted);line-height:1.4}.form-grid select[multiple]{min-height:120px}.finance-lock{display:inline-flex;align-items:center;gap:5px;color:var(--muted);font-size:9px}.finance-summary-only{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin-top:12px}.finance-summary-only .mini{border:1px solid var(--line)}.user-table .user-role-select{height:32px;border:1px solid var(--line);border-radius:8px;background:#fff;padding:0 8px;font-size:10px}.current-user-row{background:#f6faf8}.current-user-row td:first-child{font-weight:800}.audit-immutable{display:flex;align-items:center;gap:6px;color:var(--muted);font-size:9.5px}.program-access-toolbar{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:12px}.program-access-toolbar .meta{margin:0}.edit-access-form{display:grid;grid-template-columns:1fr 1fr;gap:10px}.edit-access-form label{display:grid;gap:5px;font-size:10px;color:var(--muted)}.edit-access-form select{height:38px;border:1px solid var(--line);border-radius:9px;background:#fff;padding:0 9px}.edit-access-form .full{grid-column:1/-1}.danger-zone{border-color:#edd0d0;background:#fffafa}.danger-zone .section-head h2{color:#8b3a3a}
@media(max-width:1100px){.account-switch{min-width:190px}.effective-role{display:none}.access-role-cards{grid-template-columns:1fr}.access-grid{grid-template-columns:1fr}.finance-summary-only{grid-template-columns:repeat(2,1fr)}}
@media(max-width:760px){.account-switch{min-width:0;flex:1;max-width:190px;height:40px}.account-copy select{max-width:110px}.program-card .card-crud{opacity:1}.access-role-cards,.finance-summary-only{grid-template-columns:1fr}.edit-access-form{grid-template-columns:1fr}.edit-access-form .full{grid-column:auto}.crud-actions{flex-wrap:wrap}.team-person{grid-template-columns:34px minmax(0,1fr)}.team-person>.role-chip{grid-column:2}.permission-table{font-size:9px}.permission-table th,.permission-table td{padding:8px 5px}}
.task-status-select.v4-visible-select{display:block;height:30px;font-size:9px;max-width:120px}.task-card-head-v4{display:flex;align-items:flex-start;justify-content:space-between;gap:8px}.task-card-head-v4 .task-card-title{flex:1}.task-card-head-v4 .crud-actions{margin-top:-2px}
