:root{font-synthesis:none;text-rendering:optimizelegibility;background:var(--page,#f5f7fb);font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Noto Sans,Ubuntu,Cantarell,Helvetica Neue,sans-serif}body{min-width:320px;min-height:100vh;margin:0}button,input,select{font-family:inherit}html,body,#root{width:100%;max-width:100%;overflow-x:hidden}.app-shell,.platform-shell,.school-admin-shell,.dash-shell{min-width:0;max-width:100%;overflow-x:hidden}.app-shell>main,.platform-main,.school-admin-main,.dash-content{min-width:0;max-width:100%}.app-shell>*,.platform-shell>*,.school-admin-shell>*,.school-admin-page>*,.school-admin-grid>*,.content-grid>*,.overview-actions>*,.platform-title>*,.school-admin-page-title>*,.school-admin-header>*{min-width:0}.school-admin-table-wrap,.school-table-wrap,.table-wrap,.responsive-table,.import-preview{box-sizing:border-box;-webkit-overflow-scrolling:touch;overscroll-behavior-inline:contain;width:100%;min-width:0;max-width:100%;overflow:auto hidden}.school-admin-table-wrap>table,.school-table-wrap>table,.table-wrap>table,.responsive-table>table,.import-preview>table{max-width:none}.school-admin-table,.school-table,.table-wrap table,.responsive-table table,.import-preview table{white-space:nowrap}@media (max-width:768px){.school-admin-header,.platform-header,header{min-width:0;max-width:100%}.school-admin-header .header-actions,.platform-header .platform-user,.header-actions{flex-wrap:wrap;min-width:0;max-width:100%}.school-admin-panel,.schools-module,.admin-module,.panel{min-width:0;max-width:100%}}.communications,.notification-centre,.communication-section{min-width:0;max-width:100%}.communication-section{border-top:1px solid var(--workflow-border,#dbe5e8);margin-top:24px;padding-top:18px}.communication-form,.communication-filters{flex-wrap:wrap;align-items:end;gap:12px;margin:16px 0;display:flex}.communication-form>label,.communication-filters>label{flex-direction:column;flex:190px;gap:5px;min-width:0;display:flex}.communication-form input:not([type=checkbox]),.communication-form select,.communication-form textarea,.communication-filters input:not([type=checkbox]),.communication-filters select{border:1px solid var(--workflow-control-border,#cbd5e1);background:var(--workflow-input,white);width:100%;min-width:0;color:var(--workflow-text,#172b4d);border-radius:7px;padding:9px}.communication-form fieldset{flex-wrap:wrap;gap:12px;min-width:0;max-height:250px;display:flex;overflow:auto}.communication-form>p{overflow-wrap:anywhere;flex-basis:100%}.communications button,.notification-centre button{align-items:center;gap:6px;display:inline-flex}.communications table{border-collapse:collapse;width:100%;min-width:760px}.communications th,.communications td{text-align:left;border-bottom:1px solid var(--workflow-border,#dbe5e8);padding:10px}.communication-upload{flex-direction:column;max-width:210px;margin:10px 0;display:flex}.communication-upload input{max-width:100%}.communications small{display:block}.notification-bell{flex-shrink:0;margin-left:auto;position:relative}.notification-bell-button{background:var(--workflow-surface,white);min-width:44px;min-height:44px;color:var(--workflow-text,#173d46);border:1px solid var(--workflow-border,#cbd5e1);border-radius:10px;justify-content:center;align-items:center;display:inline-flex;position:relative}.notification-badge{background:var(--workflow-success-surface,#0f766e);color:var(--workflow-success-text,white);border-radius:20px;padding:2px 5px;font-size:11px;position:absolute;top:-5px;right:-5px}.notification-dropdown{background:var(--workflow-elevated,white);width:min(370px,100vw - 28px);max-height:min(75vh,620px);color:var(--workflow-text,#172b4d);border:1px solid var(--workflow-border,#cbd5e1);box-shadow:var(--workflow-shadow,0 8px 30px #162e4420);z-index:60;border-radius:12px;padding:14px;position:absolute;top:48px;right:0;overflow:auto}.notification-dropdown h2{font-size:1rem}.notification-cards{grid-template-columns:repeat(auto-fit,minmax(min(280px,100%),1fr));gap:12px;display:grid}.notification-card{text-align:left;overflow-wrap:anywhere;white-space:normal;background:var(--workflow-surface,#fff);min-width:0;max-width:100%;color:var(--workflow-text,#172b4d);border:1px solid var(--workflow-border,#cbd5e1);font:inherit;border-radius:10px;flex-direction:column;gap:6px;padding:14px;align-items:flex-start!important;display:flex!important}.notification-unread{border-left:4px solid var(--workflow-info-text,#0f766e)}.notification-card span,.notification-card small{font-size:.82rem}.notification-body{white-space:pre-wrap;overflow-wrap:anywhere}.communication-pagination{flex-wrap:wrap;align-items:center;gap:12px;margin-top:18px;display:flex}.communications :focus-visible{outline:3px solid var(--workflow-focus,#0f766e);outline-offset:3px}.notification-centre :focus-visible{outline:3px solid var(--workflow-focus,#0f766e);outline-offset:3px}.notification-bell :focus-visible{outline:3px solid var(--workflow-focus,#0f766e);outline-offset:3px}@media (max-width:767px){.communication-form>label,.communication-filters>label{flex-basis:100%}.notification-dropdown{width:auto;position:fixed;top:76px;left:14px;right:14px}.notification-cards{grid-template-columns:minmax(0,1fr)}}@media (forced-colors:active){.notification-card,.notification-bell-button,.notification-dropdown{border:1px solid canvastext}.notification-unread{border-left:4px solid highlight}}@media (prefers-reduced-motion:reduce){.notification-centre *,.notification-bell *{scroll-behavior:auto!important}}@media print{.notification-bell,.communication-filters{display:none!important}}.pending-approvals{border:1px solid var(--border);background:var(--surface);min-width:0;max-width:100%;color:var(--text-primary);border-radius:12px;margin-block-start:20px;margin-block-end:20px;padding:16px}.approval-cards{grid-template-columns:repeat(auto-fit,minmax(min(100%,260px),1fr));gap:12px;margin:16px 0;padding:0;list-style:none;display:grid}.approval-cards li{background:var(--surface-secondary);overflow-wrap:anywhere;border-radius:8px;min-width:0;padding:14px}.approval-cards h3{margin:0}.approval-cards p{color:var(--text-secondary);margin:8px 0}.approval-cards button{min-height:44px}.approval-cards time{font-size:.85rem}.sf-dialog{border:1px solid var(--line);width:min(560px,100% - 28px);max-height:calc(100vh - 40px);max-height:calc(100dvh - 40px);color:var(--ink);background:var(--workflow-elevated,white);box-shadow:var(--workflow-shadow,0 30px 70px #0005);border-radius:16px;padding:26px;overflow:auto}.sf-dialog-wide{width:min(1180px,100% - 28px)}.sf-dialog::backdrop{background:var(--workflow-backdrop,#071225a8)}.dialog-heading{justify-content:space-between;align-items:start;gap:18px;margin-bottom:20px;display:flex}.dialog-heading h2{margin:0}.sf-dialog form,.sf-dialog label{gap:8px;display:grid}.sf-dialog form{gap:16px}.sf-dialog label{font-size:.85rem;font-weight:700}.sf-dialog input,.sf-dialog select,.settings-panel input{border:1px solid var(--workflow-control-border,#c7d1e1);background:var(--workflow-input,white);width:100%;color:var(--ink);border-radius:8px;padding:10px}.sf-dialog fieldset{border:0;gap:16px;margin:0;padding:0;display:grid}.sf-dialog small{color:var(--muted)}.sf-dialog input:disabled{background:var(--workflow-muted,#f1f3f8)}.sr-only{clip:rect(0,0,0,0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}:focus-visible{outline:3px solid var(--workflow-focus,#275de7);outline-offset:3px}button:disabled{cursor:not-allowed;opacity:.6}.review-note{border:1px solid var(--workflow-warning-border,#e0c287);background:var(--workflow-warning-surface,#fff8e8);color:var(--workflow-warning-text,#795014);border-radius:8px;padding:12px}.settings-panel{max-width:740px}.settings-panel form{gap:12px;display:grid}.settings-panel label{gap:8px;display:grid}.school-admin-page .table-action{min-height:40px}.sf-dialog dl div{border-bottom:1px solid var(--line);grid-template-columns:1fr 2fr;gap:12px;padding:8px 0;display:grid}.sf-dialog dd{overflow-wrap:anywhere;margin:0}.sf-dialog progress{width:100%}@media (max-width:600px){.sf-dialog{padding:18px}.sf-dialog .form-row,.sf-dialog dl div{grid-template-columns:1fr}}.sf-dialog form,.sf-dialog label,.sf-dialog fieldset{min-width:0;max-width:100%}.sf-dialog textarea{box-sizing:border-box;min-width:0;max-width:100%}.dialog-heading h2{overflow-wrap:break-word;overflow-wrap:anywhere;min-width:0}.responsive-table-section{width:100%;min-width:0;max-width:100%}.responsive-table{box-sizing:border-box;overscroll-behavior-inline:contain;-webkit-overflow-scrolling:touch;width:100%;min-width:0;max-width:100%;overflow-x:auto}.responsive-table:focus-visible{outline:3px solid var(--workflow-focus,#548eff);outline-offset:2px}.responsive-table table{border-collapse:separate;border-spacing:0;width:100%;min-width:680px}.responsive-table th{white-space:nowrap}.responsive-table td,.responsive-table th{overflow-wrap:anywhere}.responsive-table input,.responsive-table select{box-sizing:border-box;min-width:100px}.responsive-table input[type=number]{width:108px;min-width:108px}.responsive-table.table-sticky-identity table{min-width:1580px}.table-sticky-identity th:first-child,.table-sticky-identity td:first-child{box-sizing:border-box;background:var(--workflow-surface,#fff);z-index:2;width:160px;min-width:160px;max-width:160px;position:sticky;left:0}.table-sticky-identity th:nth-child(2),.table-sticky-identity td:nth-child(2){box-sizing:border-box;background:var(--workflow-surface,#fff);z-index:2;width:140px;min-width:140px;max-width:140px;box-shadow:var(--workflow-shadow,2px 0 3px #0002);position:sticky;left:160px}.table-sticky-identity thead th:first-child,.table-sticky-identity thead th:nth-child(2){z-index:3;background:var(--workflow-table-header,#edf2f8)}.table-swipe-hint{color:var(--muted);margin:0 0 6px;font-size:.75rem;display:none}.dash-content,.dash-main,.school-admin-page,.school-admin-panel,.school-admin-grid,.schools-module,.admin-module,.report-card,.sf-dialog,.sf-dialog>*{box-sizing:border-box;min-width:0;max-width:100%}.school-admin-grid>*,.school-admin-page>*{min-width:0;max-width:100%}.sf-dialog{max-width:calc(100vw - 24px);max-height:calc(100vh - 24px);max-height:calc(100dvh - 24px);overflow-y:auto}.sf-dialog .responsive-table{max-height:55vh;max-height:55dvh;overflow-y:auto}.responsive-table.import-preview{max-height:55vh;max-height:55dvh}.table-sticky-identity thead th{white-space:normal}@media (max-width:1023px){.table-swipe-hint{display:block}}@media (max-width:599px){.table-sticky-identity th:nth-child(2),.table-sticky-identity td:nth-child(2){box-shadow:none;position:static}.table-sticky-identity th:first-child,.table-sticky-identity td:first-child{width:120px;min-width:120px;max-width:120px}}@media print{.table-swipe-hint{display:none}.report-card .responsive-table{max-height:none;overflow:visible}.report-card .responsive-table table{table-layout:fixed;min-width:0}.report-card .responsive-table th{white-space:normal}}.responsive-table .assessment-table{min-width:2000px}.assessment-table td:last-child{min-width:240px}.assessment-table td:last-child button{margin:4px}.assessment-table td:last-child p{font-size:.8rem}.responsive-table .assessment-table thead th{writing-mode:horizontal-tb;word-break:normal;overflow-wrap:normal;white-space:nowrap}.responsive-table .assessment-table{table-layout:auto}.responsive-table .assessment-table .assessment-subheadings th{width:auto;min-width:108px;max-width:none;box-shadow:none;position:static;left:auto}.responsive-table .assessment-table td:nth-child(n+3):nth-child(-n+13){min-width:108px}@media print{.responsive-table .assessment-table{color:#000!important;background:#fff!important}.responsive-table .assessment-table :-webkit-any(th,td){color:#000!important;background:#fff!important}.responsive-table .assessment-table :-moz-any(th,td){color:#000!important;background:#fff!important}.responsive-table .assessment-table :is(th,td){color:#000!important;background:#fff!important}.responsive-table .assessment-table thead th{writing-mode:horizontal-tb;word-break:normal;overflow-wrap:normal;white-space:nowrap}.table-swipe-hint{display:none!important}}.scheduling,.scheduling>*{min-width:0;max-width:100%}.scheduling h1{align-items:center;gap:10px;display:flex}.schedule-toolbar,.schedule-form{flex-wrap:wrap;align-items:end;gap:12px;margin:16px 0;display:flex}.schedule-form>label,.schedule-toolbar>label{flex-direction:column;flex:180px;gap:5px;min-width:0;display:flex}.schedule-form input:not([type=checkbox]),.schedule-form select,.schedule-form textarea,.schedule-toolbar input,.schedule-toolbar select{border:1px solid var(--workflow-control-border,#cbd5e1);background:var(--workflow-input,#fff);width:100%;min-width:0;color:var(--workflow-text,#172b4d);border-radius:7px;padding:9px}.schedule-form p{flex-basis:100%}.schedule-days{flex-wrap:wrap;gap:12px;min-width:0;display:flex}.scheduling fieldset label{align-items:center;gap:5px;margin:4px;display:inline-flex}.scheduling button{justify-content:center;align-items:center;gap:6px;display:inline-flex}.scheduling button:focus-visible{outline:3px solid var(--workflow-focus,#0f766e);outline-offset:3px}.calendar-grid{grid-template-columns:repeat(7,minmax(0,1fr));gap:6px;display:grid}.calendar-day{border:1px solid var(--workflow-border,#dbe5e8);background:var(--workflow-secondary,#f8fafc);border-radius:8px;min-width:0;padding:7px}.calendar-day h2{font-size:.85rem}.schedule-events{gap:8px;display:grid}.schedule-event{text-align:left;white-space:normal;overflow-wrap:anywhere;background:var(--workflow-surface,white);min-width:0;max-width:100%;color:var(--workflow-text,#172b4d);border:1px solid var(--workflow-border,#cbd5e1);border-left:4px solid var(--workflow-info-text,#0f766e);font:inherit;border-radius:7px;flex-direction:column;padding:9px;align-items:flex-start!important;display:flex!important}.schedule-event span{font-size:.78rem}.event-cancelled{border-left-style:dashed;border-left-color:var(--workflow-secondary-text,#64748b)}.event-cancelled strong{text-decoration:line-through}.calendar-today{grid-template-columns:1fr}.schedule-summary-grid{grid-template-columns:repeat(auto-fit,minmax(min(200px,100%),1fr));gap:12px;display:grid}.schedule-summary{background:var(--workflow-surface,#fff);border:1px solid var(--workflow-border,#dbe5e8);overflow-wrap:anywhere;border-radius:12px;min-width:0;padding:14px}.schedule-summary h3{font-size:.9rem}.schedule-current{background:var(--workflow-success-surface,#e0f2f1);color:var(--workflow-success-text,#123c36)}.timetable-grid{border-collapse:collapse;width:100%;min-width:760px}.timetable-grid th,.timetable-grid td{border-bottom:1px solid var(--workflow-border,#dbe5e8);text-align:left;padding:10px}.timetable-grid caption{text-align:left;padding:12px;font-weight:600}.schedule-print-source{display:none}.term-notices{color:var(--workflow-secondary-text,#42556c);font-size:.9rem}.scheduling .panel{margin-bottom:20px}@media (max-width:1023px){.calendar-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.calendar-today{grid-template-columns:1fr}}@media (max-width:540px){.calendar-grid{grid-template-columns:minmax(0,1fr)}.schedule-toolbar>label,.schedule-form>label{flex-basis:100%}}@media (prefers-reduced-motion:reduce){.scheduling *{scroll-behavior:auto!important}}@media (forced-colors:active){.schedule-event,.schedule-summary,.calendar-day{border:1px solid canvastext}.schedule-current{outline:2px solid highlight}}@media print{.schedule-toolbar,.schedule-form,.scheduling button{display:none!important}.timetable-grid{font-size:9pt;min-width:0!important}.responsive-table{overflow:visible!important}.schedule-print-source{display:block}}.dash-layout{--sidebar-width:260px;background:var(--page);min-height:100vh;color:var(--text-primary)}.dash-sidebar{width:var(--sidebar-width);height:100vh;background:var(--sidebar-surface);color:#fff;z-index:30;box-sizing:border-box;flex-direction:column;height:100dvh;padding:24px 16px;display:flex;position:fixed;top:0;bottom:0;left:0;right:auto;overflow-y:auto}.dash-content{margin-left:var(--sidebar-width);min-width:0}.dash-header{background:var(--surface);grid-template-columns:minmax(0,1fr) auto;grid-template-areas:"title bell";align-items:center;gap:16px;padding:28px max(16px,min(3vw,40px));display:grid}.dash-header h1{margin:0}.dash-header .eyebrow{margin:0 0 6px}.dash-actions{flex-wrap:wrap;grid-area:actions;justify-content:flex-end;justify-self:end;align-items:center;gap:10px;min-width:0;max-width:100%;display:flex}.dash-main{min-width:0;padding:0 max(16px,min(3vw,40px)) 40px}.dash-brand{align-items:center;gap:12px;margin-bottom:24px;display:flex}.dash-brand>span{background:#3975ff;border-radius:10px;padding:10px;font-weight:800}.dash-brand div{min-width:0}.dash-brand strong,.dash-brand small,.dash-profile strong,.dash-profile small{overflow-wrap:anywhere;display:block}.dash-brand small,.dash-profile small{color:var(--sidebar-muted);margin-top:5px;font-size:.78rem}.dash-sidebar nav,.dash-drawer-panel nav{gap:5px;display:grid}.dash-sidebar nav a,.dash-drawer-panel nav a{color:var(--sidebar-muted);border-radius:9px;padding:12px;font-weight:600;text-decoration:none;display:block}.dash-sidebar nav a:hover,.dash-drawer-panel nav a:hover{background:var(--sidebar-hover);color:#fff}.dash-profile{margin-top:auto;padding-top:28px}.dash-profile button,.dash-close{background:var(--sidebar-hover);color:#fff;cursor:pointer;border:1px solid #7287a8;border-radius:8px;margin-top:14px;padding:10px 14px}.dash-menu{display:none}.dash-layout :-webkit-any(a,button,input,select,textarea):focus-visible{outline-offset:3px;outline:3px solid #548eff}.dash-layout :-moz-any(a,button,input,select,textarea):focus-visible{outline-offset:3px;outline:3px solid #548eff}.dash-layout :is(a,button,input,select,textarea):focus-visible{outline-offset:3px;outline:3px solid #548eff}.dash-drawer{width:100%;height:100vh;color:#fff;background:0 0;border:0;max-width:none;height:100dvh;max-height:none;margin:0;padding:0;overflow:hidden}.dash-drawer::backdrop{background:#000000a6}.dash-drawer-panel{box-sizing:border-box;background:var(--sidebar-surface);flex-direction:column;width:min(300px,85vw);height:100%;padding:20px 16px;display:flex;overflow-y:auto}.dash-close{align-self:flex-end;margin:0 0 16px}.dash-skip{z-index:100;background:var(--surface);color:var(--text-primary);padding:12px;position:fixed;top:8px;left:8px;transform:translateY(-160%)}.dash-skip:focus{transform:none}.dash-header-with-actions{grid-template-columns:minmax(0,1fr) auto fit-content(50%);grid-template-areas:"title bell actions"}.dash-heading{overflow-wrap:break-word;overflow-wrap:anywhere;grid-area:title;min-width:0;max-width:100%}.dash-header>.notification-bell{grid-area:bell;justify-self:end;min-width:44px;margin-left:0}.dash-menu{grid-area:menu;justify-content:center;min-width:44px;min-height:44px}.dash-actions>*{overflow-wrap:break-word;overflow-wrap:anywhere;white-space:normal;min-width:0;max-width:100%}.dash-actions button,.dash-actions a{min-height:44px}.dash-header{min-width:0;max-width:100%;margin-bottom:24px}@media (max-width:1023px){.dash-sidebar{display:none}.dash-content{margin-left:0}.dash-menu{border:1px solid var(--border);background:var(--surface);color:var(--text-primary);cursor:pointer;border-radius:8px;align-items:center;gap:8px;min-height:44px;padding:10px;display:inline-flex}.dash-header,.dash-header.dash-header-with-actions{grid-template-columns:auto minmax(0,1fr) auto;grid-template-areas:"menu title bell";gap:12px;padding:18px 16px}.dash-header.dash-header-with-actions{grid-template-areas:"menu title bell""actions actions actions"}.dash-header h1{overflow-wrap:anywhere;font-size:1.5rem}.dash-main{padding:0 16px 30px}.dash-actions{width:100%}}@media print{.dash-sidebar,.dash-header,.dash-skip,.dash-drawer{display:none!important}.dash-content{margin:0}.dash-main{padding:0}}.dash-sidebar nav a,.dash-drawer-panel nav a{align-items:center;gap:12px;display:flex}.dash-icon{stroke-width:1.8px;width:20px;height:20px;color:inherit;flex:0 0 20px}.dash-profile button,.dash-close{align-items:center;gap:10px;display:inline-flex}.dash-sidebar nav a[aria-current] .dash-icon,.dash-drawer-panel nav a[aria-current] .dash-icon{stroke-width:2.2px}.dash-sidebar,.dash-drawer-panel{min-width:0;overflow:hidden}.dash-brand,.dash-profile,.dash-close{flex-shrink:0}.dash-brand{margin-bottom:16px}.dash-sidebar nav,.dash-drawer-panel nav{overscroll-behavior-y:contain;scrollbar-gutter:stable;flex:1;min-width:0;min-height:0;padding:4px;display:block;overflow-y:auto}.dash-profile{border-top:1px solid #ffffff26;margin-top:12px;padding-top:14px}.dash-nav-group{border-bottom:1px solid #ffffff18;min-width:0;padding:7px 0}.dash-nav-group:last-child{border-bottom:0}.dash-group-toggle{width:100%;min-height:44px;color:var(--sidebar-muted);text-align:left;font:inherit;cursor:pointer;background:0 0;border:0;border-radius:8px;align-items:center;gap:10px;padding:10px;font-weight:700;display:flex}.dash-group-toggle:hover{background:var(--sidebar-hover);color:#fff}.dash-nav-group[data-active]>.dash-group-toggle,.dash-nav-group[data-active]>.dash-group-label{color:#fff;font-weight:800}.dash-group-toggle span,.dash-navigation a span{overflow-wrap:anywhere;min-width:0}.dash-chevron{flex:0 0 16px;width:16px;height:16px;margin-left:auto;transition:transform .16s}.dash-group-toggle[aria-expanded=true] .dash-chevron{transform:rotate(180deg)}.dash-group-label{color:#bdcce3;overflow-wrap:anywhere;align-items:center;gap:10px;padding:5px 10px;font-size:.76rem;font-weight:700;display:flex}.dash-group-links{padding-left:12px;animation:.16s dash-group-enter}.dash-group-links[hidden]{display:none}.dash-sidebar nav a,.dash-drawer-panel nav a{gap:10px;min-width:0;min-height:44px;margin:3px 0;padding:10px;font-size:.87rem}@keyframes dash-group-enter{0%{opacity:.5;transform:translateY(-3px)}to{opacity:1;transform:translateY(0)}}@media (prefers-reduced-motion:reduce){.dash-chevron{transition:none}.dash-group-links{animation:none}}@media (forced-colors:active){.dash-nav-group[data-active]>.dash-group-toggle{border:1px solid highlight}.dash-navigation a[aria-current]{outline:2px solid highlight}.dash-icon{forced-color-adjust:auto}}.dash-collapse{color:#fff;min-height:44px;font:inherit;cursor:pointer;background:0 0;border:1px solid #7287a8;border-radius:8px;flex-shrink:0;justify-content:center;align-items:center;gap:8px;margin-top:12px;display:flex}.dash-header,.dash-header.dash-header-with-actions{grid-template-columns:minmax(0,1fr) fit-content(50%);grid-template-areas:"brand controls""context controls";gap:6px 16px}.dash-header-brand{grid-area:brand;align-items:center;gap:10px;min-width:0;display:flex}.dash-header-brand>.eduhub-icon{object-fit:contain;width:44px;height:44px}.dash-school-context{min-width:0;max-width:100%;color:var(--text-secondary);text-overflow:ellipsis;white-space:nowrap;grid-area:context;margin:0;font-size:.8125rem;line-height:1.5;overflow:hidden}.dash-header-controls{grid-area:controls;justify-content:flex-end;align-items:center;gap:10px;min-width:0;max-width:100%;display:flex}.dash-header-controls>.notification-bell{flex:0 0 44px;margin-left:0}.dash-header-controls>.dash-actions{flex:0 auto}.dash-page-title{margin:0 0 24px}@media (max-width:1023px){.dash-header,.dash-header.dash-header-with-actions{grid-template-columns:44px minmax(0,1fr) fit-content(40%);grid-template-areas:"menu brand controls""context context context";gap:10px 8px}.dash-header-brand{gap:6px}.dash-header-brand>.eduhub-icon{width:28px;height:28px}.dash-header .eduhub-wordmark{font-size:1rem}.dash-school-context{-webkit-line-clamp:2;line-clamp:2;white-space:normal;overflow-wrap:anywhere;-webkit-box-orient:vertical;max-height:3em;display:-webkit-box}.dash-header-controls{flex-wrap:wrap;gap:6px}.dash-menu{gap:0;padding:10px;font-size:0}.dash-page-title{font-size:1.5rem}}@media (min-width:1024px){.dash-layout-collapsed{--sidebar-width:88px}.dash-layout-collapsed .dash-brand{justify-content:center}.dash-layout-collapsed .dash-brand-copy{display:none}.dash-layout-collapsed .dash-sidebar{padding-inline-start:10px;padding-inline-end:10px}.dash-layout-collapsed .dash-navigation{scrollbar-gutter:auto;padding-inline-start:0;padding-inline-end:0}.dash-layout-collapsed .dash-group-links{padding-left:0}.dash-layout-collapsed .dash-group-toggle,.dash-layout-collapsed .dash-navigation a{justify-content:center;gap:0}.dash-layout-collapsed .dash-chevron{display:none}.dash-layout-collapsed .dash-navigation span,.dash-layout-collapsed .dash-profile>strong,.dash-layout-collapsed .dash-profile>small,.dash-layout-collapsed .dash-collapse span{clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.dash-layout-collapsed .dash-profile button{gap:3px;padding:10px 4px;font-size:.7rem}}.dash-nav-tooltip{z-index:100;border:1px solid var(--border);background:var(--surface-elevated);max-width:min(280px,100vw - 112px);color:var(--text-primary);overflow-wrap:anywhere;border-radius:8px;padding:10px 12px;font-size:.8125rem;line-height:1.4;position:fixed;box-shadow:0 4px 16px #0003}.dash-sidebar nav,.dash-drawer-panel nav{scrollbar-width:thin;scrollbar-color:transparent var(--scrollbar-track)}.dash-sidebar nav[data-scrolling],.dash-drawer-panel nav[data-scrolling],.dash-sidebar nav:hover,.dash-sidebar nav:focus-within,.dash-drawer-panel nav:hover,.dash-drawer-panel nav:focus-within{scrollbar-color:var(--scrollbar-thumb) var(--scrollbar-track)}.dash-navigation::-webkit-scrollbar{width:5px;height:5px}.dash-navigation::-webkit-scrollbar-track{background:var(--scrollbar-track)}.dash-navigation::-webkit-scrollbar-thumb{background:0 0;border-radius:8px}.dash-navigation[data-scrolling]::-webkit-scrollbar-thumb{background:var(--scrollbar-thumb)}.dash-navigation:hover::-webkit-scrollbar-thumb{background:var(--scrollbar-thumb)}.dash-navigation:focus-within::-webkit-scrollbar-thumb{background:var(--scrollbar-thumb)}@media (max-height:500px){.dash-sidebar,.dash-drawer-panel{padding-block-start:8px;padding-block-end:8px}.dash-brand{margin-bottom:6px}.dash-profile{margin-top:6px;padding-top:6px}.dash-profile button,.dash-collapse{margin-top:6px}}@media (max-width:1023px){.dash-nav-tooltip{display:none}}@media print{.dash-nav-tooltip{display:none!important}}.report-card-batch{gap:24px;min-width:0;max-width:100%;display:grid}.report-card-sheet{background:var(--workflow-surface,#fff);border:1px solid var(--workflow-border,#000);overflow-wrap:anywhere;box-sizing:border-box;min-width:0;max-width:min(210mm,100%);box-shadow:var(--workflow-shadow,0 1px 4px #00000026);border-radius:2px;margin:0 auto;padding:12mm 10mm;font-size:.82rem;line-height:1.25}.report-card-school{flex-wrap:wrap;align-items:flex-start;gap:12px;padding-bottom:6px;display:flex}.report-card-logo-slot{flex:0 0 52px;width:52px;height:52px}.report-card-logo{object-fit:contain;width:52px;height:52px}.report-card-logo-placeholder{border:1px dashed var(--workflow-border,#999);width:52px;height:52px;color:var(--muted);text-align:center;border-radius:6px;justify-content:center;align-items:center;font-size:.65rem;display:flex}.report-card-school-identity{text-align:left;flex:1;min-width:0}.report-card-school-identity h2{letter-spacing:.02em;margin:0 0 3px;font-size:1.15rem}.report-card-school-identity p{color:var(--muted);margin:0;font-size:.74rem;line-height:1.3}.report-card-contacts{flex-wrap:wrap;align-items:baseline;gap:2px 0;max-width:100%;font-size:.68rem;line-height:1.25;display:flex}.report-card-contacts span{overflow-wrap:anywhere;min-width:0;max-width:100%}.report-card-contacts span+span:before{content:" | ";white-space:pre;color:var(--workflow-secondary-text,#666)}.report-card-signature img{object-fit:contain;width:auto;max-width:min(120px,100%);height:auto;max-height:44px;margin:0;display:block;position:absolute;bottom:0;left:50%;transform:translate(-50%)}.report-card-stamp img{object-fit:contain;width:auto;max-width:min(120px,100%);height:auto;max-height:90px;margin:auto;display:block}.report-card-divider{border-top:2px solid var(--workflow-border,#000);margin:8px 0}.report-card-title{text-align:center;letter-spacing:.04em;margin:0 0 10px;font-size:1rem}.report-card-learner-info{margin-bottom:10px}.report-card-learner-info dl{border:1px solid var(--workflow-border,#000);border-radius:4px;grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:6px 10px;margin:0;padding:8px;display:grid}.report-card-learner-info dt{color:var(--muted);text-transform:uppercase;letter-spacing:.03em;font-size:.62rem}.report-card-learner-info dd{margin:1px 0 0;font-size:.82rem;font-weight:600}table.report-card-subjects.school-admin-table th{padding:5px 6px;font-size:.72rem}table.report-card-subjects.school-admin-table td{padding:4px 6px;font-size:.78rem;line-height:1.2}.report-card-subjects th strong{font-size:.72rem}.report-card-reasons{margin:6px 0 0;padding-left:18px;font-size:.78rem}.report-card-attendance-row{border:1px solid var(--workflow-border,#000);border-radius:4px;flex-wrap:wrap;gap:10px;margin:10px 0;padding:6px 8px;display:flex}.report-card-attendance-row dl>div{flex:1;align-items:baseline;gap:4px;min-width:120px;display:flex}.report-card-attendance-row dt{color:var(--muted);text-transform:uppercase;letter-spacing:.03em;margin:0;font-size:.68rem}.report-card-attendance-row dd{margin:0;font-size:.82rem;font-weight:600}.report-card-lower{border-top:1px solid var(--workflow-border,#000);margin-top:8px;padding-top:8px}.report-card-lower dl{grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:6px 10px;margin:0 0 8px;display:grid}.report-card-lower dt{color:var(--muted);text-transform:uppercase;letter-spacing:.03em;font-size:.62rem}.report-card-lower dd{margin:1px 0 0;font-size:.82rem;font-weight:600}.report-card-remark-line,.report-card-signature{font-size:.8rem}.report-card-footer-label{font-family:inherit;font-size:inherit;font-style:normal;font-weight:700;line-height:inherit;letter-spacing:inherit;color:inherit}.report-card-remark-line{white-space:pre-wrap;margin:4px 0;display:block}.report-card-signoff{break-inside:avoid;page-break-inside:avoid;text-align:left;grid-template-columns:max-content minmax(0,190px);justify-content:start;align-items:end;gap:10px 12px;width:100%;max-width:100%;margin-top:14px;display:grid}.report-card-signature{text-align:left;display:contents}.report-signature-label{overflow-wrap:anywhere;text-align:left;grid-column:1;max-width:100%;padding-bottom:2px}.report-signature-line{box-sizing:border-box;border-bottom:1px dotted;grid-column:2;width:190px;max-width:100%;height:68px;display:block;position:relative}@media print{.report-card-sheet .report-card-signoff{text-align:left;grid-template-columns:max-content minmax(0,48mm);justify-content:start}.report-card-sheet .report-signature-line{color:#000;grid-column:2;width:48mm;height:18mm}.report-card-sheet .report-card-stamp{grid-column:2;width:48mm}}.report-card-stamp{grid-column:2;justify-content:center;align-items:center;width:190px;min-width:0;max-width:100%;display:flex}@media (max-width:480px){.report-card-signoff{grid-template-columns:minmax(0,1fr)}.report-signature-line,.report-card-stamp{grid-column:1}}.report-card-status{margin-top:6px;font-size:.8rem;font-weight:700}.report-card-sheet--compact{font-size:.78rem}.report-card-sheet--compact table.report-card-subjects.school-admin-table th{padding:4px 5px;font-size:.68rem}.report-card-sheet--compact table.report-card-subjects.school-admin-table td{padding:3px 5px;font-size:.72rem}.report-card-sheet--dense{font-size:.74rem}.report-card-sheet--dense table.report-card-subjects.school-admin-table th{padding:3px 4px;font-size:.64rem}.report-card-sheet--dense table.report-card-subjects.school-admin-table td{padding:2px 4px;font-size:.68rem;line-height:1.1}@media (max-width:768px){.report-card-sheet{padding:14px}.report-card-attendance-row{flex-direction:column}.report-card-attendance-row>div{min-width:0}}@page{size:A4 portrait;margin:10mm}@media print{body *{visibility:hidden}.report-card-print,.report-card-print *{visibility:visible}.report-card-print{width:100%;margin:0;position:absolute;top:0;left:0}.report-card-batch{gap:0}.report-card-sheet{box-shadow:none;color:#000;break-after:page;page-break-after:always;background:#fff;border:0;border-radius:0;max-width:none;padding:8mm}.report-card-sheet:last-child{break-after:auto;page-break-after:auto}.report-card-sheet *{color:#000!important}.report-card-school,.report-card-learner-info,.report-card-attendance-row,.report-card-lower{break-inside:avoid;page-break-inside:avoid}.report-card-attendance-row{flex-wrap:nowrap!important}.report-card-subjects tr{break-inside:avoid;page-break-inside:avoid}.report-card-subjects thead{display:table-header-group}.report-card-subjects .school-admin-table-wrap,.report-card-sheet .responsive-table{border:0;max-height:none;overflow:visible}.report-card-subjects{table-layout:fixed;width:100%;min-width:0}.table-swipe-hint{display:none}.aggregate-included{background:#e0e0e0!important}.no-print{display:none!important}}.report-card-attendance-row dl{grid-template-columns:repeat(auto-fit,minmax(min(100%,140px),1fr));gap:10px;width:100%;min-width:0;margin:0;display:grid}.report-card-attendance-row dl>div{overflow-wrap:anywhere;min-width:0}.report-card-print-document{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;color:#000;--muted:#333;background:#fff;margin:0;padding:0;font:10pt Arial,sans-serif}.report-card-print-document *{box-sizing:border-box}.report-card-print-document .report-card-print{width:190mm;margin:0;padding:0;position:static}.report-card-print-document .report-print-page{break-inside:avoid;break-after:page;page-break-after:always;width:190mm;height:276mm;margin:0;padding:0;position:relative}.report-card-print-document .report-print-page:last-child{break-after:auto;page-break-after:auto}.report-card-print-document .report-card-sheet{width:190mm;max-width:none;box-shadow:none;break-after:auto;page-break-after:auto;border:0;margin:0;padding:5mm;font:10pt/1.15 Arial,sans-serif;position:absolute;top:0;left:0}.report-card-print-document .report-card-school{flex-flow:row;gap:4mm}.report-card-print-document .report-card-logo-slot{flex:0 0 16mm;width:16mm;height:16mm}.report-card-print-document .report-card-logo{width:16mm;height:16mm}.report-card-print-document .report-card-school-identity h2{font-size:15pt}.report-card-print-document .report-card-school-identity p{font-size:9pt;line-height:1.15}.report-card-print-document .report-card-contacts{gap:1mm 0;font-size:7pt;line-height:1.15}.report-card-print-document .report-signature-line{color:#000;grid-column:2;width:48mm;height:18mm}.report-card-print-document .report-card-title{margin:0 0 3mm;font-size:12pt}.report-card-print-document .report-card-learner-info dl{grid-template-columns:repeat(3,minmax(0,1fr));gap:2mm 3mm;padding:2mm}.report-card-print-document .report-card-learner-info dd{font-size:10pt}.report-card-print-document .responsive-table-section,.report-card-print-document .responsive-table{border:0;width:100%;min-width:0;max-width:100%;max-height:none;display:block;overflow:visible}.report-card-print-document table.report-card-subjects{border-collapse:collapse;table-layout:fixed;width:100%;min-width:0;margin:0}.report-card-print-document table.report-card-subjects :-webkit-any(th,td){text-align:center;white-space:normal;overflow-wrap:anywhere;border:1px solid #333;padding:1.2mm;font:9pt/1.15 Arial,sans-serif}.report-card-print-document table.report-card-subjects :-moz-any(th,td){text-align:center;white-space:normal;overflow-wrap:anywhere;border:1px solid #333;padding:1.2mm;font:9pt/1.15 Arial,sans-serif}.report-card-print-document table.report-card-subjects :is(th,td){text-align:center;white-space:normal;overflow-wrap:anywhere;border:1px solid #333;padding:1.2mm;font:9pt/1.15 Arial,sans-serif}.report-card-print-document table.report-card-subjects th:first-child{text-align:left;width:28%}.report-card-print-document table.report-card-subjects th:last-child{width:18%}.report-card-print-document table.report-card-subjects caption{text-align:left;margin-bottom:1mm;font-size:8pt}.report-card-print-document .report-card-attendance-row{flex-direction:row;margin:3mm 0;padding:2mm;display:block}.report-card-print-document .report-card-attendance-row dl{grid-template-columns:repeat(auto-fit,minmax(min(100%,140px),1fr));gap:3mm;display:grid}.report-card-print-document .report-card-attendance-row dl>div{align-items:baseline;gap:2mm;min-width:0;display:flex}.report-card-print-document .report-card-lower{margin-top:2mm;padding-top:2mm}.report-card-print-document .report-card-lower dl{grid-template-columns:repeat(3,minmax(0,1fr));gap:3mm}.report-card-print-document .report-card-remark-line,.report-card-print-document .report-card-signature{font-size:10pt}.report-card-print-document .report-card-remark-line{white-space:pre-wrap;display:block;overflow:visible}.report-card-print-document .report-card-signoff{break-inside:avoid;page-break-inside:avoid;text-align:left;grid-template-columns:max-content minmax(0,48mm);justify-content:start;gap:2mm 3mm;width:100%;margin-top:3mm;display:grid}.report-card-print-document .report-card-stamp{grid-column:2;width:48mm}.report-card-print-document .report-card-stamp img{width:auto;max-width:32mm;height:auto;max-height:24mm}.report-card-print-document .report-card-reasons,.report-card-print-document .report-card-status,.report-card-print-document .table-swipe-hint{display:none}@media print{.report-card-sheet .report-card-attendance-row{flex-direction:row!important}.report-card-sheet .report-card-attendance-row dl{grid-template-columns:repeat(auto-fit,minmax(min(100%,140px),1fr))!important;display:grid!important}.report-card-print-document .report-card-print{position:static}.report-card-print-document .report-card-sheet{break-after:auto;page-break-after:auto}}.report-card-sheet .no-print{overflow-wrap:anywhere;max-width:100%}@media print{.report-card-sheet .no-print{display:none!important}}.report-card-print-document .no-print{display:none!important}.school-admin-shell{background:var(--canvas);min-height:100vh;color:var(--ink);grid-template-columns:250px 1fr;display:grid}.school-admin-sidebar{background:var(--navy);color:#fff;flex-direction:column;height:100vh;padding:24px 16px;display:flex;position:sticky;top:0}.school-admin-sidebar nav{gap:5px;display:grid}.school-admin-sidebar nav button{color:#b9c5da;text-align:left;background:0 0;border:0;border-radius:9px;align-items:center;gap:12px;padding:12px;font-weight:600;display:flex}.school-admin-sidebar nav button:hover,.school-admin-sidebar nav button.active{color:#fff;background:#20375f}.school-admin-sidebar .sidebar-footer{margin-top:auto}.school-admin-main{min-width:0;padding:34px max(20px,min(4vw,54px)) 54px}.school-admin-header{justify-content:space-between;align-items:center;margin-bottom:28px;display:flex}.school-admin-page{gap:20px;display:grid}.school-admin-page-title{justify-content:space-between;align-items:flex-end;gap:20px;display:flex}.school-admin-page-title h2{margin:0 0 7px}.school-admin-page-title p:last-child{color:var(--muted);margin:0}.school-admin-welcome{color:#fff;background:linear-gradient(115deg,#17315c,#234e8d);border-radius:16px;justify-content:space-between;align-items:center;padding:26px 30px;display:flex}.school-admin-welcome h2{margin-bottom:7px;font-size:1.55rem}.school-admin-welcome p:last-child{color:#cfdaeb;margin:0}.school-admin-welcome .eyebrow{color:#8fb5ff}.school-admin-date{color:#cfdaeb;font-size:.8rem}.school-admin-stats{grid-template-columns:repeat(4,1fr);gap:16px;display:grid}.school-admin-stats article{background:var(--workflow-surface,white);border:1px solid var(--line);border-radius:14px;padding:19px}.school-admin-stats small{color:var(--muted)}.school-admin-stats strong{margin:5px 0;font-size:1.6rem;display:block}.school-admin-stats p{color:var(--muted);margin:0;font-size:.75rem}.school-admin-grid{grid-template-columns:1.3fr 1fr;gap:20px;display:grid}.school-admin-panel{background:var(--workflow-surface,white);border:1px solid var(--line);border-radius:14px;padding:22px}.school-admin-panel-heading{justify-content:space-between;align-items:flex-start;gap:15px;margin-bottom:20px;display:flex}.school-admin-panel-heading h3{margin:0 0 5px}.school-admin-panel-heading p{color:var(--muted);margin:0;font-size:.8rem}.school-admin-panel-heading button,.school-admin-empty button,.school-admin-empty button{background:var(--workflow-info-surface,#eef3ff);color:var(--blue);border:0;border-radius:8px;padding:8px 11px;font-weight:800}.class-bars{gap:14px;display:grid}.class-bar-row{grid-template-columns:100px 1fr 30px;align-items:center;gap:10px;font-size:.8rem;display:grid}.class-bar-row div{background:var(--workflow-muted,#eef2f7);border-radius:8px;height:8px;overflow:hidden}.class-bar-row i{background:var(--workflow-chart-1,#3975ff);border-radius:8px;height:100%;display:block}.class-bar-row strong{text-align:right}.recent-students{gap:14px;margin:0;padding:0;list-style:none;display:grid}.recent-students li{align-items:center;gap:10px;display:flex}.recent-students li div{gap:3px;display:grid}.recent-students small{color:var(--muted);text-transform:capitalize;font-size:.73rem}.school-admin-empty{text-align:center;color:var(--muted);padding:48px 20px}.school-admin-empty strong{color:var(--ink);margin-bottom:7px;display:block}.school-admin-empty p{margin:0 0 16px}.school-admin-toolbar,.student-toolbar{grid-template-columns:minmax(240px,1fr) 180px;gap:12px;margin-bottom:20px;display:grid}.student-toolbar{grid-template-columns:minmax(220px,1fr) repeat(3,150px) auto}.school-admin-toolbar label,.student-toolbar label{color:var(--muted);gap:7px;font-size:.76rem;font-weight:800;display:grid}.school-admin-toolbar input,.school-admin-toolbar select,.student-toolbar input,.student-toolbar select{border:1px solid var(--line);background:var(--workflow-input,white);width:100%;color:var(--ink);font:inherit;border-radius:8px;padding:10px 11px}.school-admin-table-wrap{background:var(--workflow-surface,white);border:1px solid var(--line);border-radius:14px;overflow:auto}.school-admin-table{border-collapse:collapse;width:100%;min-width:760px}.school-admin-table th{white-space:nowrap;text-align:left;color:var(--muted);text-transform:uppercase;letter-spacing:.05em;border-bottom:1px solid var(--line);padding:12px;font-size:.72rem}.school-admin-table td{border-bottom:1px solid var(--workflow-border,#f0f2f6);vertical-align:middle;padding:14px 12px;font-size:.84rem}.table-subtext{color:var(--muted);margin-top:3px;font-size:.7rem;display:block}.inline-status{border:1px solid var(--line);background:var(--workflow-success-surface,#e5f7ef);color:var(--workflow-success-text,#147551);border-radius:7px;padding:6px 8px;font-weight:700}.inline-status.inactive{background:var(--workflow-warning-surface,#fff1dd);color:var(--workflow-warning-text,#9a5a13)}.inline-status.graduated,.inline-status.transferred{background:var(--workflow-muted,#eef2f7);color:var(--workflow-secondary-text,#6c7891)}.pagination{color:var(--muted);justify-content:space-between;align-items:center;gap:16px;font-size:.78rem;display:flex}.school-modal form{gap:15px;display:grid}.school-modal form label{gap:7px;font-size:.82rem;font-weight:700;display:grid}.school-modal form input,.school-modal form select{border:1px solid var(--workflow-control-border,#dce2ec);background:var(--workflow-input,white);color:var(--ink);border-radius:8px;padding:11px}.school-modal .form-row{grid-template-columns:1fr 1fr;gap:12px;display:grid}@media (max-width:1000px){.school-admin-stats{grid-template-columns:1fr 1fr}.school-admin-grid{grid-template-columns:1fr}.student-toolbar{grid-template-columns:1fr 1fr}.student-toolbar label:first-child{grid-column:1/-1}}@media (max-width:700px){.school-admin-shell{display:block}.school-admin-sidebar{height:auto;padding:14px;position:static}.school-admin-sidebar .brand{padding-bottom:12px}.school-admin-sidebar nav{display:flex;overflow:auto}.school-admin-sidebar nav button{white-space:nowrap}.school-admin-sidebar .sidebar-footer{display:none}.school-admin-main{padding:22px 14px}.school-admin-header{align-items:flex-start}.school-admin-header .tenant-lock{display:none}.school-admin-page-title{flex-direction:column;align-items:flex-start}.school-admin-welcome{align-items:flex-start}.school-admin-date{display:none}.school-admin-stats,.school-admin-toolbar,.student-toolbar{grid-template-columns:1fr}.student-toolbar label:first-child{grid-column:auto}.school-modal .form-row{grid-template-columns:1fr}.pagination{flex-direction:column;align-items:flex-start}}.attendance-label{text-transform:capitalize}.school-admin-table caption{text-align:left;padding:14px;font-weight:700}.aggregate-included{background:var(--workflow-success-surface,#e7f4ed)}.aggregate-included th strong{font-size:.75rem;display:block}.report-card dt{margin-top:12px;font-weight:700}.report-card dd{white-space:pre-wrap;margin-left:0}.report-card{overflow-wrap:anywhere}@media print{body *{visibility:hidden}.report-card,.report-card *{visibility:visible}.report-card{color:#000;background:#fff;border:0;width:100%;padding:10mm;position:absolute;top:0;left:0}.report-card .school-admin-table-wrap{border:0;overflow:visible}.report-card .school-admin-table{table-layout:fixed;width:100%;min-width:0}.report-card .school-admin-table th,.report-card .school-admin-table td{white-space:normal;padding:5px;font-size:9pt}.report-card tr{break-inside:avoid}.report-card thead{display:table-header-group}.no-print{display:none!important}}.parent-portal,.parent-child-records,.parent-profile-form,.parent-print-preview{min-width:0;max-width:100%}.parent-portal{color:var(--text-primary,#173b46);gap:1.25rem;display:grid}.parent-portal>header,.parent-child-records>header,.parent-filters{flex-wrap:wrap;align-items:center;gap:1rem;display:flex}.parent-portal h1,.parent-portal h2,.parent-portal h3{overflow-wrap:anywhere}.parent-child-grid{grid-template-columns:repeat(auto-fit,minmax(min(100%,260px),1fr));gap:1rem;margin-block-start:1rem;margin-block-end:1rem;display:grid}.parent-child-card,.parent-notices li{border:1px solid var(--workflow-border,#dce5e7);background:var(--workflow-surface,#fff);box-shadow:var(--workflow-shadow,0 3px 10px #193f4910);overflow-wrap:anywhere;border-radius:14px;min-width:0;padding:1.2rem}.parent-child-card dl{gap:.3rem;display:grid}.parent-child-card dd{margin:0 0 .65rem;font-weight:600}.parent-portal label{gap:.4rem;min-width:0;margin-block-start:.65rem;margin-block-end:.65rem;display:grid}.parent-portal input:not([type=checkbox]),.parent-portal select,.parent-portal textarea{box-sizing:border-box;border:1px solid var(--workflow-control-border,#b7c8cd);width:100%;min-width:0;max-width:100%;font:inherit;background:var(--workflow-input,#fff);color:var(--workflow-text,#173b46);border-radius:7px;padding:.65rem}.parent-portal button{border:1px solid var(--workflow-control-border,#b7c8cd);background:var(--workflow-secondary,#eff8f8);min-height:40px;color:var(--workflow-link,#145866);font:inherit;cursor:pointer;border-radius:7px;margin:.3rem;padding:.5rem .8rem}.parent-portal button:disabled{opacity:.65;cursor:wait}.parent-portal :focus-visible{outline:3px solid var(--workflow-focus,#217f94);outline-offset:3px}.parent-portal .parent-asset{object-fit:contain;border-radius:8px;width:76px;height:76px}.parent-notices{gap:.75rem;padding:0;list-style:none;display:grid}.parent-profile-form{gap:.65rem;max-width:680px;display:grid}.parent-profile-form fieldset{min-width:0}.parent-summary{flex-wrap:wrap;gap:1.5rem;display:flex}.parent-summary dd{margin:.4rem 0;font-size:1.5rem;font-weight:700}.parent-summary dt{text-transform:capitalize}.parent-selector{max-width:640px}.parent-filters label{flex:180px}.parent-print-preview{overscroll-behavior-inline:contain;-webkit-overflow-scrolling:touch;margin-block-start:1rem;margin-block-end:1rem;overflow-x:auto}.parent-portal table{border-collapse:collapse;width:100%;min-width:650px}.parent-portal th,.parent-portal td{text-align:left;border-bottom:1px solid var(--workflow-border,#dce5e7);vertical-align:top;padding:.8rem}@media (max-width:767px){.parent-child-grid{grid-template-columns:minmax(0,1fr)}.parent-portal header{align-items:flex-start}.parent-portal button{max-width:100%}}@media (forced-colors:active){.parent-child-card,.parent-notices li{border:1px solid canvastext}.parent-portal button{border:1px solid buttontext}}@media print{.parent-portal button,.parent-selector,.parent-filters{display:none}.parent-print-preview{overflow:visible}}.dashboard-metrics{min-width:0;max-width:100%;color:var(--ink,#172b4d);margin:20px 0}.metric-cards{grid-template-columns:repeat(auto-fit,minmax(min(100%,180px),1fr));gap:14px;min-width:0;display:grid}.metric-card{background:var(--workflow-surface,#fff);border:1px solid var(--workflow-border,#dbe4eb);overflow-wrap:anywhere;border-radius:12px;min-width:0;padding:18px}.metric-card>svg{color:var(--workflow-link,#245e91)}.metric-card h3{margin:10px 0;font-size:.9rem;font-weight:600}.metric-card>strong{font-variant-numeric:tabular-nums;color:var(--workflow-text,#194d70);font-size:2rem;display:block}.metric-card p{color:var(--workflow-secondary-text,#526477);margin-bottom:0;font-size:.8rem;line-height:1.5}.metric-charts{grid-template-columns:repeat(auto-fit,minmax(min(100%,260px),1fr));gap:16px;min-width:0;display:grid}.metric-chart{border:1px solid var(--workflow-border,#dbe4eb);background:var(--workflow-surface,#fff);box-sizing:border-box;border-radius:12px;min-width:0;max-width:100%;margin:16px 0;padding:18px}.metric-chart figcaption{margin-bottom:16px;font-weight:700}.metric-chart-values{margin:0;padding:0;list-style:none}.metric-chart-values li{min-width:0;margin:12px 0}.metric-chart-values li>div:first-child{overflow-wrap:anywhere;justify-content:space-between;gap:12px;display:flex}.metric-chart-values strong{font-variant-numeric:tabular-nums;flex-shrink:0}.metric-track{background:var(--workflow-muted,#edf2f6);border-radius:4px;height:12px;margin-top:6px}.metric-track span{border-radius:4px;height:100%;display:block}.metric-donut{width:160px;max-width:100%;margin:auto;display:block}.metric-skeleton{background:var(--workflow-skeleton,linear-gradient(100deg,#e9eef3,#f5f7fa,#e9eef3));border-radius:12px;height:150px}@media (max-width:767px){.metric-cards{grid-template-columns:repeat(2,minmax(0,1fr))}.metric-card{padding:12px}.metric-card>strong{font-size:1.7rem}.metric-charts{grid-template-columns:minmax(0,1fr)}}@media (prefers-reduced-motion:reduce){.dashboard-metrics *{transition:none!important;animation:none!important}}.student-operations{color:var(--workflow-text,#172b4d);container-type:inline-size}.student-operations-heading{margin-bottom:20px}.student-operations-heading h2{color:var(--workflow-text,#172b4d);margin:0 0 6px;font-size:1.35rem}.student-operations-heading p{color:var(--workflow-secondary-text,#526477);margin:0;font-size:.9rem}.student-operations .student-operations-grid{grid-template-columns:minmax(0,1fr);align-items:stretch;gap:16px}.student-operations .metric-card{box-sizing:border-box;box-shadow:var(--workflow-shadow,0 2px 8px #17334d06);border-radius:12px;flex-direction:column;align-items:flex-start;padding:20px;display:flex}.student-operation-icon{background:var(--workflow-info-surface,#eaf1fa);width:42px;height:42px;color:var(--workflow-info-text,#245e91);border-radius:11px;flex-shrink:0;justify-content:center;align-items:center;display:inline-flex}.student-operations .metric-card:nth-child(2) .student-operation-icon,.student-operations .metric-card:nth-child(5) .student-operation-icon{background:var(--workflow-success-surface,#e8f4ef);color:var(--workflow-success-text,#286b59)}.student-operations .metric-card:nth-child(3) .student-operation-icon{background:var(--workflow-accent-surface,#f0edf8);color:var(--workflow-accent-text,#655185)}.student-operations .metric-card:nth-child(4) .student-operation-icon{background:var(--workflow-warning-surface,#faf2e4);color:var(--workflow-warning-text,#845e22)}.student-operations .metric-card h3{color:var(--workflow-text,#34485e);margin:16px 0 10px;line-height:1.45}.student-operations .metric-card>strong{color:var(--workflow-text,#194d70);margin-top:auto;font-size:2.25rem;line-height:1.15}.student-operations .metric-card p{color:var(--workflow-secondary-text,#526477);margin:10px 0 0;font-size:.8rem;line-height:1.5}.student-operations .metric-chart-values li>div:first-child>span{overflow-wrap:anywhere;min-width:0}.student-operations .metric-track{border:1px solid var(--workflow-border,#dbe4eb);box-sizing:border-box}@container (width>=560px){.student-operations .student-operations-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (min-width:1024px){@container (width>=600px){.student-operations .student-operations-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}}@container (width>=1100px){.student-operations .student-operations-grid{grid-template-columns:repeat(5,minmax(0,1fr))}}@media (forced-colors:active){.student-operations,.student-operations-heading h2,.student-operations-heading p,.student-operations .metric-card h3,.student-operations .metric-card>strong,.student-operations .metric-card p{color:canvastext}.student-operations .metric-card,.student-operations .metric-chart,.student-operations .student-operation-icon{color:canvastext;box-shadow:none;background:canvas;border:1px solid canvastext}.student-operations .metric-track{border-color:canvastext}.student-operations .metric-track span{background:highlight!important}}@media (max-width:600px){.overview-column{max-width:24px}}@media (forced-colors:active){.overview-column{background:highlight;border:1px solid canvastext}}.overview-columns li:nth-child(2):last-child .overview-column{background:var(--brand-accent)}.metric-chart-summary{color:var(--text-secondary);overflow-wrap:anywhere;font-size:.8rem;line-height:1.5}@media (forced-colors:active){.overview-columns li:nth-child(2):last-child .overview-column{background:highlight}}.metric-charts{grid-template-columns:repeat(auto-fill,minmax(min(100%,280px),1fr));align-items:stretch;gap:16px;width:100%;min-width:0;max-width:1120px;margin-block-start:16px;margin-block-end:16px;display:grid}.metric-charts>.metric-chart{flex-direction:column;grid-column:auto;gap:12px;min-width:0;max-width:100%;min-height:320px;margin:0;padding:16px;display:flex}.metric-charts>.metric-chart>figcaption{margin:0;line-height:1.4}.metric-charts>.metric-chart>p{margin:0;line-height:1.5}.metric-charts .overview-column-slot,.metric-charts .overview-column-axis{height:160px}.metric-charts .overview-column-scroll{flex:none}.metric-charts .metric-chart-summary{margin-top:auto}@media print{.metric-charts{grid-template-columns:repeat(2,minmax(0,1fr));max-width:none}.metric-charts>.metric-chart{break-inside:avoid;min-height:0}}.analytics,.analytics-document{min-width:0;max-width:100%}.analytics-controls{flex-wrap:wrap;align-items:end;gap:12px;margin:16px 0;display:flex}.analytics-controls label{flex-direction:column;gap:5px;min-width:0;max-width:100%;display:flex}.analytics-controls input,.analytics-controls select{border:1px solid var(--workflow-control-border,#b8cbd0);border-radius:7px;max-width:100%;padding:8px}.analytics button{align-items:center;gap:6px;display:inline-flex}.analytics-document header{overflow-wrap:anywhere}.analytics table{border-collapse:collapse;width:100%;min-width:740px}.analytics th,.analytics td{text-align:left;border-bottom:1px solid var(--workflow-border,#cad7dc);white-space:normal;padding:9px}.analytics :focus-visible{outline:3px solid var(--workflow-focus,#0f766e);outline-offset:3px}@media (max-width:767px){.analytics-controls label{flex:100%}}@media print{@page{size:A4 portrait;margin:10mm}@page analytics-wide{size:A4 landscape;margin:8mm}.analytics-landscape{page:analytics-wide}.analytics-controls,.dashboard-sidebar,.dashboard-header{display:none!important}.analytics-document{width:100%}.analytics .table-container{overflow:visible!important}.analytics table{table-layout:auto;min-width:0;font-size:8pt}.analytics th,.analytics td{overflow-wrap:anywhere;padding:3px}.analytics thead{display:table-header-group}.analytics tr{break-inside:avoid}.analytics .metric-card{box-shadow:none}.analytics-document header{font-size:9pt}}.payroll-page,.payroll-form{overflow-wrap:anywhere;min-width:0}.payroll-form summary,.payroll-page summary{cursor:pointer;min-height:44px}.payroll-form summary:focus-visible{outline:3px solid var(--eduhub-focus,var(--blue));outline-offset:3px}.payroll-page summary:focus-visible{outline:3px solid var(--eduhub-focus,var(--blue));outline-offset:3px}.payroll-page :-webkit-any(button,input,select,textarea){font:inherit;box-sizing:border-box;border:1px solid var(--workflow-control-border,#8b9ab1);border-radius:6px;max-width:100%;min-height:44px;padding:.6rem .75rem}.payroll-page :-moz-any(button,input,select,textarea){font:inherit;box-sizing:border-box;border:1px solid var(--workflow-control-border,#8b9ab1);border-radius:6px;max-width:100%;min-height:44px;padding:.6rem .75rem}.payroll-page :is(button,input,select,textarea){font:inherit;box-sizing:border-box;border:1px solid var(--workflow-control-border,#8b9ab1);border-radius:6px;max-width:100%;min-height:44px;padding:.6rem .75rem}.payroll-form :-webkit-any(button,input,select,textarea){font:inherit;box-sizing:border-box;border:1px solid var(--workflow-control-border,#8b9ab1);border-radius:6px;max-width:100%;min-height:44px;padding:.6rem .75rem}.payroll-form :-moz-any(button,input,select,textarea){font:inherit;box-sizing:border-box;border:1px solid var(--workflow-control-border,#8b9ab1);border-radius:6px;max-width:100%;min-height:44px;padding:.6rem .75rem}.payroll-form :is(button,input,select,textarea){font:inherit;box-sizing:border-box;border:1px solid var(--workflow-control-border,#8b9ab1);border-radius:6px;max-width:100%;min-height:44px;padding:.6rem .75rem}.payroll-page button,.payroll-form button{cursor:pointer}.payroll-page button:disabled,.payroll-form button:disabled{cursor:not-allowed;opacity:.6}.payroll-page label,.payroll-form label{gap:.4rem;min-width:0;display:grid}.payroll-page input,.payroll-page select,.payroll-page textarea,.payroll-form input,.payroll-form select,.payroll-form textarea{width:100%;min-width:0}.payroll-form fieldset{border:0;gap:1rem;min-width:0;margin:0;padding:0;display:grid}.payroll-worker-form .payroll-worker-section{border:1px solid var(--line);border-radius:8px;padding:1rem}.payroll-worker-section legend,.payroll-worker-reliefs legend{color:var(--workflow-text,var(--navy));padding-inline-start:.3rem;padding-inline-end:.3rem;font-weight:700}.payroll-worker-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem;min-width:0;display:grid}.payroll-worker-grid>*,.payroll-worker-field{min-width:0}.payroll-worker-wide{grid-column:1/-1}.payroll-worker-field{align-content:start;gap:.4rem;display:grid}.payroll-worker-form .payroll-worker-check{align-items:center;gap:.65rem;min-height:44px;display:flex}.payroll-worker-form .payroll-worker-check input{flex-shrink:0;width:24px;min-width:24px;height:24px;min-height:24px;padding:0}.payroll-worker-form [aria-invalid=true]{border-color:var(--workflow-danger-border,#9f1239)}.payroll-field-error{color:var(--workflow-danger-text,#9f1239);margin:0}@media (max-width:760px){.payroll-worker-grid{grid-template-columns:minmax(0,1fr)}}.payroll-form-grid,.payroll-filters{grid-template-columns:repeat(auto-fit,minmax(min(100%,180px),1fr));align-items:end;gap:1rem;min-width:0;margin-block-start:1rem;margin-block-end:1rem;display:grid}.payroll-actions{flex-wrap:wrap;align-items:center;gap:.6rem;margin-block-start:1rem;margin-block-end:1rem;display:flex}.payroll-workflow{grid-template-columns:repeat(auto-fit,minmax(min(100%,180px),1fr));gap:.5rem;min-width:0;padding:0;list-style:none;display:grid}.payroll-workflow li{overflow-wrap:anywhere;min-width:0}.payroll-workflow button,.payroll-workflow span{box-sizing:border-box;text-align:left;white-space:normal;border:1px solid var(--line);border-radius:6px;width:100%;min-height:44px;padding:.65rem;display:block}.payroll-workflow [aria-current=step]>:-webkit-any(button,span){border-color:var(--blue);background:var(--navy);color:#fff}.payroll-workflow [aria-current=step]>:-moz-any(button,span){border-color:var(--blue);background:var(--navy);color:#fff}.payroll-workflow [aria-current=step]>:is(button,span){border-color:var(--blue);background:var(--navy);color:#fff}.payroll-workflow button:focus-visible{outline:3px solid var(--blue);outline-offset:3px}.payroll-step-content{overflow-wrap:anywhere;min-width:0;margin-block-start:1rem;margin-block-end:1rem}.payroll-rates,.payroll-advanced{border:1px solid var(--line);border-radius:6px;min-width:0;margin-block-start:1.5rem;margin-block-end:1.5rem;padding:1rem}.payroll-rates>summary,.payroll-advanced>summary{cursor:pointer;min-height:44px;font-weight:700}.payroll-rates>summary:focus-visible{outline:3px solid var(--blue);outline-offset:3px}.payroll-advanced>summary:focus-visible{outline:3px solid var(--blue);outline-offset:3px}.payroll-advanced label{margin-block-start:1rem;margin-block-end:1rem}.payroll-form .payroll-source{border:1px solid var(--line);border-radius:6px;min-width:0;margin-block-start:1rem;margin-block-end:1rem;padding:1rem}.payroll-source legend{overflow-wrap:anywhere;font-weight:700}.payroll-form .payroll-source-check{align-items:center;gap:.75rem;display:flex}.payroll-form .payroll-source-check input{flex-shrink:0;width:24px;height:24px;min-height:24px}.payroll-source-check{min-height:44px}.payroll-source-coverage{grid-template-columns:repeat(auto-fit,minmax(min(100%,180px),1fr));gap:.5rem;min-width:0;padding:0;list-style:none;display:grid}.payroll-source-coverage li{overflow-wrap:anywhere;border:1px solid var(--line);border-radius:6px;min-width:0;padding:.5rem}.payroll-cards{grid-template-columns:repeat(auto-fit,minmax(min(100%,230px),1fr));gap:1rem;display:grid}.payroll-cards article,.payroll-policy{border:1px solid var(--line);background:var(--surface);border-radius:10px;min-width:0;margin-block-start:.5rem;margin-block-end:.5rem;padding:1rem}.payroll-cards h3,.payroll-cards h4{color:var(--workflow-text,var(--navy));margin-top:0}.payroll-page pre,.sf-dialog pre{white-space:pre-wrap;overflow-wrap:anywhere;max-width:100%}.payroll-notice{border:1px solid var(--workflow-warning-border,#9a6b22);background:var(--workflow-warning-surface,#fff7e5);border-radius:8px;padding:1rem}.payroll-page th,.payroll-page td{text-align:left;border-bottom:1px solid var(--line);padding:.65rem}.payroll-page table{border-collapse:collapse;width:100%}.payroll-slip{overflow-wrap:anywhere;min-width:0;max-width:760px;margin:auto}.payroll-slip header{align-items:center;gap:1rem;display:flex}.payroll-slip header img{object-fit:contain;flex-shrink:0;width:60px;height:60px}.payroll-slip header div{min-width:0}.payroll-slip table{table-layout:fixed;border-collapse:collapse;width:100%;margin-block-start:1rem;margin-block-end:1rem}.payroll-slip :-webkit-any(th,td){text-align:left;border:1px solid var(--line);padding:.4rem}.payroll-slip :-moz-any(th,td){text-align:left;border:1px solid var(--line);padding:.4rem}.payroll-slip :is(th,td){text-align:left;border:1px solid var(--line);padding:.4rem}.payroll-page :-webkit-any(a,button,input,select,textarea):focus-visible{outline:3px solid var(--eduhub-focus,var(--blue));outline-offset:3px}.payroll-page :-moz-any(a,button,input,select,textarea):focus-visible{outline:3px solid var(--eduhub-focus,var(--blue));outline-offset:3px}.payroll-page :is(a,button,input,select,textarea):focus-visible{outline:3px solid var(--eduhub-focus,var(--blue));outline-offset:3px}.payroll-form :-webkit-any(button,input,select,textarea):focus-visible{outline:3px solid var(--eduhub-focus,var(--blue));outline-offset:3px}.payroll-form :-moz-any(button,input,select,textarea):focus-visible{outline:3px solid var(--eduhub-focus,var(--blue));outline-offset:3px}.payroll-form :is(button,input,select,textarea):focus-visible{outline:3px solid var(--eduhub-focus,var(--blue));outline-offset:3px}@media (max-width:760px){.payroll-form-grid,.payroll-filters{grid-template-columns:minmax(0,1fr)}.payroll-slip header{align-items:flex-start}}.fees-module,.fees-form,.fees-module fieldset{min-width:0;max-width:100%}.fees-filters{flex-wrap:wrap;align-items:end;gap:10px;margin-bottom:18px;display:flex}.fees-tabs{box-sizing:border-box;grid-template-columns:repeat(auto-fit,minmax(min(100%,140px),1fr));gap:8px;width:100%;min-width:0;max-width:100%;margin:0 0 18px;padding:6px;display:grid}.fees-tabs>button,.fees-tabs>a{border:1px solid var(--line);background:var(--surface);min-width:0;max-width:100%;min-height:44px;color:var(--ink);font:inherit;white-space:normal;text-align:center;overflow-wrap:break-word;overflow-wrap:anywhere;cursor:pointer;border-radius:8px;justify-content:center;align-items:center;padding:10px 16px;font-weight:600;text-decoration:none;display:inline-flex}.fees-tabs>button:hover,.fees-tabs>a:hover{background:var(--canvas);border-color:var(--blue)}.fees-tabs>[aria-current=page]{background:var(--blue);border-color:var(--blue);color:var(--surface)}.fees-tabs>[aria-current=page]:hover{background:var(--navy);border-color:var(--navy)}.fees-tabs>:focus-visible{outline:3px solid var(--eduhub-focus,var(--blue));outline-offset:3px}.fees-form{gap:12px;display:grid}.fees-form label,.fees-filters label{flex-direction:column;gap:5px;min-width:0;display:flex}.fees-form input:not([type=checkbox]),.fees-form select,.fees-form textarea,.fees-filters select{box-sizing:border-box;width:100%;max-width:100%}.fees-form input[type=checkbox]{width:auto}.fees-form fieldset label:has(input[type=checkbox]){flex-direction:row}.fees-metrics{grid-template-columns:repeat(auto-fit,minmax(min(100%,170px),1fr));gap:12px;margin-bottom:20px;display:grid}.fees-metrics strong{font-size:1.3rem;display:block}.fees-module button svg{vertical-align:middle}.fees-module .school-admin-table{min-width:760px}.receipt{overflow-wrap:anywhere;min-width:0;max-width:100%}.receipt header{align-items:center;gap:12px;display:flex}.receipt header img{object-fit:contain;flex-shrink:0;width:60px;height:60px}.receipt dl{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;display:grid}.receipt dd{margin:3px 0}.receipt footer img{object-fit:contain;width:100px;height:65px}@media (max-width:600px){.fees-filters>*{flex:100%}.receipt dl{grid-template-columns:1fr}}.fees-metrics strong{overflow-wrap:anywhere}.fees-filters input,.fees-module>label input{box-sizing:border-box;min-width:0;max-width:100%}.fees-module>label{gap:6px;margin-block-start:12px;margin-block-end:12px;display:grid}.fees-module .metric-chart-values li>div>span{overflow-wrap:anywhere;min-width:0}:root{--navy:#16345c;--blue:#2f64e9;--blue-hover:#2452c7;--gold:#d9a521;--soft-gold:#f7e8b5;--ink:#17233c;--muted:#667085;--line:#e7ebf2;--surface:#fff;--canvas:#f5f7fb}*{box-sizing:border-box}button,input,select{font:inherit}button{cursor:pointer}.app-shell{background:var(--canvas);min-height:100vh;color:var(--ink);grid-template-columns:250px 1fr;display:grid}.sidebar{background:var(--navy);color:#fff;flex-direction:column;height:100vh;padding:24px 16px;display:flex;position:sticky;top:0}.brand,.sidebar-footer{align-items:center;gap:12px;padding:4px 8px 26px;display:flex}.brand>span{background:#3975ff;border-radius:12px;place-items:center;width:42px;height:42px;font-weight:800;display:grid}.brand div,.sidebar-footer div{display:grid}.brand small,.sidebar-footer small{color:#aab7d1;font-size:.73rem}.sidebar nav{gap:5px;display:grid}.sidebar nav button{color:#b9c5da;text-align:left;background:0 0;border:0;border-radius:9px;align-items:center;gap:12px;padding:12px;font-weight:600;display:flex}.sidebar nav button:hover,.sidebar nav button.active{color:#fff;background:#20375f}.nav-dot{border:2px solid;border-radius:50%;width:8px;height:8px}.sidebar-footer{border-top:1px solid #2b4166;margin-top:auto;padding-top:20px;padding-bottom:0}.avatar,.student-avatar{border-radius:50%;place-items:center;font-weight:700;display:grid}.avatar{background:var(--workflow-warning-surface,#f3b955);width:38px;height:38px;color:var(--workflow-warning-text,#10213f)}main{min-width:0;padding:34px max(20px,min(4vw,54px)) 54px}header{justify-content:space-between;align-items:center;margin-bottom:28px;display:flex}h1,h2,h3,p{margin-top:0}h1{margin-bottom:0;font-size:2rem}.eyebrow{text-transform:uppercase;letter-spacing:.1em;color:var(--workflow-secondary-text,#74819a);margin-bottom:6px;font-size:.72rem;font-weight:800}.header-actions{gap:10px;display:flex}.primary,.icon-button,.panel-heading button{border:0;border-radius:9px;font-weight:700}.primary{background:var(--blue);color:var(--workflow-on-primary,white);box-shadow:none;padding:11px 17px}.icon-button{background:var(--workflow-surface,white);border:1px solid var(--line);width:43px}.welcome{color:#fff;background:linear-gradient(115deg,#17315c,#234e8d);border-radius:16px;justify-content:space-between;align-items:center;padding:26px 30px;display:flex;box-shadow:0 12px 30px #14213d18}.welcome h2{margin-bottom:7px;font-size:1.5rem}.welcome p{color:#cfdaeb;margin-bottom:0}.welcome .eyebrow{color:#8fb5ff}.term{border-left:1px solid #ffffff30;min-width:170px;padding-left:28px;display:grid}.term small,.term span{color:#b9cae4}.term strong{margin:2px 0;font-size:1.45rem}.stats{grid-template-columns:repeat(4,1fr);gap:16px;margin:20px 0;display:grid}.stats article{background:var(--workflow-surface,white);border:1px solid var(--line);border-radius:14px;align-items:flex-start;gap:13px;padding:19px;display:flex}.stat-icon{border-radius:11px;flex:none;place-items:center;width:42px;height:42px;font-size:.72rem;font-weight:900;display:grid}.blue{background:var(--workflow-info-surface,#e8efff);color:var(--workflow-info-text,#275de7)}.purple{background:var(--workflow-accent-surface,#f0eaff);color:var(--workflow-accent-text,#7654c8)}.green{background:var(--workflow-success-surface,#e5f7ef);color:var(--workflow-success-text,#16835c)}.orange{background:var(--workflow-warning-surface,#fff1dd);color:var(--workflow-warning-text,#b66313)}.stats small{color:var(--muted)}.stats strong{margin:2px 0;font-size:1.45rem;display:block}.stats p{color:var(--muted);margin:0;font-size:.74rem}.stats b{color:var(--workflow-success-text,#16835c)}.content-grid{grid-template-columns:1.4fr 1fr;gap:20px;margin-bottom:20px;display:grid}.panel{background:var(--surface);border:1px solid var(--line);border-radius:14px;padding:22px}.panel-heading{justify-content:space-between;align-items:center;gap:16px;margin-bottom:18px;display:flex}.panel-heading h3{margin-bottom:4px}.panel-heading p{color:var(--muted);margin:0;font-size:.82rem}.panel-heading button{color:var(--blue);background:var(--workflow-info-surface,#eef3ff);padding:8px 12px}.panel-heading input{border:1px solid var(--line);min-width:220px;color:var(--ink);background:var(--workflow-input,white);border-radius:9px;padding:9px 12px}.chart{border-bottom:1px solid var(--line);background:var(--workflow-grid,linear-gradient(#eef2f7 1px,transparent 1px));background-size:100% 45px;justify-content:space-around;align-items:flex-end;height:190px;padding:14px 14px 0;display:flex}.chart div{flex-direction:column;justify-content:flex-end;align-items:center;gap:9px;width:11%;height:100%;display:flex}.chart span{background:var(--workflow-chart-1,linear-gradient(#4a7cf0,#285ddc));border-radius:6px 6px 2px 2px;width:100%;max-height:145px;display:block}.chart small{color:var(--muted)}.action-grid{grid-template-columns:1fr 1fr;gap:10px;display:grid}.action-grid button{border:1px solid var(--line);background:var(--workflow-secondary,#fafbfe);text-align:left;color:var(--ink);border-radius:10px;justify-content:space-between;padding:15px;font-weight:700;display:flex}.action-grid span{color:var(--blue)}.table-wrap{overflow:auto}table{border-collapse:collapse;width:100%;min-width:650px}th{text-align:left;color:var(--muted);text-transform:uppercase;letter-spacing:.05em;border-bottom:1px solid var(--line);padding:10px 12px;font-size:.72rem}td{border-bottom:1px solid var(--workflow-border,#f0f2f6);padding:13px 12px;font-size:.86rem}td:first-child{align-items:center;gap:10px;display:flex}.student-avatar{background:var(--workflow-info-surface,#e9effc);width:34px;height:34px;color:var(--workflow-info-text,#325ea9);font-size:.7rem}.status{border-radius:20px;padding:5px 9px;font-size:.72rem;font-weight:700}.status.active{color:var(--workflow-success-text,#147551);background:var(--workflow-success-surface,#e5f7ef)}.status.pending{color:var(--workflow-warning-text,#9a5a13);background:var(--workflow-warning-surface,#fff1dd)}.empty-state{text-align:center;padding:80px 20px}.empty-state>span{background:var(--workflow-info-surface,#e9efff);width:62px;height:62px;color:var(--blue);border-radius:16px;place-items:center;margin:auto;font-weight:900;display:grid}.empty-state h2{margin:18px 0 7px}.empty-state p{color:var(--muted);margin-bottom:20px}.modal-backdrop{background:var(--workflow-backdrop,#071225a8);z-index:10;place-items:center;padding:20px;display:grid;position:fixed;top:0;bottom:0;left:0;right:0}.modal{background:var(--workflow-elevated,white);width:min(520px,100%);box-shadow:var(--workflow-shadow,0 30px 70px #0005);border-radius:16px;padding:28px;position:relative}.close{background:0 0;border:0;font-size:1.7rem;position:absolute;top:14px;right:18px}.modal h2{margin-bottom:22px}.modal form,.modal label{gap:7px;display:grid}.modal form{gap:16px}.modal label{font-size:.82rem;font-weight:700}.modal input,.modal select{border:1px solid var(--workflow-control-border,#dce2ec);background:var(--workflow-input,white);width:100%;color:var(--ink);border-radius:8px;padding:11px}.form-row{grid-template-columns:1fr 1fr;gap:12px;display:grid}@media (max-width:1000px){.stats{grid-template-columns:1fr 1fr}.content-grid{grid-template-columns:1fr}}@media (max-width:720px){.app-shell{display:block}.sidebar{height:auto;padding:14px;position:static}.brand{padding-bottom:12px}.sidebar nav{display:flex;overflow:auto}.sidebar nav button{white-space:nowrap}.sidebar-footer{display:none}main{padding:22px 14px}header{align-items:flex-start}.icon-button{display:none}.welcome{align-items:flex-start}.term{display:none}.stats{grid-template-columns:1fr}.panel-heading{flex-direction:column;align-items:flex-start}.panel-heading input{width:100%;min-width:0}.action-grid,.form-row{grid-template-columns:1fr}}.tenant-lock{background:var(--workflow-success-surface,#e5f7ef);color:var(--workflow-success-text,#147551);border:1px solid var(--workflow-success-border,#c6eadb);cursor:default;border-radius:9px;padding:10px 13px;font-weight:700}.logout-button{border:1px solid var(--line);background:var(--workflow-surface,white);color:var(--ink);border-radius:9px;padding:10px 13px;font-weight:700}.logout-button:hover{border-color:var(--workflow-control-border,#b9c5da);background:var(--workflow-secondary,#f8faff)}.auth-shell{min-height:100vh;color:var(--ink);background:#f4f6fa;grid-template-columns:minmax(360px,.9fr) 1.1fr;display:grid}.auth-aside{background:var(--navy);color:#fff;flex-direction:column;padding:32px max(28px,min(6vw,92px));display:flex;position:relative;overflow:hidden}.auth-brand{padding:0}.auth-brand small{color:#b9c9e2}.auth-aside-copy{max-width:420px;margin:auto 0}.auth-aside-copy .eyebrow{color:#a9c3ff}.auth-aside-copy h1{letter-spacing:-.03em;margin:12px 0 20px;font-size:max(2.2rem,min(4vw,4.2rem));line-height:1.02}.auth-aside-copy>p:last-child{color:#cfdaeb;max-width:340px;line-height:1.7}.auth-aside-mark{color:#9eb5d8;letter-spacing:.16em;font-size:.7rem;font-weight:800}.auth-main{place-items:center;padding:32px;display:grid}.login-card{border:1px solid var(--line);background:#fff;border-radius:16px;width:min(430px,100%);padding:max(26px,min(5vw,42px));box-shadow:0 18px 50px #172b4d12}.login-card h2{margin-bottom:8px;font-size:1.9rem}.auth-intro{color:var(--muted);margin-bottom:26px;line-height:1.6}.login-card form,.login-card label{gap:8px;display:grid}.login-card form{gap:17px}.login-card label{font-size:.82rem;font-weight:800}.login-card input{color:var(--ink);border:1px solid #dce2ec;border-radius:9px;outline:none;padding:13px 14px}.login-card input:focus{border-color:var(--blue);box-shadow:0 0 0 3px #275de71a}.auth-submit{justify-content:space-between;align-items:center;width:100%;margin-top:5px;display:flex}.auth-submit:disabled{cursor:wait;opacity:.7}.auth-error{background:var(--workflow-danger-surface,#fff0ef);border:1px solid var(--workflow-danger-border,#f3c5c1);color:var(--workflow-danger-text,#a43730);border-radius:9px;margin-bottom:18px;padding:12px 14px;font-size:.82rem;line-height:1.45}.auth-note{color:var(--muted);margin:22px 0 0;font-size:.75rem;line-height:1.5}.status-screen{text-align:center;min-height:100vh;color:var(--ink);background:#f4f6fa;place-content:center;justify-items:center;padding:24px;display:grid}.status-mark{background:var(--navy);color:#fff;border-radius:15px;place-items:center;width:54px;height:54px;margin-bottom:18px;font-weight:900;display:grid}.status-screen h1{margin-bottom:8px;font-size:1.4rem}.status-screen>p:last-child{color:var(--muted)}.platform-shell{background:var(--canvas);min-height:100vh;color:var(--ink)}.platform-header{background:var(--workflow-surface,white);border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;height:82px;padding:0 max(20px,min(5vw,72px));display:flex}.platform-user{text-align:right;align-items:center;gap:18px;display:flex}.platform-user div{display:grid}.platform-user small{color:var(--muted);font-size:.75rem}.platform-main{max-width:1240px;margin:auto;padding:48px max(20px,min(5vw,72px)) 64px}.platform-title{justify-content:space-between;align-items:flex-end;gap:24px;margin-bottom:28px;display:flex}.platform-title h1{margin:0 0 8px}.platform-title>div>p:last-child{color:var(--muted);margin:0}.platform-title .primary:disabled{opacity:.5;cursor:not-allowed}.platform-stats{grid-template-columns:repeat(3,1fr);gap:16px;margin-bottom:28px;display:grid}.platform-stats article{background:var(--workflow-surface,white);border:1px solid var(--line);border-radius:14px;padding:21px}.platform-stats small,.platform-stats p{color:var(--muted)}.platform-stats strong{margin:5px 0;font-size:1.8rem;display:block}.platform-stats p{margin:0;font-size:.78rem}.tenant-list{background:var(--workflow-surface,white);border:1px solid var(--line);border-radius:14px;padding:24px}.tenant-list .panel-heading{margin-bottom:22px}.tenant-list h2{margin:0 0 5px;font-size:1.1rem}.tenant-grid{grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px;display:grid}.tenant-card{border:1px solid var(--line);border-radius:12px;padding:18px}.tenant-card-top{justify-content:space-between;align-items:center;display:flex}.tenant-icon{background:var(--workflow-info-surface,#e9efff);width:40px;height:40px;color:var(--blue);border-radius:11px;place-items:center;font-size:.72rem;font-weight:900;display:grid}.tenant-card h3{margin:17px 0 5px;font-size:1rem}.tenant-card p{color:var(--muted);white-space:nowrap;text-overflow:ellipsis;margin-bottom:6px;font-size:.8rem;overflow:hidden}.tenant-card>small{color:var(--workflow-secondary-text,#8b96a9);font-size:.72rem}.tenant-details{gap:8px;margin:16px 0 4px;display:grid}.tenant-details div{justify-content:space-between;gap:12px;font-size:.76rem;display:flex}.tenant-details dt{color:var(--muted)}.tenant-details dd{text-align:right;text-overflow:ellipsis;white-space:nowrap;max-width:68%;margin:0;overflow:hidden}.tenant-actions{border-top:1px solid var(--line);grid-template-columns:1fr 1fr;gap:10px;margin-top:16px;display:grid}.tenant-actions .tenant-action{border-top:0;margin-top:0}.secondary-action{color:var(--workflow-warning-text,#9a5a13)}.tenant-action:disabled{opacity:.55;cursor:wait}.success-message{background:var(--workflow-success-surface,#e5f7ef);border:1px solid var(--workflow-success-border,#c6eadb);color:var(--workflow-success-text,#147551);border-radius:9px;margin-bottom:18px;padding:12px 14px;font-size:.82rem;line-height:1.45}.module-state{text-align:center;color:var(--muted);padding:54px 20px}.module-state strong{color:var(--ink);margin-bottom:7px;display:block}.module-state p{margin:0;font-size:.86rem}.empty-tenants{text-align:center;color:var(--muted);padding:48px 20px}.empty-tenants strong{color:var(--ink);margin-bottom:7px;display:block}.empty-tenants p{margin:0 0 18px;font-size:.86rem}.field-hint{color:var(--muted);font-size:.72rem;font-weight:400}.form-actions{justify-content:flex-end;gap:10px;margin-top:4px;display:flex}.form-actions .primary{box-shadow:none}@media (max-width:760px){.auth-shell{display:block}.auth-aside{min-height:300px;padding:24px}.auth-aside-copy{margin:48px 0 22px}.auth-aside-copy h1{font-size:2.4rem}.auth-aside-mark{display:none}.auth-main{padding:20px 14px}.platform-header{align-items:flex-start;gap:16px;height:auto;padding:18px 14px}.platform-header .brand small{display:none}.platform-user{gap:9px}.platform-user div{display:none}.platform-main{padding:30px 14px}.platform-title{flex-direction:column;align-items:flex-start}.platform-stats{grid-template-columns:1fr}.tenant-list{padding:18px}.tenant-actions{grid-template-columns:1fr}.header-actions{flex-wrap:wrap;justify-content:flex-end}.header-actions .tenant-lock{display:none}}.invite-admin-button{color:var(--workflow-link,#275de7);border-top:1px solid var(--workflow-border,#e7ebf2);border-radius:0;margin-top:12px;padding-top:12px}.invite-admin-button:hover{color:var(--workflow-link,#173fae);background:var(--workflow-secondary,#f8faff)}.school-modal{max-height:calc(100vh - 40px);overflow:auto}.activation-status{text-align:center;color:#14213d;background:#f4f6fa;place-content:center;justify-items:center;min-height:100vh;padding:24px;display:grid}.activation-status h1{margin-bottom:8px;font-size:1.7rem}.activation-status>p:last-child{color:#6c7891;max-width:420px;line-height:1.6}.activation-shell .auth-intro{margin-bottom:22px}.password-hint{color:#6c7891;margin:0;font-size:.74rem;line-height:1.5}.activation-shell .auth-submit{margin-top:5px}.auth-link{color:#275de7;cursor:pointer;font:inherit;background:0 0;border:0;margin-top:18px;padding:10px 0;text-decoration:underline;display:inline-block}.auth-link:focus-visible{outline-offset:4px;border-radius:3px;outline:3px solid #275de7}.auth-link:disabled{opacity:.6;cursor:wait}.auth-main,.login-card,.login-card input{min-width:0}.login-card{box-sizing:border-box;overflow-wrap:anywhere}.login-card input{box-sizing:border-box;width:100%}@media (min-width:761px) and (max-width:1024px){.auth-shell{grid-template-columns:1fr 1fr}.auth-main{padding:20px}.login-card{padding:24px}}.auth-shell,.auth-aside,.auth-aside-copy,.login-card form,.login-card label{min-width:0;max-width:100%}.auth-aside-copy,.login-card{overflow-wrap:break-word;overflow-wrap:anywhere}.login-card input,.login-card button{min-width:0;max-width:100%}.login-card .login-password-field{gap:8px;min-width:0;display:grid}.login-card .login-password-control{min-width:0;position:relative}.login-card .login-password-control input{background:var(--workflow-surface,#fff);min-height:48px;color:var(--ink);border-color:var(--workflow-control-border,#dce2ec);padding-inline-end:58px}.login-card .login-password-toggle{width:44px;min-width:44px;height:44px;min-height:44px;color:var(--ink);cursor:pointer;background:0 0;border:0;border-radius:7px;justify-content:center;align-items:center;padding:0;display:inline-flex;position:absolute;top:50%;transform:translateY(-50%)}.login-card .login-password-toggle:not(:-webkit-any(:lang(ae),:lang(ar),:lang(arc),:lang(bcc),:lang(bqi),:lang(ckb),:lang(dv),:lang(fa),:lang(glk),:lang(he),:lang(ku),:lang(mzn),:lang(nqo),:lang(pnb),:lang(ps),:lang(sd),:lang(ug),:lang(ur),:lang(yi))){right:2px}.login-card .login-password-toggle:not(:-moz-any(:lang(ae),:lang(ar),:lang(arc),:lang(bcc),:lang(bqi),:lang(ckb),:lang(dv),:lang(fa),:lang(glk),:lang(he),:lang(ku),:lang(mzn),:lang(nqo),:lang(pnb),:lang(ps),:lang(sd),:lang(ug),:lang(ur),:lang(yi))){right:2px}.login-card .login-password-toggle:not(:is(:lang(ae),:lang(ar),:lang(arc),:lang(bcc),:lang(bqi),:lang(ckb),:lang(dv),:lang(fa),:lang(glk),:lang(he),:lang(ku),:lang(mzn),:lang(nqo),:lang(pnb),:lang(ps),:lang(sd),:lang(ug),:lang(ur),:lang(yi))){right:2px}.login-card .login-password-toggle:-webkit-any(:lang(ae),:lang(ar),:lang(arc),:lang(bcc),:lang(bqi),:lang(ckb),:lang(dv),:lang(fa),:lang(glk),:lang(he),:lang(ku),:lang(mzn),:lang(nqo),:lang(pnb),:lang(ps),:lang(sd),:lang(ug),:lang(ur),:lang(yi)){left:2px}.login-card .login-password-toggle:-moz-any(:lang(ae),:lang(ar),:lang(arc),:lang(bcc),:lang(bqi),:lang(ckb),:lang(dv),:lang(fa),:lang(glk),:lang(he),:lang(ku),:lang(mzn),:lang(nqo),:lang(pnb),:lang(ps),:lang(sd),:lang(ug),:lang(ur),:lang(yi)){left:2px}.login-card .login-password-toggle:is(:lang(ae),:lang(ar),:lang(arc),:lang(bcc),:lang(bqi),:lang(ckb),:lang(dv),:lang(fa),:lang(glk),:lang(he),:lang(ku),:lang(mzn),:lang(nqo),:lang(pnb),:lang(ps),:lang(sd),:lang(ug),:lang(ur),:lang(yi)){left:2px}.login-card .login-password-toggle:hover{background:var(--workflow-secondary,#f8faff)}.login-card .login-password-toggle:focus-visible{outline:3px solid var(--eduhub-focus,#1d4ed8);outline-offset:-3px}.access-requests,.access-detail{overflow-wrap:anywhere;min-width:0}.access-filters{grid-template-columns:minmax(0,2fr) repeat(2,minmax(0,1fr)) auto;align-items:end;gap:1rem;display:grid}.access-filters label,.access-detail label{gap:.4rem;min-width:0;display:grid}.access-requests :-webkit-any(input,select,textarea,button){box-sizing:border-box;max-width:100%;min-height:44px;font:inherit;border:1px solid var(--workflow-control-border,#8a9db4);border-radius:6px;padding:.65rem}.access-requests :-moz-any(input,select,textarea,button){box-sizing:border-box;max-width:100%;min-height:44px;font:inherit;border:1px solid var(--workflow-control-border,#8a9db4);border-radius:6px;padding:.65rem}.access-requests :is(input,select,textarea,button){box-sizing:border-box;max-width:100%;min-height:44px;font:inherit;border:1px solid var(--workflow-control-border,#8a9db4);border-radius:6px;padding:.65rem}.access-detail :-webkit-any(textarea,button){box-sizing:border-box;max-width:100%;min-height:44px;font:inherit;border:1px solid var(--workflow-control-border,#8a9db4);border-radius:6px;padding:.65rem}.access-detail :-moz-any(textarea,button){box-sizing:border-box;max-width:100%;min-height:44px;font:inherit;border:1px solid var(--workflow-control-border,#8a9db4);border-radius:6px;padding:.65rem}.access-detail :is(textarea,button){box-sizing:border-box;max-width:100%;min-height:44px;font:inherit;border:1px solid var(--workflow-control-border,#8a9db4);border-radius:6px;padding:.65rem}.access-detail textarea{width:100%;min-width:0}.access-filters :-webkit-any(input,select){width:100%;min-width:0}.access-filters :-moz-any(input,select){width:100%;min-width:0}.access-filters :is(input,select){width:100%;min-width:0}.access-request-grid{grid-template-columns:repeat(auto-fit,minmax(min(100%,280px),1fr));gap:1rem;display:grid}.access-request-grid article{background:var(--workflow-surface,white);border:1px solid var(--workflow-border,#d2ddea);border-radius:10px;min-width:0;padding:1.25rem}.access-pagination,.access-review-actions{flex-wrap:wrap;align-items:center;gap:.75rem;margin-block-start:1rem;margin-block-end:1rem;display:flex}.access-detail dd{white-space:pre-wrap;margin:.25rem 0 1rem}.access-detail dt{font-weight:700}.access-detail ol{padding-left:1.25rem}.access-detail textarea{resize:vertical}@media (max-width:760px){.access-filters{grid-template-columns:minmax(0,1fr)}}.platform-nav{border-bottom:1px solid var(--line);gap:8px;margin-bottom:24px;display:flex}.platform-nav button{color:var(--muted);background:0 0;border:0;border-bottom:2px solid #0000;padding:11px 14px;font-weight:800}.platform-nav button:hover,.platform-nav button.active{color:var(--blue);border-bottom-color:var(--blue)}.platform-stats-six{grid-template-columns:repeat(3,1fr)}.overview-actions{grid-template-columns:1fr 1fr;gap:16px;display:grid}.overview-link{border:1px solid var(--line);text-align:left;color:var(--ink);cursor:pointer}.overview-link strong,.overview-link span{display:block}.overview-link span{color:var(--muted);margin-top:8px;font-size:.8rem}.platform-state{text-align:center;color:var(--muted);padding:80px 20px}.platform-state strong{color:var(--ink);margin-bottom:8px;display:block}.schools-module,.admin-module{background:var(--surface);border:1px solid var(--line);border-radius:14px;padding:22px}.module-toolbar{grid-template-columns:minmax(220px,1fr) 150px 170px auto;align-items:end;gap:12px;margin-bottom:20px;display:grid}.module-toolbar label{color:var(--muted);gap:7px;font-size:.76rem;font-weight:800;display:grid}.module-toolbar input,.module-toolbar select{border:1px solid var(--line);background:var(--workflow-input,white);width:100%;color:var(--ink);font:inherit;border-radius:8px;padding:10px 11px}.sort-direction{border:1px solid var(--line);background:var(--workflow-info-surface,#eef3ff);height:39px;color:var(--blue);border-radius:8px;padding:0 13px;font-weight:800}.school-table-wrap{overflow:auto}.school-table{border-collapse:collapse;width:100%;min-width:980px}.school-table th{white-space:nowrap}.school-table td{vertical-align:middle}.school-table tbody tr{cursor:pointer}.school-table tbody tr:hover,.school-table tbody tr.selected{background:var(--workflow-row-selected,#f7f9ff)}.school-table tbody tr:focus{outline:2px solid var(--blue);outline-offset:-2px}.table-action{color:var(--blue);background:0 0;border:0;padding:5px 7px;font-weight:800}.table-action.warning{color:var(--workflow-warning-text,#9a5a13)}.pagination{color:var(--muted);justify-content:space-between;align-items:center;gap:16px;padding-top:18px;font-size:.78rem;display:flex}.pagination div{gap:8px;display:flex}.pagination button{border:1px solid var(--line);background:var(--workflow-surface,white);color:var(--ink);border-radius:8px;padding:8px 11px;font-weight:700}.pagination button:disabled{opacity:.45;cursor:not-allowed}.school-details{border-top:1px solid var(--line);margin-top:22px;padding-top:22px}.details-heading{justify-content:space-between;gap:16px;display:flex}.details-heading h2{margin:0;font-size:1.2rem}.details-heading .close{font-size:1.4rem;position:static}.school-details dl{grid-template-columns:repeat(2,1fr);gap:12px 28px;margin:20px 0 0;display:grid}.school-details dl div{border-bottom:1px solid var(--workflow-border,#f0f2f6);justify-content:space-between;gap:15px;padding-bottom:8px;font-size:.8rem;display:flex}.school-details dt{color:var(--muted)}.school-details dd{text-align:right;margin:0;font-weight:700}.admin-module .panel-heading{align-items:flex-start}.admin-module .panel-heading h2{margin-bottom:5px}.admin-module .panel-heading p{color:var(--muted);font-size:.82rem}@media (max-width:900px){.platform-stats-six{grid-template-columns:repeat(2,1fr)}.module-toolbar{grid-template-columns:1fr 1fr}.module-toolbar label:first-child{grid-column:1/-1}.overview-actions{grid-template-columns:1fr}}@media (max-width:600px){.platform-stats-six{grid-template-columns:1fr}.schools-module,.admin-module{padding:16px}.platform-nav{overflow:auto}.platform-nav button{white-space:nowrap}.module-toolbar{grid-template-columns:1fr}.module-toolbar label:first-child{grid-column:auto}.pagination{flex-direction:column;align-items:flex-start}.school-details dl{grid-template-columns:1fr}.platform-title{margin-bottom:20px}}.school-admin-invitation{border:1px solid var(--line);overflow-wrap:anywhere;border-radius:12px;margin-block-start:24px;margin-block-end:24px;padding:20px}.school-admin-invitation fieldset{border:0;gap:16px;min-width:0;margin:0;padding:0;display:grid}.school-admin-invitation label{gap:8px;min-width:0;display:grid}.school-admin-invitation input{box-sizing:border-box;border:1px solid var(--line);background:var(--workflow-input,white);width:100%;min-width:0;min-height:44px;color:var(--ink);font:inherit;border-radius:8px;padding:10px}.school-admin-invitation button{white-space:normal;min-height:44px}.paper-register{min-width:0;max-width:100%;color:var(--text-primary)}.paper-register :-webkit-any(th,td,p,li,label){overflow-wrap:anywhere}.paper-register :-moz-any(th,td,p,li,label){overflow-wrap:anywhere}.paper-register :is(th,td,p,li,label){overflow-wrap:anywhere}.paper-register :-webkit-any(input,textarea,select){box-sizing:border-box;max-width:100%;color:var(--text-primary);background:var(--input-background)}.paper-register :-moz-any(input,textarea,select){box-sizing:border-box;max-width:100%;color:var(--text-primary);background:var(--input-background)}.paper-register :is(input,textarea,select){box-sizing:border-box;max-width:100%;color:var(--text-primary);background:var(--input-background)}.paper-register .paper-entry{min-width:980px}.paper-register .paper-entry thead th{white-space:nowrap;word-break:normal;overflow-wrap:normal;writing-mode:horizontal-tb}.paper-register .paper-entry th[scope=row]{min-width:160px}.paper-register .paper-actions{flex-wrap:wrap;gap:8px;display:flex}.paper-register button,.attendance-methods button{background:var(--surface-secondary);min-height:44px;color:var(--brand-primary);cursor:pointer;white-space:normal;overflow-wrap:anywhere;border:0;border-radius:8px;max-width:100%;padding:10px 14px}.paper-register button:hover,.attendance-methods button:hover{background:var(--surface-muted)}.paper-register button.primary,.attendance-methods button[aria-pressed=true]{background:var(--brand-primary);color:var(--on-primary)}.paper-register button:focus-visible{outline:3px solid var(--focus-ring);outline-offset:2px}.attendance-methods button:focus-visible{outline:3px solid var(--focus-ring);outline-offset:2px}.paper-register button:disabled{opacity:.6;cursor:not-allowed}.attendance-methods{flex-wrap:wrap;gap:8px;margin-bottom:16px;display:flex}.paper-register :-webkit-any(aside,details,.paper-review){background:var(--surface-secondary);border-radius:8px;min-width:0;padding:16px}.paper-register :-moz-any(aside,details,.paper-review){background:var(--surface-secondary);border-radius:8px;min-width:0;padding:16px}.paper-register :is(aside,details,.paper-review){background:var(--surface-secondary);border-radius:8px;min-width:0;padding:16px}.paper-register summary{cursor:pointer;min-height:44px}.paper-register .paper-review label{gap:8px;display:grid}@media (max-width:600px){.paper-register .responsive-table .paper-entry{width:100%;min-width:0}.paper-register .paper-entry :-webkit-any(tbody,tr){width:100%;min-width:0;display:block}.paper-register .paper-entry :-moz-any(tbody,tr){width:100%;min-width:0;display:block}.paper-register .paper-entry :is(tbody,tr){width:100%;min-width:0;display:block}.paper-register .paper-entry thead{clip-path:inset(50%);width:1px;height:1px;position:absolute;overflow:hidden}.paper-register .paper-entry tr{margin-bottom:16px}.paper-register .paper-entry :-webkit-any(th[scope=row],td){box-sizing:border-box;text-align:left;width:100%;min-width:0;max-width:100%;display:block}.paper-register .paper-entry :-moz-any(th[scope=row],td){box-sizing:border-box;text-align:left;width:100%;min-width:0;max-width:100%;display:block}.paper-register .paper-entry :is(th[scope=row],td){box-sizing:border-box;text-align:left;width:100%;min-width:0;max-width:100%;display:block}.paper-register .paper-entry td:before{content:attr(data-label);color:var(--text-secondary);margin-bottom:6px;font-size:.8rem;font-weight:600;display:block}.paper-register .paper-entry input{width:100%;min-width:0}}.school-admin-toolbar.attendance-recording-filters{grid-template-columns:repeat(auto-fit,minmax(min(100%,180px),1fr));min-width:0}.attendance-recording-filters label{min-width:0}.attendance-recording-filters input,.attendance-recording-filters select{box-sizing:border-box;min-width:0;max-width:100%;min-height:44px}.attendance-recording-filters :focus-visible{outline:3px solid var(--workflow-focus,#548eff);outline-offset:3px}.report-remarks{min-width:0;max-width:100%;color:var(--text-primary)}.remark-learners{grid-template-columns:repeat(auto-fit,minmax(min(100%,320px),1fr));gap:16px;display:grid}.report-remarks :-webkit-any(article,details,fieldset){box-sizing:border-box;border:1px solid var(--border);background:var(--surface);border-radius:8px;min-width:0;max-width:100%;margin-block-start:12px;margin-block-end:12px;padding:16px}.report-remarks :-moz-any(article,details,fieldset){box-sizing:border-box;border:1px solid var(--border);background:var(--surface);border-radius:8px;min-width:0;max-width:100%;margin-block-start:12px;margin-block-end:12px;padding:16px}.report-remarks :is(article,details,fieldset){box-sizing:border-box;border:1px solid var(--border);background:var(--surface);border-radius:8px;min-width:0;max-width:100%;margin-block-start:12px;margin-block-end:12px;padding:16px}.report-remarks :-webkit-any(p,dd,summary,h4,label,small){overflow-wrap:anywhere}.report-remarks :-moz-any(p,dd,summary,h4,label,small){overflow-wrap:anywhere}.report-remarks :is(p,dd,summary,h4,label,small){overflow-wrap:anywhere}.report-remarks label{cursor:pointer;flex-wrap:wrap;align-items:center;gap:8px;min-height:44px;margin-block-start:8px;margin-block-end:8px;display:flex}.report-remarks :-webkit-any(select,textarea,input:not([type=checkbox])){box-sizing:border-box;width:100%;min-width:0;max-width:100%;min-height:44px;color:var(--text-primary);background:var(--input-background)}.report-remarks :-moz-any(select,textarea,input:not([type=checkbox])){box-sizing:border-box;width:100%;min-width:0;max-width:100%;min-height:44px;color:var(--text-primary);background:var(--input-background)}.report-remarks :is(select,textarea,input:not([type=checkbox])){box-sizing:border-box;width:100%;min-width:0;max-width:100%;min-height:44px;color:var(--text-primary);background:var(--input-background)}.report-remarks :-webkit-any(button,summary){white-space:normal;cursor:pointer;max-width:100%;min-height:44px;color:var(--brand-primary)}.report-remarks :-moz-any(button,summary){white-space:normal;cursor:pointer;max-width:100%;min-height:44px;color:var(--brand-primary)}.report-remarks :is(button,summary){white-space:normal;cursor:pointer;max-width:100%;min-height:44px;color:var(--brand-primary)}.report-remarks :-webkit-any(button,input,select,textarea,summary):focus-visible{outline:3px solid var(--focus-ring);outline-offset:2px}.report-remarks :-moz-any(button,input,select,textarea,summary):focus-visible{outline:3px solid var(--focus-ring);outline-offset:2px}.report-remarks :is(button,input,select,textarea,summary):focus-visible{outline:3px solid var(--focus-ring);outline-offset:2px}.remark-actions{flex-wrap:wrap;gap:8px;display:flex}.remark-interest-options{max-height:240px;overflow-y:auto}.remark-choice-text{width:100%;color:var(--text-secondary)}.report-remarks dd{margin-inline-start:0}@media print{.report-remarks{display:none!important}}.remark-learners{align-items:start}.remark-review h4{margin:0}.report-remarks .remark-review-toggle{text-align:left;overflow-wrap:anywhere;background:0 0;border:0;align-items:center;gap:12px;width:100%;min-width:0;min-height:44px;padding:8px;display:flex}.remark-review-summary{flex-direction:column;flex:1;gap:4px;min-width:0;display:flex}.remark-review-chevron{flex:none;transform:rotate(0)}.remark-review-toggle[aria-expanded=true] .remark-review-chevron{transform:rotate(180deg)}.remark-review-content{min-width:0;max-width:100%}.remark-review-result:empty{display:none}.remark-review .remark-actions{margin-top:16px}.remark-review [hidden]{display:none!important}@media (max-width:480px){.remark-review .remark-actions{flex-direction:column;align-items:stretch}}@media (prefers-reduced-motion:reduce){.remark-review-toggle,.remark-review-chevron{transition:none;animation:none}}.remark-single-review{min-width:0;max-width:100%}.remark-review-navigation{flex-wrap:wrap;align-items:center;gap:8px 12px;max-width:100%;display:flex}.remark-review-navigation [role=status]{overflow-wrap:anywhere;min-width:0}.remark-review-announcement{clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;padding:0;position:absolute;overflow:hidden}@media (max-width:480px){.remark-review-navigation{flex-direction:column;align-items:stretch}}.remark-review-navigation button{white-space:normal;max-width:100%;min-height:44px;color:var(--brand-primary)}.remark-review-navigation button:focus-visible{outline:3px solid var(--focus-ring);outline-offset:2px}@media print{.remark-review-navigation{display:none!important}}.remark-review-navigation.assessment-learner-navigation{box-sizing:border-box;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:8px;width:100%;min-width:0;display:grid}.assessment-learner-navigation>button{box-sizing:border-box;white-space:nowrap;width:64px;min-width:64px;height:44px;padding:6px 8px}.assessment-learner-navigation>[role=status]{text-align:center;overflow-wrap:anywhere;-webkit-line-clamp:2;-webkit-box-orient:vertical;min-width:0;max-height:2.6em;line-height:1.3;display:-webkit-box;overflow:hidden}.assessment-table tr[hidden]{display:none!important}.assessment-pagination{grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:8px;max-width:100%;margin-top:8px;display:grid}.assessment-pagination [role=status]{text-align:center;overflow-wrap:anywhere;min-width:0}.assessment-pagination button{white-space:normal;max-width:100%;min-height:44px}.assessment-pagination button:focus-visible{outline:3px solid var(--focus-ring);outline-offset:2px}@media (max-width:320px){.assessment-pagination{grid-template-columns:1fr}}@media print{.assessment-pagination{display:none!important}}.teacher-professional-profile{min-width:0;max-width:100%}.teacher-professional-profile .school-admin-panel{margin-block-start:18px;margin-block-end:18px}.teacher-profile-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;display:grid}.teacher-professional-profile label{gap:6px;min-width:0;margin-block-start:10px;margin-block-end:10px;display:grid}.teacher-professional-profile input,.teacher-professional-profile select,.teacher-professional-profile textarea{box-sizing:border-box;width:100%;min-width:0;max-width:100%}.teacher-professional-profile input[readonly]{background:var(--workflow-muted,#f2f5f8);color:var(--workflow-secondary-text,#43546b)}.teacher-professional-profile button{align-items:center;gap:6px;margin:4px;display:inline-flex}.teacher-passport{object-fit:cover;border-radius:8px;width:100px;height:130px}.teacher-professional-profile dl{overflow-wrap:anywhere}.teacher-professional-profile fieldset{min-width:0}@media (max-width:767px){.teacher-profile-grid{grid-template-columns:minmax(0,1fr)}}.student-identity-card{box-sizing:border-box;border:1px solid var(--workflow-border,#173d35);background:var(--workflow-surface,#fff);width:100%;max-width:105mm;color:var(--workflow-text,#173d35);break-inside:avoid;overflow-wrap:anywhere;border-radius:3mm;padding:3mm;font-size:10px}.student-identity-card header{border-bottom:1px solid var(--workflow-border,#d3e2da);align-items:center;gap:2mm;padding-bottom:2mm;font-size:14px;display:flex}.student-identity-card header img{object-fit:contain;width:10mm;height:10mm}.student-card-body{grid-template-columns:20mm minmax(0,1fr) 20mm;align-items:center;gap:2mm;display:grid}.student-card-photo{object-fit:cover;width:20mm;height:25mm}.student-card-qr{width:20mm;height:20mm}.student-card-body h3{margin:2mm 0;font-size:12px}.student-card-body dl{margin:0}.student-card-body dt{font-size:8px}.student-card-body dd{margin:0 0 1mm;font-weight:700}.student-identity-card footer{border-top:1px solid var(--workflow-border,#d3e2da);justify-content:space-between;gap:2mm;padding-top:2mm;font-size:8px;display:flex}.student-cards-preview{flex-wrap:wrap;gap:12px;min-width:0;max-width:100%;display:flex}.student-academic-record{background:var(--workflow-surface,white);color:var(--workflow-text,#172820);overflow-wrap:anywhere;max-width:100%;padding:16px}.student-academic-record table{border-collapse:collapse;width:100%;font-size:11px}.student-academic-record th,.student-academic-record td{border:1px solid var(--workflow-border,#aebdb5);text-align:left;padding:5px}.student-academic-record h2{font-size:20px}.student-academic-record h3{font-size:15px}@media print{@page{size:A4 portrait;margin:10mm}body{color:#000;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;background:#fff;margin:0}.student-cards-preview{grid-template-columns:1fr;gap:5mm;display:grid}.student-identity-card{break-inside:avoid;-webkit-print-color-adjust:exact;-moz-print-color-adjust:exact;print-color-adjust:exact;width:105mm;max-width:105mm}.student-academic-record{padding:0}.student-academic-record thead{display:table-header-group}.student-academic-record tr{break-inside:avoid}}.student-card-body .permanent-student-id{font-variant-numeric:tabular-nums;letter-spacing:.02em;margin:1mm 0 2mm;font-size:13px}.bece-pagination{grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:8px;max-width:100%;margin-block-start:12px;margin-block-end:12px;display:grid}.bece-pagination [role=status]{text-align:center;overflow-wrap:anywhere;min-width:0}.bece-pagination button{max-width:100%;min-height:44px}.bece-pagination button:focus-visible{outline:3px solid var(--focus-ring);outline-offset:2px}@media (max-width:320px){.bece-pagination{grid-template-columns:1fr}}@media print{.bece-pagination{display:none!important}}.school-overview{min-width:0;color:var(--text-primary);gap:24px;display:grid}.school-overview *{box-sizing:border-box}.school-overview :-webkit-any(h2,h3,p){overflow-wrap:anywhere}.school-overview :-moz-any(h2,h3,p){overflow-wrap:anywhere}.school-overview :is(h2,h3,p){overflow-wrap:anywhere}.school-overview button{border:1px solid var(--border);background:var(--surface-secondary);min-width:0;max-width:100%;min-height:44px;color:var(--text-primary);font:inherit;cursor:pointer;white-space:normal;overflow-wrap:anywhere;border-radius:8px;justify-content:center;align-items:center;gap:8px;padding:10px 14px;font-size:.8125rem;font-weight:600;display:inline-flex}.school-overview button:hover{border-color:var(--brand-primary)}.overview-welcome{justify-content:space-between;align-items:center;gap:24px;padding:8px 0;display:flex}.overview-welcome>div{min-width:0;max-width:70%}.overview-welcome h2{margin:6px 0 10px;font-size:max(1.3rem,min(2vw,1.75rem));line-height:1.3}.overview-welcome p{color:var(--text-secondary);margin:0;font-size:.875rem;line-height:1.6}.overview-welcome .overview-kicker{text-transform:uppercase;letter-spacing:.1em;color:var(--text-secondary);font-size:.72rem;font-weight:700}.overview-welcome .overview-date{align-items:center;gap:8px;margin-top:12px;font-size:.8rem;display:flex}.school-overview .overview-primary{background:var(--brand-primary);color:var(--on-primary);border-color:var(--brand-primary);flex-shrink:0}.school-overview .overview-primary:hover{background:var(--brand-primary-hover)}.overview-stats{grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;display:grid}.overview-stat{background:var(--surface);border:1px solid var(--border);border-radius:12px;align-items:flex-start;gap:12px;min-width:0;padding:20px;display:flex}.overview-stat>div{min-width:0}.overview-stat-icon,.overview-avatar{background:var(--surface-secondary);width:40px;height:40px;color:var(--brand-primary);border-radius:10px;flex:0 0 40px;justify-content:center;align-items:center;display:flex}.overview-stat h3{color:var(--text-secondary);margin:0;font-size:.78rem;font-weight:600;line-height:1.5}.overview-stat strong{font-variant-numeric:tabular-nums;overflow-wrap:anywhere;margin:6px 0;font-size:1.9rem;line-height:1.3;display:block}.overview-stat p{color:var(--text-secondary);margin:0;font-size:.72rem;line-height:1.5}.overview-insights{grid-template-columns:minmax(0,1.6fr) minmax(0,1fr);gap:20px;display:grid}.overview-operations{grid-template-columns:minmax(0,1.3fr) minmax(0,1fr) minmax(0,1fr);gap:20px;display:grid}.overview-panel{border:1px solid var(--border);background:var(--surface);border-radius:12px;min-width:0;padding:22px}.overview-panel>header{flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:12px;margin-bottom:22px;display:flex}.overview-panel>header>div{flex:130px;min-width:0}.overview-panel h3{margin:0 0 6px;font-size:1rem;line-height:1.4}.overview-panel header p,.overview-empty{color:var(--text-secondary);margin:0;font-size:.8rem;line-height:1.6}.overview-column-scroll{overscroll-behavior-x:contain;min-width:0;max-width:100%;padding:6px 0 12px;overflow-x:auto}.overview-column-chart{padding-top:24px;position:relative}.overview-column-axis{pointer-events:none;height:180px;color:var(--text-secondary);font-size:.7rem;position:absolute;top:24px;left:0;right:0}.overview-column-axis>div{border-top:1px solid var(--border);margin-left:48px;position:absolute;left:0;right:0}.overview-column-axis span{font-variant-numeric:tabular-nums;position:absolute;right:calc(100% + 8px);transform:translateY(-50%)}.overview-columns{justify-content:center;gap:12px;margin:0 0 0 48px;padding:0;list-style:none;display:grid;position:relative}.overview-columns li{text-align:center;min-width:0}.overview-column-slot{justify-content:center;align-items:flex-end;height:180px;display:flex}.overview-column{background:var(--brand-primary);border-radius:4px 4px 0 0;width:50%;max-width:32px;position:relative}.overview-column strong{color:var(--text-primary);font-variant-numeric:tabular-nums;padding-bottom:4px;font-size:.75rem;position:absolute;bottom:100%;left:50%;transform:translate(-50%)}.overview-column-label{color:var(--text-secondary);overflow-wrap:anywhere;padding-top:12px;font-size:.75rem;line-height:1.4;display:block}.overview-recent{gap:16px;margin:0;padding:0;list-style:none;display:grid}.overview-recent li{align-items:center;gap:10px;min-width:0;display:flex}.overview-recent li>div{flex:1;min-width:0}.overview-recent strong{overflow-wrap:anywhere;font-size:.8125rem;display:block}.overview-recent small,.overview-recent time{color:var(--text-secondary);overflow-wrap:anywhere;font-size:.72rem}.overview-avatar{flex-basis:32px;width:32px;height:32px;font-size:.8rem}.overview-attendance{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin:0 0 20px;display:grid}.overview-attendance>div{background:var(--surface-secondary);border-radius:8px;min-width:0;padding:14px}.overview-attendance dt{text-transform:capitalize;color:var(--text-secondary);font-size:.75rem}.overview-attendance dd{overflow-wrap:anywhere;margin:5px 0 0;font-size:1.4rem;font-weight:700}.overview-alerts{color:var(--text-secondary);margin:0 0 16px;padding-left:18px}.overview-alerts:empty{display:none}.overview-alerts li{margin-bottom:8px}.overview-quick{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin-top:20px;display:grid}.overview-notice{border:1px solid var(--border);border-left:4px solid var(--brand-accent);background:var(--surface);border-radius:8px;flex-wrap:wrap;align-items:center;gap:12px;padding:18px;display:flex}.overview-notice p{flex:200px;margin:0;font-size:.85rem;line-height:1.6}.overview-teachers{border:1px solid var(--border);background:var(--surface);border-radius:12px;min-width:0;padding:16px}.overview-teachers summary{cursor:pointer;align-content:center;min-height:44px;font-weight:600}.overview-schedule{min-width:0}.school-overview :-webkit-any(.panel,.metric-card,.metric-chart,.schedule-summary,.schedule-event){background:var(--surface);border-color:var(--border);color:var(--text-primary)}.school-overview :-moz-any(.panel,.metric-card,.metric-chart,.schedule-summary,.schedule-event){background:var(--surface);border-color:var(--border);color:var(--text-primary)}.school-overview :is(.panel,.metric-card,.metric-chart,.schedule-summary,.schedule-event){background:var(--surface);border-color:var(--border);color:var(--text-primary)}.school-overview :is(.dashboard-metrics,.scheduling,.metric-card>strong){color:var(--text-primary)}.school-overview :is(.metric-card p,.metric-card h3,.term-notices){color:var(--text-secondary)}.school-overview .metric-track,.school-overview .metric-skeleton{background:var(--surface-secondary)}.school-overview [role=alert]{background:var(--danger-surface);color:var(--danger-text);overflow-wrap:anywhere;border-radius:8px;padding:16px}.school-overview [role=status]{color:var(--text-secondary)}@media (max-width:1199px){.overview-stats,.overview-operations{grid-template-columns:repeat(2,minmax(0,1fr))}.overview-operations>.overview-panel:last-child{grid-column:1/-1}.overview-insights{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width:600px){.overview-column{max-width:24px}.school-overview{gap:16px}.overview-welcome{flex-direction:column;align-items:flex-start;gap:16px}.overview-welcome>div{max-width:100%}.overview-stats,.overview-insights,.overview-operations{grid-template-columns:minmax(0,1fr)}.overview-panel,.overview-stat{padding:18px}.overview-operations>.overview-panel:last-child{grid-column:auto}}@media (forced-colors:active){.overview-column{background:highlight;border:1px solid canvastext}}@media print{.school-overview :-webkit-any(.overview-panel,.overview-stat,.overview-teachers,.panel,.metric-card,.metric-chart){color:#000!important;background:#fff!important}.school-overview :-moz-any(.overview-panel,.overview-stat,.overview-teachers,.panel,.metric-card,.metric-chart){color:#000!important;background:#fff!important}.school-overview :is(.overview-panel,.overview-stat,.overview-teachers,.panel,.metric-card,.metric-chart){color:#000!important;background:#fff!important}.school-overview button{display:none}}.school-overview .calendar-day,.school-overview .schedule-current{background:var(--surface-secondary);color:var(--text-primary);border-color:var(--border)}.overview-approval-status{clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.overview-approval-error{min-width:0;max-width:100%}.overview-date time{overflow-wrap:anywhere;min-width:0}.overview-date svg{flex-shrink:0}.page-title-actions{align-items:center;gap:10px;display:flex}.secondary-action-button{border:1px solid var(--line);background:var(--workflow-surface,white);color:var(--blue);border-radius:9px;padding:10px 13px;font-weight:800}.import-loading{border:1px solid var(--line);background:var(--workflow-surface,white);color:var(--muted);text-align:center;border-radius:9px;margin-bottom:20px;padding:16px;font-size:.82rem}@media (max-width:700px){.page-title-actions{flex-direction:column;align-items:stretch;width:100%}}.results-paged-table{min-width:0;max-width:100%}.results-navigation{flex-wrap:wrap;align-items:center;gap:8px 12px;max-width:100%;margin-top:8px;display:flex}.results-navigation button{white-space:normal;max-width:100%;min-height:44px;color:var(--brand-primary)}.results-navigation button:focus-visible{outline:3px solid var(--focus-ring);outline-offset:2px}@media (max-width:480px){.results-navigation{flex-direction:column;align-items:stretch}}@media print{.results-navigation,.results-class-summary,.results-controls{display:none!important}}@media screen{.results-paged-table .results-subject-row-hidden{display:none}}.results-refresh{min-height:44px}.results-refresh:focus-visible{outline:3px solid var(--focus-ring);outline-offset:2px}.results-navigation.results-navigation-horizontal{box-sizing:border-box;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:8px;width:100%;min-width:0;display:grid}.results-navigation-horizontal>button{box-sizing:border-box;white-space:nowrap;width:64px;min-width:64px;height:44px;padding:6px 8px}.results-navigation-horizontal>[role=status]{text-align:center;overflow-wrap:anywhere;-webkit-line-clamp:2;-webkit-box-orient:vertical;min-width:0;max-height:2.6em;line-height:1.3;display:-webkit-box;overflow:hidden}.class-summary-pagination{min-width:0;max-width:100%}.class-summary-navigation{flex-wrap:wrap;align-items:center;gap:8px 12px;max-width:100%;margin-top:8px;display:flex}.class-summary-navigation button{white-space:normal;max-width:100%;min-height:44px}.class-summary-navigation button:focus-visible{outline:3px solid var(--workflow-focus,#275de7);outline-offset:2px}.signoff-image-review{min-width:0;max-width:100%;color:var(--text-primary)}.signoff-review-previews{grid-template-columns:repeat(auto-fit,minmax(min(100%,220px),1fr));gap:12px;display:grid}.signoff-review-previews figure{min-width:0;margin:0}.signoff-review-previews figcaption{overflow-wrap:anywhere;margin-bottom:6px}.signoff-preview{border:1px solid var(--border);justify-content:center;align-items:center;height:150px;display:flex;overflow:hidden}.signoff-preview.checkerboard{background:repeating-conic-gradient(#fff 0% 25%,#ddd 0% 50%) 0 0/16px 16px}.signoff-preview.paper{background:#fff}.signoff-preview.grey{background:#eee}.signoff-preview img{object-fit:contain;background:0 0;width:auto;max-width:100%;height:auto;max-height:100%}.signoff-image-review label{flex-wrap:wrap;align-items:center;gap:8px;min-height:44px;margin-block-start:12px;margin-block-end:12px;display:flex}.signoff-image-review input[type=range]{width:100%;min-height:44px}.signoff-review-actions{flex-wrap:wrap;gap:8px;display:flex}.signoff-review-actions button{white-space:normal;max-width:100%;min-height:44px}.signoff-image-review :-webkit-any(button,input):focus-visible{outline:3px solid var(--focus-ring);outline-offset:2px}.signoff-image-review :-moz-any(button,input):focus-visible{outline:3px solid var(--focus-ring);outline-offset:2px}.signoff-image-review :is(button,input):focus-visible{outline:3px solid var(--focus-ring);outline-offset:2px}.signoff-review-warnings{overflow-wrap:anywhere}@media print{.signoff-image-review{display:none!important}}.school-profile-panel{min-width:0;margin-bottom:24px}.school-profile-fields{border:0;grid-template-columns:repeat(auto-fit,minmax(min(100%,260px),1fr));gap:16px;min-width:0;margin:0;padding:0;display:grid}.school-profile-fields label{flex-direction:column;gap:6px;min-width:0;display:flex}.school-profile-fields input{box-sizing:border-box;width:100%;min-width:0}.school-profile-help{grid-column:1/-1}.school-profile-image{flex-direction:column;gap:10px;min-width:0;display:flex}.school-profile-image img{object-fit:contain;border:1px solid var(--workflow-border,#ddd);background:#fff;width:140px;height:90px}:root{--eduhub-focus:#1d4ed8}.dash-sidebar,.dash-drawer-panel{--eduhub-focus:#a9c3ff}:root :-webkit-any(button,a[href],[role=button],input,select,textarea,[tabindex]){-webkit-tap-highlight-color:transparent}:root :-moz-any(button,a[href],[role=button],input,select,textarea,[tabindex]){-webkit-tap-highlight-color:transparent}:root :is(button,a[href],[role=button],input,select,textarea,[tabindex]){-webkit-tap-highlight-color:transparent}:root :-webkit-any(button,a[href],[role=button],input,select,textarea,[tabindex]):focus{outline:3px solid var(--eduhub-focus);outline-offset:3px}:root :-moz-any(button,a[href],[role=button],input,select,textarea,[tabindex]):focus{outline:3px solid var(--eduhub-focus);outline-offset:3px}:root :is(button,a[href],[role=button],input,select,textarea,[tabindex]):focus{outline:3px solid var(--eduhub-focus);outline-offset:3px}:root :-webkit-any(button,a[href],[role=button],input,select,textarea,[tabindex]):focus-visible{outline:3px solid var(--eduhub-focus);outline-offset:3px}:root :-moz-any(button,a[href],[role=button],input,select,textarea,[tabindex]):focus-visible{outline:3px solid var(--eduhub-focus);outline-offset:3px}:root :is(button,a[href],[role=button],input,select,textarea,[tabindex]):focus-visible{outline:3px solid var(--eduhub-focus);outline-offset:3px}:root :-webkit-any(button,a[href],[role=button],input,select,textarea,[tabindex]):focus:not(:focus-visible){outline:none}:root :-moz-any(button,a[href],[role=button],input,select,textarea,[tabindex]):focus:not(:focus-visible){outline:none}:root :is(button,a[href],[role=button],input,select,textarea,[tabindex]):focus:not(:focus-visible){outline:none}@media (forced-colors:active){:root,.dash-sidebar,.dash-drawer-panel{--eduhub-focus:Highlight}}.eduhub-logo{object-fit:contain;flex-shrink:1;width:216px;max-width:100%;height:auto;display:block}.eduhub-icon{object-fit:contain;flex:none;width:44px;height:44px;display:block}.eduhub-wordmark{color:#fff;white-space:nowrap;font-size:1.35rem;font-weight:800;line-height:1.2}.eduhub-wordmark .eduhub-hub{color:#d9a521}.login-card>.eduhub-logo{margin-bottom:24px}.status-screen>.eduhub-logo,.activation-status>.eduhub-logo{margin-bottom:20px}.auth-shell,.status-screen,.activation-status{background:var(--canvas,#f5f7fb);color:var(--ink,#17233c)}.auth-brand{min-width:0;max-width:100%}.auth-brand .eduhub-icon{width:48px;height:48px}.auth-brand .eduhub-wordmark{display:block}.primary:hover:not(:disabled){background:var(--blue-hover,#2452c7)}.landing{background:var(--canvas,#f5f7fb);color:var(--ink,#17233c)}.landing .landing-brand{min-width:0;max-width:100%;padding:0}.landing-brand .eduhub-logo{width:192px}.landing .landing-primary{background:var(--blue,#2f64e9);border-color:var(--blue,#2f64e9)}.landing .landing-primary:hover{background:var(--blue-hover,#2452c7);border-color:var(--blue-hover,#2452c7)}.landing .landing-mark{background:0 0;border-radius:0;width:64px;height:64px;padding:0}@media (max-width:760px){.landing-brand .eduhub-logo{width:156px}}:root{--theme-option-selected:#e8efff;--theme-option-blue:#2454c7;--page:#f5f7fb;--surface:#fff;--surface-secondary:#f8fafc;--surface-elevated:#fff;--text-primary:#17233c;--text-secondary:#667085;--border:#e3e8ef;--brand-primary:#2f64e9;--brand-primary-hover:#2454c7;--brand-accent:#d9a521;--on-primary:#fff;--focus-ring:#2454c7;--sidebar-surface:#16345c;--sidebar-hover:#23466f;--sidebar-text:#fff;--sidebar-muted:#c5d0e2;--sidebar-active:#2454c7;--dashboard-color-scheme:light;--danger-surface:#fff1f0;--scrollbar-thumb:#7890ad;--scrollbar-track:transparent;--danger-text:#9f2525}:root[data-theme=dark]{--theme-option-selected:#243653;--theme-option-blue:#9bb5ff;--page:#0b1220;--surface:#111c2e;--surface-secondary:#17243a;--surface-elevated:#1b2940;--text-primary:#f7f9fc;--text-secondary:#a7b2c5;--border:#2a3a52;--brand-primary:#5b82f3;--brand-primary-hover:#7396f6;--on-primary:#0b1220;--focus-ring:#9bb5ff;--sidebar-surface:#101e34;--sidebar-hover:#1b3554;--sidebar-active:#2454c7;--dashboard-color-scheme:dark;--danger-surface:#382027;--scrollbar-thumb:#526985;--scrollbar-track:transparent;--danger-text:#ffb9b2}html{background:var(--page);color-scheme:var(--dashboard-color-scheme)}body{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}.dash-layout{background:var(--page);color:var(--text-primary);color-scheme:var(--dashboard-color-scheme)}.dash-header{background:var(--surface);border-bottom:1px solid var(--border)}.dash-header .eduhub-wordmark{color:var(--text-primary)}.dash-school-context{color:var(--text-secondary)}.dash-sidebar,.dash-drawer-panel{background:var(--sidebar-surface);color:var(--sidebar-text)}.dash-sidebar nav a,.dash-drawer-panel nav a,.dash-group-toggle{color:var(--sidebar-muted)}.dash-sidebar nav a:hover,.dash-drawer-panel nav a:hover,.dash-group-toggle:hover{background:var(--sidebar-hover);color:var(--sidebar-text)}.dash-sidebar nav a[aria-current],.dash-drawer-panel nav a[aria-current]{background:var(--sidebar-active);color:var(--sidebar-text);box-shadow:none}.dash-nav-group[data-active]>.dash-group-toggle{background:var(--sidebar-hover);box-shadow:none}.dash-profile{border-color:var(--sidebar-hover)}.dash-profile button,.dash-close,.dash-collapse{background:var(--sidebar-hover);color:var(--sidebar-text)}.dash-menu,.dash-header-controls .notification-bell-button,.dash-theme-toggle{background:var(--surface);color:var(--text-primary);border:1px solid var(--border)}.dash-theme{flex:0 0 44px;min-width:0;position:relative}.dash-theme-toggle{cursor:pointer;border-radius:10px;justify-content:center;align-items:center;width:44px;height:44px;display:flex}.dash-theme-options{z-index:70;box-sizing:border-box;border:1px solid var(--border);background:var(--surface-elevated);width:180px;max-width:calc(100vw - 32px);color:var(--text-primary);box-shadow:var(--workflow-shadow,0 8px 24px #0000001f);border-radius:12px;margin:0;padding:12px;position:absolute;top:50px;right:0}.dash-theme-options legend{background:var(--surface-elevated);padding:0 5px;font-size:.8rem;font-weight:700}.dash-theme-options label{box-sizing:border-box;cursor:pointer;border:0;border-radius:8px;align-items:center;gap:10px;width:100%;min-height:44px;padding:8px;display:flex}.dash-theme-options label:hover{background:var(--surface-secondary)}.dash-theme-options label[data-selected]{background:var(--theme-option-selected);color:var(--theme-option-blue);font-weight:700}:root .dash-theme-options input:focus-visible{outline:3px solid var(--focus-ring);outline-offset:3px}.dash-theme-options label input{cursor:pointer;flex-shrink:0;margin:0}.dash-theme-options input{accent-color:var(--brand-primary)}.dash-layout :-webkit-any(a,button,input,select,textarea,summary):focus-visible{outline:3px solid var(--focus-ring);outline-offset:3px}.dash-layout :-moz-any(a,button,input,select,textarea,summary):focus-visible{outline:3px solid var(--focus-ring);outline-offset:3px}.dash-layout :is(a,button,input,select,textarea,summary):focus-visible{outline:3px solid var(--focus-ring);outline-offset:3px}.dash-sidebar :focus-visible{outline-color:var(--sidebar-muted)!important}.dash-drawer :focus-visible{outline-color:var(--sidebar-muted)!important}.dash-layout .notification-dropdown,.dash-layout .notification-card,.dash-layout .notification-dropdown>button{background:var(--surface-elevated);color:var(--text-primary);border-color:var(--border)}.dash-main>.platform-state,.dash-main>.auth-error{border:1px solid var(--border);background:var(--surface);color:var(--text-primary);border-radius:12px;padding:20px}.dash-main>.auth-error{background:var(--danger-surface);color:var(--danger-text)}.dash-main>:not(.school-overview):not(.dash-page-title):not(.platform-state):not(.auth-error):not(.success-message){border-radius:12px}:root:not([data-theme=dark]) .dash-main>:not(.school-overview):not(.dash-page-title):not(.platform-state):not(.auth-error):not(.success-message){color:var(--ink,#17233c);background:var(--canvas,#f5f7fb)}@media (max-width:1023px){.dash-header-controls{flex-wrap:wrap;gap:6px}.dash-theme-options{position:fixed;top:74px;right:16px}}@media (prefers-reduced-motion:no-preference){.dash-theme-toggle{transition:background-color .15s}.overview-panel{transition:border-color .15s}}@media (forced-colors:active){.dash-layout{--focus-ring:Highlight}.dash-theme-options{border-color:canvastext}}@media print{:root,:root[data-theme=dark]{--page:#fff;--surface:#fff;--surface-secondary:#fff;--surface-elevated:#fff;--text-primary:#000;--text-secondary:#333;--border:#ccc;--on-primary:#fff;--brand-primary:#16345c;--lightningcss-light:initial!important;--lightningcss-dark: !important;color-scheme:light!important}html,body,.dash-layout,.dash-main,.report-card,.payslip{color:#000!important;--lightningcss-light:initial!important;--lightningcss-dark: !important;color-scheme:light!important;background:#fff!important}.dash-theme{display:none!important}}:root{--surface-muted:#eef2f7;--text-disabled:#526077;--input-background:#fff;--control-border:#8b9ab1;--table-header:#edf2f8;--table-row-hover:#f7f9ff;--table-row-selected:#e8efff;--backdrop:#071225a8;--shadow:0 8px 24px #0000001f;--success-surface:#e5f7ef;--success-text:#147551;--success-border:#c6eadb;--warning-surface:#fff7e5;--warning-text:#795014;--warning-border:#9a6b22;--danger-border:#c34747;--info-surface:#e8efff;--info-text:#2454c7;--info-border:#7898d6;--accent-surface:#f0eaff;--accent-text:#655185;--link:#2454c7;--link-hover:#173fae;--tooltip-surface:#fff;--tooltip-text:#17233c;--skeleton:linear-gradient(100deg,#e9eef3,#f5f7fa,#e9eef3);--chart-series-1:#245e91;--chart-series-2:#347e70;--chart-series-3:#a07130;--chart-series-4:#72649b}:root[data-theme=dark]{--surface-muted:#20304a;--text-disabled:#afbbcf;--input-background:#101c30;--control-border:#7386a2;--table-header:#1b2940;--table-row-hover:#1c2d48;--table-row-selected:#263d61;--backdrop:#030812c7;--shadow:0 12px 32px #0006;--success-surface:#14352e;--success-text:#9fe3c5;--success-border:#539b7d;--warning-surface:#3b301c;--warning-text:#f4d48b;--warning-border:#ac8b42;--danger-border:#d88787;--info-surface:#1b3152;--info-text:#adc9ff;--info-border:#7298ce;--accent-surface:#302641;--accent-text:#d5bdf4;--link:#9bb5ff;--link-hover:#c5d5ff;--tooltip-surface:#1b2940;--tooltip-text:#f7f9fc;--skeleton:linear-gradient(100deg,#17243a,#263954,#17243a);--chart-series-1:#789dff;--chart-series-2:#6ccaaa;--chart-series-3:#e2ba58;--chart-series-4:#ba9beb}:root[data-theme=dark] .dash-layout{--ink:var(--text-primary);--muted:var(--text-secondary);--line:var(--border);--canvas:var(--page);--blue:var(--link);--blue-hover:var(--link-hover);--eduhub-focus:var(--focus-ring);--workflow-surface:var(--surface);--workflow-secondary:var(--surface-secondary);--workflow-elevated:var(--surface-elevated);--workflow-muted:var(--surface-muted);--workflow-input:var(--input-background);--workflow-text:var(--text-primary);--workflow-secondary-text:var(--text-secondary);--workflow-disabled-text:var(--text-disabled);--workflow-border:var(--border);--workflow-control-border:var(--control-border);--workflow-link:var(--link);--workflow-focus:var(--focus-ring);--workflow-table-header:var(--table-header);--workflow-row-hover:var(--table-row-hover);--workflow-row-selected:var(--table-row-selected);--workflow-shadow:var(--shadow);--workflow-backdrop:var(--backdrop);--workflow-skeleton:var(--skeleton);--workflow-success-surface:var(--success-surface);--workflow-success-text:var(--success-text);--workflow-success-border:var(--success-border);--workflow-warning-surface:var(--warning-surface);--workflow-warning-text:var(--warning-text);--workflow-warning-border:var(--warning-border);--workflow-danger-surface:var(--danger-surface);--workflow-danger-text:var(--danger-text);--workflow-danger-border:var(--danger-border);--workflow-info-surface:var(--info-surface);--workflow-info-text:var(--info-text);--workflow-accent-surface:var(--accent-surface);--workflow-accent-text:var(--accent-text);--workflow-on-primary:var(--on-primary);--workflow-on-strong:#fff;--workflow-grid:repeating-linear-gradient(to bottom,var(--border) 0 1px,transparent 1px 45px);--workflow-chart-1:var(--chart-series-1);--workflow-chart-2:var(--chart-series-2);--workflow-chart-3:var(--chart-series-3);--workflow-chart-4:var(--chart-series-4)}:where(:root[data-theme=dark] .dash-layout) :-webkit-any(input,textarea,select,button){background-color:var(--input-background);color:var(--text-primary);border-color:var(--control-border);--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}:where(:root[data-theme=dark] .dash-layout) :-moz-any(input,textarea,select,button){background-color:var(--input-background);color:var(--text-primary);border-color:var(--control-border);--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}:where(:root[data-theme=dark] .dash-layout) :is(input,textarea,select,button){background-color:var(--input-background);color:var(--text-primary);border-color:var(--control-border);--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}:where(:root[data-theme=dark] .dash-layout) button:where(:not(:disabled):hover){background-color:var(--surface-secondary)}:root[data-theme=dark] .dash-layout :-webkit-any(input,textarea,select){accent-color:var(--brand-primary)}:root[data-theme=dark] .dash-layout :-moz-any(input,textarea,select){accent-color:var(--brand-primary)}:root[data-theme=dark] .dash-layout :is(input,textarea,select){accent-color:var(--brand-primary)}:root[data-theme=dark] .dash-layout :-webkit-any(input,textarea)::placeholder{color:var(--text-secondary);opacity:1}:root[data-theme=dark] .dash-layout :-moz-any(input,textarea)::placeholder{color:var(--text-secondary);opacity:1}:root[data-theme=dark] .dash-layout :is(input,textarea)::placeholder{color:var(--text-secondary);opacity:1}:root[data-theme=dark] .dash-layout :-webkit-any(input,select,textarea,button):disabled{color:var(--text-disabled);background-color:var(--surface-muted);border-color:var(--border);opacity:1}:root[data-theme=dark] .dash-layout :-moz-any(input,select,textarea,button):disabled{color:var(--text-disabled);background-color:var(--surface-muted);border-color:var(--border);opacity:1}:root[data-theme=dark] .dash-layout :is(input,select,textarea,button):disabled{color:var(--text-disabled);background-color:var(--surface-muted);border-color:var(--border);opacity:1}:root[data-theme=dark] .dash-layout :-webkit-any(input,textarea)[readonly]{background:var(--surface-muted);color:var(--text-secondary)}:root[data-theme=dark] .dash-layout :-moz-any(input,textarea)[readonly]{background:var(--surface-muted);color:var(--text-secondary)}:root[data-theme=dark] .dash-layout :is(input,textarea)[readonly]{background:var(--surface-muted);color:var(--text-secondary)}:root[data-theme=dark] .dash-layout :where(input,textarea,select):where(:not(:disabled):hover){border-color:var(--link)}:root[data-theme=dark] .dash-layout :-webkit-any(input,textarea,select)[aria-invalid=true]{border-color:var(--danger-border)}:root[data-theme=dark] .dash-layout :-moz-any(input,textarea,select)[aria-invalid=true]{border-color:var(--danger-border)}:root[data-theme=dark] .dash-layout :is(input,textarea,select)[aria-invalid=true]{border-color:var(--danger-border)}:root[data-theme=dark] .dash-layout :-webkit-any(input,textarea):-webkit-autofill{background:var(--input-background);color:var(--text-primary)}:root[data-theme=dark] .dash-layout :-moz-any(input,textarea):autofill{background:var(--input-background);color:var(--text-primary)}:root[data-theme=dark] .dash-layout :is(input,textarea):autofill{background:var(--input-background);color:var(--text-primary)}:root[data-theme=dark] .dash-layout :-webkit-any(input,textarea):-webkit-autofill{-webkit-text-fill-color:var(--text-primary);caret-color:var(--text-primary);box-shadow:0 0 0 1000px var(--input-background) inset}:root[data-theme=dark] .dash-layout :-moz-any(input,textarea):autofill{-webkit-text-fill-color:var(--text-primary);caret-color:var(--text-primary);box-shadow:0 0 0 1000px var(--input-background) inset}:root[data-theme=dark] .dash-layout :is(input,textarea):autofill{-webkit-text-fill-color:var(--text-primary);caret-color:var(--text-primary);box-shadow:0 0 0 1000px var(--input-background) inset}:root[data-theme=dark] .dash-layout input::-webkit-file-upload-button{background:var(--surface-secondary);color:var(--text-primary);border:1px solid var(--control-border);border-radius:4px}:root[data-theme=dark] .dash-layout input::file-selector-button{background:var(--surface-secondary);color:var(--text-primary);border:1px solid var(--control-border);border-radius:4px}:root[data-theme=dark] .dash-layout :-webkit-any(a,button,input,textarea,select,summary,[tabindex]):focus-visible{outline:3px solid var(--focus-ring);outline-offset:3px}:root[data-theme=dark] .dash-layout :-moz-any(a,button,input,textarea,select,summary,[tabindex]):focus-visible{outline:3px solid var(--focus-ring);outline-offset:3px}:root[data-theme=dark] .dash-layout :is(a,button,input,textarea,select,summary,[tabindex]):focus-visible{outline:3px solid var(--focus-ring);outline-offset:3px}:where(:root[data-theme=dark] .dash-layout) a:where(:not(.dash-navigation a)){color:var(--link)}:root[data-theme=dark] .dash-layout a:not(.dash-navigation a):hover{color:var(--link-hover)}:root[data-theme=dark] .dash-layout :-webkit-any(th,td){border-color:var(--border)}:root[data-theme=dark] .dash-layout :-moz-any(th,td){border-color:var(--border)}:root[data-theme=dark] .dash-layout :is(th,td){border-color:var(--border)}:root[data-theme=dark] .dash-layout thead th{background:var(--table-header);color:var(--text-secondary)}:root[data-theme=dark] .dash-layout tbody tr:hover{background:var(--table-row-hover)}:root[data-theme=dark] .dash-layout tbody :-webkit-any(tr.selected,tr[aria-selected=true]){background:var(--table-row-selected)}:root[data-theme=dark] .dash-layout tbody :-moz-any(tr.selected,tr[aria-selected=true]){background:var(--table-row-selected)}:root[data-theme=dark] .dash-layout tbody :is(tr.selected,tr[aria-selected=true]){background:var(--table-row-selected)}:root[data-theme=dark] .dash-layout tbody :-webkit-any(tr:hover,tr.selected,tr[aria-selected=true])>:-webkit-any(td,th){background-color:inherit}:root[data-theme=dark] .dash-layout tbody :-moz-any(tr:hover,tr.selected,tr[aria-selected=true])>:-moz-any(td,th){background-color:inherit}:root[data-theme=dark] .dash-layout tbody :is(tr:hover,tr.selected,tr[aria-selected=true])>:is(td,th){background-color:inherit}:root[data-theme=dark] .dash-layout .fees-tabs>[aria-current=page]:hover{color:#fff}:where(:root[data-theme=dark] .dash-layout) [role=alert]{background:var(--danger-surface);color:var(--danger-text)}:where(:root[data-theme=dark] .dash-layout) [role=status]{color:var(--info-text)}:root[data-theme=dark] .dash-layout .payroll-notice{color:var(--warning-text)}:root[data-theme=dark] .dash-layout .sf-dialog{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}:root[data-theme=dark] :-webkit-any(.sf-dialog,.dash-drawer)::backdrop{background:var(--backdrop,#030812c7)}:root[data-theme=dark] :-moz-any(.sf-dialog,.dash-drawer)::backdrop{background:var(--backdrop,#030812c7)}:root[data-theme=dark] :is(.sf-dialog,.dash-drawer)::backdrop{background:var(--backdrop,#030812c7)}:root[data-theme=dark] .dash-nav-tooltip{background:var(--tooltip-surface);color:var(--tooltip-text);box-shadow:var(--shadow)}.dash-layout :where(*){scrollbar-width:thin;scrollbar-color:var(--scrollbar-thumb) var(--scrollbar-track)}.dash-layout :-webkit-any(.responsive-table,.table-wrap,.import-preview,.sf-dialog,.notification-dropdown,.parent-print-preview)::-webkit-scrollbar{width:7px;height:7px}.dash-layout :-moz-any(.responsive-table,.table-wrap,.import-preview,.sf-dialog,.notification-dropdown,.parent-print-preview)::-webkit-scrollbar{width:7px;height:7px}.dash-layout :is(.responsive-table,.table-wrap,.import-preview,.sf-dialog,.notification-dropdown,.parent-print-preview)::-webkit-scrollbar{width:7px;height:7px}.dash-layout :-webkit-any(.responsive-table,.table-wrap,.import-preview,.sf-dialog,.notification-dropdown,.parent-print-preview)::-webkit-scrollbar-thumb{background:var(--scrollbar-thumb);border-radius:6px}.dash-layout :-moz-any(.responsive-table,.table-wrap,.import-preview,.sf-dialog,.notification-dropdown,.parent-print-preview)::-webkit-scrollbar-thumb{background:var(--scrollbar-thumb);border-radius:6px}.dash-layout :is(.responsive-table,.table-wrap,.import-preview,.sf-dialog,.notification-dropdown,.parent-print-preview)::-webkit-scrollbar-thumb{background:var(--scrollbar-thumb);border-radius:6px}@media (forced-colors:active){:root[data-theme=dark] .dash-layout :-webkit-any(input,select,textarea,button){forced-color-adjust:auto;border-color:buttontext}:root[data-theme=dark] .dash-layout :-moz-any(input,select,textarea,button){forced-color-adjust:auto;border-color:buttontext}:root[data-theme=dark] .dash-layout :is(input,select,textarea,button){forced-color-adjust:auto;border-color:buttontext}:root[data-theme=dark] .dash-layout :-webkit-any(a,button,input,select,textarea,summary,[tabindex]):focus-visible{outline-color:highlight}:root[data-theme=dark] .dash-layout :-moz-any(a,button,input,select,textarea,summary,[tabindex]):focus-visible{outline-color:highlight}:root[data-theme=dark] .dash-layout :is(a,button,input,select,textarea,summary,[tabindex]):focus-visible{outline-color:highlight}}@media print{:root .dash-layout{--ink:#000!important;--muted:#333!important;--line:#ccc!important;--canvas:#fff!important;--blue:#16345c!important;--surface:#fff!important}.dash-layout,.dash-layout *{color:#000!important;box-shadow:none!important;text-shadow:none!important;--lightningcss-light:initial!important;--lightningcss-dark: !important;color-scheme:light!important;background-color:#fff!important;background-image:none!important;border-color:#ccc!important}.dash-layout :is(.metric-track span,.overview-column,.chart span,.class-bar-row i){background:#16345c!important}.dash-layout :-webkit-any(.dash-sidebar,.dash-header,.dash-drawer,.dash-theme,.dash-nav-tooltip,.no-print,.table-swipe-hint,button){display:none!important}.dash-layout :-moz-any(.dash-sidebar,.dash-header,.dash-drawer,.dash-theme,.dash-nav-tooltip,.no-print,.table-swipe-hint,button){display:none!important}.dash-layout :is(.dash-sidebar,.dash-header,.dash-drawer,.dash-theme,.dash-nav-tooltip,.no-print,.table-swipe-hint,button){display:none!important}.dash-layout .sf-dialog{max-height:none;position:static;overflow:visible}}.dash-layout{--button-primary:#2f64e9;--button-primary-hover:#2454c7;--button-on-primary:#fff;--button-secondary:#e8efff;--button-secondary-hover:#dbe6ff;--button-secondary-text:#2454c7;--button-disabled:#e8ecf2;--button-disabled-text:#667085;--button-danger:#fce8e6;--button-danger-hover:#f8d5d1;--button-danger-text:#9d2821}:root[data-theme=dark] .dash-layout{--button-secondary:#243653;--button-secondary-hover:#304668;--button-secondary-text:#adc9ff;--button-disabled:#20304a;--button-disabled-text:#afbbcf;--button-danger:#382027;--button-danger-hover:#502b34;--button-danger-text:#ffb9b2}:root .dash-layout button{background:var(--button-secondary);color:var(--button-secondary-text);box-shadow:none;border:0}:root .dash-layout button:enabled:hover{background:var(--button-secondary-hover)}:root .dash-layout button:-webkit-any(.primary,.button-primary){background:var(--button-primary);color:var(--button-on-primary)}:root .dash-layout button:-moz-any(.primary,.button-primary){background:var(--button-primary);color:var(--button-on-primary)}:root .dash-layout button:is(.primary,.button-primary){background:var(--button-primary);color:var(--button-on-primary)}:root .dash-layout button:-webkit-any(.primary,.button-primary):enabled:hover{background:var(--button-primary-hover)}:root .dash-layout button:-moz-any(.primary,.button-primary):enabled:hover{background:var(--button-primary-hover)}:root .dash-layout button:is(.primary,.button-primary):enabled:hover{background:var(--button-primary-hover)}:root .dash-layout button:-webkit-any(.button-secondary,.logout-button){background:var(--button-secondary);color:var(--button-secondary-text)}:root .dash-layout button:-moz-any(.button-secondary,.logout-button){background:var(--button-secondary);color:var(--button-secondary-text)}:root .dash-layout button:is(.button-secondary,.logout-button){background:var(--button-secondary);color:var(--button-secondary-text)}:root .dash-layout button:-webkit-any(.button-secondary,.logout-button):enabled:hover{background:var(--button-secondary-hover)}:root .dash-layout button:-moz-any(.button-secondary,.logout-button):enabled:hover{background:var(--button-secondary-hover)}:root .dash-layout button:is(.button-secondary,.logout-button):enabled:hover{background:var(--button-secondary-hover)}:root .dash-layout button:-webkit-any(.button-ghost,.table-action,.dash-theme-toggle,.dash-collapse,.dash-menu,.notification-bell-button){color:var(--text-primary);background:0 0}:root .dash-layout button:-moz-any(.button-ghost,.table-action,.dash-theme-toggle,.dash-collapse,.dash-menu,.notification-bell-button){color:var(--text-primary);background:0 0}:root .dash-layout button:is(.button-ghost,.table-action,.dash-theme-toggle,.dash-collapse,.dash-menu,.notification-bell-button){color:var(--text-primary);background:0 0}:root .dash-layout button:-webkit-any(.button-ghost,.table-action,.dash-theme-toggle,.dash-collapse,.dash-menu,.notification-bell-button):enabled:hover{background:var(--surface-secondary)}:root .dash-layout button:-moz-any(.button-ghost,.table-action,.dash-theme-toggle,.dash-collapse,.dash-menu,.notification-bell-button):enabled:hover{background:var(--surface-secondary)}:root .dash-layout button:is(.button-ghost,.table-action,.dash-theme-toggle,.dash-collapse,.dash-menu,.notification-bell-button):enabled:hover{background:var(--surface-secondary)}:root .dash-layout :-webkit-any(.dash-sidebar,.dash-drawer-panel) button{color:var(--sidebar-text,var(--button-on-primary));background:0 0}:root .dash-layout :-moz-any(.dash-sidebar,.dash-drawer-panel) button{color:var(--sidebar-text,var(--button-on-primary));background:0 0}:root .dash-layout :is(.dash-sidebar,.dash-drawer-panel) button{color:var(--sidebar-text,var(--button-on-primary));background:0 0}:root .dash-layout :-webkit-any(.dash-sidebar,.dash-drawer-panel) button:enabled:hover{background:var(--sidebar-hover)}:root .dash-layout :-moz-any(.dash-sidebar,.dash-drawer-panel) button:enabled:hover{background:var(--sidebar-hover)}:root .dash-layout :is(.dash-sidebar,.dash-drawer-panel) button:enabled:hover{background:var(--sidebar-hover)}:root .dash-layout button:-webkit-any(.button-danger,.danger,.warning){background:var(--button-danger);color:var(--button-danger-text)}:root .dash-layout button:-moz-any(.button-danger,.danger,.warning){background:var(--button-danger);color:var(--button-danger-text)}:root .dash-layout button:is(.button-danger,.danger,.warning){background:var(--button-danger);color:var(--button-danger-text)}:root .dash-layout button:-webkit-any(.button-danger,.danger,.warning):enabled:hover{background:var(--button-danger-hover)}:root .dash-layout button:-moz-any(.button-danger,.danger,.warning):enabled:hover{background:var(--button-danger-hover)}:root .dash-layout button:is(.button-danger,.danger,.warning):enabled:hover{background:var(--button-danger-hover)}:root .dash-layout button:focus-visible{outline:3px solid var(--focus-ring);outline-offset:3px}:root .dash-layout .payroll-workflow [aria-current=step]>button{background:var(--button-primary);color:var(--button-on-primary)}:root .dash-layout button:-webkit-any([aria-current=page],[aria-selected=true],[aria-pressed=true]){background:var(--button-primary);color:var(--button-on-primary)}:root .dash-layout button:-moz-any([aria-current=page],[aria-selected=true],[aria-pressed=true]){background:var(--button-primary);color:var(--button-on-primary)}:root .dash-layout button:is([aria-current=page],[aria-selected=true],[aria-pressed=true]){background:var(--button-primary);color:var(--button-on-primary)}:root .dash-layout .payroll-workflow [aria-current=step]>button:enabled:hover{background:var(--button-primary-hover)}:root .dash-layout button:-webkit-any([aria-current=page],[aria-selected=true],[aria-pressed=true]):enabled:hover{background:var(--button-primary-hover)}:root .dash-layout button:-moz-any([aria-current=page],[aria-selected=true],[aria-pressed=true]):enabled:hover{background:var(--button-primary-hover)}:root .dash-layout button:is([aria-current=page],[aria-selected=true],[aria-pressed=true]):enabled:hover{background:var(--button-primary-hover)}:root .dash-layout button:disabled,:root .dash-layout button:disabled:hover,:root .dash-layout .payroll-workflow button:disabled,:root .dash-layout .payroll-workflow button:disabled:hover{background:var(--button-disabled);color:var(--button-disabled-text);opacity:1;cursor:not-allowed}:root .dash-layout label:has(>input[type=radio]){cursor:pointer;align-items:center;gap:8px;min-height:44px;display:flex}:root .dash-layout label>input[type=radio]{cursor:pointer;width:auto;height:auto;min-height:0;accent-color:var(--brand-primary);flex:none;margin-block-start:0;margin-block-end:0;padding:0}:root .dash-layout label>input[type=radio]:focus-visible{outline:3px solid var(--focus-ring);outline-offset:3px}:root .dash-layout .radio-label-text{flex-direction:column;gap:4px;display:flex}:root .dash-layout .radio-label-text small{color:var(--text-secondary)}@media (forced-colors:active){:root .dash-layout button{forced-color-adjust:auto}:root .dash-layout button:focus-visible{outline-color:highlight}}@media print{:root .dash-layout button{display:none!important}}
