.access-page,.access-page *{box-sizing:border-box}.access-page{min-height:calc(100svh - 28px);background:#fff;color:#213247;font-family:Segoe UI,Arial,sans-serif}.access-shell{display:grid;grid-template-columns:58% 42%;min-height:calc(100svh - 28px)}.access-story{position:relative;isolation:isolate;overflow:hidden;display:flex;flex-direction:column;background:#f5f0e6;padding:30px clamp(30px,5vw,80px) 35px;min-height:710px}.access-story-art{position:absolute;inset:0;z-index:-2;overflow:hidden}.access-story-image{position:absolute;inset:0;display:block;width:100%;height:100%;object-fit:cover;object-position:70% center}.access-story:after{content:"";position:absolute;inset:0;z-index:-1;pointer-events:none;background:linear-gradient(90deg,rgba(245,240,230,.94),rgba(245,240,230,.88) 27%,rgba(245,240,230,.64) 43%,rgba(245,240,230,.12) 67%,transparent 82%)}.access-story[data-story-index="1"]:after{background:linear-gradient(90deg,rgba(245,240,230,.98),rgba(245,240,230,.94) 34%,rgba(245,240,230,.86) 48%,rgba(245,240,230,.35) 64%,transparent 82%)}.access-wordmark{display:block;width:194px;height:auto;max-width:100%;margin:0 0 22px -12px;background:transparent;padding:0}.access-story-grid{flex:1;display:grid;align-items:start}.access-story-content{max-width:350px}.access-eyebrow{display:block;text-transform:uppercase;font-size:10px;letter-spacing:2.3px;font-weight:650;color:#6a655c;line-height:1.6}.access-story h2{font-family:inherit;font-size:clamp(32px,3.2vw,47px);font-weight:650;letter-spacing:-.045em;line-height:1.15;margin:18px 0;white-space:pre-line}.access-story-lead{max-width:330px;font-size:16px;line-height:1.65;color:#50564f;margin:0 0 18px}.access-story-points{max-width:320px;margin-top:32px}.access-story-points p{font-size:13px;line-height:1.6;margin:0 0 15px;color:#414d50}.access-story-points p:before{content:"—";margin-right:10px;color:#9b7947}.access-story-points small{display:block;font-size:11px;line-height:1.65;color:#50564f;margin-top:22px}.access-story-controls{display:flex;align-items:center;gap:14px;max-width:330px;margin-top:35px;padding:8px 0;border-top:1px solid #21324725}.access-story-dots,.access-story-buttons{display:flex;align-items:center}.access-story-controls button{width:36px;min-height:44px;border:0;background:transparent;color:#213247;padding:0;border-radius:5px;cursor:pointer;font:inherit;font-size:18px}.access-story-controls button:hover{background:#ffffff70}.access-story-dots button{display:grid;place-items:center}.access-story-dots span{width:7px;height:7px;border:1px solid #213247;border-radius:50%}.access-story-dots [aria-current=true] span{width:19px;border-radius:7px;background:#213247}.access-story-buttons{gap:4px;margin-left:auto}.access-story footer{font-size:11px;color:#5c625d;margin-top:10px}.access-form-side{display:flex;align-items:center;justify-content:center;min-width:0;padding:64px clamp(26px,5vw,80px)}.access-card{width:100%;max-width:420px;min-width:0;background:#fff}.access-card h1{font:650 34px/1.15 Segoe UI,Arial,sans-serif;letter-spacing:-.035em;margin:12px 0 16px}.access-card h2{font:650 24px/1.2 Segoe UI,Arial,sans-serif;letter-spacing:-.025em}.access-card p{line-height:1.6;overflow-wrap:anywhere}.access-intro{color:#5c6570;font-size:14px;margin:0 0 30px}.access-field{display:block;font-weight:650;font-size:12px;margin:20px 0 8px}.access-card input{display:block;width:100%;min-width:0;min-height:48px;border:1px solid #bcc1c7;border-radius:5px;padding:12px 13px;background:#fff;color:#213247;font:inherit;font-size:14px}.access-card input:disabled{background:#f5f5f3}.access-password{display:flex}.access-password input{border-radius:5px 0 0 5px;border-right:0}.access-password button{flex-shrink:0;max-width:40%;background:#fff;border:1px solid #bcc1c7;border-radius:0 5px 5px 0;padding:8px 12px;color:#213247;min-height:48px;font:inherit;font-size:12px}.access-primary{display:block;width:100%;min-height:46px;padding:11px 16px;margin:9px 0;background:#213247;color:#fff;border:1px solid #213247;border-radius:5px;font:inherit;font-size:14px;font-weight:600;cursor:pointer}.access-primary:hover:not(:disabled){background:#314b67}.access-primary:disabled{opacity:.65;cursor:default}.access-help{display:block;padding:8px 0;min-height:44px;border:0;background:transparent;color:#213247;font:inherit;font-size:13px;text-align:left;text-decoration:underline;text-underline-offset:4px;cursor:pointer}.access-help:disabled{opacity:.65;cursor:default}.access-fine{font-size:12px;color:#5c6570;margin:24px 0 0}.access-alert,.access-field-error{color:#82271e}.access-alert{background:#fff0eb;border-left:3px solid #a03225;border-radius:5px;padding:12px 14px;margin:18px 0;font-size:13px}.access-field-error{font-size:13px;margin:6px 0}.access-status{font-size:13px;margin:16px 0;min-height:20px}.access-retry{font-size:14px;color:#56616f}.access-dialog{width:min(460px,calc(100% - 32px));border:1px solid #d7d9dc;border-radius:10px;padding:34px;color:#213247}.access-dialog::backdrop{background:#14263980;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px)}.access-dialog h2{font-size:24px}.access-dialog p{font-size:14px;line-height:1.6}.access-page :focus-visible,.access-dialog :focus-visible{outline:3px solid #ae702f;outline-offset:4px}.access-card input[aria-invalid=true]{border-color:#a03225}.access-note{background:#faf7f0;border:1px solid #ddd8cb;border-radius:6px;padding:14px 16px;margin:18px 0;overflow-wrap:anywhere;font-size:13px;line-height:1.6}.access-actions{display:flex;gap:12px;flex-wrap:wrap}.access-actions button{min-height:44px}.access-card code{overflow-wrap:anywhere}.access-check{width:100%;margin-top:16px}.access-check img{max-width:220px;width:100%}.access-card textarea{width:100%;min-height:100px}.access-step{font-size:11px;font-weight:600;color:#7b6848;letter-spacing:.08em;margin:0 0 12px}.access-mobile-wordmark,.access-mobile-footer{display:none}.credential-box textarea,.invitation-handoff textarea{display:block;width:100%;min-height:88px;padding:14px;border:1px dashed #b0b8c2;border-radius:5px;background:#f6f7f8;color:#213247;font:inherit;overflow-wrap:anywhere}.invitation-handoff{border:1px solid #ddd8cb;border-radius:6px;padding:20px;background:#faf7f0;margin:18px 0;overflow-wrap:anywhere}@media(min-width:1600px){.access-story{padding-left:max(80px,calc((100vw - 1440px)/2))}.access-form-side{padding-right:max(80px,calc((100vw - 1440px)/2))}}@media(max-width:1100px)and (min-width:900px){.access-story{padding:30px}.access-form-side{padding:40px 32px}.access-story:after,.access-story[data-story-index="1"]:after{background:linear-gradient(90deg,#f5f0e6f7,#f5f0e6e6 48%,#f5f0e64d 82%,#f5f0e61a)}}@media(max-width:899px){.access-shell{grid-template-columns:1fr}.access-story{display:none}.access-form-side{padding:20px 24px 50px;align-items:flex-start}.access-card{max-width:460px}.access-card h1{font-size:29px}.access-mobile-wordmark{display:block;width:152px;height:auto;margin:0 0 24px -10px}.access-mobile-footer{display:block;font-size:11px;color:#5c625d;margin-top:36px}}@media(max-width:360px){.access-form-side{padding:20px 18px 40px}.access-card h1{font-size:27px}}@media(prefers-reduced-motion:reduce){.access-story *{animation:none;transition:none}}:root{--ink: #213247;--muted: #56616F;--accent: #213247;--accent-soft: #e8eef5;--canvas: #f3f6fa;--surface: #fff;--border: #d6dee8;--nav: #213247;--nav-text: #ffffff;--nav-muted: #c5d2e2;--nav-active: #365674;--heading-font: Bahnschrift, "Arial Narrow", "Segoe UI", sans-serif;--gutter: 28px;--panel: 20px;--title: 36px;font-family:Segoe UI,Arial,sans-serif;font-size:15px;line-height:1.5;color:var(--ink);background:var(--canvas);font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased}*{box-sizing:border-box}body{margin:0;min-width:min(320px,100%);min-height:100vh}button,input,select,textarea{font:inherit}button{cursor:pointer}button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:3px solid rgba(47,159,212,.42);outline-offset:2px}button:disabled{cursor:not-allowed;opacity:.55}.admin-app{display:grid;grid-template-columns:248px minmax(0,1fr);min-height:100vh}.sidebar{position:sticky;top:0;height:100vh;overflow-y:auto;background:var(--accent);color:#fff;padding:24px 16px;display:flex;flex-direction:column;gap:24px;z-index:30}.sidebar-header,.topbar-school{display:flex;align-items:center}.sidebar-header{justify-content:space-between;gap:12px}.brand{display:flex;align-items:center;gap:12px}.brand-mark{width:42px;height:42px;display:grid;place-items:center;border-radius:8px;background:#2f9fd4;color:#fff;font-weight:800;font-size:24px}.brand-image{width:42px;height:42px;object-fit:contain}.brand strong{display:block;font-size:18px}.brand span,.hint,.muted,.field small,.metric small,.data-table small{color:var(--muted)}.sidebar .brand span{color:#bad3e5}.nav-list{display:grid;gap:6px}.nav-item{width:100%;min-height:48px;border:0;border-radius:8px;padding:11px 12px;color:#dbe8f2;background:transparent;display:flex;align-items:center;gap:10px;text-align:left}.nav-item.active,.nav-item:hover{color:#fff;background:#ffffff24}.nav-item:disabled{cursor:not-allowed;opacity:.48}.nav-item:disabled:hover{color:#dbe8f2;background:transparent}.main-panel{padding:0 32px 32px;min-width:0}.topbar,.panel-header,.table-footer,.form-actions,.topbar-actions,.row-actions,.inline-form{display:flex;align-items:center}.topbar{justify-content:space-between;gap:18px;min-height:76px;margin:0 -32px 28px;padding:14px 32px;background:#fff;border-bottom:1px solid var(--border)}.topbar-school{gap:12px}.topbar-school strong,.topbar-school span{display:block}.topbar-school strong{font-size:17px}.topbar-school span{margin-top:2px;color:var(--muted);font-size:14px;text-transform:capitalize}.eyebrow{margin:0;text-transform:uppercase;color:var(--muted);font-size:13px;font-weight:700}.workspace-heading{margin-bottom:18px}.workspace-heading h1{margin:4px 0 6px;color:var(--ink);font-size:clamp(28px,3vw,34px);line-height:1.2}.workspace-heading>p:last-child{margin:0;color:var(--muted);font-size:16px}.secondary-navigation{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:22px;padding-bottom:14px;border-bottom:1px solid var(--border)}.secondary-navigation :is(button,a){min-height:44px;padding:0 15px;color:var(--accent);font-weight:700;background:#fff;border:1px solid var(--border);border-radius:8px}.secondary-navigation :is(button,a).active,.secondary-navigation :is(button,a):hover{background:var(--accent-soft);border-color:var(--accent)}.mobile-menu-button,.mobile-nav-close,.mobile-nav-backdrop{display:none}.topbar-actions,.row-actions,.panel-actions,.form-actions{gap:8px}.panel-actions{display:flex;align-items:center;justify-content:flex-end;flex-wrap:wrap}.content-stack{display:grid;gap:18px}.metric-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px}.metric,.panel,.login-card,.modal,.drawer,.alert,.csv-box{background:#fff;border:1px solid var(--border);border-radius:8px;box-shadow:0 1px 2px #1120330d}.metric{padding:18px}.metric span{color:var(--muted);font-weight:700}.metric strong{display:block;margin:8px 0 4px;font-size:30px}.readiness-grid{display:grid;grid-template-columns:minmax(0,1.3fr) minmax(0,1fr);gap:14px}.readiness-header{display:flex;align-items:center;gap:12px;color:var(--muted);line-height:1.45}.mini-metric-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin-top:14px}.mini-metric{padding:12px;border-radius:8px;background:var(--canvas)}.mini-metric strong,.mini-metric span{display:block}.mini-metric strong{color:var(--accent);font-size:22px}.mini-metric span,.attention-list span{color:var(--muted);font-size:13px}.analytics-page .panel h2{margin:4px 0 0}.analytics-hero{display:grid;grid-template-columns:minmax(0,1fr) 280px;gap:18px;align-items:stretch}.analytics-hero h2{font-size:30px;line-height:1.1}.analytics-hero p{color:var(--muted);line-height:1.55;max-width:760px}.analytics-controls{display:grid;gap:10px;padding:16px;border:1px solid var(--border);border-radius:8px;background:var(--canvas)}.analytics-controls label{display:grid;gap:6px}.analytics-controls span{color:var(--muted);font-size:12px;font-weight:800;letter-spacing:.04em;text-transform:uppercase}.analytics-two-column{display:grid;grid-template-columns:minmax(0,1.4fr) minmax(280px,.6fr);gap:16px}.analytics-bars{display:grid;gap:10px}.analytics-bar-row{display:grid;grid-template-columns:58px minmax(0,1fr) 42px;gap:10px;align-items:center}.analytics-bar-row span,.analytics-bar-row strong{color:var(--muted);font-size:13px}.analytics-bar-track{display:flex;min-height:14px;overflow:hidden;background:var(--accent-soft);border-radius:999px}.analytics-bar{min-height:14px}.analytics-bar.entered{background:#27ad70}.analytics-bar.left{background:#e9aa1f}.analytics-health-list{display:grid;gap:10px}.analytics-health-item{display:grid;grid-template-columns:72px minmax(0,1fr);gap:4px 12px;align-items:center;padding:12px;background:var(--canvas);border:1px solid var(--border);border-radius:8px}.analytics-health-item strong{grid-row:span 2;color:var(--accent);font-size:28px}.analytics-health-item span{color:var(--ink);font-weight:800}.analytics-health-item small{color:var(--muted)}.analytics-grid{display:grid;grid-template-columns:repeat(4,minmax(220px,1fr));gap:14px}.analytics-card{display:grid;gap:12px;padding:16px;background:#fff;border:1px solid var(--border);border-radius:8px;box-shadow:0 2px 10px #0f23340a}.analytics-card-header{display:flex;gap:12px;align-items:flex-start;justify-content:space-between}.analytics-card h3{margin:0;color:var(--ink);font-size:18px}.analytics-card p{margin:0;color:var(--muted);line-height:1.45}.analytics-card-metrics{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.analytics-empty-state{display:grid;gap:6px;padding:18px;background:var(--canvas);border:1px dashed var(--border);border-radius:8px}.analytics-empty-state strong{color:var(--ink)}.analytics-empty-state span{color:var(--muted)}.analytics-report-workspace{display:grid;gap:14px}.report-tabs{display:flex;flex-wrap:wrap;gap:8px}.report-tabs button{padding:8px 12px;color:var(--accent);font-weight:800;cursor:pointer;background:#fff;border:1px solid var(--border);border-radius:999px}.report-tabs button.active{color:#fff;background:var(--accent);border-color:var(--accent)}.analytics-report-table{display:grid;gap:12px}.report-summary{display:flex;gap:12px;align-items:center;justify-content:space-between}.report-summary>div{display:grid;gap:4px}.report-summary strong{color:var(--ink)}.report-summary span{color:var(--muted)}.analytics-data-table .column-filter-row th{padding:8px;background:var(--canvas)}.column-filter{min-width:150px;padding:9px 10px;font-size:13px}.attention-list{display:grid;gap:12px;padding:0;margin:0;list-style:none}.attention-list li{display:grid;grid-template-columns:48px minmax(0,1fr) auto;gap:12px;align-items:center}.attention-list strong{display:grid;place-items:center;min-height:36px;border-radius:8px;color:var(--accent);background:var(--accent-soft)}.panel{padding:22px}.attendance-filter-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;padding:16px;background:var(--canvas);border:1px solid var(--border);border-radius:8px}.attendance-filter-meta{display:flex;align-items:center;justify-content:space-between;gap:12px;color:var(--muted);font-size:14px}.panel-header{justify-content:space-between;gap:14px;margin-bottom:14px}.panel h2,.modal h2{margin:0;font-size:20px}.table-shell{border:1px solid var(--border);border-radius:8px;overflow:hidden}.table-toolbar{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:10px 12px;border-bottom:1px solid var(--border);background:#fff}.table-toolbar label{width:min(360px,100%)}.table-toolbar-actions{display:flex;align-items:center;justify-content:flex-end;gap:10px}.table-search{min-height:44px}.table-export-error{font-size:12px}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.table-scroll{overflow-x:auto}.data-table{width:100%;border-collapse:collapse;min-width:760px}.data-table th,.data-table td{padding:16px 14px;text-align:left;border-bottom:1px solid var(--border);vertical-align:middle}.data-table th{background:var(--canvas);color:var(--muted);font-size:13px;text-transform:none}.data-table strong,.data-table small{display:block}.empty-cell{text-align:center!important;color:var(--muted);padding:28px!important}.table-footer{justify-content:space-between;padding:10px 12px;background:#fff;color:var(--muted);font-size:14px;gap:12px;flex-wrap:wrap}.table-footer-meta,.page-size-control{display:inline-flex;align-items:center;gap:10px}.page-size-control select{min-height:44px;border:1px solid var(--border);border-radius:8px;color:var(--ink);background:#fff;padding:0 8px}.pager{display:flex;align-items:center;gap:8px}.primary-button,.secondary-button,.danger-button,.icon-button,.link-button{min-height:44px;border-radius:8px;border:1px solid transparent;display:inline-flex;align-items:center;justify-content:center;gap:8px;font-weight:700}.primary-button{padding:0 16px;color:#fff;background:var(--accent)}.secondary-button{padding:0 14px;color:var(--accent);background:#fff;border-color:var(--border)}.danger-button{padding:0 14px;color:#9f2b34;background:#fff;border-color:#e9b8bd}.compact-button{min-height:44px;padding-inline:13px;font-size:14px}.icon-button{width:44px;min-height:44px;color:var(--muted);background:#fff;border-color:var(--border)}.link-button{padding:0;min-height:auto;color:var(--accent);background:transparent;border:0;text-decoration:underline}.student-photo-cell{display:flex;align-items:center;gap:10px}.student-photo-thumb,.student-photo-preview{display:grid;place-items:center;overflow:hidden;flex:0 0 auto;color:var(--accent);background:var(--accent-soft);outline:1px solid rgba(0,0,0,.1);font-weight:800}.student-photo-thumb{width:42px;height:42px;border-radius:50%;font-size:13px}.student-photo-preview{width:112px;height:112px;border-radius:16px;font-size:28px}.student-photo-thumb img,.student-photo-preview img{width:100%;height:100%;object-fit:cover}.student-photo-editor{display:flex;align-items:center;gap:14px}.student-photo-controls{display:flex;flex-wrap:wrap;align-items:center;gap:8px}.student-photo-controls small{flex-basis:100%}.file-button{position:relative;overflow:hidden}.file-button input{position:absolute;inset:0;opacity:0;cursor:pointer}.status-badge{display:inline-flex;align-items:center;height:26px;padding:0 10px;border-radius:999px;font-size:12px;font-weight:800;text-transform:capitalize}.status-badge.good{color:#146b46;background:#dff4e8}.status-badge.warn{color:#865b10;background:#fff1ce}.status-badge.bad{color:#9f2b34;background:#fbe4e7}.alert{display:flex;align-items:center;gap:10px;padding:12px 14px;margin-bottom:16px;border-color:#f1c9a8;background:#fff6ed;color:#7a3c13}.alert.compact{display:block;margin:0}.loading-line{margin-bottom:14px;color:var(--muted)}.operation-lock-banner{align-items:center;background:var(--accent-soft);border:1px solid var(--border);border-radius:8px;color:var(--accent);display:flex;font-weight:700;gap:10px;margin-bottom:16px;padding:12px 14px}.admin-content-locked{opacity:.72;pointer-events:none;-webkit-user-select:none;user-select:none}.spin{animation:spin 1s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.overlay{position:fixed;inset:0;z-index:40;background:#0817276b;display:flex;justify-content:flex-end}.modal{width:min(620px,calc(100vw - 28px));align-self:center;margin:auto;max-height:calc(100vh - 40px);overflow:auto}.modal-wide{width:min(900px,calc(100vw - 28px))}.drawer{width:min(600px,100vw);min-height:100vh;border-radius:0;overflow:auto}.modal-header{display:flex;justify-content:space-between;align-items:center;gap:14px;padding:18px;border-bottom:1px solid var(--border)}.modal-body,.form-stack{padding:18px}.form-stack{display:grid;gap:14px}.field{display:grid;gap:7px;font-weight:700}.input{width:100%;min-height:46px;border:1px solid var(--border);border-radius:8px;padding:9px 11px;color:var(--ink);background:#fff}.readonly-input{display:flex;align-items:center;background:var(--canvas)}.textarea{min-height:130px;resize:vertical}.field-error{color:#b32634!important}.field-warning{margin:0;color:#865b10;font-size:13px}.parent-picker{display:grid;gap:10px}.selected-parent-card,.parent-option{width:100%;border:1px solid var(--border);border-radius:8px;padding:10px 12px;background:#fff;text-align:left}.selected-parent-card{display:flex;align-items:center;justify-content:space-between;gap:12px}.selected-parent-card strong,.selected-parent-card small,.parent-option span,.parent-option small{display:block}.parent-option{color:var(--ink);cursor:pointer}.parent-option:hover,.parent-option.selected{border-color:var(--accent);background:var(--accent-soft)}.parent-option-list{display:grid;max-height:280px;gap:8px;overflow-y:auto}.parent-option-empty{color:var(--muted)}.two-col{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.input-with-button{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px;align-items:center}.form-actions{justify-content:flex-end;padding:18px;border-top:1px solid var(--border)}.drawer .form-actions{padding-inline:0;margin-top:4px}.inline-form{gap:12px;align-items:flex-end;max-width:520px}.text-line{margin:10px 0 0}.setup-code-box{border:1px dashed #8fb0c8;border-radius:8px;padding:16px;background:var(--canvas)}.setup-code-box code{display:block;overflow-wrap:anywhere;color:var(--accent);font-size:22px;font-weight:800;letter-spacing:0}.csv-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.csv-box{padding:16px;display:grid;gap:10px}.import-workflow{display:grid;gap:14px;margin-bottom:16px}.import-step{align-items:center;border:1px solid var(--border);border-radius:8px;display:flex;gap:16px;justify-content:space-between;padding:16px}.import-step h3,.import-step p{margin:0}.file-button{cursor:pointer;overflow:hidden;position:relative}.file-button input{height:1px;opacity:0;pointer-events:none;position:absolute;width:1px}.file-button.disabled{cursor:not-allowed;opacity:.62}.success-alert{align-items:center;background:#ecfdf3;border:1px solid #bbf7d0;border-radius:8px;color:#166534;display:flex;gap:10px;margin-bottom:14px;padding:12px}.import-preview{display:grid;gap:14px}.import-summary{display:grid;gap:10px;grid-template-columns:repeat(4,minmax(0,1fr))}.import-actions{align-items:center;display:flex;gap:16px;justify-content:space-between}.validation-list{display:grid;gap:4px}.import-empty{align-items:center;border:1px dashed var(--border);border-radius:8px;color:var(--muted);display:grid;gap:8px;justify-items:center;padding:28px;text-align:center}.definition-grid{display:grid;grid-template-columns:160px minmax(0,1fr);gap:10px 16px;margin:0}.definition-grid dt{color:var(--muted);font-weight:700}.definition-grid dd{margin:0}.plain-list{margin:0;padding-left:18px;color:var(--muted)}.login-page{min-height:100vh;display:grid;place-items:center;padding:28px;overflow:hidden;background:radial-gradient(circle at 18% 18%,rgba(54,182,229,.18),transparent 28rem),radial-gradient(circle at 82% 78%,rgba(15,122,66,.18),transparent 30rem),linear-gradient(135deg,var(--accent-soft) 0%,var(--canvas) 46%,#e6f5ed 100%)}.login-shell{width:min(1080px,100%);min-height:620px;display:grid;grid-template-columns:minmax(0,1.05fr) minmax(360px,.82fr);align-items:stretch;border:1px solid rgba(18,62,99,.12);border-radius:24px;overflow:hidden;background:#ffffffbd;box-shadow:0 28px 80px #1220332e}.login-visual-panel{position:relative;min-height:580px;padding:42px;overflow:hidden;color:#fff;background:linear-gradient(145deg,#123e63f5,#0e5347f0),var(--accent)}.login-visual-panel:after{content:"";position:absolute;inset:auto -15% -32%;height:42%;background:radial-gradient(ellipse,rgba(255,255,255,.18),transparent 65%)}.login-signal-scene{position:absolute;inset:28px;opacity:.95}.login-signal-scene canvas{width:100%!important;height:100%!important;display:block}.login-visual-copy{position:relative;z-index:1;width:min(480px,100%);display:grid;gap:18px}.login-wordmark{width:min(300px,72vw);max-height:92px;object-fit:contain;padding:10px 14px;border-radius:16px;background:#fffffff0;box-shadow:0 16px 40px #02122338}.login-wordmark.compact{width:220px;padding:0;background:transparent;box-shadow:none}.login-visual-copy p{width:min(420px,100%);margin:0;color:#d9edf7;font-size:18px;line-height:1.55}.login-card{width:min(430px,100%);padding:24px;display:grid;gap:16px}.login-card.elevated{align-self:center;justify-self:center;padding:36px;border:1px solid rgba(18,62,99,.14);border-radius:18px;background:#fff;box-shadow:0 18px 54px #12203329}.login-card-mark{width:64px;height:64px}.login-card-mark img{width:100%;height:100%;object-fit:contain}.login-card h1,.login-card p{margin:0}.login-card h1{color:var(--ink);font-size:clamp(32px,4vw,46px);line-height:1.02;letter-spacing:-.02em}.login-card p{color:var(--muted);line-height:1.55}.student-cell,.profile-title-line,.profile-actions,.setup-statuses,.registration-step h3,.registration-result-list li{display:flex;align-items:center}.student-cell{min-width:240px;gap:12px}.student-avatar{display:inline-flex;flex:0 0 auto;align-items:center;justify-content:center;overflow:hidden;color:var(--accent);font-weight:800;background:var(--accent-soft);border:1px solid var(--border);border-radius:999px}.student-avatar img{width:100%;height:100%;object-fit:cover}.student-avatar.small{width:42px;height:42px;font-size:13px}.student-avatar.medium{width:56px;height:56px;font-size:16px}.student-avatar.large{width:88px;height:88px;font-size:25px}.setup-statuses{min-width:190px;flex-wrap:wrap;gap:6px}.directory-quick-filter{display:flex;align-items:center;flex-wrap:wrap;gap:8px;margin-bottom:14px}.directory-quick-filter>span{margin-right:4px;color:var(--muted);font-size:14px;font-weight:700}.directory-quick-filter button{min-height:40px;padding:0 13px;color:var(--muted);background:#fff;border:1px solid var(--border);border-radius:999px}.directory-quick-filter button.active{color:#fff;background:var(--accent);border-color:var(--accent)}.text-button{display:inline-flex;align-items:center;width:fit-content;min-height:44px;padding:0;color:var(--accent);font-weight:750;background:transparent;border:0}.profile-back{margin-bottom:-4px;gap:8px}.profile-hero{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:20px;padding:24px;background:linear-gradient(135deg,#ffffff,var(--accent-soft));border:1px solid var(--border);border-radius:12px}.profile-identity h2,.registration-step h3{margin:0;color:var(--ink)}.profile-identity p{margin:6px 0;color:var(--muted);font-size:17px;font-weight:700}.profile-identity>span{color:var(--muted)}.profile-title-line{flex-wrap:wrap;gap:10px}.profile-title-line h2{font-size:26px}.profile-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}.profile-panel{padding:22px}.profile-panel .panel-heading h2{display:flex;align-items:center;gap:9px}.profile-card-stack{display:grid;gap:14px}.detail-card{display:flex;align-items:flex-start;justify-content:space-between;gap:14px;padding:16px;background:var(--canvas);border:1px solid var(--border);border-radius:9px}.detail-card>div{display:grid;gap:4px}.detail-card span{color:var(--muted);font-size:14px}.profile-actions{flex-wrap:wrap;gap:8px}.empty-workflow-state{display:flex;align-items:center;gap:14px;min-height:92px;padding:16px;color:var(--muted);background:var(--canvas);border:1px dashed var(--border);border-radius:9px}.empty-workflow-state>div{flex:1}.empty-workflow-state p{margin:4px 0 0}.profile-loading{padding:28px;color:var(--muted)}.profile-facts{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1px;overflow:hidden;margin:0;background:var(--border);border:1px solid var(--border);border-radius:9px}.profile-facts>div{padding:15px;background:#fff}.profile-facts dt{margin-bottom:5px;color:var(--muted);font-size:13px;font-weight:700}.profile-facts dd{margin:0;color:var(--ink);font-weight:700}.profile-table{min-width:640px}.registration-flow{display:grid;gap:24px}.registration-steps{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;margin:0;padding:0;list-style:none}.registration-steps li{display:flex;align-items:center;gap:8px;min-height:48px;padding:8px 10px;color:var(--muted);font-size:13px;font-weight:700;background:var(--canvas);border:1px solid var(--border);border-radius:8px}.registration-steps li span{display:inline-flex;width:26px;height:26px;align-items:center;justify-content:center;border-radius:999px;background:var(--border)}.registration-step{display:grid;gap:18px}.registration-step>div:first-child>p{margin:5px 0 0;color:var(--muted)}.registration-step h3{gap:9px;font-size:20px}.three-col{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}.choice-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.choice-card{display:grid;gap:5px;min-height:92px;padding:14px;text-align:left;color:var(--ink);background:#fff;border:1px solid var(--border);border-radius:9px}.choice-card span{color:var(--muted);font-size:13px;line-height:1.4}.choice-card.selected{background:var(--accent-soft);border-color:var(--accent);box-shadow:0 0 0 1px var(--accent)}.toggle-row{display:flex;align-items:flex-start;gap:12px;padding:16px;background:var(--canvas);border:1px solid var(--border);border-radius:9px}.toggle-row input{width:20px;height:20px;margin-top:2px}.toggle-row span{display:grid;gap:3px}.toggle-row small{color:var(--muted)}.notice-card{padding:15px;color:var(--muted);background:var(--accent-soft);border:1px solid var(--border);border-radius:9px}.notice-card.warning{background:#fff8e8;border-color:#ead39b}.notice-card p{margin:5px 0 0;line-height:1.5}.registration-actions{justify-content:space-between}.registration-result{display:grid;gap:16px}.registration-result-list{display:grid;gap:10px;margin:0;padding:0;list-style:none}.registration-result-list li{gap:10px}.result-banner{padding:15px;border-radius:9px}.result-banner.success{color:#166044;background:#e9f7f0;border:1px solid #a9dcc4}.result-banner.warning{color:#714f0d;background:#fff8e8;border:1px solid #ead39b}.import-mode-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.import-review-heading{display:grid;gap:3px;margin-top:4px}.import-review-heading h3{margin:0;color:var(--ink)}.report-picker{display:grid;grid-template-columns:minmax(260px,420px) minmax(0,1fr);align-items:end;gap:18px;padding:16px;background:var(--canvas);border:1px solid var(--border);border-radius:8px}.report-picker>div{display:grid;gap:5px;padding-bottom:4px}.report-picker span{color:var(--muted);font-size:14px}.announcement-review{display:grid;gap:18px}.review-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:14px}.review-heading h3{margin:3px 0 0;color:var(--ink)}.announcement-preview-card{display:grid;gap:10px;padding:20px;background:var(--canvas);border:1px solid var(--border);border-radius:9px}.announcement-preview-card h3,.announcement-preview-card p{margin:0}.announcement-preview-card p{color:var(--muted);line-height:1.6;white-space:pre-wrap}.announcement-audience{width:fit-content;padding:5px 9px;color:var(--accent);font-size:13px;font-weight:750;background:var(--accent-soft);border-radius:999px}@media(max-width:980px){.admin-app{grid-template-columns:1fr}.login-shell{min-height:auto;grid-template-columns:1fr}.login-visual-panel{min-height:260px}.login-signal-scene{inset:0}.sidebar{position:fixed;inset:0 auto 0 0;width:min(320px,86vw);height:100vh;padding:20px 16px;visibility:hidden;transform:translate(-105%);transition:transform .16s ease;box-shadow:12px 0 32px #0817273d}.sidebar.open{visibility:visible;transform:translate(0)}.nav-list{grid-template-columns:1fr}.nav-item{justify-content:flex-start}.mobile-menu-button,.mobile-nav-close{display:inline-flex;width:44px;min-width:44px;min-height:44px;align-items:center;justify-content:center;padding:0;border-radius:8px}.mobile-menu-button{color:var(--accent);background:#fff;border:1px solid var(--border)}.mobile-nav-close{color:#fff;background:#ffffff1a;border:1px solid rgba(255,255,255,.28)}.mobile-nav-backdrop{position:fixed;inset:0;z-index:20;display:block;width:100%;min-height:100%;padding:0;background:#0817277a;border:0;border-radius:0}.metric-grid,.csv-grid,.readiness-grid,.import-summary,.analytics-hero,.analytics-two-column,.analytics-grid,.profile-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:680px){.login-page{padding:14px;overflow:auto}.login-shell{border-radius:18px}.login-visual-panel{min-height:210px;padding:24px}.login-card.elevated{padding:24px;border-radius:0;box-shadow:none}.login-card h1{font-size:32px}.main-panel{padding:0 16px 20px}.topbar{align-items:center;flex-direction:row;margin:0 -16px 22px;padding:12px 16px}.panel-header,.inline-form,.table-toolbar{align-items:stretch;flex-direction:column}.table-toolbar label,.table-toolbar-actions .secondary-button{width:100%}.topbar-actions,.row-actions{flex-wrap:wrap}.topbar-actions .secondary-button{min-width:44px;padding-inline:12px}.workspace-heading h1{font-size:28px}.secondary-navigation{display:grid;grid-template-columns:repeat(2,minmax(0,1fr))}.secondary-navigation :is(button,a){width:100%}.metric-grid,.mini-metric-grid,.readiness-grid,.csv-grid,.import-summary,.analytics-hero,.analytics-two-column,.analytics-grid,.two-col,.three-col,.choice-grid,.import-mode-grid,.profile-facts,.attendance-filter-grid,.report-picker{grid-template-columns:1fr}.attention-list li{grid-template-columns:44px minmax(0,1fr)}.attention-list li .secondary-button{grid-column:1 / -1;width:100%}.attendance-filter-meta{align-items:flex-start;flex-direction:column}.review-heading{flex-direction:column}.profile-hero{grid-template-columns:1fr}.profile-identity{min-width:0}.profile-hero>.primary-button{grid-column:1 / -1;width:100%}.registration-steps{grid-template-columns:repeat(2,minmax(0,1fr))}.empty-workflow-state{align-items:flex-start;flex-wrap:wrap}.import-actions,.import-step{align-items:stretch;flex-direction:column}.definition-grid{grid-template-columns:1fr}.student-photo-editor{align-items:flex-start;flex-direction:column}}@media(max-width:430px){.topbar-school strong{max-width:160px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.topbar{align-items:stretch;flex-wrap:wrap}.topbar-school{flex:1 1 100%}.topbar-actions{width:100%}.topbar-actions .secondary-button{flex:1}.secondary-navigation{grid-template-columns:1fr}}.workspace-page{width:100%;display:grid;gap:20px;min-width:0}.workspace-page>*,.workspace-page .panel,.workspace-page form{min-width:0}.workspace-page .panel{padding:22px}.workspace-page h2{margin:0;font-size:19px;line-height:1.35}.workspace-page .panel-header{gap:16px;justify-content:space-between;margin-bottom:18px}.workspace-page .panel-header p{margin:5px 0 0}.workspace-toolbar,.report-builder-footer,.report-results-heading,.filter-summary{display:flex;align-items:center;justify-content:space-between;gap:16px}.workspace-toolbar>div{display:grid;gap:5px}.workspace-toolbar strong{color:var(--ink);font-size:17px}.workspace-toolbar span,.workspace-caption{color:var(--muted);font-size:13px;line-height:1.6}.workspace-caption{margin:0}.workspace-metrics{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px}.workspace-metric{padding:20px;background:#fff;border:1px solid var(--border);border-radius:12px;min-width:0}.workspace-metric>span{color:var(--muted);font-size:14px;font-weight:650}.workspace-metric strong{display:block;margin:10px 0 6px;color:var(--accent);font-size:32px;font-variant-numeric:tabular-nums;line-height:1.1}.workspace-metric small{display:block;color:var(--muted);font-size:12px;line-height:1.45}.workspace-context{display:flex;align-items:center;gap:8px;color:var(--muted);font-size:13px;margin-bottom:-12px}.workspace-context svg{flex-shrink:0}.workspace-count{color:var(--muted);font-size:13px}.workspace-issues{list-style:none;padding:0;margin:0}.workspace-issues li{display:grid;grid-template-columns:44px minmax(0,1fr) auto;align-items:center;gap:16px;padding:16px 0;border-top:1px solid var(--border)}.workspace-issues li:first-child{border-top:0;padding-top:0}.workspace-issues li:last-child{padding-bottom:0}.workspace-issues strong{font-size:15px}.workspace-issues p{margin:4px 0 0;color:var(--muted);font-size:13px;line-height:1.5}.issue-count{display:grid;place-items:center;min-height:42px;background:#fff4d6;color:#775409;border-radius:10px;font-size:20px;font-weight:750;font-variant-numeric:tabular-nums}.workspace-empty{display:flex;flex-direction:column;align-items:center;gap:12px;padding:38px 20px;text-align:center;color:var(--muted)}.workspace-empty svg{color:var(--accent)}.workspace-empty strong{color:var(--ink)}.workspace-empty p{max-width:440px;margin:0;line-height:1.6;font-size:14px}.compact-empty{flex-direction:row;text-align:left;padding:8px 0}.compact-empty svg{color:#26755b;flex-shrink:0}.compact-empty p{margin-top:5px}.responsive-records{min-width:0;max-width:100%;overflow-x:auto;overscroll-behavior-x:contain}.responsive-records:focus-visible{outline:3px solid var(--accent);outline-offset:3px}.responsive-records table{width:100%;min-width:640px;table-layout:auto}.responsive-records td,.responsive-records th{min-width:120px;max-width:320px;overflow-wrap:anywhere;white-space:normal}.responsive-records th{white-space:nowrap}.today-workspace .responsive-records td:first-child{min-width:180px}.table-scroll-hint{display:none;margin:0 0 10px;color:var(--muted);font-size:12px}@media(max-width:980px){.responsive-records th:first-child,.responsive-records td:first-child{position:sticky;left:0;z-index:1;background:#fff;border-right:1px solid var(--border)}.responsive-records th:first-child{background:var(--canvas)}.responsive-records td:first-child{max-width:180px}}@media(max-width:680px){.table-scroll-hint{display:block}.responsive-records th,.responsive-records td{padding:12px;font-size:13px}}.numeric-cell{text-align:right;font-variant-numeric:tabular-nums}.record-subtitle{display:block;color:var(--muted);margin-top:5px}.movement-badge{display:inline-block;border-radius:6px;padding:5px 9px;font-size:12px;font-weight:700}.movement-badge.entered{color:#17634c;background:#e5f4ed}.movement-badge.left{color:#194e7c;background:#e9f1fa}.workspace-details summary,.column-filter-details summary{cursor:pointer;min-height:44px;align-content:center;color:var(--accent);font-weight:700;line-height:1.5}.workspace-details summary span{margin-left:12px;font-size:13px;color:var(--muted);font-weight:400}.school-overview{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:22px;margin:20px 0 0}.school-overview dt{font-size:13px;color:var(--muted)}.school-overview dd{margin:6px 0 0;font-size:24px;font-weight:700;color:var(--ink)}.school-overview small{display:block;margin-top:4px;font-size:12px;font-weight:400;color:var(--muted)}.report-categories{display:flex;gap:8px;border-bottom:1px solid var(--border);padding-bottom:12px}.report-categories button{min-height:44px;padding:10px 20px;border:1px solid transparent;border-radius:8px;background:transparent;color:var(--muted);font-weight:700}.report-categories button[aria-pressed=true]{color:#fff;background:var(--accent)}.report-builder-fields{display:grid;grid-template-columns:1.3fr 1fr 1fr 1fr;gap:14px}.workspace-field{display:grid;gap:7px;min-width:0;font-size:13px;font-weight:650;color:var(--muted)}.workspace-field .input{min-width:0;width:100%;min-height:44px;font-weight:400}.report-builder-footer{margin-top:18px;flex-wrap:wrap}.report-builder-footer .primary-button{min-width:170px}.report-filters{min-width:0}.filter-summary{justify-content:flex-start;flex-wrap:wrap;font-size:13px;color:var(--muted)}.filter-summary>span{overflow-wrap:anywhere}.report-filter-fields{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;padding-top:18px;align-items:end}.report-results-heading{align-items:flex-start;flex-wrap:wrap;margin-bottom:12px}.report-results-heading p{margin:7px 0 0;color:var(--muted);font-size:13px;line-height:1.5}.report-results-heading .primary-button{flex-shrink:0}.column-filter-details{padding:12px 0;margin:12px 0;border-top:1px solid var(--border);border-bottom:1px solid var(--border)}.workspace-notice{padding:12px 16px;margin:0;border:1px solid #e5cf91;background:#fff8e8;border-radius:8px;color:#684d16;line-height:1.6;font-size:14px}.workspace-loading{margin:0;padding:12px;color:var(--accent);background:var(--accent-soft);border-radius:8px}.workspace-page .table-footer{flex-wrap:wrap;gap:14px;padding-bottom:0}.workspace-page .table-footer-meta,.workspace-page .pager{flex-wrap:wrap;gap:10px}.workspace-page button,.workspace-page select{min-height:44px}.workspace-page .text-button{border:0;background:transparent;color:var(--accent);text-decoration:underline;padding:8px}.nav-logout{display:none}.desktop-account{margin-top:auto;border-top:1px solid var(--nav-muted, #91a6ab);padding-top:12px}.account-toggle,.account-actions button{display:flex;width:100%;align-items:center;gap:10px;min-height:44px;padding:10px 14px;color:inherit;background:transparent;border:0;text-align:left;border-radius:4px}.account-toggle:hover,.account-actions button:hover{background:#ffffff1a}.account-toggle span{flex:1}.account-chevron.expanded{transform:rotate(180deg)}.account-actions{display:grid;gap:4px;padding-top:6px}@media(min-width:981px){.topbar .password-change-action{display:none}}@media(max-width:1100px){.report-builder-fields,.report-filter-fields{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:980px){.desktop-account{display:none}.nav-logout{display:flex;align-items:center;gap:10px;margin-top:24px;min-height:44px;padding:10px 14px;color:#fff;background:transparent;border:1px solid #537793;border-radius:8px}.desktop-logout{display:none}.topbar-school{display:flex;min-width:0;flex:1}.topbar-school>div{min-width:0}.topbar-school strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:100%}.workspace-metrics{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:680px){.workspace-page{gap:16px}.workspace-page .panel{padding:16px}.workspace-metrics{gap:10px}.workspace-metric{padding:15px 12px}.workspace-metric strong{font-size:28px}.workspace-metric>span{font-size:13px}.workspace-toolbar{align-items:flex-start;gap:10px}.workspace-toolbar strong{font-size:15px}.workspace-toolbar>div{min-width:0}.workspace-toolbar>button{flex-shrink:0}.workspace-issues li{grid-template-columns:38px minmax(0,1fr);gap:12px}.workspace-issues li button{grid-column:2;justify-self:start}.workspace-page .panel-header{align-items:flex-start;flex-direction:column;gap:12px}.attention-panel .panel-header{flex-direction:row;align-items:center}.school-overview{grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}.workspace-details summary span{display:block;margin:5px 0 0}.report-builder-fields,.report-filter-fields{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.report-filter-fields .workspace-field{grid-column:1 / -1}.report-builder-footer{gap:12px}.report-builder-footer .primary-button{width:100%}.report-results-heading{gap:14px}.report-results-heading .primary-button{width:100%}.workspace-page .table-footer{align-items:flex-start;flex-direction:column}.workspace-page .pager{width:100%;justify-content:space-between}.topbar{flex-wrap:nowrap;align-items:center;min-height:68px}.topbar-school{flex:1}.topbar-actions{width:auto;flex-shrink:0}.topbar-actions:has(>.desktop-logout:only-child){display:none}.topbar-school strong{max-width:100%;font-size:14px}}@media(prefers-reduced-motion:reduce){.sidebar{transition:none}}.form-fields{display:grid;gap:18px;min-width:0;margin:0;padding:0;border:0}.form-fields:disabled{opacity:.75}.table-shell,.table-scroll,.student-profile,.profile-panel,.profile-identity{min-width:0;max-width:100%}.table-scroll{overscroll-behavior-x:contain}.table-scroll:focus-visible{outline:3px solid var(--accent);outline-offset:-3px}.profile-identity,.detail-card,.profile-facts dd{overflow-wrap:anywhere}.table-footer{flex-wrap:wrap;gap:12px}@media(max-width:980px){.table-scroll>.data-table{border-collapse:separate;border-spacing:0}.table-scroll>.data-table th:first-child,.table-scroll>.data-table td:first-child:not(.empty-cell){position:sticky;left:0;z-index:1;background:#fff;box-shadow:1px 0 0 var(--border);min-width:130px;max-width:180px;overflow-wrap:anywhere}.table-scroll>.data-table th:first-child{background:var(--canvas);z-index:2}.table-scroll .student-cell{min-width:0}.table-scroll .student-cell>div{min-width:0}}@media(max-width:680px){.secondary-navigation{display:flex;flex-wrap:nowrap;overflow-x:auto;min-width:0;max-width:100%;gap:6px}.secondary-navigation :is(button,a){flex:0 0 auto;width:auto;min-height:44px;white-space:nowrap}.profile-grid{grid-template-columns:minmax(0,1fr)}.profile-hero{grid-template-columns:auto minmax(0,1fr);padding:16px;gap:12px}.profile-hero>button{grid-column:1 / -1;width:100%}.profile-title-line h2{font-size:22px}.profile-identity p{font-size:15px}.profile-panel{padding:16px}.detail-card,.empty-workflow-state{flex-wrap:wrap}.detail-card>div,.empty-workflow-state>div{min-width:0}.profile-actions>button,.empty-workflow-state>button{flex:1 1 auto;min-height:44px}.table-footer-meta,.pager{flex-wrap:wrap}}.record-link{display:inline-block;min-height:44px;max-width:100%;padding:6px 0;border:0;background:none;color:var(--accent);font:inherit;font-weight:700;text-align:left;text-decoration:underline;text-underline-offset:3px;overflow-wrap:anywhere}.directory-filters{margin:12px 0;min-width:0;border-block:1px solid var(--border)}.directory-filters>summary,.profile-audit>summary{min-height:44px;padding:12px 0;cursor:pointer;font-weight:650;color:var(--muted);overflow-wrap:anywhere}.directory-filter-fields,.attendance-date-bar{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;align-items:end}.directory-filter-fields{padding-block:12px}.directory-result-summary,.student-attendance-scope{display:flex;justify-content:space-between;flex-wrap:wrap;align-items:center;gap:6px 16px;margin:8px 0;color:var(--muted);font-size:13px}.directory-result-summary .text-button{font-size:13px}.directory-result-summary>span{min-width:0;overflow-wrap:anywhere}.student-attendance-scope{padding:8px 12px;background:var(--accent-soft);border-radius:8px}.row-more{min-width:72px}.row-more summary{min-height:44px;padding:12px 8px;color:var(--muted);cursor:pointer}.row-more>button{margin-top:4px}.export-scope .input{width:100%;min-width:0;min-height:44px}.table-toolbar-actions:has(.export-scope){display:flex;align-items:center;flex-wrap:wrap;gap:8px}.table-toolbar-actions .export-scope{flex:1;min-width:0}.profile-setup{display:grid;gap:16px;min-width:0}.profile-setup .panel{min-width:0}.profile-audit summary svg{vertical-align:middle;margin-right:8px}.profile-audit .profile-facts{margin-top:12px}.form-section-heading{margin:12px 0 0;padding-bottom:8px;border-bottom:1px solid var(--border);color:var(--accent)}.drawer .form-actions,.registration-actions{position:sticky;bottom:0;background:#fff;padding-block:16px;z-index:3}@media(max-width:680px){.attendance-date-bar{grid-template-columns:repeat(2,minmax(0,1fr))}.attendance-date-bar>.field:first-child{grid-column:1 / -1}.directory-filter-fields{grid-template-columns:1fr}.parent-directory-filters{grid-template-columns:repeat(2,minmax(0,1fr))}.parent-directory-filters>button{grid-column:1 / -1}.table-toolbar-actions:has(.export-scope)>.secondary-button{width:auto;flex:0 0 auto}.table-toolbar-actions .export-scope{width:auto}.profile-panel .panel-heading{flex-wrap:wrap;gap:12px}}.student-setup-control{max-width:320px}@media(max-width:680px){.student-setup-control{max-width:none}}@media(max-width:440px){.attendance-date-bar{grid-template-columns:minmax(0,1fr)}.attendance-date-bar .field,.attendance-date-bar .input{min-width:0;width:100%}}.admin-app{background:var(--canvas)}.sidebar{background:var(--nav);color:var(--nav-text);padding:24px 12px;gap:28px}.brand{gap:10px}.brand strong{font-family:var(--heading-font);font-size:24px;font-weight:600}.sidebar .brand span{color:var(--nav-muted);font-size:11px;white-space:nowrap}.nav-list{gap:4px}.nav-item{color:var(--nav-text);border-radius:2px;font-size:14px;font-weight:500}.nav-item.active,.nav-item:hover{color:#f5f0e6;background:var(--nav-active)}.nav-item.active{font-weight:700}.main-panel{padding:0 var(--gutter) var(--gutter)}.topbar{margin:0 calc(-1 * var(--gutter)) 28px;padding:16px var(--gutter);background:var(--nav);border-color:#44545b}.topbar-school strong{color:var(--nav-text);font-size:15px;font-weight:600}.topbar-school span{color:var(--nav-muted);font-size:12px}.topbar .secondary-button,.mobile-menu-button{color:var(--nav-text);border-color:#91a6ab;background:transparent}.workspace-heading{padding-left:16px;border-left:4px solid var(--accent);margin-bottom:24px}.workspace-heading h1{color:var(--ink);font:600 var(--title)/1.2 var(--heading-font);letter-spacing:-.02em;margin:0 0 8px}.workspace-heading>p:last-child{color:var(--muted);font-size:15px}.eyebrow{color:var(--muted);font-size:11px;letter-spacing:.09em;margin-bottom:8px}.panel,.workspace-page .panel{padding:var(--panel)}.panel,.metric,.modal,.drawer,.login-card,.csv-box{border-color:var(--border);border-radius:2px;box-shadow:none}.drawer{border-radius:0}.panel h2,.workspace-page h2,.modal h2,.drawer h2,.registration-step h3{color:var(--ink);font-family:var(--heading-font);font-size:20px;font-weight:600}.panel-header{margin-bottom:20px}.workspace-page{gap:24px}.hint,.muted,.field small,.data-table small,.workspace-caption,.workspace-context,.workspace-count,.workspace-issues p,.workspace-field,.report-results-heading p,.filter-summary,.record-subtitle,.directory-result-summary,.table-footer,.workspace-toolbar span,.profile-identity>span{color:var(--muted);font-size:13px}.workspace-toolbar strong{color:var(--ink);font:600 17px/1.5 var(--heading-font)}.workspace-metrics{gap:0;background:var(--surface);border:1px solid var(--border);border-top:4px solid var(--nav)}.workspace-metric{background:var(--surface);border:0;border-right:1px solid var(--border);border-radius:0;padding:16px 20px}.workspace-metric:last-child{border-right:0}.workspace-metric>span{color:var(--muted);font-size:13px;font-weight:600}.workspace-metric strong{color:var(--ink);font:400 42px/1.1 var(--heading-font);letter-spacing:-.03em;margin:8px 0 4px}.workspace-metric small{color:var(--muted);font-size:12px}.workspace-issues li{border-color:var(--border)}.workspace-issues strong{color:var(--ink);font-weight:600}.attention-panel{border-left:4px solid #976600}.issue-count{border-radius:2px;background:#f5e9c4;color:#704b0a;font:600 22px/1.5 var(--heading-font)}.primary-button,.secondary-button,.danger-button,.icon-button,.link-button{border-radius:2px;min-height:44px;font-size:14px;font-weight:600}.primary-button{color:#fff;background:var(--accent);border-color:var(--accent)}.secondary-button,.icon-button,.input,.page-size-control select{color:var(--ink);background:var(--surface);border-color:#91a3a6;border-radius:2px;box-shadow:none}.input{min-height:44px;font-size:15px}.input::placeholder{color:var(--muted);opacity:1}.input[aria-invalid=true]{border-color:#b42318}.field{font-weight:600}.readonly-input{background:var(--canvas)}.record-link,.text-button,.workspace-page .text-button{color:var(--accent);font-weight:600}.record-link{text-decoration:none}.record-link:hover{text-decoration:underline}.secondary-navigation{border-color:var(--border)}.secondary-navigation :is(button,a){color:var(--muted);background:transparent;border-color:transparent;border-bottom:2px solid transparent;border-radius:0;font-size:14px;font-weight:600}.secondary-navigation :is(button,a).active,.secondary-navigation :is(button,a):hover{color:var(--accent);background:var(--accent-soft);border-color:transparent;border-bottom-color:var(--accent)}.directory-filters,.column-filter-details,.form-section-heading{border-color:var(--border)}.directory-filters summary,.column-filter-details summary,.workspace-details summary,.profile-audit summary,.form-section-heading{color:var(--ink);font-weight:600}.directory-quick-filter button[aria-pressed=true]{color:#fff;background:var(--accent);border-color:var(--accent)}.report-categories{border-color:var(--border)}.report-categories button{color:var(--muted);font-weight:600;border-radius:2px}.report-categories button[aria-pressed=true]{background:var(--accent);color:#fff}.table-shell,.responsive-table-wrap{border:1px solid var(--border);border-radius:2px}.table-toolbar{background:#f5f7f6;border-color:var(--border);padding:12px}.data-table th,.responsive-records th{color:#34464d;background:#e3e9e7;border-color:var(--border);font-size:13px;font-weight:600;padding:12px 16px}.data-table td,.responsive-records td{color:var(--ink);border-color:var(--border);font-size:15px;padding:10px 16px}.data-table td strong,.responsive-records td strong{font-weight:600}.data-table tbody tr:hover td,.responsive-records tbody tr:hover td{background:var(--accent-soft)}.numeric-cell{font-variant-numeric:tabular-nums;text-align:right}.status-badge,.movement-badge{font-size:12px;font-weight:400;border-radius:2px;height:auto;min-height:24px;padding:4px 8px;line-height:1.4;text-transform:none;display:inline-flex;align-items:center;gap:6px}.status-badge:before,.movement-badge:before{content:"";width:5px;height:5px;background:currentColor;flex:0 0 auto}.status-badge.good,.movement-badge.entered{color:#1c6247;background:#e7f2eb}.status-badge.warn{color:#79500c;background:#fff1cf}.status-badge.bad{color:#993838;background:#fbeaea}.status-badge.neutral,.movement-badge.left{color:#42576d;background:#edf0f4}.student-avatar,.student-photo-thumb,.student-photo-preview{border-radius:2px;background:#e3e9e7;color:#34464d;border-color:var(--border)}.record-subtitle,.student-cell>div>span{font-family:Consolas,monospace;font-size:12px}.modal-header{border-color:var(--border);padding:20px}.modal-body,.form-stack{padding:20px}.form-actions,.registration-actions{border-color:var(--border)}.profile-hero,.detail-card,.profile-facts,.selected-parent-card,.parent-option,.registration-steps li,.registration-summary,.csv-box,.attendance-filter-grid{border-color:var(--border);border-radius:2px}.profile-hero,.attendance-filter-grid,.student-attendance-scope,.operation-lock-banner,.workspace-loading,.parent-option.selected,.parent-option:hover{color:var(--ink);background:var(--accent-soft);border-color:var(--border)}.profile-title-line h2{font-family:var(--heading-font);font-weight:600}.profile-identity p,.profile-facts dd,.detail-card strong{color:var(--ink)}.profile-facts dt{color:var(--muted)}.registration-steps li.active{color:var(--accent);background:var(--accent-soft);border-color:var(--accent)}.registration-steps li.active span,.registration-steps li.complete span{color:#fff;background:var(--accent)}.alert,.workspace-notice,.operation-lock-banner,.workspace-loading,.student-attendance-scope,.choice-card,.toggle-row,.notice-card,.empty-workflow-state{border-radius:2px}.directory-quick-filter button{border-radius:2px;min-height:44px}:is(button,input,select,textarea,summary,a,.table-scroll,.responsive-records):focus-visible{outline:3px solid var(--accent);outline-offset:3px}.topbar :focus-visible,.sidebar :focus-visible{outline-color:#b7dbff}@media(min-width:981px){.admin-app{grid-template-columns:208px minmax(0,1fr)}}@media(min-width:1280px){.today-workspace{grid-template-columns:minmax(320px,.8fr) minmax(0,1.4fr);gap:20px;align-items:start}.today-workspace>:is(.workspace-toolbar,.workspace-metrics,.workspace-context,.workspace-caption,.workspace-details,.workspace-notice){grid-column:1 / -1}.attention-panel{align-self:stretch}.attention-panel .panel-header{align-items:start;flex-wrap:wrap}.attention-panel .workspace-issues li{grid-template-columns:36px minmax(0,1fr);gap:8px 12px}.attention-panel .workspace-issues li button{grid-column:2;justify-self:start}[aria-labelledby=today-activity] .panel-header{flex-wrap:wrap;gap:12px}[aria-labelledby=today-activity] .data-table{min-width:570px}[aria-labelledby=today-activity] .data-table td{padding:12px}}@media(max-width:980px){.nav-logout{color:var(--nav-text);border-color:var(--nav-muted);border-radius:2px}.mobile-nav-close{color:var(--nav-text)}.table-scroll>.data-table th:first-child,.responsive-records th:first-child{background:#e3e9e7}.workspace-metric{border-bottom:1px solid var(--border)}.workspace-metric:nth-child(2n){border-right:0}}@media(max-width:680px){:root{--gutter: 16px;--panel: 16px;--title: 30px}.topbar{padding:12px var(--gutter);margin-bottom:24px}.topbar-school strong{font-size:14px}.workspace-heading{margin-bottom:20px}.workspace-page{gap:20px}.workspace-toolbar{flex-wrap:wrap}.workspace-metric{padding:16px 12px}.workspace-metric strong{font-size:32px}.report-builder-fields{grid-template-columns:1fr}.data-table td,.responsive-records td{font-size:14px;padding-block:12px}.modal-header,.modal-body,.form-stack{padding:16px}}html{scroll-padding-top:150px}[hidden]{display:none!important}.skip-link{position:fixed;top:8px;left:16px;z-index:60;transform:translateY(-180%);padding:12px;background:#fff;color:var(--accent)}.skip-link:focus{transform:none}.nav-item{text-decoration:none}.nav-item[aria-disabled=true],.secondary-navigation [aria-disabled=true]{opacity:.5;cursor:not-allowed}.secondary-navigation a{display:inline-flex;align-items:center;text-decoration:none}.topbar{position:sticky;top:0;z-index:10;display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px 16px;padding-block:12px}.topbar-school strong{white-space:normal;overflow-wrap:anywhere;overflow:visible;max-width:none}.breadcrumbs{grid-column:1 / -1;min-width:0;font-size:13px}.breadcrumbs ol{display:flex;flex-wrap:wrap;gap:3px 10px;margin:0;padding:0;list-style:none}.breadcrumbs li{min-width:0;overflow-wrap:anywhere}.breadcrumbs li+li:before{content:"/";color:var(--nav-muted);margin-right:10px}.breadcrumbs a{color:var(--nav-text);text-underline-offset:3px;display:inline-flex;align-items:center;min-height:28px}.breadcrumbs [aria-current]{color:var(--nav-muted)}#workspace-title{scroll-margin-top:140px}.modal,.drawer{display:flex;flex-direction:column;overflow:hidden}.modal{max-height:calc(100dvh - 32px)}.drawer{width:min(560px,100%);height:100dvh;min-height:0}.modal-header{flex:0 0 auto;align-items:start;background:var(--surface)}.modal-header>div{min-width:0;overflow-wrap:anywhere}.modal-header .icon-button{flex-shrink:0}.dialog-context{margin:0 0 6px;color:var(--muted);font-size:13px;overflow-wrap:anywhere}.modal-body{overflow:auto;min-height:0}.drawer>.form-stack{display:flex;flex:1;flex-direction:column;overflow:hidden;min-height:0;padding:0}.drawer .form-fields{flex:1;overflow-y:auto;padding:20px;min-height:0;align-content:start}.drawer .form-actions{flex:0 0 auto;margin:0;padding:16px 20px;border-top:1px solid var(--border);background:#fff}.drawer .form-stack>.alert{margin:12px 20px}.drawer>.modal-body{flex:1}.drawer>.form-actions,.modal>.form-actions,.dialog-actions{flex:0 0 auto;margin:0;padding:16px 20px;border-top:1px solid var(--border);display:flex;flex-wrap:wrap;justify-content:flex-end;gap:8px}.confirmation .modal{width:min(480px,calc(100% - 24px))}body:has(>.confirmation)>.overlay:not(.confirmation){visibility:hidden}.task-page{padding:0;max-width:100%;min-width:0}.task-page-header{display:flex;justify-content:space-between;align-items:start;flex-wrap:wrap;gap:16px;padding:20px;border-bottom:1px solid var(--border)}.task-page .modal-body{overflow:visible}.task-page .form-stack{max-width:960px}.task-page .form-actions,.task-page .registration-actions{position:sticky;bottom:0;padding:16px 0;background:#fff;border-top:1px solid var(--border);z-index:3}@media(max-width:680px){.topbar{gap:6px 8px}.topbar-school strong{font-size:13px}.topbar-school span{display:none}.breadcrumbs{font-size:12px}.breadcrumbs a{min-height:32px}.drawer{width:100%}.drawer .form-fields,.task-page-header{padding:16px}.drawer .form-actions,.dialog-actions{padding:12px 16px}.task-page-header>button{width:100%}}.task-page .registration-flow{max-width:1040px}.task-page>.registration-actions{padding-inline:20px}@media(max-width:680px){.task-page>.registration-actions{padding-inline:16px}}@media(max-width:680px){.topbar:has(.password-change-action){grid-template-columns:minmax(0,1fr)}.topbar:has(.password-change-action) .topbar-actions{width:100%;flex-wrap:wrap;justify-content:flex-start}}.workspace-success{padding:12px 16px;color:#1c6247;background:#e7f2eb;border-left:4px solid #1c6247}.brand{flex-direction:column;align-items:flex-start;gap:0}.brand-wordmark{display:block;width:140px;height:auto;max-width:100%;object-fit:contain}.brand>div{padding-left:9px}.sidebar{top:0;height:100vh}.topbar{top:0}.topbar-school .sentri-environment-badge{display:inline-flex;font-size:10px;color:#f5f0e6}.sidebar .brand{min-width:0;width:100%;padding:4px 8px;gap:6px}.sidebar .school-short-name{font-size:28px;line-height:1.15;overflow-wrap:anywhere}.sidebar .brand>div{padding-left:0}.topbar{display:grid;grid-template-columns:minmax(0,1fr) auto auto;align-items:center;gap:12px 20px}.topbar-school{min-width:0}.topbar-school>div{min-width:0}.topbar-school strong{font:600 clamp(20px,1.65vw,28px)/1.2 var(--heading-font);white-space:normal;overflow:visible;overflow-wrap:anywhere}.admin-sentri-wordmark{grid-column:3;grid-row:1;width:110px;height:auto;justify-self:end}.topbar .breadcrumbs{grid-column:1/-1}.workspace-toolbar>.today-actions{display:flex;flex-wrap:wrap;gap:10px;justify-content:flex-end}.today-workspace{gap:20px}.today-workspace>.workspace-caption{margin:-8px 0 0}.today-workspace .workspace-empty{min-height:180px;padding:28px 20px}.today-workspace>.panel{min-width:0;margin:0}@media(max-width:680px){.topbar,.topbar:has(.password-change-action){grid-template-columns:minmax(0,1fr) auto;gap:10px}.admin-sentri-wordmark{grid-column:2;width:82px}.topbar .topbar-actions{grid-row:2;grid-column:1/-1;width:auto;justify-content:flex-start;flex-wrap:wrap}.topbar .topbar-actions:empty{display:none}.topbar-school strong{font-size:20px}.today-workspace>.workspace-toolbar{flex-direction:column;align-items:stretch}.workspace-toolbar>.today-actions{justify-content:flex-start}}.sidebar .school-brand-identity{display:flex;align-items:center;gap:10px;min-width:0;width:100%}.sidebar .school-short-name{font-size:24px;min-width:0}.admin-school-logo{display:grid;place-items:center;flex:0 0 40px;width:40px;height:40px;border-radius:6px;background:#fff;color:var(--ink);overflow:hidden}.admin-school-logo img{display:block;width:40px;height:40px;object-fit:contain}.account-actions{padding-top:0;padding-bottom:6px}.account-toggle,.account-actions button{font-size:14px}.topbar{padding-block:8px;margin-bottom:18px}.workspace-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:12px 20px;margin-bottom:16px}.workspace-heading-copy{min-width:0;flex:1}.workspace-heading h1{font-size:32px;margin-bottom:4px}.workspace-heading-copy>p:last-child{margin:0;color:var(--muted);font-size:13px}.workspace-heading .breadcrumbs{flex:0 1 auto;max-width:45%;margin-left:auto;font-size:12px;line-height:1.4;text-align:right}.workspace-heading .breadcrumbs ol{justify-content:flex-end;gap:2px 8px}.workspace-heading .breadcrumbs a{color:var(--ink);min-height:24px}.workspace-heading .breadcrumbs [aria-current],.workspace-heading .breadcrumbs li+li:before{color:var(--muted)}@media(max-width:680px){.workspace-heading{gap:10px}.workspace-heading h1{font-size:26px}.workspace-heading .breadcrumbs{max-width:42%;font-size:11px}.workspace-heading .breadcrumbs a{min-height:28px}}.announcement-title-cell{min-width:220px;max-width:440px}.announcement-preview{overflow:hidden;display:-webkit-box!important;-webkit-line-clamp:1;-webkit-box-orient:vertical}.announcement-detail{padding:20px 28px;max-width:980px}.announcement-detail p{white-space:pre-wrap;overflow-wrap:anywhere;line-height:1.7}.announcement-detail dl{display:grid;grid-template-columns:110px 1fr;gap:12px}.announcement-detail dd{margin:0}.expanded-table-row{background:#f4f7fa}.announcement-title-cell strong{display:block;max-width:320px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}body[data-admin-ui]{--ink:#213247;--muted:#56616f;--canvas:#f3f6fa;--border:#d6dee8;--accent:#2563a6;--good:#166534;--warn:#854d0e;--bad:#a61b1b;--radius:2px;font-family:Segoe UI,sans-serif;font-size:15px;line-height:1.5;color:var(--ink);background:var(--canvas)}body[data-admin-ui] :is(h1,h2,h3){font-family:Bahnschrift,Segoe UI,sans-serif;color:var(--ink);line-height:1.25}body[data-admin-ui] h1{font-size:32px;font-weight:600}body[data-admin-ui] h2{font-size:20px;font-weight:600}body[data-admin-ui] .parent-invite-qr{display:block;width:250px;max-width:100%;height:auto;margin:0 auto}body[data-admin-ui] h3{font-size:17px;font-weight:600}body[data-admin-ui] :is(button,input,select,textarea){font:inherit;letter-spacing:normal;border-radius:2px}body[data-admin-ui] :is(input:not([type=checkbox]):not([type=radio]),select,textarea){width:100%;min-height:44px;padding:10px 12px;border:1px solid #9aa8b8;background:#fff;color:var(--ink);box-shadow:none}body[data-admin-ui] input:is([type=checkbox],[type=radio]){width:18px;height:18px;accent-color:#213247}body[data-admin-ui] :is(.primary-button,.secondary-button,.icon-button,.panel-actions>button,.campus-tabs>button){min-height:44px;border:1px solid #9aa8b8;padding:10px 16px;border-radius:2px;font-size:14px;font-weight:600;display:inline-flex;align-items:center;justify-content:center;gap:8px}body[data-admin-ui] .primary-button{background:#213247;color:#fff;border-color:#213247}body[data-admin-ui] .secondary-button{background:#fff;color:#213247}body[data-admin-ui] :is(button,a,input,select,textarea):focus-visible{outline:3px solid #2563a6;outline-offset:3px;box-shadow:none}body[data-admin-ui] button:disabled{opacity:.55;cursor:not-allowed}body[data-admin-ui] :is(.field,.workspace-field){gap:6px;font-size:13px;font-weight:600;min-width:0}body[data-admin-ui] :is(.field>span,.workspace-field>span){color:#34465b;font-size:13px}body[data-admin-ui] :is(.panel,.profile-panel,.workspace-metric,.mini-metric,.metric-card,.notice-card,.alert,.choice-card,.selected-parent-card,.parent-option,.modal,.drawer,.campus-review){border-radius:2px;background-image:none;box-shadow:none}body[data-admin-ui] .panel{padding:24px;border:1px solid var(--border);background:#fff}body[data-admin-ui] :is(.content-stack,.workspace-page){gap:24px}body[data-admin-ui] :is(.form-stack,.form-grid,.report-builder-fields,.campus-fields,.report-filters,.filters,.directory-filter-fields){gap:16px}body[data-admin-ui] :is(.panel-header,.panel-actions,.form-actions,.report-builder-footer,.task-page-header){gap:16px;align-items:center;flex-wrap:wrap}body[data-admin-ui] :is(.form-actions,.dialog-actions){display:flex;justify-content:flex-end;gap:12px;padding-top:20px;margin-top:20px;border-top:1px solid var(--border)}body[data-admin-ui] :is(.data-table,table){font-size:14px;border-radius:2px;border-collapse:collapse}body[data-admin-ui] :is(.data-table,table) th{padding:12px 16px;background:#edf1f6;color:#34465b;text-align:left;font-size:12px;font-weight:700;letter-spacing:.025em}body[data-admin-ui] :is(.data-table,table) td{padding:14px 16px;vertical-align:top;border-bottom:1px solid var(--border)}body[data-admin-ui] :is(.data-table,table) td small{display:block;color:var(--muted);font-size:12px;margin-top:4px}body[data-admin-ui] .table-scroll{border:1px solid var(--border);border-radius:2px;overflow-x:auto;max-width:100%}body[data-admin-ui] .status-badge{display:inline-flex;gap:6px;align-items:center;font-size:12px;font-weight:650;line-height:1.4;padding:4px 8px;border:1px solid;border-radius:2px;text-transform:none;white-space:normal;max-width:100%}body[data-admin-ui] .status-badge.good{color:#166534;background:#eaf6ed;border-color:#a4d5b1}body[data-admin-ui] .status-badge.info{color:#174d88;background:#eaf2fc;border-color:#adc9ec}body[data-admin-ui] .status-badge.warn{color:#854d0e;background:#fff5d9;border-color:#e8c873}body[data-admin-ui] .status-badge.bad{color:#a61b1b;background:#fff0f0;border-color:#e8aaaa}body[data-admin-ui] .status-badge.neutral{color:#475569;background:#f0f3f6;border-color:#c4cdd8}body[data-admin-ui] .status-mark{font-size:14px;line-height:1;font-weight:800;flex:none}body[data-admin-ui] .validation-list{display:grid;gap:8px;min-width:210px}body[data-admin-ui] .field-error{color:#a61b1b;background:#fff0f0;border-left:3px solid #ba3030;padding:6px 9px;font-size:13px;line-height:1.5;border-radius:2px}body[data-admin-ui] .field-warning{color:#854d0e;background:#fff5d9;border-left:3px solid #b98018;padding:6px 9px;font-size:13px;line-height:1.5;border-radius:2px}body[data-admin-ui] .field-reserved{align-content:start;grid-template-rows:auto minmax(44px,auto) minmax(32px,auto)}body[data-admin-ui] .field-reserved>.field-feedback{display:block;box-sizing:border-box;min-block-size:32px;margin:0;padding:6px 9px;border-left:3px solid transparent;line-height:19.5px;overflow-wrap:anywhere}body[data-admin-ui] .field-reserved>.field-error{border-left-color:#ba3030}body[data-admin-ui] .field-reserved>.field-feedback.empty{visibility:hidden}body[data-admin-ui] .required-mark{color:var(--bad)}body[data-admin-ui] .registration-student-step :is(.two-col,.three-col){align-items:start}body[data-admin-ui] .registration-student-step .student-photo-editor{align-items:flex-start}body[data-admin-ui] .registration-student-step .student-photo-controls{min-width:0}body[data-admin-ui] .registration-student-step .student-photo-controls small{overflow-wrap:anywhere}body[data-admin-ui] .file-button:focus-within{outline:3px solid var(--accent);outline-offset:3px}body[data-admin-ui] #registration-photo-error{display:block;flex-basis:100%;min-block-size:52px}body[data-admin-ui] #registration-photo-error .field-error{margin:0}@media(max-width:680px){body[data-admin-ui] #registration-photo-error{min-block-size:112px}body[data-admin-ui] .field-reserved{grid-template-rows:auto minmax(44px,auto) minmax(52px,auto)}body[data-admin-ui] .field-reserved>.field-feedback{min-block-size:52px}}body[data-admin-ui] :is(.success-banner,.alert.success){color:#166534;background:#eaf6ed;border:1px solid #a4d5b1}body[data-admin-ui] :is(.report-builder-fields,.campus-fields){display:grid;grid-template-columns:repeat(auto-fit,minmax(160px,1fr));align-items:end}body[data-admin-ui] .report-builder-fields{grid-template-columns:repeat(3,minmax(0,1fr))}body[data-admin-ui] .campus-fields legend{font-size:13px;font-weight:600;margin-bottom:12px}body[data-admin-ui] .unified-report-picker{display:flex;align-items:end;gap:24px;margin-bottom:24px}body[data-admin-ui] .unified-report-picker .field{flex:1;max-width:460px}body[data-admin-ui] .unified-report-picker p{flex:1;margin:0 0 10px;color:var(--muted);font-size:13px}body[data-admin-ui] .parent-search-pagination{display:flex;align-items:center;gap:8px;flex-wrap:wrap;margin-top:12px;font-size:12px;font-weight:400}body[data-admin-ui] .parent-search-pagination>span{flex:1 1 160px}body[data-admin-ui] .parent-option{min-height:64px;text-align:left;padding:12px;background:#fff;border:1px solid var(--border)}body[data-admin-ui] .parent-option.selected{background:#eaf2fc;border-color:#2563a6}body[data-admin-ui] .parent-option-list{display:grid;gap:8px}body[data-admin-ui] .operation-overlay{z-index:20000;background:#14283d66;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px)}body[data-admin-ui] .operation-overlay .modal{max-width:460px;width:calc(100% - 32px)}body[data-admin-ui] .operation-progress{display:flex;align-items:center;gap:20px;padding:24px}body[data-admin-ui] .operation-progress p{margin:0;color:var(--muted)}body[data-admin-ui] .operation-progress svg{flex:none;color:#2563a6;animation:operation-spin 1s linear infinite}@keyframes operation-spin{to{transform:rotate(360deg)}}body[data-admin-ui] .sidebar .school-brand-identity{display:flex;gap:12px;align-items:center}body[data-admin-ui] .sidebar .brand{display:flex;flex-direction:column;align-items:stretch;gap:24px;width:100%}body[data-admin-ui] .sidebar .school-short-name{color:#fff;font-size:16px;font-weight:650}body[data-admin-ui] .sidebar .sidebar-admin-label{display:block;color:#cbd5e1;font-size:12px;text-transform:uppercase;letter-spacing:.12em;margin-top:4px}body[data-admin-ui] .sidebar .sidebar-greeting{display:block;color:#fff;font-size:14px;line-height:1.5;border-top:1px solid #ffffff25;padding-top:20px;overflow-wrap:anywhere}body[data-admin-ui] .account-details{padding:12px;border-bottom:1px solid #ffffff25;overflow-wrap:anywhere;font-size:13px;color:#fff}body[data-admin-ui] .account-details small{display:block;color:#cbd5e1;font-size:11px;margin-top:5px}body[data-admin-ui] .sidebar .desktop-account{display:block}body[data-admin-ui] .sidebar .nav-logout{display:none}body[data-admin-ui] .sidebar .brand>div{min-width:0;width:100%}body[data-admin-ui] .sidebar .sidebar-greeting{white-space:normal;max-width:100%;overflow:visible;text-overflow:clip}body[data-admin-ui] .topbar{background:#fff;color:var(--ink);border-bottom:1px solid var(--border);min-height:72px}body[data-admin-ui] .topbar :is(strong,span){color:var(--ink)}body[data-admin-ui] .mobile-menu-button{color:var(--ink);background:#fff;border-color:var(--border)}body[data-admin-ui] .workspace-heading h1{outline:none}body[data-admin-ui] .workspace-heading h1:focus-visible{outline:2px solid #2563a6;outline-offset:5px}body[data-admin-ui] .desktop-account{margin-top:auto;margin-bottom:28px}@media(prefers-reduced-motion:reduce){body[data-admin-ui] .operation-progress svg{animation:none}}body[data-admin-ui] .status-badge:before{content:none}body[data-admin-ui] :is(.import-step,.import-step-card,.import-preview,.import-workflow-card,.import-summary,.table-shell,.registration-progress,.profile-readiness,.notice-card){border-radius:2px}body[data-admin-ui] .file-button{white-space:nowrap;min-width:170px}body[data-admin-ui] .import-actions button{min-width:160px}body[data-admin-ui] .success-alert{background:#eaf6ed;color:#166534;border:1px solid #a4d5b1;border-radius:2px}body[data-admin-ui] :is(.visitor-zone-group,.visitor-review,.import-step-card,.import-step,.import-step-row,.import-instructions,.report-builder,.campus-review){border-radius:2px}body[data-admin-ui] .visitor-steps span{border-radius:2px}body[data-admin-ui] .campus-tabs{gap:8px;margin-bottom:16px}body[data-admin-ui] .report-filter-fields{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}body[data-admin-ui] .workspace-notice{background:#fff5d9;color:#854d0e;border:1px solid #e8c873;border-radius:2px;padding:12px 16px}@media(max-width:720px){body[data-admin-ui] .report-filter-fields{grid-template-columns:1fr}}@media(max-width:720px){body[data-admin-ui] h1{font-size:26px}body[data-admin-ui] .panel{padding:16px}body[data-admin-ui] .unified-report-picker{display:block}body[data-admin-ui] .unified-report-picker p{margin-top:12px}body[data-admin-ui] .report-builder-fields{grid-template-columns:1fr}body[data-admin-ui] :is(.campus-fields,.form-grid){grid-template-columns:1fr}}
