@import"https://fonts.googleapis.com/css2?family=Public+Sans:wght@400;500;600;700&family=IBM+Plex+Mono:wght@400;500;600&display=swap";:root{--background: #fafafb;--surface: #ffffff;--surface-subtle: #f7f8fa;--text-primary: #081335;--text-secondary: #56627a;--text-muted: #64718a;--primary: #0e53cd;--primary-hover: #0b47b4;--primary-soft: #f2f6fd;--primary-soft-strong: #e8f0fc;--border: #dde1e8;--border-strong: #c9d0da;--focus-ring: #0e53cd;--civic-navy: #0b1f3a;--navy-border: #26395f;--nav-text: #b8c7de;--nav-muted: #91a5c1;--nav-active-icon: #80b7ff;--nav-active-marker: #69a8ff;--success-bg: #ddf3e3;--success-text: #27663b;--informational-bg: #e5eefc;--informational-text: #1652a5;--warning-bg: #fde8d5;--warning-text: #a65308;--attention-bg: #fff4c8;--attention-text: #806000;--danger-bg: #fbe1e5;--danger-text: #a92c3c;--inactive-bg: #eceff2;--inactive-text: #626b78;--success-border: color-mix(in srgb, var(--success-text) 38%, var(--success-bg));--informational-border: color-mix(in srgb, var(--informational-text) 38%, var(--informational-bg));--warning-border: color-mix(in srgb, var(--warning-text) 38%, var(--warning-bg));--attention-border: color-mix(in srgb, var(--attention-text) 38%, var(--attention-bg));--danger-border: color-mix(in srgb, var(--danger-text) 38%, var(--danger-bg));--inactive-border: color-mix(in srgb, var(--inactive-text) 38%, var(--inactive-bg));--on-accent: #ffffff;--status-tone: var(--text-primary);--mark-ink: var(--primary);--mark-fill: var(--primary-soft);--mark-handle: var(--civic-navy);--nav-danger: #f6b8c2;--nav-danger-hover: #fecdd3;--scene-ground: #f7f1e5;--theme-main: var(--primary);--mono: "IBM Plex Mono", ui-monospace, monospace;--text-2xs: 10px;--text-xs: 11px;--text-sm: 12px;--text-base: 13px;--text-md: 14px;--text-lg: 16px;--text-xl: 20px;--text-2xl: 24px;--text-3xl: 30px;--space-1: 4px;--space-2: 8px;--space-3: 12px;--space-4: 16px;--space-5: 20px;--space-6: 24px;--space-8: 32px;--radius-sm: 6px;--radius-md: 6px;--radius-lg: 6px;--radius-xl: 6px;--radius-pill: 999px;--shadow-xs: 0 1px 2px rgba(11, 31, 58, .05);--shadow-sm: 0 1px 3px rgba(11, 31, 58, .06);--shadow-md: 0 8px 22px rgba(11, 31, 58, .09);--shadow-lg: 0 16px 38px rgba(11, 31, 58, .12);--ui-bg: var(--background);--ui-surface: var(--surface);--ui-surface-soft: var(--surface-subtle);--ui-border: var(--border);--ui-text: var(--text-primary);--ui-text-muted: var(--text-secondary);--ui-shadow-sm: var(--shadow-xs);--ui-shadow-md: var(--shadow-md);--ui-shadow-lg: var(--shadow-lg);color:var(--text-primary);font-family:Public Sans,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;line-height:1.4}*{box-sizing:border-box}html,body,#root{margin:0;width:100%;min-height:100%}body{background:var(--ui-bg);color:var(--ui-text);font-size:var(--text-md);font-feature-settings:"cv11","ss01";-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}a{color:var(--primary);text-decoration:none}a:hover{text-decoration:underline}button:focus-visible,a:focus-visible,a.nav-link:focus-visible{outline:2px solid var(--focus-ring);outline-offset:2px}h1,h2,h3{font-family:Public Sans,ui-sans-serif,system-ui,sans-serif;font-weight:700;color:var(--text-primary);margin:0}button,input,select,textarea{font:inherit}button{border:0;border-radius:var(--radius-sm);padding:var(--space-2) var(--space-3);cursor:pointer;transition:transform .12s ease,box-shadow .2s ease,background-color .2s ease}button:not(:disabled):active{transform:translateY(1px)}button:disabled{opacity:.55;cursor:not-allowed}input,select,textarea{width:100%;border:1px solid var(--ui-border);border-radius:var(--radius-md);padding:10px 12px;background:var(--surface);color:var(--ui-text);transition:border-color .15s ease,box-shadow .15s ease}input:focus,select:focus,textarea:focus{outline:none;border-color:var(--focus-ring);box-shadow:0 0 0 3px #0e53cd29}label{display:grid;gap:6px;color:var(--text-secondary);font-size:var(--text-md)}textarea{resize:vertical}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.001ms!important;animation-iteration-count:1!important;transition-duration:.001ms!important;scroll-behavior:auto!important}.dashboard-kpi:hover,.slot-card:hover{transform:none}}.app-shell{display:flex;min-height:100vh;color:var(--ui-text)}.sidebar{position:fixed;top:0;left:0;bottom:0;width:244px;background:var(--civic-navy);color:var(--nav-text);padding:20px 12px;display:flex;flex-direction:column;gap:var(--space-5)}.sidebar-brand-block{display:flex;align-items:center;gap:var(--space-3);padding:4px 6px}.sidebar-brand-mark{width:42px;height:42px;display:inline-flex;align-items:center;justify-content:center;background:transparent;color:var(--primary);box-shadow:none;flex-shrink:0}.sidebar-brand-text{display:grid;line-height:1.1}.sidebar-brand-text b{color:var(--on-accent);font-size:var(--text-lg);font-weight:800;letter-spacing:-.01em}.sidebar-brand-text span{color:var(--nav-muted);font-size:var(--text-xs);letter-spacing:.04em;text-transform:uppercase;margin-top:3px}.sidebar-school{display:grid;gap:2px;padding:11px 13px;background:#ffffff0f;border:1px solid rgba(255,255,255,.09);border-radius:var(--radius-md)}.sidebar-school-label{color:var(--nav-muted);font-size:var(--text-2xs);text-transform:uppercase;letter-spacing:.06em}.sidebar-school-name{color:var(--nav-text);font-size:var(--text-lg);font-weight:700}.sidebar nav{display:grid;gap:2px}.sidebar-app-mark{width:38px;height:38px;--mark-ink: var(--nav-active-icon);--mark-fill: transparent;--mark-handle: var(--nav-text)}.nav-link{position:relative;display:flex;align-items:center;gap:10px;color:var(--nav-text);text-align:left;background:transparent;border:1px solid transparent;border-radius:var(--radius-sm);padding:var(--space-2) var(--space-3);font-weight:500;font-size:var(--text-md)}.nav-link:hover{background:#ffffff14;color:var(--on-accent)}.nav-link.active{background:#ffffff1a;color:var(--on-accent);border-color:transparent;font-weight:600;box-shadow:none}.nav-link.active svg{color:var(--nav-active-icon)}.nav-fas-icon{width:17px;height:17px;flex-shrink:0}.nav-link.active:before{content:"";position:absolute;left:-12px;top:6px;bottom:6px;width:2px;border-radius:999px;background:var(--nav-active-marker)}.sidebar-footer{margin-top:auto;display:grid;gap:var(--space-2)}.main-content{margin-left:244px;width:calc(100% - 244px);max-height:100vh;overflow:auto;padding:20px 24px 28px}.main-content>.page{width:100%;max-width:1320px;margin-inline:auto}.app-topbar{position:sticky;top:0;z-index:20;margin:-20px -20px 20px;padding:12px 24px;background:var(--surface);border-bottom:1px solid var(--border);display:flex;align-items:center;gap:var(--space-4)}.topbar-context{display:flex;align-items:baseline;gap:var(--space-3)}.topbar-page-title{margin:0;font-size:var(--text-xl);font-weight:800;color:var(--text-primary);animation:topbar-title-reveal .16s ease-out}@keyframes topbar-title-reveal{0%{opacity:0;transform:translateY(3px)}to{opacity:1;transform:translateY(0)}}.topbar-school-year{font-size:var(--text-base);font-weight:600;color:var(--text-secondary);background:var(--surface-subtle);padding:var(--space-1) var(--space-2);border-radius:var(--radius-sm);border:1px solid var(--border)}.topbar-actions{margin-left:auto;display:flex;align-items:center;gap:10px}.topbar-icon-btn{width:42px;height:42px;border-radius:var(--radius-sm);background:var(--surface);border:1px solid var(--border);color:var(--text-secondary);display:inline-flex;align-items:center;justify-content:center;box-shadow:var(--shadow-sm)}.topbar-icon-btn:hover{color:var(--warning-text);border-color:var(--border-strong)}.topbar-user{position:relative}.topbar-user-btn{display:inline-flex;align-items:center;gap:10px;padding:5px 12px 5px 6px;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-sm);box-shadow:var(--shadow-sm);color:var(--text-primary)}.topbar-avatar{width:34px;height:34px;border-radius:50%;background:var(--primary);color:var(--on-accent);display:inline-flex;align-items:center;justify-content:center;font-size:var(--text-base);font-weight:700;flex-shrink:0}.topbar-user-who{display:grid;line-height:1.15;text-align:left}.topbar-user-who b{font-size:var(--text-base);font-weight:700;max-width:160px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.topbar-user-who small{font-size:var(--text-xs);color:var(--text-muted)}.topbar-menu-scrim{position:fixed;inset:0;z-index:25;background:transparent;border:0;padding:0;cursor:default}.topbar-user-menu{position:absolute;top:calc(100% + 8px);right:0;min-width:200px;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-md);box-shadow:var(--shadow-md);padding:6px;display:grid;gap:2px;z-index:30}.topbar-user-menu button{width:100%;text-align:left;background:transparent;border:0;border-radius:var(--radius-sm);padding:10px 12px;color:var(--text-primary);font-weight:600;font-size:var(--text-md)}.topbar-user-menu button:hover{background:var(--surface-subtle)}.topbar-user-menu-danger{color:var(--danger-text)!important}.sidebar-foot-note{margin:0;padding:0 6px;color:var(--nav-muted);font-size:var(--text-xs);line-height:1.5}.page{display:grid;gap:14px}.db-sync-indicator{display:inline-flex;align-items:center;gap:var(--space-2);padding:6px 10px;border-radius:999px;border:1px solid var(--border-strong);background:var(--surface);color:var(--text-primary);font-size:var(--text-sm);font-weight:700;box-shadow:var(--ui-shadow-sm)}.sidebar-sync{width:fit-content;margin-inline:auto}.db-sync-dot{width:8px;height:8px;border-radius:999px;background:var(--inactive-text)}.db-sync-indicator.syncing{background:var(--attention-bg);border-color:var(--attention-border);color:var(--warning-text)}.db-sync-indicator.syncing .db-sync-dot{background:var(--warning-text)}.db-sync-indicator.saved{background:var(--success-bg);border-color:var(--success-border);color:var(--success-text)}.db-sync-indicator.saved .db-sync-dot{background:var(--success-text)}.db-sync-indicator.offline{background:var(--danger-bg);border-color:var(--danger-border);color:var(--danger-text)}.db-sync-indicator.offline .db-sync-dot{background:var(--danger-text)}.sidebar-sync.db-sync-indicator{padding:0;border:0;border-radius:0;background:transparent;box-shadow:none}.page-header{display:flex;justify-content:space-between;align-items:center;gap:var(--space-2);flex-wrap:wrap;padding:4px 0 16px;border-bottom:1px solid var(--border)}.page-header-actions{display:flex;align-items:center;gap:var(--space-2);flex-wrap:wrap}.page-header h1{font-size:var(--text-2xl);font-weight:600;letter-spacing:-.01em}.dashboard-kpi-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(210px,1fr));gap:var(--space-3)}.dashboard-inventory-shortcuts{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--space-3)}.dashboard-inventory-shortcut{display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:var(--space-3);width:100%;padding:var(--space-4);border:1px solid var(--primary-soft-strong);border-radius:var(--radius-md);background:var(--primary-soft);color:var(--text-primary);text-align:left;box-shadow:var(--shadow-xs)}.dashboard-inventory-shortcut:hover{border-color:var(--primary);background:color-mix(in srgb,var(--primary) 14%,var(--primary-soft));box-shadow:var(--shadow-md)}.dashboard-inventory-shortcut>svg:last-child{color:var(--primary);transition:transform .15s ease}.dashboard-inventory-shortcut:hover>svg:last-child{transform:translate(3px)}.dashboard-inventory-shortcut:hover .dashboard-shortcut-icon{background:var(--primary);color:var(--on-accent)}.dashboard-inventory-shortcut>span:nth-child(2){display:grid;gap:3px}.dashboard-inventory-shortcut strong{font-size:var(--text-lg)}.dashboard-inventory-shortcut small{color:var(--text-secondary)}.dashboard-shortcut-icon{display:grid;width:38px;height:38px;place-items:center;border-radius:var(--radius-md);background:var(--surface);color:var(--primary);transition:background-color .15s ease,color .15s ease}.dashboard-efficiency-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:var(--space-3)}.dashboard-efficiency-card{position:relative;display:grid;grid-template-columns:1fr auto;align-items:start;gap:var(--space-1) var(--space-2);padding:var(--space-4);border:1px solid var(--border);border-radius:var(--radius-md);background:var(--surface-subtle)}.dashboard-efficiency-card>span,.dashboard-efficiency-card>strong,.dashboard-efficiency-card>small{grid-column:1}.dashboard-efficiency-icon{grid-column:2;grid-row:1 / span 2;color:var(--status-tone, var(--text-muted));opacity:.9}.dashboard-efficiency-card[data-status=good]{--status-tone: var(--success-text);background:var(--success-bg);border-color:var(--success-border)}.dashboard-efficiency-card[data-status=watch]{--status-tone: var(--warning-text);background:var(--warning-bg);border-color:var(--warning-border)}.dashboard-efficiency-card[data-status=risk]{--status-tone: var(--danger-text);background:var(--danger-bg);border-color:var(--danger-border)}.dashboard-efficiency-card>span{color:var(--text-secondary);font-size:var(--text-sm);font-weight:700;letter-spacing:.04em;text-transform:uppercase}.dashboard-efficiency-card>strong{font-size:var(--text-3xl);line-height:1.1;color:var(--status-tone, var(--text-primary))}.dashboard-efficiency-card>small{color:var(--text-secondary);line-height:1.4}.dashboard-chart-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--space-4)}.dashboard-chart-card{min-width:0}.dashboard-chart-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:var(--space-3);margin-bottom:var(--space-4)}.dashboard-chart-heading h2{margin:2px 0 0;font-size:var(--text-xl)}.dashboard-chart-heading>strong{color:var(--primary);white-space:nowrap}.dashboard-allocation-chart{display:grid;grid-template-columns:minmax(220px,1fr) minmax(170px,.8fr);align-items:center;gap:var(--space-4)}.dashboard-chart-canvas{position:relative;display:grid;place-items:center;height:250px}.dashboard-donut{position:relative;width:210px;height:210px;border-radius:var(--radius-pill)}.dashboard-donut:after{position:absolute;inset:48px;border-radius:var(--radius-pill);background:var(--surface);content:""}.dashboard-donut-total{position:absolute;inset:50% auto auto 50%;display:grid;place-items:center;transform:translate(-50%,-50%);pointer-events:none;z-index:1}.dashboard-donut-total strong{font-size:var(--text-3xl);line-height:1}.dashboard-donut-total span{color:var(--text-secondary);font-size:var(--text-sm)}.dashboard-chart-legend{display:grid;gap:var(--space-2)}.dashboard-chart-legend>div{display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:var(--space-2)}.dashboard-chart-legend .dashboard-legend-marker{width:10px;height:10px;border-radius:2px}.dashboard-legend-copy{min-width:0}.dashboard-chart-legend small{display:block;color:var(--text-secondary);font-weight:700}.dashboard-comparison-chart{display:grid;gap:var(--space-4);min-height:250px;align-content:center}.dashboard-comparison-row{display:grid;gap:var(--space-2)}.dashboard-comparison-row>div:first-child{display:flex;align-items:center;justify-content:space-between;gap:var(--space-3)}.dashboard-comparison-row>div:first-child span{color:var(--text-secondary);font-size:var(--text-sm);font-weight:700}.dashboard-comparison-track{height:18px;overflow:hidden;border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--surface-subtle)}.dashboard-comparison-track>span{display:block;min-width:2px;height:100%;border-radius:inherit}.dashboard-chart-note{margin:var(--space-2) 0 0;color:var(--text-secondary);font-size:var(--text-sm)}.dashboard-kpi{border:1px solid var(--border);border-radius:var(--radius-md);background:var(--surface);padding:18px;display:flex;justify-content:space-between;align-items:center;box-shadow:none;transition:box-shadow .2s ease}.dashboard-kpi:hover{border-color:var(--border-strong);box-shadow:none}.dashboard-error{padding:10px}.dashboard-kpi p{margin:0;color:var(--text-secondary);font-size:var(--text-sm);font-weight:700;letter-spacing:.06em}.dashboard-kpi h3{margin:8px 0 0;color:var(--text-primary);font-size:var(--text-3xl);line-height:1;letter-spacing:-.01em}.dashboard-kpi-icon{display:inline-flex;align-items:center;justify-content:center;flex-shrink:0}.dashboard-kpi-icon.neutral,.dashboard-kpi-icon.slate{color:var(--text-muted)}.dashboard-kpi-icon.success{color:var(--success-text)}.dashboard-kpi-icon.danger{color:var(--danger-text)}.dashboard-kpi-icon.warn{color:var(--warning-text)}.operations-panel,.classroom-readiness-panel{margin-top:var(--space-4)}.operations-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:var(--space-4);margin-bottom:var(--space-4)}.operations-heading h2{margin:2px 0 4px;font-size:var(--text-2xl)}.operations-heading p:not(.eyebrow){margin:0;color:var(--text-secondary)}.workflow-lane{display:grid;grid-template-columns:repeat(5,minmax(145px,1fr));gap:10px}.workflow-stage{min-height:132px;border:1px solid var(--border);border-radius:var(--radius-lg);background:var(--surface-subtle);color:var(--text-primary);padding:14px;display:grid;align-content:start;justify-items:start;gap:var(--space-2);text-align:left}.workflow-stage:hover{border-color:var(--primary);background:var(--primary-soft)}.workflow-stage>span,.workflow-step-number{width:28px;height:28px;border-radius:999px;background:var(--primary);color:var(--on-accent);display:inline-flex;align-items:center;justify-content:center;font-weight:800}.workflow-stage strong{font-size:var(--text-lg)}.workflow-stage small{color:var(--text-secondary);line-height:1.35}.classroom-readiness-panel .btn-ghost{white-space:normal;text-align:left}.tone-critical{border-color:var(--danger-border);background:var(--danger-bg)}.tone-critical p,.tone-critical .simple-list,.tone-critical .simple-list li{color:var(--danger-text)}.settings-shortcuts{margin-bottom:var(--space-4)}.panel{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-md);padding:18px;box-shadow:none}.simple-list{margin:0;padding-left:18px;display:grid;gap:6px}.labels-page{gap:14px}.student-unassigned-warning{border-color:var(--danger-border);background:var(--danger-bg)}.student-unassigned-warning p{margin:0;color:var(--danger-text);font-size:var(--text-base)}.empty-text{color:var(--text-secondary);text-align:center}.btn-primary{background:var(--primary);color:var(--on-accent);display:inline-flex;align-items:center;justify-content:center;gap:6px;min-height:40px;font-weight:600;box-shadow:0 6px 16px #0e53cd38}.btn-primary:hover{background:var(--primary-hover);box-shadow:0 8px 20px #0e53cd47}.btn-ghost{background:var(--surface);color:var(--primary);display:inline-flex;align-items:center;justify-content:center;gap:6px;min-height:40px;font-weight:600;border:1px solid var(--border-strong)}.btn-ghost:hover{background:var(--primary-soft);border-color:var(--primary)}.warning{background:var(--attention-bg);color:var(--attention-text);font-weight:600}.btn-danger{background:var(--danger-text);color:var(--on-accent);font-weight:600}.btn-danger:hover{background:color-mix(in srgb,var(--text-primary) 22%,var(--danger-text))}.btn-danger.btn-ghost,.btn-danger.btn-ghost:hover{background:var(--danger-text);color:var(--on-accent);border-color:var(--danger-text)}.icon{padding:0;width:40px;height:40px;display:inline-flex;align-items:center;justify-content:center}.capacity{margin:6px 0 10px;display:grid;gap:6px}.classroom-meta{color:var(--text-secondary)}.roster-hold-panel{display:flex;align-items:center;justify-content:space-between;gap:var(--space-4);margin-bottom:var(--space-4);padding:var(--space-3)}.roster-hold-panel>div{display:grid;gap:4px}.roster-hold-panel p{margin:0}.roster-hold-panel small{color:var(--text-secondary);font-size:var(--text-sm)}.roster-hold-panel .btn-primary{flex:0 0 auto}.form-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:10px;align-items:end}.form-grid.three{grid-template-columns:repeat(auto-fit,minmax(165px,1fr))}.workflow-check-panel{border:2px solid var(--informational-border);border-radius:var(--radius-lg);background:var(--informational-bg);padding:var(--space-4);margin-bottom:var(--space-4)}.workflow-check-heading,.workflow-check-heading>div,.workflow-check-progress{display:flex;align-items:center;gap:var(--space-3)}.workflow-check-heading{justify-content:space-between}.workflow-check-heading strong{color:var(--text-primary);font-size:var(--text-lg)}.workflow-check-heading p{margin:3px 0 0;color:var(--text-secondary);font-size:var(--text-base)}.workflow-check-progress{flex-wrap:wrap;margin-top:14px;padding-top:var(--space-3);border-top:1px solid var(--informational-border);color:var(--text-primary);font-size:var(--text-base)}.workflow-check-scan{margin-top:var(--space-3)}.source-truth-panel{border-color:var(--warning-border);background:var(--warning-bg)}.advanced-correction-panel{padding:0;overflow:hidden}.advanced-correction-panel.is-collapsed{border-color:var(--border);background:var(--surface)}.advanced-correction-toggle{display:grid;grid-template-columns:auto minmax(0,1fr) auto auto;align-items:center;width:100%;gap:var(--space-3);padding:var(--space-4);border:0;border-radius:0;background:transparent;color:var(--text-primary);text-align:left}.advanced-correction-toggle:hover{background:var(--surface-subtle)}.advanced-correction-toggle>svg{transition:transform .16s ease}.advanced-correction-toggle>svg.expanded{transform:rotate(180deg)}.advanced-correction-icon{display:grid;place-items:center;width:34px;height:34px;border:1px solid var(--warning-border);border-radius:var(--radius-sm);background:var(--warning-bg);color:var(--warning-text)}.advanced-correction-title{display:grid;gap:2px}.advanced-correction-title strong{font-size:var(--text-lg)}.advanced-correction-title small{color:var(--text-secondary);font-size:var(--text-sm);font-weight:400}.advanced-correction-body{display:grid;gap:var(--space-3);padding:0 var(--space-4) var(--space-4);border-top:1px solid var(--warning-border)}.advanced-correction-body>.workflow-check-heading{padding-top:var(--space-4)}.rebuild-recommendation{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:var(--space-3);margin-bottom:var(--space-4);padding:var(--space-3) var(--space-4);border:2px solid var(--warning-border);border-radius:var(--radius-md);background:var(--warning-bg);color:var(--warning-text)}.rebuild-recommendation p{margin:3px 0 0;color:var(--text-secondary);line-height:1.45}.btn-warning{min-height:40px;padding:0 var(--space-3);border:1px solid var(--warning-text);border-radius:var(--radius-sm);background:var(--warning-text);color:var(--surface);font-weight:700}.btn-warning:hover{filter:brightness(.92)}.source-truth-content{display:grid;gap:var(--space-3);margin-top:var(--space-3);padding-top:var(--space-3);border-top:1px solid var(--warning-border)}.source-truth-guidance{display:grid;gap:3px;color:var(--text-secondary)}.source-truth-guidance strong{color:var(--text-primary)}.workflow-guardrail{display:flex;align-items:flex-start;gap:var(--space-2);padding:var(--space-3);border:1px solid var(--informational-border);border-radius:var(--radius-md);background:var(--informational-bg);color:var(--informational-text)}.workflow-guardrail>svg{flex:0 0 auto;margin-top:2px}.workflow-guardrail strong{color:var(--text-primary)}.workflow-guardrail p{margin:3px 0 0;color:var(--text-secondary);font-size:var(--text-sm);line-height:1.45}.capacity-current-summary{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:var(--space-2)}.capacity-edit-modal{width:min(580px,96vw);max-height:92vh;grid-template-rows:auto minmax(0,1fr) auto}.capacity-edit-modal .compact-modal-form{overflow-y:auto}.capacity-current-summary span{padding:var(--space-2);border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--surface-subtle);color:var(--text-secondary);font-size:var(--text-sm);line-height:1.35}.capacity-current-summary strong{display:block;color:var(--text-primary);font-size:var(--text-lg)}.field-guidance{color:var(--text-secondary);font-size:var(--text-xs);font-weight:400;line-height:1.4}.capacity-change-guidance{padding:var(--space-3);border:1px solid var(--success-border);border-radius:var(--radius-md);background:var(--success-bg)}.capacity-change-guidance.is-blocked{border-color:var(--warning-border);background:var(--warning-bg)}.capacity-change-guidance strong{color:var(--text-primary)}.capacity-change-guidance p{margin:3px 0 0;color:var(--text-secondary);font-size:var(--text-sm);line-height:1.45}@media(max-width:640px){.capacity-current-summary{grid-template-columns:1fr}.advanced-correction-toggle,.rebuild-recommendation{grid-template-columns:auto minmax(0,1fr) auto}.advanced-correction-toggle .inventory-status-chip{display:none}.rebuild-recommendation .btn-warning{grid-column:1 / -1}.roster-hold-panel{align-items:stretch;flex-direction:column}}.source-truth-scan-row>label:first-child{display:grid;gap:5px;min-width:190px;color:var(--text-secondary);font-size:var(--text-sm);font-weight:600}.source-truth-missing,.source-truth-conflicts{padding:var(--space-3);border:1px solid var(--warning-border);border-radius:var(--radius-md);background:var(--surface)}.source-truth-missing p,.source-truth-conflicts p{margin:5px 0 0;line-height:1.45}.source-truth-actions{justify-content:flex-end}.source-truth-list-summary{display:flex;align-items:center;justify-content:space-between;gap:12px}.office-storage-scan-row .inventory-search-input{flex:1 1 360px}.workflow-exception-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin-top:var(--space-3)}.workflow-exception-grid>div{border:1px solid var(--warning-border);border-radius:var(--radius-md);background:var(--warning-bg);padding:10px}.workflow-exception-grid p{margin:4px 0 0;color:var(--warning-text);font-size:var(--text-sm);line-height:1.45}.slot-grid{display:grid;gap:10px}.student-slot-grid{grid-template-columns:repeat(auto-fit,minmax(190px,1fr))}.slot-card{border-radius:var(--radius-lg);border:1px solid var(--ui-border);padding:var(--space-3);background:var(--surface);display:grid;gap:var(--space-2);box-shadow:var(--shadow-xs);transition:transform .12s ease,box-shadow .2s ease}.slot-card:hover{transform:translateY(-1px);box-shadow:var(--shadow-md)}.slot-card.selected{box-shadow:inset 0 0 0 2px var(--theme-main)}.slot-card header{display:flex;justify-content:space-between;align-items:center}.slot-card h3{font-size:var(--text-2xl);line-height:1}.slot-status-dot{width:10px;height:10px;border-radius:999px;border:1px solid var(--border-strong);background:var(--border-strong)}.slot-status-dot.student{background:var(--success-text);border-color:var(--success-text)}.slot-status-dot.backup{background:var(--warning-text);border-color:var(--warning-text)}.slot-status-dot.issue{background:var(--danger-text);border-color:var(--danger-text)}.slot-status-dot.staged{background:var(--warning-text);border-color:var(--warning-text)}.slot-status-dot.empty{background:var(--border-strong);border-color:var(--border-strong)}.slot-status-dot.gap{background:var(--warning-text);border-color:var(--warning-text)}.slot-device{margin:0;font-size:var(--text-base)}.slot-student-link{background:transparent;border:0;padding:0;margin:0;font:inherit;font-weight:600;color:var(--primary);text-decoration:underline;cursor:pointer;text-align:left}.slot-device{color:var(--text-secondary)}.slot-actions{display:flex;flex-wrap:wrap;gap:6px}.slot-note{font-size:var(--text-sm);color:var(--text-secondary)}.slot-note.staged{color:var(--warning-text);font-weight:600}.slot-note.gap{color:var(--warning-text);font-weight:700}.slot-card.student{background:var(--success-bg);border-color:var(--success-border)}.slot-card.staged{background:var(--warning-bg);border-color:var(--warning-border)}.slot-card.backup{background:var(--warning-bg);border-color:var(--attention-border)}.slot-card.issue{background:var(--danger-bg);border-color:var(--danger-text)}.slot-card.empty{background:var(--surface-subtle)}.slot-card.gap{background:var(--warning-bg);border-color:var(--warning-border)}.stack-row{display:flex;flex-wrap:wrap;align-items:center;gap:var(--space-2)}.inventory-search-input{border:1px solid var(--border-strong);border-radius:var(--radius-md);background:var(--surface);padding:10px 16px;color:var(--text-muted)}.inventory-search-input input{border:0;padding:0;box-shadow:none;background:transparent;font-size:var(--text-xl);color:var(--text-primary)}.inventory-search-input input:focus{border:0;box-shadow:none}.inventory-scan-row{display:flex;align-items:end;gap:10px;flex-wrap:wrap}.inventory-scan-row>label:not(.search-input)>select,.inventory-scan-row>label:not(.search-input)>input,.inventory-scan-row>button{min-height:50px}.inventory-scan-row>label:not(.search-input){gap:4px}.scan-focus-area{margin-bottom:14px;padding:14px 16px;border:2px solid var(--theme-main, var(--primary));border-radius:var(--radius-md);background:color-mix(in srgb,var(--theme-main, var(--primary)) 7%,var(--surface));box-shadow:0 1px 3px #0f172a14}.scan-focus-head{display:flex;align-items:center;gap:var(--space-2);margin-bottom:10px;color:var(--theme-main, var(--primary))}.scan-focus-head strong{font-size:var(--text-lg);font-weight:800;letter-spacing:.01em}.scan-focus-head span{color:var(--text-muted, var(--text-secondary));font-size:var(--text-base);font-weight:600}.scan-lookup-input:focus-within{border-color:var(--theme-main, var(--primary));outline:1px solid var(--theme-main, var(--primary));outline-offset:0;box-shadow:0 0 0 4px color-mix(in srgb,var(--theme-main, var(--primary)) 22%,transparent)}.repair-report-row{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.repair-problem-input{flex:2;min-width:220px;border:1px solid var(--border-strong);border-radius:var(--radius-md);background:var(--surface);padding:10px 16px;font-size:var(--text-lg);color:var(--text-primary)}.repair-problem-input:focus{outline:none;border-color:var(--theme-main, var(--primary));box-shadow:0 0 0 3px color-mix(in srgb,var(--theme-main, var(--primary)) 20%,transparent)}.repair-started-detail{display:block;margin-top:var(--space-1);color:var(--text-secondary)}.scan-lookup-input{flex:1;min-width:240px}.inventory-status-chip{display:inline-flex;align-items:center;justify-content:center;border-radius:999px;padding:4px 12px;font-size:var(--text-base);font-weight:700;border:1px solid transparent}.inventory-status-chip.active{background:var(--success-bg);color:var(--success-text)}.inventory-status-chip.backup{background:var(--informational-bg);color:var(--informational-text)}.inventory-status-chip.broken{background:var(--danger-bg);color:var(--danger-text)}.inventory-status-chip.repair{background:var(--warning-bg);color:var(--warning-text)}.inventory-status-chip.retired,.inventory-status-chip.slate{background:var(--inactive-bg);color:var(--inactive-text)}.bug-report-status-chip{display:inline-flex;align-items:center;justify-content:center;border-radius:999px;padding:4px 10px;font-size:var(--text-sm);font-weight:700;border:1px solid transparent}.bug-report-status-chip.new{background:var(--warning-bg);color:var(--warning-text)}.bug-report-status-chip.in_review{background:var(--informational-bg);color:var(--informational-text)}.bug-report-status-chip.resolved{background:var(--success-bg);color:var(--success-text)}.search-input{display:flex;align-items:center;gap:var(--space-2)}.table-scroll{width:100%;overflow-x:auto}.data-table{width:100%;border-collapse:collapse;font-size:var(--text-base);border-radius:var(--radius-md);overflow:hidden}.data-table th,.data-table td{padding:11px 12px;border-bottom:1px solid var(--border);text-align:left;vertical-align:top}.data-table th{color:var(--text-secondary);font-weight:600;font-size:var(--text-xs);letter-spacing:.05em;text-transform:uppercase;background:var(--surface-subtle);position:sticky;top:0;z-index:1}.data-table tbody tr:hover{background:var(--surface-subtle)}.data-table .table-row-number{width:48px;color:var(--text-secondary);text-align:right;white-space:nowrap}.page-subtitle{margin:5px 0 0;color:var(--text-secondary);font-size:var(--text-md)}.reference-stat-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:var(--space-3)}.reference-stat-grid article{min-height:82px;border:1px solid var(--border);border-radius:var(--radius-md);background:var(--surface);padding:14px 16px;display:flex;align-items:center;gap:var(--space-3)}.reference-stat-grid article>svg{width:34px;height:34px;padding:var(--space-2);border-radius:var(--radius-sm);background:var(--primary-soft);color:var(--primary)}.reference-stat-grid article:nth-child(3)>svg,.fleet-stat-grid article:nth-child(4)>svg{background:var(--warning-bg);color:var(--warning-text)}.reference-stat-grid article:nth-child(4)>svg{background:var(--inactive-bg);color:var(--inactive-text)}.reference-stat-grid article span{display:grid;gap:3px}.reference-stat-grid small{color:var(--text-secondary);font-size:var(--text-xs);font-weight:600;letter-spacing:.05em;text-transform:uppercase}.reference-stat-grid strong{color:var(--text-primary);font-size:var(--text-2xl);line-height:1;font-variant-numeric:tabular-nums}.reference-section-panel,.reference-table-panel{padding:0;overflow:hidden}.reference-section-panel>.note,.reference-section-panel>.form-grid,.reference-section-panel>textarea,.reference-section-panel>.stack-row{margin-left:18px;margin-right:18px}.reference-section-panel>.note{margin-top:14px}.reference-section-panel>.form-grid:first-of-type{margin-top:14px}.reference-section-panel>.stack-row:last-child,.reference-section-panel>textarea+.stack-row{margin-bottom:18px}.reference-section-panel>.form-grid:last-child,.reference-section-panel>.school-admin-list:last-of-type,.reference-section-panel>.user-school-assignments:last-child{margin-bottom:18px}.reference-section-panel>textarea{width:calc(100% - 36px)}.reference-table-panel>.note,.reference-table-panel>.empty-text,.reference-table-panel>.student-unassigned-warning{margin:14px 18px}.reference-panel-heading{min-height:58px;padding:13px 16px;border-bottom:1px solid var(--border);display:flex;align-items:flex-start;gap:10px}.reference-panel-heading:not(.reference-collapse-heading){background:var(--primary-soft)}.reference-panel-heading>span{width:32px;height:32px;border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--surface-subtle);color:var(--text-secondary);display:inline-flex;align-items:center;justify-content:center;flex-shrink:0}.reference-panel-heading:not(.reference-collapse-heading)>span{border-color:var(--informational-border);background:var(--surface);color:var(--primary)}.reference-panel-heading>div{flex:1;min-width:0}.reference-panel-heading h2{margin:0;font-size:var(--text-md);font-weight:700;letter-spacing:-.005em}.reference-panel-heading p{margin:3px 0 0;color:var(--text-secondary);font-size:var(--text-base)}.reference-collapse-heading{width:100%;border:0;border-bottom:1px solid var(--border);border-radius:0;background:var(--primary-soft);color:var(--text-primary);text-align:left;cursor:pointer;box-shadow:var(--shadow-xs);transition:background-color .15s ease}.reference-collapse-heading:hover{background:color-mix(in srgb,var(--primary) 14%,var(--primary-soft))}.reference-collapse-heading>span{transition:background-color .15s ease,border-color .15s ease,color .15s ease}.reference-collapse-heading:hover>span,.reference-collapse-heading:hover>svg{border-color:var(--primary);background:var(--primary);color:var(--on-accent)}.reference-collapse-heading:focus-visible{outline:2px solid var(--focus-ring);outline-offset:-2px}.reference-collapse-heading[aria-expanded=true]{background:var(--primary-soft-strong)}.reference-collapse-heading>span{border-color:var(--informational-border);background:var(--surface);color:var(--primary)}.reference-collapse-heading>svg{width:30px;height:30px;margin:1px 0 0 auto;padding:7px;border:1px solid var(--informational-border);border-radius:var(--radius-md);background:var(--surface);color:var(--primary);flex-shrink:0;transition:transform .16s ease,background-color .16s ease}.reference-collapse-heading>svg.expanded{transform:rotate(180deg)}.import-roster-trigger{border-color:var(--informational-border);background:var(--primary-soft);color:var(--primary)}.import-roster-trigger:hover,.import-roster-trigger.active{border-color:var(--primary);background:color-mix(in srgb,var(--primary) 18%,var(--primary-soft));color:color-mix(in srgb,var(--text-primary) 35%,var(--primary))}.roster-import-content,.collapsible-section-content{display:grid;gap:10px;padding:14px 18px 18px}.roster-import-content>.note,.roster-import-content>.form-grid,.roster-import-content>textarea,.roster-import-content>.stack-row,.collapsible-section-content>.note,.collapsible-section-content>.form-grid,.collapsible-section-content>textarea,.collapsible-section-content>.stack-row{margin-left:0;margin-right:0}.roster-import-content>.note,.collapsible-section-content>.note{margin-top:0}.reference-table-toolbar{padding:14px 16px;border-bottom:1px solid var(--border);display:grid;grid-template-columns:minmax(260px,1fr) repeat(3,minmax(150px,210px));gap:9px;background:var(--surface)}.reference-table-toolbar select{min-height:38px;padding-block:7px;font-size:var(--text-base)}.inventory-table-toolbar,.student-filter-toolbar{grid-template-columns:minmax(240px,1fr) repeat(3,minmax(145px,190px)) auto}.classroom-table-toolbar{grid-template-columns:minmax(220px,1fr) repeat(4,minmax(140px,190px)) auto}.dashboard-filter-toolbar{grid-template-columns:repeat(auto-fit,minmax(165px,1fr));padding-inline:0;align-items:end}.filter-field{display:grid;gap:5px;min-width:0;margin:0}.filter-field>span{color:var(--text-secondary);font-size:var(--text-xs);font-weight:700;letter-spacing:.05em;text-transform:uppercase}.filter-field select,.filter-field input{min-height:38px;padding-block:7px;font-size:var(--text-base);width:100%}.repair-table-toolbar{grid-template-columns:minmax(260px,1fr) repeat(3,minmax(150px,210px)) auto}.bug-report-table-toolbar,.compact-filter-toolbar{grid-template-columns:minmax(260px,1fr) minmax(170px,230px) auto}.user-admin-filter-toolbar{grid-template-columns:minmax(240px,1fr) repeat(2,minmax(150px,210px)) auto}.fleet-filter-toolbar{grid-template-columns:minmax(170px,1.35fr) minmax(105px,.8fr) minmax(155px,1.2fr) minmax(130px,.9fr) minmax(150px,1.05fr) minmax(145px,1fr) auto}.filter-clear-button{min-height:38px;border-radius:var(--radius-sm);white-space:nowrap;width:auto;justify-self:start}.reference-search{min-height:38px;border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--surface);padding:7px 11px;display:flex;align-items:center;gap:var(--space-2)}.reference-search svg{color:var(--text-muted);flex-shrink:0}.reference-search input{border:0;border-radius:0;padding:0;box-shadow:none;background:transparent;font-size:var(--text-base)}.reference-search input:focus{border:0;box-shadow:none}.reference-search:focus-within{border-color:var(--primary);box-shadow:0 0 0 3px #0e53cd1f}.reference-table-count{padding:var(--space-2) var(--space-4);border-bottom:1px solid var(--border);background:var(--surface-subtle);color:var(--text-secondary);font-size:var(--text-sm);display:flex;align-items:center;justify-content:space-between;gap:var(--space-3);flex-wrap:wrap}.reference-table-scroll{max-height:calc(100vh - 360px);overflow:auto;scrollbar-width:thin;scrollbar-color:var(--border-strong) transparent}.reference-muted-cell{color:var(--text-muted)}.reference-empty-state{padding:32px 16px!important;color:var(--text-muted);text-align:center!important}.school-admin-create>.school-admin-list,.school-admin-create>.note,.settings-year-panel>.settings-primary-action,.settings-year-panel>.settings-archive-preview{margin-left:18px;margin-right:18px}.settings-primary-action{justify-self:start;margin-top:18px;margin-bottom:18px}.settings-archive-preview{margin-top:var(--space-4);margin-bottom:18px;border:1px solid var(--danger-border);border-left:4px solid var(--danger-text);border-radius:var(--radius-md);padding:var(--space-4);background:var(--danger-bg)}.settings-archive-preview h3{margin:0 0 10px;color:var(--danger-text);font-size:var(--text-lg)}.settings-archive-preview ul{margin:0 0 14px;padding-left:var(--space-5);color:var(--text-secondary);line-height:1.7}.settings-archive-conflict{color:var(--danger-text)}.settings-archive-actions{justify-content:flex-end}.model-admin-panel>.data-table{margin-top:var(--space-1)}.labels-control-panel>.form-grid{margin-top:14px}.labels-control-panel>.student-unassigned-warning,.labels-control-panel>.classroom-meta{margin-left:18px;margin-right:18px}.repair-intake-panel>.scan-focus-area{margin:14px 18px 18px}.fleet-report-grid{display:grid;grid-template-columns:minmax(300px,.85fr) minmax(500px,1.5fr);gap:14px}.fleet-report-error{padding:10px}.fleet-condition-list{padding:var(--space-4);display:grid;gap:15px}.fleet-condition-row{display:grid;grid-template-columns:1fr auto;gap:7px 12px}.fleet-condition-row>div:first-child{grid-column:1 / -1;display:flex;align-items:center;justify-content:space-between}.fleet-condition-row>strong{font-variant-numeric:tabular-nums}.fleet-condition-row small{color:var(--text-muted);font-size:var(--text-xs)}.fleet-meter,.fleet-mini-meter{height:6px;border-radius:999px;background:var(--inactive-bg);overflow:hidden}.fleet-meter span,.fleet-mini-meter span{display:block;height:100%;border-radius:inherit;background:var(--primary)}.fleet-mini-meter{min-width:90px}.fleet-aue-callout{margin:0 16px 16px;border:1px solid var(--border);border-radius:var(--radius-sm);padding:var(--space-3);display:flex;align-items:flex-start;gap:9px}.fleet-aue-callout.attention{border-color:var(--warning-border);background:var(--warning-bg);color:var(--warning-text)}.fleet-aue-callout.good{border-color:var(--success-border);background:var(--success-bg);color:var(--success-text)}.fleet-aue-callout p{margin:2px 0 0;color:inherit;font-size:var(--text-sm)}.fleet-backup-panel .reference-panel-heading{background:var(--surface)}.modal-backdrop{position:fixed;inset:0;background:#0206178f;display:grid;place-items:center;padding:var(--space-3);z-index:50}.drawer-backdrop{position:fixed;inset:0;z-index:55;background:#02061780;border:0;padding:0;cursor:default;animation:drawer-fade .18s ease}.drawer{position:fixed;top:0;right:0;bottom:0;z-index:56;width:min(440px,100vw);background:var(--surface);border-left:1px solid var(--border);box-shadow:var(--shadow-lg);display:flex;flex-direction:column;animation:drawer-slide .22s cubic-bezier(.22,1,.36,1)}.drawer-head{display:flex;align-items:center;justify-content:space-between;gap:var(--space-3);padding:18px 20px;border-bottom:1px solid var(--border)}.drawer-head h2{font-size:var(--text-xl)}.drawer-close{width:34px;height:34px;padding:0;border-radius:50%;background:var(--surface-subtle);color:var(--text-secondary);font-size:var(--text-2xl);line-height:1;display:inline-flex;align-items:center;justify-content:center}.drawer-close:hover{background:var(--border);color:var(--text-primary)}.drawer-body{flex:1;overflow-y:auto;padding:var(--space-5)}.drawer-form{display:grid;gap:14px}.drawer-form>.note{margin:0 0 4px}.drawer-inline-warning{display:grid;gap:var(--space-2);padding:var(--space-3)}.drawer-inline-warning p{margin:0}.drawer-inline-warning .btn-ghost{justify-self:start}.drawer-foot{display:flex;align-items:center;justify-content:flex-end;gap:10px;padding:var(--space-4) var(--space-5);border-top:1px solid var(--border)}@keyframes drawer-slide{0%{transform:translate(100%)}to{transform:translate(0)}}@keyframes drawer-fade{0%{opacity:0}to{opacity:1}}@media(prefers-reduced-motion:reduce){.drawer,.drawer-backdrop{animation:none}}.modal{width:min(480px,96vw);background:var(--surface);border-radius:var(--radius-lg);border:1px solid var(--border);padding:18px;display:grid;gap:var(--space-3);box-shadow:var(--ui-shadow-lg)}.compact-form-modal{width:min(440px,96vw);padding:0;gap:0;overflow:hidden}.compact-modal-head{display:flex;align-items:flex-start;justify-content:space-between;gap:14px;padding:18px 20px;border-bottom:1px solid var(--border)}.compact-modal-head h2{margin:0;font-size:var(--text-xl)}.compact-modal-head p{margin-top:var(--space-1);color:var(--text-secondary);font-size:var(--text-base);line-height:1.4}.modal-close-button{width:34px;height:34px;padding:0;border-radius:var(--radius-sm);background:var(--surface-subtle);color:var(--text-secondary);font-size:var(--text-2xl);line-height:1}.compact-modal-form{display:grid;gap:14px;padding:var(--space-5)}.compact-modal-actions{display:flex;align-items:center;justify-content:flex-end;gap:10px;padding:var(--space-4) var(--space-5);border-top:1px solid var(--border)}.bug-report-modal{width:min(700px,96vw)}.bug-report-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.modal p{margin:0;color:var(--text-primary)}.confirm-modal{border-width:2px}.confirm-head{display:flex;align-items:center;gap:var(--space-2)}.confirm-head h2{font-size:var(--text-xl)}.confirm-modal.tone-warning{border-color:var(--warning-text);background:var(--surface)}.note{color:var(--text-secondary);font-size:var(--text-sm)}.toast{position:fixed;bottom:20px;right:20px;background:var(--civic-navy);color:var(--on-accent);border-radius:var(--radius-md);padding:var(--space-3) var(--space-4);display:inline-flex;align-items:center;gap:6px;z-index:70}.school-gate{min-height:100vh;display:grid;place-items:center;padding:var(--space-5);background:radial-gradient(circle at 15% 15%,rgba(14,83,205,.08),transparent 30%),radial-gradient(circle at 85% 82%,rgba(11,31,58,.07),transparent 28%),var(--background)}.auth-landing-gate{position:relative;isolation:isolate;overflow:hidden;padding:18px;background-color:var(--scene-ground);background-image:linear-gradient(#ffffff1f,#ffffff1f),url(/harvey152-education-key-background.webp);background-size:cover;background-position:center}.auth-landing-content{position:relative;z-index:2;width:min(440px,94vw);display:grid;justify-items:center;gap:14px}.auth-district-brand{color:var(--text-primary);text-align:center}.auth-district-brand img{width:78px;height:78px;margin-bottom:7px;border-radius:var(--radius-sm);background:var(--surface);object-fit:contain;box-shadow:0 12px 30px #0b1f3a29}.auth-district-brand p{margin:0;color:var(--primary);font-size:var(--text-xs);font-weight:800;letter-spacing:.16em;text-transform:uppercase}.auth-district-brand h1{margin:2px 0 0;color:var(--primary);font-family:Segoe Print,Bradley Hand,cursive;font-size:var(--text-3xl);line-height:1.18;letter-spacing:-.025em}.auth-district-brand span{display:block;margin-top:3px;color:var(--text-secondary);font-size:var(--text-sm);font-weight:600}.auth-landing-panel{width:100%;border:1px solid rgba(255,255,255,.86);border-radius:12px;background:#ffffffeb;padding:var(--space-5);box-shadow:0 24px 70px #0b1f3a29;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.cms-app-mark{width:62px;height:62px;flex-shrink:0}.auth-landing-panel .cms-brand-text h2{margin:0;color:var(--text-primary);font-size:var(--text-xl);line-height:1.18;letter-spacing:-.015em}.auth-landing-panel .cms-brand-text p{margin-top:3px}.auth-landing-scene{position:absolute;inset:0;z-index:1;pointer-events:none}.auth-scene-card{position:absolute;filter:drop-shadow(0 18px 28px rgba(38,52,70,.14));opacity:.86}.auth-scene-roster{top:15%;left:2.5%;width:min(270px,21vw);transform:rotate(-5deg)}.auth-scene-dashboard{top:13%;right:1.5%;width:min(330px,25vw);transform:rotate(3.5deg)}.auth-scene-label{bottom:7%;left:5%;width:min(250px,20vw);transform:rotate(3deg)}.auth-scene-checklist{right:6%;bottom:7%;width:min(225px,18vw);transform:rotate(-4deg)}.gate-panel{width:min(860px,95vw);border-radius:var(--radius-md);border:1px solid var(--border);background:var(--surface);padding:22px;box-shadow:var(--ui-shadow-lg)}.school-selection-panel{width:min(520px,92vw)}.gate-panel p{color:var(--text-primary)}.auth-panel{width:min(620px,94vw);border-top:3px solid var(--primary)}.auth-panel.auth-landing-panel{width:100%;border-top:1px solid rgba(255,255,255,.86)}.auth-form{margin-top:var(--space-3);display:grid;gap:10px}.auth-security-note{margin-top:14px;padding:10px 12px;border:1px solid var(--border);border-radius:var(--radius-md);background:var(--surface-subtle);color:var(--text-secondary);display:flex;align-items:flex-start;gap:var(--space-2);font-size:var(--text-sm);line-height:1.5}.auth-security-note svg{margin-top:1px;color:var(--primary);flex-shrink:0}.auth-submit{display:inline-flex;align-items:center;justify-content:center;gap:var(--space-2);width:100%;background:var(--primary);color:var(--on-accent);border:1px solid var(--primary);box-shadow:none}.auth-submit:hover{background:var(--primary-hover)}.auth-submit:focus-visible{outline:2px solid var(--focus-ring);outline-offset:2px}.auth-error{margin:0;color:var(--danger-text);background:var(--danger-bg);border:1px solid var(--danger-border);border-radius:var(--radius-md);padding:8px 10px;font-size:var(--text-base);font-weight:600}.cms-brand{display:flex;align-items:center;gap:var(--space-3);margin-bottom:6px}.cms-brand-text h1{margin:0;font-size:var(--text-3xl);line-height:1.1;letter-spacing:-.01em;color:var(--text-primary)}.cms-brand-text p{margin:2px 0 0;color:var(--primary);font-weight:600}.school-grid{margin-top:14px;display:grid;grid-template-columns:repeat(auto-fit,minmax(190px,1fr));gap:10px}.school-card{display:flex;align-items:center;gap:10px;justify-content:center;border:1px solid var(--border);border-radius:var(--radius-md);padding:14px;background:var(--surface);color:var(--text-primary);font-weight:600}.school-card:hover{border-color:var(--primary);background:var(--primary-soft)}.user-school-assignments p{margin:12px 0 8px;color:var(--ui-text-muted)}.user-school-assignment-list{display:flex;flex-wrap:wrap;gap:var(--space-2)}.user-school-assignment-list.inline-edit{margin-top:10px}.user-school-chip{border-radius:var(--radius-sm);padding-inline:12px}.user-school-chip.selected{background:var(--informational-bg);border-color:var(--informational-border);color:var(--informational-text)}.school-admin-create p{margin:6px 0 12px;color:var(--ui-text-muted)}.school-admin-list{margin-top:14px;display:grid;gap:var(--space-2)}.school-admin-row{display:flex;align-items:center;justify-content:space-between;gap:var(--space-3);border:1px solid var(--ui-border);border-radius:var(--radius-md);padding:10px 12px;background:var(--surface)}.school-admin-meta{display:grid;gap:2px}.school-admin-meta small{color:var(--ui-text-muted)}.user-admin-table-wrap{overflow-x:auto}.school-admin-row>.btn-danger{min-width:86px;height:40px;justify-content:center}.user-admin-actions{display:flex;align-items:center;justify-content:flex-end;gap:var(--space-2)}.user-admin-actions input{min-width:210px;height:40px}.user-admin-actions button{min-width:86px;height:40px;justify-content:center}.user-role-summary{display:grid;gap:2px}.user-role-summary small{color:var(--ui-text-muted)}.room-breadcrumb{display:flex;align-items:center;gap:var(--space-2);flex-wrap:wrap;margin-bottom:var(--space-3)}.room-back-link{display:inline-flex;align-items:center;gap:7px;padding:8px 14px 8px 11px;border:1px solid var(--primary);border-radius:var(--radius-pill);background:var(--primary-soft);color:var(--primary);font-size:var(--text-base);font-weight:600}.room-back-link:hover{background:var(--primary);color:var(--on-accent)}.room-back-link svg{transition:transform .15s ease}.room-back-link:hover svg{transform:translate(-2px)}.room-breadcrumb-sep{color:var(--text-muted);font-size:var(--text-base)}.room-breadcrumb-current{font-size:var(--text-base);font-weight:700;color:var(--text-primary)}.next-action-button{border:1px solid var(--border);font-weight:600}.next-action-button[data-action=roster]{border-color:var(--inactive-border);background:var(--inactive-bg);color:var(--inactive-text)}.next-action-button[data-action=physical],.next-action-button[data-action=assignments]{border-color:var(--informational-border);background:var(--primary-soft);color:var(--primary)}.next-action-button[data-action=repairs]{border-color:var(--warning-border);background:var(--warning-bg);color:var(--warning-text)}.next-action-button[data-action=labels]{border-color:var(--success-border);background:var(--success-bg);color:var(--success-text)}.next-action-button[data-action=roster]:hover{background:color-mix(in srgb,var(--inactive-text) 18%,var(--inactive-bg));border-color:var(--inactive-text);color:color-mix(in srgb,var(--text-primary) 35%,var(--inactive-text))}.next-action-button[data-action=physical]:hover,.next-action-button[data-action=assignments]:hover{background:color-mix(in srgb,var(--primary) 18%,var(--primary-soft));border-color:var(--primary);color:color-mix(in srgb,var(--text-primary) 35%,var(--primary))}.next-action-button[data-action=repairs]:hover{background:color-mix(in srgb,var(--warning-text) 18%,var(--warning-bg));border-color:var(--warning-text);color:color-mix(in srgb,var(--text-primary) 35%,var(--warning-text))}.next-action-button[data-action=labels]:hover{background:color-mix(in srgb,var(--success-text) 18%,var(--success-bg));border-color:var(--success-text);color:color-mix(in srgb,var(--text-primary) 35%,var(--success-text))}.user-school-chip.selected:hover{background:color-mix(in srgb,var(--informational-text) 18%,var(--informational-bg));border-color:var(--informational-text);color:color-mix(in srgb,var(--text-primary) 35%,var(--informational-text))}@media(max-width:1280px){.fleet-filter-toolbar{grid-template-columns:repeat(3,minmax(0,1fr))}}@media(max-width:980px){.auth-landing-scene{display:none}.reference-stat-grid,.reference-table-toolbar{grid-template-columns:repeat(2,minmax(0,1fr))}.reference-search{grid-column:1 / -1}.fleet-report-grid{grid-template-columns:1fr}.workflow-lane{grid-template-columns:repeat(2,minmax(0,1fr))}.workflow-check-heading,.operations-heading{align-items:stretch;flex-direction:column}.cms-brand-text h1{font-size:var(--text-3xl)}.dashboard-kpi-grid{grid-template-columns:repeat(2,minmax(150px,1fr))}.dashboard-efficiency-grid,.dashboard-chart-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.dashboard-chart-grid,.bug-report-grid{grid-template-columns:1fr}.sidebar{position:static;width:100%;min-height:auto}.app-shell{display:block}.main-content{margin-left:0;width:100%;max-height:unset}}@media(max-width:620px){.auth-landing-gate{padding:14px}.auth-landing-content{gap:10px}.auth-district-brand img{width:62px;height:62px;margin-bottom:var(--space-1)}.auth-district-brand h1{font-size:var(--text-2xl)}.auth-district-brand span{font-size:var(--text-xs)}.auth-landing-panel{padding:17px}.reference-stat-grid,.reference-table-toolbar{grid-template-columns:1fr}.reference-search{grid-column:auto}.workflow-lane,.workflow-exception-grid{grid-template-columns:1fr}.cms-brand{align-items:flex-start}.cms-brand-text h1{font-size:var(--text-2xl)}.dashboard-kpi-grid,.dashboard-inventory-shortcuts,.dashboard-efficiency-grid,.dashboard-allocation-chart{grid-template-columns:1fr}}@media print{.sidebar,.page-header button,.stack-row button,.toast,.modal-backdrop{display:none!important}.main-content{margin:0;width:100%;max-height:unset;overflow:visible;padding:0}.panel{border:0;box-shadow:none;background:var(--surface)}}.mono{font-family:var(--mono);font-variant-numeric:tabular-nums}
