:root{--primary:#152242;--primary-2:#203159;--accent:#a69867;--bg:#f2f4f7;--surface:#fff;--surface-soft:#f8f9fb;--text:#1a1a1a;--text-2:#666;--text-3:#9299a6;--border:#eee;--border-2:#ddd;--success:#27ae60;--error:#e74c3c;--warning:#f39c12;--info:#3498db;--mallard:#00797b;--cornflower:#0072ba;--wisteria:#4a3a6b;--guards:#c5292c;--marmalade:#f6a120;--daffodil:#c29200;--shadow-card:0 2px 12px #15224214;--shadow-modal:0 8px 32px #15224229}*{box-sizing:border-box}html{background:var(--bg)}body{background:var(--bg);min-height:100vh;color:var(--text);margin:0;font-family:Gotham,Source Han Sans SC,Noto Sans CJK SC,PingFang SC,Arial,Helvetica Neue,sans-serif}button,input,select,textarea{font:inherit}button{cursor:pointer}.teacher-login-shell{background:#fff;grid-template-columns:minmax(440px,46vw) minmax(0,1fr);min-height:100vh;display:grid}.teacher-login-visual{background:var(--primary);min-height:100vh;position:relative;overflow:hidden}.teacher-login-visual>img{object-fit:cover;opacity:0;width:100%;height:100%;transition:opacity .6s,transform 5s;position:absolute;inset:0;transform:scale(1.02)}.teacher-login-visual>img.active{opacity:1;transform:scale(1)}.teacher-login-visual:after{content:"";z-index:1;background:linear-gradient(90deg,#15224214,#15224247),linear-gradient(#15224200 48%,#15224257);position:absolute;inset:0}.teacher-login-visual-frame{z-index:2;pointer-events:none;border:2px solid #ffffffb8;position:absolute;inset:26px}.teacher-login-brand-tile{z-index:3;background:var(--primary);border:1px solid #a6986780;place-items:center;width:150px;min-height:170px;padding:16px;display:grid;position:absolute;top:44px;left:clamp(28px,5vw,72px);box-shadow:0 18px 36px #00000047}.teacher-login-brand-tile img{width:112px;height:auto;display:block}.teacher-login-dots{z-index:3;gap:10px;display:flex;position:absolute;bottom:44px;left:50%;transform:translate(-50%)}.teacher-login-dots button{background:#ffffff8c;border:0;border-radius:999px;width:10px;height:10px;padding:0}.teacher-login-dots button.active{background:#fff;width:12px;height:12px}.teacher-login-panel{background:linear-gradient(#fffaf0 0%,#fff 48%);border-left:1px solid #1522422e;justify-content:center;align-items:center;min-height:100vh;padding:80px clamp(36px,7vw,108px);display:flex;position:relative}.teacher-login-card{border-top:4px solid var(--accent);width:min(100%,470px);box-shadow:none;background:0 0;gap:20px;padding:24px 0 0;display:grid}.teacher-login-card-loading{background:#fffffff5;border:1px solid #a6986761;border-radius:8px;grid-column:1/-1;place-self:center;place-items:center;width:min(100%,430px);padding:34px;box-shadow:0 24px 60px #0000002e}.teacher-login-logo{background:var(--primary);border-radius:6px;width:230px;max-width:100%;height:auto;display:block}.teacher-login-card h1{color:var(--primary);margin:0;font-family:Georgia,Times New Roman,serif;font-size:38px;line-height:1.12}.teacher-login-card p{color:var(--text-2);margin:0;line-height:1.5}.teacher-login-field{gap:8px;display:grid}.teacher-login-field span,.teacher-login-remember{color:#8f7f4c;font-size:15px;font-weight:700}.teacher-login-field input{height:54px;color:var(--text);background:#fff;border:1px solid #a6986761;border-radius:8px;padding:0 16px}.teacher-login-field input:focus{border-color:var(--accent);outline:0;box-shadow:0 0 0 3px #a698672e}.teacher-login-row{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:10px;display:flex}.teacher-login-switch{color:var(--accent);cursor:pointer;text-underline-offset:2px;background:0 0;border:0;padding:0;font-size:13px;font-weight:600;text-decoration:underline}.teacher-login-remembered{gap:8px;display:grid}.teacher-login-remembered>span{color:var(--muted);font-size:12px;font-weight:600}.teacher-login-remembered-list{gap:8px;display:grid}.teacher-login-remembered-list button{text-align:left;cursor:pointer;background:#a6986714;border:1px solid #1522421f;border-radius:8px;gap:2px;width:100%;padding:10px 12px;display:grid}.teacher-login-remembered-list button strong{color:var(--text);font-size:14px}.teacher-login-remembered-list button em{color:var(--muted);font-size:12px;font-style:normal}.teacher-login-remember{align-items:center;gap:8px;display:flex}.teacher-login-remember input{width:16px;height:16px;accent-color:var(--accent)}.teacher-login-error{background:#e74c3c14;border:1px solid #e74c3c3d;border-radius:8px;padding:10px 12px;font-size:13px;color:var(--error)!important}.teacher-login-submit{background:var(--accent);color:#fff;border:0;border-radius:8px;height:54px;font-weight:800;box-shadow:0 10px 22px #a6986738}.teacher-login-submit:hover{background:#8f7f4c}.teacher-login-hint{font-size:12px;color:var(--text-3)!important}@media (max-width:920px){.teacher-login-shell{grid-template-columns:1fr}.teacher-login-visual{min-height:42vh}.teacher-login-brand-tile{width:126px;min-height:144px;top:28px}.teacher-login-brand-tile img{width:94px}.teacher-login-panel{border-left:0;min-height:auto;padding:56px 28px 42px}}@media (max-width:560px){.teacher-login-visual{min-height:34vh}.teacher-login-visual-frame{inset:16px}.teacher-login-brand-tile{width:108px;min-height:124px;padding:12px;left:28px}.teacher-login-brand-tile img{width:82px}.teacher-login-card h1{font-size:30px}.teacher-login-row{flex-direction:column;align-items:flex-start}}.portal-shell{grid-template-columns:260px minmax(0,1fr);min-height:100vh;display:grid}.portal-sidebar{z-index:30;background:var(--primary);color:#fff;flex-direction:column;gap:24px;height:100vh;padding:24px 18px;display:flex;position:sticky;top:0}.portal-sidebar-backdrop{z-index:60;background:#0a122261;border:0;display:none;position:fixed;inset:0}.portal-sidebar-close{color:#fff;background:#ffffff14;border:1px solid #ffffff38;border-radius:8px;place-items:center;width:36px;height:36px;display:none;position:absolute;top:18px;right:14px}.portal-brand{border-bottom:1px solid #ffffff1f;align-items:start;gap:10px;padding-bottom:20px;display:grid}.portal-brand-logo{object-fit:contain;display:block}.portal-brand-logo-full{border-radius:6px;width:196px;max-width:100%;height:auto}.portal-brand-logo-crest{object-fit:contain;border-radius:4px;width:54px;height:64px;display:none}.portal-brand-label{color:#d8cfa8;letter-spacing:.16em;text-transform:uppercase;font-size:12px;font-weight:700;display:block}.sidebar-account strong{font-size:18px;display:block}.sidebar-account span{color:#ffffff9e;margin-top:4px;font-size:12px;display:block}.portal-nav{gap:6px;display:grid}.portal-nav button{color:#ffffffc2;text-align:left;background:0 0;border:0;border-radius:8px;align-items:center;gap:10px;height:44px;padding:0 12px;display:flex;position:relative}.portal-nav button .nav-unread-dot,.tool-button .nav-unread-dot{background:#e23c43;border-radius:50%;width:8px;height:8px;position:absolute;top:8px;right:8px;box-shadow:0 0 0 2px #15224259}.portal-toast-stack{z-index:120;pointer-events:none;justify-items:center;gap:10px;width:min(520px,100vw - 32px);display:grid;position:fixed;top:24px;left:50%;transform:translate(-50%)}.portal-toast{pointer-events:auto;will-change:transform, opacity;border-radius:999px;justify-content:center;align-items:center;gap:10px;max-width:100%;min-height:48px;padding:8px 22px 8px 10px;animation:.18s ease-out portal-toast-in;display:inline-flex;box-shadow:0 6px 20px #15224229}.portal-toast-success{color:#20a34b;background:#fff;border:1px solid #27ae60}.portal-toast-error{color:#b42318;background:#fff;border:1px solid #e23c43;padding-right:12px}.portal-toast-check{color:#fff;background:#27ae60;border-radius:50%;flex:none;place-items:center;width:28px;height:28px;display:grid}.portal-toast-text{text-align:left;font-size:16px;font-weight:600;line-height:1.25}.portal-toast-close{appearance:none;color:inherit;cursor:pointer;background:0 0;border:0;margin-left:4px;padding:0;line-height:1}.field-error{color:#b42318;margin-top:6px;font-size:12px;font-style:normal;display:block}.field-has-error input,.field-has-error .chip-group{outline:1px solid #e23c4373}.historical-feedback{background:#1522420a;border-radius:8px;gap:6px;margin:12px 0;padding:12px;display:grid}.historical-feedback label{color:var(--muted);font-size:12px;font-weight:700}.historical-feedback p{white-space:pre-wrap;color:var(--text);margin:0;font-size:14px;line-height:1.45}@keyframes portal-toast-in{0%{opacity:0;transform:translateY(-6px)}to{opacity:1;transform:translateY(0)}}.portal-nav button.active,.portal-nav button:hover{background:var(--accent);color:#fff}.sidebar-account{appearance:none;color:#fff;text-align:left;background:0 0;border:0;border-top:1px solid #ffffff1f;align-items:center;gap:12px;width:100%;margin-top:auto;padding:16px 0 0;display:flex}.sidebar-account:hover{color:#fff}.avatar,.mini-avatar{background:var(--accent);color:#fff;border-radius:999px;place-items:center;font-weight:700;display:grid}.avatar{width:40px;height:40px;overflow:hidden}.avatar.has-photo,.account-avatar.has-photo{background:#d7dbe5;padding:0}.avatar img,.account-avatar img{object-fit:cover;width:100%;height:100%;display:block}.sidebar-account.active{opacity:1}.account-panel{gap:20px;max-width:720px;display:grid}.account-identity{align-items:center;gap:16px;display:flex}.account-avatar{background:var(--accent);color:#fff;border-radius:999px;flex:none;place-items:center;width:96px;height:96px;font-size:28px;font-weight:700;display:grid;overflow:hidden}.account-identity strong{font-size:20px;display:block}.account-identity span{color:var(--muted,#667085);font-size:14px}.account-actions{flex-wrap:wrap;gap:10px;display:flex}.account-hint{color:var(--muted,#667085);margin:0;font-size:13px}.avatar-crop-overlay{z-index:80;background:#0f172a8c;place-items:center;padding:24px;display:grid;position:fixed;inset:0}.avatar-crop-dialog{background:#fff;border-radius:18px;gap:16px;width:min(440px,100%);padding:20px;display:grid;box-shadow:0 24px 64px #0f172a47}.avatar-crop-dialog header strong{margin-bottom:4px;font-size:18px;display:block}.avatar-crop-dialog header p{color:#667085;margin:0;font-size:13px;line-height:1.45}.avatar-crop-stage{touch-action:none;cursor:grab;-webkit-user-select:none;user-select:none;background:#111827;border-radius:18px;width:280px;height:280px;margin:0 auto;position:relative;overflow:hidden}.avatar-crop-stage:active{cursor:grabbing}.avatar-crop-stage img{pointer-events:none;max-width:none;position:absolute;top:50%;left:50%}.avatar-crop-mask{pointer-events:none;background:radial-gradient(circle,#0000 0 118px,#00000073 118px);position:absolute;inset:0;box-shadow:inset 0 0 0 1px #ffffff47}.avatar-crop-zoom{color:#344054;gap:8px;font-size:13px;display:grid}.avatar-crop-zoom input{width:100%}.avatar-crop-actions{justify-content:flex-end;gap:10px;display:flex}.mini-avatar{background:var(--primary);flex:none;width:34px;height:34px;font-size:12px}.portal-main{min-width:0}.portal-topbar{z-index:20;border-bottom:1px solid var(--border);background:#fff;justify-content:space-between;align-items:center;gap:16px;height:68px;padding:0 28px;display:flex;position:sticky;top:0}.portal-menu-button{border:1px solid var(--border-2);width:42px;height:42px;color:var(--primary);background:#fff;border-radius:8px;flex:none;place-items:center;display:none}.portal-topbar strong{color:var(--primary);font-size:20px;display:block}.portal-topbar>div>span{color:var(--text-2);margin-top:2px;font-size:13px;display:block}.topbar-actions{align-items:center;gap:10px;display:flex}.topbar-actions .primary-action,.topbar-actions .primary-action span,.page-head-actions .primary-action,.page-head-actions .primary-action span{color:#fff}.topbar-actions .primary-action span,.page-head-actions .primary-action span{font-size:inherit;margin-top:0;display:inline}.portal-shell-compact-top .portal-topbar-mobile-only{display:none}.portal-shell-compact-top .page-head{align-items:center}.portal-shell-compact-top .overview-head{margin-bottom:16px!important}.tool-button,.icon-only{border:1px solid var(--border-2);color:var(--primary);background:#fff;place-items:center;display:grid;position:relative}.tool-button{border-radius:8px;width:42px;height:42px}.tool-button i{color:#fff;background:#ff3b30;border:2px solid #fff;border-radius:999px;place-items:center;min-width:18px;height:18px;font-size:10px;font-style:normal;display:grid;position:absolute;top:-5px;right:-4px}.portal-content{max-width:1500px;margin:0 auto;padding:28px}.page-head{justify-content:space-between;align-items:flex-start;gap:20px;margin-bottom:20px;display:flex}.page-head-actions{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:10px;display:flex}.page-head h1{color:var(--primary);margin:0;font-family:Georgia,Times New Roman,serif;font-size:36px;line-height:1.1}.page-head p{color:var(--text-2);margin:8px 0 0;font-size:14px;line-height:1.5}.primary-action,.ghost-action,.logout-action,.danger-action,.batch-bar button{white-space:nowrap;border:0;border-radius:8px;justify-content:center;align-items:center;gap:8px;min-height:42px;padding:0 16px;font-size:14px;font-weight:700;display:inline-flex}.primary-action{background:var(--primary);color:#fff}.ghost-action{border:1px solid var(--border-2);color:var(--primary);background:#fff}.logout-action{color:var(--primary);background:#a698671f;border:1px solid #a698676b}.logout-action:hover{background:var(--accent);color:#fff}.danger-action{color:var(--error);background:#e74c3c1f}.kpi-grid{grid-template-columns:repeat(5,minmax(140px,1fr));gap:14px;margin-bottom:18px;display:grid}.kpi-grid-four{grid-template-columns:repeat(4,minmax(140px,1fr))}.metric-card-button{text-align:left;cursor:pointer;width:100%;transition:transform .15s,border-color .15s,box-shadow .15s}.metric-card-button:hover{border-color:#15224238;transform:translateY(-1px);box-shadow:0 10px 22px #15224214}.overview-page{flex-direction:column;gap:10px;min-height:0;display:flex}.overview-head{margin-bottom:0!important}.overview-head h1{font-size:28px}.overview-head p{margin-top:2px}.overview-kpis{margin-bottom:0}.overview-kpis .metric-card{padding:12px 14px}.overview-kpis .metric-card strong{font-size:26px}.overview-kpis .metric-card span{margin-top:4px;font-size:12px}.overview-kpis-five{grid-template-columns:repeat(5,minmax(0,1fr))}.overview-page-teacher{gap:10px;height:100%}.overview-page-teacher .overview-head h1{font-size:28px}.overview-page-teacher .overview-head p{font-size:13px}.overview-page-teacher .overview-kpis .metric-card{padding:12px 14px}.overview-page-teacher .overview-kpis .metric-card strong{font-size:28px}.overview-page-teacher .overview-kpis .metric-card span{margin-top:4px;font-size:12px;line-height:1.25}.overview-page-teacher .overview-layout{gap:12px}.overview-page-teacher .overview-panel{justify-content:flex-start;padding:14px 16px}.overview-page-teacher .overview-panel-head{margin-bottom:8px}.overview-page-teacher .overview-panel-head h2{font-size:16px}.overview-page-teacher .overview-attention,.overview-page-teacher .overview-pulse{flex:1;gap:12px}.overview-page-teacher .overview-attention-stack,.overview-page-teacher .overview-pulse-compact{flex-direction:column;flex:1;justify-content:space-between;gap:12px;display:flex}.overview-page-teacher .overview-attention h3,.overview-page-teacher .overview-pulse h3{margin-bottom:6px;font-size:11px}.overview-page-teacher .overview-compact-row{gap:8px;min-height:44px;margin-bottom:6px;padding:8px 12px}.overview-page-teacher .overview-compact-row strong{font-size:13px}.overview-page-teacher .overview-compact-row span{font-size:12px}.overview-page-teacher .overview-pace-stack{min-height:36px;margin-bottom:8px}.overview-page-teacher .overview-pace-seg{border-radius:8px;min-width:30px;font-size:12px}.overview-page-teacher .overview-legend{gap:8px 12px;font-size:12px}.overview-page-teacher .overview-bar-list,.overview-page-teacher .overview-workload{gap:8px}.overview-page-teacher .overview-bar-label strong,.overview-page-teacher .overview-workload-row strong{font-size:13px}.overview-page-teacher .overview-bar-label span,.overview-page-teacher .overview-workload-row span{font-size:12px}.overview-page-teacher .overview-bar-track,.overview-page-teacher .overview-mini-track{height:8px}.overview-page-teacher .overview-attention-stack>div,.overview-page-teacher .overview-pulse-compact>div{flex:1}.overview-layout{flex:1;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;min-height:0;margin-bottom:0;display:grid}.overview-layout-compact{align-items:stretch}.overview-panel{flex-direction:column;min-width:0;padding:14px 16px;display:flex}.overview-panel-head{flex-direction:column;gap:2px;margin-bottom:10px;display:flex}.overview-panel-head h2{margin:0;font-size:16px}.overview-panel-head span,.overview-attention h3,.overview-pulse h3{color:var(--muted);font-size:11px;font-weight:600}.overview-attention,.overview-pulse{gap:12px;min-height:0;display:grid}.overview-attention-stack,.overview-pulse-compact{gap:12px}.overview-attention h3,.overview-pulse h3{text-transform:uppercase;letter-spacing:.4px;margin:0 0 6px}.overview-compact-row{border:1px solid var(--border);width:100%;min-height:40px;color:var(--text);text-align:left;cursor:pointer;background:#fff;border-radius:8px;grid-template-columns:minmax(0,1.1fr) minmax(0,.9fr) auto 14px;align-items:center;gap:8px;margin-bottom:6px;padding:6px 10px;display:grid}.overview-compact-row.overview-student-row{grid-template-columns:minmax(0,1fr) minmax(36px,auto) auto}.overview-compact-row.overview-student-row>span:nth-child(2){font-variant-numeric:tabular-nums;text-align:right;justify-self:end}.overview-compact-row:hover{border-color:#ab98688c}.overview-compact-row strong{color:var(--primary);text-overflow:ellipsis;white-space:nowrap;font-size:13px;overflow:hidden}.overview-compact-row span{color:var(--muted);text-overflow:ellipsis;white-space:nowrap;font-size:12px;overflow:hidden}.overview-compact-row .status-badge,.overview-compact-row .pace-badge{white-space:nowrap;flex-shrink:0;justify-self:end;font-style:normal}.overview-dot{background:var(--gold,#ab9868);border-radius:999px;width:10px;height:10px}.overview-mini-track,.overview-bar-track{background:#15224214;border-radius:999px;height:7px;overflow:hidden}.overview-mini-track i,.overview-bar-track i{border-radius:inherit;background:linear-gradient(90deg, var(--primary), #3d5a8a);height:100%;display:block}.overview-bar-track.gap i{background:linear-gradient(90deg,#c0392b,#f6a120)}.overview-pace-stack{gap:4px;min-height:28px;margin-bottom:8px;display:flex}.overview-pace-seg{color:#fff;border-radius:7px;justify-content:center;align-items:center;min-width:24px;font-size:11px;font-weight:700;display:flex}.overview-pace-seg.good{background:#27ae60}.overview-pace-seg.warn{background:#f6a120}.overview-pace-seg.bad{background:#c0392b}.overview-legend{color:var(--muted);flex-wrap:wrap;gap:8px 12px;margin-bottom:2px;font-size:11px;display:flex}.overview-legend i{border-radius:999px;width:7px;height:7px;margin-right:5px;display:inline-block}.overview-legend i.good{background:#27ae60}.overview-legend i.warn{background:#f6a120}.overview-legend i.bad{background:#c0392b}.overview-bar-list,.overview-workload{gap:8px;display:grid}.overview-bar-row,.overview-workload-row{gap:5px;display:grid}.overview-bar-label{justify-content:space-between;align-items:baseline;gap:10px;display:flex}.overview-bar-label strong,.overview-workload-row strong{color:var(--primary);font-size:12px}.overview-bar-label span{color:var(--muted);text-align:right;font-size:11px}.overview-workload-row{grid-template-columns:minmax(72px,120px) minmax(0,1fr) 22px;align-items:center;gap:8px}.overview-workload-row span{text-align:right;color:var(--primary);font-size:12px;font-weight:700}.overview-panel-wide{grid-column:1/-1}.overview-recent-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:0 12px;display:grid}.overview-workload-track{gap:0;display:flex}.overview-workload-track i{border-radius:0}.overview-workload-track i:first-child{border-radius:999px 0 0 999px}.overview-workload-track i:last-child{border-radius:0 999px 999px 0}.overview-workload-track i.seg-approved{background:#2f8f65}.overview-workload-track i.seg-returned{background:#c85d55}.overview-workload-track i.seg-inreview{background:#d89b26}.overview-domain-grid{grid-template-columns:repeat(auto-fit,minmax(104px,1fr));gap:10px 8px;display:grid}.overview-domain-ring{text-align:center;flex-direction:column;align-items:center;gap:3px;min-width:0;display:flex}.overview-domain-chart{width:72px;height:72px;position:relative}.overview-domain-avg{color:var(--primary);pointer-events:none;justify-content:center;align-items:center;font-size:13px;font-weight:700;display:flex;position:absolute;inset:0}.overview-domain-ring strong{color:var(--primary);font-size:11px}.overview-domain-ring span{color:var(--muted);font-size:10px}.overview-layout-principal{flex:none;grid-template-columns:minmax(0,.92fr) minmax(0,1.08fr);min-height:420px}.overview-pending-panel,.overview-pulse-panel{min-height:0}.overview-recent-list{gap:4px;display:grid;overflow:auto}.overview-row-main{gap:2px;min-width:0;display:grid}.overview-row-main em{color:var(--muted);text-overflow:ellipsis;white-space:nowrap;font-size:11px;font-style:normal;overflow:hidden}.overview-principal-pulse{gap:16px;min-height:0;display:grid}.overview-pulse-section>h3{color:var(--muted);letter-spacing:.3px;text-transform:uppercase;margin-bottom:8px;font-size:11px;font-weight:700}.overview-domain-grid-principal{grid-template-columns:repeat(3,minmax(92px,1fr));gap:8px}.overview-domain-grid-principal .overview-domain-ring{border:1px solid var(--border);text-align:left;background:#fff;border-radius:7px;grid-template-rows:auto auto;grid-template-columns:58px minmax(0,1fr);align-items:center;gap:2px 7px;padding:6px;display:grid}.overview-domain-grid-principal .overview-domain-chart{grid-row:1/3;width:58px;height:58px}.overview-domain-grid-principal .overview-domain-ring strong{font-size:11px}.overview-domain-grid-principal .overview-domain-ring span{min-height:0;font-size:9px;line-height:1.2}:is(.admin-shell .portal-content:has(.overview-page),.portal-shell .portal-content:has(.overview-page)){flex-direction:column;display:flex;overflow:hidden}:is(.admin-shell .portal-content:has(.overview-page)>.overview-page,.portal-shell .portal-content:has(.overview-page)>.overview-page){flex:1;min-height:0}.overview-page .principal-scope-filters,.overview-page .admin-dash-filters{flex-shrink:0;margin-bottom:0;padding:10px 12px}@media (max-width:1100px){.overview-layout,.overview-recent-grid{grid-template-columns:1fr}.kpi-grid-four{grid-template-columns:repeat(2,minmax(0,1fr))}:is(.admin-shell .portal-content:has(.overview-page),.portal-shell .portal-content:has(.overview-page)){overflow:auto}}.metric-card,.portal-panel,.table-panel,.review-detail,.form-surface,.student-list,.thread-list,.chat-panel,.report-tile{background:var(--surface);border:1px solid var(--border);box-shadow:var(--shadow-card);border-radius:8px}.metric-card{padding:18px}.metric-card strong{color:var(--primary);font-family:Georgia,Times New Roman,serif;font-size:34px;line-height:1;display:block}.metric-card span{color:var(--text-2);margin-top:7px;font-size:13px;display:block}.dashboard-grid{grid-template-columns:minmax(0,1.35fr) minmax(320px,.85fr);gap:18px;display:grid}.portal-panel{padding:20px}.portal-panel h2,.review-detail h2{color:var(--primary);margin:0 0 14px;font-size:18px}.priority-list,.export-stack,.readiness-list{gap:10px;display:grid}.priority-row{border:1px solid var(--border);min-height:54px;color:var(--text);text-align:left;background:#fff;border-radius:8px;grid-template-columns:14px minmax(110px,1fr) 130px 105px 18px;align-items:center;gap:12px;padding:10px 12px;display:grid}.domain-dot{border-radius:999px;width:10px;height:10px}.domain-badge,.points-badge{background:color-mix(in srgb, var(--daffodil,#d89b26) 16%, white);color:#7a5b12;border-radius:999px;align-items:center;padding:4px 10px;font-size:clamp(10px,.85vw + 6px,12px);font-weight:700;line-height:1.25;display:inline-flex}.status-badge,.pace-badge{text-align:center;white-space:nowrap;overflow-wrap:normal;-webkit-hyphens:manual;hyphens:manual;border-radius:999px;justify-content:center;align-items:center;width:max-content;max-width:100%;padding:4px 10px;font-size:clamp(10px,.85vw + 6px,12px);font-style:normal;font-weight:700;line-height:1.25;display:inline-flex}.domain-badge{background:color-mix(in srgb, var(--domain-color) 13%, white);color:var(--domain-color);box-sizing:border-box;max-width:100%}.domain-badge-compact{white-space:nowrap;padding:3px 8px;font-size:10px;line-height:1.2}.domain-leadership{--domain-color:var(--mallard);background-color:var(--mallard)}.domain-service{--domain-color:var(--cornflower);background-color:var(--cornflower)}.domain-wellbeing{--domain-color:var(--wisteria);background-color:var(--wisteria)}.domain-creativity{--domain-color:var(--guards);background-color:var(--guards)}.domain-global{--domain-color:var(--marmalade);background-color:var(--marmalade)}.domain-academic{--domain-color:var(--daffodil);background-color:var(--daffodil)}.domain-badge.domain-leadership,.domain-badge.domain-service,.domain-badge.domain-wellbeing,.domain-badge.domain-creativity,.domain-badge.domain-global,.domain-badge.domain-academic{background:color-mix(in srgb, var(--domain-color) 13%, white)}.status-pending{color:var(--warning);background:#f39c121f}.status-review{color:var(--info);background:#3498db1f}.status-returned{color:var(--error);background:#e74c3c1f}.status-approved,.pace-badge.good{color:var(--success);background:#27ae601f}.pace-badge.warn{color:var(--warning);background:#f39c121f}.pace-badge.bad{color:var(--error);background:#e74c3c1f}.review-summary{gap:12px;display:grid}.summary-title,.student-cell{align-items:center;gap:10px;display:flex}.student-cell{color:var(--text);text-align:left;background:0 0;border:0;padding:0}.student-cell strong,.summary-title strong{display:block}.student-cell em,.summary-title em{color:var(--text-2);margin-top:2px;font-size:12px;font-style:normal;display:block}.review-summary p{color:var(--text);margin:0;line-height:1.45}.summary-meta,.panel-actions,.detail-actions{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.evidence-list{border:1px dashed var(--border-2);background:var(--surface-soft);border-radius:8px;gap:8px;padding:12px;display:grid}.evidence-list span,.evidence-list a,.export-line,.readiness-line{color:var(--text-2);align-items:center;gap:8px;font-size:13px;display:flex}.evidence-list a{color:var(--primary);border-radius:7px;text-decoration:none}.evidence-list a:hover{color:var(--accent)}.evidence-list a span{gap:2px;min-width:0;display:grid}.evidence-list a strong{color:inherit;text-overflow:ellipsis;white-space:nowrap;font-size:13px;overflow:hidden}.evidence-list a em{color:var(--text-2);font-size:11px;font-style:normal}.review-voice-note{border:1px solid var(--border);background:var(--surface-soft);border-radius:8px;gap:9px;margin-top:12px;padding:12px;display:grid}.review-voice-note>div{justify-content:space-between;align-items:center;gap:12px;display:flex}.review-voice-note strong{color:var(--primary);font-size:13px}.review-voice-note span{color:var(--text-2);font-size:12px}.review-voice-note audio{width:100%;min-height:42px}.compact-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;display:grid}.compact-stat{border:1px solid var(--border);background:var(--surface-soft);border-radius:8px;padding:14px}.compact-stat strong{color:var(--primary);font-size:26px;display:block}.compact-stat span{color:var(--text-2);margin-top:4px;font-size:13px;display:block}.panel-actions{margin-top:14px}.export-line{border-bottom:1px solid var(--border);justify-content:space-between;padding:10px 0}.export-line:last-child{border-bottom:0}.export-line strong{color:var(--text);margin-right:auto}.review-toolbar{grid-template-columns:minmax(240px,1.6fr) minmax(150px,.55fr) minmax(180px,.7fr) auto;align-items:center;gap:12px;margin-bottom:14px;display:grid}.teacher-review-toolbar{grid-template-columns:minmax(220px,1fr) auto}.review-toolbar .ghost-action{white-space:nowrap;justify-self:start;height:42px}.search-field,.form-surface input,.form-surface select,.form-surface textarea,.feedback-box textarea,.chat-input input{border:1px solid var(--border-2);color:var(--text);background:#fff;border-radius:8px;outline:none}.search-field{align-items:center;gap:8px;min-height:42px;padding:0 12px;display:flex}.search-field input{border:0;outline:none;width:100%;min-width:0}.review-toolbar .portal-select{min-width:0}.review-toolbar .portal-select-trigger{height:42px;min-height:42px}.batch-bar{background:var(--primary);color:#fff;box-shadow:var(--shadow-modal);border-radius:8px;justify-content:space-between;align-items:center;gap:16px;margin-bottom:14px;padding:12px 16px;display:flex}.batch-bar div{flex-wrap:wrap;gap:8px;display:flex}.batch-bar button{color:#fff;background:#ffffff1f}.batch-bar .batch-feedback-input{color:#fff;background:#ffffff1a;border:1px solid #ffffff47;border-radius:7px;flex:220px;min-width:220px;padding:7px 10px;font-size:12px}.batch-bar .batch-feedback-input::placeholder{color:#fff9}.review-layout{grid-template-columns:minmax(0,1fr);align-items:start;gap:18px;display:grid}.table-panel{overflow:hidden}.review-table{border-collapse:separate;border-spacing:0;table-layout:fixed;width:100%;font-size:12px}.review-table tbody tr{cursor:pointer}.review-table th{background:var(--surface-soft);height:38px;color:var(--text-2);text-align:left;border-bottom:1px solid var(--border);white-space:nowrap;padding:0 8px;font-size:10.5px;font-weight:700}.review-table td{border-bottom:1px solid var(--border);vertical-align:middle;overflow-wrap:anywhere;height:58px;padding:8px;line-height:1.3}.review-table tr:last-child td{border-bottom:0}.review-table tr.current-row td,.review-table tr:hover td{background:#fbfbfc}.review-table th:first-child,.review-table td:first-child{width:4%}.review-table th:nth-child(2),.review-table td:nth-child(2){width:15%}.review-table th:nth-child(3),.review-table td:nth-child(3){width:17%}.review-table th:nth-child(4),.review-table td:nth-child(4){width:12%}.review-table th:nth-child(5),.review-table td:nth-child(5){width:10%}.review-table th:nth-child(6),.review-table td:nth-child(6){width:8%}.review-table th:nth-child(7),.review-table td:nth-child(7){width:10%}.review-table th:nth-child(8),.review-table td:nth-child(8){width:7%}.review-table th:nth-child(9),.review-table td:nth-child(9){width:10%}.review-table th:nth-child(10),.review-table td:nth-child(10){width:7%}.icon-only{border-radius:6px;width:32px;height:32px}.review-detail{padding:18px;position:sticky;top:88px}.review-detail-backdrop{z-index:60;cursor:pointer;background:#0f172a73;border:0;position:fixed;inset:0}.review-detail-modal{z-index:61;width:min(560px,100vw - 32px);max-height:calc(100vh - 48px);padding:18px;position:fixed;top:50%;left:50%;overflow-y:auto;transform:translate(-50%,-50%)}.review-detail-modal>.detail-actions,.review-detail-modal>.activity-import-actions{z-index:3;border-top:1px solid var(--border);background:var(--surface);margin:16px -18px -18px;padding:14px 18px 18px;position:sticky;bottom:-18px}.review-detail-modal-head{justify-content:space-between;align-items:flex-start;gap:12px;margin-bottom:4px;display:flex}.review-detail-modal-head .review-live-status{flex:1;margin:0}.activity-import-modal{width:min(1040px,100vw - 32px);overflow:visible}.activity-import-modal .review-detail-modal-head h2{color:var(--primary);margin:0;font-family:Georgia,Times New Roman,serif;font-size:24px}.activity-import-modal .review-detail-modal-head p{color:var(--text-2);margin:5px 0 0;font-size:12px}.activity-import-mapping{z-index:4;border:1px solid var(--border);background:var(--surface-soft);border-radius:10px;margin-top:16px;padding:14px;position:relative}.activity-import-mapping h3{color:var(--primary);margin:0;font-size:14px}.activity-import-mapping>p{color:var(--text-2);margin:4px 0 12px;font-size:12px}.activity-import-mapping>div{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;display:grid}.activity-import-mapping label{color:var(--primary);grid-template-columns:minmax(80px,.45fr) minmax(0,1fr);align-items:center;gap:10px;font-size:12px;font-weight:700;display:grid}.activity-import-mapping .portal-select{min-width:0}.activity-import-mapping .portal-select-trigger{border-radius:7px;height:36px;font-size:12px}.activity-import-mapping .portal-select-menu{z-index:80}.activity-import-toolbar{color:var(--text-2);justify-content:space-between;align-items:center;margin-top:14px;font-size:12px;font-weight:700;display:flex}.activity-import-toolbar label{align-items:center;gap:7px;display:inline-flex}.activity-import-table-wrap{border:1px solid var(--border);border-radius:10px;max-height:min(440px,100vh - 390px);margin:9px 0 14px;overflow:auto}.activity-import-table{border-collapse:collapse;width:100%;font-size:12px}.activity-import-table th{z-index:1;color:var(--text-2);text-align:left;background:#f2f3f6;padding:10px;position:sticky;top:0}.activity-import-table td{border-top:1px solid var(--border);color:var(--text-2);vertical-align:top;padding:10px}.activity-import-table th:first-child,.activity-import-table td:first-child{text-align:center;width:38px}.activity-import-table th:nth-child(2){width:46%}.activity-import-table td strong,.activity-import-table td span{display:block}.activity-import-table td strong{color:var(--primary)}.activity-import-table td span{color:var(--muted);margin-top:3px;font-size:11px}.activity-import-table td em{color:#a86400;background:#fff1d8;border-radius:50%;place-items:center;width:17px;height:17px;margin-left:5px;font-size:11px;font-style:normal;font-weight:800;display:inline-grid}.activity-import-actions{justify-content:flex-end;gap:10px;display:flex}.feedback-box{gap:8px;margin-top:16px;display:grid}.review-live-status{border:1px solid var(--border);background:var(--surface-soft);color:var(--text-2);border-radius:8px;margin-bottom:14px;padding:10px 12px;font-size:12px;font-weight:700;line-height:1.45}.review-live-status.success{color:#1f7a3f;background:#ecf8ef;border-color:#27ae6059}.review-live-status.error{color:#b42318;background:#fff4f3;border-color:#e23c4347}.reflection-preview{border-top:1px solid var(--border);gap:7px;margin-top:16px;padding-top:14px;display:grid}.reflection-preview label{color:var(--text-2);font-size:12px;font-weight:700}.reflection-preview p{color:var(--text);margin:0;font-size:13px;line-height:1.5}.feedback-box label,.form-surface span{color:var(--text-2);font-size:12px;font-weight:700}.form-surface .optional-label{color:var(--text-3);margin-left:6px;font-style:normal;font-weight:600}.feedback-box textarea,.form-surface textarea{resize:vertical;padding:10px 12px}.rating-row{gap:8px;margin:14px 0;display:flex}.rating-row button{border:1px solid var(--border-2);width:36px;height:36px;color:var(--accent);background:#fff;border-radius:8px;place-items:center;display:grid}.rating-row button.active{background:var(--accent);color:#fff}.student-list{display:grid}.student-progress-row{border-bottom:1px solid var(--border);grid-template-columns:230px minmax(160px,1fr) 120px 92px 92px;align-items:center;gap:18px;min-height:72px;padding:16px;display:grid}.student-progress-row .student-cell em{color:var(--text-2);font-size:12px;font-style:normal}.progress-track.progress-drilldown{cursor:pointer;background:0 0;border:0;width:100%;padding:0}.people-filterbar.student-progress-sort{grid-template-columns:minmax(220px,1.6fr);gap:10px;margin-bottom:14px;display:grid}.people-filterbar.student-progress-sort .portal-select-trigger{min-height:42px}.student-radar-card.without-radar{grid-template-columns:minmax(0,1fr);min-height:0}.student-domain-backdrop{z-index:70;background:#0f172a80;border:0;position:fixed;inset:0}.student-domain-modal{z-index:71;width:min(620px,100vw - 32px);max-height:calc(100vh - 48px);box-shadow:var(--shadow-modal);background:#fff;border-radius:14px;padding:22px;position:fixed;top:50%;left:50%;overflow-y:auto;transform:translate(-50%,-50%)}.student-domain-modal-head,.student-domain-identity,.student-domain-overall,.student-domain-row-head{align-items:center;display:flex}.student-domain-modal-head,.student-domain-overall,.student-domain-row-head{justify-content:space-between}.student-domain-modal-head{gap:16px;margin-bottom:18px}.student-domain-identity{gap:12px}.student-domain-identity h2{color:var(--primary);font-size:22px}.student-domain-identity p,.student-domain-overall span{color:var(--text-2);font-size:13px}.student-domain-overall{background:var(--surface-soft);border-radius:10px;margin-bottom:16px;padding:12px 14px}.student-domain-overall strong{color:var(--primary);font-size:20px}.student-domain-list{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;display:grid}.student-domain-row{border:1px solid var(--border);border-radius:10px;padding:12px}.student-domain-row-head{gap:12px;margin-bottom:9px}.student-domain-row-head span{font-size:12px;font-weight:700}.student-domain-row-head strong{color:var(--text);font-size:12px}.student-domain-track{background:var(--border);border-radius:999px;height:7px;overflow:hidden}.student-domain-track i{border-radius:inherit;height:100%;display:block}.domain-strip{gap:3px;display:inline-flex}.domain-seg{border:1px solid var(--border);background:var(--surface);width:22px;height:20px;color:var(--text-2);cursor:default;border-radius:4px;justify-content:center;align-items:center;font-size:11px;font-style:normal;font-weight:600;display:inline-flex}.domain-seg-full{color:#fff;background:#2f8f65;border-color:#2f8f65}.domain-seg-part{color:#206044;background:#2f8f6529;border-color:#2f8f6573}.domain-seg-open{color:#8a6516;background:#d89b2624;border-color:#d89b2666}.student-progress-row:last-child{border-bottom:0}.student-progress-row-link{cursor:pointer}.student-progress-row-link:hover,.student-progress-row-link:focus-visible{background:#1522420a}.student-sort-control{flex:none;grid-template-columns:auto 36px 36px;align-items:end;gap:6px;display:grid}.student-sort-control>span{color:var(--muted);letter-spacing:.4px;text-transform:uppercase;grid-column:1/-1;font-size:11px;font-weight:700}.student-sort-control button{border:1px solid var(--border-2);width:36px;height:38px;color:var(--primary);background:#fff;border-radius:8px;place-items:center;display:grid}.student-sort-control button:first-of-type{grid-column:2}.student-sort-control button:hover,.student-sort-control button.active{border-color:var(--accent);color:var(--accent);background:#ab986824}.student-radar-grid{box-shadow:none;background:0 0;border:0;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;padding:0;display:grid}.student-radar-card{background:var(--surface);border:1px solid var(--border);min-width:0;min-height:220px;box-shadow:var(--shadow-card);border-radius:12px;grid-template-columns:minmax(230px,1fr) minmax(220px,.9fr);align-items:stretch;gap:10px;padding:18px 14px 14px 18px;display:grid}.student-progress-action{cursor:pointer;transition:background .18s}.student-progress-row.student-progress-action:hover{background:var(--surface-soft)}.student-progress-row.student-progress-action:focus-visible{outline:2px solid var(--accent);outline-offset:-2px}.student-radar-card.student-progress-action{transition:background .18s,border-color .18s,box-shadow .18s}.student-radar-card.student-progress-action:hover,.student-radar-card.student-progress-action:focus-visible{background:var(--surface-soft);border-color:#ab98688c;outline:none;box-shadow:0 10px 24px #15224214}.student-radar-summary{flex-direction:column;min-width:0;padding:6px 0;display:flex}.student-radar-summary .student-cell{align-items:center}.student-radar-summary .student-cell strong{font-size:17px}.student-radar-summary .student-cell em{color:var(--text-2);font-size:12px;font-style:normal}.student-radar-status{color:var(--text-2);flex-wrap:wrap;align-items:center;gap:8px 12px;margin-top:22px;font-size:12px;display:flex}.student-overall-progress{margin-top:auto;padding-top:18px}.student-overall-progress>div:first-child{justify-content:space-between;align-items:baseline;gap:12px;margin-bottom:8px;display:flex}.student-overall-progress span{color:var(--text-2);font-size:12px;font-weight:600}.student-overall-progress strong{color:var(--primary);font-size:17px}.student-radar-chart{pointer-events:none;align-self:center;min-width:0;height:188px}.active-filter-row{flex-wrap:wrap;gap:8px;margin-bottom:12px;display:flex}.filter-chip{border:1px solid var(--border-2);background:var(--surface);color:var(--primary);border-radius:999px;align-items:center;gap:6px;padding:5px 8px 5px 12px;font-size:12px;font-weight:600;display:inline-flex}.filter-chip button{width:18px;height:18px;color:var(--primary);cursor:pointer;background:#15224214;border:0;border-radius:999px;justify-content:center;align-items:center;display:inline-flex}.student-cell.static{pointer-events:none}.progress-track{background:var(--border);border-radius:999px;height:8px;overflow:hidden}.progress-track i{background:var(--accent);border-radius:999px;height:100%;display:block}.form-surface{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;padding:20px;display:grid}.form-surface label{gap:8px;display:grid}.form-surface input,.form-surface select{height:42px;padding:0 12px}.form-surface .wide,.wide-action{grid-column:1/-1}.wide-action{width:max-content}.searchable-select{position:relative}.search-dropdown{z-index:30;background:var(--surface);border:1px solid var(--border-2);box-shadow:var(--shadow-card);border-radius:8px;max-height:240px;position:absolute;top:calc(100% + 4px);left:0;right:0;overflow-y:auto}.search-dropdown button{text-align:left;background:0 0;border:0;flex-direction:column;align-items:flex-start;gap:2px;width:100%;padding:10px 12px;display:flex}.search-dropdown button:hover{background:#a698671f}.search-dropdown strong{color:var(--text);font-size:14px}.search-dropdown em{color:var(--text-2);font-size:12px;font-style:normal}.search-empty{color:var(--text-2);padding:12px;font-size:13px}.selected-student-chips{flex-wrap:wrap;gap:6px;margin-bottom:8px;display:flex}.selected-student-chips button{border:1px solid var(--border-2);min-height:30px;color:var(--text);background:#a698671f;border-radius:6px;align-items:center;gap:6px;padding:4px 9px;font-size:12px;font-weight:700;display:inline-flex}.selected-student-chips button:hover{border-color:var(--primary)}.chip-group{flex-wrap:wrap;gap:8px;display:flex}.chip{border:1px solid var(--border-2);background:var(--surface);height:34px;color:var(--text-2);border-radius:999px;align-items:center;gap:5px;padding:0 14px;font-size:13px;font-weight:600;display:inline-flex}.chip-active{background:var(--primary);border-color:var(--primary);color:#fff}.form-surface .form-field{gap:8px;display:grid}.form-surface input[type=file],.form-surface .file-input-control{justify-self:start;width:auto;max-width:100%;height:auto;padding:9px 12px;display:block}.file-hint{color:var(--text-2);font-size:12px;font-style:normal}.form-status{color:var(--primary);grid-column:1/-1;font-size:13px;font-weight:600}.form-status.error{color:var(--error,#e74c3c)}.admin-live-data-banner{border:1px solid var(--error,#e74c3c);color:var(--error,#e74c3c);background:#fdecea;border-radius:6px;justify-content:space-between;align-items:center;gap:12px;margin-bottom:14px;padding:10px 14px;font-size:13px;font-weight:600;display:flex}.admin-live-data-banner button{flex-shrink:0}.admin-user-kpis{grid-template-columns:repeat(5,minmax(120px,1fr))}.admin-user-form{margin-bottom:14px}.admin-shell .review-toolbar{grid-template-columns:minmax(260px,1fr)}.admin-user-groups{gap:16px;display:grid}.admin-user-section{border:1px solid var(--border);background:var(--surface);box-shadow:var(--shadow-card);border-radius:8px;overflow:hidden}.admin-user-section-head{border-bottom:1px solid var(--border);background:linear-gradient(180deg, #fff 0%, var(--surface-soft) 100%);justify-content:space-between;align-items:flex-start;gap:16px;padding:18px 20px;display:flex}.admin-user-section-head h2{color:var(--primary);margin:6px 0 4px;font-size:18px;line-height:1.2}.admin-user-section-head p{color:var(--text-2);margin:0;font-size:13px}.admin-user-section-head>strong{width:42px;height:42px;color:var(--primary);background:#a6986729;border-radius:999px;flex:none;place-items:center;font-family:Georgia,Times New Roman,serif;font-size:22px;display:grid}.admin-role-label{width:max-content;color:var(--primary);letter-spacing:0;text-transform:uppercase;background:#15224214;border-radius:999px;padding:4px 10px;font-size:11px;font-weight:800;display:inline-flex}.admin-user-list{display:grid}.admin-user-row{border-bottom:1px solid var(--border);grid-template-columns:46px minmax(190px,1.2fr) minmax(140px,.7fr) 104px auto;align-items:center;gap:14px;padding:14px 20px;display:grid}.admin-user-row:last-child{border-bottom:0}.admin-user-row:hover{background:#fbfbfc}.admin-user-avatar{background:var(--primary);color:#fff;border-radius:999px;place-items:center;width:42px;height:42px;font-size:13px;font-weight:800;display:grid}.admin-user-main,.admin-user-campus{gap:3px;min-width:0;display:grid}.admin-user-main strong,.admin-user-campus strong{overflow-wrap:anywhere;color:var(--text)}.admin-user-main span,.admin-user-campus span{overflow-wrap:anywhere;color:var(--text-2);font-size:12px}.admin-user-actions{flex-wrap:wrap;justify-content:flex-end;gap:8px;display:flex}.admin-row-action{border:1px solid var(--border-2);min-height:34px;color:var(--primary);white-space:nowrap;background:#fff;border-radius:8px;justify-content:center;align-items:center;gap:6px;padding:0 10px;font-size:12px;font-weight:800;display:inline-flex}.admin-row-action.danger{color:var(--error);background:#e74c3c14;border-color:#e74c3c2e}.admin-row-action:disabled{cursor:not-allowed;opacity:.45}.admin-user-empty{color:var(--text-2);padding:18px 20px;font-size:13px}.task-image-preview{grid-column:1/-1}.task-image-preview img{border:1px solid var(--border-2);object-fit:cover;border-radius:10px;max-width:320px;max-height:180px}.created-task-list{gap:12px;margin-top:18px;display:grid}.created-task-list h2{color:var(--text);margin:0;font-size:16px}.created-task{background:var(--surface);border:1px solid var(--border-2);box-shadow:var(--shadow-card);border-radius:12px;align-items:flex-start;gap:14px;padding:14px 16px;display:flex}.created-task img{object-fit:cover;border-radius:10px;flex-shrink:0;width:84px;height:84px}.created-task strong{color:var(--text);margin-bottom:6px;font-size:15px;display:block}.created-task p{color:var(--text-2);margin:8px 0 4px;font-size:13px;line-height:1.5}.created-task em{color:var(--text-2);font-size:12px;font-style:normal;font-weight:600}.created-task-actions{flex-direction:column;flex-shrink:0;gap:8px;margin-left:auto;display:flex}.created-task-actions button{justify-content:center;width:100%}.form-action-row{flex-wrap:wrap;gap:10px;display:flex}.task-builder-actions{flex-wrap:wrap;justify-content:flex-end;gap:10px;display:flex}.task-builder-meta{grid-template-columns:minmax(0,.9fr) minmax(0,.7fr) minmax(0,1.2fr);gap:14px;display:grid}.task-builder-meta-two{grid-template-columns:minmax(0,1fr) minmax(0,1.4fr)}.task-title-icon-row{grid-template-columns:minmax(0,1fr) 168px;align-items:start;gap:14px;display:grid}.task-title-field{flex-direction:column;gap:7px;min-width:0;display:flex}.task-icon-picker{flex-direction:column;gap:7px;display:flex;position:relative}.task-icon-picker>span{color:var(--text-2);font-size:12px;font-weight:700}.task-icon-trigger{border:1px solid var(--line);cursor:pointer;text-align:left;background:#fff;border-radius:12px;align-items:center;gap:10px;min-height:52px;padding:8px 10px;display:flex}.task-icon-trigger img{object-fit:contain;width:48px;height:36px}.task-icon-trigger em{color:var(--muted);font-size:12px;font-style:normal}.task-icon-grid{z-index:20;border:1px solid var(--line);background:#fff;border-radius:14px;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;width:min(420px,70vw);max-height:320px;padding:12px;display:grid;position:absolute;top:calc(100% + 6px);right:0;overflow:auto;box-shadow:0 16px 40px #15224229}.task-icon-option{cursor:pointer;background:#f7f8fb;border:1px solid #0000;border-radius:12px;flex-direction:column;align-items:center;gap:4px;padding:8px 6px;display:flex}.task-icon-option.active,.task-icon-option:hover{background:#eef2f8;border-color:#152242}.task-icon-option img{object-fit:contain;width:64px;height:48px}.task-icon-option em{color:var(--muted);font-size:11px;font-style:normal}.task-builder-meta label{flex-direction:column;gap:7px;min-width:0;display:flex}.task-builder-meta label>span{color:var(--text-2);font-size:12px;font-weight:700}.task-builder-meta input{width:100%}.task-builder-tools{justify-content:space-between;align-items:center;gap:20px;margin-top:16px;display:flex}.task-builder-tools h2,.task-builder-tools p{margin:0}.task-builder-page-actions{justify-content:flex-end}.task-builder-tools p{color:var(--muted);margin-top:4px;font-size:13px}.page-head-buttons{flex-wrap:wrap;gap:10px;display:flex}@media (max-width:900px){.task-builder-meta,.task-builder-meta-two,.task-title-icon-row{grid-template-columns:1fr}.task-icon-grid{width:100%;left:0;right:auto}.task-builder-tools{flex-direction:column;align-items:stretch}.activity-import-mapping>div{grid-template-columns:1fr}.activity-import-mapping label{grid-template-columns:1fr;gap:5px}}.view-toggle{border:1px solid var(--border-2);background:var(--surface);border-radius:10px;display:inline-flex;overflow:hidden}.view-toggle button{color:var(--text-2);cursor:pointer;background:0 0;border:none;align-items:center;gap:6px;padding:8px 14px;font-size:13px;font-weight:600;display:inline-flex}.view-toggle button.active{background:var(--primary);color:#fff}.manager-toolbar{color:var(--text-2);align-items:center}.manager-layout{grid-template-columns:minmax(0,1fr) 320px;align-items:start;gap:18px;display:grid}.kanban-board{grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;display:grid}.kanban-column{border:1px solid var(--border-2);background:#1522420a;border-radius:12px;align-content:start;gap:10px;padding:12px;display:grid}.kanban-column-head{color:var(--text);justify-content:space-between;align-items:center;font-size:13px;display:flex}.kanban-column-head span{background:var(--surface);border:1px solid var(--border-2);border-radius:999px;padding:1px 9px;font-size:12px;font-weight:700}.kanban-card{background:var(--surface);border:1px solid var(--border-2);border-radius:10px;gap:6px;padding:10px 12px;display:grid}.kanban-card strong{color:var(--text);font-size:13px;line-height:1.35}.kanban-card em{color:var(--text-2);font-size:12px;font-style:normal}.kanban-card .domain-badge{justify-self:start}.kanban-empty{color:var(--text-2);text-align:center;padding:14px 0;font-size:12px}.manager-ranking{background:var(--surface);border:1px solid var(--border-2);border-radius:12px;align-content:start;gap:12px;padding:14px 16px;display:grid}.ranking-head{color:var(--text);align-items:center;gap:8px;font-size:14px;display:flex}.ranking-row{grid-template-columns:26px minmax(0,1fr) 70px 40px;align-items:center;gap:10px;display:grid}.ranking-pos{width:24px;height:24px;color:var(--text-2);background:#15224214;border-radius:999px;justify-content:center;align-items:center;font-size:12px;font-weight:700;display:inline-flex}.ranking-pos.top{background:var(--gold,#ab9868);color:#fff}.ranking-row strong{color:var(--text);font-size:13px;display:block}.ranking-row em{color:var(--text-2);font-size:11px;font-style:normal}.ranking-bar{background:#1522421a;border-radius:999px;height:6px;overflow:hidden}.ranking-bar i{background:var(--gold,#ab9868);border-radius:999px;height:100%;display:block}.ranking-row b{color:var(--text);text-align:right;font-size:12px}@media (max-width:1100px){.manager-layout,.kanban-board{grid-template-columns:1fr}}.message-layout{grid-template-columns:320px minmax(0,1fr);gap:18px;display:grid}.thread-list{overflow:hidden}.thread-list button{border:0;border-bottom:1px solid var(--border);width:100%;min-height:76px;color:var(--text);text-align:left;background:#fff;grid-template-columns:34px minmax(0,1fr) 8px;align-items:center;gap:12px;padding:14px;display:grid}.thread-list button:last-child{border-bottom:0}.thread-list button.active,.thread-list button:hover{background:var(--surface-soft)}.thread-list em{color:var(--text-2);text-overflow:ellipsis;white-space:nowrap;margin-top:3px;font-size:13px;font-style:normal;display:block;overflow:hidden}.thread-list i{background:#ff3b30;border-radius:999px;width:8px;height:8px}.chat-panel{padding:18px}.chat-header{border-bottom:1px solid var(--border);justify-content:space-between;align-items:baseline;gap:16px;padding-bottom:12px;display:flex}.chat-header>div{flex-wrap:wrap;align-items:baseline;gap:6px 16px;min-width:0;display:flex}.chat-header span{color:var(--text-2)}.chat-status,.empty-state{color:var(--text-2);font-size:13px;line-height:1.45}.chat-status{margin-top:10px}.empty-state{padding:16px}.chat-scroll{background:var(--surface-soft);border:1px solid var(--border);border-radius:8px;flex-direction:column;gap:10px;height:380px;margin:14px 0;padding:14px;display:flex;overflow:auto}.bubble{border-radius:8px;width:max-content;max-width:72%;margin:0;padding:10px 14px;line-height:1.45}.bubble span{opacity:.62;margin-bottom:4px;font-size:11px;font-weight:700;display:block}.bubble.student{border:1px solid var(--border);background:#fff;align-self:flex-start}.bubble.teacher{background:var(--primary);color:#fff;align-self:flex-end}.chat-input{grid-template-columns:minmax(0,1fr) 88px;gap:10px;display:grid}.chat-input input{height:42px;padding:0 12px}.message-search{width:min(320px,100%)}.report-grid{grid-template-columns:repeat(4,minmax(180px,1fr));gap:14px;display:grid}.report-primary-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.report-primary-card{min-height:220px}.report-secondary-panel{padding:18px}.report-secondary-grid{grid-template-columns:repeat(2,minmax(0,1fr));margin-top:12px}.report-tile{gap:12px;padding:18px;display:grid}.report-tile svg{color:var(--accent)}.report-tile strong{color:var(--primary);font-size:17px}.report-tile span{color:var(--text-2)}.report-tile .portal-select{max-width:100%}.report-tile .portal-select-trigger{border-radius:6px;height:40px}.isams-layout{grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);gap:18px;display:grid}.readiness-line{border-bottom:1px solid var(--border);justify-content:space-between;padding:12px 0}.readiness-line:last-child{border-bottom:0}.readiness-line strong{color:var(--text)}@media (max-width:1280px){.portal-content{padding:20px}.dashboard-grid{grid-template-columns:minmax(0,1.2fr) minmax(280px,.8fr);gap:14px}.review-layout{grid-template-columns:minmax(0,1fr);gap:14px}.kpi-grid{gap:10px;margin-bottom:14px}.page-head{margin-bottom:14px}.page-head h1{font-size:30px}.metric-card{padding:14px}.portal-panel{padding:16px}.priority-row{min-height:46px;padding:6px 12px}.priority-list,.export-stack,.readiness-list{gap:8px}.admin-user-row{grid-template-columns:42px minmax(150px,1fr) minmax(110px,.7fr) 96px}.admin-user-actions{grid-column:2/-1;justify-content:flex-start}}@media (max-width:1020px){.review-layout,.dashboard-grid,.isams-layout{grid-template-columns:1fr}.review-detail:not(.review-detail-modal){position:static}}@media (max-width:1040px){.portal-shell{grid-template-columns:86px minmax(0,1fr)}.portal-menu-button{display:grid}.portal-brand-logo-full,.portal-brand-label,.sidebar-account div,.portal-nav span{display:none}.portal-brand-logo-crest{display:block}.portal-brand{justify-content:center;justify-items:center}.portal-nav button{justify-content:center;padding:0}.portal-shell.sidebar-open .portal-sidebar{z-index:70;width:260px;height:100vh;position:fixed;inset:0 auto 0 0;box-shadow:20px 0 44px #0a12223d}.portal-shell.sidebar-open .portal-sidebar-close{display:grid}.portal-shell.sidebar-open .portal-sidebar-backdrop,.portal-shell.sidebar-open .portal-brand-logo-full,.portal-shell.sidebar-open .portal-brand-label,.portal-shell.sidebar-open .sidebar-account div,.portal-shell.sidebar-open .portal-nav span{display:block}.portal-shell.sidebar-open .portal-brand-logo-crest{display:none}.portal-shell.sidebar-open .portal-brand{justify-content:initial;justify-items:start;padding-right:44px}.portal-shell.sidebar-open .portal-nav button{justify-content:flex-start;padding:0 12px}.kpi-grid,.report-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.review-toolbar,.message-layout,.student-progress-row{grid-template-columns:1fr}.admin-user-kpis{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width:720px){.portal-shell{display:block}.portal-sidebar{z-index:70;width:min(300px,84vw);height:100vh;transition:transform .22s;position:fixed;inset:0 auto 0 0;transform:translate(-104%);box-shadow:20px 0 44px #0a12223d}.portal-shell.sidebar-open .portal-sidebar{transform:translate(0)}.portal-shell.sidebar-open .portal-sidebar-backdrop,.portal-brand-logo-full,.portal-brand-label,.sidebar-account div,.portal-nav span{display:block}.portal-brand-logo-crest{display:none}.portal-brand{justify-content:initial;justify-items:start}.portal-nav button{justify-content:flex-start;padding:0 12px}.portal-topbar{padding:0 16px}.portal-shell-compact-top .portal-topbar-mobile-only{justify-content:flex-start;height:56px;display:flex}.page-head-actions .primary-action span{display:none}.portal-content{padding:18px}.page-head,.chat-header{display:grid}.page-head h1{font-size:30px}.kpi-grid,.form-surface,.compact-grid,.report-grid{grid-template-columns:1fr}.admin-user-section-head,.admin-user-row{padding:14px}.admin-user-section-head{align-items:center}.admin-user-row{grid-template-columns:42px 1fr}.admin-user-campus,.admin-user-row .status-badge,.admin-user-actions{grid-column:2/-1}.admin-user-actions{justify-content:flex-start}.review-table{min-width:980px}.table-panel{overflow-x:auto}.wide-action{width:100%}}.access-page{flex-direction:column;gap:16px;min-width:0;display:flex}.access-page-head{align-items:flex-start}.access-head-actions,.access-assignment-head,.access-section-heading{align-items:center;gap:10px;display:flex}.access-head-actions{flex-wrap:wrap;justify-content:flex-end}.access-head-actions button,.access-section-heading button,.access-assignment-head button,.access-table button{justify-content:center;align-items:center;gap:6px;display:inline-flex}.access-summary{border:1px solid var(--line,#e3e8ee);background:#fff;border-radius:8px;grid-template-columns:repeat(3,minmax(0,1fr));display:grid;overflow:hidden}.access-summary>div{border-right:1px solid var(--line,#e3e8ee);grid-template-columns:24px auto 1fr;align-items:center;gap:10px;min-height:76px;padding:14px 18px;display:grid}.access-summary>div:last-child{border-right:0}.access-summary svg{color:#9b8542}.access-summary strong{color:#152342;font-size:24px}.access-summary span,.access-count,.access-user-cell span,.access-permission-groups em,.access-menu-tree em,.access-class-grid em{color:var(--ink-soft,#788391);font-size:12px;font-style:normal}.access-page-embedded{gap:12px}.access-page-embedded .access-filterbar{margin-bottom:0}.access-feature-list{flex-wrap:wrap;gap:4px;max-width:330px;display:flex}.access-feature-chip{min-height:22px;color:var(--primary);background:#b5a66b1a;border:1px solid #ab986859;border-radius:999px;align-items:center;padding:3px 7px;font-size:10px;font-weight:700;line-height:1.1;display:inline-flex}.access-feature-more{background:var(--surface-soft);border-color:var(--border-2);color:var(--muted)}.access-role-table small.access-count{margin-top:4px;display:block}.people-secondary-section{padding:18px}@media (max-width:1100px){.overview-layout-principal{grid-template-columns:1fr;min-height:0}.student-radar-grid{grid-template-columns:1fr}.report-primary-grid,.report-secondary-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width:720px){.overview-domain-grid-principal{grid-template-columns:repeat(2,minmax(92px,1fr))}.student-radar-card{grid-template-columns:1fr}.student-radar-chart{height:200px}.task-builder-page-actions{justify-content:flex-start}.task-builder-actions{justify-content:stretch}.task-builder-actions button{flex:1}.message-search{width:100%}.report-primary-grid,.report-secondary-grid{grid-template-columns:1fr}}.access-filterbar{grid-template-columns:minmax(260px,520px)}.access-error,.access-loading,.access-lock-note{color:#65552b;background:#fbf8ef;border:1px solid #e2d8bc;border-radius:6px;padding:11px 14px;font-size:13px;line-height:1.45}.access-error{color:#a13a2e;background:#fff4f2;border-color:#ecc9c5}.access-table .review-table th:nth-child(n),.access-table .review-table td:nth-child(n){width:auto}.access-table td{vertical-align:middle}.access-role-table .review-table{min-width:900px}.access-role-cell{flex-direction:column;gap:2px;min-width:190px;display:flex}.access-role-cell span{color:var(--ink-soft,#788391);font-size:11px}.access-count{white-space:nowrap;display:block}.access-user-cell{align-items:center;gap:10px;min-width:180px;display:flex}.access-user-cell>div{flex-direction:column;gap:2px;display:flex}.access-hq-badge{color:#756328;background:#f5f1e5;border:1px solid #c8b77e;border-radius:999px;margin-top:5px;padding:2px 7px;font-size:10px;font-weight:700;display:inline-flex}.people-drawer:has(.access-editor-section){width:min(720px,100vw)}.access-editor-section{border-bottom:1px solid var(--line,#e3e8ee);flex-direction:column;gap:12px;padding-bottom:20px;display:flex}.access-section-heading{justify-content:space-between;align-items:flex-start}.access-section-heading h3,.access-section-heading p,.access-hierarchy-band h3,.access-hierarchy-band p,.access-teaching-band h3,.access-teaching-band p{margin:0}.access-section-heading p,.access-hierarchy-band p,.access-teaching-band p{color:var(--ink-soft,#788391);margin-top:4px;font-size:12px;line-height:1.45}.access-section-heading>strong{color:#152342;background:#eef1f5;border-radius:6px;place-items:center;min-width:30px;height:28px;font-size:12px;display:grid}.access-menu-tree{border:1px solid var(--line,#e3e8ee);border-radius:6px;overflow:hidden}.access-menu-tree label,.access-permission-groups label,.access-class-grid label{cursor:pointer;border-bottom:1px solid #edf0f3;align-items:center;gap:10px;min-height:48px;padding:9px 12px;display:flex}.access-menu-tree label:last-child,.access-permission-groups label:last-child,.access-class-grid label:last-child{border-bottom:0}.access-menu-tree label.child{background:#fafbfc;padding-left:34px}.access-menu-tree label>span,.access-permission-groups label>span,.access-class-grid label>span{flex-direction:column;flex:1;gap:2px;min-width:0;display:flex}.access-menu-tree input,.access-permission-groups input,.access-class-grid input{accent-color:#152342;width:17px;height:17px}.access-permission-search{max-width:100%}.access-permission-groups{flex-direction:column;gap:12px;display:flex}.access-permission-groups section{border:1px solid var(--line,#e3e8ee);border-radius:6px;overflow:hidden}.access-permission-groups h4{color:#35415a;background:#f4f6f8;margin:0;padding:9px 12px;font-size:12px}.access-permission-groups i{border-radius:4px;padding:3px 6px;font-size:9px;font-style:normal;font-weight:800}.access-permission-groups .risk-standard{color:#536274;background:#eef3f7}.access-permission-groups .risk-high{color:#906214;background:#fff2d9}.access-permission-groups .risk-critical{color:#a13a2e;background:#ffe5e1}.access-assignment-list,.access-scope-list{flex-direction:column;gap:10px;display:flex}.access-assignment-list>section{border:1px solid var(--line,#e3e8ee);background:#fbfcfd;border-radius:6px;padding:12px}.access-assignment-head{justify-content:space-between;margin-bottom:10px}.access-assignment-head select,.access-scope-row select,.access-assignment-head .portal-select-trigger,.access-scope-row .portal-select-trigger{border:1px solid var(--line,#dfe4e9);color:#17233d;background:#fff;border-radius:5px;min-height:38px;padding:0 10px}.access-assignment-head select,.access-assignment-head .portal-select{flex:1;min-width:0}.access-assignment-head .portal-select-menu,.access-scope-row .portal-select-menu,.people-field-grid .portal-select-menu,.people-inline-form .portal-select-menu{z-index:80}.access-scope-row{grid-template-columns:minmax(180px,1.25fr) minmax(105px,.7fr) minmax(150px,1fr) 34px;align-items:center;gap:8px;display:grid}.access-scope-row.dynamic{grid-template-columns:minmax(180px,1fr) 34px}.access-scope-row>.admin-row-action{width:34px;padding:0}.access-add-scope{color:#304f7c;background:0 0;border:0;align-self:flex-start;align-items:center;gap:5px;padding:4px 0;font-size:12px;font-weight:700;display:inline-flex}.access-class-grid{border:1px solid var(--line,#e3e8ee);border-radius:6px;grid-template-columns:repeat(2,minmax(0,1fr));display:grid;overflow:hidden}.access-class-grid label:nth-child(odd){border-right:1px solid #edf0f3}.access-effective{border:1px solid var(--line,#e3e8ee);border-radius:6px;grid-template-columns:repeat(4,minmax(0,1fr));display:grid;overflow:hidden}.access-effective>div{border-right:1px solid var(--line,#e3e8ee);flex-direction:column;justify-content:center;gap:4px;min-height:62px;padding:10px;display:flex}.access-effective>div:last-child{border-right:0}.access-effective span{color:var(--ink-soft,#788391);font-size:10px}.access-effective strong{color:#152342;font-size:13px}.access-scope-overview{flex-direction:column;gap:18px;display:flex}.access-hierarchy-band,.access-teaching-band{border-top:1px solid var(--line,#e3e8ee);padding-top:16px}.access-hierarchy-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin-top:14px;display:grid}.access-hierarchy-grid>div{border:1px solid var(--line,#e3e8ee);background:#fff;border-radius:6px;min-height:132px;padding:12px}.access-hierarchy-grid>div>span{float:right;color:#58667a;background:#edf1f5;border-radius:4px;padding:2px 6px;font-size:10px}.access-hierarchy-grid ul{margin:9px 0 0;padding:0;list-style:none}.access-hierarchy-grid li{color:#697587;text-overflow:ellipsis;white-space:nowrap;padding:3px 0;font-size:11px;overflow:hidden}.access-teaching-band>.people-table{margin-top:14px}@media (max-width:960px){.access-hierarchy-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.access-scope-row{grid-template-columns:minmax(0,1fr)}.access-scope-row .admin-row-action{justify-self:end}}@media (max-width:720px){.access-page-head,.access-section-heading{flex-direction:column}.access-head-actions{justify-content:flex-start}.access-summary,.access-class-grid,.access-effective,.access-hierarchy-grid{grid-template-columns:minmax(0,1fr)}.access-summary>div,.access-effective>div,.access-class-grid label:nth-child(odd){border-right:0}.access-summary>div,.access-effective>div{border-bottom:1px solid var(--line,#e3e8ee)}}.leadership-portal-content{position:relative}.metric-grid{grid-template-columns:repeat(4,minmax(150px,1fr));gap:14px;margin-bottom:18px;display:grid}.leadership-chart-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin-bottom:18px;display:grid}.leadership-chart-grid .admin-chart-card{min-height:300px}.leadership-chart-grid .admin-chart-body{min-height:220px}.dashboard-recent-panel{margin-top:0}.submission-list,.export-history{gap:8px;display:grid}.submission-list>div,.export-history>div{border:1px solid var(--border);background:var(--surface-soft);border-radius:8px;align-items:center;gap:12px;min-width:0;padding:11px 13px;display:flex}.submission-list>div>div{flex:1;gap:3px;min-width:0;display:grid}.submission-list em{color:var(--text-2);text-overflow:ellipsis;white-space:nowrap;font-size:12px;font-style:normal;overflow:hidden}.message-layout>*,.chat-header,.chat-scroll,.chat-input{min-width:0}.bubble{overflow-wrap:anywhere}.leadership-table-wrap{overflow-x:auto}.leadership-table-wrap .leadership-review-table{width:100%;min-width:1120px}.leadership-review-table th,.leadership-review-table td{text-overflow:ellipsis;white-space:nowrap;overflow-wrap:normal;overflow:hidden}.leadership-review-table td:nth-child(2){white-space:normal}.leadership-review-table th:first-child,.leadership-review-table td:first-child{width:44px}.leadership-review-table th:nth-child(2),.leadership-review-table td:nth-child(2){width:16%}.leadership-review-table th:nth-child(3),.leadership-review-table td:nth-child(3){width:15%}.leadership-review-table th:nth-child(4),.leadership-review-table td:nth-child(4){width:11%}.leadership-review-table th:nth-child(5),.leadership-review-table td:nth-child(5){width:10%}.leadership-review-table .domain-badge-compact{max-width:100%;display:inline-flex}.leadership-review-table th:nth-child(6),.leadership-review-table td:nth-child(6){width:7%}.leadership-review-table th:nth-child(7),.leadership-review-table td:nth-child(7){width:8%}.leadership-review-table th:nth-child(8),.leadership-review-table td:nth-child(8),.leadership-review-table th:nth-child(9),.leadership-review-table td:nth-child(9){width:9%}.leadership-review-table th:nth-child(10),.leadership-review-table td:nth-child(10){width:56px}.leadership-review-table th:nth-child(11),.leadership-review-table td:nth-child(11){width:12%}.leadership-review-table th:nth-child(12),.leadership-review-table td:nth-child(12){width:48px}.review-table-teacher{min-width:0!important}.review-table-teacher th:nth-child(7),.review-table-teacher td:nth-child(7),.review-table-teacher th:nth-child(8),.review-table-teacher td:nth-child(8){display:none}.review-table-teacher thead th:first-child input{visibility:hidden}.portal-role-teacher .form-surface>.searchable-select.wide,.portal-role-teacher .form-surface>.searchable-select.wide+label.wide{grid-column:auto}.review-actions{justify-content:flex-end;gap:10px;margin-top:16px;display:flex}.export-history .export-line strong{text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0;overflow:hidden}.export-history .export-line em{color:var(--text-3);font-size:11px;font-style:normal}.current-export-file{border:1px solid var(--border);background:var(--surface-soft);color:var(--primary);border-radius:6px;align-items:center;gap:12px;margin-bottom:14px;padding:12px;display:flex}.current-export-file span{gap:4px;min-width:0;display:grid}.current-export-file strong,.current-export-file em{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.current-export-file em{color:var(--text-2);font-size:11px;font-style:normal}.mapping-summary{flex-wrap:wrap;gap:8px;margin-top:14px;display:flex}.mapping-summary span{border:1px solid var(--border);color:var(--text-2);border-radius:999px;padding:5px 9px;font-size:11px}@media (max-width:1100px){.metric-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width:640px){.metric-grid{grid-template-columns:1fr}}.admin-dash{flex-direction:column;gap:12px;height:calc(100vh - 100px);min-height:480px;display:flex}.admin-shell .portal-content:has(.admin-dash){padding:16px 24px}.admin-dash-filters{box-sizing:border-box;flex-wrap:nowrap;align-items:end;gap:clamp(8px,1vw,14px);width:100%;padding:14px 16px;display:flex}.admin-dash-filters label{flex:1 1 0;gap:6px;min-width:0;display:grid}.admin-dash-filters span{letter-spacing:.4px;text-transform:uppercase;color:var(--muted);font-size:clamp(10px,.85vw,11px);font-weight:700}.admin-dash-filters input{box-sizing:border-box;width:100%;min-width:0;max-width:100%;height:38px;padding:0 clamp(22px,2vw,28px) 0 clamp(6px,.9vw,12px);font-size:clamp(12px,1.05vw,14px)}.admin-dash-filters .portal-select{width:100%;min-width:0}.admin-dash-filters .portal-select-trigger{height:38px;font-size:clamp(12px,1.05vw,14px)}.portal-select{width:100%;min-width:0;position:relative}.portal-select-trigger{border:1px solid var(--border-2);width:100%;min-width:0;height:38px;color:var(--text);text-align:left;background:#fff;border-radius:8px;outline:none;justify-content:space-between;align-items:center;gap:8px;padding:0 10px 0 12px;transition:border-color .15s,box-shadow .15s;display:flex}.portal-select-trigger:hover:not(:disabled),.portal-select.is-open .portal-select-trigger{border-color:var(--primary)}.portal-select.is-open .portal-select-trigger,.portal-select-trigger:focus-visible{box-shadow:0 0 0 3px #15224214}.portal-select-value{text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0;overflow:hidden}.portal-select-caret{color:var(--text-2);flex-shrink:0;transition:transform .15s}.portal-select.is-open .portal-select-caret{transform:rotate(180deg)}.portal-select.is-disabled .portal-select-trigger,.portal-select-trigger:disabled{opacity:.55;cursor:not-allowed;background:var(--surface-soft)}.portal-select-menu{z-index:50;border:1px solid var(--border);max-height:260px;box-shadow:var(--shadow-modal);background:#fff;border-radius:10px;margin:0;padding:6px;list-style:none;position:absolute;top:calc(100% + 4px);left:0;right:0;overflow-y:auto}.portal-select-option{width:100%;color:var(--text);text-align:left;background:0 0;border:0;border-radius:6px;justify-content:space-between;align-items:center;gap:10px;padding:9px 10px;font-size:13px;display:flex}.portal-select-option:hover{background:var(--surface-soft)}.portal-select-option.is-active{color:var(--primary);background:#1522420f;font-weight:600}.portal-select-option.is-active svg{color:var(--primary);flex-shrink:0}.principal-scope-filters{flex-wrap:wrap;align-items:end;margin-bottom:16px;overflow:visible}.principal-scope-filters>label{flex:1 1 0;min-width:0}.principal-scope-filters-actions{flex:none;align-items:end;padding-bottom:2px;display:flex}.principal-scope-filters-hint{color:var(--muted);flex:0 0 100%;order:99;margin:2px 0 0;font-size:12px}.principal-dash-filters{flex-wrap:nowrap}.admin-dash-kpis{grid-template-columns:repeat(4,minmax(120px,1fr));gap:12px;margin-bottom:0}.admin-dash-kpis .metric-card{align-items:baseline;gap:10px;padding:10px 16px;display:flex}.admin-dash-kpis .metric-card strong{font-size:24px}.admin-dash-kpis .metric-card span{margin-top:0}.admin-dash-grid{flex:1;grid-template-rows:repeat(2,minmax(170px,1fr));grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;min-height:0;display:grid}.admin-chart-card{background:var(--surface);border:1px solid var(--border);min-height:0;box-shadow:var(--shadow-card);border-radius:8px;flex-direction:column;padding:12px 16px 8px;display:flex}.admin-chart-card header{align-items:baseline;gap:10px;display:flex}.admin-chart-card header h2{color:var(--primary);margin:0;font-family:Georgia,Times New Roman,serif;font-size:17px;line-height:1.2}.admin-chart-card header p{color:var(--text-2);margin:0;font-size:11px}.admin-chart-body{flex:1;min-height:0;margin-top:4px;font-size:11px;position:relative;overflow:hidden}.admin-chart-body>.recharts-responsive-container{position:absolute;inset:0}:is(.admin-dash:has(.admin-dash-extended),.admin-dash:has(.executive-dash-section),.admin-dash:has(.leadership-chart-grid)){height:auto;min-height:0}.admin-dash:has(.admin-dash-extended) .admin-dash-grid{min-height:420px}.admin-dash-extended{flex-direction:column;gap:12px;display:flex}.executive-dash-section{gap:12px;margin:16px 0;display:grid}.executive-dash-heading h2{color:var(--primary);margin:0;font-family:Georgia,Times New Roman,serif;font-size:24px}.executive-dash-heading p{color:var(--text-2);margin:4px 0 0;font-size:12px}.executive-dash-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;display:grid}.executive-card{min-height:320px;padding:16px}.executive-card-wide{grid-column:1/-1}.executive-card>header{justify-content:space-between;align-items:flex-start;gap:12px}.executive-card>header>div:first-child{gap:4px;display:grid}.executive-chart-body{height:290px;margin-top:12px;font-size:11px;position:relative}.executive-chart-body>.recharts-responsive-container{position:absolute;inset:0}.executive-progress-chart{height:320px}.executive-segmented,.executive-group-metrics{border:1px solid var(--border);background:var(--surface);border-radius:7px;flex-wrap:wrap;display:inline-flex;overflow:hidden}.executive-segmented button,.executive-group-metrics button{border:0;border-right:1px solid var(--border);background:var(--surface);min-height:32px;color:var(--text-2);padding:0 10px;font-size:11px;font-weight:700}.executive-segmented button:last-child,.executive-group-metrics button:last-child{border-right:0}.executive-segmented button.active,.executive-group-metrics button.active{background:var(--primary);color:#fff}.executive-segmented button:disabled{opacity:.45;cursor:not-allowed}.executive-heatmap-wrap{margin-top:16px;overflow-x:auto}.executive-heatmap{gap:6px;min-width:520px;display:grid}.executive-heat-head,.executive-heat-row{min-height:32px;color:var(--text-2);text-align:center;place-items:center;font-size:10px;font-weight:700;display:grid}.executive-heat-row{color:var(--primary);justify-items:start}.executive-heat-cell{border-radius:6px;place-items:center;height:44px;font-size:11px;font-weight:800;display:grid}.executive-group-metrics{width:max-content;margin-top:14px}.executive-bar-list{gap:16px;margin-top:20px;display:grid}.executive-bar-row{grid-template-columns:minmax(80px,120px) minmax(0,1fr) 44px;align-items:center;gap:10px;display:grid}.executive-bar-row>span{color:var(--primary);text-overflow:ellipsis;white-space:nowrap;font-size:11px;font-weight:700;overflow:hidden}.executive-bar-row>div{background:#edf0f4;border-radius:999px;height:13px;overflow:hidden}.executive-bar-row i{border-radius:inherit;background:linear-gradient(90deg, var(--primary), var(--accent));height:100%;display:block}.executive-bar-row strong{color:var(--primary);text-align:right;font-size:11px}.executive-risk-card{min-height:0}.executive-risk-summary{grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin:16px 0 12px;display:grid}.executive-risk-summary div{border:1px solid var(--border);background:var(--surface-soft);border-radius:8px;padding:12px}.executive-risk-summary strong,.executive-risk-summary span{display:block}.executive-risk-summary strong{color:var(--primary);font-size:22px}.executive-risk-summary span{color:var(--text-2);margin-top:3px;font-size:10px;font-weight:700}.executive-risk-table-wrap{overflow-x:auto}.executive-risk-table{border-collapse:collapse;width:100%;min-width:900px;font-size:11px}.executive-risk-table th{border-bottom:1px solid var(--border);color:var(--muted);text-align:left;padding:10px;font-size:10px}.executive-risk-table td{border-bottom:1px solid var(--border);color:var(--text-2);padding:11px 10px}.executive-risk-table td strong{color:var(--primary)}.executive-risk-tag{border-radius:999px;align-items:center;min-height:23px;padding:0 8px;font-size:10px;font-weight:800;display:inline-flex}.executive-risk-tag.high{color:#ad3029;background:#fde9e7}.executive-risk-tag.medium{color:#9e6505;background:#fff2d9}@media (max-width:1040px){.executive-dash-grid{grid-template-columns:minmax(0,1fr)}.executive-card-wide{grid-column:auto}}.admin-extended-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;display:grid}.admin-extended-grid .admin-chart-card{padding-bottom:12px}.admin-extended-wide{grid-column:1/-1}.admin-extended-body{height:230px;margin-top:8px;font-size:11px;position:relative}.admin-waiting-tile{align-items:baseline;gap:8px;margin-top:8px;display:flex}.admin-waiting-tile strong{color:var(--primary);font-family:Georgia,Times New Roman,serif;font-size:30px}.admin-waiting-tile span{color:var(--text-2);font-size:12px}.admin-audit-list{gap:8px;max-height:230px;margin:8px 0 0;padding:0;list-style:none;display:grid;overflow-y:auto}.admin-audit-list li{border-bottom:1px solid var(--border);gap:2px;padding-bottom:6px;font-size:12.5px;display:grid}.admin-audit-list li:last-child{border-bottom:none;padding-bottom:0}.admin-audit-list .admin-audit-meta{color:var(--text-2);font-size:11px}@media (max-width:1040px){.admin-extended-grid{grid-template-columns:1fr}}@media (max-width:1200px){.principal-dash-filters{gap:10px}}@media (max-width:1040px){.admin-dash{height:auto}.admin-dash-filters,.principal-dash-filters{gap:8px 10px}.admin-dash-kpis{grid-template-columns:repeat(2,minmax(0,1fr))}.admin-dash-grid,.leadership-chart-grid{grid-template-rows:none;grid-template-columns:minmax(0,1fr)}.admin-chart-body{flex:none;height:240px}}@media (max-width:720px){.admin-dash-filters,.principal-dash-filters{gap:8px}}.people-kpis{grid-template-columns:repeat(3,minmax(140px,1fr))}.people-kpis .metric-card{text-align:left;border:1px solid var(--border);cursor:pointer;transition:border-color .14s,transform .14s}.people-kpis .metric-card:hover{border-color:var(--accent);transform:translateY(-1px)}.text-warning{color:var(--warning)!important}.people-tabs{border-bottom:1px solid var(--border-2);gap:6px;margin:18px 0 14px;display:flex}.people-tabs button{color:var(--text-2);background:0 0;border:0;border-bottom:2px solid #0000;margin-bottom:-1px;padding:10px 16px;font-size:14px;font-weight:700}.people-tabs button.active{color:var(--primary);border-bottom-color:var(--accent)}.people-filterbar{grid-template-columns:minmax(220px,1.6fr) repeat(auto-fit,minmax(140px,1fr));gap:10px;margin-bottom:14px;display:grid}.people-filterbar select,.people-filterbar .portal-select-trigger{border:1px solid var(--border-2);min-height:42px;color:var(--text);background:#fff;border-radius:8px;outline:none;padding:0 12px}.people-filterbar .portal-select{min-width:0}.people-filterbar .portal-select-menu{z-index:80}.people-table{overflow-x:auto}.people-table .review-table{table-layout:auto;min-width:1080px}.people-table .review-table th{white-space:nowrap}.people-table .review-table th:nth-child(n),.people-table .review-table td:nth-child(n){width:auto}.people-table .review-table td{overflow-wrap:normal;word-break:normal}.people-table .review-table td:first-child{min-width:150px}.person-cell{align-items:center;gap:10px;min-width:140px;display:flex}.person-cell>div{min-width:0}.person-cell strong{color:var(--primary);white-space:nowrap;text-overflow:ellipsis;display:block;overflow:hidden}.person-cell span{color:var(--text-3);white-space:nowrap;text-overflow:ellipsis;font-size:11px;display:block;overflow:hidden}.people-tag-row{flex-wrap:wrap;gap:4px;display:flex}.people-table-subtext{max-width:320px;color:var(--text-3);margin-top:4px;font-size:11px;line-height:1.4;display:block}.people-role-filterbar{grid-template-columns:minmax(260px,1fr) auto;align-items:center}.people-role-create-action{white-space:nowrap;justify-self:end}.admin-role-label.custom{color:#3d4a66;background:#15224214}.people-sort{font:inherit;font-weight:inherit;color:inherit;cursor:pointer;background:0 0;border:0;padding:0}.people-sort.active{color:var(--primary)}.people-drawer-backdrop{z-index:60;cursor:default;background:#15224266;border:0;position:fixed;inset:0}.people-drawer{z-index:61;background:var(--surface);width:min(600px,100vw);box-shadow:var(--shadow-modal);flex-direction:column;animation:.18s people-drawer-in;display:flex;position:fixed;top:0;bottom:0;right:0}@keyframes people-drawer-in{0%{opacity:0;transform:translate(24px)}to{opacity:1;transform:translate(0)}}.people-drawer-head{border-bottom:1px solid var(--border);justify-content:space-between;align-items:flex-start;gap:14px;padding:18px 22px 14px;display:flex}.people-drawer-head h2{color:var(--primary);margin:0;font-family:Georgia,Times New Roman,serif;font-size:22px}.people-drawer-head p{color:var(--text-2);margin:4px 0 0;font-size:12px}.people-drawer-close{border:1px solid var(--border-2);color:var(--primary);background:#fff;border-radius:8px;flex:none;place-items:center;width:34px;height:34px;display:grid}.people-drawer-body{flex:1;align-content:start;gap:20px;padding:18px 22px 28px;display:grid;overflow-y:auto}.people-drawer-section h3{color:var(--primary);text-transform:uppercase;letter-spacing:.04em;margin:0 0 10px;font-size:14px}.people-summary-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px 16px;margin-bottom:10px;display:grid}.people-summary-grid>div>span{color:var(--text-2);margin-bottom:3px;font-size:11px;font-weight:700;display:block}.people-summary-grid>div>strong{color:var(--primary);font-size:14px}.people-field-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin-bottom:12px;display:grid}.people-field-grid label{gap:6px;display:grid}.people-field-grid label>span{color:var(--text-2);font-size:12px;font-weight:700}.people-field-grid input,.people-field-grid select,.people-inline-form select,.people-field-grid .portal-select-trigger,.people-inline-form .portal-select-trigger{border:1px solid var(--border-2);height:40px;color:var(--text);background:#fff;border-radius:8px;outline:none;padding:0 12px}.people-field-grid input:disabled{background:var(--surface-soft);color:var(--text-3)}.people-reviewer-editor{gap:8px;margin-bottom:12px;display:grid}.people-reviewer-editor>span{color:var(--text-2);font-size:12px;font-weight:700}.people-inline-form{flex-wrap:wrap;align-items:center;gap:8px;margin-top:8px;display:flex}.people-inline-form select{flex:1;min-width:150px}.people-resp-line{border-bottom:1px solid var(--border);align-items:center;gap:12px;padding:9px 0;display:flex}.people-resp-line>div{flex:1;min-width:0}.people-resp-line strong{color:var(--primary);font-size:13px;display:block}.people-resp-line span{color:var(--text-3);font-size:11px;display:block}.people-drawer-actions{flex-wrap:wrap;gap:10px;display:flex}.people-role-help{margin:-2px 0 10px}.people-role-picker{gap:8px;margin-bottom:12px;display:grid}.people-role-picker>label{border:1px solid var(--border-2);cursor:pointer;border-radius:8px;align-items:flex-start;gap:10px;padding:10px 12px;display:flex}.people-role-picker>label.selected{border-color:var(--accent);background:#a6986714}.people-role-picker>label:has(input:disabled){cursor:default}.people-role-picker input{margin-top:3px}.people-role-picker span,.people-role-picker strong,.people-role-picker em,.people-role-picker small{display:block}.people-role-picker span{flex:1}.people-role-picker strong{color:var(--primary);font-size:13px}.people-role-picker em,.people-role-picker small{color:var(--text-3);margin-top:3px;font-size:11px;font-style:normal}.people-class-picker{grid-template-columns:repeat(auto-fill,minmax(132px,1fr));gap:6px}.people-class-picker>label{align-items:center;gap:7px;min-height:38px;padding:7px 9px}.people-class-picker input{margin-top:0}.people-class-picker strong{white-space:nowrap}.people-responsible-classes{margin-top:4px}.people-responsible-classes h4{color:var(--primary);margin:0 0 8px;font-size:13px}.people-role-modal{width:min(900px,100vw - 32px)}.people-role-features{border:1px solid var(--border-2);border-radius:8px;margin:14px 0;padding:14px}.people-role-features legend{color:var(--text-2);padding:0 6px;font-size:12px;font-weight:700}.people-feature-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;display:grid}.people-feature-grid label{border:1px solid var(--border-2);color:var(--text-2);cursor:pointer;border-radius:8px;align-items:center;gap:8px;padding:9px 10px;font-size:12px;font-weight:700;display:flex}.people-feature-grid label.selected{border-color:var(--accent);color:var(--primary);background:#a6986714}.people-feature-tree{gap:10px;display:grid}.people-feature-tree details{border:1px solid var(--border-2);background:#fff;border-radius:8px;overflow:hidden}.people-feature-tree summary{color:var(--text-3);cursor:pointer;background:#15224209;justify-content:space-between;align-items:center;gap:12px;padding:10px 12px;font-size:11px;display:flex}.people-feature-tree summary label,.people-feature-tree details>div label{color:var(--text-2);cursor:pointer;align-items:center;gap:8px;display:flex}.people-feature-tree summary label.selected{color:var(--primary)}.people-feature-tree details>div{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;padding:10px 12px 12px 34px;display:grid}.people-feature-tree details>div label{border:1px solid var(--border);border-radius:7px;padding:8px 10px;font-size:12px}.people-feature-tree details>div label.selected{border-color:var(--accent);color:var(--primary);background:#a6986714}.people-modal .people-drawer-actions,.people-drawer>.people-drawer-body>.people-drawer-actions,.people-drawer>.people-drawer-body>.people-drawer-section.people-drawer-actions{z-index:4;border-top:1px solid var(--border);background:var(--surface);margin:16px -22px -28px;padding:14px 22px 18px;position:sticky;bottom:-28px}.people-batch-bar{margin-bottom:12px;padding:10px 14px}.people-batch-bar select,.people-batch-bar .portal-select-trigger{border:0;border-radius:8px;height:34px;min-height:34px;padding:0 10px}.people-batch-bar .portal-select{min-width:160px}.people-batch-bar button{min-height:34px;padding:0 12px;font-size:12px}.people-drawer-table .review-table{table-layout:auto;min-width:720px}.people-drawer-table .review-table th{white-space:nowrap}.people-drawer-table .review-table th:nth-child(n),.people-drawer-table .review-table td:nth-child(n){width:auto}.people-drawer-table .review-table td{overflow-wrap:normal;word-break:normal}.people-check-col,.people-drawer-table .review-table th.people-check-col,.people-drawer-table .review-table td.people-check-col{width:34px}.people-modal{z-index:61;background:var(--surface);width:min(640px,100vw - 32px);max-height:calc(100vh - 48px);box-shadow:var(--shadow-modal);border-radius:10px;flex-direction:column;display:flex;position:fixed;top:50%;left:50%;overflow:hidden;transform:translate(-50%,-50%)}.people-modal>.people-drawer-head{flex:none}.people-modal>.people-editor-form,.people-modal>.admin-modal-body{flex:auto;min-height:0;overflow-y:auto}.people-teacher-responsibilities-modal{flex-direction:column;width:min(960px,100vw - 32px);height:min(820px,100vh - 48px);display:flex;overflow:hidden}.people-teacher-responsibilities-modal .people-drawer-body{flex:auto;min-height:0;overflow-y:auto}.people-editor-form{padding:18px 22px 24px}.people-toast{z-index:80;background:var(--primary);color:#fff;box-shadow:var(--shadow-modal);border-radius:8px;padding:12px 18px;font-size:13px;animation:.16s people-toast-in;position:fixed;bottom:24px;right:24px}@keyframes people-toast-in{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}@media (max-width:1040px){.people-kpis,.people-filterbar{grid-template-columns:repeat(2,minmax(0,1fr))}.people-filterbar .search-field{grid-column:1/-1}}.status-flagged{color:#8e44ad;background:#9b59b61f}.people-block-field{flex-direction:column;gap:6px;margin:12px 0;display:flex}.people-block-field>span{color:var(--ink-soft,#5f6b7a);font-size:12px;font-weight:600}.people-block-field input,.people-block-field textarea{border:1px solid var(--line,#d9dee5);font:inherit;resize:vertical;background:var(--surface,#fff);border-radius:8px;padding:8px 10px;font-size:13px}.people-field-grid textarea{border:1px solid var(--line,#d9dee5);font:inherit;border-radius:8px;padding:8px 10px;font-size:13px}.admin-modal-body{padding:16px 22px 22px}.admin-modal-body .admin-modal-body{padding:0}.admin-confirm{width:min(440px,100vw - 32px)}.admin-confirm h2{margin:0 0 8px;font-size:17px}.admin-confirm p{color:var(--ink-soft,#5f6b7a);margin:0 0 16px;font-size:13px;line-height:1.5}.admin-cell-wrap{white-space:normal;min-width:180px;max-width:320px;line-height:1.4}.admin-subtle{color:var(--ink-soft,#8a93a1);font-size:11px}.admin-row-muted td{opacity:.55}.admin-flex-input{border:1px solid var(--line,#d9dee5);min-width:0;font:inherit;border-radius:8px;flex:1;padding:7px 10px;font-size:13px}.admin-scoring-layout{grid-template-columns:repeat(2,minmax(0,1fr));align-items:start;gap:16px;display:grid}.admin-config-panel{background:var(--surface,#fff);border:1px solid var(--line,#e3e8ee);border-radius:12px;flex-direction:column;gap:12px;padding:18px 20px 20px;display:flex}.admin-config-panel>header h2{margin:0;font-size:16px}.admin-config-panel>header p{color:var(--ink-soft,#5f6b7a);margin:4px 0 0;font-size:12px}.admin-config-panel .people-table{margin:0}.admin-config-panel-wide,.data-history-section{margin-top:16px}.admin-award-preview{border:1px solid var(--line,#e3e8ee);background:#fbf9f6;border-left:4px solid #b08d57;border-radius:10px;flex-direction:column;gap:6px;padding:14px 16px;display:flex}.admin-award-preview.award-bronze{border-left-color:#b08d57}.admin-award-preview.award-silver{border-left-color:#9aa5b1}.admin-award-preview.award-gold{border-left-color:#d4a017}.admin-award-preview strong{font-size:14px}.admin-award-preview p{margin:0;font-size:13px;line-height:1.45}.admin-award-preview em{color:var(--ink-soft,#5f6b7a);font-size:12px;font-style:normal}.admin-radio-list{flex-direction:column;gap:8px;display:flex}.admin-radio-item{cursor:pointer;align-items:center;gap:8px;font-size:13px;display:flex}.admin-radio-item input{accent-color:var(--primary,#143c6b)}.admin-check-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px 16px;display:grid}.admin-flow-preview{background:var(--surface,#fff);border:1px solid var(--line,#e3e8ee);border-radius:12px;flex-wrap:wrap;align-items:center;gap:8px;margin-bottom:4px;padding:14px 18px;display:flex}.admin-flow-preview span{align-items:center;gap:8px;display:inline-flex}.admin-flow-preview em{color:var(--primary,#143c6b);background:#143c6b14;border-radius:999px;padding:5px 12px;font-size:12px;font-style:normal;font-weight:600}.admin-flow-preview i{color:var(--ink-soft,#8a93a1);font-style:normal}.admin-cert-preview{text-align:center;background:linear-gradient(#fffdf7 0%,#faf5e8 100%);border:1px solid #d8cba8;border-radius:12px;flex-direction:column;gap:10px;padding:26px 28px;display:flex}.admin-cert-crest{letter-spacing:3px;color:#8a6d2f;font-size:11px;font-weight:700}.admin-cert-preview h2{color:#2c3a4d;margin:0;font-size:19px}.admin-cert-subtitle{color:var(--ink-soft,#5f6b7a);margin:0;font-size:12px;line-height:1.5}.admin-cert-fields{text-align:left;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px 18px;max-width:420px;margin:8px auto 0;display:grid}.admin-cert-fields>div{flex-direction:column;gap:2px;display:flex}.admin-cert-fields span{text-transform:uppercase;letter-spacing:.6px;color:#8a6d2f;font-size:10px}.admin-cert-fields strong{font-size:13px}.admin-cert-footer{color:var(--ink-soft,#8a93a1);margin:10px 0 0;font-size:11px}.admin-cert-submissions{flex-direction:column;gap:10px;margin-top:16px;display:flex}.admin-cert-submissions header h3{margin:0 0 2px;font-size:14px}.admin-cert-submissions header p{color:var(--ink-soft,#8a93a1);margin:0;font-size:12px}.admin-upload-area{border:2px dashed var(--line,#c9d2dc);cursor:pointer;text-align:center;color:var(--ink-soft,#5f6b7a);border-radius:12px;flex-direction:column;align-items:center;gap:6px;padding:26px 16px;transition:border-color .12s,background .12s;display:flex}.admin-upload-area:hover{border-color:var(--primary,#143c6b);background:#143c6b08}.admin-upload-area strong{color:var(--ink,#22303f);font-size:13px}.admin-upload-area span{font-size:11px}.admin-upload-area input{display:none}.admin-import-summary{grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;display:grid}.admin-import-summary>div{border:1px solid var(--line,#e3e8ee);border-radius:10px;flex-direction:column;gap:2px;padding:10px 12px;display:flex}.admin-import-summary strong{font-size:17px}.admin-import-summary span{color:var(--ink-soft,#5f6b7a);font-size:11px}.admin-import-summary>div.warn strong{color:var(--warning,#f39c12)}.admin-import-summary>div.error strong{color:var(--error,#e74c3c)}.admin-cell-note{max-width:180px;color:var(--text-3);margin-top:4px;font-size:10px;line-height:1.35;display:block}.admin-import-blocker{border-left:3px solid var(--error,#e74c3c);color:var(--text-2);background:#e74c3c12;margin:0;padding:9px 12px;font-size:12px;line-height:1.45}.relationship-configure{gap:16px;display:grid}.relationship-configure-head{justify-content:space-between;align-items:flex-start;gap:20px;display:flex}.relationship-configure-head h2{color:var(--primary);margin:0 0 6px;font-family:Georgia,Times New Roman,serif;font-size:24px}.relationship-configure-head p{max-width:850px;color:var(--text-2);margin:0;line-height:1.5}.relationship-workflow-state{border-top:1px solid var(--border);border-bottom:1px solid var(--border);color:var(--text-2);flex-wrap:wrap;gap:8px 16px;padding:10px 0;font-size:13px;line-height:1.45;display:flex}.relationship-workflow-state span:first-child{color:var(--primary);font-weight:700}.relationship-mode-tabs{border:1px solid var(--border);background:var(--surface);border-radius:10px;gap:8px;padding:6px;display:flex}.relationship-mode-tabs button{color:var(--text-2);cursor:pointer;background:0 0;border:0;border-radius:7px;align-items:center;gap:8px;padding:10px 14px;font-weight:700;display:inline-flex}.relationship-mode-tabs button.active{background:var(--primary);color:#fff}.relationship-difference-summary{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;display:grid}.relationship-difference-summary>div{border:1px solid var(--border);background:var(--surface);border-radius:9px;padding:12px 16px}.relationship-difference-summary strong,.relationship-difference-summary span{display:block}.relationship-difference-summary strong{color:var(--primary);font-size:20px}.relationship-difference-summary span{color:var(--text-3);margin-top:3px;font-size:12px}.relationship-transfer-grid{grid-template-columns:minmax(320px,.9fr) 112px minmax(390px,1.1fr);align-items:stretch;min-height:570px;display:grid}.relationship-pane{border:1px solid var(--border-2);background:var(--surface);overflow:hidden}.relationship-source-pane{border-radius:12px 0 0 12px}.relationship-target-pane{border-radius:0 12px 12px 0}.relationship-pane>header{border-bottom:1px solid var(--border);justify-content:space-between;align-items:flex-start;gap:12px;min-height:76px;padding:14px 16px;display:flex}.relationship-pane>header h3{color:var(--primary);margin:4px 0 0;font-size:16px}.relationship-pane>header>span{color:var(--text-3);font-size:11px}.relationship-source-label,.relationship-target-label{color:var(--text-3);letter-spacing:.08em;text-transform:uppercase;font-size:10px;font-weight:800}.relationship-target-label{color:#81713f}.relationship-source-list{max-height:500px;padding:10px;overflow-y:auto}.relationship-source-list>button{border:1px solid var(--border);width:100%;color:inherit;text-align:left;cursor:pointer;background:#fff;border-radius:9px;gap:8px;margin-bottom:8px;padding:11px 12px;display:grid}.relationship-source-list>button.selected{border-color:var(--accent);background:#a6986712}.relationship-source-list>button>div{justify-content:space-between;align-items:center;gap:10px;display:flex}.relationship-source-list strong{color:var(--primary);font-size:13px}.relationship-source-list span{color:var(--text-3);font-size:11px}.relationship-source-list em{white-space:nowrap;font-style:normal}.relationship-student-list>button>div:first-child{flex-direction:column;align-items:flex-start;gap:2px}.relationship-transfer-action{border-top:1px solid var(--border-2);border-bottom:1px solid var(--border-2);background:#15224209;place-items:center;display:grid}.relationship-arrow-button{border:1px solid var(--accent);background:var(--surface);width:92px;color:var(--primary);cursor:pointer;border-radius:9px;place-items:center;gap:6px;padding:12px 8px;font-size:11px;font-weight:800;display:grid}.relationship-arrow-button:disabled{opacity:.45;cursor:not-allowed}.relationship-add-user{border-bottom:1px solid var(--border);align-items:end;gap:10px;padding:16px;display:flex}.relationship-add-user label{flex:1;min-width:0}.relationship-add-user label>span,.relationship-student-editor label>span,.relationship-student-editor>div>span{color:var(--text-3);margin-bottom:6px;font-size:11px;font-weight:700;display:block}.relationship-add-user select,.relationship-student-editor select,.relationship-add-user .portal-select,.relationship-student-editor .portal-select{width:100%}.relationship-current-list{padding:16px}.relationship-current-list h4{color:var(--primary);margin:0 0 10px;font-size:13px}.relationship-current-list>div{border-bottom:1px solid var(--border);grid-template-columns:minmax(0,1fr) auto auto;align-items:center;gap:10px;padding:10px 0;display:grid}.relationship-current-list strong,.relationship-current-list span{display:block}.relationship-current-list strong{color:var(--primary);font-size:13px}.relationship-current-list span{color:var(--text-3);margin-top:2px;font-size:11px}.relationship-current-list em{color:#81713f;font-size:10px;font-style:normal;font-weight:800}.relationship-guidance{color:var(--text-2);background:#a698671a;border-radius:8px;margin:0 16px 16px;padding:10px 12px;font-size:11px;line-height:1.45}.relationship-student-editor{grid-template-columns:minmax(120px,.7fr) auto minmax(200px,1.3fr);align-items:center;gap:14px;padding:24px;display:grid}.relationship-student-editor>div>strong{color:var(--primary);font-size:20px}.relationship-student-editor>p{color:var(--text-2);background:#1522420a;border-radius:8px;grid-column:1/-1;margin:8px 0 0;padding:10px 12px;font-size:11px;line-height:1.5}.admin-preview-table{max-height:320px;overflow:auto}.admin-parsing{animation:1.1s ease-in-out infinite admin-pulse}@keyframes admin-pulse{0%,to{opacity:1}50%{opacity:.45}}.admin-import-done{background:#27ae6012;border:1px solid #27ae6059;border-radius:10px;flex-direction:column;gap:12px;padding:16px;font-size:13px;display:flex}.admin-import-done p{margin:0;line-height:1.5}.admin-import-done .primary-action{align-self:flex-start}.admin-quality-kpis{grid-template-columns:repeat(auto-fill,minmax(170px,1fr));gap:10px;display:grid}.admin-quality-chip{border:1px solid var(--line,#e3e8ee);background:var(--surface,#fff);cursor:pointer;text-align:left;font:inherit;border-radius:10px;align-items:center;gap:10px;padding:10px 12px;transition:border-color .12s,box-shadow .12s;display:flex}.admin-quality-chip:hover{border-color:var(--primary,#143c6b)}.admin-quality-chip.active{border-color:var(--primary,#143c6b);box-shadow:0 0 0 2px #143c6b1f}.admin-quality-chip strong{color:var(--primary,#143c6b);font-size:18px}.admin-quality-chip span{color:var(--ink-soft,#5f6b7a);font-size:11.5px;line-height:1.3}.admin-export-grid{grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:12px;display:grid}.admin-export-card{border:1px solid var(--line,#e3e8ee);border-radius:10px;flex-direction:column;gap:6px;padding:14px 16px;display:flex}.admin-export-card strong{font-size:14px}.admin-export-card p{color:var(--ink-soft,#5f6b7a);margin:0;font-size:12px;line-height:1.4}.admin-export-card em{color:var(--ink-soft,#8a93a1);font-size:11px;font-style:normal}.admin-export-card .people-drawer-actions{margin-top:6px}.admin-diff-table{border-collapse:collapse;width:100%;font-size:12.5px}.admin-diff-table th,.admin-diff-table td{border:1px solid var(--line,#e3e8ee);text-align:left;padding:7px 10px}.admin-diff-table th{text-transform:uppercase;letter-spacing:.4px;background:#143c6b0d;font-size:11.5px}.admin-diff-before{color:#a13a2e;background:#e74c3c12}.admin-diff-after{color:#1d7a49;background:#27ae6014}.admin-announce-preview{border:1px solid var(--line,#e3e8ee);border-left:4px solid var(--primary,#143c6b);border-radius:10px;flex-direction:column;gap:8px;padding:14px 18px;display:flex}.admin-announce-preview header{flex-direction:column;gap:2px;display:flex}.admin-announce-preview header strong{font-size:14.5px}.admin-announce-preview header span{color:var(--ink-soft,#8a93a1);font-size:11.5px}.admin-announce-preview p{margin:0;font-size:13px;line-height:1.55}.admin-announce-preview footer{color:var(--ink-soft,#8a93a1);font-size:11.5px}@media (max-width:1040px){.admin-scoring-layout{grid-template-columns:minmax(0,1fr)}.admin-import-summary{grid-template-columns:repeat(2,minmax(0,1fr))}.relationship-transfer-grid{grid-template-columns:minmax(0,1fr)}.relationship-source-pane,.relationship-target-pane{border-radius:12px}.relationship-transfer-action{border:0;min-height:92px}.relationship-arrow-button svg{transform:rotate(90deg)}}@media (max-width:720px){.people-kpis,.people-filterbar{grid-template-columns:minmax(0,1fr)}.relationship-configure-head,.relationship-mode-tabs{flex-direction:column}.relationship-difference-summary,.relationship-student-editor{grid-template-columns:minmax(0,1fr)}.relationship-student-editor>svg{transform:rotate(90deg)}.people-drawer{width:100vw}.people-field-grid,.people-summary-grid,.people-feature-grid{grid-template-columns:minmax(0,1fr)}.people-feature-tree details>div{grid-template-columns:minmax(0,1fr);padding-left:12px}.people-tabs{overflow-x:auto}.admin-check-grid,.admin-cert-fields{grid-template-columns:minmax(0,1fr)}}.access-role-table .review-table{table-layout:fixed;min-width:960px}.access-role-table:not(.people-table) .review-table th:first-child,.access-role-table:not(.people-table) .review-table td:first-child{width:22%}.access-role-table:not(.people-table) .review-table th:nth-child(2),.access-role-table:not(.people-table) .review-table td:nth-child(2){width:12%}.access-role-table:not(.people-table) .review-table th:nth-child(3),.access-role-table:not(.people-table) .review-table td:nth-child(3){width:14%}.access-role-table:not(.people-table) .review-table th:nth-child(4),.access-role-table:not(.people-table) .review-table td:nth-child(4){width:28%}.access-role-table:not(.people-table) .review-table th:nth-child(5),.access-role-table:not(.people-table) .review-table td:nth-child(5),.access-role-table:not(.people-table) .review-table th:nth-child(6),.access-role-table:not(.people-table) .review-table td:nth-child(6){width:7%}.access-role-table:not(.people-table) .review-table th:nth-child(7),.access-role-table:not(.people-table) .review-table td:nth-child(7){width:10%}.access-page-embedded .access-role-table.people-table .review-table th:first-child,.access-page-embedded .access-role-table.people-table .review-table td:first-child{width:22%}.access-page-embedded .access-role-table.people-table .review-table th:nth-child(2),.access-page-embedded .access-role-table.people-table .review-table td:nth-child(2){width:9%}.access-page-embedded .access-role-table.people-table .review-table th:nth-child(3),.access-page-embedded .access-role-table.people-table .review-table td:nth-child(3){width:12%}.access-page-embedded .access-role-table.people-table .review-table th:nth-child(4),.access-page-embedded .access-role-table.people-table .review-table td:nth-child(4){width:38%}.access-page-embedded .access-role-table.people-table .review-table th:nth-child(5),.access-page-embedded .access-role-table.people-table .review-table td:nth-child(5){width:8%}.access-page-embedded .access-role-table.people-table .review-table th:nth-child(6),.access-page-embedded .access-role-table.people-table .review-table td:nth-child(6){width:11%}.access-page-embedded .people-tag-row.people-feature-tags{flex-wrap:wrap;gap:6px;max-width:100%;display:flex}.access-page-embedded .people-feature-tags .admin-role-label{width:auto;max-width:100%}.access-role-table .review-table td:first-child,.access-role-table .access-role-cell{min-width:0}.access-role-table .admin-user-actions{flex-wrap:nowrap;gap:4px}.access-role-table .admin-row-action{min-height:32px;padding:0 7px}.access-user-table .review-table{min-width:980px}.web-version-banner{z-index:5000;color:#17284c;background:#fffdf5;border:1px solid #c6b36a;border-radius:6px;align-items:center;gap:14px;padding:10px 12px 10px 16px;font-size:14px;font-weight:650;display:flex;position:fixed;top:18px;right:18px;box-shadow:0 8px 24px #17284c29}.web-version-banner button{color:#fff;min-height:34px;font:inherit;cursor:pointer;background:#17284c;border:0;border-radius:5px;align-items:center;gap:7px;padding:7px 11px;display:inline-flex}@media (max-width:640px){.web-version-banner{justify-content:space-between;top:12px;left:12px;right:12px}}
