@media screen{html.has-roster-viewport,html.has-roster-viewport body{height:100%;min-height:0;overflow:hidden;overscroll-behavior-y:none}html.has-roster-viewport body{position:fixed;top:0;right:0;bottom:0;left:0;width:100%}html.has-roster-viewport #root{height:100%;min-height:0}html.has-roster-viewport .app-shell.is-roster-viewport{position:fixed;top:var(--roster-visible-top, 0px);right:0;left:0;height:var(--roster-visible-height, 100dvh);min-height:0;overflow:hidden}html.has-roster-viewport .app-shell.is-roster-viewport>.sidebar{position:absolute;height:100%;min-height:0}html.has-roster-viewport .app-shell.is-roster-viewport>:is(.drawer-overlay,.mobile-menu-button){position:absolute}html.has-roster-viewport .app-shell.is-roster-viewport>.workspace{display:flex;flex-direction:column;height:100%;min-height:0;overflow:hidden}html.has-roster-viewport .app-shell.is-roster-viewport>.workspace>:is(.topbar,.offline-readonly-banner){flex:0 0 auto}html.has-roster-viewport .app-shell.is-roster-viewport>.workspace>.workspace-main{display:flex;flex:1 1 auto;flex-direction:column;min-height:0;overflow:hidden}html.has-roster-viewport .workspace-main>:is(.students-page,.sdir-page),html.has-roster-viewport .workspace-main .students-page>.page-scaffold,html.has-roster-viewport .workspace-main .students-page>.page-scaffold>.page-content,html.has-roster-viewport .workspace-main .sdir-page>.sdir-card{display:flex;flex:1 1 auto;flex-direction:column;min-height:0;overflow:hidden}html.has-roster-viewport .workspace-main .students-page .students-toolbar,html.has-roster-viewport .workspace-main .sdir-page .sdir-directory-controls{flex:0 0 auto}html.has-roster-viewport .workspace-main .students-page .students-roster-table-shell,html.has-roster-viewport .workspace-main .sdir-page .sdir-results{flex:1 1 auto;min-height:0}html.has-roster-viewport .workspace-main .sdir-page .sdir-results{overflow:hidden}html.has-roster-viewport .workspace-main .students-page .students-desktop-roster>.responsive-data-shell,html.has-roster-viewport .workspace-main .sdir-page .sdir-results>.sdir-table-shell{height:100%;min-height:0;overflow:auto;overscroll-behavior:contain;-webkit-overflow-scrolling:touch}}@media screen and (max-width:699px){html.has-roster-viewport .workspace-main .students-page .students-roster-table-shell{display:block;overflow:auto;overscroll-behavior:contain;-webkit-overflow-scrolling:touch}}.syt-login-page{min-height:100vh;min-height:100svh;overflow-x:hidden;overflow-y:auto;color:#242321;background:#fff;font-family:Inter,ui-sans-serif,-apple-system,BlinkMacSystemFont,Segoe UI,PingFang TC,Noto Sans TC,sans-serif}.syt-login-stage{position:relative;display:block;min-height:100vh;min-height:100svh;isolation:isolate}.syt-login-panel{position:relative;z-index:5;display:flex;min-height:100vh;min-height:100svh;align-items:center;justify-content:flex-start;padding:clamp(28px,4.5vw,76px) clamp(28px,6.2vw,108px)}.syt-login-card{width:min(100%,450px);padding:clamp(30px,3.4vw,48px);border:1px solid rgba(57,51,44,.11);border-radius:28px;background:#ffffffe8;box-shadow:0 28px 74px #2d272124,0 3px 12px #2d27210f;backdrop-filter:blur(22px) saturate(1.05);-webkit-backdrop-filter:blur(22px) saturate(1.05)}.syt-login-heading{margin-bottom:30px}.syt-login-logo{display:block;width:min(201px,62%);height:auto;margin-bottom:25px;object-fit:contain}.syt-login-system-name{margin:0 0 10px;color:#55514b;font-size:1.06rem;font-weight:760;letter-spacing:.035em;line-height:1.45}.syt-login-heading h1{margin:0;color:#1d1c1a;font-size:clamp(1.72rem,2.4vw,2.2rem);font-weight:760;letter-spacing:-.035em;line-height:1.2}.syt-login-welcome{margin:11px 0 0;color:#75716b;font-size:.98rem;line-height:1.6}.syt-login-form{display:grid;gap:19px}.syt-login-form label{display:grid;gap:9px;color:#4d4943;font-size:.92rem;font-weight:700}.syt-login-form input{width:100%;height:54px;padding:0 16px;border:1px solid #d8d3cb;border-radius:14px;outline:none;color:#23211f;background:#ffffffe0;font:inherit;font-size:1rem;font-weight:600;transition:border-color .18s ease,box-shadow .18s ease,background-color .18s ease}.syt-login-form input:hover:not(:disabled){border-color:#b8b0a6}.syt-login-form input:focus-visible{border-color:#5146d9;background:#fff;box-shadow:0 0 0 4px #5146d926}.syt-login-form input:disabled{cursor:wait;opacity:.72}.syt-login-error{margin-top:-3px;padding:12px 14px;border:1px solid #fecaca;border-radius:12px;color:#b42318;background:#fff4f3;font-size:.9rem;font-weight:650;line-height:1.45}.syt-login-submit{min-height:54px;margin-top:3px;border:0;border-radius:14px;color:#fff;background:#493dd3;box-shadow:0 11px 24px #493dd333;font:inherit;font-size:1rem;font-weight:760;letter-spacing:.02em;cursor:pointer;transition:transform .17s ease,background-color .17s ease,box-shadow .17s ease}.syt-login-submit:hover:not(:disabled){transform:translateY(-1px);background:#3f34c3;box-shadow:0 14px 29px #493dd342}.syt-login-submit:focus-visible{outline:3px solid rgba(73,61,211,.26);outline-offset:3px}.syt-login-submit:active:not(:disabled){transform:translateY(0)}.syt-login-submit:disabled{cursor:wait;opacity:.7}.syt-login-footnote{margin:23px 0 0;color:#59544e;font-size:.77rem;line-height:1.5;text-align:center}.syt-login-art{position:absolute;top:0;right:0;bottom:0;left:0;z-index:1;overflow:hidden;background:#fff}.syt-login-art:after{position:absolute;top:0;right:0;bottom:0;left:0;content:"";background:linear-gradient(90deg,#ffffff29,#ffffff0d 38%,#fff0 62%);pointer-events:none}.syt-login-community{position:absolute;top:0;right:0;bottom:0;left:0;display:block;width:100%;height:100%;object-fit:cover;object-position:center center;-webkit-user-select:none;user-select:none;pointer-events:none}@media(max-width:1100px){.syt-login-panel{padding:38px}}@media(max-width:900px){.syt-login-panel{align-items:center;padding:46px 34px}.syt-login-card{width:min(430px,56vw);padding:34px;background:#ffffffe6;backdrop-filter:none;-webkit-backdrop-filter:none}.syt-login-community{object-position:50% center}.syt-login-art:after{background:linear-gradient(90deg,#ffffff36,#ffffff14 48%,#ffffff05)}}@media(max-width:620px){.syt-login-page{overflow-y:auto}.syt-login-panel{align-items:center;justify-content:center;padding:24px 16px}.syt-login-card{width:100%;padding:28px 24px;border-color:#39332c1f;border-radius:24px;background:#ffffffde;box-shadow:0 20px 56px #2a251f21}.syt-login-heading{margin-bottom:24px}.syt-login-logo{width:174px;margin-bottom:19px}.syt-login-heading h1{font-size:1.72rem}.syt-login-form{gap:16px}.syt-login-form input,.syt-login-submit{height:52px;min-height:52px}.syt-login-community{object-position:68% center}.syt-login-art:after{background:linear-gradient(180deg,#ffffff08,#ffffff1a 42%,#fff3)}}@media(max-height:720px){.syt-login-stage,.syt-login-panel{min-height:680px}.syt-login-panel{align-items:flex-start;padding-block:20px}.syt-login-card{padding-block:24px}.syt-login-heading{margin-bottom:20px}.syt-login-logo{width:170px;margin-bottom:18px}.syt-login-form{gap:14px}.syt-login-form input,.syt-login-submit{height:48px;min-height:48px}}@media(prefers-reduced-motion:reduce){.syt-login-page *,.syt-login-page *:before,.syt-login-page *:after{scroll-behavior:auto!important;animation-duration:.001ms!important;animation-iteration-count:1!important;transition-duration:.001ms!important}}:root{font-family:Inter,PingFang TC,Noto Sans TC,system-ui,sans-serif;color:#252422;background:#efefef;font-synthesis:none;--brand: #4338ca;--brand-strong: #3730a3;--brand-soft: #eeedff;--canvas: #f6f5f3;--surface: #ffffff;--surface-subtle: #faf9f7;--line: #e4e1dc;--line-strong: #cec8bf;--text: #252422;--text-secondary: #5f5a53;--muted: #77716a;--success: #047857;--success-soft: #ecfdf5;--warning: #a16207;--warning-soft: #fffbeb;--danger: #b91c1c;--danger-soft: #fef2f2;--focus: #4338ca40;--shell-header-height: 64px;--sidebar-expanded-width: 216px}*{box-sizing:border-box}html,body,#root{width:100%;min-width:320px;min-height:100%;margin:0}html,body{overflow-x:hidden;background:var(--canvas)}body{min-height:100vh;min-height:100dvh}button,input,select{font:inherit;letter-spacing:0}button,select{cursor:pointer}button:disabled,select:disabled{cursor:not-allowed;opacity:.62}a{color:inherit}:focus-visible{outline:3px solid var(--focus);outline-offset:2px}.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}.skip-link{position:fixed;top:8px;left:8px;z-index:100;padding:9px 12px;border-radius:5px;background:var(--text);color:#fff;transform:translateY(-150%);text-decoration:none}.skip-link:focus{transform:translateY(0)}.embedded-workspace-main{width:100%;height:100dvh;min-width:0;overflow:auto;background:var(--surface-subtle)}.embedded-workspace-main .new-student-page,.embedded-workspace-main .intake-page{min-height:100dvh}.app-shell{display:grid;grid-template-columns:var(--sidebar-expanded-width) minmax(0,1fr);min-height:100vh;min-height:100dvh;transition:grid-template-columns .16s ease}.sidebar{position:fixed;top:0;bottom:0;left:0;z-index:30;display:flex;flex-direction:column;width:var(--sidebar-expanded-width);height:100vh;height:100dvh;min-height:0;padding:max(14px,env(safe-area-inset-top)) 12px max(12px,env(safe-area-inset-bottom));overflow:hidden;background:var(--surface);border-right:1px solid var(--line);transition:width .16s ease,box-shadow .16s ease}.sidebar-brand{display:flex;flex:0 0 auto;align-items:center;gap:10px;min-width:0;padding:0 5px 13px;border-bottom:1px solid var(--line)}.sidebar-brand-toggle{display:flex;flex:1 1 auto;align-items:center;justify-content:center;min-width:0;min-height:56px;padding:0 4px;border:0;border-radius:8px;background:transparent;color:inherit;text-align:center}.sidebar-brand-toggle:hover{background:var(--surface-subtle)}.sidebar-brand-logo{display:block;flex:0 0 auto;object-fit:contain}.sidebar-brand-logo--full{width:auto;max-width:100%;height:56px}.sidebar-brand-logo--mark{width:44px;height:44px}.brand-mark{display:grid;flex:0 0 auto;width:46px;height:46px;place-items:center;border-radius:8px;background:var(--brand);color:#fff;font-size:22px;font-weight:750}.brand-mark-small{width:38px;height:38px;font-size:18px}.brand-copy,.account-copy,.topbar-title,.page-heading-copy{min-width:0}.brand-copy{display:grid;gap:2px;justify-items:center}.brand-copy strong,.account-copy strong{overflow:hidden;color:var(--text);text-overflow:ellipsis;white-space:nowrap}.brand-copy small,.account-copy small,.topbar-title small{display:block;overflow:hidden;color:var(--muted);font-size:11px;line-height:1.35;text-overflow:ellipsis;white-space:nowrap}.sidebar-nav-scroll{flex:1 1 auto;min-height:0;margin:8px -4px 8px 0;padding-right:4px;overflow-x:hidden;overflow-y:auto;-webkit-overflow-scrolling:touch;overscroll-behavior:contain;scrollbar-width:thin;scrollbar-color:var(--line-strong) transparent}.nav-group{margin:0;padding:7px 0}.nav-group+.nav-group{border-top:1px solid var(--line)}.nav-group-label{margin:0 0 4px;padding:0 10px;color:#8a837a;font-size:10px;font-weight:750;line-height:22px;letter-spacing:0;white-space:nowrap}.nav-group-links{display:grid;gap:2px}.nav-item{position:relative;display:flex;align-items:center;gap:10px;min-width:0;min-height:36px;padding:0 10px;border-radius:6px;color:#514c46;font-size:13px;text-decoration:none;transition:background-color .12s ease,color .12s ease}.nav-item:hover{background:var(--surface-subtle);color:var(--text)}.nav-item.is-active{background:var(--brand-soft);color:var(--brand-strong);box-shadow:inset 3px 0 var(--brand);font-weight:700}.nav-item svg{flex:0 0 auto;width:17px;height:17px;stroke-width:2}.nav-item span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.nav-item>.nav-item-label{flex:1 1 auto;min-width:0}.nav-item>.nav-item-badge{display:inline-grid;flex:0 0 auto;min-width:20px;height:20px;padding:0 6px;place-items:center;overflow:visible;border:1px solid #eadfc9;border-radius:999px;background:#fff8e9;color:#b86b15;font-size:10px;font-variant-numeric:tabular-nums;font-weight:750;line-height:1;text-overflow:clip}.nav-item.is-active>.nav-item-badge{border-color:#cfc9ff;background:#fff;color:var(--brand-strong)}.sidebar-account{display:grid;flex:0 0 auto;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:8px;min-width:0;padding:11px 4px 0;border-top:1px solid var(--line)}.account-avatar{display:grid;width:32px;height:32px;place-items:center;border-radius:50%;background:#f4b740;color:#3b2b06;font-size:13px;font-weight:750}.account-copy{display:grid;gap:2px;font-size:12px}.account-error{grid-column:1 / -1;margin:0;color:var(--danger);font-size:11px;line-height:1.35}.icon-button{display:inline-flex;align-items:center;justify-content:center;width:36px;height:36px;padding:0;border:1px solid transparent;border-radius:6px;background:transparent;color:var(--text-secondary)}.icon-button:hover{border-color:var(--line);background:var(--surface-subtle);color:var(--text)}.icon-button svg{width:18px;height:18px}.close-drawer-button,.mobile-menu-button,.drawer-overlay{display:none}.workspace{grid-column:2;min-width:0}.topbar{position:sticky;top:0;z-index:20;display:flex;align-items:center;justify-content:space-between;gap:16px;height:var(--shell-header-height);min-width:0;padding:0 22px;background:#fffffff5;border-bottom:1px solid var(--line)}.topbar-title,.topbar-title-default{display:grid;gap:3px}.route-topbar-title-slot:empty{display:none}.topbar-title:has(.route-topbar-title-slot:not(:empty)) .topbar-title-default{display:none}.attendance-topbar-title{display:grid;gap:3px;min-width:0}.attendance-topbar-title-line{display:flex;align-items:center;gap:7px;min-width:0}.attendance-topbar-title-line strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.attendance-topbar-title .status-badge{flex:0 0 auto}.topbar-context{display:flex;align-items:center;gap:8px;min-width:0}.topbar-back-button{flex:0 0 auto;width:34px;height:34px;border-color:var(--line-strong);background:var(--surface);text-decoration:none}.topbar-title strong{overflow:hidden;font-size:14px;line-height:1.2;text-overflow:ellipsis;white-space:nowrap}.topbar-actions{display:flex;flex:1 1 auto;align-items:center;justify-content:flex-end;gap:8px;min-width:0}.route-topbar-slot{display:flex;flex:1 1 auto;min-width:0;justify-content:flex-end}.route-topbar-slot:empty{display:none}.sync-indicator{display:inline-flex;flex:0 0 auto;align-items:center;gap:5px;min-width:0;color:var(--text-muted);font-size:11px;white-space:nowrap}.sync-indicator svg{width:14px;height:14px}.sync-indicator.is-online{color:var(--success)}.sync-indicator.is-offline,.sync-indicator.is-error{color:var(--danger)}.sync-indicator.is-syncing svg{animation:sync-indicator-spin 1s linear infinite}@keyframes sync-indicator-spin{to{transform:rotate(360deg)}}.global-search{display:flex;align-items:center;width:min(280px,28vw);height:36px;min-width:180px;overflow:hidden;background:var(--surface);border:1px solid var(--line-strong);border-radius:6px}.global-search:focus-within,.scope-selector:focus-within,.toolbar-search-field:focus-within{border-color:var(--brand);box-shadow:0 0 0 3px var(--focus)}.global-search input{flex:1 1 auto;width:100%;min-width:0;height:34px;padding:0 4px 0 11px;border:0;outline:0;background:transparent;color:var(--text);font-size:12px}.global-search .icon-button{flex:0 0 auto;width:34px;height:34px;border:0}.scope-selector{display:flex;align-items:center;gap:7px;height:36px;min-width:145px;max-width:230px;padding:0 8px;overflow:hidden;background:var(--surface);border:1px solid var(--line-strong);border-radius:6px;color:var(--text-secondary)}.scope-selector>svg{flex:0 0 auto;width:16px;height:16px}.scope-selector select{width:100%;min-width:0;height:34px;padding:0 2px;overflow:hidden;border:0;outline:0;background:var(--surface);color:var(--text-secondary);font-size:12px;text-overflow:ellipsis}.topbar-student-add{flex:0 0 auto;min-height:36px;padding:0 13px;text-decoration:none;white-space:nowrap}.topbar-student-add svg{width:15px;height:15px}.workspace-main{width:100%;max-width:1580px;min-width:0;margin:0 auto;padding:18px;outline:0}.offline-readonly-banner{border-bottom:1px solid #f0c36a;background:#fff7df;color:#744d00;padding:.55rem 1rem;font-size:.875rem;font-weight:650;text-align:center}.page-scaffold{width:100%;min-width:0;min-height:calc(100vh - 100px);min-height:calc(100dvh - 100px);overflow:hidden;background:var(--surface);border:1px solid var(--line);border-radius:7px}.page-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:14px;min-width:0;padding:17px 20px;border-bottom:1px solid var(--line)}.page-title-line{display:flex;flex-wrap:wrap;align-items:center;gap:8px;min-width:0}.page-heading h1{margin:0;color:var(--text);font-size:20px;font-weight:750;line-height:1.3;letter-spacing:0;overflow-wrap:anywhere}.page-heading p{max-width:760px;margin:5px 0 0;color:var(--muted);font-size:12px;line-height:1.55}.page-actions{display:flex;flex:0 0 auto;align-items:center;gap:6px}.status-badge{display:inline-flex;align-items:center;min-height:24px;padding:3px 7px;border:1px solid var(--line);border-radius:4px;background:var(--surface-subtle);color:var(--text-secondary);font-size:11px;font-weight:700;line-height:1.25;white-space:nowrap}.status-info{border-color:#c7d2fe;background:var(--brand-soft);color:var(--brand-strong)}.status-success{border-color:#a7f3d0;background:var(--success-soft);color:var(--success)}.status-warning{border-color:#fde68a;background:var(--warning-soft);color:var(--warning)}.status-danger{border-color:#fecaca;background:var(--danger-soft);color:var(--danger)}.compact-toolbar{display:flex;align-items:center;gap:8px;min-width:0;min-height:50px;padding:7px 20px;background:var(--surface-subtle);border-bottom:1px solid var(--line)}.toolbar-search-field{display:flex;align-items:center;gap:7px;width:min(360px,100%);height:34px;min-width:0;padding:0 7px 0 10px;background:var(--surface);border:1px solid var(--line-strong);border-radius:6px}.toolbar-search-field>svg{flex:0 0 auto;width:16px;height:16px;color:var(--muted)}.toolbar-search-field input{flex:1 1 auto;width:100%;min-width:0;height:32px;padding:0;border:0;outline:0;background:transparent;color:var(--text);font-size:12px}.toolbar-search-field button{display:inline-flex;flex:0 0 auto;align-items:center;justify-content:center;width:28px;height:28px;padding:0;border:0;border-radius:5px;background:transparent;color:var(--muted)}.toolbar-search-field button:hover{background:var(--surface-subtle);color:var(--text)}.toolbar-search-field button svg{width:15px;height:15px}.toolbar-context{margin-left:auto;overflow:hidden;color:var(--muted);font-size:11px;text-overflow:ellipsis;white-space:nowrap}.page-content{min-width:0}.loading-state{display:flex;align-items:center;justify-content:center;gap:9px;min-height:260px;padding:24px;color:var(--muted);font-size:13px}.loading-state svg{width:19px;height:19px;color:var(--brand)}.full-page-loading,.standalone-state-page{display:grid;min-height:100vh;min-height:100dvh;place-items:center;padding:18px;background:var(--canvas)}.full-page-loading .loading-state,.standalone-state-page .state-panel{width:min(520px,100%);min-height:220px;background:var(--surface);border:1px solid var(--line);border-radius:7px}.state-panel{display:grid;justify-items:center;min-height:360px;padding:64px 24px;align-content:center;gap:14px;color:var(--muted);text-align:center}.state-panel>svg{width:30px;height:30px;color:var(--brand);stroke-width:1.7}.state-panel h2{margin:0;color:var(--text);font-size:16px;line-height:1.35;letter-spacing:0}.state-panel p{max-width:560px;margin:5px auto 0;color:var(--muted);font-size:12px;line-height:1.6}.state-action{margin-top:2px}.primary-button,.secondary-button{display:inline-flex;align-items:center;justify-content:center;gap:7px;min-height:36px;padding:0 12px;border-radius:6px;font-size:12px;font-weight:700}.primary-button{border:1px solid var(--brand);background:var(--brand);color:#fff}.primary-button:hover:not(:disabled){border-color:var(--brand-strong);background:var(--brand-strong)}.secondary-button{border:1px solid var(--line-strong);background:var(--surface);color:var(--text-secondary)}.secondary-button:hover:not(:disabled){border-color:#aaa299;background:var(--surface-subtle);color:var(--text)}.secondary-button svg{width:15px;height:15px}.text-link{color:var(--brand-strong);font-size:12px;font-weight:700;text-underline-offset:3px}.responsive-data-shell{width:100%;max-width:100%;overflow-x:auto;overscroll-behavior-inline:contain;scrollbar-width:thin;scrollbar-color:var(--line-strong) transparent}.responsive-data-shell:focus-visible{outline-offset:-3px}.data-scroll-hint{display:flex;align-items:center;justify-content:space-between;gap:8px;padding:5px 12px;color:var(--text-secondary);font-size:12px}.data-scroll-hint button{border:0;background:transparent;color:var(--brand-strong);font:inherit;white-space:nowrap;cursor:pointer}.data-scroll-hint button:disabled{color:var(--muted);cursor:default}.student-enrollment-scheduled-heading{margin:0 0 12px;padding-top:8px;color:var(--brand-strong);font-size:13px}.student-empty-fields-toggle{margin-top:10px;padding:4px 0;border:0;background:transparent;cursor:pointer}.roster-proportion-table{width:100%;min-width:1040px;table-layout:fixed}.roster-proportion-table .roster-col--small{width:7%}.roster-proportion-table .roster-col--medium{width:10%}.roster-proportion-table .roster-col--large{width:14%}.data-table{width:100%;min-width:640px;border-collapse:collapse;table-layout:fixed;color:var(--text-secondary);font-size:12px}.data-table th,.data-table td{min-width:0;padding:11px 20px;overflow:hidden;border-bottom:1px solid var(--line);text-align:left;text-overflow:ellipsis;white-space:nowrap}.data-table th{background:var(--surface-subtle);color:#6d665e;font-size:10px;font-weight:750}.data-table tbody tr:last-child td{border-bottom:0}.data-table tbody tr:hover{background:#fcfbfa}.data-table td strong{color:var(--text);font-weight:700}.mobile-student-list{display:none;margin:0;padding:0;list-style:none}.mobile-student-list li{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:4px 10px;min-width:0;padding:12px 14px;border-bottom:1px solid var(--line)}.mobile-student-list li:last-child{border-bottom:0}.mobile-student-list strong,.mobile-student-list span,.mobile-student-list small{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.mobile-student-list strong{color:var(--text);font-size:13px}.mobile-student-list span{color:var(--text-secondary);font-size:11px;text-align:right}.mobile-student-list small{grid-column:1 / -1;color:var(--muted);font-size:11px}.definition-rows{margin:0}.definition-rows>div{display:grid;grid-template-columns:minmax(120px,.3fr) minmax(0,1fr);gap:16px;padding:13px 20px;border-bottom:1px solid var(--line);font-size:12px}.definition-rows>div:last-child{border-bottom:0}.definition-rows dt{color:var(--muted);font-weight:700}.definition-rows dd{min-width:0;margin:0;color:var(--text);overflow-wrap:anywhere}.login-page{display:grid;min-height:100vh;min-height:100dvh;place-items:center;padding:20px;background:#f5f4f2}.login-panel{width:min(420px,100%);padding:26px;background:var(--surface);border:1px solid var(--line);border-radius:8px;box-shadow:0 16px 44px #2524220f}.login-panel .brand-mark{margin-bottom:22px}.password-panel{width:min(480px,100%)}.password-icon{display:grid;width:44px;height:44px;margin-bottom:20px;place-items:center;border-radius:8px;background:var(--brand-soft);color:var(--brand-strong)}.password-icon svg{width:21px;height:21px}.eyebrow{margin:0;color:var(--brand-strong);font-size:11px;font-weight:750}.login-panel h1{margin:5px 0 6px;color:var(--text);font-size:25px;line-height:1.3;letter-spacing:0}.muted{margin:0;color:var(--muted);font-size:12px;line-height:1.55}.auth-form{display:grid;gap:13px;margin-top:22px}.auth-form label{display:grid;gap:6px;color:var(--text-secondary);font-size:12px;font-weight:700}.auth-form input{width:100%;min-width:0;height:40px;padding:0 10px;border:1px solid var(--line-strong);border-radius:6px;outline:0;background:var(--surface);color:var(--text)}.auth-form input:focus{border-color:var(--brand);box-shadow:0 0 0 3px var(--focus)}.auth-form .primary-button{min-height:42px;margin-top:2px}.form-error{padding:9px 10px;border:1px solid #fecaca;border-radius:6px;background:var(--danger-soft);color:var(--danger);font-size:11px;line-height:1.45}.spin{animation:spin .9s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}@media(min-width:700px){.app-shell.is-sidebar-collapsed{grid-template-columns:72px minmax(0,1fr)}.sidebar{padding-top:0}.sidebar-brand{height:var(--shell-header-height);padding-top:0;padding-bottom:0}.sidebar-brand-logo--full{height:50px}.sidebar.is-collapsed{width:72px;padding-right:8px;padding-left:8px}.sidebar.is-collapsed .sidebar-brand{justify-content:center;padding-right:0;padding-left:0}.sidebar.is-collapsed .sidebar-brand-toggle{flex:0 0 48px;width:48px;min-height:48px;padding:0}.sidebar.is-collapsed .sidebar-brand-logo{width:44px;height:44px}.sidebar.is-collapsed .brand-copy,.sidebar.is-collapsed .nav-group-label,.sidebar.is-collapsed .nav-item>.nav-item-label,.sidebar.is-collapsed .account-copy,.sidebar.is-collapsed .account-error{display:none}.sidebar.is-collapsed .sidebar-nav-scroll{margin-right:0;padding-right:0}.sidebar.is-collapsed .nav-group{padding:6px 0}.sidebar.is-collapsed .nav-item{width:44px;min-height:44px;margin:0 auto;justify-content:center;padding:0}.sidebar.is-collapsed .nav-item>.nav-item-badge{position:absolute;top:1px;right:-3px;min-width:17px;height:17px;padding:0 4px;border-width:1px;box-shadow:0 0 0 2px var(--surface);font-size:9px}.sidebar.is-collapsed .nav-item.is-active{box-shadow:inset 2px 0 var(--brand)}.sidebar.is-collapsed .nav-item.is-active>.nav-item-badge{box-shadow:0 0 0 2px var(--brand-soft)}.sidebar.is-collapsed .sidebar-account{grid-template-columns:1fr;justify-items:center;gap:4px;padding-right:0;padding-left:0}.sidebar.is-collapsed .account-logout{width:32px;height:32px}}@media(min-width:700px)and (max-width:1099px){.sidebar.is-collapsed .sidebar-nav-scroll,.sidebar.is-collapsed .nav-item{transform:translateZ(0);-webkit-backface-visibility:hidden;backface-visibility:hidden}.sidebar.is-collapsed .nav-item svg{display:block;visibility:visible;opacity:1}.topbar{padding:0 16px}.global-search{width:36px;min-width:36px;border-color:transparent}.global-search input{display:none}.global-search .icon-button{border:1px solid var(--line-strong)}.global-search.is-expanded{position:absolute;right:16px;left:16px;z-index:5;width:auto;min-width:0;border-color:var(--brand);box-shadow:0 4px 18px #25242224,0 0 0 3px var(--focus)}.global-search.is-expanded input{display:block}.workspace-main{padding:14px}}@media(max-width:699px){.app-shell{display:block}.workspace{grid-column:auto}.mobile-menu-button{position:fixed;top:max(12px,env(safe-area-inset-top));left:max(10px,env(safe-area-inset-left));z-index:35;display:inline-flex;background:var(--surface);border-color:var(--line-strong)}.drawer-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:39;display:block;width:100%;height:100%;padding:0;border:0;border-radius:0;background:#2524227a}.sidebar{position:fixed;top:0;left:0;z-index:40;width:min(304px,88vw);max-width:100%;transform:translate(-105%);transition:transform .16s ease}.sidebar.is-open{transform:translate(0)}.close-drawer-button{display:inline-flex;flex:0 0 auto;margin-left:auto}.nav-item{min-height:40px}.sidebar-account{padding-bottom:max(2px,env(safe-area-inset-bottom))}.topbar{height:64px;gap:8px;padding:0 max(9px,env(safe-area-inset-right)) 0 62px}.topbar-title strong{font-size:13px}.topbar-title small{display:none}.topbar-context{gap:5px}.topbar-back-button{width:32px;height:32px}.topbar-actions{flex:0 1 auto;gap:5px}.global-search{width:36px;min-width:36px;border-color:transparent}.global-search input{display:none}.global-search .icon-button{border:1px solid var(--line-strong)}.global-search.is-expanded{position:absolute;right:12px;left:52px;z-index:5;width:auto;min-width:0;border-color:var(--brand);box-shadow:0 4px 18px #25242224,0 0 0 3px var(--focus)}.global-search.is-expanded input{display:block}.scope-selector{min-width:0;max-width:min(150px,40vw);padding:0 6px}.scope-selector>svg{display:none}.scope-selector select{font-size:11px}.topbar-student-add{width:36px;min-width:36px;padding:0}.topbar-student-add span{display:none}.workspace-main{padding:9px}.page-scaffold{min-height:calc(100vh - 82px);min-height:calc(100dvh - 82px);border-radius:6px}.page-heading{padding:14px}.page-heading h1{font-size:18px}.page-heading p{font-size:11px}.status-badge{min-height:22px;font-size:10px}.compact-toolbar{flex-wrap:wrap;padding:8px 14px}.toolbar-search-field{width:100%}.toolbar-context{width:100%;margin-left:0;white-space:normal}.state-panel{min-height:300px;padding:42px 18px}.desktop-student-table{display:none}.mobile-student-list{display:block}.definition-rows>div{grid-template-columns:1fr;gap:4px;padding:12px 14px}.login-page{padding:12px}.login-panel{padding:21px}.login-panel h1{font-size:23px}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}.login-page-redesign{display:block;min-height:100dvh;padding:0;overflow-y:auto;background:var(--surface)}.login-experience{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));width:100%;min-height:100dvh;overflow:hidden;background:var(--surface)}.login-visual{position:relative;min-width:0;min-height:100dvh;overflow:hidden;isolation:isolate;background:#f6f5f3}.login-visual-wordmark{position:absolute;right:clamp(24px,3vw,52px);bottom:clamp(48px,7vh,78px);left:clamp(24px,3vw,52px);z-index:2;display:flex;align-items:baseline;gap:.13em;color:#1d211e;font-size:clamp(64px,6.2vw,108px);font-weight:900;line-height:.86;letter-spacing:-.085em;white-space:nowrap;pointer-events:none;-webkit-user-select:none;user-select:none}.login-page-redesign .login-panel-redesign{display:grid;place-items:center;min-width:0;min-height:100dvh;width:100%;max-width:none;padding:48px clamp(40px,6vw,96px);overflow-y:auto;background:var(--surface);border:0;border-radius:0;box-shadow:none}.login-card{width:min(500px,100%);padding:44px;background:var(--surface);border:1px solid var(--line);border-radius:16px;box-shadow:0 18px 50px #2524221a,0 2px 8px #2524220a}.login-heading,.login-page-redesign .auth-form{width:100%;margin-right:0;margin-left:0}.login-logo{display:block;width:201px;max-width:62%;height:auto;object-fit:contain;object-position:left center}.login-page-redesign .login-heading h1{margin:28px 0 0;color:var(--text);font-size:30px;font-weight:760;line-height:1.32;letter-spacing:-.02em}.login-page-redesign .auth-form{gap:20px;margin-top:32px}.login-page-redesign .auth-form label{gap:8px;color:var(--text-secondary);font-size:14px}.login-page-redesign .auth-form input{height:50px;padding:0 14px;border-radius:8px;font-size:16px}.login-page-redesign .auth-form .primary-button{min-height:50px;margin-top:2px;border-radius:8px;font-size:15px}.login-page-redesign .form-error{padding:11px 12px;border-radius:8px;font-size:13px}@media(min-width:700px)and (max-width:999px){.login-experience{grid-template-columns:minmax(260px,40%) minmax(420px,60%)}.login-visual-wordmark{flex-direction:column;align-items:flex-start;gap:.08em;font-size:clamp(54px,8vw,72px);line-height:.82}.login-page-redesign .login-panel-redesign{padding:32px 24px}.login-card{width:min(460px,100%);padding:36px;border-radius:14px}}@media(max-width:699px){.login-experience{grid-template-columns:minmax(0,1fr);grid-template-rows:112px minmax(0,1fr);width:100%;min-height:100dvh;overflow:visible}.login-visual{height:112px;min-height:112px;background:#fff1e8}.login-visual-wordmark{right:24px;bottom:20px;left:24px;gap:.16em;font-size:clamp(40px,12vw,52px)}.login-page-redesign .login-panel-redesign{place-items:start center;min-height:calc(100dvh - 112px);width:100%;padding:28px 24px max(40px,env(safe-area-inset-bottom))}.login-card{width:min(420px,100%);padding:0;border:0;border-radius:0;box-shadow:none}.login-logo{width:180px;max-width:64%}.login-page-redesign .login-heading h1{margin-top:24px;font-size:25px}.login-page-redesign .auth-form{margin-top:28px}}@media(max-height:700px)and (min-width:700px){.login-page-redesign .login-panel-redesign{padding-top:24px;padding-bottom:24px}}.students-page{min-width:0}.students-page .page-scaffold{min-height:calc(100vh - 100px);min-height:calc(100dvh - 100px);overflow:visible;border:0;background:transparent}.students-page .page-content{display:grid;gap:12px}.students-page .page-content>.loading-state,.students-page .page-content>.state-panel{overflow:hidden;border:1px solid var(--line);border-radius:10px;background:var(--surface);box-shadow:0 1px 2px #1e1b180a}.students-page .page-actions svg,.students-page .primary-button svg{width:16px;height:16px}.students-add-link{text-decoration:none}.students-toolbar{display:grid;grid-template-columns:minmax(0,1fr);gap:8px;min-width:0;padding:0;background:transparent}.students-roster-controls{--students-control-height: 36px;display:grid;grid-template-columns:184px minmax(220px,1fr) auto auto auto;align-items:center;gap:8px;min-width:0}.students-control-pill{min-width:0;height:var(--students-control-height);min-height:var(--students-control-height);border-radius:999px}.students-toolbar-summary{display:flex;align-items:center;gap:8px;min-width:0;min-height:44px;padding:6px 12px;border:1px solid var(--line);border-radius:10px;background:var(--surface)}.students-intake-shortcut{min-height:var(--students-control-height);padding-block:0;padding-inline:14px;border-radius:999px;text-decoration:none;white-space:nowrap}.students-intake-count{display:grid;min-width:20px;height:20px;padding:0 5px;place-items:center;border-radius:999px;background:var(--brand);color:#fff;font-size:9px;font-weight:800;line-height:1}.students-toolbar-label{display:inline-flex;align-items:center;gap:6px;color:var(--text-secondary);font-size:11px;font-weight:750;white-space:nowrap}.students-toolbar-label svg{width:14px;height:14px;color:var(--brand)}.students-scope-segment{display:inline-grid;grid-auto-columns:minmax(104px,1fr);grid-auto-flow:column;gap:3px;padding:3px;border:1px solid var(--line-strong);border-radius:6px;background:var(--surface)}.students-scope-segment button{display:inline-flex;align-items:center;justify-content:center;gap:6px;min-height:31px;padding:0 9px;border:1px solid transparent;border-radius:4px;background:transparent;color:var(--muted);font-size:11px;font-weight:700;white-space:nowrap}.students-scope-segment button:hover{color:var(--text)}.students-scope-segment button:disabled{color:var(--muted);cursor:not-allowed;opacity:.55}.students-scope-segment button.is-active{border-color:#c7d2fe;background:var(--brand-soft);color:var(--brand-strong)}.students-scope-segment svg{width:14px;height:14px}.students-search-field{display:flex;align-items:center;min-width:0;height:var(--students-control-height);overflow:hidden;border:1px solid var(--line-strong);border-radius:999px;background:var(--surface)}.students-search-field:focus-within,.students-select-field:focus-within{border-color:var(--brand);box-shadow:0 0 0 3px var(--focus)}.students-search-field>svg{flex:0 0 auto;width:15px;height:15px;margin-left:10px;color:var(--muted)}.students-search-field input{flex:1 1 auto;width:100%;min-width:0;height:calc(var(--students-control-height) - 2px);padding:0 7px;border:0;outline:0;background:transparent;color:var(--text);font-size:12px}.students-search-field button{display:grid;flex:0 0 auto;width:30px;height:30px;margin-right:3px;padding:0;place-items:center;border:0;border-radius:999px;background:transparent;color:var(--muted)}.students-search-field button:hover{background:var(--surface-subtle);color:var(--text)}.students-search-field button svg{width:14px;height:14px}.students-filter-row{display:flex;flex-wrap:nowrap;align-items:center;justify-content:flex-end;justify-self:end;gap:6px;min-width:0}.students-query-controls{position:relative;align-items:center}.students-query-controls .students-select-field{min-width:158px;height:44px}.students-query-controls .students-date-field{display:flex;align-items:center;padding:0 10px}.students-roster-controls .students-date-field{display:flex;min-width:0;height:var(--students-control-height);align-items:center;padding:0 14px;border-radius:999px}.students-roster-controls .students-roster-month-control{padding:0}.students-roster-month-control .report-month-stepper{width:100%;height:var(--students-control-height);grid-template-columns:28px minmax(0,1fr) 28px}.students-roster-month-control .report-month-stepper button,.students-roster-month-control .report-month-stepper label,.students-roster-month-control .report-month-stepper input{height:calc(var(--students-control-height) - 2px)}.students-roster-month-control .report-month-stepper button{display:grid;width:28px}.students-date-control{display:flex;width:100%;min-width:0;height:100%;align-items:center;gap:8px}.students-date-control>svg{flex:0 0 auto;width:15px;height:15px;color:var(--brand)}.students-date-control input{width:100%;min-width:0;height:42px;padding:0;border:0;outline:0;background:transparent;color:var(--text-secondary);font:inherit;font-size:11px;font-weight:700}.students-filter-trigger,.students-sort-trigger{display:inline-flex;min-height:var(--students-control-height);align-items:center;justify-content:center;gap:7px;padding:0 13px;border:1px solid var(--line-strong);border-radius:999px;background:var(--surface);color:var(--text-secondary);font-size:11px;font-weight:750;white-space:nowrap}.students-filter-trigger:hover,.students-sort-trigger:hover,.students-filter-trigger.is-active,.students-sort-trigger.is-active{border-color:#c7d2fe;background:var(--brand-soft);color:var(--brand-strong)}.students-filter-trigger:focus-visible,.students-sort-trigger:focus-visible,.students-filter-chip:focus-visible,.students-sort-dialog button:focus-visible{outline:3px solid var(--focus);outline-offset:2px}.students-filter-trigger svg,.students-sort-trigger svg{width:15px;height:15px}.students-filter-trigger b{display:grid;min-width:20px;height:20px;padding:0 5px;place-items:center;border-radius:999px;background:var(--brand);color:#fff;font-size:9px}.students-sort-anchor{display:flex;min-width:0}.students-sort-anchor .students-sort-trigger{width:100%}.management-dialog.students-sort-dialog[open]{width:min(460px,calc(100vw - 28px));max-height:min(82vh,620px);max-height:min(82dvh,620px)}.students-sort-dialog-shell{max-height:min(82vh,620px);max-height:min(82dvh,620px)}.students-sort-dialog-body{display:grid;gap:12px;padding:12px}.students-sort-dialog-footer .primary-button{min-width:104px}.students-sort-options{display:grid;gap:2px;padding:6px}.students-sort-options>button{display:flex;min-height:44px;align-items:center;justify-content:space-between;gap:10px;padding:7px 9px;border:1px solid transparent;border-radius:6px;background:transparent;color:var(--text-secondary);text-align:left}.students-sort-options>button:hover,.students-sort-options>button.is-selected{border-color:#c7d2fe;background:var(--brand-soft);color:var(--brand-strong)}.students-sort-options>button>span{display:grid;gap:2px}.students-sort-options strong{font-size:10px}.students-sort-options small{color:var(--muted);font-size:8px}.students-sort-options svg{flex:0 0 auto;width:15px;height:15px}.students-sort-direction{display:grid;grid-template-columns:minmax(64px,1fr) repeat(2,minmax(72px,auto));align-items:center;gap:5px;padding:9px 10px;border-top:1px solid var(--line);background:var(--surface-subtle)}.students-sort-direction>span{color:var(--muted);font-size:9px;font-weight:700}.students-sort-direction button{display:inline-flex;min-height:34px;align-items:center;justify-content:center;gap:5px;padding:0 8px;border:1px solid var(--line-strong);border-radius:5px;background:var(--surface);color:var(--text-secondary);font-size:9px;font-weight:700}.students-sort-direction button.is-selected:not(:disabled){border-color:#c7d2fe;background:var(--brand-soft);color:var(--brand-strong)}.students-sort-direction button:disabled{cursor:not-allowed;opacity:.45}.students-sort-direction svg{width:13px;height:13px}.students-active-filter-chips{display:flex;grid-column:1 / -1;flex-wrap:wrap;align-items:center;gap:5px;min-width:0}.students-active-filter-chips>span{color:var(--muted);font-size:9px;font-weight:700}.students-filter-chip{display:inline-flex;min-height:30px;align-items:center;gap:5px;padding:0 8px;border:1px solid #c7d2fe;border-radius:999px;background:var(--brand-soft);color:var(--brand-strong);font-size:9px;font-weight:700}.students-filter-chip:hover{border-color:var(--brand)}.students-filter-chip svg{width:12px;height:12px}.students-roster-table.is-transitioning tbody,.students-mobile-roster.is-transitioning{pointer-events:none;opacity:.55}.students-select-field{display:grid;min-width:112px;height:38px;padding:3px 7px 2px;border:1px solid var(--line-strong);border-radius:6px;background:var(--surface)}.students-select-field>span{color:var(--muted);font-size:8px;font-weight:700;line-height:1}.students-select-field select{width:100%;min-width:0;height:24px;padding:0 19px 0 0;border:0;outline:0;background-color:transparent;color:var(--text-secondary);font-size:11px}.students-clear-filters{display:inline-flex;align-items:center;gap:5px;min-height:36px;padding:0 8px;border:0;border-radius:5px;background:transparent;color:var(--brand-strong);font-size:10px;font-weight:700}.students-clear-filters:hover{background:var(--brand-soft)}.students-clear-filters svg{width:13px;height:13px}.students-mobile-sort{display:none}.management-dialog.students-filter-dialog[open]{width:min(720px,calc(100vw - 28px));max-width:none;height:auto;max-height:min(86vh,760px);max-height:min(86dvh,760px);margin:auto;border:1px solid var(--line-strong);border-radius:10px}.management-dialog.students-filter-dialog>.students-filter-modal-shell{display:grid;height:auto;max-height:min(86vh,760px);max-height:min(86dvh,760px);grid-template-rows:auto minmax(0,1fr) auto}.students-filter-modal-header{padding:17px 18px}.students-filter-close{flex:0 0 auto;min-width:40px;min-height:40px}.students-filter-modal-body{display:grid;align-content:start;gap:18px;padding:18px;scrollbar-gutter:stable}.students-filter-group{display:grid;gap:11px}.students-filter-group+.students-filter-group{padding-top:17px;border-top:1px solid var(--line)}.students-filter-group-heading{display:grid;gap:3px}.students-filter-group-heading h3,.students-filter-group-heading span{margin:0}.students-filter-group-heading h3{color:var(--text);font-size:12px}.students-filter-group-heading span{color:var(--muted);font-size:9px;line-height:1.45}.students-filter-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.students-filter-field{display:grid;gap:5px;min-width:0}.students-filter-field>span{color:var(--text-secondary);font-size:10px;font-weight:700}.students-filter-field select{width:100%;min-width:0;min-height:44px;padding:0 32px 0 10px;border:1px solid var(--line-strong);border-radius:6px;outline:0;background-color:var(--surface);color:var(--text);font-size:11px}.students-filter-field select:focus{border-color:var(--brand);box-shadow:0 0 0 3px var(--focus)}.students-filter-field select:disabled{cursor:not-allowed;opacity:.55}.students-filter-error{margin:0;padding:9px 10px;border:1px solid #fecaca;border-radius:6px;background:var(--danger-soft);color:var(--danger);font-size:9px;line-height:1.45}.students-filter-modal-footer{justify-content:space-between;padding-inline:18px}.students-filter-modal-footer>div{display:flex;gap:7px}.students-filter-modal-footer button{min-height:42px}.students-filter-reset{padding:0;border:0;background:transparent;color:var(--brand-strong);font-size:10px;font-weight:750}.students-filter-reset:hover{text-decoration:underline}.students-toolbar-context{display:flex;grid-column:1 / -1;align-items:center;gap:6px;min-width:0;color:var(--muted);font-size:10px;line-height:1.4}.students-toolbar-context>svg{width:12px;height:12px}.students-roster-table-shell{min-width:0;overflow:hidden;border:1px solid var(--line);border-radius:10px;background:var(--surface);box-shadow:0 1px 2px #1e1b180a}.students-roster-table{--students-roster-select-width: var(--table-col-xs);--students-roster-name-width: var(--table-col-sm);--students-roster-school-width: var(--table-col-md);--students-roster-grade-width: var(--table-col-sm);width:100%;min-width:930px;border-collapse:separate;border-spacing:0;table-layout:fixed;color:var(--text-secondary);font-size:11px}.students-name-column{width:var(--students-roster-name-width)}.students-school-column{width:var(--students-roster-school-width)}.students-grade-column{width:var(--students-roster-grade-width)}.students-branch-column{width:var(--table-col-lg)}.students-services-column{width:var(--table-col-sm)}.students-subjects-column{width:var(--table-col-lg)}.students-lunch-column{width:var(--table-col-sm)}.students-payment-column,.students-teacher-column{width:var(--table-col-md)}.students-note-column{width:auto}.students-roster-table th,.students-roster-table td{min-width:0;padding:4px 9px;overflow:hidden;border-bottom:1px solid var(--line);text-align:left;text-overflow:ellipsis;vertical-align:middle;white-space:nowrap}.students-roster-table th{position:sticky;top:0;z-index:3;height:45px;background:#faf9f7;color:#6d665e;font-size:10px;font-weight:750}.students-roster-table .students-roster-frozen{position:sticky;z-index:2;background:var(--surface)}.students-roster-table thead .students-roster-frozen{z-index:5;background:#faf9f7}.students-roster-table .students-roster-frozen-select{left:0}.students-roster-table .students-roster-frozen-name{left:var(--students-roster-select-width)}.students-roster-table .students-roster-frozen-school{left:calc(var(--students-roster-select-width) + var(--students-roster-name-width))}.students-roster-table .students-roster-frozen-grade{left:calc(var(--students-roster-select-width) + var(--students-roster-name-width) + var(--students-roster-school-width));box-shadow:none}.students-roster-table .students-roster-frozen-school,.students-roster-table .students-roster-frozen-grade{white-space:normal;overflow-wrap:anywhere}.students-roster-table tbody tr{height:45px;outline:0;cursor:pointer;transition:background-color .12s ease,box-shadow .12s ease}.students-page .students-roster-table{--roster-header-height: 45px;--roster-row-height: 45px}.workspace-main .students-page .students-roster-table-shell .students-roster-table{min-width:930px}.workspace-main .students-page .students-roster-table-shell .students-roster-table>thead>tr>th{padding-block:2px}.workspace-main .students-page .students-roster-table-shell .students-roster-table>tbody>tr>:is(td,th){padding-block:2px}.workspace-main .students-page .students-roster-table-shell .students-roster-table>thead>tr>.students-roster-frozen-grade{padding-inline:8px}.workspace-main .students-page .students-roster-table-shell .students-roster-table>:is(thead,tbody)>tr>.students-lunch-cell{padding-inline:4px}.workspace-main .students-page .students-roster-table-shell .students-roster-table>:is(thead,tbody)>tr>.students-roster-frozen-name{padding-inline:1px}.students-roster-frozen-name .students-name-button{width:100%;min-width:0}.students-roster-frozen-name .students-name-button :is(strong,span){overflow:visible;white-space:normal;overflow-wrap:anywhere;text-overflow:clip}.students-roster-table tbody tr:hover{background:#fcfbfa}.students-roster-table tbody tr:hover>.students-roster-frozen{background:#fcfbfa}.students-roster-table tbody tr:focus-visible{position:relative;z-index:1;box-shadow:inset 0 0 0 2px var(--brand)}.students-roster-table tbody tr.is-selected{background:var(--brand-soft);box-shadow:inset 3px 0 var(--brand)}.students-roster-table tbody tr.is-selected>.students-roster-frozen{background:var(--brand-soft)}.students-roster-table tbody tr:last-child td{border-bottom:0}.students-sort-button{display:inline-flex;align-items:center;gap:4px;max-width:100%;padding:0;border:0;background:transparent;color:inherit;font-size:inherit;font-weight:inherit}.students-sort-button span{overflow:hidden;text-overflow:ellipsis}.students-sort-button svg{flex:0 0 auto;width:12px;height:12px}.students-name-button{display:grid;max-width:100%;padding:0;border:0;background:transparent;text-align:left}.students-name-button strong,.students-name-button span{white-space:normal;overflow-wrap:anywhere}.students-name-button strong{color:var(--text);font-size:12px;font-weight:750}.students-name-button span{margin-top:2px;color:var(--muted);font-size:10px}.students-service-list{display:flex;flex-wrap:wrap;gap:3px}.students-service-list>span{display:inline-flex;min-height:21px;align-items:center;padding:2px 5px;border:1px solid var(--line);border-radius:4px;background:var(--surface);color:var(--text-secondary);font-size:9px;font-weight:700;white-space:nowrap}.students-muted-value{color:#918b84}.students-monthly-note{display:block;max-width:100%;overflow:visible;color:var(--text-secondary);line-height:1.4;white-space:pre-wrap;overflow-wrap:anywhere}.students-subjects{display:block;overflow:visible;color:var(--text-secondary);text-overflow:clip;white-space:normal;overflow-wrap:anywhere}.students-lunch-status{display:inline-flex;align-items:center;justify-content:center;max-width:100%;color:var(--success)}.students-lunch-status.is-warning{color:var(--warning)}.students-lunch-status>svg{width:16px;height:16px;stroke-width:2.5}.students-roster-table .students-lunch-cell{padding-inline:4px;text-align:center}.students-mobile-roster{display:none;margin:0;padding:0;list-style:none}.students-pagination{display:flex;align-items:center;justify-content:flex-end;gap:14px;min-height:54px;padding:8px 14px;border-top:1px solid var(--line);background:var(--surface);color:var(--muted);font-size:10px}@media(max-width:899px){.students-roster-controls{grid-template-columns:184px minmax(96px,1fr) repeat(3,44px);gap:7px}.students-roster-controls .students-intake-shortcut,.students-roster-controls .students-filter-trigger,.students-roster-controls .students-sort-trigger{width:44px;min-width:44px;padding:0}.students-roster-controls .students-control-label{display:none}}@media(max-width:520px){.students-roster-controls{grid-template-columns:repeat(3,minmax(0,1fr))}.students-roster-controls .students-date-field,.students-roster-controls .students-search-field{grid-column:1 / -1}.students-roster-controls .students-intake-shortcut,.students-roster-controls>.students-filter-trigger,.students-roster-controls .students-sort-anchor,.students-roster-controls .students-sort-trigger{width:100%}.students-roster-controls .students-intake-shortcut,.students-roster-controls .students-filter-trigger,.students-roster-controls .students-sort-trigger{border-radius:999px}}.students-pagination>div:first-child{display:flex;gap:8px;margin-right:auto}.students-pagination label{display:inline-flex;align-items:center;gap:6px}.students-pagination select{height:32px;padding:0 24px 0 8px;border:1px solid var(--line-strong);border-radius:5px;background-color:var(--surface);color:var(--text-secondary);font-size:10px}.students-page-buttons{display:flex;gap:4px}.students-page-buttons .icon-button{width:32px;height:32px;border-color:var(--line)}.management-dialog.student-detail-modal[open]{display:flex;width:min(1120px,calc(100vw - 48px));max-width:none;height:min(880px,90vh);height:min(880px,90dvh);max-height:90vh;max-height:90dvh;border-radius:12px}.student-detail-modal::backdrop{background:#2524226b;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px)}.student-detail-card{display:flex;flex:1 1 auto;width:100%;min-width:0;min-height:0;flex-direction:column;overflow:hidden;background:var(--surface-subtle)}.student-detail-header{display:flex;flex:0 0 auto;align-items:flex-start;justify-content:space-between;gap:12px;min-width:0;padding:max(20px,env(safe-area-inset-top)) 20px 18px;border-bottom:1px solid var(--line);background:var(--surface)}.student-detail-header>div{min-width:0}.student-detail-header>div:first-child{flex:1 1 auto}.student-detail-header-actions{display:flex;flex:0 0 auto;flex-wrap:wrap;align-items:center;justify-content:flex-end;gap:6px}.student-detail-charge-action{min-height:40px;gap:7px;padding-inline:15px;border-radius:999px;font-size:13px;white-space:nowrap}.student-detail-charge-action svg{width:16px;height:16px}.student-detail-edit-button{min-height:34px;padding:0 10px;white-space:nowrap}.student-detail-edit-button svg{width:14px;height:14px}.student-detail-eyebrow{display:block;margin-bottom:7px;color:var(--muted);font-size:11px;font-weight:650}.student-detail-title-line{display:flex;flex-wrap:wrap;align-items:center;gap:8px}.student-detail-title-line h2{margin:0;color:var(--text);font-size:20px;font-weight:700;line-height:1.3;letter-spacing:0}.student-detail-header p{margin:4px 0 0;color:var(--muted);font-size:10px}.student-detail-close{flex:0 0 auto;border-color:var(--line)}.student-detail-body{flex:1 1 auto;min-height:0;overflow-x:hidden;overflow-y:auto;overscroll-behavior:contain;padding-bottom:max(18px,env(safe-area-inset-bottom))}.student-profile-edit-form{display:grid;gap:12px}.student-profile-edit-note{margin:0;color:var(--muted);font-size:10px;line-height:1.55}.student-profile-edit-error{display:grid;gap:3px;padding:9px 10px;border:1px solid #fecaca;border-radius:6px;background:var(--danger-soft);color:var(--danger);font-size:10px;line-height:1.45}.student-profile-edit-error small{font-size:9px}.student-profile-edit-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:11px 12px}.student-profile-edit-field{display:grid;gap:5px;min-width:0;color:var(--text-secondary);font-size:10px;font-weight:700}.student-profile-edit-field-wide{grid-column:1 / -1}.student-profile-edit-field input{width:100%;min-width:0;height:38px;padding:0 10px;border:1px solid var(--line-strong);border-radius:6px;outline:0;background:var(--surface);color:var(--text);font:inherit;font-weight:500}.student-profile-edit-field input:focus{border-color:var(--brand);box-shadow:0 0 0 3px var(--focus)}.student-profile-edit-actions{display:flex;flex:0 0 auto;align-items:center;justify-content:flex-end;gap:8px;min-height:64px;padding:10px 18px max(10px,env(safe-area-inset-bottom));border-top:1px solid var(--line);background:#fffffffa;box-shadow:0 -8px 20px #2524220d}.student-profile-edit-actions .primary-button,.student-profile-edit-actions .secondary-button{min-height:38px}.student-profile-edit-actions svg{width:15px;height:15px}.student-drawer-loading,.student-drawer-state{display:grid;min-height:360px;align-content:center;justify-items:center;gap:10px;padding:28px;color:var(--muted);text-align:center}.student-drawer-loading{grid-template-columns:auto auto}.student-drawer-loading svg,.student-drawer-state>svg{width:24px;height:24px;color:var(--brand)}.student-drawer-state h3{margin:0;color:var(--text);font-size:15px}.student-drawer-state p{max-width:390px;margin:0;font-size:11px;line-height:1.55}.student-drawer-state small{font-size:9px}.student-detail-section{padding:17px 18px;border-bottom:1px solid var(--line)}.student-detail-section:last-child{border-bottom:0}.student-detail-section-heading{display:flex;align-items:center;gap:7px;margin-bottom:12px}.student-detail-section-heading svg{width:15px;height:15px;color:var(--brand)}.student-detail-section-heading h3{margin:0;color:var(--text);font-size:12px;line-height:1.3}.student-preview-purge-section .student-detail-section-heading svg{color:var(--danger)}.student-preview-purge-intro{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:10px 12px;border-radius:8px;background:var(--surface-subtle)}.student-preview-purge-intro strong{margin:0;color:var(--text-secondary);font-size:11px;font-weight:500}.student-preview-purge-open,.student-preview-purge-authorize,.student-preview-purge-confirm{display:inline-flex;min-height:36px;flex:0 0 auto;align-items:center;justify-content:center;gap:6px;padding:0 11px;border:1px solid var(--danger);border-radius:999px;background:var(--surface);color:var(--danger);font-size:12px;font-weight:800}.student-preview-purge-open:hover:not(:disabled){background:#fff1f2}.student-preview-purge-open:focus-visible,.student-preview-purge-authorize:focus-visible,.student-preview-purge-confirm:focus-visible,.student-preview-purge-panel:focus-visible,.student-preview-purge-impact-step:focus-visible{outline:3px solid var(--focus);outline-offset:2px}.student-preview-purge-open svg,.student-preview-purge-authorize svg,.student-preview-purge-confirm svg{width:14px;height:14px}.student-preview-purge-panel{display:grid;gap:11px;padding:12px;border:1px solid #fecaca;border-radius:7px;background:snow}.student-preview-purge-panel>header,.student-preview-purge-step>footer{display:flex;align-items:center;justify-content:space-between;gap:10px}.student-preview-purge-panel>header strong,.student-preview-purge-panel>header p{margin:0}.student-preview-purge-panel>header strong{color:var(--text);font-size:14px}.student-preview-purge-panel>header p{margin-top:2px;color:var(--muted);font-size:12px}.student-preview-purge-loading{display:flex;min-height:44px;align-items:center;justify-content:center;gap:7px;color:var(--text-secondary);font-size:12px}.student-preview-purge-loading svg{width:15px;height:15px}.student-preview-purge-step{display:grid;gap:11px;padding-top:11px;border-top:1px solid var(--line)}.student-preview-purge-step-heading{display:flex;align-items:flex-start;gap:8px}.student-preview-purge-step-heading>span{display:inline-flex;width:23px;height:23px;flex:0 0 auto;align-items:center;justify-content:center;border-radius:999px;background:var(--danger);color:#fff;font-size:12px;font-weight:800}.student-preview-purge-step-heading strong,.student-preview-purge-step-heading p{margin:0}.student-preview-purge-step-heading strong{color:var(--text);font-size:14px}.student-preview-purge-step-heading p{margin-top:2px;color:var(--muted);font-size:12px;line-height:1.45}.student-preview-purge-checkbox{display:flex;min-height:44px;align-items:center;gap:9px;padding:10px 11px;border:1px solid var(--line-strong);border-radius:6px;background:var(--surface);color:var(--text-secondary);font-size:12px;font-weight:750}.student-preview-purge-checkbox:focus-within{border-color:var(--brand);box-shadow:0 0 0 3px var(--focus)}.student-preview-purge-checkbox input{width:17px;height:17px;flex:0 0 auto;accent-color:var(--danger)}.student-preview-purge-authorize{border-color:var(--brand);background:var(--brand);color:#fff}.student-preview-purge-authorize:hover:not(:disabled),.student-preview-purge-confirm:hover:not(:disabled){filter:brightness(.93)}.student-preview-purge-authorize:disabled,.student-preview-purge-confirm:disabled{cursor:not-allowed;opacity:.48}.student-preview-purge-authorized{display:flex;align-items:flex-start;gap:7px;padding:9px 10px;border:1px solid #a7f3d0;border-radius:6px;background:#ecfdf5;color:#047857;font-size:12px;line-height:1.45}.student-preview-purge-authorized svg{width:15px;height:15px;flex:0 0 auto}.student-preview-purge-terminations{display:grid;gap:7px;padding:10px;border:1px solid #fecaca;border-radius:6px;background:var(--danger-soft)}.student-preview-purge-terminations>strong{color:var(--danger);font-size:9px}.student-preview-purge-terminations dl,.student-preview-purge-retained dl{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:7px 12px;margin:0}.student-preview-purge-terminations dl>div,.student-preview-purge-retained dl>div{display:flex;min-width:0;justify-content:space-between;gap:8px}.student-preview-purge-terminations dt,.student-preview-purge-retained dt{color:var(--muted);font-size:11px}.student-preview-purge-terminations dd,.student-preview-purge-retained dd{margin:0;color:var(--text);font-size:12px;font-weight:750}.student-preview-purge-retained{display:grid;gap:7px;padding:10px;border:1px solid #fde68a;border-radius:6px;background:#fffbeb}.student-preview-purge-retained>strong{color:#92400e;font-size:12px}.student-preview-purge-override{color:#92400e;font-size:12px;line-height:1.45}.student-preview-purge-override svg{width:15px;height:15px;flex:0 0 auto}.student-preview-purge-override ul{margin:2px 0 0;padding-left:18px}.student-preview-purge-final-retained ul{margin:2px 0;padding-left:18px;color:#92400e;font-size:12px;line-height:1.45}.student-preview-purge-final-retained>span{color:var(--text-secondary);font-size:11px}.student-preview-purge-error{display:grid;justify-items:start;gap:5px;padding:9px 10px;border:1px solid #fecaca;border-radius:6px;background:var(--danger-soft);color:var(--danger);font-size:12px;line-height:1.45}.student-preview-purge-error small{color:var(--text-secondary)}.student-preview-purge-error ul{margin:2px 0 0;padding-left:18px}.student-preview-purge-confirm{background:var(--danger);color:#fff}.student-detail-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px 18px;margin:0}.student-detail-grid>div{min-width:0}.student-detail-grid>.student-detail-grid-wide{grid-column:1 / -1}.student-detail-grid dt,.student-detail-grid dd{margin:0}.student-detail-grid dt{margin-bottom:3px;color:var(--muted);font-size:9px;font-weight:700}.student-detail-grid dd{color:var(--text-secondary);font-size:11px;line-height:1.45;overflow-wrap:anywhere}.student-detail-list{display:grid}.student-detail-list-row{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:10px;min-width:0;padding:11px 0;border-bottom:1px solid var(--line)}.student-detail-list-row:first-child{padding-top:0}.student-detail-list-row:last-child{padding-bottom:0;border-bottom:0}.student-detail-list-row>div{min-width:0}.student-detail-list-row strong,.student-detail-list-row span,.student-detail-list-row small{display:block}.student-detail-list-row strong{color:var(--text);font-size:11px}.student-detail-list-row span{margin-top:2px;color:var(--text-secondary);font-size:10px;line-height:1.45}.student-detail-list-row small{margin-top:3px;color:var(--muted);font-size:9px;line-height:1.4}.student-contact-line{display:grid;grid-template-columns:auto auto;align-content:center;justify-items:end;gap:0 5px}.student-contact-line svg{grid-row:1 / 3;width:13px;height:13px;color:var(--muted)}.student-contact-line span,.student-contact-line small{margin:0}.student-enrollment-row{grid-template-columns:minmax(0,1fr) auto;align-items:center}.student-enrollment-row-main{min-width:0}.student-enrollment-change-button{min-height:32px;padding:0 9px;font-size:10px;white-space:nowrap}.student-enrollment-change-button svg{width:12px;height:12px}.student-enrollment-change-success{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:8px;margin:12px 18px 0;padding:9px 10px;border:1px solid #a7e8cc;border-radius:7px;background:var(--success-soft);color:var(--success);font-size:10px;font-weight:700}.student-enrollment-change-success>svg{width:15px;height:15px}.student-enrollment-change-success button{display:inline-grid;width:26px;height:26px;place-items:center;padding:0;border:0;background:transparent;color:inherit;cursor:pointer}.student-enrollment-change-success button svg{width:13px;height:13px}.management-dialog.student-enrollment-change-modal[open]{display:flex;width:min(900px,calc(100vw - 72px));max-width:none;height:min(760px,calc(100dvh - 72px));max-height:calc(100dvh - 72px);border-radius:14px}.management-dialog.student-enrollment-change-modal.student-enrollment-subject-change-modal[open]{display:block;width:min(640px,calc(100vw - 72px));height:fit-content;max-height:calc(100dvh - 72px)}.management-dialog.student-enrollment-subject-change-modal[open]>.student-enrollment-change-card{display:grid;width:100%;height:auto;min-height:0;max-height:calc(100dvh - 72px);flex:0 1 auto;grid-template-rows:auto minmax(0,1fr) auto}.student-enrollment-subject-change-modal .student-enrollment-change-body{height:auto;min-height:0;flex:0 1 auto;overflow-y:auto}.student-enrollment-change-modal::backdrop{background:#2524227a;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px)}.student-enrollment-change-card{display:flex;flex:1 1 auto;min-width:0;min-height:0;flex-direction:column;overflow:hidden;background:var(--surface)}.student-enrollment-change-header{display:flex;flex:0 0 auto;align-items:flex-start;justify-content:space-between;gap:12px;padding:18px 22px;border-bottom:1px solid var(--line)}.student-enrollment-change-header>div{min-width:0}.student-enrollment-change-header span{display:block;color:var(--brand-strong);font-size:11px;font-weight:750}.student-enrollment-change-header h2{margin:3px 0 0;color:var(--text);font-size:22px;line-height:1.3}.student-enrollment-change-header p{margin:4px 0 0;color:var(--muted);font-size:12px;line-height:1.45}.student-enrollment-change-body{display:grid;flex:1 1 auto;min-height:0;gap:14px;overflow-y:auto;padding:18px 22px 24px}.student-enrollment-change-month-section{display:grid;grid-template-columns:minmax(0,1fr) minmax(250px,.8fr);gap:18px;align-items:end;padding:14px 16px;border:1px solid var(--line);border-radius:10px;background:var(--surface-subtle)}.student-enrollment-change-month-section>div>span,.student-enrollment-change-subject-heading span,.student-enrollment-change-fee-check header span,.student-enrollment-change-subject-section>header span{display:block;color:var(--muted);font-size:10px;font-weight:700;line-height:1.4}.student-enrollment-change-month-section h3,.student-enrollment-change-subject-heading h3,.student-enrollment-change-fee-check h3{margin:3px 0 0;color:var(--text);font-size:15px;line-height:1.35}.student-enrollment-change-month-section label{display:grid;gap:5px;min-width:0;color:var(--text-secondary);font-size:11px;font-weight:700}.student-enrollment-change-month-section input{width:100%;min-width:0;height:42px;padding:0 11px;border:1px solid var(--line-strong);border-radius:8px;outline:0;background:var(--surface);color:var(--text);font:inherit;font-size:13px;font-weight:600}.student-enrollment-change-month-section small{color:var(--muted);font-size:10px;font-weight:500;line-height:1.45}.student-enrollment-change-month-section input:focus{border-color:var(--brand);box-shadow:0 0 0 3px var(--focus)}.student-enrollment-subject-change-modal .student-enrollment-change-body{gap:18px}.student-enrollment-change-month-section.is-subject-change{display:block;padding:0;border:0;background:transparent}.student-enrollment-change-month-section.is-subject-change label{max-width:280px}.student-enrollment-subject-change-modal .student-enrollment-change-subject-section{padding:0;border:0}.student-enrollment-change-subject-section{display:grid;gap:13px;padding:15px 16px 16px;border:1px solid var(--line);border-radius:10px;background:var(--surface)}.student-enrollment-change-subject-section>header{display:grid;grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);align-items:center;gap:12px;padding:11px 12px;border-radius:8px;background:var(--surface-subtle)}.student-enrollment-change-subject-section>header>div{min-width:0}.student-enrollment-change-subject-section>header strong{display:block;margin-top:3px;overflow-wrap:anywhere;color:var(--text);font-size:13px;line-height:1.4}.student-enrollment-change-subject-section>header>svg{width:16px;height:16px;color:var(--brand)}.student-enrollment-change-subject-heading{display:flex;align-items:center;justify-content:space-between;gap:16px}.student-enrollment-change-subject-heading>h3{margin:0;color:var(--text);font-size:13px;line-height:1.35}.student-enrollment-change-scope{display:grid;grid-template-columns:repeat(3,minmax(72px,1fr));gap:6px}.student-enrollment-change-scope button{min-height:38px;padding:0 14px;border:1px solid var(--line-strong);border-radius:8px;background:var(--surface);color:var(--text-secondary);font:inherit;font-size:11px;font-weight:700;cursor:pointer}.student-enrollment-change-scope button.is-active{border-color:var(--brand);background:var(--brand-soft);color:var(--brand-strong);box-shadow:inset 0 0 0 1px #4d43ca1f}.student-enrollment-change-scope button:focus-visible,.student-enrollment-change-subjects label:has(input:focus-visible){outline:3px solid var(--focus);outline-offset:2px}.student-enrollment-change-subjects{display:grid;gap:8px;min-width:0;margin:0;padding:0;border:0}.student-enrollment-change-subjects legend{padding:0;color:var(--text-secondary);font-size:11px;font-weight:700}.student-enrollment-change-subjects>div{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:7px}.student-enrollment-change-subjects label{display:flex;min-height:40px;align-items:center;justify-content:center;gap:7px;padding:6px 10px;border:1px solid var(--line);border-radius:8px;background:var(--surface);color:var(--text-secondary);font-size:11px;font-weight:600;cursor:pointer}.student-enrollment-change-subjects label.is-checked{border-color:#bbb6ff;background:var(--brand-soft);color:var(--brand-strong)}.student-enrollment-change-subjects input{accent-color:var(--brand)}.student-enrollment-change-all-subjects{margin:0;padding:10px 12px;border-radius:8px;background:var(--surface-subtle);color:var(--text-secondary);font-size:11px}.student-enrollment-change-loading{display:flex;min-height:70px;align-items:center;justify-content:center;gap:8px;color:var(--muted);font-size:10px}.student-enrollment-change-loading svg{width:15px;height:15px}.student-enrollment-change-body>.new-student-enrollment-item{border-color:var(--line);border-radius:8px;box-shadow:none}.student-enrollment-change-fee-check{display:grid;gap:11px;padding:14px 16px;border:1px solid var(--line);border-left:3px solid var(--brand);border-radius:10px;background:#faf9ff}.student-enrollment-change-fee-check.is-unchanged{border-left-color:var(--success);background:#f6fbf8}.student-enrollment-change-fee-check.has-blocker{border-color:#e9c58f;border-left-color:var(--warning);background:#fffaf2}.student-enrollment-change-fee-check>header,.student-enrollment-change-modifiers>div,.student-enrollment-change-modifiers article{display:flex;align-items:center;justify-content:space-between;gap:12px}.student-enrollment-change-fee-state{display:inline-flex;min-height:28px;align-items:center;gap:5px;padding:0 9px;border:1px solid var(--line);border-radius:7px;background:var(--surface);color:var(--text-secondary);font-size:10px;font-weight:750;white-space:nowrap}.student-enrollment-change-fee-state svg{width:13px;height:13px}.student-enrollment-change-fee-grid{display:grid;grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);align-items:center;gap:10px}.student-enrollment-change-fee-grid article{display:grid;gap:3px;min-width:0;padding:10px 12px;border:1px solid var(--line);border-radius:8px;background:var(--surface)}.student-enrollment-change-fee-grid article span{color:var(--muted);font-size:10px}.student-enrollment-change-fee-grid article strong{color:var(--text);font-size:14px;line-height:1.35}.student-enrollment-change-fee-grid>svg{width:16px;height:16px;color:var(--brand)}.student-enrollment-change-fee-note{margin:0;color:var(--text-secondary);font-size:10px;line-height:1.5}.student-enrollment-change-pricing-error{display:flex;align-items:flex-start;gap:7px;padding:9px 10px;border:1px solid var(--danger-border, #f0b9b9);border-radius:7px;background:var(--danger-soft);color:var(--danger-text, #9c2e2e);font-size:10px;line-height:1.5}.student-enrollment-change-pricing-error svg{width:15px;height:15px;flex:0 0 auto;margin-top:1px}.student-enrollment-change-later-months{display:grid;gap:3px;padding:9px 10px;border:1px solid #ead5b6;border-radius:7px;background:var(--surface)}.student-enrollment-change-later-months span,.student-enrollment-change-later-months small{color:var(--muted);font-size:9px;line-height:1.45}.student-enrollment-change-later-months strong{color:var(--text);font-size:11px}.student-enrollment-change-modifiers{display:grid;gap:6px;padding-top:9px;border-top:1px solid var(--line)}.student-enrollment-change-modifiers>div strong,.student-enrollment-change-modifiers>div span{font-size:10px}.student-enrollment-change-modifiers>div span{color:var(--muted)}.student-enrollment-change-modifiers article{min-height:36px;padding:7px 9px;border:1px solid var(--line);border-radius:7px;background:var(--surface);font-size:10px}.student-enrollment-change-modifiers article>span{min-width:0;color:var(--text-secondary)}.student-enrollment-change-modifiers article>strong{margin-left:auto;white-space:nowrap}.student-enrollment-change-modifiers article>small{min-width:96px;color:var(--warning-strong, #8b5c13);font-size:9px;font-weight:700;text-align:right}.student-enrollment-change-modifiers article>small.is-automatic{color:var(--success)}.student-enrollment-change-blockers{display:grid;gap:8px;padding-top:10px;border-top:1px solid #ead5b6}.student-enrollment-change-blockers>div{display:flex;align-items:center;gap:7px;color:var(--warning-strong, #8b5c13);font-size:11px}.student-enrollment-change-blockers>div svg,.student-enrollment-change-billing-link svg{width:15px;height:15px}.student-enrollment-change-blockers ul{display:grid;gap:4px;margin:0;padding-left:18px;color:var(--text-secondary);font-size:10px;line-height:1.5}.student-enrollment-change-billing-link{width:fit-content;min-height:38px;border-radius:8px;text-decoration:none}.student-enrollment-change-blocker-actions{display:flex;flex-wrap:wrap;gap:8px}.student-enrollment-change-blocker-actions .secondary-button{min-height:38px;border-radius:8px;font-size:10px}.student-enrollment-change-modal .student-profile-edit-error .secondary-button{width:fit-content;min-height:36px;margin-top:4px;border-radius:8px;font-size:10px}.student-enrollment-change-review{display:grid;gap:14px}.student-enrollment-change-review h3:focus-visible{outline:3px solid var(--focus);outline-offset:3px}.student-enrollment-change-impact{display:grid;gap:11px;padding:14px 16px;border:1px solid #d8d5f3;border-left:3px solid var(--brand);border-radius:10px;background:#f8f7ff}.student-enrollment-change-impact h3{margin:0;color:var(--text);font-size:14px}.student-enrollment-change-impact>div{display:grid;grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);align-items:center;gap:10px}.student-enrollment-change-impact article{display:grid;gap:2px;min-width:0;padding:10px 12px;border:1px solid var(--line);border-radius:8px;background:var(--surface)}.student-enrollment-change-impact article span,.student-enrollment-change-impact article small{color:var(--muted);font-size:10px}.student-enrollment-change-impact article strong{overflow-wrap:anywhere;color:var(--text);font-size:13px}.student-enrollment-change-impact>div>svg{width:15px;height:15px;color:var(--brand)}.student-enrollment-change-impact ul{display:grid;gap:4px;margin:0;padding-left:17px;color:var(--text-secondary);font-size:10px;line-height:1.5}.student-enrollment-change-actions{display:flex;flex:0 0 auto;align-items:center;justify-content:flex-end;gap:8px;padding:12px 22px max(12px,env(safe-area-inset-bottom));border-top:1px solid var(--line);background:#fffffffa;box-shadow:0 -8px 20px #2524220d}.student-enrollment-change-actions .primary-button,.student-enrollment-change-actions .secondary-button{min-height:42px;border-radius:8px}.student-enrollment-change-actions .student-enrollment-change-back{margin-right:auto}.student-enrollment-change-actions svg{width:14px;height:14px}.student-detail-row-title{display:flex;align-items:center;gap:7px}.student-detail-row-title .status-badge{min-height:20px;padding:2px 5px;font-size:9px}.student-note-row{padding:10px 0;border-bottom:1px solid var(--line)}.student-note-row:first-child{padding-top:0}.student-note-row:last-child{padding-bottom:0;border-bottom:0}.student-note-row>div{display:flex;align-items:center;justify-content:space-between;gap:10px}.student-note-row strong{color:var(--text);font-size:10px}.student-note-row time{color:var(--muted);font-size:9px}.student-note-row p,.student-detail-empty{margin:5px 0 0;color:var(--text-secondary);font-size:10px;line-height:1.55;white-space:pre-wrap}.student-detail-empty{margin:0;color:var(--muted)}.new-student-page{min-width:0;max-width:100%;overflow-x:clip}.new-student-page .page-scaffold{overflow:visible}.new-student-page .page-heading,.new-student-page .new-student-stepper,.new-student-page .new-student-flow-actions,.new-student-page .new-student-submit-error{background:var(--surface)}.new-student-page .page-content{background:var(--canvas)}.new-student-entry-switch{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;padding:10px 12px;border-bottom:1px solid var(--line);background:var(--surface)}.new-student-entry-switch>a,.new-student-entry-switch>span{display:grid;min-height:52px;padding:8px 10px;align-content:center;gap:2px;border:1px solid var(--line);border-radius:7px;background:var(--surface);color:var(--text);text-decoration:none}.new-student-entry-switch>a:hover,.new-student-entry-switch>a:focus-visible,.new-student-entry-switch>.is-active{border-color:var(--brand);background:var(--brand-soft);color:var(--brand-strong)}.new-student-entry-switch strong,.new-student-entry-switch small{display:block}.new-student-entry-switch small{color:var(--muted);font-size:9px}.new-student-lead-candidate-picker{display:grid;width:min(720px,calc(100% - 24px));margin:12px auto 0;padding:10px;gap:8px;border:1px solid var(--line);border-radius:9px;background:var(--surface)}.new-student-lead-candidate-picker>header{display:flex;align-items:flex-start;justify-content:space-between;gap:10px}.new-student-lead-candidate-picker h2,.new-student-lead-candidate-picker p{margin:0}.new-student-lead-candidate-picker h2{font-size:12px}.new-student-lead-candidate-picker header p,.new-student-lead-candidate-picker header>span{color:var(--muted);font-size:9px}.new-student-lead-candidate-options{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:7px}.new-student-lead-candidate-options label{display:flex;min-width:0;align-items:center;gap:7px;padding:7px 8px;border:1px solid var(--line);border-radius:7px;cursor:pointer}.new-student-lead-candidate-options label.is-selected{border-color:var(--brand);background:var(--brand-soft)}.new-student-lead-candidate-options label>span{min-width:0}.new-student-lead-candidate-options strong,.new-student-lead-candidate-options small{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.new-student-lead-candidate-options strong{font-size:10px}.new-student-lead-candidate-options small{margin-top:2px;color:var(--muted);font-size:8px}.new-student-lead-candidate-required{color:var(--danger);font-size:9px}.new-student-flow,.new-student-workspace,.new-student-workspace-main,.new-student-main-form,.new-student-step-section{width:100%;min-width:0;max-width:100%}.new-student-page .page-actions svg,.new-student-page .primary-button svg,.new-student-page .secondary-button svg,.new-student-page .status-badge svg{width:15px;height:15px}.new-student-page .page-actions a{text-decoration:none}.new-student-success{width:min(760px,calc(100% - 40px));margin:28px auto;overflow:hidden;border:1px solid var(--line);border-radius:10px;background:var(--surface);box-shadow:0 12px 28px #25242214}.new-student-success>header{display:flex;align-items:flex-start;gap:12px;padding:22px;border-bottom:1px solid var(--line)}.new-student-success>header>span{display:grid;flex:0 0 auto;width:38px;height:38px;place-items:center;border-radius:50%;background:var(--success-soft);color:var(--success)}.new-student-success>header svg{width:21px;height:21px}.new-student-success h2,.new-student-success p{margin:0}.new-student-success h2{color:var(--text);font-size:18px}.new-student-success>header p{margin-top:5px;color:var(--text-secondary);font-size:11px;line-height:1.6}.new-student-success-summary{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));border-bottom:1px solid var(--line)}.new-student-success-summary>div{display:grid;gap:4px;min-width:0;padding:14px 18px;border-right:1px solid var(--line)}.new-student-success-summary>div:last-child{border-right:0}.new-student-success-summary span{color:var(--muted);font-size:9px}.new-student-success-summary strong{color:var(--text);font-size:13px}.new-student-success-invoices{padding:8px 18px;border-bottom:1px solid var(--line)}.new-student-success-invoices article{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:10px 0;border-bottom:1px solid var(--line)}.new-student-success-invoices article:last-child{border-bottom:0}.new-student-success-invoices article>div{display:grid;gap:2px}.new-student-success-invoices strong,.new-student-success-invoices b{color:var(--text);font-size:11px}.new-student-success-invoices span{color:var(--muted);font-size:9px}.new-student-success-actions{display:flex;justify-content:flex-end;gap:8px;padding:16px 18px}.new-student-success-actions a{text-decoration:none}.new-student-success-permission{display:flex;align-items:flex-start;gap:6px;padding:0 18px 16px;color:var(--muted);font-size:9px;line-height:1.5}.new-student-success-permission svg{flex:0 0 auto;width:13px;height:13px}.new-student-stepper{min-width:0;padding:0 20px;overflow:hidden;border-bottom:1px solid var(--line)}.new-student-stepper ol{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));min-width:0;max-width:760px;margin:0 auto;padding:0;list-style:none}.new-student-stepper li{position:relative}.new-student-stepper li:after{position:absolute;right:calc(-50% + 19px);bottom:27px;left:calc(50% + 19px);height:1px;background:var(--line);content:""}.new-student-stepper li:last-child:after{display:none}.new-student-stepper button{position:relative;z-index:1;display:flex;width:100%;min-height:64px;align-items:center;justify-content:center;gap:7px;padding:8px;border:0;border-bottom:2px solid transparent;background:var(--surface);color:var(--muted);font-size:10px;text-decoration:none;cursor:pointer}.new-student-stepper button>span{display:grid;width:24px;height:24px;place-items:center;border:1px solid var(--line-strong);border-radius:50%;background:var(--surface)}.new-student-stepper button svg{width:12px;height:12px}.new-student-stepper button b{font-weight:700;white-space:nowrap}.new-student-stepper button:hover:not(:disabled),.new-student-stepper button:focus-visible,.new-student-stepper button[aria-current=step]{border-bottom-color:var(--brand);color:var(--brand-strong)}.new-student-stepper button:hover:not(:disabled)>span,.new-student-stepper button:focus-visible>span,.new-student-stepper button[aria-current=step]>span{border-color:var(--brand);background:var(--brand-soft)}.new-student-stepper li.is-complete button{color:var(--success)}.new-student-stepper li.is-complete button>span{border-color:var(--success);background:var(--success-soft)}.new-student-stepper button:disabled{cursor:default;opacity:.55}.new-student-reference-warning{display:flex;align-items:flex-start;gap:9px;padding:10px 20px;border-bottom:1px solid #fde68a;background:var(--warning-soft);color:var(--warning)}.new-student-reference-warning>svg{width:17px;height:17px;flex:0 0 auto;margin-top:1px}.new-student-reference-warning strong{display:block;color:var(--text);font-size:10px}.new-student-reference-warning p{margin:2px 0 0;font-size:9px;line-height:1.45}.new-student-workspace{--new-student-review-width: clamp(300px, 22vw, 352px);display:grid;grid-template-columns:minmax(0,1fr) var(--new-student-review-width);gap:16px;align-items:start;min-width:0;padding:16px;background:var(--canvas)}.new-student-flow[data-current-step="3"] .new-student-workspace{grid-template-columns:minmax(0,1fr)}.new-student-workspace-main{min-width:0;overflow:hidden;border:1px solid var(--line);border-radius:10px;background:var(--surface);box-shadow:0 6px 18px #2d261c0f}.new-student-main-form{min-width:0}.new-student-step-section{min-width:0;padding:20px;scroll-margin-top:84px}.new-student-step-section[hidden]{display:none}.new-student-step-section:focus{outline:0}.new-student-step-section+.new-student-step-section{border-top:1px solid var(--line)}.new-student-subsection-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;margin:24px 0 14px;padding-top:20px;border-top:1px solid var(--line)}.new-student-subsection-heading h3{margin:0;color:var(--text);font-size:13px}.new-student-subsection-heading p{margin:3px 0 0;color:var(--muted);font-size:9px;line-height:1.5}.new-student-subsection-heading>div{min-width:0}.new-student-subsection-action{flex:0 0 auto;margin-left:auto;white-space:nowrap}.new-student-section-heading{display:flex;align-items:flex-start;gap:10px;margin-bottom:18px}.new-student-section-heading>span{display:grid;flex:0 0 auto;width:27px;height:27px;place-items:center;border-radius:6px;background:var(--brand-soft);color:var(--brand-strong);font-size:11px;font-weight:800}.new-student-section-heading>div{min-width:0}.new-student-section-heading h2{margin:0;color:var(--text);font-size:15px;line-height:1.35;letter-spacing:0}.new-student-section-heading p{margin:3px 0 0;color:var(--muted);font-size:10px;line-height:1.5}.new-student-form-block{min-width:0;padding:16px 0;border-top:1px solid var(--line)}.new-student-form-block:first-of-type{padding-top:0;border-top:0}.new-student-form-block>h3,.new-student-pickup-block>h3{margin:0 0 11px;color:var(--text);font-size:11px;line-height:1.3}.new-student-unified-note-block{display:grid;gap:8px;padding-top:14px;padding-bottom:14px}.new-student-unified-note-heading{display:flex;min-width:0;align-items:baseline;justify-content:space-between;gap:12px}.new-student-unified-note-heading h3{display:inline-flex;align-items:baseline;gap:6px;margin:0;color:var(--text);font-size:11px}.new-student-unified-note-heading h3 span,.new-student-unified-note-heading small{color:var(--muted);font-size:9px;font-weight:500}.new-student-unified-note-block .new-student-field textarea{min-height:64px;max-height:116px}.new-student-compact-allergy{display:grid;grid-template-columns:minmax(220px,.72fr) minmax(0,1.28fr);align-items:end;gap:12px;min-width:0;margin-top:16px;padding-top:15px;border-top:1px solid var(--line)}.new-student-allergy-question{min-width:0;margin:0;padding:0;border:0}.new-student-allergy-question legend{margin-bottom:7px;color:var(--text);font-size:10px;font-weight:700;line-height:1.35}.new-student-allergy-question legend>span{color:var(--danger)}.new-student-allergy-answer-row{display:flex;align-items:center;min-width:0}.new-student-allergy-options{display:inline-flex;align-items:center;flex:0 0 auto;gap:22px}.new-student-allergy-options label{display:inline-flex;align-items:center;gap:7px;min-height:28px;color:var(--text);font-size:10px;font-weight:700;cursor:pointer}.new-student-allergy-options label:hover{color:var(--brand-strong)}.new-student-allergy-options input{width:14px;height:14px;margin:0;accent-color:var(--brand)}.new-student-allergy-options label:focus-within{outline:3px solid var(--focus);outline-offset:3px}.new-student-allergy-detail{min-width:0}.new-student-deferred-modifiers{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:start;gap:8px 10px;margin-bottom:4px;padding:10px 12px;border:1px solid #d8d5f3;border-radius:7px;background:#f8f7ff;color:var(--text)}.new-student-deferred-modifiers>svg{width:17px;height:17px;margin-top:1px;color:var(--brand-strong)}.new-student-deferred-modifiers strong{display:block;font-size:11px;line-height:1.35}.new-student-deferred-modifiers p{margin:3px 0 0;color:var(--muted);font-size:10px;line-height:1.5}.new-student-deferred-modifiers>a{display:inline-flex;align-items:center;gap:4px;color:var(--brand-strong);font-size:10px;font-weight:700;line-height:1.4;text-decoration:none;white-space:nowrap}.new-student-deferred-modifiers>a:hover{text-decoration:underline}.new-student-deferred-modifiers>a svg{width:13px;height:13px}.new-student-form-grid{display:grid;gap:11px 12px;min-width:0}.new-student-grid-2{grid-template-columns:repeat(2,minmax(0,1fr))}.new-student-grid-3{grid-template-columns:repeat(3,minmax(0,1fr))}.new-student-arrangement-row+.new-student-arrangement-row{margin-top:12px}.new-student-field{display:grid;align-content:start;gap:5px;min-width:0}.new-student-field-wide{grid-column:1 / -1}.new-student-field>label,.new-student-inline-fieldset>legend,.new-student-subject-fieldset>legend{color:var(--text-secondary);font-size:10px;font-weight:700;line-height:1.35}.new-student-field>label>span{color:var(--muted);font-size:9px;font-weight:500}.new-student-field>label>span[aria-hidden=true],.new-student-subject-fieldset>legend span,.new-student-field label span[aria-hidden=true]{color:var(--danger)}.new-student-field input,.new-student-field select,.new-student-field textarea{width:100%;min-width:0;border:1px solid var(--line-strong);border-radius:6px;outline:0;background:var(--surface);color:var(--text);font:inherit;font-size:11px;letter-spacing:0}.new-student-field input,.new-student-field select{height:38px;padding:0 9px}.new-student-field select{padding-right:28px}.new-student-select-control{position:relative;display:grid;width:100%;min-width:0;max-width:100%}.new-student-select-control>select{padding-right:36px;-webkit-appearance:none;-moz-appearance:none;appearance:none}.new-student-select-control>svg{position:absolute;top:50%;right:11px;width:15px;height:15px;color:var(--text-secondary);pointer-events:none;transform:translateY(-50%)}.new-student-select-control:has(select:disabled)>svg{opacity:.62}.new-student-date-control{position:relative;display:grid;width:100%;min-width:0;max-width:100%}.new-student-date-control>input{display:block;width:100%;min-width:0;min-height:38px;max-width:100%;padding:0 38px;line-height:36px;text-align:center;-webkit-appearance:none;-moz-appearance:none;appearance:none}.new-student-date-control>svg{position:absolute;top:50%;right:11px;z-index:1;width:16px;height:16px;color:var(--text-secondary);pointer-events:none;transform:translateY(-50%)}.new-student-date-control>input::-webkit-calendar-picker-indicator{position:absolute;top:0;right:0;width:38px;height:100%;margin:0;padding:0;opacity:0;cursor:pointer}.new-student-date-control>input::-webkit-date-and-time-value{display:flex;width:100%;height:36px;min-width:0;min-height:36px;align-items:center;justify-content:center;margin:0;padding:0;line-height:36px;text-align:center}.new-student-date-control>input::-webkit-datetime-edit{display:flex;width:100%;height:36px;min-height:36px;align-items:center;justify-content:center;margin:0;padding:0;line-height:36px}.new-student-readonly-control{display:flex;align-items:center;width:100%;min-width:0;height:38px;padding:0 9px;overflow:hidden;border:1px solid var(--line);border-radius:6px;background:var(--surface-subtle);color:var(--text-secondary);font-size:11px;text-overflow:ellipsis;white-space:nowrap}.new-student-field textarea{min-height:84px;padding:9px;line-height:1.5;resize:vertical}.new-student-field input:focus,.new-student-field select:focus,.new-student-field textarea:focus{border-color:var(--brand);box-shadow:0 0 0 3px var(--focus)}.new-student-field input[aria-invalid=true],.new-student-field select[aria-invalid=true],.new-student-field textarea[aria-invalid=true],.new-student-subject-fieldset[aria-invalid=true]{border-color:#ef9a9a}.new-student-field-error{color:var(--danger);font-size:9px;line-height:1.4}.new-student-field-help{color:var(--muted);font-size:9px;line-height:1.4}.new-student-field-help.is-warning{color:var(--warning)}.school-combobox{position:relative;z-index:6;min-width:0}.school-combobox-control{display:flex;align-items:center;width:100%;min-width:0;height:38px;padding:0 7px 0 9px;border:1px solid var(--line-strong);border-radius:6px;background:var(--surface)}.school-combobox-control.is-open,.school-combobox-control:focus-within{border-color:var(--brand);box-shadow:0 0 0 3px var(--focus)}.school-combobox-control.is-disabled{cursor:not-allowed;opacity:.62}.school-combobox-control:has(input[aria-invalid=true]){border-color:#ef9a9a}.school-combobox-control>svg{flex:0 0 auto;width:14px;height:14px;color:var(--muted)}.school-combobox-control input{flex:1 1 auto;width:100%;min-width:0;height:36px;padding:0 7px;border:0;outline:0;box-shadow:none;background:transparent}.school-combobox-control input:focus{border:0;box-shadow:none}.school-combobox-clear{display:grid;flex:0 0 auto;width:26px;height:26px;padding:0;place-items:center;border:0;border-radius:5px;background:transparent;color:var(--muted)}.school-combobox-clear:hover{background:var(--surface-subtle);color:var(--text)}.school-combobox-clear svg{width:13px;height:13px}.school-combobox-list{position:absolute;top:calc(100% + 5px);left:0;z-index:60;width:max(100%,330px);max-height:330px;padding:4px;overflow-y:auto;overscroll-behavior:contain;border:1px solid var(--line-strong);border-radius:7px;background:var(--surface);box-shadow:0 16px 36px #25242226;scrollbar-width:thin}.school-combobox-option{display:grid;grid-template-columns:minmax(0,1fr) 15px;align-items:center;gap:8px;width:100%;min-width:0;min-height:40px;padding:4px 8px;border:0;border-radius:5px;background:transparent;color:var(--text-secondary);text-align:left}.school-combobox-option+.school-combobox-option{border-top:1px solid var(--line)}.school-combobox-option:hover,.school-combobox-option.is-active{background:var(--brand-soft)}.school-combobox-option strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:var(--text);font-size:11px}.school-combobox-option>svg{width:14px;height:14px;color:var(--brand)}.school-combobox-empty{display:grid;justify-items:center;gap:4px;padding:25px 12px;color:var(--muted);text-align:center}.school-combobox-empty svg{width:22px;height:22px;color:var(--brand)}.school-combobox-empty strong{color:var(--text);font-size:11px}.school-combobox-empty span{font-size:9px}.new-student-check-row{display:flex;align-items:center;gap:9px;min-width:0;min-height:50px;padding:8px 10px;border:1px solid var(--line);border-radius:6px;background:var(--surface);color:var(--text-secondary);cursor:pointer}.new-student-check-row>input{flex:0 0 auto;width:15px;height:15px;accent-color:var(--brand)}.new-student-check-row>svg{flex:0 0 auto;width:16px;height:16px;color:var(--brand)}.new-student-check-row>span{display:grid;min-width:0;gap:2px}.new-student-check-row strong{color:var(--text);font-size:10px}.new-student-check-row small{color:var(--muted);font-size:9px;line-height:1.35}.new-student-important-check{align-self:end}.new-student-optional-section{border-top:1px solid var(--line)}.new-student-optional-section summary{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:14px 0;color:var(--text-secondary);cursor:pointer;font-size:11px;font-weight:700;list-style:none}.new-student-optional-section summary::-webkit-details-marker{display:none}.new-student-optional-section summary::marker{content:""}.new-student-optional-hint{display:inline-flex;align-items:center;gap:7px}.new-student-optional-section summary small{color:var(--muted);font-size:9px;font-weight:500}.new-student-optional-hint>svg{width:15px;height:15px;color:var(--text-secondary);transition:transform .16s ease}.new-student-optional-section[open] .new-student-optional-hint>svg{transform:rotate(180deg)}.new-student-optional-section[open]>.new-student-form-grid{padding:2px 0 16px}.new-student-guardian-list,.new-student-enrollment-list{display:grid;gap:12px;min-width:0}.new-student-guardian,.new-student-enrollment-item{min-width:0;overflow:hidden;border:1px solid var(--line);border-radius:7px;background:var(--surface)}.new-student-enrollment-item.is-enrollment{overflow:visible;border:0;border-radius:0;background:transparent}.new-student-enrollment-list>.new-student-enrollment-item.is-enrollment+.new-student-enrollment-item.is-enrollment{padding-top:16px;border-top:1px solid var(--line)}.new-student-guardian.is-primary{border-left:3px solid var(--brand)}.new-student-guardian>header,.new-student-enrollment-header{display:flex;align-items:center;justify-content:space-between;gap:10px;min-height:47px;padding:7px 10px;border-bottom:1px solid var(--line);background:#fcfbfa}.new-student-guardian>header>div,.new-student-enrollment-header>div{display:flex;align-items:center;gap:7px;min-width:0}.new-student-guardian>header>div:first-child>span,.new-student-enrollment-header>div>span{display:grid;flex:0 0 auto;width:23px;height:23px;place-items:center;border-radius:5px;background:var(--brand-soft);color:var(--brand-strong);font-size:9px;font-weight:800}.new-student-guardian h3,.new-student-enrollment-header h3{margin:0;color:var(--text);font-size:11px;line-height:1.3}.new-student-enrollment-item.is-enrollment>.new-student-enrollment-header{min-height:52px;padding:0 0 8px;border:0;border-radius:0;background:transparent}.new-student-enrollment-item.is-enrollment>.new-student-enrollment-header .new-student-enrollment-heading>span{width:27px;height:27px;border-radius:50%;font-size:11px}.new-student-enrollment-item.is-enrollment>.new-student-enrollment-header h3{font-size:13px;font-weight:800}.new-student-enrollment-heading,.new-student-enrollment-header-actions{display:flex;min-width:0;align-items:center}.new-student-enrollment-heading{gap:8px}.new-student-enrollment-header-actions{justify-content:flex-end;gap:8px}.new-student-enrollment-remove{flex:0 0 auto}.new-student-guardian .status-badge{min-height:20px;padding:2px 5px;font-size:8px}.new-student-primary-radio{display:inline-flex;align-items:center;gap:5px;color:var(--text-secondary);font-size:9px;font-weight:700;cursor:pointer}.new-student-primary-radio input{width:14px;height:14px;accent-color:var(--brand)}.new-student-guardian>.new-student-form-grid{padding:12px}.new-student-guardian-flags{display:flex;flex-wrap:wrap;gap:12px;padding:9px 12px;border-top:1px solid var(--line)}.new-student-guardian-flags label{display:inline-flex;align-items:center;gap:5px;color:var(--text-secondary);font-size:9px;cursor:pointer}.new-student-guardian-flags input{width:14px;height:14px;accent-color:var(--brand)}.new-student-add-enrollment{flex:0 0 auto}.new-student-enrollment-toolbar,.new-student-charge-period-toolbar{display:flex;align-items:center;justify-content:space-between;gap:12px;min-width:0}.new-student-enrollment-toolbar{margin-bottom:12px;padding:2px 0 9px}.new-student-enrollment-toolbar>div,.new-student-charge-period-toolbar>div{min-width:0}.new-student-enrollment-toolbar-title{display:flex;align-items:center;gap:9px}.new-student-enrollment-toolbar h3,.new-student-charge-period-toolbar h4{margin:0;color:var(--text);font-size:11px;line-height:1.3}.new-student-enrollment-toolbar p{margin:3px 0 0;color:var(--muted);font-size:8px;line-height:1.45}.new-student-charge-period-toolbar{padding:8px 0 3px}.new-student-charge-period-toolbar>div{display:flex;align-items:baseline;gap:7px}.new-student-charge-period-toolbar span{color:var(--muted);font-size:8px}.new-student-compact-add-button{width:auto;min-width:0;min-height:36px;padding:0 14px;border-radius:8px}.new-student-compact-add-button>svg{width:15px;height:15px}.new-student-pickup-block{margin-top:17px}.new-student-enrollment-body{display:grid;gap:12px;min-width:0;padding:9px 0 0}.new-student-charge-period-list{display:grid;gap:9px;min-width:0}.new-student-charge-period{--new-student-charge-control-radius: 8px;min-width:0;overflow:hidden;border:1px solid var(--line);border-radius:8px;background:var(--surface)}.new-student-charge-period.is-collapsed{background:var(--surface-subtle)}.new-student-charge-period-header{display:flex;min-height:35px;align-items:center;justify-content:space-between;gap:8px;padding:9px 10px;border-bottom:0;background:transparent}.new-student-charge-period-heading,.new-student-charge-period-actions{display:flex;min-width:0;align-items:center;gap:6px}.new-student-charge-period-heading>svg{flex:0 0 auto;width:15px;height:15px;color:var(--brand-strong)}.new-student-charge-period-header h4{margin:0;color:var(--text-secondary);font-size:10px;font-weight:750;line-height:1.3}.new-student-charge-period-actions{flex:0 0 auto;gap:4px}.new-student-charge-period-toggle svg{width:15px;height:15px}.new-student-charge-period-body{display:grid;gap:9px;min-width:0;padding:10px;border-top:1px solid var(--line)}.new-student-charge-period-body[hidden]{display:none}.new-student-charge-period-summary{display:grid;grid-template-columns:repeat(auto-fit,minmax(110px,1fr));border-top:1px solid var(--line)}.new-student-charge-period-summary>div{min-width:0;padding:8px 10px;border-right:1px solid var(--line)}.new-student-charge-period-summary>div:last-child{border-right:0}.new-student-charge-period-summary span,.new-student-charge-period-summary strong{display:block;overflow-wrap:anywhere}.new-student-charge-period-summary span{color:var(--muted);font-size:8px}.new-student-charge-period-summary strong{margin-top:2px;color:var(--text);font-size:9px;line-height:1.35}.new-student-charge-period-summary>div:last-child strong{color:var(--brand-strong)}.new-student-charge-period-add-error{padding:8px 10px;border:1px solid #f1c6c0;border-radius:7px;background:#fff7f5;color:var(--danger);font-size:9px;line-height:1.45}.new-student-charge-period-grid{display:grid;gap:10px;min-width:0}.new-student-charge-period-primary-row{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));align-items:start;gap:10px;min-width:0}.new-student-service-month-field .new-student-date-control>input{padding-right:38px;padding-left:12px;font-variant-numeric:tabular-nums;text-align:left}.new-student-service-month-field .new-student-date-control>input::-webkit-date-and-time-value,.new-student-service-month-field .new-student-date-control>input::-webkit-datetime-edit{justify-content:flex-start;text-align:left}.new-student-charge-period-coverage-row{display:grid;grid-template-columns:repeat(2,minmax(180px,260px));align-items:start;justify-content:start;gap:10px;min-width:0;padding-top:9px;border-top:1px solid var(--line)}.new-student-charge-period-coverage-row.is-half_month{grid-template-columns:minmax(200px,300px)}:is(.new-student-charge-period-primary-row,.new-student-charge-period-coverage-row) :is(input,select){border-radius:var(--new-student-charge-control-radius)}.new-student-pricing-grade-field.is-projected_promotion>select{border-color:#a5b4fc;background:var(--brand-soft)}.new-student-pricing-grade-field.is-manual_override>select{border-color:var(--brand)}.new-student-pricing-grade-field.is-academic_outcome>select{border-color:#f1c6c0;background:#fff7f5}.new-student-pricing-grade-restore{display:inline-flex;justify-self:start;min-height:24px;align-items:center;justify-content:center;gap:4px;margin-top:4px;padding:0 8px;border:1px solid var(--line-strong);border-radius:var(--new-student-charge-control-radius);background:var(--surface);color:var(--brand-strong);font-size:8px;font-weight:750;white-space:nowrap}.new-student-pricing-grade-restore:hover{border-color:#a5b4fc;background:var(--brand-soft)}.new-student-pricing-grade-restore:focus-visible{outline:2px solid var(--brand);outline-offset:2px}.new-student-pricing-grade-restore svg{width:12px;height:12px}.new-student-period-modifiers{min-width:0;margin-top:2px;padding-top:10px;border-top:1px solid var(--line)}.new-student-period-modifiers__heading{display:flex;min-width:0;align-items:center;justify-content:space-between;gap:9px 14px}.new-student-period-modifiers__heading h5{flex:0 0 auto;margin:0;color:var(--text-secondary);font-size:9px;font-weight:800;line-height:1.35}.new-student-period-modifiers__heading .new-student-modifier-actions{min-width:0}.new-student-period-modifiers__rows{display:grid;gap:7px;min-width:0;margin-top:10px}.new-student-modifier-row.new-student-modifier-row--scoped{grid-template-columns:minmax(170px,.85fr) minmax(200px,1fr) 40px;gap:8px 10px;padding:10px 14px;border:1px solid var(--line);border-radius:7px;background:var(--surface)}.new-student-modifier-row.new-student-modifier-row--scoped .new-student-modifier-fixed--price{grid-column:2}.new-student-modifier-row.new-student-modifier-row--scoped .new-student-modifier-remove{grid-column:3;justify-self:end}.new-student-modifier-row.new-student-modifier-row--scoped .new-student-modifier-row-error{grid-column:2 / 3}.new-student-service-segment{display:inline-grid;grid-template-columns:repeat(3,minmax(82px,106px));gap:6px;min-width:0}.new-student-enrollment-choice-row{display:grid;min-width:0}.new-student-enrollment-choice-row.has-scope{grid-template-columns:minmax(300px,1fr) minmax(360px,1fr);align-items:center;gap:clamp(20px,4vw,64px)}.new-student-enrollment-choice-row>.new-student-service-segment{width:100%;max-width:440px;grid-template-columns:repeat(3,minmax(82px,1fr));justify-self:start}.new-student-enrollment-choice-row>.new-student-scope-row{width:100%;max-width:480px;grid-template-columns:auto minmax(260px,1fr);justify-self:end}@media(max-width:1056px){.new-student-enrollment-choice-row.has-scope{grid-template-columns:minmax(0,1fr);gap:10px}.new-student-enrollment-choice-row>.new-student-service-segment,.new-student-enrollment-choice-row>.new-student-scope-row{width:100%;max-width:none;justify-self:stretch}}.new-student-service-segment button{display:inline-flex;min-width:0;min-height:44px;align-items:center;justify-content:center;gap:6px;padding:0 12px;border:1px solid var(--line-strong);border-radius:999px;background:var(--surface);color:var(--muted);font-size:10px;font-weight:700;cursor:pointer;transition:border-color .15s ease,background .15s ease,box-shadow .15s ease,color .15s ease}.new-student-service-segment button svg{width:14px;height:14px}.new-student-service-segment button.is-active{border-color:#a5b4fc;background:var(--brand-soft);box-shadow:0 1px 2px #4f46e514;color:var(--brand-strong)}.new-student-service-segment button:hover:not(.is-active){border-color:#c7d2fe;background:#fafaff;color:var(--brand-strong)}.new-student-service-segment button:focus-visible,.new-student-scope-segment button:focus-visible{outline:3px solid rgb(79 70 229 / 20%);outline-offset:2px}.new-student-price-reference{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:8px 10px;padding:10px;border:1px solid #c7d2fe;border-radius:6px;background:var(--brand-soft)}.new-student-plan-warning{padding:10px;border:1px solid #fde68a;border-radius:6px;background:var(--warning-soft);color:var(--warning);font-size:9px;line-height:1.5}.new-student-price-reference>svg{width:18px;height:18px;color:var(--brand-strong)}.new-student-price-reference>div{min-width:0}.new-student-price-reference>div:nth-of-type(1) strong,.new-student-price-reference>div:nth-of-type(1) span,.new-student-price-reference>div:nth-of-type(2) b,.new-student-price-reference>div:nth-of-type(2) small{display:block}.new-student-price-reference strong,.new-student-price-reference b{overflow:hidden;color:var(--brand-strong);font-size:10px;text-overflow:ellipsis;white-space:nowrap}.new-student-price-reference span,.new-student-price-reference small,.new-student-price-reference p{color:#625f75;font-size:8px;line-height:1.4}.new-student-price-reference>div:nth-of-type(2){text-align:right}.new-student-price-reference p{grid-column:2 / -1;margin:0}.new-student-readonly-value{display:grid;min-height:38px;align-content:center;gap:1px;padding:6px 9px;border:1px solid var(--line);border-radius:5px;background:var(--surface-subtle)}.new-student-readonly-value.is-muted{color:var(--muted)}.new-student-readonly-value strong,.new-student-readonly-value small{display:block}.new-student-readonly-value strong{color:var(--brand-strong);font-size:10px}.new-student-readonly-value small{color:var(--text-secondary);font-size:8px}.new-student-service-fields{display:grid;gap:11px;min-width:0;padding-top:1px}.new-student-scope-row{display:grid;grid-template-columns:auto minmax(260px,390px);align-items:center;justify-content:start;gap:12px;min-width:0}.new-student-scope-label{color:var(--text-secondary);font-size:10px;font-weight:750;white-space:nowrap}.new-student-scope-label>span[aria-hidden=true]{color:var(--danger)}.new-student-inline-fieldset,.new-student-subject-fieldset{min-width:0;margin:0;padding:0;border:0}.new-student-inline-fieldset>legend,.new-student-subject-fieldset>legend{margin-bottom:5px}.new-student-inline-fieldset>legend span[aria-hidden=true]{color:var(--danger)}.new-student-choice-segment{display:grid;grid-auto-columns:minmax(0,1fr);grid-auto-flow:column;gap:3px;height:38px;padding:3px;border:1px solid var(--line-strong);border-radius:6px;background:var(--surface)}.new-student-choice-segment button{min-width:0;padding:0 7px;border:1px solid transparent;border-radius:4px;background:transparent;color:var(--muted);font-size:10px;font-weight:700}.new-student-choice-segment button.is-active{border-color:transparent;background:var(--brand-soft);box-shadow:inset 0 0 0 1px #4f46e51f;color:var(--brand-strong)}.new-student-scope-segment{height:auto;gap:7px;padding:0;border:0;border-radius:0;background:transparent}.new-student-scope-segment button{min-height:44px;border-color:var(--line-strong);border-radius:999px;background:var(--surface);cursor:pointer;transition:border-color .15s ease,background .15s ease,box-shadow .15s ease,color .15s ease}.new-student-scope-segment button.is-active{border-color:#a5b4fc;box-shadow:0 1px 2px #4f46e514}.new-student-scope-segment button:hover:not(.is-active){border-color:#c7d2fe;background:#fafaff;color:var(--brand-strong)}.new-student-subject-fieldset{padding:9px 10px 10px;border:1px solid var(--line);border-radius:6px}.new-student-subject-fieldset>legend{padding:0 3px}.new-student-subject-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:5px}.new-student-subject-group-title{margin:0 0 5px;color:var(--muted);font-size:9px;font-weight:700;line-height:1.35}.new-student-subject-more{margin-top:8px;padding-top:7px;border-top:1px solid var(--line)}.new-student-subject-more summary{display:flex;min-height:30px;align-items:center;justify-content:space-between;gap:8px;padding:0 8px;border:1px solid var(--line);border-radius:5px;outline:0;background:var(--surface);color:var(--text-secondary);font-size:9px;font-weight:700;cursor:pointer}.new-student-subject-more summary:focus-visible{border-color:var(--brand);box-shadow:0 0 0 3px var(--focus)}.new-student-subject-more summary:before{content:"+";color:var(--brand);font-size:13px;font-weight:500}.new-student-subject-more[open] summary:before{content:"−"}.new-student-subject-more summary span{flex:1}.new-student-subject-more summary small{color:var(--muted);font-size:8px;font-weight:600}.new-student-subject-more[open] summary{margin-bottom:6px;border-color:#c7d2fe;color:var(--brand-strong)}.new-student-subject-grid label{display:flex;min-width:0;min-height:31px;align-items:center;justify-content:center;gap:5px;padding:0 5px;border:1px solid var(--line);border-radius:5px;background:var(--surface);color:var(--text-secondary);font-size:9px;cursor:pointer}.new-student-subject-grid label.is-checked{border-color:#c7d2fe;background:var(--brand-soft);color:var(--brand-strong);font-weight:700}.new-student-subject-grid input{width:13px;height:13px;margin:0;accent-color:var(--brand)}.new-student-subject-grid input:disabled{opacity:1}.new-student-end-date-field{max-width:260px;padding-top:11px;border-top:1px solid var(--line)}.new-student-invoice-preview{margin-top:18px;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.new-student-invoice-preview>header{display:flex;align-items:center;flex-wrap:wrap;gap:9px;padding:12px 0}.new-student-invoice-preview>header>svg{width:18px;height:18px;color:var(--brand)}.new-student-invoice-preview h3,.new-student-invoice-preview p{margin:0}.new-student-invoice-preview h3{color:var(--text);font-size:11px}.new-student-invoice-preview header p{margin-top:2px;color:var(--muted);font-size:9px}.new-student-invoice-preview__meta{display:flex;align-items:baseline;gap:6px;min-width:0;margin-left:auto;white-space:nowrap}.new-student-invoice-preview__meta strong{color:var(--text);font-size:9px}.new-student-invoice-preview__meta span{color:var(--muted);font-size:8px}.new-student-invoice-preview>p{display:flex;align-items:flex-start;gap:6px;padding:9px 0;border-top:1px solid var(--line);color:var(--muted);font-size:9px;line-height:1.5}.new-student-invoice-preview>p svg{flex:0 0 auto;width:13px;height:13px;margin-top:1px}.new-student-initial-payment{margin-top:14px;padding:14px;border:1px solid #b8dfd0;border-radius:8px;background:#f5fbf8}.new-student-initial-payment>header{display:flex;align-items:flex-start;gap:9px}.new-student-initial-payment>header>svg{flex:0 0 auto;width:18px;height:18px;color:var(--success)}.new-student-initial-payment>header>div{min-width:0}.new-student-initial-payment>header h3{margin:0;color:var(--text);font-size:12px}.new-student-initial-payment>header p{margin:3px 0 0;color:var(--text-secondary);font-size:9px;line-height:1.5}.new-student-initial-payment>header .status-badge{flex:0 0 auto;margin-left:auto}.new-student-initial-payment__arrangement{margin:12px 0 0;padding:0;border:0}.new-student-initial-payment__arrangement legend{margin-bottom:6px;color:var(--text-secondary);font-size:9px;font-weight:800}.new-student-initial-payment__arrangement>div{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:7px}.new-student-initial-payment__arrangement label{display:grid;grid-template-columns:auto minmax(0,1fr);align-items:center;gap:8px;min-width:0;padding:9px 10px;border:1px solid var(--line-strong);border-radius:6px;background:var(--surface);cursor:pointer}.new-student-initial-payment__arrangement label.is-selected{border-color:#9bb4ff;box-shadow:0 0 0 2px #4f46e517;background:var(--brand-soft)}.new-student-initial-payment__arrangement input{width:14px;height:14px;margin:0;accent-color:var(--brand)}.new-student-initial-payment__arrangement strong,.new-student-initial-payment__arrangement small{display:block}.new-student-initial-payment__arrangement strong{color:var(--text);font-size:10px}.new-student-initial-payment__arrangement small{margin-top:2px;color:var(--muted);font-size:8px}.new-student-initial-payment__fields{grid-template-columns:repeat(4,minmax(0,1fr));margin-top:13px}.new-student-initial-payment__note input{min-width:0}.new-student-initial-payment__total{color:var(--success);font-weight:800}.new-student-initial-payment__summary{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));margin-top:12px;border:1px solid #d8e9e2;border-radius:6px;background:var(--surface)}.new-student-initial-payment__summary>span{display:grid;gap:3px;min-width:0;padding:9px 10px;border-right:1px solid var(--line)}.new-student-initial-payment__summary>span:last-child{border-right:0}.new-student-initial-payment__summary small{color:var(--muted);font-size:8px}.new-student-initial-payment__summary strong{color:var(--success);font-size:10px;overflow-wrap:anywhere}.new-student-initial-payment__summary strong.is-balance{color:var(--warning)}.new-student-initial-payment__warning{display:flex;align-items:center;gap:7px;margin-top:10px;padding:8px 9px;border:1px solid #f3c6c6;border-radius:6px;background:#fff7f7;color:var(--danger);font-size:9px;font-weight:700}.new-student-initial-payment__warning svg{width:14px;height:14px}.new-student-initial-payment__allocations{display:grid;gap:5px;margin-top:12px;padding:10px;border:1px solid #d8e9e2;border-radius:6px;background:var(--surface)}.new-student-initial-payment__allocations>strong,.new-student-initial-payment__allocations>small{color:var(--text-secondary);font-size:9px}.new-student-initial-payment__allocations>span{display:flex;align-items:center;justify-content:space-between;gap:12px;padding-top:5px;border-top:1px solid var(--line);font-size:10px}.new-student-initial-payment__allocations em{color:var(--text-secondary);font-style:normal}.new-student-initial-payment__allocations em small{display:block;margin-top:2px;color:var(--muted);font-size:8px}.new-student-initial-payment__allocations b{color:var(--success)}.new-student-initial-payment__allocations label{width:min(132px,48%)}.new-student-initial-payment__allocations label input{width:100%;min-height:32px;padding:6px 8px;text-align:right}.new-student-initial-payment__receipt{display:inline-flex;align-items:center;gap:7px;margin-top:11px;color:var(--text-secondary);font-size:10px;font-weight:700;cursor:pointer}.new-student-initial-payment__receipt input{width:14px;height:14px;accent-color:var(--brand)}@media(max-width:699px){.new-student-initial-payment__arrangement>div,.new-student-initial-payment__summary,.new-student-final-payment>div{grid-template-columns:minmax(0,1fr)}.new-student-initial-payment__summary>span,.new-student-final-payment>div>span{border-right:0;border-bottom:1px solid var(--line)}.new-student-initial-payment__summary>span:last-child,.new-student-final-payment>div>span:last-child{border-bottom:0}}.new-student-quote-state{display:flex;align-items:center;gap:8px;min-height:46px;padding:10px;border-top:1px solid var(--line);color:var(--muted);font-size:10px}.new-student-quote-state svg{flex:0 0 auto;width:15px;height:15px}.new-student-quote-state.is-error{background:#fff7f5;color:var(--danger)}.new-student-quote-section-label{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:9px 0;border-top:1px solid var(--line);color:var(--text);font-size:9px}.new-student-quote-section-label span{color:var(--muted);font-size:8px}.new-student-quote-months{display:grid;gap:10px;padding:0 0 12px}.new-student-quote-month{overflow:hidden;border:1px solid var(--line);border-radius:7px;background:var(--surface)}.new-student-quote-month>header{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:10px 12px;background:var(--surface-subtle);color:var(--text);font-size:10px}.new-student-quote-month>header span{color:var(--brand-strong);font-weight:800}.new-student-quote-items{display:grid}.new-student-quote-item{display:grid;gap:6px;padding:10px 12px;border-top:1px solid var(--line)}.new-student-quote-item>div{display:flex;align-items:baseline;justify-content:space-between;gap:12px;color:var(--text-secondary);font-size:9px}.new-student-quote-item>div:first-child{color:var(--text)}.new-student-quote-item>.new-student-quote-item-heading{align-items:flex-start;flex-direction:column;justify-content:flex-start;gap:2px}.new-student-quote-item-heading small{color:var(--muted);font-size:8px;font-weight:500;line-height:1.45}.new-student-quote-item em{color:var(--muted);font-style:normal;white-space:nowrap}.new-student-quote-item-total{padding-top:6px}.new-student-quote-month-adjustments{display:grid;gap:5px;padding:9px 12px;border-top:1px solid var(--line)}.new-student-quote-month-adjustments>strong{color:var(--text);font-size:9px}.new-student-quote-month-adjustments>div,.new-student-quote-month-total{display:flex;align-items:baseline;justify-content:space-between;gap:12px}.new-student-quote-month-adjustments>div{color:var(--text-secondary);font-size:9px}.new-student-quote-month-adjustments em{color:var(--muted);font-style:normal;white-space:nowrap}.new-student-quote-month-total{padding:9px 12px;border-top:1px solid var(--line);background:var(--surface-subtle);color:var(--text);font-size:9px}.new-student-quote-grand-total{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:12px;border-top:1px solid #c7d2fe;background:var(--brand-soft);color:var(--brand-strong)}.new-student-quote-grand-total>div{display:grid;gap:2px;min-width:0}.new-student-quote-grand-total>div:last-child{justify-items:end}.new-student-quote-grand-total strong{font-size:11px;white-space:nowrap}.new-student-quote-grand-total small{color:var(--muted);font-size:8px;line-height:1.4}@media(max-width:699px){.new-student-quote-month>header,.new-student-quote-item>div{align-items:flex-start;flex-direction:column;gap:3px}.new-student-quote-grand-total{align-items:flex-start;flex-direction:column}.new-student-quote-grand-total>div:last-child{justify-items:start}}.new-student-final-summary{margin:4px 0 16px;overflow:hidden;border:1px solid var(--line);border-radius:7px;background:var(--surface)}.new-student-final-summary>header,.new-student-final-summary__header{display:flex;align-items:center;justify-content:space-between;gap:7px;padding:11px 13px;border-bottom:1px solid var(--line);background:var(--surface-subtle)}.new-student-final-summary__header>div{display:flex;min-width:0;align-items:flex-start;gap:8px}.new-student-final-summary>header svg,.new-student-final-summary__header svg{flex:0 0 auto;width:15px;height:15px;margin-top:1px;color:var(--brand)}.new-student-final-summary h3,.new-student-final-summary h4,.new-student-final-summary p{margin:0}.new-student-final-summary h3{color:var(--text);font-size:11px}.new-student-final-summary__header p{margin-top:2px;color:var(--text-secondary);font-size:8px;line-height:1.45}.new-student-final-summary dl,.new-student-review dl{margin:0}.new-student-final-summary dl{display:block;border:0}.new-student-final-summary__grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr))}.new-student-final-summary__grid>article{min-width:0;padding:11px 13px}.new-student-final-summary__grid>article:nth-child(2n){border-left:1px solid var(--line)}.new-student-final-summary__grid>article:nth-child(n+3){border-top:1px solid var(--line)}.new-student-final-summary h4{margin-bottom:7px;color:var(--text);font-size:9px}.new-student-final-summary article dl>div{display:grid;grid-template-columns:82px minmax(0,1fr);gap:8px;padding:6px 0;border-top:1px solid var(--line)}.new-student-final-summary article dl>div:first-child{border-top:0}.new-student-final-summary dt,.new-student-final-summary dd{margin:0}.new-student-final-summary dt{color:var(--muted);font-size:8px}.new-student-final-summary dd strong,.new-student-final-summary dd small{display:block}.new-student-final-summary dd strong{color:var(--text);font-size:9px}.new-student-final-summary dd small{margin-top:2px;color:var(--text-secondary);font-size:8px;line-height:1.4}.new-student-final-enrollments{padding:11px 13px 13px;border-top:1px solid var(--line)}.new-student-final-note{display:grid;gap:6px;padding:11px 13px 13px;border-top:1px solid var(--line);background:var(--surface-subtle)}.new-student-final-note>header{display:flex;align-items:center;justify-content:space-between;gap:10px}.new-student-final-note h4{margin:0}.new-student-final-note>header>span{display:inline-flex;align-items:center;gap:4px;color:var(--brand-strong);font-size:8px;font-weight:750}.new-student-final-note svg{width:12px;height:12px}.new-student-final-note p{color:var(--text-secondary);font-size:9px;line-height:1.55;white-space:pre-wrap}.new-student-final-enrollments>article{overflow:hidden;margin-top:7px;border:1px solid var(--line);border-radius:5px}.new-student-final-enrollments>article>header{display:flex;align-items:center;justify-content:space-between;gap:9px;padding:7px 9px;background:var(--surface-subtle)}.new-student-final-enrollments>article>header>div{display:flex;align-items:center;gap:6px}.new-student-final-enrollments>article>header span{display:inline-grid;width:20px;height:20px;place-items:center;border-radius:4px;color:var(--brand-strong);background:var(--brand-soft);font-size:8px;font-weight:800}.new-student-final-enrollments>article>header strong{font-size:9px}.new-student-final-enrollments>article>header small{color:var(--text-secondary);font-size:8px;text-align:right}.new-student-final-periods>div{display:grid;grid-template-columns:1.05fr .95fr 1.1fr 1.05fr 1.1fr;gap:0;padding:0;border-top:1px solid var(--line)}.new-student-final-periods>div.is-exception{box-shadow:inset 3px 0 #f59e0b;background:#fffbeb}.new-student-final-periods>div>span,.new-student-final-periods strong,.new-student-final-periods small{display:block;min-width:0}.new-student-final-periods>div>span{padding:8px 9px}.new-student-final-periods>div>span+span{border-left:1px solid var(--line)}.new-student-final-periods strong{overflow-wrap:anywhere;color:var(--text);font-size:8px;line-height:1.4}.new-student-final-periods small{margin-bottom:2px;color:var(--muted);font-size:7px}.new-student-final-periods .new-student-final-period-adjustments{margin:3px 0 0;color:var(--brand-strong);line-height:1.4}.new-student-final-payment{margin:8px;border:1px solid #cbd5e1;border-radius:6px;background:var(--surface-subtle)}.new-student-final-payment>header{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:9px 10px;border-bottom:1px solid var(--line)}.new-student-final-payment>header strong,.new-student-final-payment>header small{display:block}.new-student-final-payment>header strong{color:var(--text);font-size:9px}.new-student-final-payment>header small{margin-top:2px;color:var(--muted);font-size:7px}.new-student-final-payment>div{display:grid;grid-template-columns:repeat(3,minmax(0,1fr))}.new-student-final-payment>div>span{display:grid;gap:3px;min-width:0;padding:9px 10px;border-right:1px solid var(--line)}.new-student-final-payment>div>span:last-child{border-right:0}.new-student-final-payment>div small,.new-student-final-payment>p{color:var(--muted);font-size:7px}.new-student-final-payment>div strong{color:var(--success);font-size:9px;overflow-wrap:anywhere}.new-student-final-payment>div strong.is-balance{color:var(--warning)}.new-student-final-payment>p{margin:0;padding:8px 10px;border-top:1px solid var(--line);line-height:1.5}.new-student-review-column{position:relative;align-self:start;min-width:0;min-height:1px}@keyframes new-student-review-enter{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:translateY(0)}}.new-student-review{position:fixed;top:80px;right:16px;z-index:10;width:var(--new-student-review-width);height:auto;max-height:calc(100vh - 96px);max-height:calc(100dvh - 96px);box-sizing:border-box;min-width:0;overflow-y:auto;background:var(--surface);border:1px solid var(--line);border-radius:10px;box-shadow:0 6px 18px #2d261c0f;scrollbar-width:thin;animation:new-student-review-enter .18s ease-out both}.new-student-review>header{position:sticky;top:0;z-index:3;display:flex;align-items:center;justify-content:space-between;gap:9px;min-height:49px;padding:10px 13px;border-bottom:1px solid var(--line);background:var(--surface)}.new-student-review>header>div{display:flex;align-items:center;gap:7px}.new-student-review>header svg{width:15px;height:15px;color:var(--brand)}.new-student-review h2{margin:0;color:var(--text);font-size:11px;letter-spacing:0}.new-student-review>header>span{color:var(--muted);font-size:9px;font-weight:700}.new-student-review-status{position:sticky;top:49px;z-index:2;display:flex;align-items:center;justify-content:space-between;gap:8px;padding:10px 12px;border-bottom:1px solid var(--line);background:var(--surface);color:var(--muted);font-size:8px}.new-student-review-status strong{color:var(--danger);font-size:9px}.new-student-review-status.is-ready strong{color:var(--success)}.new-student-ocr-source{display:grid;min-height:0;padding:10px;place-items:start center;background:var(--canvas)}.new-student-ocr-source img{display:block;width:100%;max-height:calc(100dvh - 170px);object-fit:contain;border:1px solid var(--line);border-radius:6px;background:var(--surface)}.new-student-source-recovery{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:12px 14px;border-top:1px solid var(--line);background:var(--surface)}.new-student-source-recovery h3,.new-student-source-recovery p{margin:0}.new-student-source-recovery h3{color:var(--text);font-size:11px}.new-student-source-recovery p,.new-student-source-recovery__actions>span{margin-top:3px;color:var(--muted);font-size:9px}.new-student-source-recovery p.is-ready{color:var(--success)}.new-student-source-recovery__actions{display:flex;align-items:center;justify-content:flex-end;flex-wrap:wrap;gap:7px}.new-student-source-recovery__actions>input[type=file]{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);clip-path:inset(50%);white-space:nowrap}.new-student-review-row{display:grid;grid-template-columns:76px minmax(0,1fr);gap:8px;min-width:0;padding:10px 12px;border-bottom:1px solid var(--line)}.new-student-review-row dt,.new-student-review-row dd{min-width:0;margin:0}.new-student-review-row dt{color:var(--muted);font-size:8px;font-weight:700}.new-student-review-row dd{color:var(--text-secondary);font-size:9px;line-height:1.5;overflow-wrap:anywhere}.new-student-review-row dd>strong,.new-student-review-row dd>small,.new-student-review-row dd>span,.new-student-review-row dd>span>strong,.new-student-review-row dd>span>small{display:block}.new-student-review-row dd>strong,.new-student-review-row dd>span>strong{color:var(--text);font-size:10px}.new-student-review-row dd small{margin-top:1px;color:var(--muted);font-size:8px}.new-student-review-row dd>span+span{margin-top:5px;padding-top:5px;border-top:1px solid var(--line)}.new-student-review-output{display:flex;flex-wrap:wrap;gap:4px;padding:11px 12px;border-bottom:1px solid var(--line)}.new-student-review-output span{display:inline-flex;min-height:22px;align-items:center;padding:2px 6px;border:1px solid var(--line);border-radius:4px;color:var(--text-secondary);font-size:8px;font-weight:700}.new-student-review>p{display:flex;align-items:flex-start;gap:6px;margin:0;padding:11px 12px;color:var(--muted);font-size:8px;line-height:1.5}.new-student-review>p svg{flex:0 0 auto;width:12px;height:12px}.new-student-review-quote{display:grid;min-width:0}.new-student-review-student-anchor{display:grid;grid-template-columns:52px minmax(0,1fr);gap:8px;min-width:0;padding:10px 12px;border-bottom:1px solid var(--line)}.new-student-review-student-anchor>span{color:var(--muted);font-size:8px;font-weight:700}.new-student-review-student-anchor strong,.new-student-review-student-anchor small{display:block;overflow-wrap:anywhere}.new-student-review-student-anchor strong{color:var(--text);font-size:10px}.new-student-review-student-anchor small{margin-top:1px;color:var(--muted);font-size:8px}.new-student-review-quote .new-student-quote-state{min-height:64px;padding:13px 12px;border-top:0;border-bottom:1px solid var(--line);line-height:1.5}.new-student-review-quote .new-student-quote-section-label{padding:9px 12px;border-top:0;border-bottom:1px solid var(--line)}.new-student-review-quote .new-student-quote-months{gap:0;padding:0;border-top:0}.new-student-review-quote .new-student-quote-month{overflow:visible;border:0;border-radius:0}.new-student-review-quote .new-student-quote-month+.new-student-quote-month{border-top:8px solid var(--canvas)}.new-student-review-quote .new-student-quote-month>header{padding:10px 12px;border-bottom:1px solid var(--line)}.new-student-review-quote .new-student-quote-month>header strong{font-size:9px}.new-student-review-quote .new-student-quote-item{gap:5px;padding:9px 12px}.new-student-review-quote .new-student-quote-item-heading{display:grid;grid-template-columns:minmax(0,1fr);align-items:start;gap:2px}.new-student-review-quote .new-student-quote-item-heading strong{overflow-wrap:anywhere;font-size:9px;line-height:1.45}.new-student-review-quote .new-student-quote-item-heading small,.new-student-review-quote .new-student-quote-item-heading span,.new-student-review-quote .new-student-quote-item>div:not(.new-student-quote-item-heading){font-size:8px}.new-student-review-quote .new-student-quote-item-total{padding-top:6px;color:var(--text)}.new-student-review-quote .new-student-quote-month-adjustments>div,.new-student-review-quote .new-student-quote-month-total{font-size:8px}.new-student-review-quote .new-student-quote-grand-total{padding:11px 12px}.new-student-review-quote .new-student-quote-grand-total strong{font-size:10px}.new-student-review-payment-note{display:flex;align-items:flex-start;gap:7px;margin:0;padding:11px 12px;border-top:1px solid var(--line);line-height:1.5}.new-student-review-payment-note{color:var(--brand-strong);background:var(--brand-soft)}.new-student-review-payment-note.is-partial{color:#92400e;background:var(--warning-soft)}.new-student-review-payment-note>svg{flex:0 0 auto;width:13px;height:13px;margin-top:1px}.new-student-review-payment-note strong,.new-student-review-payment-note span{display:block}.new-student-review-payment-note strong{font-size:9px}.new-student-review-payment-note span{color:var(--muted);font-size:8px}.new-student-submit-error{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:9px;margin:0;padding:10px 20px;border-top:1px solid #fecaca;background:var(--danger-soft);color:var(--danger)}.new-student-submit-error>svg{width:18px;height:18px}.new-student-submit-error strong{color:var(--danger);font-size:10px}.new-student-submit-error p{margin:2px 0 0;font-size:9px;line-height:1.4}.new-student-draft-saved{display:flex;align-items:center;gap:9px;padding:9px 20px;border-top:1px solid #bbf7d0;background:#f0fdf4;color:#166534}.new-student-draft-saved>svg{width:18px;height:18px}.new-student-draft-saved strong,.new-student-draft-saved p{display:block;margin:0;font-size:9px}.new-student-draft-saved p{margin-top:2px;color:#15803d}.new-student-modifier-section{margin-top:14px;padding-bottom:18px}.new-student-modifier-toolbar{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:10px 18px}.new-student-modifier-toolbar>div:first-child{flex:1 1 260px;min-width:0}.new-student-modifier-toolbar h3{margin:0;color:var(--text);font-size:11px;line-height:1.3}.new-student-modifier-actions{display:flex;flex:0 1 auto;align-items:center;justify-content:flex-end;flex-wrap:wrap;gap:8px;padding:0}.new-student-monthly-lunch-action.is-active{border-color:var(--brand);background:var(--brand-soft);color:var(--brand-strong)}.new-student-modifier-empty{margin:13px 0 0;padding:12px 2px 0;border-top:1px solid var(--line);color:var(--muted);font-size:9px}.new-student-modifier-list{display:grid;gap:15px;min-width:0;margin-top:14px}.new-student-modifier-group{min-width:0}.new-student-modifier-group-heading{display:flex;align-items:baseline;justify-content:space-between;gap:10px;padding:0 2px 6px;border-bottom:1px solid var(--line)}.new-student-modifier-group-heading h4{margin:0;color:var(--text-secondary);font-size:9px;font-weight:800;letter-spacing:.04em}.new-student-modifier-group-heading span{color:var(--muted);font-size:8px}.new-student-modifier-row{display:grid;grid-template-columns:minmax(140px,.8fr) minmax(150px,1.15fr) minmax(125px,.75fr) minmax(135px,.8fr) 34px;align-items:start;gap:7px 10px;min-width:0;padding:10px 2px 12px;border-bottom:1px solid var(--line)}.new-student-modifier-identity{display:flex;align-self:center;align-items:center;gap:9px;min-width:0;min-height:38px}.new-student-modifier-identity strong{overflow:hidden;color:var(--text);font-size:10px;font-weight:800;line-height:1.35;text-overflow:ellipsis;white-space:nowrap}.new-student-modifier-kind{display:grid;flex:0 0 auto;width:28px;height:28px;place-items:center;border-radius:7px;background:var(--brand-soft);color:var(--brand-strong)}.new-student-modifier-kind>svg{width:15px;height:15px;stroke-width:2}.new-student-modifier-field{min-width:0}.new-student-modifier-field>label{font-size:8px;font-weight:750}.new-student-modifier-field>select,.new-student-modifier-field>input{min-height:38px;padding-right:10px;padding-left:10px}.new-student-modifier-fixed{align-self:center;min-width:0}.new-student-modifier-fixed--scope{grid-column:2 / 4}.new-student-modifier-fixed>span,.new-student-modifier-fixed>strong{display:block}.new-student-modifier-fixed>span{margin-bottom:4px;color:var(--text-secondary);font-size:8px;font-weight:750}.new-student-modifier-fixed>strong{overflow:hidden;color:var(--text);font-size:10px;line-height:1.35;text-overflow:ellipsis;white-space:nowrap}.new-student-modifier-fixed--price>strong{color:var(--brand-strong)}.new-student-modifier-remove{align-self:center}.new-student-modifier-row-error{grid-column:2 / -1}.new-student-modifier-row-error:empty{display:none}.new-student-flow-actions{position:sticky;bottom:0;z-index:20;display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:10px;min-height:60px;padding:9px 20px max(9px,env(safe-area-inset-bottom));border-top:1px solid var(--line);background:var(--surface);box-shadow:0 -8px 18px #2524220a}.new-student-flow-actions__start{justify-self:start}.new-student-flow-actions__end{display:flex;align-items:center;gap:8px;justify-self:end}.new-student-flow-actions__status{color:var(--danger);font-size:9px;text-align:center}.new-student-flow-actions__status.is-ready{color:var(--success)}.new-student-flow-actions a{text-decoration:none}.new-student-flow-actions .primary-button,.new-student-flow-actions .secondary-button{min-width:108px;border-radius:8px}.new-student-flow-actions .new-student-temporary-save{min-width:82px;padding-inline:10px}@media(min-width:1100px){.new-student-invoice-preview--inline{display:none}.new-student-page{height:calc(100vh - 100px);height:calc(100dvh - 100px);min-height:0}.new-student-page .page-scaffold,.new-student-page .page-content,.new-student-flow,.new-student-workspace{height:100%;min-height:0;overflow:hidden}.new-student-workspace-main{display:flex;height:100%;min-height:0;flex-direction:column}.new-student-stepper,.new-student-entry-switch,.new-student-reference-warning,.new-student-submit-error,.new-student-flow-actions{flex:0 0 auto}.new-student-main-form{flex:1 1 auto;min-height:0;contain:layout;overflow-x:hidden;overflow-y:auto;overscroll-behavior:contain;scroll-padding-block:16px;scrollbar-gutter:stable;scrollbar-width:thin}.new-student-flow-actions{position:relative;bottom:auto}.new-student-review-column{position:relative;top:auto;height:100%;min-height:0}.new-student-review{position:sticky;top:0;right:auto;width:100%;max-height:100%;scrollbar-gutter:stable}}@media(min-width:1100px)and (max-width:1439px){.new-student-workspace{grid-template-columns:minmax(0,1fr)}.new-student-workspace.has-ocr-source{--new-student-review-width: clamp(250px, 26vw, 320px);grid-template-columns:minmax(0,1fr) var(--new-student-review-width)}.new-student-review-column{display:none}.new-student-workspace.has-ocr-source .new-student-review-column,.new-student-invoice-preview--inline{display:block}}@media(max-width:1240px){.new-student-subject-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}@media(max-width:820px){.new-student-charge-period-primary-row{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(pointer:coarse){.students-filter-trigger,.students-sort-trigger,.students-filter-chip,.students-clear-filters,.students-filter-close,.students-filter-field select,.students-sort-options>button,.students-sort-direction button,.students-filter-modal-footer button,.students-sort-dialog-footer button{min-height:44px}}@media(max-width:1099px){.new-student-workspace{grid-template-columns:minmax(0,1fr);gap:12px;padding:12px}.new-student-workspace-main{overflow:visible;border-right:1px solid var(--line)}.new-student-review-column{display:none;position:static;top:auto;max-height:none}.new-student-review{position:static;top:auto;right:auto;display:none;width:auto;height:auto;max-height:none;overflow:visible;border:1px solid var(--line);box-shadow:none}.new-student-workspace.has-ocr-source{grid-template-columns:minmax(0,1fr) minmax(240px,30vw);align-items:stretch}.new-student-workspace.has-ocr-source .new-student-review-column,.new-student-workspace.has-ocr-source .new-student-review{display:block}.new-student-workspace.has-ocr-source .new-student-review-column{min-width:0;min-height:0}.new-student-workspace.has-ocr-source .new-student-review{position:sticky;top:0;width:100%;max-height:calc(100dvh - 124px);overflow:auto}.new-student-main-form{width:100%}}@media(max-width:899px){.new-student-workspace.has-ocr-source{grid-template-columns:minmax(0,1fr)}.new-student-workspace.has-ocr-source .new-student-review-column{order:-1}.new-student-workspace.has-ocr-source .new-student-review{position:static;max-height:360px}}@media(max-width:860px){.students-toolbar{padding:0}.students-scope-segment,.students-toolbar-context{grid-column:1}.students-scope-segment{justify-self:start}.students-select-field{flex:1 1 132px}.students-mobile-sort{display:grid}.new-student-grid-3,.new-student-initial-payment__fields{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:699px){.new-student-entry-switch{grid-template-columns:minmax(0,1fr)}.new-student-workspace{gap:8px;padding:8px}.new-student-flow,.new-student-workspace,.new-student-workspace-main,.new-student-main-form,.new-student-step-section{min-width:0;max-width:100%}.new-student-workspace-main,.new-student-review{border-radius:8px}.students-page .page-heading,.new-student-page .page-heading{flex-wrap:wrap}.students-page .page-actions,.new-student-page .page-actions,.students-page .page-actions .primary-button,.new-student-page .page-actions .secondary-button{width:100%}.students-toolbar{grid-template-columns:minmax(0,1fr);padding:0}.students-scope-segment{width:100%}.students-filter-row{display:grid;grid-column:1;grid-template-columns:repeat(2,minmax(0,1fr));width:100%;justify-self:stretch}.students-query-controls .students-date-field{grid-column:1 / -1}.students-filter-trigger,.students-sort-anchor,.students-sort-trigger{width:100%}.students-active-filter-chips{align-items:stretch}.students-active-filter-chips>span{width:100%}.management-dialog.students-filter-dialog[open],.management-dialog.students-sort-dialog[open]{width:calc(100vw - 18px);height:auto;max-height:calc(100dvh - 18px);margin:auto;border:1px solid var(--line-strong);border-radius:9px}.management-dialog.students-filter-dialog>.students-filter-modal-shell,.students-sort-dialog-shell{max-height:calc(100dvh - 18px)}.students-filter-grid{grid-template-columns:minmax(0,1fr)}.students-filter-modal-footer{align-items:stretch;flex-direction:column}.students-filter-modal-footer>div{display:grid;grid-template-columns:minmax(0,.65fr) minmax(0,1fr)}.students-filter-reset{align-self:flex-start}.students-select-field{width:100%;min-width:0}.students-clear-filters{justify-content:center}.students-desktop-roster{display:none}.students-mobile-roster{display:block}.students-mobile-roster li{border-bottom:1px solid var(--line)}.students-mobile-roster li:last-child{border-bottom:0}.students-mobile-roster button{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px;width:100%;min-width:0;padding:12px;border:0;background:var(--surface);color:var(--text-secondary);text-align:left}.students-mobile-roster button:hover{background:#fcfbfa}.students-mobile-roster button>svg{width:16px;height:16px;color:var(--muted)}.students-mobile-primary{display:flex;flex-wrap:wrap;align-items:baseline;gap:5px;min-width:0}.students-mobile-primary strong{color:var(--text);font-size:12px}.students-mobile-primary span{overflow:hidden;color:var(--muted);font-size:9px;text-overflow:ellipsis;white-space:nowrap}.students-mobile-roster dl{display:grid;grid-column:1 / -1;grid-template-columns:repeat(2,minmax(0,1fr));gap:7px 12px;margin:0;padding-top:8px;border-top:1px solid var(--line)}.students-mobile-roster dl>div{min-width:0}.students-mobile-roster dt,.students-mobile-roster dd{overflow:hidden;margin:0;text-overflow:ellipsis;white-space:nowrap}.students-mobile-roster dt{color:var(--muted);font-size:8px;font-weight:700}.students-mobile-roster dd{margin-top:2px;color:var(--text-secondary);font-size:9px}.students-mobile-statuses{display:flex;grid-column:1 / -1;flex-wrap:wrap;align-items:center;gap:4px;font-size:9px}.students-mobile-statuses .students-service-list{display:contents}.students-mobile-statuses .status-badge{min-height:21px;padding:2px 5px;font-size:9px}.students-mobile-statuses>.students-muted-value{display:inline-flex;min-height:21px;align-items:center;padding:2px 5px;border:1px solid var(--line);border-radius:4px;background:var(--surface-subtle);font-size:9px}.students-pagination{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px;padding:9px 12px}.students-pagination>div:first-child{grid-column:1 / -1;margin:0}.students-page-buttons{justify-self:end}.management-dialog.student-detail-modal[open]{width:calc(100vw - 12px);height:calc(100vh - 12px);height:calc(100dvh - 12px);max-height:calc(100vh - 12px);max-height:calc(100dvh - 12px);border-radius:10px}.management-dialog.student-enrollment-change-modal[open]{width:calc(100vw - 12px);height:calc(100dvh - 12px);max-height:calc(100dvh - 12px);border-radius:10px}.management-dialog.student-enrollment-change-modal.student-enrollment-subject-change-modal[open]{width:calc(100vw - 12px);height:fit-content;max-height:calc(100dvh - 12px)}.management-dialog.student-enrollment-subject-change-modal[open]>.student-enrollment-change-card{max-height:calc(100dvh - 12px)}.student-enrollment-change-header,.student-enrollment-change-body,.student-enrollment-change-actions{padding-right:13px;padding-left:13px}.student-enrollment-change-month-section{grid-template-columns:minmax(0,1fr)}.student-enrollment-change-subject-heading{align-items:stretch;flex-direction:column}.student-enrollment-change-scope{grid-template-columns:repeat(3,minmax(0,1fr))}.student-enrollment-change-subjects>div{grid-template-columns:repeat(2,minmax(0,1fr))}.student-enrollment-change-subject-section>header,.student-enrollment-change-fee-grid,.student-enrollment-change-impact>div{grid-template-columns:minmax(0,1fr)}.student-enrollment-change-subject-section>header>svg,.student-enrollment-change-fee-grid>svg,.student-enrollment-change-impact>div>svg{justify-self:center;transform:rotate(90deg)}.student-enrollment-change-modifiers article{display:grid;grid-template-columns:minmax(0,1fr) auto}.student-enrollment-change-modifiers article>small{grid-column:1 / -1;min-width:0;text-align:left}.student-enrollment-change-actions .primary-button,.student-enrollment-change-actions .secondary-button{flex:1 1 0}.student-enrollment-change-actions{flex-wrap:wrap}.student-enrollment-change-actions .student-enrollment-change-back{flex-basis:100%;margin-right:0}.student-detail-header,.student-detail-section{padding-right:14px;padding-left:14px}.student-detail-edit-button{padding:0 8px;font-size:10px}.student-profile-edit-grid{grid-template-columns:minmax(0,1fr)}.student-profile-edit-field-wide{grid-column:auto}.student-profile-edit-actions{padding-right:14px;padding-left:14px}.student-detail-grid{gap:11px 12px}.student-preview-purge-intro{align-items:stretch;flex-direction:column}.student-preview-purge-open{width:100%}.student-preview-purge-terminations dl,.student-preview-purge-retained dl{grid-template-columns:minmax(0,1fr)}.student-preview-purge-step>footer>button{flex:1 1 0;min-width:0}.student-detail-list-row{grid-template-columns:minmax(0,1fr)}.student-enrollment-change-button{justify-self:start}.student-contact-line{grid-template-columns:auto auto minmax(0,1fr);justify-items:start}.student-contact-line svg{grid-row:auto}.student-contact-line span,.student-contact-line small{display:inline}.new-student-stepper{padding:0 10px}.new-student-lead-candidate-picker{width:calc(100% - 16px);margin-top:8px}.new-student-lead-candidate-options{grid-template-columns:minmax(0,1fr)}.school-combobox-list{width:100%;min-width:0;max-width:calc(100vw - 44px)}.new-student-reference-warning{padding:10px 13px}.new-student-stepper ol{grid-template-columns:repeat(3,minmax(0,1fr));min-width:0}.new-student-stepper button{min-height:58px;gap:5px;padding:6px 4px}.new-student-stepper button b{font-size:8px}.new-student-step-section{padding:15px 13px}.new-student-subsection-heading{flex-wrap:wrap}.new-student-section-heading{margin-bottom:15px}.new-student-grid-2,.new-student-grid-3,.new-student-initial-payment__fields,.new-student-charge-period-primary-row,.new-student-charge-period-coverage-row,.new-student-charge-period-coverage-row.is-half_month,.new-student-compact-allergy{grid-template-columns:minmax(0,1fr)}.new-student-allergy-answer-row{align-items:flex-start;flex-direction:column}.new-student-guardian>header{align-items:flex-start}.new-student-guardian>header>div:last-child{flex-wrap:wrap;justify-content:flex-end}.new-student-service-segment{width:100%;grid-template-columns:repeat(3,minmax(0,1fr))}.new-student-service-segment button{gap:4px;padding:0 4px}.new-student-enrollment-item.is-enrollment>.new-student-enrollment-header{align-items:stretch;flex-wrap:wrap}.new-student-enrollment-header-actions{flex:1 1 100%}.new-student-enrollment-header-actions .new-student-service-segment{flex:1 1 auto}.new-student-enrollment-choice-row>.new-student-scope-row{grid-template-columns:minmax(0,1fr);gap:6px}.new-student-scope-segment{width:100%}.new-student-price-reference{grid-template-columns:auto minmax(0,1fr)}.new-student-price-reference>div:nth-of-type(2){grid-column:2;text-align:left}.new-student-price-reference p{grid-column:1 / -1}.new-student-subject-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.new-student-end-date-field{max-width:none}.new-student-final-summary__grid{grid-template-columns:minmax(0,1fr)}.new-student-final-summary__grid>article:nth-child(2n){border-left:0}.new-student-final-summary__grid>article:nth-child(n+3){border-top:0}.new-student-final-summary__grid>article+article{border-top:1px solid var(--line)}.new-student-final-periods>div{grid-template-columns:minmax(0,1fr)}.new-student-final-periods>div>span+span{border-top:1px solid var(--line);border-left:0}.new-student-success{width:calc(100% - 16px);margin:8px auto}.new-student-success-summary{grid-template-columns:minmax(0,1fr)}.new-student-success-summary>div{border-right:0;border-bottom:1px solid var(--line)}.new-student-success-summary>div:last-child{border-bottom:0}.new-student-success-invoices article,.new-student-success-actions,.new-student-initial-payment>header{align-items:flex-start;flex-wrap:wrap}.new-student-success-actions>*,.new-student-initial-payment>header .status-badge{min-width:0}.new-student-initial-payment>header .status-badge{margin-left:27px}.new-student-flow-actions{grid-template-columns:repeat(2,minmax(0,1fr));gap:7px;min-height:78px;padding:8px 13px max(8px,env(safe-area-inset-bottom))}.new-student-flow-actions__status{grid-column:1 / -1;grid-row:1;font-size:9px}.new-student-flow-actions__start,.new-student-flow-actions__end{grid-row:2;width:100%}.new-student-flow-actions__start>*,.new-student-flow-actions__end>*{width:100%;min-width:0}.new-student-flow-actions__end>*{flex:1 1 0}.new-student-modifier-actions>button{flex:1 1 120px}.new-student-period-modifiers__heading{align-items:flex-start;flex-direction:column}.new-student-period-modifiers__heading .new-student-modifier-actions{width:100%}.new-student-modifier-toolbar{align-items:flex-start}.new-student-modifier-actions{width:100%;justify-content:flex-start}.new-student-enrollment-toolbar,.new-student-charge-period-toolbar{gap:8px}.new-student-enrollment-toolbar p,.new-student-charge-period-toolbar span{display:none}.new-student-enrollment-toolbar .new-student-compact-add-button,.new-student-charge-period-toolbar .new-student-compact-add-button{min-height:34px;padding:0 10px;font-size:9px}.new-student-modifier-row{grid-template-columns:minmax(0,1fr) 34px;gap:8px;padding:10px 2px 12px}.new-student-modifier-row.new-student-modifier-row--scoped{grid-template-columns:minmax(0,1fr) 40px;padding:10px 14px 12px}.new-student-modifier-identity{grid-column:1;margin-top:0}.new-student-modifier-field,.new-student-modifier-fixed,.new-student-modifier-row-error{grid-column:1 / -1}.new-student-modifier-remove{grid-column:2;grid-row:1;margin-top:0}.new-student-modifier-row.new-student-modifier-row--scoped .new-student-modifier-field,.new-student-modifier-row.new-student-modifier-row--scoped .new-student-modifier-fixed,.new-student-modifier-row.new-student-modifier-row--scoped .new-student-modifier-row-error{grid-column:1 / -1}.new-student-modifier-row.new-student-modifier-row--scoped .new-student-modifier-remove{grid-column:2;grid-row:1}.new-student-modifier-row.new-student-modifier-row--scoped .new-student-modifier-fixed--price{grid-column:1 / -1}.new-student-submit-error{grid-template-columns:auto minmax(0,1fr);padding:10px 13px}.new-student-submit-error .secondary-button{grid-column:1 / -1;width:100%}}@media(max-width:390px){.students-filter-row,.students-mobile-roster dl,.student-detail-grid{grid-template-columns:minmax(0,1fr)}.new-student-subject-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(prefers-reduced-motion:reduce){.new-student-optional-hint>svg{transition:none;animation:none}}.settings-directory-page,.organization-directory-page,.management-home-page{min-width:0}.management-hub-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;padding:20px;background:var(--canvas)}.management-hub-card{min-width:0;overflow:hidden;border:1px solid var(--line);border-radius:10px;background:var(--surface);box-shadow:0 1px 2px #2524220d}.management-hub-card>header{display:flex;align-items:flex-start;gap:12px;min-height:92px;padding:17px 18px 15px}.management-hub-icon{display:grid;flex:0 0 auto;width:42px;height:42px;place-items:center;border-radius:9px;background:var(--brand-soft);color:var(--brand-strong)}.management-hub-icon svg{width:21px;height:21px}.management-hub-card h2,.management-hub-card p{margin:0}.management-hub-card h2{color:var(--text);font-size:16px;line-height:1.35}.management-hub-card p{margin-top:4px;color:var(--muted);font-size:10px;line-height:1.5}.management-hub-links{display:grid;border-top:1px solid var(--line)}.management-hub-link{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:14px;min-height:72px;padding:12px 18px;color:inherit;text-decoration:none;transition:background-color .16s ease,color .16s ease}.management-hub-link+.management-hub-link{border-top:1px solid var(--line)}.management-hub-link>span{display:grid;min-width:0;gap:3px}.management-hub-link strong{color:var(--text);font-size:12px}.management-hub-link small{color:var(--muted);font-size:9px;line-height:1.45}.management-hub-link>svg{width:17px;height:17px;color:var(--brand)}.management-hub-link:hover{background:var(--brand-soft)}.management-hub-link:focus-visible{position:relative;z-index:1;outline:3px solid var(--focus);outline-offset:-3px}.management-tabs{display:flex;min-width:0;gap:0;overflow-x:auto;border-bottom:1px solid var(--line);background:var(--surface);scrollbar-width:thin}.management-tabs button{display:inline-flex;flex:0 0 auto;min-height:42px;align-items:center;gap:6px;padding:0 16px;border:0;border-right:1px solid var(--line);border-bottom:2px solid transparent;background:transparent;color:var(--text-secondary);font-size:10px;font-weight:750}.management-tabs button.is-active{border-bottom-color:var(--brand);color:var(--brand-strong);background:var(--brand-soft)}.management-tabs button:focus-visible{outline:2px solid var(--brand);outline-offset:-3px}.management-tabs svg{width:14px;height:14px}.school-directory-view-tabs{display:flex;gap:4px;padding:10px 14px 0;background:var(--canvas)}.school-directory-view-tabs button{display:inline-flex;min-height:36px;align-items:center;gap:7px;padding:0 13px;border:1px solid transparent;border-radius:7px 7px 0 0;background:transparent;color:var(--text-secondary);font-size:10px;font-weight:750}.school-directory-view-tabs button span{display:inline-grid;min-width:22px;min-height:20px;padding:0 5px;place-items:center;border-radius:999px;background:#ebe8e3;color:var(--muted);font-size:8px}.school-directory-view-tabs button:hover,.school-directory-view-tabs button:focus-visible{color:var(--brand-strong)}.school-directory-view-tabs button:focus-visible{outline:3px solid var(--focus);outline-offset:-2px}.school-directory-view-tabs button.is-active{border-color:var(--line);border-bottom-color:var(--surface);background:var(--surface);color:var(--brand-strong)}.school-directory-view-tabs button.is-active span{background:var(--brand-soft);color:var(--brand-strong)}.master-data-section{margin:14px}.school-directory-section{margin-top:0;border-top-left-radius:0}.school-directory-section .management-directory-list.compact>li{min-height:54px;padding-block:7px}.master-data-sections{background:var(--surface)}.settings-directory-page .page-actions svg,.organization-directory-page .page-actions svg,.management-dialog svg{width:15px;height:15px}.management-filter-segment{display:inline-grid;grid-template-columns:repeat(3,minmax(58px,1fr));gap:2px;padding:3px;border:1px solid var(--line-strong);border-radius:6px;background:#f3f1ed}.management-filter-segment.academic-year-status-filter{grid-template-columns:repeat(5,minmax(52px,1fr))}.management-filter-segment button{min-height:28px;padding:0 9px;border:0;border-radius:4px;background:transparent;color:var(--text-secondary);font-size:10px;font-weight:700}.management-filter-segment button.is-active{background:var(--surface);color:var(--brand-strong);box-shadow:0 1px 3px #2524221a}.management-success-banner{display:flex;align-items:center;gap:7px;min-height:38px;padding:8px 20px;border-bottom:1px solid #a7f3d0;background:var(--success-soft);color:var(--success);font-size:11px;font-weight:700}.management-success-banner svg{width:15px;height:15px}.pending-school-requests{border-bottom:1px solid var(--line);background:var(--warning-soft)}.pending-school-requests>header{display:flex;align-items:flex-start;justify-content:space-between;gap:10px;padding:10px 20px 7px}.pending-school-requests h2,.pending-school-requests p{margin:0}.pending-school-requests h2{color:var(--text);font-size:11px}.pending-school-requests p{margin-top:2px;color:var(--muted);font-size:9px}.pending-school-requests ul{margin:0;padding:0 20px 10px;list-style:none}.pending-school-requests li{display:grid;grid-template-columns:minmax(0,1fr) auto auto;align-items:center;gap:10px;min-width:0;padding:8px 10px;border:1px solid #fde68a;border-radius:6px;background:var(--surface)}.pending-school-requests li+li{margin-top:5px}.pending-school-requests li>div:first-child{display:grid;min-width:0;gap:3px}.pending-school-requests li strong,.pending-school-requests li span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.pending-school-requests li strong{color:var(--text);font-size:10px}.pending-school-requests li span,.pending-school-requests time{color:var(--muted);font-size:8px}.pending-school-request-actions{display:grid;gap:5px}.pending-school-request-actions>div{display:flex;justify-content:flex-end;gap:5px}.pending-school-request-actions select{width:min(190px,30vw);min-width:130px;height:30px;padding:0 24px 0 7px;border:1px solid var(--line-strong);border-radius:5px;background:var(--surface);color:var(--text-secondary);font-size:9px}.pending-school-request-actions .secondary-button{min-height:30px;padding-inline:8px;font-size:9px}.pending-school-request-actions .danger-text{color:var(--danger)}.management-inline-error{margin:0 20px 10px;color:var(--danger);font-size:9px}.management-directory-list{margin:0;padding:0;list-style:none}.academic-year-empty{display:flex;min-height:180px;align-items:center;justify-content:center;gap:9px;color:var(--muted);font-size:12px}.academic-year-empty svg{width:18px;height:18px}.management-directory-list>li{display:grid;grid-template-columns:minmax(240px,1.45fr) minmax(130px,.75fr) auto;align-items:center;gap:14px;min-width:0;min-height:70px;padding:11px 20px;border-bottom:1px solid var(--line)}.management-directory-list>li:last-child{border-bottom:0}.management-directory-list>li:hover{background:#fcfbfa}.management-directory-main,.management-directory-meta{display:grid;min-width:0;gap:4px}.management-directory-main>div{display:flex;flex-wrap:wrap;align-items:center;gap:7px;min-width:0}.management-directory-main strong,.management-directory-main span,.management-directory-meta strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.management-directory-main strong,.management-directory-meta strong{color:var(--text);font-size:12px}.management-directory-main span,.management-directory-meta small,.management-directory-meta>span{color:var(--muted);font-size:9px}.management-directory-meta strong{color:var(--text-secondary);font-size:11px;font-weight:650}.management-directory-actions{justify-self:end}.management-directory-actions .secondary-button{min-width:76px;min-height:32px;padding-inline:9px}.management-directory-actions svg{width:13px;height:13px}.school-class-manager{grid-column:1 / -1;min-width:0;overflow:visible;border:1px solid var(--line-strong);border-radius:7px;background:var(--surface)}.school-class-guidance{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(240px,.75fr);align-items:start;gap:16px;padding:10px 12px;border-bottom:1px solid var(--line);background:var(--surface-subtle)}.school-class-guidance h3,.school-class-guidance p{margin:0}.school-class-guidance h3{color:var(--text);font-size:12px}.school-class-guidance p{margin-top:3px;color:var(--muted);font-size:9px;line-height:1.5}.school-class-guidance>p{margin-top:0;padding-left:12px;border-left:2px solid #c7d2fe}.school-class-guidance strong{color:var(--text-secondary)}.school-academic-year-empty{display:grid;gap:10px;padding:12px}.school-academic-year-empty>div:first-child{display:grid;gap:3px}.school-academic-year-empty>div:first-child strong{color:var(--text);font-size:11px}.school-academic-year-empty>div:first-child p{color:var(--muted);font-size:9px;line-height:1.45}.school-academic-year-empty>form{display:grid;grid-template-columns:minmax(190px,1fr) minmax(145px,.7fr) minmax(145px,.7fr) auto;gap:8px;align-items:end}.school-academic-year-empty label{display:grid;gap:4px;min-width:0}.school-academic-year-empty label>span{color:var(--text-secondary);font-size:9px;font-weight:750}.school-academic-year-empty input{width:100%;min-width:0;height:36px;padding:0 10px;border:1px solid var(--line-strong);border-radius:5px;background:var(--surface);color:var(--text);font:inherit;font-size:10px}.school-academic-year-empty input:focus{border-color:var(--brand);outline:3px solid var(--focus);outline-offset:0}.school-academic-year-empty .primary-button{min-height:36px;white-space:nowrap}.school-class-controls{display:grid;grid-template-columns:minmax(0,1fr) minmax(175px,auto);gap:14px;align-items:start;padding:10px 12px;border-bottom:1px solid var(--line)}.school-class-grade-control,.school-class-create-form label{display:grid;gap:4px;min-width:0}.school-class-grade-control>span,.school-class-year-context>span,.school-class-create-form label>span{color:var(--text-secondary);font-size:9px;font-weight:750}.school-class-year-context select,.school-class-create-form input{width:100%;min-width:0;height:36px;padding:0 10px;border:1px solid var(--line-strong);border-radius:5px;background:var(--surface);color:var(--text);font:inherit;font-size:10px}.school-class-year-context select:focus,.school-class-create-form input:focus{border-color:var(--brand);outline:3px solid var(--focus);outline-offset:0}.school-class-year-context{display:grid;gap:4px;min-width:175px;padding:7px 9px;border:1px solid var(--line);border-radius:5px;background:var(--surface-subtle)}.school-class-year-context strong{color:var(--text-secondary);font-size:10px}.school-class-year-context small{max-width:220px;color:var(--muted);font-size:8px;line-height:1.35}.school-class-grade-picker{display:flex;flex-wrap:wrap;gap:5px;min-width:0}.school-class-grade-picker button{min-width:46px;min-height:36px;padding:0 10px;border:1px solid var(--line-strong);border-radius:5px;background:var(--surface);color:var(--text-secondary);font-size:10px;font-weight:750}.school-class-grade-picker button.is-active{border-color:#c7d2fe;background:var(--brand-soft);color:var(--brand-strong)}.school-class-content{display:grid;gap:9px;padding:10px 12px 12px;border-top:1px solid var(--line)}.school-class-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:6px;margin:0;padding:0;list-style:none}.school-class-list li{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px;align-items:center;min-width:0;min-height:46px;padding:6px 7px 6px 10px;border:1px solid var(--line);border-radius:6px;background:var(--surface)}.school-class-list li>div{display:grid;min-width:0;gap:2px}.school-class-list strong,.school-class-list li>div>span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.school-class-row-actions{display:flex!important;grid-column:1 / -1;align-items:center;justify-content:flex-end;gap:5px!important;padding-top:5px;border-top:1px solid var(--line)}.school-class-list strong{color:var(--text);font-size:11px}.school-class-list li>div>span{color:var(--muted);font-size:8px}.school-class-list .secondary-button{min-width:58px;min-height:30px;padding-inline:7px;font-size:8px}.school-class-list .secondary-button svg{width:11px;height:11px}.school-class-empty{display:grid;gap:3px;padding:10px;border:1px dashed var(--line-strong);border-radius:6px;background:var(--surface-subtle);color:var(--muted);font-size:9px;text-align:center}.school-class-empty strong{color:var(--text-secondary);font-size:10px}.school-class-empty span{line-height:1.45}.school-class-create-form{display:grid;grid-template-columns:minmax(190px,1fr) minmax(190px,1fr) auto;gap:8px;align-items:end}.school-class-entry{display:grid;gap:8px;padding:10px 12px 12px;background:var(--surface)}.school-class-entry>div:first-child{display:flex;align-items:baseline;justify-content:space-between;gap:10px}.school-class-entry>div:first-child strong{color:var(--text);font-size:11px}.school-class-entry>div:first-child span{color:var(--brand-strong);font-size:9px;font-weight:700}.school-class-create-form label>small{color:var(--muted);font-size:8px;line-height:1.4}.school-class-form-actions{display:flex;align-items:center;justify-content:flex-end;gap:6px}.school-class-form-actions .primary-button,.school-class-form-actions .secondary-button{min-height:36px;white-space:nowrap}.school-class-readonly-note{margin:0;padding:0 12px 10px;color:var(--muted);font-size:8px}.school-class-inline-error{display:flex;align-items:center;justify-content:space-between;gap:8px;padding:9px 12px;border-top:1px solid #fecaca;background:var(--danger-soft);color:var(--danger);font-size:9px}.school-class-content>.school-class-inline-error{padding:8px 10px;border:1px solid #fecaca;border-radius:5px}.school-class-inline-error .directory-mini-action{flex:0 0 auto}.organization-directory-sections{display:grid;gap:12px;padding:14px;background:var(--canvas)}.management-section{min-width:0;overflow:hidden;border:1px solid var(--line);border-radius:7px;background:var(--surface);scroll-margin-top:18px}.management-section.is-deep-link-target{border-color:color-mix(in srgb,var(--brand) 48%,var(--line));box-shadow:0 0 0 2px color-mix(in srgb,var(--brand) 10%,transparent)}.management-section>header{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;min-height:62px;padding:12px 14px;border-bottom:1px solid var(--line);background:var(--surface-subtle)}.management-section>header>div{display:flex;align-items:flex-start;gap:9px;min-width:0}.management-section>header>div>svg{flex:0 0 auto;width:18px;height:18px;margin-top:1px;color:var(--brand)}.management-section h2,.management-section p{margin:0}.management-section h2{color:var(--text);font-size:13px}.management-section p{margin-top:3px;color:var(--muted);font-size:9px;line-height:1.45}.management-section .state-panel{min-height:180px;padding:30px 18px}.management-directory-list.compact>li{grid-template-columns:minmax(210px,1fr) minmax(150px,.75fr) minmax(140px,auto);min-height:62px;padding:9px 14px}.management-directory-list.compact .management-directory-meta.is-wide{grid-column:span 2}.branch-directory-row{grid-template-areas:"main meta actions";grid-template-columns:minmax(210px,1fr) minmax(150px,.75fr) auto}.branch-directory-row>.management-directory-main{grid-area:main}.branch-directory-row>.management-directory-meta{grid-area:meta}.branch-directory-row>.branch-directory-actions{grid-area:actions;align-self:center;justify-self:end;flex-wrap:nowrap}.staff-directory-row{grid-template-areas:"person scope access status actions";grid-template-columns:minmax(130px,1fr) minmax(160px,1.25fr) minmax(125px,.95fr) auto auto;min-height:58px!important}.staff-directory-row.has-account-access{grid-template-areas:"person scope account access status actions";grid-template-columns:minmax(130px,1fr) minmax(150px,1.15fr) minmax(115px,.9fr) minmax(120px,.9fr) auto auto}.staff-directory-row>.staff-directory-person{grid-area:person}.staff-directory-row>.staff-directory-scope{grid-area:scope}.staff-directory-row>.staff-directory-account{grid-area:account}.staff-directory-row>.staff-directory-access{grid-area:access}.staff-directory-row>.staff-directory-status{grid-area:status;align-self:center}.staff-directory-row>.staff-directory-actions{grid-area:actions;align-self:center;justify-self:end;flex-wrap:wrap}.staff-directory-account-state{display:flex;flex-wrap:wrap;align-items:center;gap:4px}.staff-directory-scope>span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.staff-directory-empty .state-panel p:empty{display:none}.organization-data-table-shell{min-width:0;overflow:hidden;border-top:1px solid var(--line);background:var(--surface)}.organization-data-table{width:100%;border-collapse:collapse;color:var(--text-secondary);font-size:11px}.organization-location-table{min-width:760px}.staff-directory-table{min-width:1040px}.organization-data-table :is(th,td){min-width:0;padding:9px 12px;border-bottom:1px solid var(--line);text-align:left;vertical-align:middle}.organization-data-table thead th{height:38px;background:#faf9f7;color:#6d665e;font-size:10px;font-weight:750;white-space:nowrap}.organization-data-table tbody th{background:transparent;font-weight:inherit}.organization-data-table tbody tr{height:52px;transition:background-color .12s ease}.organization-data-table tbody tr:hover{background:#fcfbfa}.organization-data-table tbody tr:last-child>*{border-bottom:0}.organization-region-row{background:var(--surface-subtle)}.organization-region-row>:is(th,td){font-weight:700}.organization-branch-row>:is(th,td){color:var(--text-secondary)}.organization-branch-empty-row>td{padding:12px 12px 12px 56px;color:var(--muted);font-size:10px}.organization-table-primary{display:flex;min-width:0;align-items:center;gap:9px}.organization-table-primary>div{display:grid;min-width:0;gap:2px}.organization-table-primary strong,.staff-table-account strong,.staff-directory-table td>strong{overflow:hidden;color:var(--text);font-size:11px;text-overflow:ellipsis;white-space:nowrap}.organization-table-primary span,.staff-table-account>strong,.staff-directory-table td>span{overflow:hidden;color:var(--muted);font-size:9px;text-overflow:ellipsis;white-space:nowrap}.organization-table-primary.is-child{padding-left:37px}.organization-table-primary.is-child>svg{width:15px;height:15px;flex:0 0 auto;color:var(--brand)}.organization-row-disclosure{display:inline-grid;width:28px;height:28px;flex:0 0 auto;place-items:center;padding:0;border:1px solid var(--line-strong);border-radius:7px;background:var(--surface);color:var(--text-secondary)}.organization-row-disclosure:hover:not(:disabled){border-color:var(--brand);color:var(--brand-strong)}.organization-row-disclosure:focus-visible,.organization-data-table .directory-mini-action:focus-visible{outline:2px solid var(--brand);outline-offset:2px}.organization-row-disclosure:disabled{cursor:default;opacity:1}.organization-row-disclosure.is-static,.organization-row-disclosure.is-spacer{border-color:transparent;background:transparent}.organization-row-disclosure svg{width:14px;height:14px;transition:transform .14s ease}.organization-row-disclosure.is-expanded svg{transform:rotate(90deg)}.organization-table-actions-heading,.organization-table-actions-cell{text-align:right!important}.organization-table-actions{display:flex;flex-wrap:nowrap;justify-content:flex-end;gap:5px}.organization-data-table .directory-mini-action{display:inline-flex;min-height:30px;align-items:center;justify-content:center;gap:5px;padding:5px 9px;border-radius:999px;font-size:9px;white-space:nowrap}.organization-data-table .directory-mini-action>svg{width:13px;height:13px}.staff-table-account{display:grid;min-width:0;gap:4px}.staff-table-account>div{display:flex;flex-wrap:wrap;gap:4px}.organization-location-table th:first-child{width:33%}.organization-location-table th:nth-child(2){width:29%}.organization-location-table th:nth-child(3){width:12%}.organization-location-table th:last-child{width:26%}.staff-directory-table th:first-child{width:16%}.staff-directory-table th:nth-child(2),.staff-directory-table th:nth-child(3){width:13%}.staff-directory-table th:last-child{width:18%}.management-readonly-field{display:grid;min-width:0;gap:5px}.management-readonly-field>span{color:var(--text-secondary);font-size:10px;font-weight:750}.management-readonly-field>strong{min-height:38px;padding:10px 11px;border:1px solid var(--line);border-radius:6px;background:var(--surface-subtle);color:var(--text);font-size:11px}.branch-directory-actions .directory-mini-action{min-height:32px}.management-role-list{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:4px}.management-role-list span{display:inline-flex;min-height:23px;align-items:center;padding:3px 6px;border:1px solid var(--line);border-radius:4px;background:var(--surface-subtle);color:var(--text-secondary);font-size:9px;font-weight:700}.directory-mini-action{min-height:25px;padding:3px 7px;border:1px solid var(--line-strong);border-radius:4px;background:var(--surface);color:var(--text-secondary);font-size:8px;font-weight:750}.directory-mini-action:hover:not(:disabled){border-color:var(--brand);color:var(--brand-strong)}.directory-mini-action.preview-purge-trigger{border-color:#fecaca;color:var(--danger)}.directory-mini-action.preview-purge-trigger:hover:not(:disabled){border-color:var(--danger);background:var(--danger-soft);color:var(--danger)}.management-dialog{width:min(680px,calc(100vw - 28px));max-height:min(86vh,760px);max-height:min(86dvh,760px);margin:auto;padding:0;overflow:hidden;border:1px solid var(--line-strong);border-radius:8px;outline:0;background:var(--surface);color:var(--text);box-shadow:0 24px 70px #2524223d}.management-dialog::backdrop{background:#2524226b;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px)}.management-dialog.preview-purge-dialog{width:min(600px,calc(100vw - 28px))}.preview-purge-kicker{display:inline-flex;margin-bottom:4px;color:var(--danger);font-size:9px;font-weight:800;letter-spacing:.04em;text-transform:uppercase}.preview-purge-body{display:grid;gap:12px}.preview-purge-warning,.preview-purge-loading,.preview-purge-error,.preview-purge-result,.preview-purge-blockers{border-radius:7px;font-size:10px;line-height:1.5}.preview-purge-warning{display:flex;align-items:flex-start;gap:10px;padding:12px;border:1px solid #fecaca;background:var(--danger-soft);color:var(--danger)}.preview-purge-warning>svg{width:18px;height:18px;flex:0 0 auto}.preview-purge-warning strong,.preview-purge-warning p{margin:0}.preview-purge-warning p{margin-top:2px;color:var(--text-secondary)}.preview-purge-loading{display:flex;min-height:46px;align-items:center;justify-content:center;gap:8px;color:var(--text-secondary)}.preview-purge-loading svg{width:16px;height:16px}.preview-purge-result{display:grid;gap:2px;padding:10px 12px;border:1px solid var(--line-strong);background:var(--surface-subtle)}.preview-purge-result.is-eligible{border-color:#a7f3d0;background:#ecfdf5;color:#047857}.preview-purge-result.is-blocked{border-color:#fde68a;background:#fffbeb;color:#92400e}.preview-purge-result span{color:var(--text-secondary)}.preview-purge-impact{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:7px;margin:0}.preview-purge-impact>div{display:flex;min-width:0;align-items:center;justify-content:space-between;gap:8px;padding:8px 10px;border:1px solid var(--line);border-radius:6px;background:var(--surface-subtle)}.preview-purge-impact dt{color:var(--text-secondary);font-size:9px}.preview-purge-impact dd{margin:0;color:var(--text);font-size:11px;font-weight:800}.preview-purge-blockers{padding:10px 12px;border:1px solid #fde68a;background:#fffbeb;color:#92400e}.preview-purge-blockers ul{margin:5px 0 0;padding-left:18px}.preview-purge-error{display:grid;justify-items:start;gap:5px;padding:10px 12px;border:1px solid #fecaca;background:var(--danger-soft);color:var(--danger)}.preview-purge-error small{color:var(--text-secondary)}.preview-purge-confirm{display:inline-flex;min-height:38px;align-items:center;justify-content:center;gap:7px;padding:0 14px;border:1px solid var(--danger);border-radius:6px;background:var(--danger);color:#fff;font-size:10px;font-weight:800}.preview-purge-confirm:hover:not(:disabled){filter:brightness(.93)}.preview-purge-confirm:focus-visible{outline:3px solid var(--focus);outline-offset:2px}.preview-purge-confirm:disabled{cursor:not-allowed;opacity:.48}.preview-purge-confirm svg{width:15px;height:15px}.management-dialog>form,.management-dialog>.management-dialog-shell{display:grid;max-height:min(86vh,760px);max-height:min(86dvh,760px);grid-template-rows:auto minmax(0,1fr) auto}.school-management-dialog{width:min(920px,calc(100vw - 28px));max-height:min(90vh,840px);max-height:min(90dvh,840px)}.school-management-dialog>.school-management-shell{max-height:min(90vh,840px);max-height:min(90dvh,840px);grid-template-rows:auto minmax(0,1fr)}.school-management-dialog>.school-management-shell.has-tabs{grid-template-rows:auto auto minmax(0,1fr)}.school-management-tabs{display:flex;align-items:center;gap:4px;padding:8px 18px;border-bottom:1px solid var(--line);background:var(--surface-subtle)}.school-management-tabs button{min-height:34px;padding:0 13px;border:1px solid transparent;border-radius:6px;background:transparent;color:var(--text-secondary);font-size:10px;font-weight:750}.school-management-tabs button:hover,.school-management-tabs button:focus-visible{border-color:var(--line-strong);background:var(--surface);color:var(--brand-strong)}.school-management-tabs button:focus-visible{outline:3px solid var(--focus);outline-offset:1px}.school-management-tabs button.is-active{border-color:#c7d2fe;background:var(--surface);color:var(--brand-strong);box-shadow:0 1px 2px #25242212}.school-management-panel{display:grid;grid-template-rows:minmax(0,1fr) auto;min-width:0;min-height:0;overflow:hidden}.school-management-panel[hidden]{display:none}.school-management-panel-form,.school-management-panel{height:100%}.school-management-panel-form,.school-management-panel{min-height:0}.school-management-panel-form{display:grid;grid-template-rows:minmax(0,1fr) auto}.school-management-classes-body{display:grid;align-content:start;grid-auto-rows:max-content;gap:14px;min-height:0}.school-grades-disclosure{overflow:hidden;border:1px solid var(--line-strong);border-radius:7px;background:var(--surface-subtle)}.school-grades-disclosure>summary{display:flex;min-height:50px;align-items:center;justify-content:space-between;gap:16px;padding:9px 12px;cursor:pointer;list-style:none}.school-grades-disclosure>summary::-webkit-details-marker{display:none}.school-grades-disclosure>summary>div{display:grid;gap:2px}.school-grades-disclosure>summary strong{color:var(--text);font-size:11px}.school-grades-disclosure>summary span{color:var(--muted);font-size:9px}.school-grades-disclosure>summary>span:last-child{flex:0 0 auto;color:var(--brand-strong);font-weight:700}.school-grades-disclosure[open]>summary{border-bottom:1px solid var(--line)}.school-grades-disclosure .school-grades-form{border:0;border-radius:0}.school-grades-form{display:grid;gap:10px;padding:12px;border:1px solid var(--line-strong);border-radius:7px;background:var(--surface-subtle)}.school-grades-dirty-note{margin:0;padding:8px 10px;border:1px solid #f1d58a;border-radius:5px;background:#fff9e8;color:#795b16;font-size:9px;line-height:1.45}.management-staff-editor-body{display:grid;align-content:start;gap:16px}.staff-editor-dialog{width:min(860px,calc(100vw - 28px));max-height:min(90vh,820px);max-height:min(90dvh,820px)}.staff-editor-dialog.is-create{width:min(720px,calc(100vw - 28px))}.staff-editor-dialog>.management-dialog-shell{max-height:min(90vh,820px);max-height:min(90dvh,820px);grid-template-rows:auto auto minmax(0,1fr) auto}.staff-editor-dialog.is-create>.management-dialog-shell{grid-template-rows:auto minmax(0,1fr) auto}.staff-editor-tabs{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:4px;padding:8px 18px;border-bottom:1px solid var(--line);background:var(--surface-subtle)}.staff-editor-tabs.is-1-tabs{grid-template-columns:minmax(0,1fr)}.staff-editor-tabs.is-2-tabs{grid-template-columns:repeat(2,minmax(0,1fr))}.staff-editor-tabs button{display:inline-flex;min-width:0;min-height:38px;align-items:center;justify-content:center;gap:7px;padding:0 12px;border:1px solid transparent;border-radius:6px;background:transparent;color:var(--text-secondary);font-size:10px;font-weight:750}.staff-editor-tabs button svg{width:15px;height:15px}.staff-editor-tabs button:hover:not(:disabled){border-color:var(--line-strong);background:var(--surface);color:var(--brand-strong)}.staff-editor-tabs button:focus-visible{outline:3px solid var(--focus);outline-offset:1px}.staff-editor-tabs button.is-active{border-color:#c7d2fe;background:var(--surface);color:var(--brand-strong);box-shadow:0 1px 2px #25242212}.staff-editor-tabs button:disabled{opacity:.45}.staff-page-access-panel,.staff-security-panel{display:grid;align-content:start;gap:13px}.staff-data-scope-section,.staff-page-permission-section{display:grid;gap:10px;padding:12px;border:1px solid var(--line);border-radius:8px;background:var(--surface-subtle)}.staff-data-scope-section>h3,.staff-page-permission-section>h3{margin:0;color:var(--text);font-size:12px;font-weight:800}.staff-data-scope-branches{min-width:0;margin:0;padding:0;border:0}.staff-data-scope-branches>legend{margin-bottom:7px;color:var(--text-secondary);font-size:10px;font-weight:750}.staff-data-scope-branches>div{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:6px}.staff-data-scope-branches label{display:flex;min-width:0;min-height:38px;align-items:center;gap:7px;padding:8px 9px;border:1px solid var(--line);border-radius:6px;background:var(--surface);color:var(--text-secondary);cursor:pointer}.staff-data-scope-branches label.is-selected{border-color:#c7d2fe;background:var(--brand-soft);color:var(--brand-strong)}.staff-data-scope-branches input{width:15px;height:15px;margin:0;accent-color:var(--brand)}.staff-data-scope-branches span{overflow:hidden;font-size:9px;font-weight:700;text-overflow:ellipsis;white-space:nowrap}.staff-access-mode,.staff-access-groups fieldset{min-width:0;margin:0;padding:0;border:0}.staff-access-mode>legend,.staff-access-groups legend{margin-bottom:7px;color:var(--text-secondary);font-size:10px;font-weight:750}.staff-access-mode>div{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.staff-access-mode label{display:flex;min-width:0;min-height:48px;align-items:center;gap:9px;padding:11px;border:1px solid var(--line-strong);border-radius:7px;background:var(--surface);cursor:pointer}.staff-access-mode label.is-selected{border-color:#a5b4fc;background:var(--brand-soft);box-shadow:0 0 0 2px #4f46e512}.staff-access-mode input{flex:0 0 auto;width:16px;height:16px;margin:0;accent-color:var(--brand)}.staff-access-mode label>span{display:grid;min-width:0;gap:3px}.staff-access-mode strong{color:var(--text);font-size:10px}.staff-access-mode small{color:var(--muted);font-size:9px;line-height:1.4}.staff-management-warning{display:flex;align-items:flex-start;gap:9px;padding:10px 11px;border:1px solid #bfdbfe;border-radius:7px;background:#eff6ff;color:#1e3a8a}.staff-management-warning>svg{flex:0 0 auto;width:16px;height:16px;margin-top:1px}.staff-management-warning p{margin:0}.staff-management-warning strong{font-size:10px}.staff-management-warning p{margin-top:2px;font-size:9px;line-height:1.5}.staff-access-groups{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:9px}.staff-access-groups fieldset{padding:10px;border:1px solid var(--line);border-radius:7px;background:var(--surface-subtle)}.staff-access-groups legend{display:grid;width:100%;gap:2px;padding:0 4px}.staff-access-groups fieldset>div{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:5px}.staff-access-groups label{display:grid;grid-template-columns:auto minmax(0,1fr);min-width:0;min-height:38px;align-items:center;gap:7px;padding:7px 8px;border:1px solid var(--line);border-radius:5px;background:var(--surface);color:var(--text-secondary);cursor:pointer}.staff-access-groups label.is-selected{border-color:#c7d2fe;background:var(--brand-soft);color:var(--brand-strong)}.staff-access-groups label.is-unavailable{cursor:not-allowed;opacity:.55}.staff-access-groups input{width:15px;height:15px;margin:0;accent-color:var(--brand)}.staff-access-groups label>span{overflow:hidden;font-size:9px;font-weight:700;text-overflow:ellipsis;white-space:nowrap}.staff-access-groups label>small{grid-column:2;color:var(--muted);font-size:7px}.staff-management-warning{border-color:#f1d58a;background:#fff9e8;color:#795b16}.staff-access-count{margin:-3px 0 0;color:var(--muted);font-size:9px;text-align:right}.staff-account-provision-state{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:10px 12px;border:1px solid var(--line);border-radius:7px;background:var(--surface-subtle)}.staff-account-provision-state>div{display:grid;min-width:0;gap:2px}.staff-account-provision-state strong{overflow:hidden;color:var(--text);font-size:11px;text-overflow:ellipsis;white-space:nowrap}.staff-account-provision-state span{color:var(--muted);font-size:9px}.staff-account-provision-fields{padding-bottom:2px}.staff-security-value{display:block;margin-top:2px;color:var(--muted);font-size:9px;line-height:1.4}.staff-security-value strong{color:var(--text-secondary)}.staff-login-id-form{padding:13px;border-top:1px solid var(--line);background:var(--surface)}.management-confirm-field{display:flex;min-height:42px;align-items:flex-start;gap:8px;padding:9px 10px;border:1px solid #f1d58a;border-radius:6px;background:#fff9e8;color:#71551e;font-size:9px;line-height:1.45}.management-confirm-field input{flex:0 0 auto;width:16px;height:16px;margin:1px 0 0;accent-color:var(--brand)}.staff-account-status-card{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:11px 12px;border:1px solid var(--line-strong);border-radius:8px;background:var(--surface-subtle)}.staff-account-status-card>div{display:flex;min-width:0;align-items:center;gap:9px}.staff-account-status-card>div>svg{flex:0 0 auto;width:17px;height:17px;color:var(--brand-strong)}.staff-account-status-card>div>div{display:grid;min-width:0;gap:2px}.staff-account-status-card strong{color:var(--text);font-size:10px}.staff-account-status-card span{color:var(--muted);font-size:9px}.staff-account-status-card .secondary-button{flex:0 0 auto}.management-security-card{overflow:hidden;border:1px solid var(--line-strong);border-radius:8px;background:var(--surface-subtle)}.management-security-card.is-open{border-color:#c9c4ff;background:#fbfaff;box-shadow:0 0 0 3px #4f46e512}.management-security-card>header{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px}.management-security-heading,.management-security-actions,.management-security-submit-row,.management-security-policy,.management-security-success{display:flex;align-items:center}.management-security-heading{min-width:0;gap:9px}.management-security-icon{display:grid;flex:0 0 auto;width:32px;height:32px;place-items:center;border-radius:8px;background:var(--brand-soft);color:var(--brand-strong)}.management-security-icon svg{width:17px;height:17px}.management-security-heading h3,.management-security-heading p,.management-security-policy p,.management-security-success{margin:0}.management-security-heading h3{color:var(--text);font-size:12px}.management-security-heading p{margin-top:2px;color:var(--muted);font-size:9px;line-height:1.4}.management-security-actions{flex:0 0 auto;gap:7px}.management-security-form{padding:13px;border-top:1px solid var(--line);background:var(--surface)}.management-security-policy{grid-column:1 / -1;align-items:flex-start;gap:7px;padding:9px 10px;border:1px solid #e6dfc9;border-radius:6px;background:#fffaf0;color:#71551e;font-size:9px;line-height:1.45}.management-security-policy svg,.management-security-success svg{flex:0 0 auto;width:14px;height:14px}.management-security-success{grid-column:1 / -1;gap:7px;padding:9px 10px;border:1px solid #a7e3ca;border-radius:6px;background:var(--success-soft);color:var(--success);font-size:10px;line-height:1.45}.management-security-submit-row{grid-column:1 / -1;justify-content:flex-end}.management-security-submit{display:inline-flex;min-height:36px;align-items:center;justify-content:center;gap:7px;padding:0 13px;border:1px solid #b45309;border-radius:6px;background:#fff7ed;color:#9a3412;font-size:10px;font-weight:750}.management-security-submit:hover:not(:disabled){background:#ffedd5}.management-security-submit:focus-visible{outline:3px solid var(--focus);outline-offset:2px}.management-security-submit svg{width:15px;height:15px}.management-dialog-header{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;padding:16px 18px;border-bottom:1px solid var(--line)}.management-dialog-header>div{min-width:0}.management-dialog-header h2,.management-dialog-header p{margin:0}.management-dialog-header h2{color:var(--text);font-size:17px}.management-dialog-header p{margin-top:4px;color:var(--muted);font-size:10px;line-height:1.5}.management-dialog-body{min-width:0;min-height:0;padding:16px 18px;overflow-y:auto;overscroll-behavior:contain}.management-form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:13px}.management-field{display:grid;align-content:start;gap:5px;min-width:0}.management-field-wide{grid-column:1 / -1}.management-field>span,.management-grade-fieldset>legend{color:var(--text-secondary);font-size:10px;font-weight:700}.management-field>span b,.management-grade-fieldset>legend b{color:var(--danger)}.management-field>span small{color:var(--muted);font-size:9px;font-weight:500}.management-field input,.management-field select,.management-field textarea{width:100%;min-width:0;height:38px;padding:0 9px;border:1px solid var(--line-strong);border-radius:6px;outline:0;background:var(--surface);color:var(--text);font-size:11px}.management-field textarea{height:auto;min-height:88px;padding:9px;resize:vertical;line-height:1.5}.management-field input:focus,.management-field select:focus,.management-field textarea:focus{border-color:var(--brand);box-shadow:0 0 0 3px var(--focus)}.management-field input[aria-invalid=true],.management-field select[aria-invalid=true],.management-field textarea[aria-invalid=true]{border-color:var(--danger)}.management-field-error{color:var(--danger);font-size:9px;font-weight:650;line-height:1.4}.management-check-field{display:flex;min-height:36px;align-items:center;gap:8px;color:var(--text-secondary);font-size:10px;font-weight:700}.management-check-field input{width:16px;height:16px;accent-color:var(--brand)}.management-field-help{grid-column:1 / -1;margin:-5px 0 0;color:var(--muted);font-size:9px;line-height:1.45}.management-form-error{grid-column:1 / -1;margin:0;padding:8px 10px;border:1px solid #fecaca;border-radius:6px;background:var(--danger-soft);color:var(--danger);font-size:10px;line-height:1.45}.management-dialog-footer{display:flex;align-items:center;justify-content:flex-end;gap:8px;min-height:58px;padding:10px 18px max(10px,env(safe-area-inset-bottom));border-top:1px solid var(--line);background:var(--surface-subtle)}.management-grade-fieldset{min-width:0;margin:0;padding:0;border:0}.management-grade-fieldset>legend{margin-bottom:7px}.management-grade-fieldset>.management-grade-intro{margin:0 0 9px;color:var(--text-secondary);font-size:9px;line-height:1.45}.management-grade-presets{display:flex;flex-wrap:wrap;gap:5px;margin-bottom:10px}.management-grade-presets button{min-height:29px;padding:0 8px;border:1px solid var(--line-strong);border-radius:5px;background:var(--surface);color:var(--text-secondary);font-size:9px;font-weight:700}.management-grade-presets button:hover{border-color:var(--brand);color:var(--brand-strong)}.management-grade-groups{display:grid;gap:8px}.management-grade-groups>div{display:grid;grid-template-columns:62px minmax(0,1fr);align-items:start;gap:8px}.management-grade-groups>div>strong{padding-top:8px;color:var(--muted);font-size:9px}.management-grade-groups>div>div{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:5px}.management-grade-groups label{display:grid;min-width:0;min-height:43px;padding:5px 4px;place-items:center;border:1px solid var(--line);border-radius:5px;background:var(--surface);cursor:pointer}.management-grade-groups label.is-selected{border-color:#c7d2fe;background:var(--brand-soft);color:var(--brand-strong)}.management-grade-groups input{position:absolute;width:1px;height:1px;opacity:0}.management-grade-groups label:focus-within{outline:3px solid var(--focus);outline-offset:1px}.management-grade-groups span{overflow:hidden;max-width:100%;font-size:10px;font-weight:750;text-overflow:ellipsis;white-space:nowrap}.management-grade-groups small{color:var(--muted);font-size:8px}.management-grade-fieldset>p{margin:7px 0 0;color:var(--muted);font-size:9px}@media(max-width:699px){.settings-directory-page .page-heading,.organization-directory-page .page-heading{flex-wrap:wrap}.settings-directory-page .page-actions,.organization-directory-page .page-actions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));width:100%}.settings-directory-page .page-actions>button,.organization-directory-page .page-actions>button{width:100%;min-width:0;min-height:42px}.management-filter-segment{width:100%}.management-filter-segment button{min-height:38px}.management-success-banner{padding-inline:13px}.management-hub-grid{grid-template-columns:minmax(0,1fr);gap:9px;padding:9px}.management-hub-card>header{min-height:0;padding:14px 13px 12px}.management-hub-link{min-height:64px;padding-inline:13px}.pending-school-requests>header,.pending-school-requests ul{padding-inline:13px}.pending-school-requests li{grid-template-columns:minmax(0,1fr) auto}.pending-school-requests li>div:first-child{grid-column:1 / -1}.pending-school-request-actions{grid-column:1 / -1;width:100%}.pending-school-request-actions .secondary-button{min-height:38px}.pending-school-request-actions select{flex:1 1 auto;width:100%;min-width:0;height:38px}.pending-school-request-actions>div:last-child .secondary-button:first-child{flex:1 1 auto}.management-inline-error{margin-inline:13px}.management-directory-list>li,.management-directory-list.compact>li{grid-template-columns:minmax(0,1fr) auto;gap:8px 12px;min-height:0;padding:12px 13px}.management-directory-main{grid-column:1 / -1}.management-directory-meta,.management-directory-list.compact .management-directory-meta.is-wide{grid-column:1}.management-directory-actions,.management-role-list{grid-column:2;justify-self:end}.management-directory-actions .secondary-button{min-height:38px}.school-class-guidance,.school-class-controls,.school-class-content,.school-class-entry{padding-inline:10px}.school-class-guidance{grid-template-columns:minmax(0,1fr);gap:8px}.school-class-guidance>p{padding:7px 9px;border-top:1px solid var(--line);border-left:0}.school-class-controls,.school-class-create-form,.school-academic-year-empty>form{grid-template-columns:minmax(0,1fr)}.school-class-form-actions{justify-content:stretch}.school-class-form-actions .primary-button,.school-class-form-actions .secondary-button{flex:1 1 0}.school-class-list{grid-template-columns:minmax(0,1fr)}.school-class-grade-picker button{flex:1 1 54px;min-height:40px}.school-class-year-context,.school-class-year-context select,.school-class-create-form input,.school-class-create-form .primary-button,.school-academic-year-empty input,.school-academic-year-empty .primary-button{min-height:42px}.school-grades-disclosure>summary{align-items:flex-start;flex-direction:column;gap:5px}.branch-directory-row{grid-template-areas:"main main" "meta actions";grid-template-columns:minmax(0,1fr) auto}.branch-directory-row>.management-directory-main,.branch-directory-row>.management-directory-meta,.branch-directory-row>.branch-directory-actions{grid-column:auto}.staff-directory-row{grid-template-areas:"person status" "scope scope" "access access" "actions actions";grid-template-columns:minmax(0,1fr) auto}.staff-directory-row.has-account-access{grid-template-areas:"person status" "scope scope" "account account" "access access" "actions actions";grid-template-columns:minmax(0,1fr) auto}.staff-directory-row>.staff-directory-person,.staff-directory-row>.staff-directory-scope,.staff-directory-row>.staff-directory-account,.staff-directory-row>.staff-directory-access,.staff-directory-row>.staff-directory-status,.staff-directory-row>.staff-directory-actions{grid-column:auto}.staff-directory-row>.staff-directory-actions{width:100%;justify-self:stretch}.staff-directory-row>.staff-directory-actions .directory-mini-action{flex:1 1 128px;min-height:40px}.branch-directory-actions .directory-mini-action{min-height:44px;padding-inline:12px}.organization-directory-sections{gap:9px;padding:9px}.management-section>header{padding-inline:12px}.management-dialog{width:calc(100vw - 18px);max-height:calc(100dvh - 18px)}.management-dialog>form,.management-dialog>.management-dialog-shell{max-height:calc(100dvh - 18px)}.staff-editor-dialog,.staff-editor-dialog>.management-dialog-shell{max-height:calc(100dvh - 18px)}.staff-editor-tabs{gap:2px;padding-inline:9px}.staff-editor-tabs button{min-height:42px;padding-inline:6px;font-size:9px}.management-dialog-header,.management-dialog-body,.management-dialog-footer{padding-inline:13px}.preview-purge-impact{grid-template-columns:minmax(0,1fr)}.preview-purge-dialog .management-dialog-footer>button{flex:1 1 0;min-width:0}.management-form-grid{grid-template-columns:minmax(0,1fr)}.management-field-wide,.management-field-help,.management-form-error,.management-security-policy,.management-security-success,.management-security-submit-row{grid-column:1}.management-security-card>header{align-items:stretch;flex-direction:column}.staff-access-mode>div,.staff-access-groups,.staff-data-scope-branches>div{grid-template-columns:minmax(0,1fr)}.staff-access-groups fieldset>div{grid-template-columns:repeat(2,minmax(0,1fr))}.staff-account-status-card{align-items:stretch;flex-direction:column}.staff-account-provision-state{align-items:flex-start}.staff-account-status-card .secondary-button{width:100%}.management-security-actions{justify-content:space-between}.management-field input,.management-field select{height:44px}.management-grade-groups>div{grid-template-columns:minmax(0,1fr);gap:4px}.management-grade-groups>div>strong{padding-top:0}.management-grade-groups>div>div{grid-template-columns:repeat(3,minmax(0,1fr))}.management-grade-groups label{min-height:46px}.school-combobox-control{height:44px}.school-combobox-control input{height:42px}.school-combobox-list{position:fixed;top:auto;right:9px;bottom:max(9px,env(safe-area-inset-bottom));left:9px;z-index:80;width:auto;max-height:min(58dvh,460px);padding:7px;border-radius:9px}.school-combobox-option{min-height:52px}}@media(min-width:700px)and (max-width:1100px){.management-hub-grid{grid-template-columns:minmax(0,1fr)}.staff-directory-row{grid-template-areas:"person scope status actions" "access access status actions";grid-template-columns:minmax(120px,.9fr) minmax(170px,1.2fr) auto auto;gap:7px 12px!important;min-height:76px!important}.staff-directory-row.has-account-access{grid-template-areas:"person scope status actions" "account access status actions";grid-template-columns:minmax(120px,.9fr) minmax(170px,1.2fr) auto auto}.staff-directory-row>.staff-directory-actions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));align-self:center;gap:5px}.staff-directory-row>.staff-directory-actions .directory-mini-action{min-height:30px}.staff-editor-dialog{width:calc(100vw - 24px)}.staff-access-groups{grid-template-columns:repeat(2,minmax(0,1fr))}.staff-data-scope-branches>div{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:620px){.new-student-success{width:calc(100% - 18px);margin:9px auto}.new-student-success>header{padding:16px 13px}.new-student-success-summary{grid-template-columns:minmax(0,1fr)}.new-student-success-summary>div{padding:11px 13px;border-right:0;border-bottom:1px solid var(--line)}.new-student-success-summary>div:last-child{border-bottom:0}.new-student-success-invoices{padding-inline:13px}.new-student-success-actions{display:grid;padding:13px}.new-student-success-actions a{width:100%;justify-content:center}}.student-detail-summary{display:grid;flex:0 0 auto;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px 34px;padding:16px 20px;border-bottom:1px solid var(--line);background:var(--surface)}.student-detail-summary article{display:grid;min-width:0;min-height:28px;grid-template-columns:18px auto minmax(0,1fr);align-items:center;gap:8px;padding:0;border:0}.student-detail-summary article>svg{width:17px;height:17px;color:var(--brand)}.student-detail-summary span{color:var(--muted);font-size:12px;font-weight:600;line-height:1.35;white-space:nowrap}.student-detail-summary strong{min-width:0;overflow:hidden;color:var(--text);font-size:14px;font-weight:650;line-height:1.4;text-overflow:ellipsis;white-space:nowrap}.student-detail-tab-panel a{color:var(--brand-strong);text-decoration:none}.student-detail-tab-panel a:hover{text-decoration:underline}.student-detail-summary-billing.is-partial>svg,.student-detail-summary-billing.is-unpaid>svg,.student-detail-summary-billing.is-partial>strong,.student-detail-summary-billing.is-unpaid>strong{color:#b45309}.student-detail-summary-billing.is-paid>svg,.student-detail-summary-billing.is-paid>strong{color:var(--success)}.student-missing-value{color:#a16207!important;font-weight:750}.student-detail-tabs-scroll{flex:0 0 auto;margin:16px 16px 0;padding:0 22px;overflow-x:auto;border:1px solid var(--line);border-radius:12px 12px 0 0;background:var(--surface);scrollbar-width:thin}.student-detail-tabs-scroll+.student-detail-body{min-width:0;margin:0;padding:0 16px 16px;border:0;border-radius:0;background:var(--surface-subtle);scrollbar-gutter:stable}.student-detail-tab-surface{min-width:0;border:1px solid var(--line);border-top:0;border-radius:0 0 12px 12px;background:var(--surface)}.student-detail-tab-surface.is-purge-open{display:none}.student-detail-tabs{display:flex;min-width:max-content;gap:12px;padding:0;border:0;background:var(--surface)}.student-detail-tabs button{display:inline-flex;min-height:52px;align-items:center;justify-content:center;padding:0 10px;border:0;border-bottom:2px solid transparent;border-radius:0;background:transparent;color:var(--text-secondary);font:inherit;font-size:14px;font-weight:650;white-space:nowrap;cursor:pointer}.student-detail-tabs button[aria-selected=true]{border-bottom-color:var(--brand);background:transparent;color:var(--text);box-shadow:none}.student-detail-tabs button:disabled{cursor:not-allowed;opacity:.62}.student-detail-tabs button:focus-visible,.student-detail-tab-panel:focus-visible{outline:3px solid var(--focus);outline-offset:2px}.student-detail-tab-panel>.student-detail-tab-content{display:none}.student-detail-tab-panel.is-overview>.student-detail-tab-content--overview,.student-detail-tab-panel.is-guardians>.student-detail-tab-content--guardians,.student-detail-tab-panel.is-enrollment>.student-detail-tab-content--enrollment,.student-detail-tab-panel.is-billing>.student-detail-tab-content--billing,.student-detail-tab-panel.is-documents>.student-detail-tab-content--documents{display:block}.student-detail-tab-panel.is-purge-open>.student-detail-tab-content{display:none}.student-detail-tab-panel.is-profile-editing>.student-detail-tab-content--overview:not(.student-detail-profile-section){display:none}.student-detail-tab-panel.is-dietary-editing>.student-detail-tab-content--overview:not(.student-overview-care-section),.student-detail-tab-panel.is-note-editing>.student-detail-tab-content--overview:not(.student-detail-notes-section),.student-detail-tab-panel.is-care-editing-guardians>.student-detail-tab-content--guardians:not(.student-guardians-family-section),.student-detail-tab-panel.is-care-editing-pickup>.student-detail-tab-content--guardians:not(.student-guardians-pickup-section){display:none}.student-detail-tab-panel .student-detail-section{padding:16px 20px}.student-detail-tab-panel .student-detail-section-heading{margin-bottom:12px}.student-detail-tab-panel .student-detail-section-heading svg{width:18px;height:18px;flex:0 0 auto}.student-detail-tab-panel .student-detail-section-heading h3{font-size:15px;font-weight:700;line-height:1.35}.student-detail-tab-panel .student-detail-grid{gap:16px 22px}.student-detail-tab-panel .student-detail-grid dt{margin-bottom:5px;color:var(--muted);font-size:12px;font-weight:600;line-height:1.35}.student-detail-tab-panel .student-detail-grid dd{color:var(--text);font-size:14px;font-weight:550;line-height:1.5}.student-detail-tab-panel .student-detail-list-row{min-height:68px;padding-block:14px}.student-detail-tab-panel .student-detail-list-row strong,.student-detail-tab-panel .student-detail-list-row span{font-size:14px}.student-detail-tab-panel .student-detail-list-row small,.student-detail-tab-panel .student-note-row time{font-size:12px}.student-detail-tab-panel .student-note-row strong,.student-detail-tab-panel .student-note-row p,.student-detail-tab-panel .student-detail-empty{font-size:14px}.student-detail-tab-panel .student-detail-empty{padding:12px 14px;border:1px dashed var(--line-strong);border-radius:8px;background:var(--surface-subtle)}.student-source-document-list{display:grid;gap:10px}.student-source-document-row{display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:12px;align-items:center;padding:12px 14px;border:1px solid var(--line);border-radius:8px;background:var(--surface)}.student-source-document-row>svg{width:20px;height:20px;color:var(--brand)}.student-source-document-row>div{min-width:0}.student-source-document-row strong,.student-source-document-row span{display:block}.student-source-document-row strong{overflow:hidden;font-size:14px;text-overflow:ellipsis;white-space:nowrap}.student-source-document-row span{margin-top:3px;color:var(--text-secondary);font-size:12px}.student-source-document-row .secondary-button,.student-source-document-error .secondary-button{min-height:40px}.student-source-document-error{display:flex;gap:12px;align-items:center;justify-content:space-between;padding:12px 14px;border:1px solid var(--danger-border, #f0b9b9);border-radius:8px;color:var(--danger-text, #9c2e2e)}.student-source-document-view-error{margin:10px 0 0;color:var(--danger-text, #9c2e2e);font-size:13px}.student-detail-header-actions .student-detail-edit-button,.student-detail-header-actions .student-detail-more-button,.student-detail-close,.student-detail-section-action,.student-detail-tab-panel .student-enrollment-change-button{min-height:44px}.student-detail-more-actions{position:relative}.student-detail-more-button{width:44px;justify-content:center;gap:0;padding-inline:0;white-space:nowrap}.student-detail-more-button svg,.student-detail-section-action svg{width:16px;height:16px}.student-detail-more-menu{position:absolute;z-index:20;top:calc(100% + 6px);right:0;width:max-content;min-width:210px;padding:6px;border:1px solid var(--line-strong);border-radius:9px;background:var(--surface);box-shadow:0 16px 36px #25242229}.student-detail-more-menu button{display:flex;width:100%;min-height:42px;align-items:center;gap:9px;padding:8px 10px;border:0;border-radius:7px;background:transparent;color:var(--danger);font:inherit;font-size:13px;font-weight:750;cursor:pointer}.student-detail-more-menu button:hover{background:var(--danger-soft)}.student-detail-more-menu button:focus-visible{outline:3px solid var(--focus);outline-offset:1px}.student-detail-more-menu svg{width:16px;height:16px}.student-detail-section-action{margin-left:auto;gap:7px;padding-inline:12px}.student-detail-close{width:44px;height:44px}.student-current-academic-grid{display:grid;gap:14px}.student-detail-tab-panel .student-enrollment-record-section{--student-enrollment-accent: var(--brand);padding:0;border-bottom:0}.student-enrollment-card-section{padding:16px 20px}.student-enrollment-card-heading{display:flex;min-width:0;align-items:center;gap:7px;margin-bottom:12px}.student-enrollment-record-section>.student-enrollment-card-section:first-child .student-enrollment-card-heading{position:relative;min-height:20px;padding-right:76px;margin-bottom:4px}.student-enrollment-record-section>.student-enrollment-card-section:first-child .student-enrollment-card-action{position:absolute;top:0;right:0;margin-left:0}.student-enrollment-record-section>.student-enrollment-card-section:first-child .student-enrollment-current-academic-topline{padding-right:72px}.student-enrollment-card-heading>svg{width:18px;height:18px;flex:0 0 auto;color:var(--student-enrollment-accent)}.student-enrollment-card-heading h3{min-width:0;margin:0;color:var(--text);font-size:15px;font-weight:700;line-height:1.35}.student-enrollment-card-action{min-height:36px;margin-left:auto;padding-inline:10px;font-size:10px;font-weight:500;white-space:nowrap}.student-enrollment-card-action svg{width:13px;height:13px}.student-enrollment-card-body{min-width:0;padding-left:26px}.student-enrollment-current-academic-topline{display:flex;min-width:0;align-items:flex-start;justify-content:space-between;gap:16px;margin-bottom:4px}.student-enrollment-current-academic-topline>p{min-width:0;margin:0;color:var(--text);font-size:16px;font-weight:650;line-height:1.4;overflow-wrap:anywhere}.student-enrollment-inline-details{display:flex;flex-wrap:wrap;gap:4px 24px;margin:0 0 4px}.student-enrollment-inline-details:last-child{margin-bottom:0}.student-enrollment-inline-details>div{display:inline-flex;min-width:0;align-items:baseline;gap:6px}.student-enrollment-inline-details dt,.student-enrollment-service-grid dt{margin:0;color:var(--muted);font-size:12px;font-weight:600;line-height:1.35}.student-enrollment-inline-details dd,.student-enrollment-service-grid dd{min-width:0;margin:0;color:var(--text);font-size:14px;font-weight:550;line-height:1.5;overflow-wrap:anywhere}.student-enrollment-service-list{display:grid}.student-enrollment-service-row{display:grid;grid-template-areas:"details actions" "period actions";grid-template-columns:minmax(0,1fr) auto;align-items:start;column-gap:20px;min-width:0}.student-enrollment-service-row+.student-enrollment-service-row{margin-top:16px;padding-top:16px;border-top:.5px solid var(--line)}.student-enrollment-service-row:has(>.student-enrollment-scheduled-heading){grid-template-areas:"heading heading" "details actions" "period actions"}.student-enrollment-scheduled-heading{grid-area:heading}.student-enrollment-service-actions{grid-area:actions;display:flex;align-items:center;justify-content:flex-end;gap:8px;margin:0}.student-enrollment-service-actions .status-badge{flex:0 0 auto;font-size:12px;font-weight:650}.student-detail-tab-panel .student-enrollment-service-actions .student-enrollment-change-button{min-height:36px;padding-inline:10px;font-size:10px;font-weight:500}.student-enrollment-service-grid{grid-area:details;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px 24px;margin:0}.student-enrollment-service-grid>div{min-width:0}.student-enrollment-service-grid dd{margin-top:1px}.student-enrollment-service-period{grid-area:period;margin:8px 0 0;color:var(--muted);font-size:12px;font-weight:500;line-height:1.4}.student-enrollment-service-history{margin-top:14px;padding-top:0;border-top:0}.student-enrollment-service-history-toggle{display:inline-flex;min-height:36px;align-items:center;justify-content:center;gap:5px;padding:0 10px;border:1px solid var(--line-strong);border-radius:999px;background:var(--surface);color:var(--text-secondary);font:inherit;font-size:10px;font-weight:500;cursor:pointer}.student-enrollment-service-history-toggle svg{width:13px;height:13px;transition:transform .12s ease}.student-enrollment-service-history-toggle[aria-expanded=true] svg:last-child{transform:rotate(90deg)}.student-enrollment-service-history-toggle:hover{border-color:var(--brand);color:var(--brand-strong)}.student-enrollment-service-history-toggle:focus-visible{outline:3px solid var(--focus);outline-offset:2px}.student-enrollment-service-history-timeline{position:relative;display:grid;margin-top:14px;padding-left:24px}.student-enrollment-service-history-timeline:before{position:absolute;top:8px;bottom:8px;left:4px;width:1px;background:var(--line);content:""}.student-enrollment-service-history-item{position:relative;min-width:0;padding-bottom:16px}.student-enrollment-service-history-item:last-child{padding-bottom:0}.student-enrollment-service-history-item:before{position:absolute;top:4px;left:-24px;width:9px;height:9px;border:2px solid var(--surface);border-radius:50%;background:var(--brand);content:""}.student-enrollment-service-history-topline{display:flex;min-width:0;align-items:baseline;justify-content:space-between;gap:12px;margin-bottom:2px}.student-enrollment-service-history-topline time,.student-enrollment-service-history-topline span,.student-enrollment-service-history-item>p{margin:0;color:var(--muted);font-size:12px;font-weight:500;line-height:1.4}.student-enrollment-service-history-item>strong{display:block;color:var(--text-secondary);font-size:14px;font-weight:550;line-height:1.45;overflow-wrap:anywhere}.student-enrollment-service-history-item>p{margin-top:2px;overflow-wrap:anywhere}.student-school-history-timeline{position:relative;padding-left:24px}.student-school-history-timeline:before{position:absolute;top:8px;bottom:8px;left:4px;width:1px;background:var(--line);content:""}.student-school-history-item{position:relative;min-width:0;padding-bottom:16px}.student-school-history-item:last-child{padding-bottom:0}.student-school-history-item:before{position:absolute;top:4px;left:-24px;width:9px;height:9px;border:2px solid var(--surface);border-radius:50%;background:var(--muted);content:""}.student-school-history-item.is-current:before{background:var(--student-enrollment-accent)}.student-school-history-topline{display:flex;min-width:0;align-items:baseline;justify-content:space-between;gap:12px;margin-bottom:2px}.student-school-history-topline time,.student-school-history-topline span,.student-school-history-item>p{color:var(--muted);font-size:12px;font-weight:500;line-height:1.4}.student-school-history-topline span{flex:0 0 auto;color:var(--student-enrollment-accent);font-weight:500}.student-school-history-item>strong{display:block;color:var(--text-secondary);font-size:14px;font-weight:550;line-height:1.45;overflow-wrap:anywhere}.student-school-history-item.is-current>strong{color:var(--text);font-weight:650}.student-school-history-item>p{margin:1px 0 0;overflow-wrap:anywhere}.student-billing-history-heading{align-items:flex-start!important}.student-billing-history-heading>div{display:grid;gap:3px}.student-billing-history-heading p{margin:0;color:var(--muted);font-size:12px;line-height:1.45}.student-billing-legend{display:flex;flex-wrap:wrap;gap:8px 14px;margin-bottom:12px}.student-billing-legend>span{display:inline-flex;align-items:center;gap:6px;color:var(--text-secondary);font-size:12px;font-weight:650}.student-billing-legend i,.student-billing-month i{display:block;width:10px;height:10px;border:1px solid var(--line-strong);border-radius:3px;background:var(--surface)}.student-billing-legend .is-paid i,.student-billing-month.is-paid i{border-color:#34d399;background:#10b981}.student-billing-legend .is-partial i,.student-billing-month.is-partial i{border-color:#f59e0b;background:#fbbf24}.student-billing-legend .is-unpaid i,.student-billing-month.is-unpaid i{border-color:#9ca3af;background:#9ca3af}.student-billing-legend .is-refunded i,.student-billing-month.is-refunded i{border-color:#64748b;background:#64748b}.student-billing-matrix-scroll{overflow-x:auto;padding-bottom:4px;scrollbar-width:thin}.student-billing-matrix{width:100%;min-width:860px;border-spacing:6px;table-layout:fixed}.student-billing-matrix th{color:var(--muted);font-size:11px;font-weight:750;text-align:center}.student-billing-matrix thead th:first-child,.student-billing-matrix tbody th{width:66px;text-align:left}.student-billing-matrix td{padding:0}.student-billing-month{display:grid;width:100%;min-width:54px;min-height:52px;place-items:center;align-content:center;gap:5px;padding:5px 3px;border:1px solid var(--line);border-radius:8px;background:var(--surface);color:var(--text-secondary);font:inherit;cursor:pointer}.student-billing-month span{font-size:10px;font-weight:750;line-height:1;white-space:nowrap}.student-billing-month.is-paid{border-color:#a7f3d0;background:#ecfdf5;color:#047857}.student-billing-month.is-partial{border-color:#fcd34d;background:#fffbeb;color:#a16207}.student-billing-month.is-unpaid,.student-billing-month.is-refunded{border-color:#d1d5db;background:#f3f4f6;color:#4b5563}.student-billing-month.is-empty{color:#c5c3bf;cursor:default}.student-billing-month.is-selected{border-color:var(--brand);box-shadow:0 0 0 3px var(--focus)}.student-billing-month:focus-visible,.student-billing-event:focus-visible{outline:3px solid var(--focus);outline-offset:2px}.student-billing-event{display:grid;width:100%;min-height:58px;grid-template-columns:minmax(0,1fr) auto auto;align-items:center;gap:12px;margin-top:14px;padding:12px 14px;border:1px solid var(--line-strong);border-radius:9px;background:var(--surface);color:var(--text);font:inherit;text-align:left;cursor:pointer}.student-billing-event-group{display:grid;gap:7px;margin-top:14px}.student-billing-event-group .student-billing-event{margin-top:0}.student-billing-selection-note{margin:0;color:var(--muted);font-size:12px;line-height:1.45}.student-billing-event>span{font-size:14px;font-weight:750}.student-billing-event>strong{padding:4px 8px;border-radius:999px;background:#f3f4f6;color:#4b5563;font-size:12px}.student-billing-event.is-paid>strong{background:#ecfdf5;color:#047857}.student-billing-event.is-partial>strong{background:#fffbeb;color:#a16207}.student-billing-event svg{width:18px;height:18px;color:var(--muted)}.student-billing-event:hover{border-color:var(--brand);background:var(--brand-soft)}.student-billing-empty-month{margin:14px 0 0;padding:12px 14px;border:1px dashed var(--line-strong);border-radius:8px;background:var(--surface-subtle);color:var(--muted);font-size:14px}.student-detail-tab-panel .student-enrollment-change-button{padding:0 13px;font-size:12px}.student-overview-contact-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px 34px;margin:0;padding-left:26px}.student-overview-contact-grid>div{min-width:0}.student-overview-contact-grid dt{margin:0 0 3px;color:var(--muted);font-size:12px;font-weight:600;line-height:1.35}.student-overview-contact-grid dd{min-width:0;margin:0;color:var(--text);font-size:14px;font-weight:550;line-height:1.45;overflow-wrap:anywhere}.student-overview-contact-grid .student-missing-value{color:var(--muted)!important;font-weight:550}.student-overview-contact-grid>.student-detail-grid-wide{grid-column:1 / -1}.student-overview-personal-grid dd small{display:block;margin-top:3px;font-size:11px}.student-detail-tab-panel .student-overview-care-grid{padding-left:26px}.student-overview-care-item dd{display:grid;gap:2px;color:var(--text)!important;font-weight:550}.student-overview-care-item dd strong{font-weight:650}.student-overview-care-item dd small{color:var(--muted);font-size:12px;font-weight:500}.student-overview-care-item.is-included dd strong{color:var(--success)}.student-overview-care-item.is-not_billed dd strong,.student-overview-care-item.is-needs_review dd strong{color:var(--warning)}.student-overview-care-item.is-danger dd{color:var(--danger)!important}.student-detail-alerts-section .student-detail-section-heading>svg,.student-detail-alerts-section .student-detail-section-heading>h3{color:var(--danger)}.student-overview-alert-list{display:grid;gap:7px;margin:0;padding-left:44px}.student-overview-alert-list li{padding-left:2px;color:var(--text);font-size:14px;line-height:1.45}.student-overview-alert-list li::marker{color:var(--danger)}.student-overview-alert-list li.is-warning::marker{color:#b45309}.student-overview-alert-list strong{margin-right:4px;font-weight:650}.student-overview-empty-line{margin:0;padding-left:26px;color:var(--muted);font-size:14px;line-height:1.5}.student-overview-notes-heading>.student-overview-note-count{margin-left:auto;color:var(--muted);font-size:12px;font-weight:550}.student-overview-notes-heading .student-detail-section-action{margin-left:0}.student-overview-note-list{position:relative;display:grid;padding-left:24px}.student-overview-note-list:before{position:absolute;top:7px;bottom:14px;left:4px;width:1px;background:var(--line);content:""}.student-overview-note-list .student-note-row{position:relative;min-width:0;padding:0 0 16px;border:0}.student-overview-note-list .student-note-row:before{position:absolute;top:4px;left:-24px;width:9px;height:9px;border:2px solid var(--surface);border-radius:50%;background:var(--brand);content:""}.student-overview-note-list .student-note-row:last-of-type{padding-bottom:0}.student-overview-note-meta{display:flex;align-items:center;gap:7px;color:var(--muted);font-size:12px;line-height:1.4}.student-note-source{display:inline-flex;min-height:20px;align-items:center;padding:2px 7px;border:1px solid var(--line);border-radius:999px;background:var(--surface-subtle);color:var(--text-secondary);font-size:10px;font-weight:700;line-height:1}.student-note-source.is-enrollment{border-color:color-mix(in srgb,var(--brand) 28%,var(--line));background:var(--brand-soft);color:var(--brand-strong)}.student-note-source.is-payment{border-color:color-mix(in srgb,var(--success) 30%,var(--line));background:var(--success-soft);color:var(--success)}.student-overview-note-list .student-note-row p{margin:4px 0 0;color:var(--text);font-size:14px;line-height:1.55}.student-overview-notes-toggle{display:inline-flex;min-height:32px;align-items:center;justify-self:start;gap:5px;padding:0;border:0;background:transparent;color:#2563eb;font:inherit;font-size:13px;font-weight:600;cursor:pointer}.student-overview-notes-toggle svg{width:14px;height:14px}.student-overview-notes-toggle:hover{text-decoration:underline}.student-overview-notes-toggle:focus-visible{outline:3px solid var(--focus);outline-offset:2px}.student-detail-action-chip{display:inline-flex;min-height:36px;align-items:center;justify-content:center;gap:4px;padding:0 10px;border:1px solid var(--line-strong);border-radius:999px;background:var(--surface);color:var(--text-secondary);font:inherit;font-size:10px;font-weight:500;line-height:1;white-space:nowrap;cursor:pointer;transition:border-color .12s ease,color .12s ease,background .12s ease}.student-detail-action-chip svg{width:13px;height:13px}.student-detail-action-chip:hover:not(:disabled){border-color:var(--brand);color:var(--brand-strong)}.student-detail-action-chip:focus-visible{outline:3px solid var(--focus);outline-offset:2px}.student-detail-action-chip.is-danger{border-color:var(--danger);color:var(--danger)}.student-detail-action-chip.is-danger:hover:not(:disabled){border-color:var(--danger);background:var(--danger-soft);color:var(--danger)}.student-detail-action-chip:disabled{cursor:not-allowed;opacity:.5}.student-detail-header-actions .student-detail-action-chip,.student-detail-section-action.student-detail-action-chip,.student-detail-tab-panel .student-enrollment-change-button.student-detail-action-chip,.student-source-document-row .student-detail-action-chip,.student-source-document-error .student-detail-action-chip{min-height:36px}.student-overview-notes-toggle.student-detail-action-chip{min-height:36px;margin-top:12px;padding:0 10px;border:1px solid var(--line-strong);border-radius:999px;background:var(--surface);color:var(--text-secondary);font-size:10px;font-weight:500;text-decoration:none}.student-overview-notes-toggle.student-detail-action-chip:hover{border-color:var(--brand);color:var(--brand-strong);text-decoration:none}.student-detail-modal .student-profile-edit-actions .primary-button,.student-detail-modal .student-profile-edit-actions .secondary-button{border-radius:999px}.student-preview-purge-section--outside{margin-top:16px;padding:0;border:0;background:transparent}.student-preview-purge-section--outside .student-preview-purge-intro{padding:14px 16px;border:1px solid var(--line);border-radius:12px}.student-family-card{padding:20px;border:.5px solid var(--line);border-radius:10px;background:var(--surface)}.student-guardians-pickup-section{border-bottom:0}.student-pickup-card{padding:0 0 0 26px;border:0;border-radius:0;background:transparent}.student-family-card-section+.student-family-card-section{margin-top:16px;padding-top:16px;border-top:.5px solid var(--line)}.student-family-card-heading{display:flex;align-items:center;gap:8px;margin-bottom:12px}.student-family-card-heading svg{width:16px;height:16px;flex:0 0 auto;color:var(--brand)}.student-family-card-heading h4{margin:0;color:var(--text);font-size:14px;font-weight:650;line-height:1.35}.student-family-count{margin-left:auto;color:var(--muted);font-size:11px;line-height:1.35}.student-family-card-content{min-width:0;padding-left:24px}.student-family-person{min-width:0}.student-family-person-heading{display:flex;flex-wrap:wrap;align-items:baseline;gap:4px 8px;margin-bottom:7px}.student-family-person-heading strong{color:var(--text);font-size:14px;font-weight:600;line-height:1.4}.student-family-person.is-primary .student-family-person-heading strong{font-size:15px}.student-family-person-heading>span{color:var(--muted);font-size:12px;line-height:1.4}.student-family-contact-grid{display:flex;flex-wrap:wrap;gap:8px 24px;margin:0}.student-family-contact-grid>div{min-width:120px;max-width:100%}.student-family-contact-grid dt,.student-family-contact-grid dd{margin:0}.student-family-contact-grid dt{margin-bottom:3px;color:var(--muted);font-size:12px;font-weight:600;line-height:1.35}.student-family-contact-grid dd,.student-family-contact-grid dd a{color:var(--text);font-size:14px;font-weight:550;line-height:1.5;overflow-wrap:anywhere}.student-family-person-flag{color:var(--muted);font-size:11px!important;font-weight:550}.student-family-person-flag.is-emphasis{color:var(--brand-strong);font-weight:650}.student-family-other-list{display:grid;gap:12px}.student-family-other-list>.student-family-person+.student-family-person{padding-top:12px;border-top:.5px solid var(--line)}.student-family-pickup p,.student-family-pickup span,.student-family-empty{margin:0}.student-family-pickup p{color:var(--text);font-size:14px;font-weight:550;line-height:1.5}.student-family-pickup span{display:block;margin-top:3px;color:var(--muted);font-size:12px;font-weight:500;line-height:1.4}.student-family-empty{color:var(--muted);padding:12px 14px;border:1px dashed var(--line-strong);border-radius:8px;background:var(--surface-subtle);font-size:14px;line-height:1.5}.student-family-empty.student-missing-value{color:var(--muted)!important;font-weight:550}.student-detail-tab-panel .student-contact-line a{display:block;color:var(--brand-strong);font-size:14px;font-weight:750}.student-context-edit-form{gap:18px}.student-profile-registration-grid{padding-top:18px;border-top:1px solid var(--line)}.student-context-edit-form .student-profile-edit-note{padding:10px 12px;border:1px solid var(--line);border-radius:8px;background:var(--surface-subtle);font-size:13px}.student-context-edit-form .student-profile-edit-field{font-size:12px}.student-context-edit-form .student-profile-edit-field input,.student-context-edit-form .student-profile-edit-field select,.student-context-edit-form .student-profile-edit-field textarea{width:100%;min-width:0;border:1px solid var(--line-strong);border-radius:8px;outline:0;background:var(--surface);color:var(--text);font:inherit;font-size:14px;font-weight:500}.student-context-edit-form .student-profile-edit-field input,.student-context-edit-form .student-profile-edit-field select{min-height:44px;padding:0 11px}.student-context-edit-form .student-profile-edit-field textarea{min-height:88px;resize:vertical;padding:10px 11px;line-height:1.5}.student-context-edit-form .student-profile-edit-field input:focus,.student-context-edit-form .student-profile-edit-field select:focus,.student-context-edit-form .student-profile-edit-field textarea:focus{border-color:var(--brand);box-shadow:0 0 0 3px var(--focus)}.student-current-document-summary{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:3px 14px;padding:12px 14px;border:1px solid var(--line);border-radius:8px;background:var(--surface-subtle)}.student-current-document-summary span,.student-current-document-summary small{color:var(--muted);font-size:12px}.student-current-document-summary strong{grid-row:span 2;align-self:center;color:var(--text);font-size:15px}.student-care-editor-heading{display:flex;align-items:center;justify-content:space-between;gap:12px}.student-care-editor-heading>div{display:flex;align-items:baseline;gap:8px}.student-care-editor-heading strong{font-size:15px}.student-care-editor-heading span{color:var(--muted);font-size:12px}.student-care-editor-heading .secondary-button,.student-care-guardian-editor>header .secondary-button{min-height:44px}.student-care-editor-heading svg,.student-care-guardian-editor>header svg{width:16px;height:16px}.student-care-guardian-edit-list{display:grid;gap:12px}.student-care-guardian-editor{display:grid;gap:14px;padding:14px;border:1px solid var(--line);border-radius:10px;background:var(--surface)}.student-care-guardian-editor.is-primary{border-color:#c7d2fe;box-shadow:inset 3px 0 0 var(--brand)}.student-care-guardian-editor>header{display:flex;align-items:center;justify-content:space-between;gap:12px}.student-care-guardian-editor>header>div{display:grid;gap:2px}.student-care-guardian-editor>header strong{color:var(--text);font-size:14px}.student-care-guardian-editor>header span{color:var(--muted);font-size:12px}.student-care-guardian-flags{display:flex;flex-wrap:wrap;gap:8px 18px}.student-care-guardian-flags label{display:inline-flex;min-height:36px;align-items:center;gap:7px;color:var(--text-secondary);font-size:13px;font-weight:700}.student-care-guardian-flags input{width:18px;height:18px;accent-color:var(--brand)}.student-context-edit-subsection{display:grid;gap:12px;padding-top:18px;border-top:1px solid var(--line)}.student-context-edit-subsection h4{margin:0;color:var(--text);font-size:15px}.student-overview-edit-subheading{display:flex;align-items:center;gap:8px}.student-overview-edit-subheading>svg{width:17px;height:17px;color:var(--brand)}.student-overview-edit-subheading>span{margin-left:auto;color:var(--muted);font-size:12px;font-weight:650}.student-overview-identity-readonly{padding-left:0}.student-note-create-editor{gap:14px}.student-note-create-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}.student-note-create-heading>div{display:grid;gap:4px}.student-note-create-heading p{margin:0;color:var(--muted);font-size:12px;line-height:1.5}.student-note-important-toggle{display:inline-flex;min-height:44px;align-items:center;align-self:end;gap:8px;color:var(--text-secondary);font-size:13px;font-weight:700}.student-note-important-toggle input{width:18px;height:18px;accent-color:var(--brand)}.student-note-create-editor .student-profile-edit-field small{justify-self:end;color:var(--muted);font-size:11px;font-weight:500}@media(max-width:1024px){.management-dialog.student-detail-modal[open]{width:calc(100vw - 24px);height:min(880px,calc(100dvh - 24px));max-height:calc(100dvh - 24px)}.student-detail-summary{grid-template-columns:repeat(2,minmax(0,1fr))}.student-detail-tabs-scroll,.student-detail-tab-panel .student-detail-section{padding-inline:18px}}@media(max-width:699px){.management-dialog.student-detail-modal[open]{width:calc(100vw - 12px);height:calc(100dvh - 12px);max-height:calc(100dvh - 12px)}.student-detail-header{align-items:stretch;flex-direction:column}.student-detail-header-actions{justify-content:flex-end}.student-detail-charge-action{min-height:44px}.student-detail-summary,.student-overview-contact-grid,.student-context-edit-form .student-profile-edit-grid,.student-detail-tab-panel .student-detail-grid{grid-template-columns:minmax(0,1fr)}.student-detail-summary{gap:10px;padding:14px}.student-detail-tabs-scroll{margin:12px 12px 0;padding-inline:14px;border-radius:10px 10px 0 0}.student-detail-tabs-scroll+.student-detail-body{margin:0;padding:0 12px 12px;border-radius:0}.student-detail-tab-surface{border-radius:0 0 10px 10px}.student-detail-summary article,.student-detail-summary article:nth-child(2){min-height:30px;border:0}.student-detail-tab-panel .student-detail-section{padding:18px 14px}.student-detail-tab-panel .student-enrollment-record-section{padding:0}.student-enrollment-card-section{padding:18px 14px}.student-overview-contact-grid,.student-overview-care-grid{padding-left:0}.student-overview-note-list{padding-left:20px}.student-overview-note-list .student-note-row:before{left:-20px}.student-detail-action-chip,.student-detail-header-actions .student-detail-action-chip,.student-detail-section-action.student-detail-action-chip,.student-detail-tab-panel .student-enrollment-change-button.student-detail-action-chip,.student-source-document-row .student-detail-action-chip,.student-source-document-error .student-detail-action-chip,.student-overview-notes-toggle.student-detail-action-chip{min-height:44px}.student-family-card{padding:16px}.student-pickup-card{padding:0}.student-enrollment-card-heading{flex-wrap:nowrap}.student-enrollment-current-academic-topline{align-items:stretch;flex-direction:column;gap:8px}.student-enrollment-card-action{min-height:44px;margin-left:auto}.student-enrollment-card-body{padding-left:0}.student-enrollment-inline-details{display:grid;gap:4px}.student-enrollment-service-row{display:flex;flex-direction:column}.student-enrollment-service-actions{order:3;width:100%;flex-wrap:wrap;justify-content:flex-start;margin-top:10px}.student-detail-tab-panel .student-enrollment-service-actions .student-enrollment-change-button{width:100%;min-height:44px;justify-content:center}.student-enrollment-service-grid{order:1;grid-template-columns:minmax(0,1fr)}.student-enrollment-service-period{order:2}.student-school-history-timeline{padding-left:20px}.student-school-history-item:before{left:-20px}.student-enrollment-service-history-toggle{min-height:44px}.student-enrollment-service-history-timeline{padding-left:20px}.student-enrollment-service-history-item:before{left:-20px}.student-family-card-content{padding-left:16px}.student-family-contact-grid{display:grid;gap:8px}.student-family-contact-grid>div{min-width:0}.student-overview-alert-list{padding-left:20px}.student-care-editor-heading,.student-care-guardian-editor>header{align-items:stretch;flex-direction:column}.student-care-editor-heading .secondary-button,.student-care-guardian-editor>header .secondary-button{width:100%;justify-content:center}.student-current-document-summary{grid-template-columns:minmax(0,1fr)}.student-current-document-summary strong{grid-row:auto}}.management-dialog.student-detail-modal[open]{width:min(1500px,72vw);height:min(900px,90vh);height:min(900px,90dvh);max-height:90vh;max-height:90dvh}@media(max-width:1056px){.management-dialog.student-detail-modal[open]{width:min(760px,calc(100vw - 32px))}}@media(max-width:672px){.management-dialog.student-detail-modal[open]{height:96vh;height:96dvh;max-height:96vh;max-height:96dvh}}@media(max-width:480px){.management-dialog.student-detail-modal[open]{width:100vw;max-width:none;height:100vh;height:100dvh;max-height:100vh;max-height:100dvh;border:0;border-radius:0}}@media(min-width:673px){.management-dialog.student-detail-modal.student-academic-editor-modal[open]{height:auto;height:fit-content;max-height:min(760px,90dvh)}.student-academic-editor-modal .student-detail-card{flex:0 1 auto;max-height:min(760px,90dvh)}.student-academic-editor-modal .student-academic-editor-body{flex:0 1 auto}}:where(.management-dialog,.payment-quick-drawer,.communications-modal) button:has(>svg.lucide-x){border-radius:50%!important;transition:border-color .14s ease,background-color .14s ease,color .14s ease,box-shadow .14s ease,transform .14s ease}:where(.management-dialog,.payment-quick-drawer,.communications-modal) button:has(>svg.lucide-x)>svg{transition:transform .18s ease}:where(.management-dialog,.payment-quick-drawer,.communications-modal) button:has(>svg.lucide-x):hover:not(:disabled){border-color:var(--brand)!important;background:var(--brand-soft)!important;color:var(--brand-strong)!important;box-shadow:0 6px 16px #4338ca29;transform:translateY(-1px)}:where(.management-dialog,.payment-quick-drawer,.communications-modal) button:has(>svg.lucide-x):hover:not(:disabled)>svg{transform:rotate(90deg) scale(1.06)}:where(.management-dialog,.payment-quick-drawer,.communications-modal) button:has(>svg.lucide-x):focus-visible{outline:3px solid var(--focus)!important;outline-offset:2px}@media(prefers-reduced-motion:reduce){:where(.management-dialog,.payment-quick-drawer,.communications-modal) button:has(>svg.lucide-x),:where(.management-dialog,.payment-quick-drawer,.communications-modal) button:has(>svg.lucide-x)>svg{transition:none}:where(.management-dialog,.payment-quick-drawer,.communications-modal) button:has(>svg.lucide-x):hover:not(:disabled),:where(.management-dialog,.payment-quick-drawer,.communications-modal) button:has(>svg.lucide-x):hover:not(:disabled)>svg{transform:none}}:root{--table-col-xs: 42px;--table-col-sm: 56px;--table-col-md: 110px;--table-col-lg: 130px}.table-col-xs{width:var(--table-col-xs)}.table-col-sm{width:var(--table-col-sm)}.table-col-md{width:var(--table-col-md)}.table-col-lg{width:var(--table-col-lg)}.table-col-spacer{width:auto}@media screen{.workspace-main :is(.students-page .students-roster-table,.sdir-page .sdir-table-shell table,.payment-workbench-page .payment-roster-table)>tbody>tr>:is(td,th){white-space:normal;overflow-wrap:anywhere;word-break:normal;text-overflow:clip}}@media screen{.workspace-main :is(.students-page .students-roster-table,.sdir-page .sdir-table-shell table,.payment-workbench-page .payment-roster-table)>:is(thead,tbody)>tr>:is(th,td):is(.students-select-cell,.sdir-selection-cell,.payment-roster-select-cell){box-sizing:border-box;width:var(--table-col-xs);padding:0!important;text-align:center;vertical-align:middle}.workspace-main :is(.students-page .students-roster-table,.sdir-page .sdir-table-shell table,.payment-workbench-page .payment-roster-table) :is(.students-select-cell,.sdir-selection-cell,.payment-roster-select-cell) input[type=checkbox]{box-sizing:border-box;display:inline-block;width:16px;height:16px;min-width:16px;min-height:16px;margin:0;padding:0;vertical-align:middle;accent-color:var(--brand)}.workspace-main :is(.students-page .students-roster-table,.sdir-page .sdir-table-shell table,.payment-workbench-page .payment-roster-table) :is(.students-select-cell,.sdir-selection-cell,.payment-roster-select-cell) input[type=checkbox]:disabled{opacity:.42}}@media screen and (min-width:700px){.workspace:has(>.workspace-main>:is(.students-page,.sdir-page)){display:flex;flex-direction:column;height:100dvh;min-height:0;overflow:hidden}.workspace:has(>.workspace-main>:is(.students-page,.sdir-page))>.topbar{flex:0 0 var(--shell-header-height)}.workspace-main:has(>:is(.students-page,.sdir-page)){display:flex;flex:1;flex-direction:column;min-height:0;overflow:hidden}.workspace-main>:is(.students-page,.sdir-page),.workspace-main .students-page>.page-scaffold,.workspace-main>.students-page>.page-scaffold>.page-content,.workspace-main .sdir-page>.sdir-card{display:flex;flex:1;flex-direction:column;min-height:0;overflow:hidden}.workspace-main .students-page .students-toolbar,.workspace-main .sdir-page .sdir-directory-controls{flex:0 0 auto}.workspace-main .students-page .students-roster-table-shell,.workspace-main .students-page .students-desktop-roster,.workspace-main .sdir-page .sdir-results{flex:1;min-height:0;overflow:hidden}.workspace-main .students-page .students-roster-table-shell{display:flex;flex-direction:column}.workspace-main .students-page .students-roster-table-shell,.workspace-main .sdir-page .sdir-results>.sdir-table-shell{border:0;border-radius:0;background:transparent;box-shadow:none}.workspace-main .students-page .students-roster-table,.workspace-main .sdir-page .sdir-table-shell>table{border:1px solid var(--line);border-radius:9px;border-collapse:separate;border-spacing:0;background:var(--surface, #fff)}.workspace-main :is(.students-page .students-roster-table,.sdir-page .sdir-table-shell>table)>thead>tr>th:first-child{border-top-left-radius:8px}.workspace-main :is(.students-page .students-roster-table,.sdir-page .sdir-table-shell>table)>thead>tr>th:last-child{border-top-right-radius:8px}.workspace-main :is(.students-page .students-roster-table,.sdir-page .sdir-table-shell>table)>tbody>tr:last-child>td:first-child{border-bottom-left-radius:8px}.workspace-main :is(.students-page .students-roster-table,.sdir-page .sdir-table-shell>table)>tbody>tr:last-child>td:last-child{border-bottom-right-radius:8px}.workspace-main .students-page .students-desktop-roster>.responsive-data-shell,.workspace-main .sdir-page .sdir-results>.sdir-table-shell{height:100%;min-height:0;overflow:auto;overscroll-behavior:contain}.workspace-main .sdir-page .sdir-table-shell>table>thead>tr>th{position:sticky;top:0;z-index:3;background:#faf9f7}.workspace-main .students-page .students-mobile-pagination{display:none}}@media screen and (max-width:699px){.students-mobile-pagination{display:block}.workspace-main .students-page .students-mobile-roster dd,.workspace-main .students-page .students-mobile-primary strong{white-space:normal;overflow-wrap:anywhere;overflow:visible;text-overflow:clip}}@media screen{.workspace-main :is(.attendance-operations-page,.students-page,.sdir-page,.payment-workbench-page,.reports-page){--roster-section-gap: 12px;--roster-control-height: 36px;--roster-action-size: 32px;--roster-header-height: 44px;--roster-row-height: 52px;--roster-font-size: 12px;--roster-secondary-size: 11px;--roster-name-size: 13px;--roster-radius: 9px;min-width:0;max-width:100%}.workspace-main .attendance-operations-page .page-scaffold{display:grid;align-content:start;gap:var(--roster-section-gap)}.workspace-main :is(.attendance-operations-page,.students-page,.payment-workbench-page,.reports-page) .page-content{display:grid;grid-template-columns:minmax(0,1fr);align-content:start;gap:var(--roster-section-gap);min-width:0}.workspace-main .sdir-page>.sdir-card{gap:var(--roster-section-gap)}.workspace-main .attendance-operations-page .compact-toolbar{min-height:var(--roster-control-height);padding:0}.workspace-main .attendance-operations-page .attendance-quick-status-panel{padding:0}.workspace-main .attendance-operations-page .attendance-quick-status-actions{flex-wrap:nowrap;justify-content:flex-start;justify-content:safe center;min-width:0;overflow-x:auto;overflow-y:hidden;padding-block:2px;gap:8px;white-space:nowrap}.workspace-main .attendance-operations-page .attendance-quick-status-actions>.attendance-today-sort{flex:0 0 auto;margin-inline-end:0}.workspace-main .attendance-operations-page .attendance-quick-status-actions>.attendance-quick-status-selector{flex:0 1 280px;width:280px;min-width:200px;max-width:280px}.workspace-main .attendance-operations-page :is(.attendance-today-roster,.attendance-period-card,.attendance-batch-bar,.attendance-batch-errors){width:100%;margin:0}.workspace-main .sdir-page .sdir-directory-controls,.workspace-main .payment-workbench-page .payment-topbar-controls,.workspace-main .reports-page .report-controls{padding-bottom:0}.workspace-main .payment-workbench-page .payment-topbar-controls{width:100%;max-width:100%}.workspace-main .students-page .students-roster-table-shell,.workspace-main .sdir-page .sdir-table-shell,.workspace-main .payment-workbench-page .payment-roster-table-shell,.workspace-main .reports-page :is(.report-sheet,.report-comparison),.workspace-main .attendance-operations-page :is(.attendance-today-roster,.attendance-period-card){width:100%;max-width:100%;border-radius:var(--roster-radius)}.workspace-main :is(.attendance-operations-page .attendance-period-table,.students-page .students-roster-table,.sdir-page .sdir-table-shell table,.payment-workbench-page .payment-roster-table,.reports-page .report-excel-table,.reports-page .report-comparison-table){font-size:var(--roster-font-size);line-height:1.4}.workspace-main :is(.attendance-operations-page .attendance-period-table,.students-page .students-roster-table,.sdir-page .sdir-table-shell table,.payment-workbench-page .payment-roster-table,.reports-page .report-excel-table,.reports-page .report-comparison-table)>thead>tr>th{height:var(--roster-header-height);padding-block:6px;font-size:var(--roster-font-size);line-height:1.3}.workspace-main :is(.attendance-operations-page .attendance-period-table,.students-page .students-roster-table,.sdir-page .sdir-table-shell table,.payment-workbench-page .payment-roster-table,.reports-page .report-excel-table,.reports-page .report-comparison-table)>tbody>tr>:is(td,th){height:var(--roster-row-height);padding-block:8px;font-size:var(--roster-font-size);line-height:1.4;vertical-align:middle}.workspace-main :is(.attendance-operations-page .attendance-period-table,.students-page .students-roster-table,.sdir-page .sdir-table-shell table,.payment-workbench-page .payment-roster-table,.reports-page .report-excel-table)>:is(thead,tbody)>tr>:is(td,th):not(.students-select-cell,.sdir-selection-cell,.payment-roster-select-cell,.sdir-lead-actions-cell,.payment-inline-editor-cell){padding-inline:10px}.workspace-main .attendance-operations-page .attendance-month-table>:is(thead,tbody)>tr>:is(td,th):nth-child(n+5){padding-inline:3px}.workspace-main .attendance-operations-page .attendance-week-table{min-width:1064px}.workspace-main .attendance-operations-page .attendance-date-header button{min-height:28px}.workspace-main .attendance-operations-page .attendance-cell{width:var(--roster-action-size);height:var(--roster-action-size);vertical-align:middle;font-size:12px}.workspace-main .attendance-operations-page:is(.attendance-mode-week,.attendance-mode-month){--roster-section-gap: 8px;--roster-header-height: 45px;--roster-row-height: 45px;--roster-action-size: 26px}.workspace-main .attendance-operations-page .attendance-period-card .attendance-period-table :is(th,td){padding-block:4px}.workspace-main .attendance-operations-page .attendance-period-legend{padding:6px 12px}.workspace-main .payment-workbench-page .payment-roster-table>tbody>tr>.payment-inline-editor-cell{height:auto;padding:0;overflow:visible;white-space:normal}.workspace-main .students-page .students-name-button strong,.workspace-main .sdir-page .sdir-table-shell td strong,.workspace-main .payment-workbench-page .payment-roster-student strong,.workspace-main .reports-page .report-col-name>a,.workspace-main .attendance-operations-page .attendance-period-table tbody th{font-size:var(--roster-name-size);line-height:1.35}.workspace-main .students-page .students-name-button span,.workspace-main .sdir-page .sdir-table-shell td small,.workspace-main .payment-workbench-page :is(.payment-roster-student span,.payment-roster-amount small,.payment-roster-status small),.workspace-main .reports-page :is(.report-ledger-lines small,.report-ledger-lines strong,.report-service-summary){font-size:var(--roster-secondary-size);line-height:1.35}.workspace-main .payment-workbench-page .payment-roster-amount strong{font-size:var(--roster-font-size)}.workspace-main .students-page :is(.students-roster-table,.students-mobile-roster) .students-service-list>span{font-size:var(--roster-secondary-size)}.workspace-main .students-page .students-roster-table .status-badge,.workspace-main .sdir-page .sdir-table-shell .sdir-status,.workspace-main .reports-page .report-excel-table .status-badge,.workspace-main .payment-workbench-page .payment-roster-table .payment-muted-value{font-size:var(--roster-secondary-size)}.workspace-main .students-page .students-roster-controls{--students-control-height: var(--roster-control-height)}.workspace-main .students-page .students-roster-controls .students-control-pill{height:var(--roster-control-height);min-height:var(--roster-control-height);font-size:var(--roster-font-size)}.workspace-main .students-page .students-roster-controls{grid-template-columns:184px 158px minmax(132px,1fr) auto auto auto}.workspace-main .students-page .students-service-switch{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));min-width:0;height:var(--roster-control-height);padding:2px;border:1px solid var(--line-strong);border-radius:999px;background:#f4f1ed;box-shadow:inset 0 1px 2px #211a1008}.workspace-main .students-page .students-service-switch button{min-width:0;padding:0 8px;border:0;border-radius:999px;background:transparent;color:var(--text-secondary);font-size:var(--roster-font-size);font-weight:650;white-space:nowrap;cursor:pointer}.workspace-main .students-page .students-service-switch button[aria-pressed=true]{background:var(--surface);color:var(--brand-strong);box-shadow:0 1px 3px #211a1018}.workspace-main .students-page .students-service-switch button:focus-visible{outline:2px solid var(--focus);outline-offset:1px}.workspace-main .students-page .students-roster-table{min-width:1150px}.workspace-main :is(.students-page .students-roster-table,.payment-workbench-page .payment-roster-table,.reports-page .report-excel-table){--roster-action-size: 26px}.workspace-main .students-page .students-roster-table :is(.students-name-button,.students-sort-button){min-height:var(--roster-action-size);align-content:center}.workspace-main .reports-page .report-excel-table .report-col-name>a{display:inline-flex;align-items:center;min-height:var(--roster-action-size);vertical-align:middle}.workspace-main :is(.students-page .students-roster-table,.payment-workbench-page .payment-roster-table,.reports-page .report-excel-table) .status-badge{min-height:var(--roster-action-size)}.workspace-main .sdir-page :is(.sdir-tabs,.sdir-search){height:var(--roster-control-height);min-height:var(--roster-control-height)}.workspace-main .sdir-page :is(.sdir-search input,.sdir-tabs>button),.workspace-main .payment-workbench-page .payment-topbar-controls button,.workspace-main .reports-page .report-type-tabs button{font-size:var(--roster-font-size)}.workspace-main .sdir-page .sdir-search button{width:30px;height:30px}.workspace-main .reports-page .report-export-button{width:var(--roster-control-height);height:var(--roster-control-height);min-height:var(--roster-control-height);flex-basis:var(--roster-control-height)}.workspace-main .payment-workbench-page .payment-row-action,.workspace-main .sdir-page .sdir-table-shell .sdir-row-action{min-height:var(--roster-action-size);font-size:var(--roster-secondary-size)}.workspace-main .sdir-page .sdir-table-shell .sdir-icon-action{width:var(--roster-action-size);height:var(--roster-action-size);flex-basis:var(--roster-action-size)}.workspace-main .students-page .students-pagination,.workspace-main .sdir-page .sdir-pagination{min-height:52px;padding:8px 12px;font-size:var(--roster-secondary-size);gap:8px}.workspace-main :is(.students-page .students-pagination,.sdir-page .sdir-pagination) :is(button,select,input){height:var(--roster-action-size);min-height:var(--roster-action-size);font-size:var(--roster-secondary-size)}.workspace-main .sdir-page .sdir-page-buttons .sdir-button{width:var(--roster-action-size)}.workspace-main .students-page .students-mobile-primary strong{font-size:var(--roster-name-size)}.workspace-main .students-page .students-mobile-primary span,.workspace-main .students-page .students-mobile-roster dt,.workspace-main .students-page .students-mobile-statuses .status-badge{font-size:var(--roster-secondary-size)}.workspace-main .students-page .students-mobile-roster dd{font-size:var(--roster-font-size);line-height:1.4}@media(min-width:360px)and (max-width:699px){.workspace-main .students-page .students-mobile-roster dl{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:899px){.workspace-main .students-page .students-roster-controls{grid-template-columns:184px 148px minmax(96px,1fr) repeat(3,44px);gap:7px}}@media(max-width:640px){.workspace-main .students-page .students-roster-controls{grid-template-columns:repeat(6,minmax(0,1fr))}.workspace-main .students-page .students-roster-controls .students-date-field{grid-column:1 / span 3}.workspace-main .students-page .students-service-switch{grid-column:4 / span 3}.workspace-main .students-page .students-roster-controls .students-search-field{grid-column:1 / -1}.workspace-main .students-page .students-roster-controls .students-intake-shortcut{grid-column:1 / span 2}.workspace-main .students-page .students-roster-controls>.students-filter-trigger{grid-column:3 / span 2}.workspace-main .students-page .students-roster-controls .students-sort-anchor{grid-column:5 / span 2}.workspace-main .students-page .students-roster-controls :is(.students-intake-shortcut,.students-filter-trigger,.students-sort-anchor,.students-sort-trigger){width:100%;min-width:0}}@container attendance-page (max-width: 880px){.workspace-main .attendance-operations-page .attendance-quick-status-actions{gap:6px}.workspace-main .attendance-operations-page .attendance-quick-status-actions>.attendance-quick-status-selector{flex-basis:200px;width:200px}.workspace-main .attendance-operations-page .attendance-today-sort>span{display:none}.workspace-main .attendance-operations-page .attendance-today-sort-options button{padding-inline:8px}.workspace-main .attendance-operations-page .attendance-quick-status-actions>:is(.attendance-pending-sort-button,.attendance-toolbar-button){padding-inline:8px}}}
