:root{color:#172033;font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;--bg:#f6f8fb;--bg-soft:#f8fafc;--surface:#fffffff0;--surface-solid:#fff;--surface-soft:#f8fafc;--surface-muted:#f1f5f9;--line:#e3e8ef;--line-strong:#cdd6e1;--text:#172033;--text-strong:#0f172a;--muted:#667085;--faint:#98a2b3;--brand:#111827;--blue:#315eea;--blue-bg:#eff4ff;--success:#047857;--success-bg:#ecfdf3;--success-line:#b7ebcf;--warning:#b54708;--warning-bg:#fffbeb;--warning-line:#fde68a;--danger:#b42318;--danger-bg:#fff1f2;--danger-line:#fecdd3;--info:#175cd3;--info-bg:#eff8ff;--info-line:#bfdbfe;--neutral-bg:#f8fafc;--neutral-line:#e5e7eb;--shadow-xs:0 1px 2px #0f172a0a;--shadow-sm:0 8px 22px #0f172a0b;--shadow-md:0 14px 38px #0f172a12;--shadow-lg:0 28px 80px #0f172a29;--radius-lg:24px;--radius:20px;--radius-sm:14px;background:#f6f8fb;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}*{box-sizing:border-box}html,body,#root{min-height:100%;margin:0}body{min-width:320px;color:var(--text);background:radial-gradient(circle at 8% 0,#dbeafe9e,#0000 30rem),radial-gradient(circle at 94% 8%,#e2e8f0b8,#0000 27rem),linear-gradient(#f8fafc 0%,#f4f7fb 52%,#eef2f7 100%)}button,input,select,textarea{font:inherit}button{cursor:pointer}button:disabled{cursor:not-allowed;opacity:.58;box-shadow:none!important;transform:none!important}a{color:inherit}p{line-height:1.5}:focus-visible{outline-offset:2px;outline:2px solid #64748b}*{scrollbar-width:thin;scrollbar-color:#cbd5e1 transparent}::-webkit-scrollbar{width:10px;height:10px}::-webkit-scrollbar-track{background:0 0}::-webkit-scrollbar-thumb{background:#cbd5e1 padding-box padding-box;border:3px solid #0000;border-radius:999px}.min0{min-width:0}.subtleText{color:var(--muted);font-size:12px}.longText{white-space:pre-wrap;color:var(--text);margin:0;line-height:1.62}.eyebrow,.miniLabel{text-transform:uppercase;letter-spacing:.14em;color:var(--faint);font-size:10.5px;font-weight:850;line-height:1.2}.appShell{grid-template-columns:292px minmax(0,1fr);min-height:100vh;display:grid}.sidebar{z-index:30;-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);background:#ffffffdb;border-right:1px solid #e2e8f0e6;flex-direction:column;gap:18px;height:100vh;padding:20px 16px;display:flex;position:sticky;top:0}.brandBlock{border-bottom:1px solid var(--line);grid-template-columns:38px minmax(0,1fr) auto;align-items:center;gap:10px;padding:2px 6px 16px;display:grid}.brandBlock img{object-fit:contain;width:38px;height:38px}.brandBlock strong,.sessionCard strong{color:var(--text-strong);font-size:13px;line-height:1.2;display:block}.brandBlock small,.sessionCard small{color:var(--muted);text-overflow:ellipsis;white-space:nowrap;margin-top:3px;font-size:12px;display:block;overflow:hidden}.sidebarCloseBtn{border:1px solid var(--line);background:var(--surface-solid);width:34px;height:34px;color:var(--muted);border-radius:999px;font-size:20px;line-height:1;display:none}.navList{gap:16px;padding:0 2px 8px;display:grid;overflow-y:auto}.navGroup{gap:6px;display:grid}.navGroupTitle{color:var(--faint);letter-spacing:.18em;text-transform:uppercase;padding:0 10px 3px;font-size:10px;font-weight:850}.navItem{color:#56657a;text-align:left;background:0 0;border:1px solid #0000;border-radius:16px;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:10px;width:100%;padding:11px 12px;text-decoration:none;transition:background .14s,color .14s,border-color .14s,box-shadow .14s;display:grid}.navItem:hover{color:var(--text-strong);box-shadow:var(--shadow-xs);background:#ffffffd1;border-color:#e2e8f0d6}.navItem.active{color:#fff;background:#111827;border-color:#111827;box-shadow:0 10px 24px #0f172a29}.navItem b{font-size:13.5px;line-height:1.05;display:block}.navLabel{min-width:0}.navDot{opacity:0;background:currentColor;border-radius:999px;width:6px;height:6px}.navItem:hover .navDot{opacity:.28}.navItem.active .navDot{opacity:1}.sidebarBottom{border-top:1px solid var(--line);gap:10px;margin-top:auto;padding-top:12px;display:grid}.sessionCard{box-shadow:var(--shadow-xs);background:#ffffffeb;border:1px solid #e2e8f0eb;border-radius:18px;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:10px;padding:10px;display:grid}.avatar{color:#fff;letter-spacing:.02em;background:#111827;border-radius:999px;place-items:center;width:34px;height:34px;font-size:11px;font-weight:850;display:grid}.sidebarActions{grid-template-columns:1fr 1fr;gap:8px;display:grid}.sidebarCard,.mobileNavBackdrop{display:none}.mainArea{min-width:0;padding:24px clamp(22px,2.4vw,42px) 56px}.mobileTopbar{display:none}.mobileMenuBtn{border:1px solid var(--line);background:var(--surface-solid);width:40px;height:40px;box-shadow:var(--shadow-xs);border-radius:14px;flex-direction:column;justify-content:center;align-items:center;gap:4px;display:none}.mobileMenuBtn span{background:var(--text-strong);border-radius:999px;width:18px;height:2px}.topbar,.topbarTitle,.topbarActions,.envBanner{display:none}.pageFrame{gap:16px;width:100%;max-width:1680px;margin:0 auto;display:grid}.pageFrame.wide{max-width:1760px}.pageStack{gap:16px;display:grid}.pageHeader,.sectionCard,.metricCard,.actionCard,.keyValue,.dataRow,.noteCard,.laneCard,.healthBanner,.inlineComposer,.actionPanel,.emptyState,.errorState,.loadingState,.tabBar,.lane,.modalCard,.drawerPanel{background:var(--surface);box-shadow:var(--shadow-xs), 0 10px 28px #0f172a09;border:1px solid #e2e8f0eb}.pageHeader{border-radius:var(--radius-lg);background:#fffffff0}.pageHeaderMain{grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:16px;padding:20px 22px;display:grid}.pageHeader h2{color:var(--text-strong);letter-spacing:-.055em;margin:5px 0 0;font-size:clamp(24px,2.2vw,34px);line-height:1.04}.pageHeader p{max-width:760px;color:var(--muted);margin:7px 0 0;font-size:13px}.metaRow{flex-wrap:wrap;align-items:center;gap:7px;margin-top:10px;display:flex}.pageActions,.sectionActions,.drawerActions,.toolbarInline,.modalActions{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:8px;display:flex}.toolbarInline{justify-content:flex-start}.toolbarInline input{min-width:min(100%,280px)}.sectionCard{border-radius:var(--radius);min-width:0;padding:16px}.sectionHeader{justify-content:space-between;align-items:center;gap:14px;margin-bottom:13px;display:flex}.sectionHeader h3{color:var(--text-strong);letter-spacing:-.02em;margin:0;font-size:16px;line-height:1.2}.sectionHeader p{color:var(--muted);margin:3px 0 0;font-size:12.5px}.metricGrid{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;display:grid}.metricGrid.two{grid-template-columns:repeat(2,minmax(0,1fr))}.metricGrid.three{grid-template-columns:repeat(3,minmax(0,1fr))}.metricGrid.four{grid-template-columns:repeat(4,minmax(0,1fr))}.metricGrid.executive,.metricGrid.five,.metricGrid.six{grid-template-columns:repeat(3,minmax(0,1fr))}.metricGrid.four .metricCard{min-height:76px;padding:12px 13px}.metricGrid.four .metricCard strong{font-size:clamp(22px,1.8vw,28px)}.cardGrid{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;display:grid}.cardGrid.two{grid-template-columns:repeat(2,minmax(0,1fr))}.cardGrid.three{grid-template-columns:repeat(3,minmax(0,1fr))}.cardGrid.four{grid-template-columns:repeat(4,minmax(0,1fr))}.decisionGrid,.splitGrid{grid-template-columns:minmax(0,1.45fr) minmax(340px,.85fr);align-items:start;gap:16px;display:grid}.detailGrid,.drawerGrid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;display:grid}.detailGrid.two{grid-template-columns:repeat(2,minmax(0,1fr))}.formGrid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;display:grid}.formGrid.two{grid-template-columns:repeat(2,minmax(0,1fr))}.formGrid.three{grid-template-columns:repeat(3,minmax(0,1fr))}.listStack,.drawerStack,.healthStack,.tableLike,.timelineList,.skeletonStack,.formStack{gap:9px;display:grid}.drawerStack{gap:12px}.metricCard{text-align:left;width:100%;min-height:88px;color:var(--text-strong);border-radius:18px;align-content:start;gap:6px;padding:14px 15px;display:grid}.metricCard.clickable{transition:box-shadow .14s,border-color .14s,background .14s}.metricCard.clickable:hover,.metricCard.active{box-shadow:var(--shadow-sm);background:#fff;border-color:#cbd5e1}.metricCard span{color:var(--muted);letter-spacing:.08em;text-transform:uppercase;font-size:11px;font-weight:850}.metricCard strong{letter-spacing:-.055em;font-size:clamp(24px,2.4vw,32px);line-height:1}.metricCard small{color:var(--muted);font-size:12px;line-height:1.3}.metricCard.info,.metricCard.success,.metricCard.warning,.metricCard.danger{background:#fff}.metricCard.info{border-color:var(--info-line)}.metricCard.success{border-color:var(--line)}.metricCard.warning{border-color:var(--warning-line)}.metricCard.danger{border-color:var(--danger-line)}.metricCard.success strong{color:var(--text-strong)}.metricCard.warning strong{color:#92400e}.metricCard.danger strong{color:var(--danger)}.actionCard{text-align:left;width:100%;min-height:132px;color:var(--text-strong);border-radius:19px;align-content:start;gap:8px;padding:16px;transition:box-shadow .14s,border-color .14s,background .14s;display:grid;position:relative}.actionCard:not(:disabled):hover{box-shadow:var(--shadow-sm);background:#fff;border-color:#cbd5e1}.actionCard strong{letter-spacing:-.02em;font-size:16px;line-height:1.18}.actionCard p{color:var(--muted);margin:0;font-size:12.5px}.actionCard em{color:var(--muted);font-size:12px;font-style:normal}.actionMeta{flex-wrap:wrap;align-items:center;gap:6px;margin-top:auto;display:flex}.actionArrow{color:var(--faint);font-weight:900;position:absolute;bottom:12px;right:15px}.actionCard.info,.actionCard.success,.actionCard.warning,.actionCard.danger{background:#fff}.actionCard.warning{border-color:var(--warning-line)}.actionCard.danger{border-color:var(--danger-line)}.btn,.primaryBtn,.secondaryBtn,.ghostBtn,.dangerGhost,.smallBtn,.smallDanger{border:1px solid #0000;border-radius:13px;font-weight:820;line-height:1;transition:box-shadow .14s,background .14s,border-color .14s,color .14s}.btn{padding:9px 13px}.btn.sm{border-radius:11px;padding:7px 10px;font-size:12px}.btn.lg{border-radius:14px;width:100%;padding:12px 15px}.btn.primary,.primaryBtn{color:#fff;background:#111827;box-shadow:0 8px 18px #11182729}.btn.secondary,.secondaryBtn,.ghostBtn{color:var(--brand);border-color:var(--line);background:#fff}.btn.ghost{color:var(--muted);background:0 0;border-color:#0000}.btn.danger,.dangerGhost,.smallDanger{background:var(--danger-bg);color:var(--danger);border-color:var(--danger-line)}.btn:hover:not(:disabled),.primaryBtn:hover:not(:disabled),.secondaryBtn:hover:not(:disabled),.ghostBtn:hover:not(:disabled),.dangerGhost:hover:not(:disabled){box-shadow:var(--shadow-xs);border-color:#cbd5e1}input,select,textarea{border:1px solid var(--line-strong);width:100%;color:var(--text);background:#fff;border-radius:13px;outline:none;padding:9px 11px;transition:border-color .14s,box-shadow .14s,background .14s}select{min-width:154px}textarea{resize:vertical;min-height:96px}input:focus,select:focus,textarea:focus{border-color:#94a3b8;box-shadow:0 0 0 4px #64748b1a}label{color:var(--text-strong);gap:7px;font-size:13px;font-weight:760;display:grid}label input,label select,label textarea{font-weight:520}.fieldHint{color:var(--muted);font-size:12px;font-weight:520}.checkRow{border:1px solid var(--line);background:var(--surface-soft);border-radius:14px;grid-template-columns:auto minmax(0,1fr);align-items:center;gap:9px;padding:10px 12px}.checkRow input{width:auto}.inlineComposer,.actionPanel{background:#fbfcff;border-radius:17px;gap:10px;padding:12px;display:grid}.actionPanel{grid-template-columns:repeat(4,minmax(0,1fr))}.filterBar{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:8px;width:100%;display:flex}.filterBar select{flex:0 0 152px;width:152px;min-width:0}.filterBar .btn{flex:none}.compactStats{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.compactStat{border:1px solid var(--line);color:var(--muted);background:#fff;border-radius:999px;align-items:center;gap:7px;padding:7px 9px;font-size:12px;font-weight:760;display:inline-flex}.compactStat b{color:var(--text-strong)}.badge{white-space:nowrap;border:1px solid var(--neutral-line);background:var(--neutral-bg);max-width:100%;color:var(--muted);letter-spacing:.01em;border-radius:999px;justify-content:center;align-items:center;padding:4px 7px;font-size:10.5px;font-weight:820;line-height:1;display:inline-flex}.badge.info{background:var(--info-bg);color:var(--info);border-color:var(--info-line)}.badge.success{background:var(--success-bg);color:var(--success);border-color:var(--success-line)}.badge.warning{background:var(--warning-bg);color:var(--warning);border-color:var(--warning-line)}.badge.danger{background:var(--danger-bg);color:var(--danger);border-color:var(--danger-line)}.rowDot{background:var(--faint);border-radius:999px;width:9px;height:9px;display:inline-block;box-shadow:0 0 0 4px #98a2b31a}.rowDot.info{background:var(--info);box-shadow:0 0 0 4px #175cd31a}.rowDot.success{background:var(--success);box-shadow:0 0 0 4px #0676471a}.rowDot.warning{background:#f59e0b;box-shadow:0 0 0 4px #f59e0b1f}.rowDot.danger{background:var(--danger);box-shadow:0 0 0 4px #b423181f}.inlineNotice{border:1px solid var(--line);background:var(--surface-soft);color:var(--muted);border-radius:15px;padding:11px 12px;font-size:13px;line-height:1.5}.inlineNotice.info{background:var(--info-bg);color:var(--info);border-color:var(--info-line)}.inlineNotice.success{background:var(--success-bg);color:var(--success);border-color:var(--success-line)}.inlineNotice.warning{background:var(--warning-bg);color:var(--warning);border-color:var(--warning-line)}.inlineNotice.danger{background:var(--danger-bg);color:var(--danger);border-color:var(--danger-line)}.keyValue{border-radius:16px;gap:5px;padding:13px;display:grid}.keyValue span{color:var(--muted);text-transform:uppercase;letter-spacing:.08em;font-size:11px;font-weight:820}.keyValue strong{color:var(--text-strong);overflow-wrap:anywhere;font-size:15px;line-height:1.25}.keyValue small{color:var(--muted);font-size:12px;line-height:1.35}.keyValue.success{border-color:var(--line);background:#fff}.keyValue.warning{border-color:var(--warning-line);background:#fffdf5}.keyValue.danger{border-color:var(--danger-line);background:#fff7f7}.keyValue.info{border-color:var(--info-line);background:#fff}.dataRow{width:100%;color:var(--text);text-align:left;border-radius:16px;grid-template-columns:auto minmax(0,1fr) auto auto auto;align-items:center;gap:10px;padding:12px;display:grid}.dataRow.clickable{transition:box-shadow .14s,border-color .14s,background .14s}.dataRow.clickable:hover{box-shadow:var(--shadow-sm);background:#fff;border-color:#cbd5e1}.rowMain{gap:3px;min-width:0;display:grid}.rowMain b{color:var(--text-strong);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.rowMain small{color:var(--muted);text-overflow:ellipsis;white-space:nowrap;font-size:12px;overflow:hidden}.rowMeta{color:var(--muted);white-space:nowrap;font-size:12px}.rowActions{justify-self:end;gap:8px;display:inline-flex}.tableLike{gap:8px}.noteCard{border-radius:16px;padding:13px}.noteCard strong{color:var(--text-strong);display:block}.noteCard p{color:var(--text);margin:8px 0}.noteCard small{color:var(--muted)}.timelineRow{grid-template-columns:18px minmax(0,1fr);gap:10px;padding:9px 0;display:grid}.timelineDot{background:var(--brand);border-radius:999px;width:9px;height:9px;margin-top:5px;box-shadow:0 0 0 4px #11182714}.timelineRow b{color:var(--text-strong);display:block}.timelineRow small{color:var(--muted)}.pillWrap{flex-wrap:wrap;gap:7px;margin-top:10px;display:flex}.stepPill{border:1px solid var(--line);background:var(--surface-soft);color:var(--muted);border-radius:999px;align-items:center;gap:6px;padding:6px 8px;font-size:12px;font-weight:780;display:inline-flex}.schoolSummaryGrid{grid-template-columns:minmax(0,1.25fr) minmax(280px,.75fr);align-items:start;gap:12px;display:grid}.schoolStatusCard{border:1px solid var(--line);background:#fff;border-radius:18px;gap:12px;padding:14px;display:grid}.schoolStatusTop{justify-content:space-between;align-items:flex-start;gap:12px;display:flex}.schoolStatusTop h4{color:var(--text-strong);letter-spacing:-.02em;margin:0;font-size:16px}.schoolStatusTop p{color:var(--muted);margin:4px 0 0;font-size:13px}.schoolQuickFacts{gap:8px;display:grid}.schoolQuickFact{border-bottom:1px solid var(--line);color:var(--muted);justify-content:space-between;align-items:center;gap:12px;padding:9px 0;font-size:13px;display:flex}.schoolQuickFact:last-child{border-bottom:0}.schoolQuickFact b{color:var(--text-strong)}.implementationBoard{grid-template-columns:repeat(4,minmax(260px,1fr));align-items:start;gap:12px;padding-bottom:4px;display:grid;overflow-x:auto}.lane{background:#f8fafcd1;border-radius:19px;min-width:260px;padding:11px}.laneHeader{justify-content:space-between;align-items:center;gap:12px;padding:4px 4px 10px;display:flex}.laneHeader b{color:var(--text-strong);display:block}.laneHeader small{color:var(--muted);margin-top:2px;font-size:12px;display:block}.laneHeader span{border:1px solid var(--line);min-width:26px;height:26px;color:var(--muted);background:#fff;border-radius:999px;place-items:center;font-weight:830;display:grid}.laneEmpty{border:1px dashed var(--line-strong);color:var(--muted);text-align:center;background:#fff;border-radius:15px;padding:22px}.laneCard{width:100%;color:var(--text);text-align:left;border-radius:16px;gap:8px;margin-bottom:9px;padding:12px;transition:box-shadow .14s,border-color .14s,background .14s;display:grid}.laneCard:hover{box-shadow:var(--shadow-sm);background:#fff;border-color:#cbd5e1}.laneCardTop{justify-content:space-between;align-items:start;gap:8px;display:flex}.laneCardTop strong{color:var(--text-strong)}.laneCard small,.laneCard p{color:var(--muted)}.laneCard p{margin:0;font-size:13px;line-height:1.38}.laneMeta{color:var(--muted);justify-content:space-between;align-items:center;gap:10px;font-size:12px;display:flex}.progressLine{background:#eef2f7;border-radius:999px;height:6px;overflow:hidden}.progressLine span{border-radius:inherit;background:#64748b;height:100%;display:block}.tabBar{background:var(--surface-soft);box-shadow:none;border-radius:15px;gap:5px;padding:5px;display:flex;overflow-x:auto}.tabBar button{color:var(--muted);white-space:nowrap;background:0 0;border:0;border-radius:10px;padding:8px 10px;font-size:12.5px;font-weight:820}.tabBar button.active{color:#fff;background:#111827;box-shadow:0 8px 18px #11182724}.emptyState,.errorState,.loadingState{border:1px dashed var(--line-strong);color:var(--muted);text-align:center;box-shadow:none;background:#fbfcffeb;border-radius:18px;padding:24px}.emptyIcon{background:var(--surface-muted);width:36px;height:36px;color:var(--faint);border-radius:999px;place-items:center;margin:0 auto 9px;font-weight:900;display:grid}.emptyState strong,.errorState strong{color:var(--text-strong);margin-bottom:5px;display:block}.emptyState p,.errorState p{margin:0;font-size:13px}.emptyAction,.errorAction{justify-content:center;margin-top:12px;display:flex}.errorState{border-color:var(--danger-line);background:var(--danger-bg);color:var(--danger)}.errorState strong{color:var(--danger)}.loadingState{text-align:left;gap:12px;display:grid}.loadingHead{color:var(--muted);align-items:center;gap:9px;font-size:13px;font-weight:800;display:flex}.loadingHead span{background:#64748b;border-radius:999px;width:9px;height:9px;box-shadow:0 0 0 5px #64748b1a}.skeletonRow{border:1px solid var(--line);background:linear-gradient(90deg,#eef2f7 0%,#fbfcff 48%,#eef2f7 100%) 0 0/230% 100%;border-radius:15px;min-height:56px;animation:1.2s linear infinite shimmer}@keyframes shimmer{to{background-position:-230% 0}}.drawerBackdrop,.modalBackdrop{z-index:90;-webkit-backdrop-filter:blur(7px);backdrop-filter:blur(7px);background:#0f172a52;place-items:center;padding:18px;display:grid;position:fixed;inset:0}.drawerBackdrop{place-items:stretch end}.drawerPanel,.modalCard{width:min(100%,760px);max-height:calc(100vh - 36px);box-shadow:var(--shadow-lg);background:#fff;border-radius:23px;padding:18px;overflow:auto}.drawerPanel{border-radius:23px 0 0 23px;width:min(100%,960px)}.drawerHeader{justify-content:space-between;align-items:flex-start;gap:14px;margin-bottom:13px;display:flex}.drawerHeader h3{color:var(--text-strong);letter-spacing:-.04em;margin:0;font-size:22px}.drawerHeader p{color:var(--muted);margin:5px 0 0;font-size:13px}.modalActions{justify-content:flex-end}.loginLayout{color:#fff;background:radial-gradient(circle at 18% 18%,#315eea52,#0000 29rem),radial-gradient(circle at 80% 20%,#0ba5ec33,#0000 24rem),linear-gradient(135deg,#08111f 0%,#111827 50%,#182230 100%);grid-template-columns:minmax(0,1.1fr) minmax(420px,.9fr);min-height:100vh;display:grid}.loginHero{flex-direction:column;justify-content:space-between;gap:46px;padding:clamp(34px,7vw,94px);display:flex}.loginHero img{object-fit:contain;filter:drop-shadow(0 20px 35px #0000004d);width:76px;height:76px}.loginHero h1{letter-spacing:-.075em;max-width:830px;margin:12px 0 16px;font-size:clamp(42px,6vw,84px);line-height:.91}.loginHero p{color:#ffffffb8;max-width:620px;margin:0;font-size:18px}.loginHero .eyebrow{color:#ffffff85}.securityHint{color:#ffffffc7;background:#ffffff12;border:1px solid #ffffff24;border-radius:18px;gap:5px;max-width:520px;margin-top:22px;padding:13px 14px;display:grid}.securityHint strong{color:#fff}.securityHint span{font-size:13px}.loginCard{color:var(--text);background:#fffffff2;border:1px solid #ffffff2e;border-radius:30px;align-self:center;margin:24px;padding:30px;box-shadow:0 38px 110px #0000004d}.loginCard h2{color:var(--text-strong);letter-spacing:-.05em;margin:4px 0;font-size:30px}.loginCard p{color:var(--muted);margin:0}.passwordField{grid-template-columns:minmax(0,1fr) auto;gap:8px;display:grid}.passwordField button{border:1px solid var(--line);color:var(--brand);background:#fff;border-radius:12px;padding:0 12px;font-weight:850}.setupBox{border:1px solid var(--line);background:var(--surface-soft);border-radius:16px;gap:8px;padding:14px;display:grid}.setupBox span{color:var(--muted);font-size:12px;font-weight:800}.setupBox small{color:var(--muted)}.setupBox code,.codeGrid code,.smallJson,.jsonBox{word-break:break-all;white-space:pre-wrap;color:#fff;background:#101828;border-radius:10px;padding:9px;font-size:12px}.codeGrid{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;display:grid}.bootScreen{background:radial-gradient(circle at top, #dbeafe80, transparent 30rem), var(--bg);place-items:center;min-height:100vh;display:grid}.bootScreen>div{color:var(--muted);justify-items:center;gap:10px;padding:24px;display:grid}.bootScreen img{object-fit:contain;width:72px;height:72px}.bootScreen strong{color:var(--text-strong);font-size:18px}.toast{z-index:120;color:#fff;max-width:min(420px,100vw - 32px);box-shadow:var(--shadow-lg);background:#111827;border-radius:16px;padding:14px 16px;font-weight:820;position:fixed;bottom:24px;right:24px}.toast.success{background:var(--success)}.toast.error{background:var(--danger)}.toast.info{background:#111827}@media (width>=1560px){.splitGrid{grid-template-columns:minmax(0,1.35fr) minmax(360px,.65fr)}.cardGrid.four{grid-template-columns:repeat(4,minmax(0,1fr))}}@media (width<=1320px){.metricGrid.executive,.metricGrid.four,.metricGrid.five,.metricGrid.six,.cardGrid.four{grid-template-columns:repeat(3,minmax(0,1fr))}}@media (width<=1120px){.appShell{grid-template-columns:1fr}.sidebar{width:min(318px,88vw);box-shadow:var(--shadow-lg);transition:transform .22s;position:fixed;top:0;left:0;transform:translate(-106%)}.sidebar.open{transform:translate(0)}.sidebarCloseBtn,.mobileMenuBtn{display:inline-flex}.mobileNavBackdrop{z-index:20;background:#0f172a47;border:0;display:block;position:fixed;inset:0}.mainArea{padding:16px}.mobileTopbar{align-items:center;gap:12px;margin-bottom:14px;display:flex}.mobileTopbar strong{color:var(--text-strong)}.pageHeaderMain,.decisionGrid,.splitGrid,.schoolSummaryGrid{grid-template-columns:1fr}.pageActions,.sectionActions{justify-content:flex-start}.metricGrid,.metricGrid.executive,.metricGrid.four,.metricGrid.five,.metricGrid.six,.cardGrid,.cardGrid.two,.cardGrid.three,.cardGrid.four{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width<=720px){.mainArea{padding:14px}.pageHeaderMain{padding:18px}.pageHeader h2{font-size:26px}.sectionCard{padding:14px}.sectionHeader,.drawerHeader{display:grid}.metricGrid,.metricGrid.executive,.metricGrid.four,.metricGrid.five,.metricGrid.six,.cardGrid,.cardGrid.two,.cardGrid.three,.cardGrid.four,.detailGrid,.detailGrid.two,.drawerGrid,.formGrid,.formGrid.two,.formGrid.three,.actionPanel,.filterBar{grid-template-columns:1fr}.dataRow{grid-template-columns:auto minmax(0,1fr)}.dataRow .badge,.dataRow .rowMeta,.dataRow .rowActions{grid-column:2;justify-self:start}.toolbarInline{display:grid}.toolbarInline input,select{width:100%;min-width:0}.filterBar{justify-content:stretch}.filterBar input,.filterBar select,.filterBar .btn{flex:100%;width:100%;max-width:none}.implementationBoard{grid-template-columns:minmax(280px,1fr);overflow:visible}.drawerBackdrop{place-items:stretch stretch;padding:10px}.drawerPanel{border-radius:22px;width:100%;max-height:calc(100vh - 20px)}.modalBackdrop{padding:10px}.modalCard{max-height:calc(100vh - 20px)}.loginLayout{grid-template-columns:1fr}.loginHero{padding:30px 22px 0}.loginHero h1{font-size:42px}.loginHero p{font-size:15px}.loginCard{margin:22px;padding:22px}.codeGrid{grid-template-columns:1fr}}.metricGrid.five{grid-template-columns:repeat(5,minmax(0,1fr))}.metricGrid.five .metricCard{min-height:72px;padding:12px 13px}.metricGrid.five .metricCard strong{font-size:clamp(21px,1.7vw,27px)}.filterBar{justify-content:flex-end;row-gap:7px}.filterBar input{flex:260px;min-width:220px;max-width:360px}.filterBar select{flex:0 0 142px;width:142px;min-width:0;padding-right:28px}.filterBar .btn{min-height:36px}.paginationBar{color:var(--muted);justify-content:space-between;align-items:center;gap:12px;padding:10px 2px 0;font-size:12.5px;font-weight:720;display:flex}.paginationControls{justify-content:flex-end;align-items:center;gap:8px;display:flex}.paginationControls select{border-radius:11px;width:auto;min-width:126px;padding:7px 9px;font-size:12px}.pageCounter{text-align:center;min-width:52px;color:var(--muted)}.drawerPanel .sectionCard{box-shadow:none;background:#fff}.drawerPanel .filterBar{justify-content:flex-start}@media (width<=1320px){.metricGrid.five{grid-template-columns:repeat(3,minmax(0,1fr))}}@media (width<=920px){.paginationBar{flex-direction:column;align-items:flex-start}.paginationControls{flex-wrap:wrap;justify-content:flex-start}}@media (width<=720px){.metricGrid.five{grid-template-columns:repeat(2,minmax(0,1fr))}.paginationControls,.paginationControls select,.paginationControls .btn,.pageCounter{width:100%}}.loginLayout.centered{min-height:100vh;color:var(--text);background-image:linear-gradient(180deg, #050a186b, #050a18a3), var(--login-bg);background-position:50%;background-size:cover;grid-template-columns:1fr;place-items:center;padding:clamp(18px,3vw,42px);display:grid;position:relative;overflow:hidden}.loginLayout.centered:before{content:"";pointer-events:none;background:radial-gradient(circle at 50% 30%,#ffffff2e,#0000 26rem),radial-gradient(circle at 70% 100%,#2dd4bf2e,#0000 28rem);position:absolute;inset:0}.loginCard.centeredCard{z-index:1;-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);background:#fffffff0;border:1px solid #ffffff47;border-radius:26px;width:min(100%,460px);margin:0;padding:26px;position:relative;box-shadow:0 34px 95px #0000005c}.loginBrandMark{align-items:center;gap:11px;margin-bottom:18px;display:flex}.loginBrandMark img{object-fit:contain;width:42px;height:42px}.loginBrandMark strong{color:var(--text-strong);letter-spacing:-.02em;font-size:15px;display:block}.loginCard.centeredCard h2{margin-bottom:12px;font-size:26px}.loginCard.centeredCard .btn.lg{margin-top:2px}.drawerEyebrow{color:var(--faint);letter-spacing:.16em;text-transform:uppercase;margin-bottom:5px;font-size:10px;font-weight:850;line-height:1;display:block}.schoolOpsStack{gap:14px;display:grid}.schoolOpsKpis{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;display:grid}.schoolOpsKpi{border:1px solid var(--line);min-height:110px;box-shadow:var(--shadow-xs);background:#fff;border-radius:19px;align-content:start;gap:7px;padding:17px;display:grid}.schoolOpsKpi span{color:var(--muted);letter-spacing:.12em;text-transform:uppercase;font-size:11px;font-weight:850}.schoolOpsKpi strong{color:var(--text-strong);letter-spacing:-.06em;overflow-wrap:anywhere;font-size:clamp(27px,2.5vw,38px);line-height:.96}.schoolOpsKpi small{color:var(--muted);font-size:12.5px}.schoolOpsKpi.warning{border-color:var(--warning-line);background:#fffdf6}.schoolOpsKpi.warning strong{color:#92400e}.schoolOpsKpi.success{border-color:var(--line)}.schoolOpsSection{border:1px solid var(--line);box-shadow:var(--shadow-xs);background:#fff;border-radius:20px;padding:16px}.schoolOpsSection.muted{background:#fbfcff}.schoolOpsSectionHead{justify-content:space-between;align-items:flex-start;gap:12px;margin-bottom:12px;display:flex}.schoolOpsSectionHead h3{color:var(--text-strong);letter-spacing:-.025em;margin:0;font-size:17px}.schoolOpsSectionHead p{color:var(--muted);margin:4px 0 0;font-size:13px}.inlineActions{flex-wrap:wrap;justify-content:flex-end;gap:8px;display:inline-flex}.opsChecklist{grid-template-columns:repeat(3,minmax(0,1fr));gap:9px;display:grid}.opsCheckItem{border:1px solid var(--line);background:#fbfcff;border-radius:15px;grid-template-columns:auto minmax(0,1fr);align-items:center;gap:9px;min-height:58px;padding:12px;display:grid}.opsCheckItem span{color:#fff;border-radius:999px;place-items:center;width:25px;height:25px;font-size:13px;font-weight:900;display:grid}.opsCheckItem.done span{background:var(--success)}.opsCheckItem.todo span{background:#d97706}.opsCheckItem strong{color:var(--text-strong);font-size:14px;line-height:1.2}.miniTable.clean{gap:8px}.miniRow.clean{border:1px solid var(--line);background:#fbfcff;border-radius:15px;grid-template-columns:minmax(0,1fr) auto auto;align-items:center;gap:10px;padding:12px;display:grid}.miniRow.clean span{gap:3px;min-width:0;display:grid}.miniRow.clean b{text-overflow:ellipsis;white-space:nowrap;color:var(--text-strong);overflow:hidden}.miniRow.clean small{text-overflow:ellipsis;white-space:nowrap;color:var(--muted);overflow:hidden}.classCodeGrid{grid-template-columns:repeat(3,minmax(0,1fr));gap:9px;display:grid}.codeCard.clean{border:1px solid var(--line);background:#fbfcff;border-radius:15px;align-content:start;gap:7px;padding:13px;display:grid}.codeCard.clean code{color:#1d4ed8;word-break:break-all;font-weight:800}.codeCard.clean small{color:var(--muted);word-break:break-all}.schoolQuickFacts.prodLike{grid-template-columns:repeat(4,minmax(0,1fr));gap:0;display:grid}.schoolQuickFacts.prodLike .schoolQuickFact{border-right:1px solid var(--line);gap:5px;padding:8px 12px;display:grid}.schoolQuickFacts.prodLike .schoolQuickFact:last-child{border-right:0}.schoolQuickFact span{color:var(--muted);font-size:12px}.schoolQuickFact b{color:var(--text-strong);overflow-wrap:anywhere;font-size:13px}.attachBox.clean{grid-template-columns:minmax(210px,1.2fr) minmax(180px,.9fr) auto;gap:8px;margin-bottom:12px;display:grid}.checkListBox{gap:8px;display:grid}@media (width<=980px){.schoolOpsKpis,.opsChecklist,.classCodeGrid,.schoolQuickFacts.prodLike{grid-template-columns:repeat(2,minmax(0,1fr))}.attachBox.clean{grid-template-columns:1fr}}@media (width<=640px){.loginCard.centeredCard{border-radius:22px;padding:20px}.schoolOpsKpis,.opsChecklist,.classCodeGrid,.schoolQuickFacts.prodLike,.miniRow.clean{grid-template-columns:1fr}.schoolQuickFacts.prodLike .schoolQuickFact{border-right:0;border-bottom:1px solid var(--line)}.schoolQuickFacts.prodLike .schoolQuickFact:last-child{border-bottom:0}}
