.app-shell{min-height:100svh}.sidebar{color:#9facc4;z-index:40;background:linear-gradient(155deg,#17233c,#111b2e);flex-direction:column;width:246px;padding:30px 17px 0;display:flex;position:fixed;inset:0 auto 0 0}.brand{color:#fff;letter-spacing:-1px;align-items:center;gap:11px;margin-bottom:30px;padding:0 12px;font-size:23px;font-weight:650;text-decoration:none;display:flex}.brand-mark{color:#fff;letter-spacing:-3px;background:#8270e8;border-radius:10px;justify-content:center;align-items:center;width:33px;height:33px;padding-right:3px;font-size:26px;font-weight:750;line-height:33px;display:inline-flex;position:relative}.brand-mark>span{background:#c2b9ff;border-radius:50%;width:5px;height:5px;position:absolute;bottom:6px;right:6px}.brand-period{color:#aa98f3}.school-switcher{background:#ffffff04;border:1px solid #ffffff13;border-radius:8px;align-items:center;gap:9px;min-width:0;margin-bottom:17px;padding:12px 10px;display:flex}.school-avatar{color:#d9e0ed;background:#2b3852;border-radius:7px;flex-shrink:0;place-items:center;width:31px;height:31px;font-weight:600;display:grid}.school-switcher>div{flex:1;min-width:0}.school-switcher strong{color:#e4e9f5;white-space:nowrap;text-overflow:ellipsis;font-size:16px;font-weight:500;display:block;overflow:hidden}.workspace-dot{background:#80cba5;border-radius:50%;flex-shrink:0;width:6px;height:6px;display:inline-block}.sidebar nav{scrollbar-width:thin;scrollbar-color:#33415b transparent;flex:1;padding-bottom:16px;overflow-y:auto}.nav-label{text-transform:uppercase;letter-spacing:.13em;color:#7e90af;margin:20px 12px 8px;font-size:16px;font-weight:600}.nav-item{color:#afbbd1;text-align:left;white-space:nowrap;background:0 0;border-radius:7px;justify-content:flex-start;gap:11px;width:100%;min-height:39px;margin:3px 0;padding:10px 12px;font-size:16px;font-weight:450;display:flex}.nav-item:hover:not(:disabled){color:#fff;background:#ffffff08}.nav-item.active{color:#fff;background:linear-gradient(105deg,#8c76e6,#7662d0);font-weight:550;box-shadow:0 3px 8px #00000012}.nav-item:disabled{opacity:.65}.nav-soon{color:#b5bed1;background:#ffffff0b;border-radius:3px;margin-left:auto;padding:2px 4px;font-size:16px}.sidebar-bottom{margin-top:18px}.workspace-label{color:#95a4bf;border:1px solid #ffffff0b;border-radius:7px;align-items:center;gap:9px;margin-bottom:20px;padding:12px;font-size:16px;display:flex}.user-panel{border-top:1px solid #ffffff0b;align-items:center;gap:9px;padding:20px 4px;display:flex}.user-avatar,.topbar-avatar{color:#9e81bd;background:#eee5fa;border-radius:50%;flex-shrink:0;place-items:center;width:32px;height:32px;font-size:16px;font-weight:600;display:inline-grid}.user-panel>div{flex:1;min-width:0}.user-panel strong{color:#d4dced;text-overflow:ellipsis;white-space:nowrap;font-size:16px;font-weight:500;display:block;overflow:hidden}.user-panel div span{color:#8a9ab7;text-transform:capitalize;font-size:16px}.logout-icon{color:#a7b4cd;background:0 0;min-height:29px;padding:5px}.logout-icon:hover:not(:disabled){color:#fff;background:#ffffff08}.workspace{min-width:0;margin-left:246px}.topbar{background:#ffffffed;border-bottom:1px solid #e9ecf2;justify-content:space-between;align-items:center;gap:15px;height:70px;padding:0 36px;display:flex}.breadcrumb{color:#a1aabd;align-items:center;gap:15px;font-size:16px;display:flex}.breadcrumb strong{color:#687894;font-weight:550}.breadcrumb-divider{color:#d1d6e0}.topbar-right{align-items:center;gap:22px;display:flex}.topbar .badge{border:1px solid #e5f0e9;padding:6px 9px;font-size:16px}.topbar-avatar{width:29px;height:29px}.workspace main{max-width:1630px;margin:0 auto;padding:33px 36px 20px;outline:none!important}.page-heading{justify-content:space-between;align-items:center;margin-bottom:30px;display:flex}.page-heading p{color:#929eb2;margin:0;font-size:16px}.page-heading .eyebrow{letter-spacing:.15em;margin-bottom:6px;font-size:16px}.page-context{color:#a2aabd;align-items:center;gap:7px;font-size:16px;display:flex}.workspace-footer{color:#a5adc0;border-top:1px solid #e6e9f0;justify-content:space-between;gap:15px;margin-top:35px;padding:20px 0 0;font-size:16px;display:flex}.mobile-nav-toggle,.mobile-nav-close,.nav-backdrop{display:none}.dashboard-welcome{justify-content:space-between;align-items:center;gap:20px;margin:4px 0 25px;display:flex}.dashboard-welcome .eyebrow{color:#a293c1;margin-bottom:7px;font-size:16px}.dashboard-welcome h2{letter-spacing:-.035em;margin:0 0 7px;font-size:22px;font-weight:650}.dashboard-welcome p{color:#98a2b5;margin:0;font-size:16px}.dashboard-welcome>button{min-height:36px;padding:9px 13px;font-size:16px}.metric-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;margin-bottom:25px;display:grid}.metric-card{text-align:left;border:1px solid var(--border);background:#fff;border-radius:9px;min-width:0;padding:18px 19px;display:block}.metric-label{color:#929db1;justify-content:space-between;align-items:center;gap:8px;font-size:16px;font-weight:500;display:flex}.metric-icon{border-radius:8px;place-items:center;width:30px;height:30px;display:grid}.metric-icon svg{width:16px;height:16px}.purple{color:#aa91d7;background:#f3edfc}.blue{color:#8faee0;background:#f0f5fe}.green{color:#85b9a2;background:#eef8f2}.amber{color:#d0b37e;background:#fdf7ed}.metric-card>strong{color:#38465e;letter-spacing:-1px;margin:10px 0;font-size:29px;font-weight:650;line-height:1.3;display:block}.metric-detail{color:#a1aabc;font-size:16px;font-weight:400;display:block}.dashboard-grid{grid-template-columns:minmax(0,1.35fr) minmax(0,1fr);gap:23px;display:grid}.dashboard-grid>section{min-width:0;margin:0;padding:23px}.card-heading{justify-content:space-between;align-items:flex-start;gap:12px;margin-bottom:25px;display:flex}.card-heading h2{margin-bottom:5px;font-size:16px;font-weight:650}.card-heading p{color:#a4adbe;margin:0;font-size:16px}.card-heading .badge,.card-heading .subtle{font-size:16px}.card-heading .text-button{white-space:nowrap;min-height:20px;font-size:16px}.card-heading>svg{color:#b9a5d7;width:18px}.enrollment-chart{background:repeating-linear-gradient(0deg,#0000 0 40px,#f1f3f7 40px 41px);align-items:stretch;gap:20px;height:178px;padding:10px 15px 0;display:flex}.chart-column{color:#a4acbf;flex-direction:column;flex:1;align-items:center;gap:7px;min-width:0;font-size:16px;display:flex}.chart-value{color:#ac97d5;height:15px;font-size:16px}.chart-track{align-items:flex-end;width:70%;max-width:43px;height:120px;display:flex}.chart-bar{background:linear-gradient(#cdbbef,#a28be4);border-radius:4px 4px 0 0;width:100%}.chart-note{color:#a6afbf;margin:14px 0 0;font-size:16px}.rank-bars{gap:14px;max-height:195px;padding-right:5px;display:grid;overflow:auto}.rank-label{color:#95a0b3;justify-content:space-between;margin-bottom:6px;font-size:16px;display:flex}.rank-label>span{align-items:center;gap:7px;display:flex}.rank-label i{border-radius:50%;width:6px;height:6px}.rank-label strong{color:#8995a9;font-weight:550}.progress-track{background:#f4f3f8;border-radius:4px;height:5px;overflow:hidden}.progress-track>span{border-radius:4px;height:100%;display:block}.rank-bars+.text-button{margin-top:20px;font-size:16px}.schedule-list{margin:0;padding:0;list-style:none}.schedule-list li{border-top:1px solid #f1f2f6;align-items:center;gap:13px;margin:0;padding:12px 0;display:flex}.date-tile{background:#faf7fe;border:1px solid #efe8fa;border-radius:7px;flex-direction:column;justify-content:center;align-items:center;min-width:40px;height:42px;display:flex}.date-tile strong{color:#b19ad2;font-size:16px;font-weight:600;line-height:1.2}.date-tile span{color:#b4a1ce;font-size:16px}.schedule-list li>div:nth-child(2){flex:1;min-width:0}.schedule-list li>div:nth-child(2)>strong{color:#74829c;font-size:16px;font-weight:550;display:block}.schedule-list li>div:nth-child(2)>span{color:#a4afc1;margin-top:4px;font-size:16px;display:block}.task-list{gap:13px;display:grid}.task-list>button{text-align:left;background:#fff;border:1px solid #edf0f6;border-radius:7px;justify-content:flex-start;gap:11px;min-width:0;padding:14px 11px}.task-list>button:hover:not(:disabled){background:#fcfaff}.task-list>button>span:nth-child(2){flex:1;min-width:0}.task-icon{border-radius:7px;flex-shrink:0;place-items:center;width:30px;height:30px;display:grid}.task-icon svg{width:16px;height:16px}.task-list strong{color:#8190a7;font-size:16px;font-weight:550;display:block}.task-list small{color:#a8b1c3;margin-top:4px;font-size:16px;font-weight:400;display:block}.setup-notice{color:#a49575;background:#fffcf5;border:1px solid #f2ead9;border-radius:7px;align-items:flex-start;gap:10px;padding:13px;font-size:16px;display:flex}.setup-notice svg{width:16px}.simple-list{margin:0;padding:0;list-style:none}.simple-list li{border-bottom:1px solid #f1f2f6;flex-wrap:wrap;justify-content:space-between;gap:12px;margin:0;padding:12px 0;display:flex}.simple-list strong{color:#8290a8;font-size:16px;font-weight:550}.simple-list span{color:#a3aec0;font-size:16px}.simple-list .badge{margin-left:4px;font-size:16px}.dashboard-grid .muted-note{padding:0;font-size:16px}.dashboard-grid .quick-card{background:linear-gradient(120deg,#f7f2fd,#fcfafe);border-color:#ede4f7;padding:26px}.quick-card .eyebrow{color:#b09ac8;font-size:16px}.quick-card h2{color:#a18ab6;letter-spacing:-.04em;margin:13px 0;font-size:25px;line-height:1.3}.quick-card>p{color:#baa8c9;font-size:16px}.quick-actions{gap:9px;margin-top:20px;display:grid}.quick-actions>button{color:#b19ac8;background:#ffffffb0;border:1px solid #ede3f5;justify-content:flex-start;min-height:36px;padding:10px 12px;font-size:16px;font-weight:550}.quick-actions>button>svg:last-child{margin-left:auto}.quick-actions>button>svg:first-child{width:15px;height:15px}.quick-actions>button:hover:not(:disabled){background:#fff}.dashboard .empty-state{padding:20px 10px}.dashboard .empty-state h3,.dashboard .empty-state p{font-size:16px}.dashboard-loading{grid-template-columns:repeat(3,1fr);gap:20px;display:grid}.dashboard-loading p{color:#9da7ba;grid-column:1/-1}.skeleton{background:linear-gradient(110deg,#eeeef5 20%,#f8f8fc 40%,#eeeef5 60%) 0 0/200% 100%;border-radius:10px;height:130px;animation:1.5s infinite shimmer}@keyframes shimmer{to{background-position:-200% 0}}.login-layout{grid-template-columns:1fr 1fr;min-height:100svh;display:grid}.login-story{color:#a0aec7;background:radial-gradient(at 90% 80%,#49397180,#0000 65%),linear-gradient(150deg,#192640,#101b30);flex-direction:column;justify-content:space-between;padding:45px 60px;display:flex;position:relative;overflow:hidden}.login-story:after{content:"";pointer-events:none;border:1px solid #ffffff0b;border-radius:50%;width:530px;height:530px;position:absolute;bottom:-200px;right:-270px;box-shadow:0 0 0 65px #ffffff02,0 0 0 130px #ffffff02}.login-story .brand{margin:0;padding:0}.login-story .eyebrow{color:#b6a4d0;margin-bottom:23px;font-size:16px}.login-story h1{color:#f0f2fb;letter-spacing:-.055em;margin-bottom:27px;font-size:clamp(40px,4.6vw,74px);font-weight:550;line-height:1.15}.login-story h1 em{color:#bc9ee8;font-style:normal}.login-story p{color:#a0afca;font-size:16px;line-height:1.9}.login-pills{flex-wrap:wrap;gap:8px;margin-top:32px;display:flex}.login-pills span{color:#b2bfd5;border:1px solid #ffffff15;border-radius:20px;padding:6px 10px;font-size:16px}.login-story-footer{color:#8b9bb7;z-index:1;font-size:16px}.login-main{background:#fafbfe;flex-direction:column;justify-content:center;align-items:center;padding:40px;display:flex}.login-card{width:100%;max-width:370px;padding:20px 0}.login-card h2{letter-spacing:-.04em;margin-bottom:10px;font-size:28px}.login-card>p{color:#9da8bb;font-size:16px}.login-card .eyebrow{color:#b09bcb;margin-top:30px;font-size:16px}.login-mini-brand{letter-spacing:-.8px;color:#9c82c4;font-size:18px;font-weight:650}.login-card form{background:0 0;border:0;flex-direction:column;gap:21px;margin:27px 0;padding:0;display:flex}.login-card form>div{flex-direction:column;gap:8px;width:100%;display:flex}.login-card input{background:#fff;width:100%;height:44px;font-size:16px}.login-card form>button{width:100%;min-height:43px;margin-top:5px;font-size:16px}.login-card .login-help{color:#a8b2c4;text-align:center;margin-top:20px;font-size:16px}.login-legal{color:#b1b9c8;margin-top:50px;font-size:16px}@media (width>=1600px){.metric-label,.metric-detail,.card-heading p,.schedule-list li>div:nth-child(2)>span,.card-heading h2,.task-list strong,.schedule-list li>div:nth-child(2)>strong,.nav-item{font-size:16px}}@media (width<=1150px){.sidebar{width:220px;padding-inline:13px}.workspace{margin-left:220px}.workspace main{padding:27px 25px}.topbar{padding-inline:25px}.metric-grid{gap:12px}.metric-card{padding:16px 14px}.dashboard-grid{grid-template-columns:1.15fr 1fr;gap:17px}.dashboard-grid>section{padding:19px}.page-context{display:none}.brand{font-size:21px}.nav-item{gap:8px;padding:10px;font-size:16px}.enrollment-chart{gap:12px}}@media (width<=900px){.metric-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.dashboard-grid{grid-template-columns:1fr}.dashboard-grid>section{padding:22px}.quick-card h2 br{display:none}.rank-bars{max-height:260px}.workspace-footer{flex-direction:column;gap:5px}.login-story{padding:35px}.login-story h1{font-size:45px}.login-main{padding:30px}}@media (width<=700px){.sidebar{visibility:hidden;width:256px;padding-top:25px;transition:transform .2s;transform:translate(-100%)}.sidebar.sidebar-open{visibility:visible;transform:translate(0)}.workspace{margin-left:0}.workspace main{padding:24px 17px}.topbar{height:58px;padding:0 17px}.mobile-nav-toggle{display:inline-flex}.mobile-nav-close{color:#b1bcd2;background:0 0;min-height:27px;padding:4px;display:inline-flex;position:absolute;top:28px;right:11px}.brand{gap:9px;padding-left:8px;font-size:21px}.brand-mark{width:29px;height:29px;font-size:23px}.nav-item{gap:11px;padding:10px 12px;font-size:16px}.nav-backdrop{z-index:39;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);background:#0e193765;border:0;border-radius:0;width:100%;height:100%;display:block;position:fixed;inset:0}.breadcrumb{gap:9px}.breadcrumb>span:first-of-type,.breadcrumb-divider{display:none}.topbar-right{gap:12px}.topbar .badge{font-size:16px}.page-heading{margin-bottom:24px}.dashboard-welcome{align-items:flex-start}.dashboard-welcome h2{font-size:19px}.dashboard-welcome p{max-width:200px;line-height:1.7}.dashboard-welcome>button{white-space:nowrap;min-height:33px;padding:8px 10px;font-size:16px}.dashboard-welcome>button svg{width:14px}.metric-grid{gap:10px;margin-bottom:18px}.metric-card{padding:15px 13px}.metric-label{font-size:16px}.metric-icon{width:25px;height:25px}.metric-card>strong{margin-top:9px;font-size:27px}.metric-detail{font-size:16px;line-height:1.6}.dashboard-grid{gap:17px}.card-heading{margin-bottom:21px}.workspace-footer{font-size:16px}.login-layout{grid-template-columns:1fr}.login-story{display:none}.login-main{min-height:100svh;padding:30px 25px}.login-card{max-width:360px}.dashboard-footnote{font-size:16px}.simple-list li{flex-direction:column;gap:6px}.login-card h2{font-size:28px}}.nav-item{font-size:16px}.nav-label{color:#a4b2cb;font-size:16px}.school-switcher strong{font-size:16px}.school-switcher span:not(.school-avatar):not(.workspace-dot){color:#a9b7cf;font-size:16px}.user-panel strong{font-size:16px}.user-panel div span{color:#a9b7cf;font-size:16px}.breadcrumb,.page-heading p,.dashboard-welcome p{color:#64728a;font-size:16px}.metric-label{color:#61708a;font-size:16px}.metric-detail{color:#65748a;font-size:16px}.card-heading h2{font-size:16px}.card-heading p,.rank-label{color:#65748a;font-size:16px}.rank-label strong,.chart-column,.chart-note,.chart-value{color:#65748a}.chart-column,.chart-note,.chart-value{font-size:16px}.workspace-footer,.dashboard-footnote{color:#65748a;font-size:16px}.login-card label{color:#56667f;font-size:16px}.login-card>p,.login-card .login-help,.login-legal{color:#65748a}.login-card input,.card-heading .text-button{font-size:16px}.task-list strong,.schedule-list li>div:nth-child(2)>strong{color:#43536d;font-size:16px}.task-list p,.schedule-list li>div:nth-child(2)>span{color:#65748a;font-size:16px}.page-context{color:#65748a}.community-workspace details{border:1px solid var(--border,#dce2ea);border-radius:10px;margin:1rem 0;padding:1rem}.community-workspace summary{cursor:pointer;font-weight:600}.community-workspace fieldset{border:0;flex-wrap:wrap;gap:1rem;min-inline-size:0;padding:1rem 0;display:flex}.community-workspace .searchable-table{width:100%;min-width:0;max-width:100%}.community-workspace fieldset>.searchable-table{flex:100%}.community-workspace fieldset label{flex-direction:column;flex:220px;gap:.4rem;display:flex}.community-workspace input[type=checkbox]{align-self:flex-start;width:20px;height:20px}.community-workspace textarea{width:100%;min-height:90px}.community-workspace fieldset>button{align-self:end}.school-calendar{grid-template-columns:repeat(7,minmax(0,1fr));gap:8px;margin:16px 0;display:grid}.school-calendar article{overflow-wrap:anywhere;background:#fff;border:1px solid #e3e6ef;border-radius:10px;min-height:100px;padding:10px}.school-calendar h4{margin:0 0 8px;font-size:16px}.school-calendar p{margin:6px 0;font-size:16px}.calendar-recurring{color:#64748b}.calendar-controls{flex-wrap:wrap;gap:16px;display:flex}.floor-workspace{max-width:900px;margin:auto;padding:24px}.floor-workspace header,.floor-student{flex-wrap:wrap;align-items:center;gap:12px;margin:16px 0;display:flex}.floor-workspace header{justify-content:space-between}@media (width<=900px){.school-calendar{grid-template-columns:repeat(3,minmax(0,1fr))}}@media (width<=540px){.school-calendar{grid-template-columns:1fr}.floor-workspace{padding:12px}}.button-group{flex-wrap:wrap;align-items:center;gap:12px;margin:12px 0;display:flex}.button-group>button{margin:0}.testing-quick-actions button[aria-pressed=true]{background:var(--primary,#6754c4);color:#fff;box-shadow:0 0 0 2px #bdb1ef}.testing-decision-panel{border:1px solid #e7e4ed;border-radius:12px;margin:16px 0;padding:16px}.brand-logo{object-fit:contain;flex-shrink:0;width:33px;height:33px}.button-group{flex-wrap:wrap;align-items:center;gap:12px;display:flex}.button-group>button,.button-group>dialog{margin:0}.testing-quick-actions .button-group{gap:16px}.feature-heading{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.feature-heading h1,.feature-heading h2,.feature-heading h3{margin-bottom:0}main .help-button{color:#385aa3;background:#edf1fc;border:1px solid #b9c9ed;border-radius:50%;justify-content:center;align-items:center;width:26px;height:26px;min-height:26px;margin:0;padding:0;display:inline-flex}.feature-description{color:#59677d;max-width:78ch}.filter-group,.meeting-row{flex-wrap:wrap;align-items:end;gap:16px;margin:16px 0;display:flex}.calendar-scroll{max-width:100%;overflow-x:auto}.school-calendar{grid-template-columns:repeat(7,minmax(0,1fr));gap:6px;min-width:0;padding:4px;display:grid}.calendar-weekday{text-align:center;padding:10px 2px;font-size:16px;font-weight:700}.school-calendar article{overflow-wrap:anywhere;border:1px solid #dce5f2;border-radius:8px;min-height:120px;padding:10px}.school-calendar article.past{color:#687383;background:#f1f3f5}.school-calendar article.future{background:#f6faff}.school-calendar article.today{background:#e3f1ff;border:2px solid #387fd1}.school-calendar article.adjacent h4{opacity:.6}.school-calendar article p{margin:8px 0;font-size:16px;line-height:1.45}#testing-preparation td:last-child{min-width:300px}.profile-tabs{border-bottom:1px solid #dce5f2;flex-wrap:wrap;gap:12px;margin:20px 0;padding-bottom:12px;display:flex}.profile-tabs>button{margin:0}.profile-tabs [aria-selected=true]{background:var(--primary,#6754c4);color:#fff}main .attendance-status{border:2px solid #0000;min-width:130px;min-height:48px;margin:0;font-weight:700}main .attendance-present{color:#145d30;background:#d5f5df;border-color:#54a870}main .attendance-late{color:#755000;background:#fff0be;border-color:#c59b26}main .attendance-absent{color:#882424;background:#ffe0e0;border-color:#cf6a6a}main .attendance-unmarked,main .attendance-excused{color:#43536a;background:#eef1f5;border-color:#bcc7d6}.attendance-counts{font-weight:650;line-height:1.8}.generation-preview{background:#f8faff;border:1px solid #dce5f2;border-radius:12px;margin:16px 0;padding:16px}.photo-preview-trigger{color:inherit;cursor:zoom-in;vertical-align:middle;background:0 0;border:0;border-radius:50%;padding:0;display:inline-flex}.student-photo-preview{z-index:10000;box-sizing:border-box;background:var(--surface);width:min(240px,100vw - 24px);color:var(--ink);border:2px solid var(--border);border-radius:12px;gap:6px;padding:8px;display:grid;position:fixed;box-shadow:0 12px 36px #0005}.student-photo-preview img{object-fit:contain;width:100%;height:224px;max-height:55vh;display:block}.student-photo-preview button{min-height:36px}.photo-preview-trigger:focus-visible{outline:3px solid var(--accent);outline-offset:3px}:root{color:#27344c;font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--purple:#6c5cde;--border:#e7eaf1;--muted:#8390a6;--chart-0:#8673e5;--chart-1:#b7a8f0;--chart-2:#5cb6aa;--chart-3:#e1b66a;background:#f5f6fa;font:16px/1.55 Inter,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}*{box-sizing:border-box}body{margin:0}button,input,select,textarea{font:inherit}button{background:var(--accent);min-height:38px;color:var(--on-accent,#fff);cursor:pointer;border:1px solid #0000;border-radius:7px;justify-content:center;align-items:center;gap:8px;padding:9px 15px;font-size:16px;font-weight:600;transition:background .15s;display:inline-flex}button:hover:not(:disabled){background:var(--accent);box-shadow:inset 0 0 0 2px var(--accent-ink)}button:disabled{opacity:.5;cursor:not-allowed}button.secondary{color:#66728a;border-color:var(--border);background:#fff}a{color:#6c5cce;text-underline-offset:3px}input,select,textarea{color:#30405a;background:#fff;border:1px solid #dfe4ed;border-radius:7px;outline:none;min-width:0;max-width:100%;min-height:41px;padding:10px 12px}input[type=checkbox],input[type=radio]{width:16px;height:16px;min-height:0;accent-color:var(--purple)}input[type=date],input[type=time]{min-width:150px}textarea{resize:vertical;min-height:80px}label{color:#607089;flex-direction:column;gap:6px;min-width:0;font-size:16px;font-weight:550;display:inline-flex}label:has(input[type=checkbox]){flex-direction:row;align-items:center;font-weight:400}fieldset{border:0;min-width:0;margin:0;padding:0;display:contents}legend{float:left;color:#46556f;width:100%;margin-bottom:16px;font-size:16px;font-weight:600}form{border:1px solid var(--border);background:#fafbfe;border-radius:9px;flex-wrap:wrap;align-items:flex-end;gap:15px;margin:20px 0;padding:22px;display:flex}form>input,form>select,form>label,form>fieldset>input,form>fieldset>select,form>fieldset>label,form>fieldset>div{flex:200px}form label>input:not([type=checkbox]),form label>select,form label>textarea,form>fieldset>div>label{width:100%}form>p,form>h3,form>fieldset>p,form>fieldset>h3,form>fieldset>legend{flex-basis:100%}form>button,form>fieldset>button{align-self:flex-end}section{border:1px solid var(--border);background:#fff;border-radius:11px;min-width:0;margin-bottom:22px;padding:25px;box-shadow:0 2px 4px #15274703}section section{box-shadow:none;background:#fbfcff}h1,h2,h3,h4,p{margin-top:0}h1,h2,h3,h4{color:#25334b;letter-spacing:-.025em}h1{margin-bottom:7px;font-size:29px;line-height:1.3}h2{margin-bottom:10px;font-size:17px;font-weight:650}h3{margin:25px 0 13px;font-size:16px}h4{margin:19px 0 12px;font-size:16px}p{margin-bottom:12px}section>p,form p{color:#8490a6;font-size:16px}hr{border:0;border-top:1px solid var(--border);margin:26px 0}table{border-collapse:collapse;text-align:left;width:100%;margin:18px 0;font-size:16px}th{border-block:1px solid var(--border);color:#8a95a9;text-transform:uppercase;letter-spacing:.04em;white-space:nowrap;background:#fafbfe;padding:13px 16px;font-size:16px}td{color:#718098;vertical-align:middle;overflow-wrap:anywhere;border-bottom:1px solid #edf0f6;padding:16px}tbody tr:hover{background:#fdfcff}td:first-child{color:#44526b;font-weight:550}td button{color:#8270ce;background:#f4f1fd;border-color:#ebe5fa;min-height:28px;margin:2px;padding:5px 9px;font-size:16px}td button:hover:not(:disabled){background:#ece6fc}td button.danger{color:#bb6a7c;background:#fdf1f3;border-color:#f4e2e7}td:last-child{min-width:135px}details{border:1px solid var(--border);border-radius:8px;margin:16px 0;padding:15px}summary{cursor:pointer;color:#6c7891;padding:3px;font-size:16px;font-weight:600}details[open]>summary{margin-bottom:16px}ul,ol{padding-left:20px}li{margin-bottom:7px}article{border:1px solid var(--border);border-radius:9px;margin:16px 0;padding:20px}article>h4{margin-top:0}article form{padding:16px}svg{flex-shrink:0}[hidden]{display:none!important}button:focus-visible,a:focus-visible,summary:focus-visible,[tabindex]:focus-visible{outline-offset:3px;outline:3px solid #b1a4f1}.sr-only{clip:rect(0,0,0,0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.skip-link{z-index:100;background:#fff;padding:12px;position:fixed;top:-80px;left:260px}.skip-link:focus{top:10px}.eyebrow{letter-spacing:.13em;color:#9aa3b7;margin-bottom:10px;font-size:16px;font-weight:650;display:block}.subtle{color:#9aa4b5;font-size:16px}.icon-button{color:#9a8cbd;background:0 0;border:0;min-height:30px;padding:6px}.icon-button:hover:not(:disabled){background:#f2eefb}.text-button{color:#9684cb;background:0 0;min-height:25px;padding:0;font-size:16px}.text-button:hover:not(:disabled){color:#6a53b2;background:0 0}.badge{color:#8b97ad;white-space:nowrap;background:#f1f3f8;border-radius:5px;align-items:center;gap:5px;padding:4px 8px;font-size:16px;font-weight:550;line-height:1.3;display:inline-flex}.badge-success{color:#5f9d7c;background:#ecf8f1}.badge-success:before{content:"";background:#72b58e;border-radius:50%;width:5px;height:5px}.badge-warning{color:#b09764;background:#fff6e5}.badge-purple{color:#9780cd;background:#f0ebfc}.badge-danger{color:#ba7187;background:#fdf0f3}.empty-state{text-align:center;color:#99a3b6;padding:32px 20px}.empty-icon{color:#ae9bd8;background:#f5f2fc;border:1px solid #efe9fb;border-radius:12px;padding:13px;display:inline-flex}.empty-state h3{color:#78859d;margin:14px 0 7px;font-size:16px}.empty-state p{max-width:420px;margin:0 auto;font-size:16px}.search-field{border:1px solid var(--border);color:#b0a5cc;background:#fff;border-radius:7px;align-items:center;gap:9px;min-width:200px;max-width:340px;padding:0 12px;display:flex}.search-field input{box-shadow:none;border:0;width:100%;min-height:38px;padding-inline:0;font-size:16px}.search-field:focus-within{outline:2px solid #c5bff8}.list-toolbar{justify-content:space-between;align-items:center;gap:15px;margin:20px 0;display:flex}.list-count{color:#9ba5b9;font-size:16px}.table-scroll{border-radius:7px;max-width:100%;overflow-x:auto}.table-scroll table{min-width:650px;margin:0}.workspace-notice,[role=alert]{color:#9b8555;background:#fffcf3;border:1px solid #f0e5c6;border-radius:8px;padding:12px 15px;font-size:16px}.workspace-notice{color:#8a73bb;background:#f5f1ff;border-color:#e8e0fa;justify-content:space-between;align-items:center;margin-bottom:20px;display:flex}section>p[role=status]{color:#927bbb;background:#f7f4ff;border-radius:7px;padding:12px}.link-button{text-align:left;justify-content:flex-start;color:var(--link)!important;min-height:24px!important;font-size:inherit!important;background:0 0!important;border:0!important;padding:0!important}.table-avatar{color:#a28ac8;background:#f1eafb;border-radius:9px;flex-shrink:0;place-items:center;width:32px;height:32px;font-size:16px;font-weight:600;display:inline-grid}.person-cell{align-items:center;gap:11px;display:flex}.person-cell strong{font-size:16px;display:block}.person-cell small{color:#a2acbc;font-size:16px;font-weight:400;display:block}.family-card{border:1px solid var(--border);border-radius:9px;margin:14px 0;padding:20px}.family-card h3{margin-top:0}.family-actions{float:right}.family-card ul{flex-wrap:wrap;gap:10px;padding:0;list-style:none;display:flex}.family-card li{background:#f7f3fd;border-radius:5px;padding:5px 9px;font-size:16px}.profile-header{align-items:center;gap:15px;margin-bottom:24px;display:flex}.profile-header .table-avatar{width:52px;height:52px;font-size:18px}.profile-header h3{margin:0;font-size:20px}.profile-details{grid-template-columns:1fr 1fr;gap:15px;margin:20px 0;display:grid}.profile-details div{border:1px solid var(--border);border-radius:7px;padding:12px 15px}.profile-details dt{text-transform:uppercase;letter-spacing:.04em;color:#9ea7b9;font-size:16px}.profile-details dd{margin:5px 0 0;font-size:16px}.confirm-dialog{border:1px solid var(--border);color:#7b879c;border-radius:14px;width:calc(100% - 36px);max-width:440px;padding:30px;box-shadow:0 24px 100px #0c17333d}.confirm-dialog::backdrop{-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);background:#0e19386b}.confirm-dialog h2{margin-top:18px;font-size:20px}.dialog-icon{color:#9d86d2;background:#f3effe;border-radius:12px;padding:12px;display:inline-flex}.dialog-actions{justify-content:flex-end;gap:10px;margin-top:25px;display:flex}.engine-section>fieldset{display:block}.engine-section>fieldset>legend{float:none;color:#9b83ca;margin:0;padding:15px 0}.engine-section>fieldset>button{margin:5px}.engine-section>fieldset>label{margin:12px 12px 12px 0}.engine-section article{background:#fdfcff}.creation-section{margin-top:22px}.muted-note{color:#9aa4b8;padding:14px 0;font-size:16px}.report-grid{grid-template-columns:1fr 1fr;gap:20px;display:grid}.report-grid article{background:#fbfaff;margin:10px 0;padding:25px}.report-icon{color:#a58ad2;background:#f0eafb;border-radius:10px;padding:12px;display:inline-flex}.report-grid h3{margin-top:15px}.report-grid p{color:#98a1b5;font-size:16px}.dashboard-footnote{color:#9fa8ba;margin-top:20px;font-size:16px}@media (width<=700px){section{border-radius:9px;padding:18px}form{gap:12px;padding:16px}form>input,form>select,form>label,form>fieldset>input,form>fieldset>select,form>fieldset>label,form>fieldset>div{flex-basis:100%}td{padding:13px 11px}th{padding:11px}.list-toolbar{flex-direction:column;align-items:flex-start}.search-field{width:100%;max-width:none}.profile-details,.report-grid{grid-template-columns:1fr}.family-actions{float:none;margin-bottom:12px}h1{font-size:25px}.skip-link{left:16px}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition:none!important;animation:none!important}}@media print{body{color:#000;background:#fff;font-size:16px}.sidebar,.topbar,.page-heading,.workspace-footer,.workspace-notice,.creation-panels,button,form,.skip-link{display:none!important}.workspace{margin:0!important}main{max-width:none!important;padding:0!important}section{box-shadow:none;border:0;margin:0 0 20px;padding:0}table{font-size:16px;min-width:0!important;display:table!important}thead{display:table-header-group}tr{break-inside:avoid}.table-scroll{overflow:visible}.badge{border:1px solid #ccc}details{border:0}a{color:#000;text-decoration:none}@page{size:landscape;margin:12mm}}.table-filter{align-items:center;gap:15px;margin:14px 0;display:flex}.table-filter>span{color:#607089;font-size:16px}.table-filter .search-field{max-width:260px}section>p,form p,.muted-note,.subtle,.list-count,.report-grid p{color:#607089}th{color:#5c6b82;font-size:16px}td,.badge{color:#53637b}.badge-warning{color:#886318}.badge-purple{color:#6d51a1}.badge-danger{color:#9f435e}.badge-success{color:#357553}.search-field input{font-size:16px}.empty-state p{color:#65748a;font-size:16px}.table-filter{flex-wrap:wrap}@media print{.table-filter{display:none!important}}.session-loading{color:#607089;flex-direction:column;justify-content:center;align-items:center;gap:20px;min-height:100svh;display:flex}.quick-card h2,.quick-card p,.quick-actions button{color:#715795}.task-list small{color:#65748a;font-size:16px}.simple-list strong,.simple-list span{color:#607089;font-size:16px}.simple-list li{gap:15px}.eyebrow{color:#6e7890}.dashboard-footnote{color:#65748a;font-size:16px}:root{--surface:#fff;--surface-soft:#f7f8fc;--canvas:#f2f4f8;--ink:#26344c;--muted:#56657c;--border:#dce2ec;--accent:#6941bd;--accent-soft:color-mix(in srgb,var(--accent) 10%,var(--surface));--chart-0:var(--accent);--chart-1:color-mix(in srgb,var(--accent) 65%,var(--surface))}:root[data-theme=dark]{--surface:#1b2639;--surface-soft:#222f45;--canvas:#111a29;--ink:#edf2fa;--muted:#b7c4d8;--border:#40506a;--accent-soft:color-mix(in srgb,var(--accent) 23%,var(--surface))}html,body,.workspace,.login-main{background:var(--canvas);color:var(--ink)}section,article,dialog,.topbar,.metric-card,.task-list>button,.login-card input,.school-calendar article{background:var(--surface);color:var(--ink);border-color:var(--border)}section section,form,th,.dashboard-grid .quick-card,.generation-preview,.school-calendar article.future,.date-tile,.testing-decision-panel{background:var(--surface-soft);border-color:var(--border)}h1,h2,h3,h4,legend,td:first-child,.metric-card>strong,.card-heading h2,.dashboard-welcome h2,.quick-card h2,.task-list strong,.simple-list strong,.schedule-list li>div:nth-child(2)>strong,.table-avatar,.login-card h2{color:var(--ink)}p,section>p,form p,label,td,th,.feature-description,.breadcrumb,.page-heading p,.metric-label,.metric-detail,.card-heading p,.rank-label,.rank-label strong,.chart-column,.chart-note,.chart-value,.workspace-footer,.dashboard-footnote,.login-card label,.login-card>p,.login-card .login-help,.login-legal,.page-context,.simple-list span,.schedule-list li>div:nth-child(2)>span{color:var(--muted)}input,select,textarea{background:var(--surface);color:var(--ink);border-color:var(--border)}input::placeholder{color:var(--muted)}input:focus,select:focus,textarea:focus{border-color:var(--accent);box-shadow:0 0 0 3px color-mix(in srgb,var(--accent) 20%,transparent)}button.secondary,.task-list>button{color:var(--ink);background:var(--surface);border-color:var(--border)}td button,.quick-actions>button,.table-avatar,.task-icon{background:var(--accent-soft);color:var(--ink);border-color:var(--border)}td button:hover:not(:disabled),tbody tr:hover{background:var(--accent-soft)}td,th,.schedule-list li,.simple-list li{border-color:var(--border)}.chart-columns{background-image:none}.progress-track{background:var(--border)}.profile-tabs [aria-selected=true],.testing-quick-actions button[aria-pressed=true]{background:var(--accent);color:#fff}.sidebar{background:#142139}.nav-item.active{background:color-mix(in srgb,var(--accent) 35%,#142139);color:#fff}.button-group,.quick-actions,.appearance-options{gap:16px}.button-group>button,.profile-tabs>button{margin:0}.appearance-options{flex-wrap:wrap;align-items:center;margin:20px 0;display:flex}.appearance-options legend{float:none}.appearance-options label{flex-direction:row;align-items:center;gap:8px}.appearance-options button[aria-pressed=true]{outline:3px solid var(--ink);outline-offset:3px}.accent-swatch{border:1px solid #fff;border-radius:50%;width:18px;height:18px}.management-form{margin:16px 0;padding:16px}.management-form>h3{margin:0}.management-form form{margin:12px 0 0;padding:16px}.student-profile form{background:var(--surface);border:0;padding:0}.profile-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;display:grid}.profile-grid>label,.profile-grid textarea{width:100%}.profile-savebar{z-index:5;background:var(--surface);border:1px solid var(--border);border-radius:10px;flex-wrap:wrap;align-items:center;gap:16px;width:100%;padding:16px;display:flex;position:sticky;bottom:12px;box-shadow:0 3px 18px #0002}.profile-savebar button{margin:0}.leadership-options{flex-wrap:wrap;gap:16px;display:flex}.leadership-options button{background:var(--surface);color:var(--ink);border-color:var(--border);margin:0}.leadership-options [aria-pressed=true]{background:var(--accent);color:#fff}.profile-overview{grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;margin:20px 0;display:grid}.profile-overview>div{background:var(--surface-soft);border:1px solid var(--border);border-radius:8px;padding:16px}.profile-overview strong{color:var(--ink);font-size:18px;display:block}.family-member-form .role-options{flex-wrap:wrap;gap:16px;display:flex}.family-member-form .role-options label{flex-direction:row;align-items:center}.family-member-form fieldset{width:100%;display:block}.workflow-tabs{flex-wrap:wrap;gap:16px;margin:16px 0;display:flex}.workflow-tabs [aria-selected=true]{background:var(--accent);color:#fff}:root[data-theme=dark] .badge-success,:root[data-theme=dark] .badge-warning,:root[data-theme=dark] .badge-danger,:root[data-theme=dark] .badge-neutral{background:var(--surface-soft);color:var(--ink);border:1px solid var(--border)}@media (width<=700px){.profile-grid,.profile-overview{grid-template-columns:1fr}.profile-savebar{bottom:0}.management-form{padding:12px}}.brand-lockup{flex-direction:column;gap:10px;width:100%;min-width:0;display:flex}.brand-logo{object-fit:contain;width:100%;height:auto;max-height:140px}.brand-business{letter-spacing:0;color:inherit;white-space:normal;font-size:16px;line-height:1.5}.brand-wordmark{letter-spacing:-.6px;font-size:24px;font-weight:650}.login-mini-brand .brand-logo{max-width:250px}.login-mini-brand .brand-wordmark{color:var(--ink)}:root{--link:var(--accent)}:root[data-theme=dark]{--link:color-mix(in srgb,var(--accent) 50%,white)}a,.link-button,.text-button{color:var(--link)}.school-calendar article.past{background:var(--surface-soft);color:var(--muted)}.school-calendar article.today{background:var(--accent-soft);border-color:var(--accent)}.brand-logo{background:#fff;border-radius:8px;padding:4px}.login-story .brand{max-width:330px}.session-loading .brand-logo{max-width:280px}.brand{letter-spacing:normal}.student-profile>section{margin:16px 0;padding:16px}.student-profile>section>h3:first-child{margin-top:0}.student-profile .profile-overview{margin:16px 0}.management-form fieldset{padding:0}.search-field{background:var(--surface);border-color:var(--border)}.search-field input{background:0 0}.student-profile .profile-grid>label{font-size:16px}:root{font-size:16px;line-height:1.6}h1,.page-heading h1{font-size:32px}h2,.dashboard-welcome h2,.login-card h2{font-size:28px}h3,.card-heading h2,.empty-state h3{font-size:22px}h4,legend{font-size:20px}th,.eyebrow,.nav-label{text-transform:none;letter-spacing:normal}p,label,td,th,small,.subtle,.badge,.brand-business{font-size:16px;line-height:1.6}button,input,select,textarea,.nav-item{font-size:16px;line-height:1.5}input,select,textarea{min-height:44px}input[type=checkbox],input[type=radio]{min-height:0}button{white-space:normal;overflow-wrap:anywhere;min-height:44px}section,article,form,.management-form,.management-form form,.student-profile>section{padding:24px}form,.community-workspace fieldset{gap:16px}.workspace main{min-width:0;padding:32px}.workspace main>*{min-width:0}p,label,button,th{overflow-wrap:anywhere}.nav-item{height:auto}.nav-label{color:#c1cce0}.sidebar{overflow-y:auto}.metric-label,.metric-detail{height:auto}.enrollment-chart{height:230px}.chart-value{height:auto}.chart-track{height:140px}.rank-bars{max-height:none}.date-tile{height:auto;min-height:56px;padding:8px}.school-calendar article{height:auto;min-height:150px}.school-calendar h4,.school-calendar p,.school-calendar article p,.calendar-weekday{font-size:16px}.profile-savebar{box-shadow:none;margin:24px 0 0;position:static}.profile-header{flex-wrap:wrap;gap:16px}.confirm-dialog{background:var(--surface);color:var(--ink)}.cycle-summary{flex-wrap:wrap;align-items:center;gap:16px;display:flex}.cycle-editor{margin-top:16px}.back-navigation{margin-bottom:16px}.rank-assignment{margin:24px 0}.progression-list{flex-wrap:wrap;gap:16px;padding:0;list-style:none;display:flex}.progression-list li{border:1px solid var(--border);border-radius:8px;padding:12px 16px}.dashboard-welcome,.card-heading{flex-wrap:wrap}.login-story p,.login-card>p,.login-help,.login-legal{font-size:16px}@media (width<=900px){.workspace main{padding:24px}.metric-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width<=700px){.workspace main{padding:16px}.topbar{flex-wrap:wrap;height:auto;min-height:64px;padding:16px}.topbar-right{flex-wrap:wrap}.metric-grid{grid-template-columns:1fr}section,article,form,.management-form,.management-form form,.student-profile>section{padding:20px}.dashboard-welcome p{max-width:none}.page-heading h1{font-size:28px}.brand-business{font-size:16px}.meeting-row{grid-template-columns:1fr}.profile-savebar{padding:16px}.profile-savebar>span{flex-basis:100%}}label{max-width:100%}label>select{width:100%}.cycles-table td,.cycles-table th{vertical-align:top;padding:8px 12px}.cycle-actions .cycle-editor{box-shadow:none;background:0 0;border:0;margin:8px 0;padding:0}.cycle-editor fieldset{border:0;grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:12px;min-width:0;padding:0;display:grid}.cycle-editor p,.cycle-editor .button-group{grid-column:1/-1;margin:0}.cycle-actions details{margin-top:8px}.cycle-actions details input{width:100%}.sidebar .brand{min-height:0;margin:0;padding:16px 20px;display:block}.sidebar .brand-lockup{align-items:center;gap:14px}.sidebar .brand-logo{object-fit:contain;background:0 0;border-radius:0;width:100%;height:auto;max-height:120px;padding:0}.sidebar .brand-business{text-align:center;white-space:normal;text-overflow:clip;overflow-wrap:normal;word-break:normal;width:100%;font-weight:600;display:block;overflow:visible}.sidebar .nav-item{gap:12px;padding:10px 16px}.profile-header{flex-direction:column;align-items:flex-start;display:flex}.profile-header .back-navigation{margin:0}.rank-assignment{border:1px solid var(--border);border-radius:8px;background:var(--surface)!important;padding:16px!important}.rank-assignment h3,.rank-assignment p{margin:0 0 8px}.compact-rank-editor{box-shadow:none;background:0 0;padding:12px 0 0!important}.compact-rank-editor fieldset{border:0;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:12px;padding:0;display:grid}.compact-rank-editor .button-group,.compact-rank-editor p{grid-column:1/-1}.school-calendar .calendar-session{text-align:left;background:var(--surface);width:100%;color:var(--ink);border:1px solid var(--border);border-radius:6px;padding:8px;font-size:16px;line-height:1.5;display:block}.calendar-session span{font-weight:400;display:block}.school-calendar .calendar-recurring{color:var(--muted)}.assignment-review article{border-bottom:1px solid var(--border);background:0 0;padding:12px 0}.assignment-review button[aria-pressed=true]{background:var(--accent);color:var(--on-accent,#fff);border-color:var(--accent)}.class-draft-fields{grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:12px;min-width:0;display:grid}.class-draft-fields>div,.class-draft-fields>p{grid-column:1/-1}.compact-schedule-editor{padding:12px!important}.cycle-setup{background:0 0!important;padding:12px 0!important}.cycle-setup>button{font-weight:650}.wizard-progress{flex-wrap:wrap;gap:12px 32px;padding-left:24px;display:flex}.wizard-progress [aria-current=step]{color:var(--link);font-weight:700}.cycle-setup form{padding:16px!important}.cycle-setup fieldset{border:0;min-width:0;padding:0}.cycle-setup section{padding:12px!important}.cycle-setup details{margin:12px 0}.dashboard .rank-bars{scrollbar-gutter:stable;max-height:320px;padding-right:12px;overflow-y:auto}.public-site>nav{background:var(--surface);border-bottom:1px solid var(--border);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:20px;padding:16px 24px;display:flex}.public-site>nav .brand{max-width:180px;margin:0;padding:0}.public-site>nav>div{flex-wrap:wrap;gap:12px 20px;display:flex}.public-site a{color:var(--link);text-underline-offset:4px;font-size:16px}.public-site .login-layout{min-height:calc(100svh - 160px)}.public-site .login-story h1{letter-spacing:-1px;max-width:700px;font-size:clamp(36px,4.4vw,64px);line-height:1.12}.public-site .login-story p{font-size:clamp(18px,1.5vw,20px);line-height:1.6}.public-site .login-card h2{font-size:28px}.public-site .login-card label,.public-site .login-card input,.public-site .login-card button{font-size:16px}.public-footer{border-top:1px solid var(--border);background:var(--surface);flex-wrap:wrap;justify-content:space-between;gap:12px;padding:20px 24px;font-size:16px;display:flex}.public-content{max-width:1000px;min-height:65svh;margin:0 auto;padding:clamp(24px,6vw,80px)}.public-content h1{font-size:clamp(32px,5vw,56px);line-height:1.2}.public-content p{font-size:20px;line-height:1.7}.cycles-workspace>.cycle-section{border:1px solid var(--border);background:var(--surface);border-radius:12px;width:100%;margin:20px 0;padding:20px;display:block}.cycle-section>h2,.cycle-setup h3{margin:0 0 16px;font-size:26px;line-height:1.3}.cycle-setup h4,.cycle-section h3{font-size:22px;line-height:1.4}.cycle-section p,.cycle-section label,.cycle-setup li,.cycle-setup button,.cycle-setup input,.cycle-setup select,.cycle-setup summary{font-size:16px;line-height:1.5}.cycle-setup input[type=checkbox],.assignment-review input[type=checkbox]{width:22px;height:22px;min-height:22px;accent-color:var(--link);flex-shrink:0}.cycle-setup label{flex-wrap:wrap;align-items:center;gap:10px;min-height:44px;margin:8px 0;display:flex}.cycle-setup label input:not([type=checkbox]),.cycle-setup label select{flex:200px;width:auto;min-width:0}.cycle-setup .class-draft-fields{grid-template-columns:repeat(auto-fit,minmax(min(100%,260px),1fr));gap:12px 20px;display:grid}.cycle-setup .wizard-progress{gap:12px 32px;margin:20px 0;line-height:1.6}.cycle-setup button{min-height:44px;padding:10px 16px}.assignment-review .assignment-row{border-bottom:1px solid var(--border);box-shadow:none;background:0 0;margin:0;padding:12px 0!important}.assignment-row p{margin:4px 0}.assignment-row .button-group{gap:8px;margin:8px 0}.assignment-row button[aria-pressed=true]{outline:2px solid var(--link);outline-offset:1px}.assignment-row details{margin:4px 0}.family-billing-summary{border-block:1px solid var(--border);margin:12px 0;padding:12px 0}.family-billing-summary p{margin:4px 0}.calendar-recurring small{font-size:16px;display:block}.calendar-recurring button{min-height:44px;padding:6px;font-size:16px}@media (width<=600px){.cycles-workspace>.cycle-section{padding:16px 12px}.public-site>nav{padding:12px}.public-footer{padding:16px}.cycle-setup form{padding:8px!important}}.compact-class-form{flex-wrap:wrap;align-items:end;gap:12px;display:flex;padding:12px 0!important}.compact-class-form>label{flex:150px;min-width:0;margin:0}.compact-class-form>label:nth-child(2){flex:2 220px}.class-weekdays{flex-wrap:wrap;flex-basis:100%;gap:8px 16px;display:flex}.class-weekdays label{align-items:center;gap:6px;min-height:40px;display:flex}.family-card h3 .link-button{color:var(--ink);font-weight:750}[data-theme=dark] .family-card h3 .link-button{color:#fff}.family-card li .link-button{color:var(--chart-2)}.enrollment-rules{flex-wrap:wrap;flex-basis:100%;order:2;gap:12px;display:flex;padding:12px 0!important}.enrollment-rules legend{float:none;margin:0 0 8px;font-size:20px}.enrollment-rules label{flex:180px}.enrollment-rules details{flex:250px}.rule-options{flex-wrap:wrap;flex-basis:100%;gap:8px 16px;max-height:240px;display:flex;overflow:auto}.rule-options label{flex:0 auto;min-height:36px}.class-weekdays{order:1}.calendar-recurring .setup-class-action{color:var(--link);background:0 0;min-height:32px;padding:4px 6px;font-size:16px;text-decoration:underline}.class-roster-options{flex-direction:column;gap:8px;max-height:420px;margin:12px 0;display:flex;overflow:auto}.class-roster-options label{flex-wrap:wrap;gap:10px;min-height:40px}.family-card>h3{background:0 0;padding:0}.public-registration{max-width:900px;color:var(--ink);background:var(--surface);margin:2rem auto;padding:1rem}.public-registration fieldset{border:1px solid var(--border);border-radius:var(--radius);margin:1rem 0;padding:1rem}.public-registration label,.registration-management label{flex-wrap:wrap;align-items:center;gap:.5rem;margin:.5rem 0;display:flex}.public-registration label:has(input:not([type=checkbox])){flex-direction:column;align-items:stretch}.registration-fields{grid-template-columns:repeat(auto-fit,minmax(min(100%,220px),1fr));gap:.5rem 1rem;display:grid}.agreement-text{white-space:pre-wrap;overflow-wrap:anywhere;max-width:100%;font:inherit}.registration-honeypot{width:1px;height:1px;position:absolute;left:-10000px;overflow:hidden}.registration-row{border-bottom:1px solid var(--border);flex-wrap:wrap;align-items:center;gap:1rem;padding:.5rem 0;display:flex}.registration-management details{margin:.5rem 0}.registration-management textarea{min-height:5rem}:root{--page-padding:32px;--card-padding:22px;--section-gap:20px;--on-accent:#fff;--chart-0:var(--accent);--chart-1:color-mix(in srgb,var(--accent) 80%,var(--ink));--chart-2:color-mix(in srgb,var(--accent) 65%,var(--ink));--chart-3:color-mix(in srgb,var(--accent) 50%,var(--ink))}:root[data-theme=dark]{--chart-1:color-mix(in srgb,var(--accent) 75%,white);--chart-2:color-mix(in srgb,var(--accent) 55%,white);--chart-3:color-mix(in srgb,var(--accent) 35%,white)}.workspace main{padding:var(--page-padding)}section,article,.family-card{padding:var(--card-padding)}section section{box-shadow:none}main button{margin:4px}.list-toolbar,.family-card-header{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;display:flex}.family-card-header h3,.family-card p{margin:4px 0}.family-actions{float:none;flex-wrap:wrap;gap:8px;display:flex}.family-actions button{margin:0}.family-card ul{margin:12px 0 0}.family-card li{background:var(--accent-soft);border:1px solid var(--border)}.family-billing-summary{margin:8px 0;padding:8px 0;font-size:16px}.family-card h3 .link-button,.person-cell .link-button,.people-directory td:first-child .link-button{font-weight:650;color:var(--ink)!important;font-size:17px!important}.link-button,.text-button{color:var(--link)!important}.link-button:hover,.link-button:focus-visible{text-underline-offset:4px;text-decoration:underline;color:var(--link)!important}.workflow-tabs button{background:var(--surface);color:var(--ink);border:1px solid var(--border);margin:0}.workflow-tabs [aria-selected=true]{background:var(--accent);color:var(--on-accent);border-color:var(--accent)}.metric-icon,.task-icon,.empty-icon,.report-icon,.dialog-icon,.table-avatar,.topbar-avatar,.user-avatar,.badge-purple{background:var(--accent-soft);color:var(--link);border-color:var(--border)}.metric-card:hover:not(:disabled){background:var(--surface-soft);border-color:var(--accent);box-shadow:none}.enrollment-chart{background:repeating-linear-gradient(to top,transparent 0,transparent 40px,var(--border) 40px,var(--border) 41px)}.chart-bar{background:var(--chart-0)}.card-heading>svg,.date-tile strong,.date-tile span,.eyebrow,.icon-button,.search-field,.engine-section>fieldset>legend{color:var(--link)}.task-list small,.empty-state p,.table-filter>span,summary{color:var(--muted)}.quick-card,.report-grid article,.engine-section article,.workspace-notice,section>p[role=status]{background:var(--surface-soft);color:var(--ink);border-color:var(--border)}.icon-button:hover:not(:disabled),.text-button:hover:not(:disabled){background:var(--accent-soft);color:var(--link)}button:focus-visible,a:focus-visible,summary:focus-visible,[tabindex]:focus-visible,.search-field:focus-within{outline-color:var(--link)}.students-directory td,.students-directory th,.people-directory td,.people-directory th{padding:12px 14px}.students-directory th,.people-directory th{font-size:16px;font-weight:650}.students-directory select{max-width:150px;min-height:38px}.compact-editor{border:0;margin:12px 0;padding:0}.compact-editor>summary{border:1px solid var(--border);min-height:44px;color:var(--link);border-radius:6px;align-items:center;padding:8px 14px;display:inline-flex}.compact-editor .management-form{margin:12px 0;padding:16px}.compact-editor .management-form form{background:0 0;margin:0;padding:0}.compact-editor fieldset{grid-template-columns:repeat(auto-fit,minmax(min(100%,220px),1fr));gap:16px;display:grid}.compact-editor label:has(input[type=checkbox]){flex-direction:row;justify-content:space-between;align-items:center;gap:12px;display:flex}.compact-editor .button-group{grid-column:1/-1}.staff-section{border:1px solid var(--border);border-radius:8px;margin:20px 0;padding:20px}.staff-section>h3{margin:0 0 12px}.permission-grid{grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:12px;display:grid}.permission-grid label{flex-direction:row;justify-content:space-between;align-items:center;gap:12px;display:flex}.permission-grid input{width:20px;height:20px;accent-color:var(--accent)}@media (width<=900px){:root{--page-padding:24px}}@media (width<=700px){:root{--page-padding:16px;--card-padding:20px}.family-card-header{align-items:flex-start}.family-actions{width:100%}.list-toolbar{align-items:stretch}.staff-section{padding:16px}.compact-editor fieldset{grid-template-columns:1fr}}.staff-workspace{box-shadow:none;background:0 0;border:0;padding:0}.staff-workspace .staff-section{background:var(--surface)}.staff-section>form{background:0 0;border:0;padding:0}.staff-section details{padding:10px 12px}.staff-section .table-scroll table{margin:0}.team-account-list{flex-wrap:wrap;gap:12px 20px;margin:12px 0;padding:0;list-style:none;display:flex}.team-account-list li{align-items:center;gap:8px;margin:0;display:flex}.public-site{--public-navy:#14263b;--public-teal:#087779;--public-muted:#526275;--public-gray:#f2f4f5;color:var(--public-navy);background:#fff;min-height:100svh}.public-site>nav{background:#fff;border-bottom:1px solid #e2e7eb;gap:20px;min-height:100px;padding:20px clamp(24px,5vw,80px)}.public-site>nav .brand{width:220px;max-width:220px;margin:0}.public-site>nav .brand-logo{background:0 0;border-radius:0;max-height:72px;padding:0}.public-site>nav>div{align-items:center;gap:32px}.public-site>nav a{color:var(--public-navy);font-size:18px;font-weight:600;text-decoration:none}.public-site>nav a:hover{text-underline-offset:6px;text-decoration:underline}.public-site>nav .public-sign-in{background:var(--public-teal);color:#fff;border-radius:6px;padding:10px 24px}.public-site a:focus-visible,.public-site button:focus-visible{outline-color:var(--public-teal)}.public-site .login-layout{grid-template-columns:minmax(0,1.1fr) minmax(0,1fr);min-height:calc(100svh - 112px);display:grid}.public-site .login-story{isolation:isolate;color:#fff;background:linear-gradient(135deg,#192f46,#102033 80%);flex-direction:column;justify-content:center;gap:64px;padding:clamp(32px,5vw,80px);display:flex;position:relative;overflow:hidden}.public-site .login-story:before,.public-site .login-story:after{content:"";z-index:-1;pointer-events:none;border:1px solid #ffffff0d;border-radius:50%;width:620px;height:620px;position:absolute;top:-350px;right:-320px;box-shadow:0 0 0 65px #ffffff03,0 0 0 130px #ffffff03}.public-site .login-story:after{inset:auto auto -430px -470px}.public-site .login-story .eyebrow{letter-spacing:.14em;color:#8ed7d4;margin-bottom:24px;font-size:13px;font-weight:650}.public-site .login-story h1{letter-spacing:-1.6px;color:#fff;max-width:none;margin:0 0 24px;font-size:clamp(40px,4.2vw,64px);font-weight:750;line-height:1.12}.public-site .login-story h1>span{display:block}.public-site .login-story p{color:#c5d0dc;max-width:490px;margin:0 0 28px;font-size:18px;line-height:1.7}.login-highlights{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px 20px;margin:0;padding:0;list-style:none;display:grid}.login-highlights li{margin:0}.public-site .login-highlights a{color:#e5edf4;align-items:center;gap:10px;font-size:16px;text-decoration:none;display:flex}.login-highlights a:hover{text-decoration:underline}.login-highlights a span{color:#8ed7d4;font-size:18px}.public-site .login-story-footer{color:#c5d0dc;flex-direction:column;gap:10px;display:flex;position:static}.login-story-footer strong{font-size:16px;font-weight:500}.login-story-footer>span{letter-spacing:.16em;font-size:11px}.public-site .login-main{background:var(--public-gray);justify-content:center;align-items:center;padding:48px 32px;display:flex}.public-site .login-card{width:100%;max-width:440px;color:var(--public-navy);background:#fff;border:1px solid #dfe5e9;border-radius:12px;padding:40px;box-shadow:0 8px 32px #14263b05}.public-site .login-card h2{letter-spacing:-.6px;color:var(--public-navy);margin:0 0 12px;font-size:32px;line-height:1.25}.public-site .login-card>p{color:var(--public-muted);font-size:16px}.public-site .login-card form{background:0 0;border:0;flex-direction:column;gap:20px;margin:28px 0 0;padding:0;display:flex}.public-site .login-card form>div{width:100%}.public-site .login-card label{color:var(--public-navy);margin-bottom:8px;font-size:16px;font-weight:550;display:block}.public-site .login-card input{color:var(--public-navy);background:#fff;border:1px solid #c7d1da;border-radius:6px;width:100%;min-height:48px;font-size:16px}.public-site .login-card input::placeholder{color:#637184}.public-site .login-card input:focus{border-color:var(--public-teal);box-shadow:0 0 0 3px #08777920}.public-site .login-card button{background:var(--public-teal);color:#fff;width:100%;min-height:48px;margin:8px 0 0}.public-site .login-card button:hover:not(:disabled){background:#065e60}.public-site .login-card .login-help{text-align:center;color:var(--public-muted);margin:24px 0 0;font-size:14px;line-height:1.6}.public-site .public-content{color:var(--public-navy);background:#fff}.public-site .public-content h1,.public-site .public-content h2{color:var(--public-navy)}.public-site .public-content p{color:var(--public-muted)}.public-site .public-content a{color:var(--public-teal)}.dashboard .rank-bars{gap:6px;max-height:260px}.dashboard .rank-bars>div{min-height:30px}.dashboard .rank-label{margin-bottom:3px;line-height:1.4}.dashboard .rank-bars .progress-track{height:5px}.family-card-header h3 .link-button{font-weight:750;color:var(--link)!important;font-size:20px!important}.family-card>p,.family-card>.family-billing-summary{color:var(--muted);font-size:15px}.family-card>strong{font-size:15px;font-weight:600}.sidebar .nav-label{margin:14px 12px 6px}.sidebar .nav-item{min-height:40px;padding:8px 12px}.sidebar .brand{padding:12px 16px}.sidebar .brand-logo{max-height:85px}.sidebar .sidebar-bottom{margin-top:8px}.sidebar .workspace-label{display:none}@media (width<=1100px){.login-highlights{grid-template-columns:1fr}.public-site .login-story{padding:40px 32px}.public-site .login-story h1{font-size:clamp(36px,4.3vw,52px)}}@media (width<=700px){.public-site>nav{justify-content:center;min-height:0;padding:16px 20px}.public-site>nav .brand{width:190px}.public-site>nav>div{flex-wrap:wrap;justify-content:center;gap:16px}.public-site>nav a{font-size:17px}.public-site .login-layout{grid-template-columns:1fr}.public-site .login-story{gap:32px;padding:36px 24px}.public-site .login-story h1{letter-spacing:-1px;font-size:clamp(32px,7.7vw,44px)}.public-site .login-story p{font-size:17px}.public-site .login-main{padding:32px 20px}.public-site .login-card{padding:28px 24px}.public-site .login-card h2{font-size:28px}.login-highlights{gap:12px}.public-site .login-story .eyebrow{font-size:12px}}.public-site .login-main{min-height:0}.public-site .login-card>[role=alert]{color:#9b2626;background:#fff2f2;border-color:#e8b5b5;margin:16px 0 0}.public-site .login-story-content{container-type:inline-size}.public-site .login-story h1{font-size:clamp(30px,8.5cqi,64px)}.profile-photo-control{vertical-align:middle;flex-wrap:wrap;align-items:center;gap:6px;margin-right:8px;display:inline-flex}.profile-photo{background:var(--surface-soft,#e4eef0);width:32px;height:32px;color:var(--link,#147e80);border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;font-size:14px;font-weight:700;display:inline-flex;overflow:hidden}.profile-photo img{object-fit:cover;width:100%;height:100%}.photo-upload{cursor:pointer;position:relative;font-size:16px!important}.photo-upload input{opacity:0;width:1px;height:1px;position:absolute}.photo-upload:focus-within{outline:2px solid var(--link,#147e80)}.photo-editor{border:1px solid var(--border,#ccd5dc);border-radius:8px;flex-wrap:wrap;gap:8px;max-width:360px;padding:12px;display:flex;overflow:hidden}.photo-editor>img{object-fit:cover;clip-path:inset(0);width:128px;height:128px}.photo-editor label{font-size:14px}.qr-scanner form{flex-wrap:wrap;align-items:end;gap:8px;display:flex}.qr-scanner video{border-radius:8px;width:100%;max-width:320px}.staff-scan,.checkin-settings{margin-block:12px}.checkin-settings label{align-items:center;gap:8px;display:flex}.checkin-settings input[type=checkbox]{width:auto}.print-qr{color:#123;background:#fff;flex-direction:column;align-items:center;width:260px;padding:12px;display:flex}.print-qr img{width:240px;height:240px}.kiosk-workspace{max-width:760px;margin:40px auto;padding:24px}.checkin-confirmation{color:var(--link,#147e80);flex-wrap:wrap;align-items:center;gap:12px;padding:16px;display:flex}.checkin-confirmation img{object-fit:cover;border-radius:50%;width:72px;height:72px}.attendance-status{min-height:44px}.qr-card{margin-block:12px}.qr-card button{margin:4px}.photo-upload,.profile-photo-control>button{font-weight:400}.roster-rank{color:var(--text-muted,#687483);font-size:14px;display:block}@media print{body:has(.print-active) *{visibility:hidden}:is(body:has(.print-active) .print-active,body:has(.print-active) .print-active *){visibility:visible}.print-active{position:absolute;inset:0 auto auto 0}.print-qr button{display:none}}#one-tap-attendance .table-scroll table{table-layout:fixed;width:100%;min-width:0}#one-tap-attendance td:first-child{overflow-wrap:anywhere;width:60%}#one-tap-attendance td:last-child{white-space:normal;width:40%}#one-tap-attendance td button{white-space:normal;max-width:100%;margin:3px 0}#one-tap-attendance>section{padding:12px}#one-tap-attendance>section h3{font-size:16px}#one-tap-attendance .roster-rank{margin-left:40px}.photo-editor{position:relative}.profile-photo-control{font-size:14px}.qr-card summary{cursor:pointer}.crop-preview{flex-shrink:0;width:128px;height:128px;display:block;position:relative;overflow:hidden}.crop-preview img{object-fit:fill;max-width:none;position:absolute}.photo-editor label{max-width:140px}.theme-logo{width:100%;line-height:0;display:block;position:relative}.theme-logo canvas{object-fit:contain;pointer-events:none;width:100%;height:100%;position:absolute;inset:0}.attendance-buttons{grid-template-columns:repeat(4,minmax(0,1fr));gap:6px;width:384px;min-width:384px;max-width:100%;display:grid}.attendance-buttons button{border:2px solid var(--border);background:var(--surface);width:100%;min-width:0;height:48px;min-height:48px;color:var(--ink);white-space:nowrap;overflow-wrap:normal;border-radius:6px;justify-content:center;align-items:center;margin:0;padding:0 6px;font-size:16px;font-weight:650;line-height:1;display:flex}.attendance-buttons button[aria-pressed=true]{background:var(--accent);border-color:var(--accent);color:var(--accent-ink)}.attendance-buttons button:focus-visible{outline:3px solid var(--ink);outline-offset:2px}.attendance-buttons button:disabled{cursor:wait}.roster-rank{display:block}#one-tap-attendance .table-scroll table{table-layout:auto;min-width:640px!important}#one-tap-attendance td:first-child{width:auto;min-width:180px}#one-tap-attendance td:last-child{width:416px;min-width:384px}#one-tap-attendance td .attendance-buttons button{white-space:nowrap;overflow-wrap:normal;margin:0}@media (width<=900px){#one-tap-attendance .table-scroll table{width:100%;min-width:0!important;display:block!important}#one-tap-attendance thead{display:none}#one-tap-attendance tbody{width:100%;display:block}#one-tap-attendance tr{border-bottom:1px solid var(--border);padding:12px 0;display:block}#one-tap-attendance td{border:0;padding:8px 0;display:block;width:100%!important;min-width:0!important}#one-tap-attendance .attendance-buttons{width:100%;min-width:0;max-width:384px}}@media (width<=600px){.attendance-buttons{gap:4px;width:100%;min-width:0}.attendance-buttons button{padding:0 2px;font-size:14px}}.roster-progress{min-width:220px;max-width:360px;color:var(--ink);line-height:1.4}.roster-progress-heading{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.roster-progress strong,.roster-progress small{font-size:16px}.roster-progress small{color:var(--muted);display:block}.roster-progress-track{background:var(--border);border-radius:4px;height:5px;margin:7px 0;overflow:hidden}.roster-progress-track>span{background:var(--accent);height:100%;display:block}.progress-status{color:var(--ink);white-space:nowrap;font-size:14px}.progress-status.at_risk,.progress-status.ineligible{text-decoration:underline;-webkit-text-decoration-color:var(--accent);text-decoration-color:var(--accent);text-underline-offset:4px;font-weight:700}#one-tap-attendance .table-scroll table{min-width:900px!important}#one-tap-attendance td.roster-progress-cell{width:28%;min-width:240px}@media (width<=1100px){#one-tap-attendance .table-scroll table{width:100%;min-width:0!important;display:block!important}#one-tap-attendance thead{display:none}#one-tap-attendance tbody{width:100%;display:block}#one-tap-attendance tr{border-bottom:1px solid var(--border);grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:12px;padding:12px 0;display:grid}#one-tap-attendance td,#one-tap-attendance td.roster-progress-cell{border:0;padding:4px;display:block;width:auto!important;min-width:0!important}#one-tap-attendance td:last-child{grid-column:1/-1}#one-tap-attendance .roster-progress{min-width:0}}@media (width<=600px){#one-tap-attendance tr{grid-template-columns:1fr;gap:4px}.roster-progress{max-width:none}}.enrollment-legend{color:var(--ink);flex-wrap:wrap;gap:16px;display:flex}.enrollment-legend span{align-items:center;gap:7px;display:flex}.enrollment-legend i{background:var(--accent);width:12px;height:12px;display:inline-block}.enrollment-legend span:last-child i{background:color-mix(in srgb,var(--accent) 30%,white)}.enrollment-overlap-chart{color:var(--ink);align-items:flex-end;gap:12px;margin-top:8px;padding:12px 4px 0;display:flex;overflow-x:auto}.enrollment-month{text-align:center;flex:1 0 68px;font-size:16px}.enrollment-month>span small{color:var(--muted);font-size:14px;display:block}.enrollment-plot{border-bottom:1px solid var(--border);height:224px;margin-bottom:8px;position:relative}.enrollment-total-bar,.enrollment-new-bar{border-radius:4px 4px 0 0;position:absolute;bottom:0;left:50%;transform:translate(-50%)}.enrollment-total-bar{background:var(--accent);width:88%}.enrollment-new-bar{background:color-mix(in srgb,var(--accent) 30%,white);width:44%}.enrollment-total-label{color:#fff;z-index:2;text-shadow:0 1px 2px #0008;font-size:16px;line-height:20px;position:absolute;left:0;right:0}.enrollment-new-label{color:var(--ink);z-index:3;background:var(--surface);border-radius:3px;width:max-content;min-width:20px;margin:auto;padding:0 3px;font-size:16px;line-height:20px;position:absolute;left:0;right:0}.enrollment-total-label.split{left:2px;right:auto}.enrollment-new-label.split{left:auto;right:0}.enrollment-unknown{color:var(--muted);position:absolute;top:8px;left:0;right:0}.enrollment-zero-total{color:var(--muted);font-size:14px;position:absolute;bottom:30px;left:0;right:0}.school-enrollment-history form{padding:0}.school-enrollment-history fieldset{gap:12px;display:grid}.school-enrollment-history input[type=date]{max-width:240px}.enrollment-date-import{margin:12px 0}.enrollment-date-import ul{max-height:260px;overflow:auto}.product-categories,.product-filters{flex-wrap:wrap;align-items:center;gap:8px;margin:12px 0;display:flex}.product-categories [aria-pressed=true]{background:var(--accent);color:#fff;border-color:var(--accent)}.product-list{gap:8px;display:grid}.product-row{text-align:left;align-items:center;gap:16px;width:100%;display:flex}.product-row>span:nth-child(2){flex:1}.product-row small,.product-picker small{color:var(--muted);display:block}.product-image{object-fit:contain;background:var(--surface-soft);border-radius:8px;flex-shrink:0;justify-content:center;align-items:center;width:64px;height:64px;display:inline-flex}.product-placeholder{color:var(--muted);font-size:32px}.compact-fields{grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:12px;display:grid}.product-editor,.product-detail{padding:16px}.product-detail>.product-image{width:120px;height:120px}.product-picker-results{gap:8px;max-height:320px;display:grid;overflow:auto}.product-picker-results button{text-align:left;align-items:center;gap:12px;display:flex}@media (width<=600px){.product-row{flex-wrap:wrap;gap:8px}.product-row .product-image{width:48px;height:48px}.product-row>span:nth-child(3){margin-left:56px}.compact-fields{grid-template-columns:1fr}}.billing-metric-group{grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin:16px 0;display:grid}.billing-metric-group article{border:1px solid var(--border);background:var(--surface);border-radius:12px;flex-direction:column;gap:6px;padding:16px;display:flex}.billing-metric-group strong{font-size:1.6rem}.billing-metric-group small,.billing-account small,.billing-ledger-row small{opacity:.8;display:block}.billing-columns{grid-template-columns:minmax(200px,260px) minmax(0,1fr);align-items:start;gap:20px;display:grid}.billing-accounts{flex-direction:column;gap:8px;display:flex}.billing-account{text-align:left;white-space:normal}.billing-account[aria-pressed=true]{border-color:var(--accent)}.billing-content{min-width:0}.billing-ledger-row{border-bottom:1px solid var(--border);flex-wrap:wrap;gap:12px;padding:12px 0;display:flex}.billing-workspace>fieldset{border:0;min-width:0;padding:0}@media (width<=760px){.billing-columns{grid-template-columns:1fr}.billing-accounts{max-height:280px;overflow:auto}.billing-metric-group{grid-template-columns:repeat(2,minmax(0,1fr))}.billing-workspace .product-row{flex-wrap:wrap}}:root{--accent-ink:#fff}main button:where(:not(.secondary):not(.text-button):not(.icon-button):not(.metric-card):not(.link-button)),.profile-tabs [aria-selected=true],.appearance-options button[aria-pressed=true],.product-categories button[aria-pressed=true],.leadership-options [aria-pressed=true],.workflow-tabs [aria-selected=true]{color:var(--accent-ink)}.workspace-tools{align-items:center;gap:10px;display:flex}.workspace-popover{position:relative}.workspace-popover summary{cursor:pointer;border:1px solid var(--border);border-radius:8px;align-items:center;gap:4px;padding:8px;list-style:none;display:flex}.workspace-popover summary:focus-visible{outline:3px solid var(--link);outline-offset:2px}.workspace-popover-panel{z-index:40;background:var(--surface);width:min(380px,90vw);max-height:65vh;color:var(--ink);border:1px solid var(--border);border-radius:12px;padding:16px;position:absolute;top:100%;right:0;overflow:auto;box-shadow:0 8px 25px #0003}.workspace-popover-panel section{box-shadow:none;border:0;padding:8px 0}.workspace-popover-panel section h3{text-transform:capitalize;font-size:16px}.workspace-popover-panel button,.workspace-result{text-align:left;background:var(--surface);width:100%;color:var(--ink);border:1px solid var(--border);margin:4px 0;display:block}.workspace-result small{color:var(--muted);display:block}.favorite-row{align-items:center;display:flex}.favorite-row .icon-button{width:auto}.briefing-grid{grid-template-columns:1fr 1fr;gap:16px;display:grid}.daily-briefing{margin-bottom:16px;padding:16px}.daily-briefing h2{font-size:20px}.dashboard-grid>.metric-grid{grid-column:1/-1}.dashboard-customize>div{align-items:center;gap:8px;display:flex}.dashboard-customize label{flex-direction:row;flex:1;align-items:center}@media (width<=760px){.topbar{flex-wrap:wrap;gap:8px;height:auto;padding:12px}.topbar-right{flex-wrap:wrap}.topbar-right>.badge,.topbar-right>.topbar-avatar{display:none}.workspace-tools{gap:4px}.workspace-popover-panel{position:fixed;top:110px;right:5vw}.briefing-grid{grid-template-columns:1fr}}:root[data-theme=light]{--link:color-mix(in srgb,var(--accent) 45%,#000)}.topbar-right{min-width:0}.workspace-tools{flex-wrap:wrap}@media (width<=1100px){.topbar{flex-wrap:wrap;gap:8px;height:auto}.topbar-right{flex-wrap:wrap}.topbar-right>.badge,.topbar-right>.topbar-avatar{display:none}}.product-editor-top{grid-template-columns:1.2fr 1fr 1.5fr 1fr;align-items:start;gap:12px;display:grid}.product-editor-bottom{grid-template-columns:1fr .7fr .6fr 1fr 1.3fr;align-items:start;gap:12px;margin-top:12px;display:grid}.product-editor-bottom[data-recurring=false]{grid-template-columns:1fr 1fr 2fr}.product-editor label,.product-editor input,.product-editor select,.product-editor textarea{width:100%;min-width:0}.product-advanced{padding-top:30px}.product-advanced summary{cursor:pointer}.product-editor textarea{resize:vertical;min-height:44px}.invoice-composer{border:1px solid var(--border);border-radius:12px;margin-bottom:16px;padding:16px}.invoice-account-row{flex-wrap:wrap;align-items:center;gap:20px;display:flex}.invoice-item{min-width:0;margin:16px 0;padding:12px!important}.invoice-item-row{grid-template-columns:minmax(140px,2fr) minmax(70px,.6fr) minmax(100px,1fr) minmax(110px,1fr) minmax(100px,1fr) auto;align-items:start;gap:12px;display:grid}.invoice-item-row input,.invoice-item-row textarea,.invoice-item-row select{width:100%;min-width:0}.invoice-item-row strong,.invoice-item-row small{display:block}.invoice-item-row details{margin:4px 0}.invoice-totals{background:var(--surface-soft);border-radius:8px;flex-wrap:wrap;gap:24px;margin:16px 0;padding:16px;display:flex}.invoice-totals span strong{display:block}.invoice-coverage{flex-wrap:wrap;gap:16px;display:flex}.product-picker-results{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;max-height:260px;display:grid;overflow:auto}.product-picker-results button{text-align:left;align-items:center;gap:10px;padding:10px;display:flex;background:var(--surface)!important;color:var(--ink)!important}.product-picker-results button[aria-pressed=true]{border:2px solid var(--accent);background:var(--accent-soft)!important}.product-picker-results .product-image{width:36px;height:36px}.subscription-row{border-bottom:1px solid var(--border);padding:12px 0}.subscription-facts{flex-wrap:wrap;gap:16px;display:flex}@media (width<=1100px){.product-editor-top,.product-editor-bottom,.invoice-item-row{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width<=600px){.product-editor-top,.product-editor-bottom,.product-editor-bottom[data-recurring=false],.invoice-item-row,.product-picker-results{grid-template-columns:1fr}.product-advanced{padding-top:0}}.setup-steps,.setup-actions{flex-wrap:wrap;gap:8px;margin:16px 0;display:flex}.setup-steps button{white-space:normal;text-align:left;flex:180px}.setup-content{min-width:0}.setup-content>section{margin-block:12px}.last-chance{margin-block:18px}.last-chance td{vertical-align:top}.last-chance td p{margin:6px 0;font-size:16px}.last-chance th{white-space:nowrap}main .workflow-tabs button[aria-selected=false],main .profile-tabs button[aria-selected=false],main td button:not([aria-pressed=true]){border-color:var(--border);background:var(--surface)!important;color:var(--ink)!important}.selected-class-definition{outline:2px solid var(--accent);outline-offset:-2px}[data-page=settings]:has(#school-setup[data-open=true])>:not(#school-setup){display:none!important}.workspace-tools>details{background:0 0;border:0;margin:0;padding:0}.workspace-tools>details>summary{box-sizing:border-box;min-height:44px}.workspace-tools>details>summary::-webkit-details-marker{display:none}@media (width<=760px){.topbar-right{width:100%}.workspace-tools{flex-wrap:nowrap;justify-content:space-between;width:100%}.workspace-tools>details>summary{padding:8px;font-size:16px}}.setup-steps button[aria-current=step],.setup-steps button[aria-current=step]:hover,.appearance-options button[aria-pressed=true]:hover{background:var(--accent);color:var(--accent-ink);border-color:var(--accent)}.selection-grid{grid-template-columns:repeat(auto-fit,minmax(min(100%,180px),1fr));gap:12px;width:100%;display:grid}main button.selection-card{text-align:left;white-space:normal;overflow-wrap:anywhere;background:var(--surface);width:100%;min-height:80px;color:var(--ink);border:2px solid var(--border);flex-direction:column;justify-content:center;align-items:flex-start;gap:8px;margin:0;padding:16px;display:flex}main button.selection-card[aria-pressed=true]{background:var(--accent);color:var(--accent-ink);border-color:var(--ink)}.selection-card:focus-visible{outline:3px solid var(--ink);outline-offset:3px}.selection-card span{font-size:.9em}.wizard-navigation{border-top:1px solid var(--border);flex-wrap:wrap;justify-content:space-between;margin-top:24px;padding-top:16px;display:flex}.wizard-navigation button,.cycle-actions button{white-space:normal;overflow-wrap:anywhere;min-height:48px}.cycles-table td:first-child{overflow-wrap:anywhere;min-width:160px}.cycle-setup fieldset{min-width:0}.cycles-table td{vertical-align:middle}.cycles-table td[data-label=Start],.cycles-table td[data-label=End],.cycles-table td[data-label=Status]{white-space:nowrap}.cycle-row-actions,.cycle-action-buttons{flex-wrap:nowrap;align-items:center;gap:8px;display:flex}.cycle-row-actions button,.cycle-action-buttons button{white-space:nowrap;min-height:44px;margin:0;padding:8px 12px;font-size:.9rem}.cycle-actions{position:relative}.cycle-action-message{white-space:normal;max-width:24rem;margin:8px 0 0}.cycle-edit-dialog{border:1px solid var(--border);background:var(--surface);width:min(520px,100% - 32px);max-height:85dvh;color:var(--ink);border-radius:16px;padding:24px;overflow:auto}.cycle-edit-dialog::backdrop{background:#0007}.cycle-edit-dialog h2{margin-top:0}.cycle-edit-dialog .cycle-editor{background:0 0;border:0;margin:0;padding:0}.cycle-edit-dialog fieldset{flex-direction:column;gap:16px;min-width:0;display:flex}.cycle-edit-dialog label{width:100%}.cycle-edit-dialog .cycle-date-toggle{flex-direction:row;align-items:center;gap:10px;display:flex}.cycle-edit-dialog .cycle-date-toggle input{width:auto}.cycle-edit-dialog .button-group{gap:12px;display:flex}.cycle-edit-dialog p{white-space:normal}@media (width<=700px){.cycles-table thead{clip-path:inset(50%);width:1px;height:1px;position:absolute;overflow:hidden}.cycles-table,.cycles-table tbody{width:100%;display:block}.cycles-table tr{border-bottom:1px solid var(--border);grid-template-columns:1fr 1fr;padding:12px;display:grid}.cycles-table td{border:0;min-width:0;padding:6px;display:block}.cycles-table td:before{content:attr(data-label);color:var(--muted);margin-bottom:4px;font-size:.8rem;display:block}.cycles-table td[data-label=Cycle],.cycles-table td[data-label=Actions]{grid-column:1/-1}.cycles-table td:first-child{min-width:0}.cycle-row-actions{flex-wrap:wrap}.cycles-table td[data-label=Start],.cycles-table td[data-label=End]{white-space:normal}}.flavor-options{border:0;min-width:0;margin:24px 0;padding:0}.flavor-options>p{margin:0 0 16px}.flavor-grid{grid-template-columns:repeat(auto-fit,minmax(min(100%,180px),1fr));gap:16px;display:grid}main button.flavor-card{text-align:center;background:var(--surface);width:100%;color:var(--ink);border:2px solid var(--border);border-radius:12px;grid-template-columns:minmax(0,1fr);align-items:center;gap:12px;min-height:110px;margin:0;padding:16px;font-family:inherit;font-size:16px;line-height:1.4;display:grid}.flavor-card .flavor-preview{border:1px solid #0003;border-radius:6px;grid-column:1/-1;justify-content:center;align-items:center;min-height:48px;font-size:24px;font-weight:700;display:flex}.flavor-card .flavor-name{text-align:center;width:100%;font:inherit;white-space:normal;word-break:normal;overflow-wrap:normal;-webkit-hyphens:none;hyphens:none;font-weight:600;display:block}main button.flavor-card[aria-pressed=true]{border-color:var(--ink);box-shadow:inset 0 0 0 1px var(--ink);background:var(--surface-soft);color:var(--ink)}main button.flavor-card:hover:not(:disabled){border-color:var(--ink);background:var(--surface-soft);color:var(--ink)}main button.flavor-card:focus-visible{outline:3px solid var(--ink);outline-offset:3px}.students-directory .list-toolbar,.family-card-header,.family-actions{flex-wrap:wrap;gap:12px}.students-directory .workflow-tabs{gap:8px}.students-directory .workflow-tabs button,.family-actions button{min-height:44px;margin:0}.students-directory .card-heading button{margin:0}.students-directory td select{min-width:120px;max-width:100%}#one-tap-attendance .attendance-buttons{flex-wrap:wrap;gap:6px;display:flex}#one-tap-attendance .attendance-buttons button{min-height:44px;margin:0;padding:8px 12px}#one-tap-attendance .attendance-buttons [aria-pressed=true]{outline:2px solid var(--ink);outline-offset:1px}@media (width<=700px){.family-card-header{align-items:flex-start}.family-actions{width:100%;display:flex}.family-actions button{flex:auto}.students-directory .list-toolbar{align-items:stretch}.flavor-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}.enrollment-month>span small,.family-card>p,.family-card>.family-billing-summary,.family-card>strong,.cycle-row-actions button,.cycle-action-buttons button,#one-tap-attendance .attendance-buttons button,.photo-upload,.profile-photo-control,.photo-editor label{font-size:16px}@media (width<=360px){.flavor-grid{grid-template-columns:minmax(0,1fr)}}main button.flavor-card .flavor-name{color:var(--ink)}:root{--on-accent:var(--accent-ink)}.sidebar .nav-item.active,.sidebar .nav-item.active:hover{background:var(--accent);color:var(--accent-ink);opacity:1;filter:none}button:hover:not(:disabled){filter:none}main .leadership-options button,main .weekday-toggles button{background:var(--surface);color:var(--ink);border:2px solid var(--border);min-height:48px;margin:0}main .leadership-options button[aria-pressed=true],main .weekday-toggles button[aria-pressed=true]{background:var(--accent);color:var(--accent-ink);border-color:var(--ink)}main button.selection-card:hover:not(:disabled),main .leadership-options button:hover:not(:disabled),main .weekday-toggles button:hover:not(:disabled){background:var(--surface-soft);color:var(--ink)}main button.selection-card strong,main button.selection-card span{color:inherit}.weekday-toggles{flex-wrap:wrap;gap:8px;width:100%;display:flex}.weekday-toggles button{flex:100px}.school-calendar{grid-template-columns:repeat(7,minmax(0,1fr));gap:6px;min-width:0}.school-calendar article{min-width:0;min-height:130px;margin:0;padding:8px}.school-calendar h4{margin:0 0 6px}.school-calendar article p{margin:4px 0}.school-calendar .calendar-entry{text-align:left;background:var(--surface);width:100%;color:var(--ink);border:1px solid var(--border);white-space:normal;min-height:44px;margin:0;padding:6px;line-height:1.3;display:block}.school-calendar .calendar-entry span{font-size:16px;line-height:1.3;display:block}.calendar-scroll{overflow:visible;container-type:inline-size}@container (width<=700px){.school-calendar{grid-template-columns:repeat(2,minmax(0,1fr))}.calendar-weekday{display:none}.school-calendar article h4 time{font-size:0}.school-calendar article h4 time:before{content:attr(datetime);font-size:16px}.school-calendar article{min-height:90px}}@container (width<=420px){.school-calendar{grid-template-columns:minmax(0,1fr)}}.school-calendar button.calendar-entry:hover:not(:disabled){background:var(--surface-soft);color:var(--ink);filter:none}.staff-assignment-list{gap:10px;margin:16px 0;display:grid}.staff-assignment-row{justify-content:space-between;align-items:center;gap:16px;margin:0;padding:12px;display:flex}.staff-assignment-row span,.staff-assignment-row small{display:block}.staff-assignment-row .button-group{flex-wrap:wrap;flex-shrink:0;display:flex}.staff-assignment-feedback{overflow-wrap:anywhere;min-height:1.6em}.staff-class-assignments form{padding:16px}.staff-class-assignments select{max-width:100%}.profile-identity{align-items:flex-start;gap:24px;width:100%;min-width:0;display:flex}.profile-name{flex:1;min-width:0}.profile-photo-control .photo-file-input{opacity:0;pointer-events:none;border:0;width:1px;height:1px;min-height:0;padding:0;position:absolute}.profile-photo-control .photo-area{border:2px solid var(--border);background:var(--surface);min-width:44px;min-height:44px;color:var(--ink);border-radius:50%;flex-shrink:0;margin:0;padding:0;display:inline-flex}.profile-photo-control .photo-area:hover:not(:disabled){background:var(--surface-soft);color:var(--ink)}.photo-large{flex-direction:column;flex:0 320px;align-items:flex-start;gap:12px;max-width:100%;margin:0;display:flex}.photo-large .profile-photo{width:144px;height:144px;font-size:36px}.photo-actions{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.photo-actions button{margin:0}.photo-large .photo-editor{flex-direction:column;align-items:flex-start;width:100%;max-width:320px;padding:12px;display:flex}.photo-crop-controls{gap:8px;width:100%;display:grid}.photo-editor .photo-crop-controls label{width:100%;max-width:none}.photo-editor .photo-crop-controls input{width:100%;min-height:44px;padding:0}.photo-editor .button-group{flex-wrap:wrap;gap:8px;display:flex}.photo-editor .button-group button{margin:0}.photo-feedback{overflow-wrap:anywhere;flex-basis:100%;width:100%;max-width:320px;font-size:16px;line-height:1.5;display:block}.photo-feedback:empty{display:none}.photo-feedback[role=alert]{margin:0;padding:12px}.profile-name h2{margin-top:8px}@media (width<=900px){.profile-identity{flex-wrap:wrap}.profile-name{flex:220px}.staff-assignment-row{flex-direction:column;align-items:flex-start}.staff-assignment-row .button-group{flex-shrink:1}.photo-large{flex-basis:100%}}.staff-accounts,.teaching-workspace,.account-recovery{overflow-wrap:anywhere;min-width:0}.staff-accounts{margin-block:1.5rem}.staff-account-grid{grid-template-columns:repeat(auto-fit,minmax(min(100%,320px),1fr));gap:1rem;margin-block:1rem;display:grid}.staff-account-grid article{border:1px solid var(--border);border-radius:12px;min-width:0;padding:1rem}.staff-accounts fieldset{min-width:0}.staff-accounts label,.account-recovery label,.teaching-workspace>label{gap:.4rem;margin-block:.75rem;display:grid}.staff-accounts input,.staff-accounts select,.teaching-workspace select,.account-recovery input{width:100%;min-width:0;max-width:100%}.staff-accounts .staff-access-toggle{align-items:center;gap:.75rem;min-height:48px;display:flex}.staff-access-toggle input{width:24px;height:24px}.teaching-workspace,.account-recovery{max-width:1000px;margin:auto;padding:clamp(1rem,3vw,2.5rem)}.account-recovery{max-width:520px}.teaching-workspace header{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:1rem;display:flex}.teaching-student{border-bottom:1px solid var(--border);flex-wrap:wrap;align-items:center;gap:1rem;padding-block:1rem;display:flex}.teaching-student .attendance-buttons{flex-wrap:wrap;width:min(384px,100%);min-width:0}@media (width<=600px){.teaching-student .attendance-buttons{grid-template-columns:repeat(2,minmax(0,1fr))}.teaching-student .attendance-buttons button{font-size:16px}}.team-account-list li{flex-wrap:wrap;min-width:0}.team-account-list .badge{white-space:normal;overflow-wrap:anywhere;max-width:100%}.account-page{background:var(--canvas);min-height:100dvh;color:var(--ink)}.class-draft-fields,.cycle-setup .class-draft-fields{grid-template-columns:repeat(2,minmax(0,1fr));align-content:start;align-items:start;gap:12px 16px;display:grid}.class-draft-fields>label,.cycle-setup .class-draft-fields>label{align-content:start;align-items:start;gap:6px;min-height:0;margin:0;display:grid}.class-draft-fields>fieldset,.class-draft-fields>.enrollment-rules{grid-column:1/-1;width:100%;min-width:0}.class-draft-fields input:not([type=checkbox]),.class-draft-fields select{flex:none;width:100%;height:44px;min-height:44px;max-height:44px}.class-draft-fields .enrollment-rules{grid-template-columns:repeat(2,minmax(0,1fr));align-items:start;gap:12px 16px;margin:0;display:grid}.class-draft-fields .enrollment-rules>label{align-content:start;gap:6px;min-height:0;margin:0;display:grid}.class-draft-fields .enrollment-rules>.rule-options,.class-draft-fields .enrollment-rules>details,.class-draft-fields .enrollment-rules>label:last-child{grid-column:1/-1}.class-draft-fields .enrollment-rules>label:last-child,.class-draft-fields .rule-options label{flex-wrap:nowrap;justify-content:flex-start;align-items:center;gap:8px;min-height:44px;display:flex}.class-draft-fields input[type=checkbox]{flex:none;width:22px;height:22px;min-height:22px}#class-eligibility form{padding:12px 0;display:block}#class-eligibility form>fieldset{border:0;min-width:0;padding:0;display:block}@media (width<=600px){.class-draft-fields,.cycle-setup .class-draft-fields,.class-draft-fields .enrollment-rules{grid-template-columns:minmax(0,1fr)}}.attendance-session-buttons{flex-wrap:wrap;gap:.75rem;margin:.75rem 0;display:flex}.attendance-session-buttons button{text-align:left;flex-direction:column;gap:.35rem;min-width:12rem;min-height:5rem;padding:1rem;display:flex}.attendance-session-buttons button[aria-pressed=true]{outline:3px solid var(--accent,currentColor);outline-offset:2px}.safe-delete{vertical-align:top;flex-direction:column;gap:.25rem;max-width:22rem;display:inline-flex}.safe-delete small{color:var(--muted);font-size:.75rem;line-height:1.35}.school-calendar.calendar-month{grid-template-columns:repeat(7,minmax(0,1fr))}.school-calendar.calendar-month .calendar-weekday{padding:.4rem;font-size:.75rem;display:block}.school-calendar.calendar-month article h4 time{font-size:.85rem}.school-calendar.calendar-month article h4 time:before{content:none}.school-calendar.calendar-month article{min-width:0;height:184px;padding:.4rem;overflow-y:auto}.school-calendar.calendar-month article p{margin:.25rem 0}.school-calendar.calendar-month .calendar-entry{text-align:left;overflow-wrap:anywhere;border-radius:6px;width:100%;min-height:30px;padding:.35rem .5rem;font-size:.78rem;line-height:1.3;display:block}.school-calendar .calendar-preview{border-style:dashed}.school-calendar .calendar-cancelled{text-decoration:line-through}.school-calendar .calendar-date{color:inherit;background:0 0;border:0;min-height:28px;padding:.2rem}.school-calendar .today .calendar-date{background:var(--accent-soft);color:var(--ink);outline:2px solid var(--accent);border-radius:50%}.school-calendar.calendar-day{min-width:0;display:block}.school-calendar.calendar-day article{min-height:180px}.calendar-key{color:var(--muted);font-size:.8rem}.calendar-scroll{overflow-x:auto}.school-calendar .calendar-event{border-left:4px solid var(--accent);background:var(--accent-soft)}@media (width<=600px){.school-calendar.calendar-month{min-width:630px}.school-calendar.calendar-month article{height:160px}.calendar-controls{flex-wrap:wrap}}.rotating-subtitle{color:var(--muted);margin:.35rem 0 0;font-size:.9rem;line-height:1.5;animation:none}.calendar-controls{align-items:end;gap:.65rem;margin:.75rem 0}.calendar-controls>button{background:var(--surface);height:44px;min-height:44px;color:var(--ink);border:1px solid var(--border);margin:0}.calendar-controls label{gap:.25rem;margin:0;font-size:.8rem}.shared-page-heading{min-width:0}.page-title-line{flex-wrap:wrap;align-items:baseline;gap:.25rem 1rem;min-width:0;display:flex}.shared-page-heading .page-title-line>h1,.shared-page-heading .page-title-line>h2,.shared-page-heading .page-title-line>h3{margin:0;font-size:30px;font-weight:700;line-height:1.25}.page-title-line>.rotating-subtitle{overflow-wrap:anywhere;min-width:0;max-width:100%;margin:0;font-size:20px;font-weight:500;line-height:1.5}.brand-logo.brand-logo-approved,.sidebar .brand-logo.brand-logo-approved{object-fit:contain;filter:none;mix-blend-mode:normal;background:#0b1c33;border-radius:8px;width:100%;height:auto;max-height:none;padding:0;display:block}.sidebar .brand-business{text-align:center;font-size:20px;font-weight:750;line-height:1.35}.login-mini-brand .brand-logo-approved{max-width:250px}.public-site>nav .brand-logo.brand-logo-approved{background:0 0;border-radius:0;max-height:130px}.public-site.public-login>nav{background:#192f46;border-bottom-color:#ffffff14}.public-site.public-login>nav a{color:#e5edf4}.public-site.public-login>nav .brand,.public-site.public-login>nav .brand-lockup,.public-site.public-login>nav .brand-logo{background:0 0}.attendance-saving{color:var(--ink);margin-bottom:6px;font-size:12px;font-weight:650;display:block}.workflow-guidance{color:var(--muted);margin:10px 0;font-size:14px}.workflow-guidance a{font-weight:650}.workflow-guidance .link-button{font-size:inherit}.attendance-command :is(a,button):focus-visible,.workflow-guidance :is(a,button):focus-visible{outline:3px solid var(--accent);outline-offset:3px}@media (width<=700px){.attendance-command .attendance-student-identity strong{overflow-wrap:anywhere}.attendance-command .attendance-empty{line-height:1.6}.attendance-command .attendance-empty a{display:inline-block}}[data-directory-category=testing],[data-category=testing]{--category:#c58a16;--category-ink:#895800;--category-solid:#a66b07;--category-icon-ink:#fff}[data-directory-category=testing] .directory-page-frame{border:2px solid var(--category);background:var(--surface);border-radius:16px;min-width:0;margin-bottom:22px;overflow:clip}[data-directory-category=testing] .directory-page-frame>.page-heading{border:0;border-radius:0}[data-directory-category=testing] section.testing-premium{border:0;margin:0}[data-directory-category=testing] .directory-page-icon{background:var(--category-solid);color:#fff}.testing-premium .directory-tone-amber{--metric-fill:#ac710b}.testing-premium .directory-tone-teal{--metric-fill:#087c6a}.testing-premium .directory-tone-slate{--metric-fill:#526984}.testing-premium .directory-tone-rose{--metric-fill:#b93255}.testing-report-table{min-width:950px}.testing-report-table td{white-space:nowrap}.testing-report-table details p{white-space:normal;max-width:280px}.testing-live-table .testing-student-row button{background:var(--surface-soft);color:var(--ink);border:1px solid var(--border);min-width:32px}.testing-preparation-table{min-width:1000px}.testing-preparation-table td{white-space:nowrap}.testing-preparation-table .testing-quick-actions select{min-width:150px;padding:8px}.testing-recovery{margin-top:20px}.testing-premium .filter-group{flex-wrap:wrap;gap:14px;display:flex}.testing-premium .filter-group label{flex:1;min-width:150px}[data-directory-category=testing] .testing-preparation-table{min-width:1050px}[data-directory-category=testing] .testing-quick-actions>.button-group{flex-wrap:nowrap;align-items:center;gap:4px;display:flex}[data-directory-category=testing] .testing-quick-actions .testing-action{--decision:#176344;--decision-fill:#d9f5e5;border:1px solid color-mix(in srgb,var(--decision) 40%,var(--border));background:var(--decision-fill);min-height:32px;color:var(--decision);white-space:nowrap;border-radius:6px;margin:0;padding:6px 8px;font-size:11px;font-weight:750}[data-directory-category=testing] .testing-quick-actions .testing-action-next_2{--decision:#164c95;--decision-fill:#deebff}[data-directory-category=testing] .testing-quick-actions .testing-action-back{--decision:#67419b;--decision-fill:#eee5ff}[data-directory-category=testing] .testing-quick-actions .testing-action-reset{--decision:#875100;--decision-fill:#fff0cf}[data-directory-category=testing] .testing-quick-actions .testing-action-skip{--decision:#4d5b6f;--decision-fill:#e9eef5}[data-directory-category=testing] .testing-quick-actions .testing-action-not_testing{--decision:#a42642;--decision-fill:#ffe2e8}[data-directory-category=testing] .testing-quick-actions .testing-action[aria-pressed=true]{background:var(--decision);color:#fff;box-shadow:inset 0 0 0 1px #ffffff80,0 0 0 2px var(--surface),0 0 0 3px var(--decision)}[data-directory-category=testing] .testing-quick-actions .testing-action:focus-visible{outline:3px solid var(--category);outline-offset:3px}[data-directory-category=testing] .testing-quick-actions>p{white-space:normal;max-width:390px;margin:5px 0 0;font-size:11px}.activation-mapping{border:1px solid var(--border);border-radius:10px;margin:10px 0;padding:14px}.activation-mapping h4{margin:0}.activation-confirm{align-items:flex-start;gap:10px;display:flex}.activation-confirm input{flex-shrink:0}.testing-premium .searchable-table,.testing-premium .table-scroll{min-width:0;max-width:100%;position:relative;overflow-x:auto}.testing-premium .testing-live-table{table-layout:auto;min-width:760px}.testing-student-row td{white-space:nowrap}:root[data-theme=dark] [data-directory-category=testing],:root[data-theme=dark] [data-category=testing]{--category:#edb544;--category-ink:#ffd77b}.testing-premium{min-width:0}.testing-card-heading{justify-content:space-between;align-items:center;gap:16px;margin:0 0 18px;display:flex}.testing-card-heading h2,.testing-card-heading h3{margin:0}.testing-card-heading p{color:var(--muted);margin:5px 0}.testing-eyebrow{letter-spacing:.13em;color:var(--category-ink);font-size:11px;font-weight:800}.testing-premium select{max-width:100%}.testing-premium label{min-width:0}.testing-premium .directory-summary{margin-top:20px}.testing-live-table{width:100%;font-size:13px}.testing-live-table td,.testing-live-table th{padding:10px 12px}.testing-student-row{cursor:pointer}.testing-student-row:hover{background:color-mix(in srgb,var(--category) 8%,var(--surface))}.testing-student{align-items:center;gap:10px;min-width:165px;display:flex}.testing-student strong,.testing-student small{display:block}.testing-student small{color:var(--muted);margin-top:3px}.testing-student img{object-fit:cover;border-radius:50%;width:32px;height:32px}.live-scorecard{white-space:normal;border-left:3px solid var(--category);background:var(--surface-soft);padding:18px}.live-scorecard fieldset{border:0;min-width:0;margin:0;padding:0}.testing-score-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;display:grid}.testing-score-grid .testing-category{border:1px solid var(--border);background:var(--surface);border-radius:10px;margin:0;padding:14px}.testing-category h4{align-items:center;gap:8px;min-height:30px;margin:0 0 12px;font-size:13px;display:flex}.testing-category h4 span{color:var(--category-ink)}.testing-category label{margin-top:8px;font-size:11px;display:block}.testing-category input,.testing-category select,.testing-category textarea{width:100%;min-width:0;margin-top:4px;padding:8px;font-size:13px}.testing-notes{grid-template-columns:1fr 1fr;gap:14px;display:grid}.testing-notes textarea{width:100%}.testing-overall{flex-wrap:wrap;align-items:center;gap:18px;margin:18px 0;display:flex}.testing-overall small{color:var(--muted);display:block}.testing-savebar{flex-wrap:wrap;gap:8px;margin-top:16px;display:flex}.testing-savebar button:first-child{background:var(--category-ink);color:var(--surface)}.testing-delivery-note{color:var(--muted);gap:10px;margin-top:20px;font-size:12px;display:flex}.testing-workflows{flex-wrap:wrap;gap:10px;margin:0 0 20px;display:flex}.testing-workflows button{align-items:center;gap:8px;display:flex}.testing-workflows [aria-pressed=true]{background:var(--category-ink);color:var(--surface);border-color:var(--category)}[data-directory-category=testing] #testing-preparation table td,[data-directory-category=testing] #class-testing-rosters table td{padding:9px 10px;font-size:13px}[data-directory-category=testing] .testing-quick-actions{flex-wrap:wrap;gap:3px;display:flex}[data-directory-category=testing] .testing-quick-actions button{min-height:28px;padding:5px 7px;font-size:11px}@media (width<=1200px){.testing-score-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width<=640px){.testing-card-heading{flex-direction:column;align-items:flex-start}.testing-score-grid,.testing-notes{grid-template-columns:1fr}.live-scorecard{padding:12px}.testing-workflows button{flex:1;justify-content:center;font-size:12px}.testing-premium.directory-v2{padding:12px}.testing-live-table{min-width:700px}}@media (prefers-reduced-motion:no-preference){.testing-premium{scroll-behavior:smooth}}.class-lesson-plan{border:1px solid var(--border);background:var(--surface);color:var(--text);border-radius:10px;min-width:0;margin:12px 0 16px}.class-lesson-plan>summary{cursor:pointer;padding:12px 16px;font-weight:650}.class-lesson-plan>summary:focus-visible{outline:3px solid var(--accent);outline-offset:2px}.lesson-plan-content{padding:0 16px 14px}.lesson-plan-session{color:var(--muted);margin:4px 0 12px;font-size:14px}.lesson-plan-field{margin:8px 0}.lesson-plan-field>p{white-space:pre-wrap;overflow-wrap:anywhere;margin:3px 0}.lesson-plan-content small{color:var(--muted);margin:12px 0;display:block}.lesson-plan-actions{flex-wrap:wrap;gap:8px;margin-top:12px;display:flex}.class-lesson-plan form{background:0 0;border:0;margin:12px 0 0;padding:0}.class-lesson-plan fieldset{border:0;gap:10px;min-width:0;padding:0;display:grid}.class-lesson-plan label{gap:5px;display:grid}.class-lesson-plan textarea,.class-lesson-plan input:not([type=checkbox]),.class-lesson-plan select{box-sizing:border-box;width:100%;min-width:0}.class-lesson-plan textarea{resize:vertical;min-height:72px;max-height:280px}.class-lesson-plan .lesson-plan-confirm{align-items:flex-start;gap:8px;display:flex}.lesson-plan-copy{gap:8px;margin-top:12px;display:grid}.lesson-plan-permission{color:var(--muted);font-size:13px}@media (width<=480px){.lesson-plan-content{padding:0 12px 12px}.class-lesson-plan>summary{padding:12px}.lesson-plan-actions>button{flex:auto}}.attendance-command{gap:16px;display:grid}.attendance-command .directory-summary{margin:0}.attendance-session-picker,.attendance-roster,.attendance-briefing{border:1px solid var(--border);background:var(--surface);border-radius:14px;padding:16px}.attendance-session-picker>header,.attendance-panel-title,.attendance-roster-heading,.attendance-session-toolbar{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;display:flex}.attendance-panel-title h3,.attendance-roster-heading h3{margin:0}.attendance-session-toolbar{justify-content:flex-start}.attendance-session-toolbar label{font-size:12px}.attendance-session-toolbar input,.attendance-session-toolbar select{margin-top:4px;display:block}.attendance-session-picker .attendance-session-buttons{flex-wrap:wrap;gap:8px;display:flex}.attendance-session-picker .attendance-session-buttons>button{text-align:left;border:1px solid var(--border);background:var(--surface-soft);max-width:320px;color:var(--ink);border-radius:10px;flex:180px;gap:4px;padding:12px;display:grid}.attendance-session-picker .attendance-session-buttons>button[aria-pressed=true]{border-color:var(--category,var(--accent));box-shadow:inset 3px 0 var(--category,var(--accent))}.attendance-session-picker small,.attendance-policy-note,.attendance-history small,.attendance-roster-heading small{color:var(--muted);font-size:12px}.attendance-session-picker h3{margin:0}.attendance-session-picker h4{margin:12px 0 8px}.attendance-command details>summary{cursor:pointer;font-weight:600}.attendance-briefing-items{flex-wrap:wrap;gap:8px;margin-top:12px;display:flex}.attendance-signal{border:1px solid var(--border);border-left:4px solid var(--signal,var(--border));background:var(--surface-soft);color:var(--ink);text-align:left;border-radius:9px;flex:220px;gap:4px;min-width:0;padding:10px 12px;font-size:12px;display:grid}.signal-yellow{--signal:#c48b00}.signal-orange{--signal:#d66b10}.signal-red{--signal:#dc4057}.signal-positive{--signal:#19965c}.signal-info{--signal:var(--category,var(--accent))}.attendance-calm{color:var(--muted);margin:0;font-size:13px}.attendance-policy-note{margin:10px 0}.attendance-announcement{margin-top:8px}.attendance-handoff-panel{border:1px solid var(--border);border-radius:12px;margin-top:14px!important;padding:14px!important}.attendance-handoff-fields{grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;display:grid}.attendance-handoff-fields label,.attendance-handoff-panel form>label{gap:4px;font-size:12px;display:grid}.attendance-handoff-panel textarea{min-height:70px}.attendance-history{gap:10px;margin-top:14px;display:grid}.attendance-history article{border:1px solid var(--border);overflow-wrap:anywhere;border-radius:10px;min-width:0;padding:12px}.attendance-history article p{margin:8px 0}.attendance-note-actions{gap:8px;margin:10px 0;display:flex}.attendance-state{border:1px solid var(--signal,var(--border));border-radius:20px;padding:4px 7px;font-size:10px;font-weight:700}.attendance-policy-form{flex-wrap:wrap;align-items:end;gap:10px;display:flex}.attendance-policy-form label{max-width:100px;font-size:12px;display:grid}.attendance-roster-list{background:var(--border);border:1px solid var(--border);border-radius:10px;gap:1px;margin-top:12px;display:grid;overflow:hidden}.attendance-student-row{background:var(--surface);grid-template-columns:minmax(180px,1.3fr) minmax(85px,.45fr) minmax(280px,1.6fr) auto;align-items:center;gap:12px;padding:10px 12px;display:grid}.attendance-student-identity{align-items:center;gap:9px;min-width:0;display:flex}.attendance-student-identity>div{gap:4px;display:grid}.attendance-student-identity strong{font-size:14px}.attendance-student-identity small{color:var(--muted);font-size:11px}.attendance-student-row .attendance-buttons{flex-wrap:wrap;gap:5px;display:flex}.attendance-student-row .attendance-buttons button{background:var(--surface-soft);min-height:38px;color:var(--ink);border:1px solid var(--border);border-radius:7px;padding:7px 9px;font-size:11px}.attendance-student-row .attendance-buttons button[aria-pressed=true]{color:var(--ink);border:2px solid var(--accent)}.attendance-student-row .attendance-buttons button[aria-pressed=true]:nth-child(2){background:color-mix(in srgb,#1b995d 25%,var(--surface));border-color:#1b995d}.attendance-student-row .attendance-buttons button[aria-pressed=true]:first-child{background:color-mix(in srgb,#df4155 18%,var(--surface));border-color:#df4155}.attendance-warning-badge{border:1px solid var(--signal);background:var(--surface-soft);color:var(--ink);border-radius:6px;padding:3px 6px;font-size:10px;display:inline-flex}.attendance-status-unmarked{color:var(--muted);font-size:10px}.attendance-command .attendance-corrections{border:1px solid var(--border);border-radius:10px;padding:12px}.attendance-command .attendance-corrections label{margin-top:8px;display:block}.attendance-command .attendance-corrections input:not([type=checkbox]){display:block}.attendance-reset{padding:5px 7px;font-size:11px}.attendance-tools-tabs{margin-bottom:12px}.attendance-tools-tabs button{font-size:12px}.attendance-command :is(button,input,select,textarea):focus-visible{outline:3px solid var(--category,var(--accent));outline-offset:3px}.attendance-command .profile-photo{width:34px;height:34px}[data-directory-category=attendance],[data-category=attendance]{--category:var(--accent);--category-ink:var(--ink);--category-solid:var(--accent)}[data-directory-category=attendance] .directory-page-frame{border:2px solid var(--category);background:var(--surface);border-radius:16px;margin-bottom:22px;overflow:clip}[data-directory-category=attendance] .directory-page-frame>.page-heading{border:0;border-radius:0}.attendance-command .attendance-empty{color:var(--muted);text-align:center;padding:18px}@media (width<=1050px){.attendance-student-row{grid-template-columns:minmax(180px,1fr) 80px}.attendance-student-row>div:nth-child(3){grid-area:2/1/auto/-1}.attendance-student-row>div:nth-child(4){grid-area:3/1/auto/-1}.attendance-student-row .roster-progress-cell{grid-area:1/2}.attendance-roster-labels{display:none}.attendance-handoff-fields{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width<=560px){.attendance-roster,.attendance-briefing,.attendance-session-picker{padding:12px}.attendance-student-row{grid-template-columns:minmax(0,1fr) auto;gap:8px}.attendance-student-row .attendance-buttons button{flex:1;min-height:42px;padding:6px;font-size:10px}.attendance-handoff-fields{grid-template-columns:1fr 1fr}.attendance-session-toolbar label,.attendance-session-toolbar input,.attendance-session-toolbar select{width:100%}.attendance-panel-title h3{font-size:15px}.attendance-panel-title button{font-size:11px}.attendance-student-identity strong{font-size:13px}}#one-tap-attendance.attendance-command .attendance-student-row .attendance-buttons{grid-template-columns:repeat(4,minmax(0,1fr));gap:5px;width:100%;min-width:0;max-width:none;display:grid}#one-tap-attendance.attendance-command .attendance-student-row .attendance-buttons button{width:100%;height:42px;min-height:42px;padding:5px;font-size:11px;line-height:1.1}#one-tap-attendance.attendance-command .attendance-student-row>div{min-width:0}.attendance-ratio-explanation{border:1px solid var(--border);background:var(--surface);max-width:min(360px,85vw);color:var(--ink);border-radius:10px;padding:16px;font-size:13px}.classroom-day-controls{flex-wrap:wrap;align-items:flex-end;gap:10px;display:flex}.classroom-day-controls>label{flex-direction:column;gap:4px;margin:0;display:flex}.classroom-day-controls button,.classroom-day-controls input{box-sizing:border-box;height:44px;min-height:44px;margin:0}.attendance-briefing-items{grid-template-columns:minmax(0,1fr);gap:16px;display:grid}.instructor-message-card{box-sizing:border-box;border:1px solid var(--border);background:var(--surface);width:100%;min-width:0;color:var(--ink);border-radius:12px;padding:18px}.instructor-message-card header{flex-wrap:wrap;justify-content:space-between;gap:10px;display:flex}.instructor-message-card p,.attendance-history article>p,.attendance-announcement p{white-space:pre-wrap;overflow-wrap:anywhere;max-height:none;line-height:1.6;overflow:visible;font-size:17px!important}.instructor-message-card strong{font-size:17px}.instructor-message-card small,.attendance-history article>small{margin:10px 0;font-size:14px;line-height:1.5;display:block}.instructor-message-options{margin:12px 0}.classroom-schedule-preview{border:2px dashed var(--border);background:var(--surface);border-radius:10px;margin:12px 0;padding:14px}.attendance-history details small{white-space:pre-wrap;overflow-wrap:anywhere;font-size:16px;line-height:1.5}.classroom-beta{min-width:0}.classroom-day-controls,.classroom-actions,.classroom-session-buttons,.classroom-staff{flex-wrap:wrap;align-items:center;gap:10px;margin:12px 0;display:flex}.classroom-day-controls label,.classroom-actions label{flex-direction:column;gap:4px;display:flex}.classroom-day-controls>button{min-width:44px}.classroom-session-buttons>button{background:var(--surface);color:var(--text);border:1px solid var(--border)}.classroom-session-buttons>button[aria-pressed=true]{background:var(--accent);color:var(--accent-ink)}.classroom-session-buttons small{color:inherit;display:block}.classroom-heading h2{margin:12px 0 6px}.classroom-heading p{font-size:15px}.classroom-beta .classroom-attendance-form{background:0 0;border:0;margin:16px 0;padding:0;display:block}.classroom-beta fieldset{min-width:0;display:block}.classroom-draft-note{color:var(--muted);font-size:15px;line-height:1.5}.classroom-roster{gap:12px;display:grid}.classroom-student{border:1px solid var(--border);background:var(--surface);border-radius:12px;grid-template-columns:minmax(210px,1fr) minmax(480px,1.5fr);gap:18px;padding:16px;display:grid}.classroom-student-name>strong{font-size:18px;line-height:1.5;display:inline}.classroom-attendance-buttons{grid-template-columns:repeat(4,minmax(90px,1fr));gap:8px;display:grid}.classroom-attendance-buttons .attendance-choice{background:var(--surface);min-height:52px;color:var(--text);border:2px solid var(--border);white-space:nowrap;padding:10px 8px;font-size:16px;font-weight:750}.classroom-attendance-buttons .status-present[aria-pressed=true]{color:#fff;background:#087a59;border-color:#076044}.classroom-attendance-buttons .status-late[aria-pressed=true]{color:#fff;background:#156a89;border-color:#0d4c65}.classroom-attendance-buttons .status-excused[aria-pressed=true]{color:#fff;background:#6851a4;border-color:#503782}.classroom-attendance-buttons .status-absent[aria-pressed=true]{color:#fff;background:#b23941;border-color:#8d252c}.classroom-attendance-buttons .attendance-choice:focus-visible{outline:3px solid var(--text);outline-offset:2px}.classroom-early{align-items:center;gap:8px;margin-top:10px;font-size:13px;display:flex}.classroom-progress{border-radius:6px;width:fit-content;margin-top:8px;padding:4px 8px;font-size:14px;line-height:1.5}.progress-green{color:#075940;background:#d7f3e9}.progress-amber{color:#694300;background:#fff0c2}.progress-red{color:#8b2028;background:#ffe2e2}.progress-neutral{background:var(--surface-soft);color:var(--text)}.classroom-finalization{border:1px solid var(--border);border-radius:10px;flex-wrap:wrap;align-items:center;gap:12px;margin-top:20px;padding:16px;display:flex}.classroom-finalization h3,.classroom-finalization p{margin:0}.classroom-finalization label{flex:1;min-width:180px}.classroom-add-person{border:1px solid var(--border);border-radius:8px;padding:12px}.classroom-add-person select{min-width:220px}.classroom-historical{border:1px solid var(--border);border-radius:8px;padding:14px}.student-flair-list{vertical-align:middle;flex-wrap:wrap;gap:5px;margin-left:8px;display:inline-flex}.student-flair-item{display:inline-flex;position:relative}.student-flair-list .student-flair-badge{color:#563600;white-space:normal;background:#fff0b8;border:1px solid #b88921;border-radius:8px;min-height:30px;padding:3px 8px;font-size:13px;display:inline-flex}.student-flair-list .birthday-today{font-weight:800;box-shadow:0 0 0 2px #e6bb4355}.student-flair-detail{z-index:20;border:1px solid var(--border);background:var(--surface);min-width:180px;color:var(--text);border-radius:8px;padding:10px;font-size:14px;position:absolute;top:100%;left:0;box-shadow:0 5px 18px #0003}.staff-premium .staff-role-badge.role-instructor,.badge.role-instructor,.badge-instructor{color:#075a50;background:#d1f4ef;border-color:#168375}.staff-premium .staff-role-badge.role-leader,.badge.role-leader,.badge-leader{color:#664300;background:#fff0bf;border-color:#bc8a13}.classroom-staff .badge{font-size:14px}.display-preferences{margin:16px 0}.display-preferences form{align-items:end}.cycle-class-card small,.cycle-class-card .cycle-comparison,.cycle-panel>small{line-height:1.5;font-size:14px!important}.cycle-class-card .cycle-rate{font-size:15px}.cycle-management-nav{flex-wrap:wrap;gap:8px;margin:16px 0;display:flex}.cycle-info{margin-left:10px;display:inline-block;position:relative}.cycle-info>summary{border:1px solid var(--border);cursor:pointer;border-radius:50%;justify-content:center;align-items:center;width:28px;height:28px;display:inline-flex}.cycle-info>div{z-index:30;background:var(--surface);border:1px solid var(--border);border-radius:10px;width:min(540px,80vw);padding:18px;font-size:14px;position:absolute;top:100%;right:0;box-shadow:0 8px 24px #0002}.staff-role-editor{scroll-margin-top:90px}.beta-cycle-management{scroll-margin-top:80px}.beta-cycle-management[data-mode=schedules] .cycle-section:not(:has(#cycle-schedule-heading)){display:none}.beta-cycle-management[data-mode=history] .cycle-section:not(:has(#cycle-manage-heading)){display:none}@media (width<=1100px){.classroom-student{grid-template-columns:1fr}.classroom-attendance-buttons{grid-template-columns:repeat(4,minmax(0,1fr))}}@media (width<=550px){.classroom-attendance-buttons{grid-template-columns:repeat(2,minmax(0,1fr))}.classroom-student{padding:12px}.classroom-finalization{flex-direction:column;align-items:stretch}.classroom-finalization label,.classroom-actions>label,.classroom-day-controls>span{width:100%}.student-flair-list{margin:5px 0;display:flex}.cycle-info>div{width:90%;position:fixed;top:22%;left:5%}}.beta-role-dialog{border:1px solid var(--border);background:var(--surface);width:min(760px,94vw);max-height:90vh;color:var(--text);border-radius:14px;padding:18px;overflow:auto}.beta-role-dialog::backdrop{background:#0008}.beta-role-dialog form{margin:0}.directory-pagination label{align-items:center;gap:8px;font-size:14px;display:flex}.directory-pagination select{width:90px;min-height:38px}.profile-search-results{flex-wrap:wrap;gap:8px;margin:10px 0;display:flex}.classroom-staff .badge{white-space:normal}.cycle-info p{font-size:14px;font-weight:400}.cycle-section-heading>h3{align-items:center;display:flex}.beta-cycle-management[data-mode=edit] .cycle-section:not(:has(#cycle-manage-heading)){display:none}.cycle-info>summary{font-size:16px}.profile-search-results button{font-size:15px}.classroom-beta .classroom-roster{border:1px solid var(--border);background:var(--surface);border-radius:10px;gap:0;display:block}.classroom-beta .classroom-student{background:0 0;border:0;border-radius:0;grid-template-columns:minmax(230px,1fr) minmax(420px,1.5fr);align-items:center;gap:14px;min-width:0;padding:10px 12px;display:grid}.classroom-beta .classroom-student+.classroom-student{border-top:1px solid var(--border)}.classroom-student-identity{align-items:center;gap:12px;min-width:0;display:flex}.classroom-student-name{min-width:0}.classroom-name-line{flex-wrap:wrap;align-items:center;gap:6px;display:flex}.classroom-name-line>strong{font-size:16px;line-height:1.4}.classroom-name-line .student-flair-list{flex-wrap:wrap;margin:0;display:inline-flex}.classroom-beta .profile-photo,.classroom-beta .profile-photo img{aspect-ratio:1;object-fit:cover;border-radius:50%;width:48px;height:48px}.classroom-beta .profile-photo-control{flex:0 0 48px}.classroom-beta .classroom-progress{margin-top:3px;padding:1px 6px;font-size:14px;line-height:1.4}.classroom-beta .classroom-attendance-buttons{grid-template-columns:repeat(5,minmax(0,1fr));gap:5px}.classroom-beta .classroom-attendance-buttons .attendance-choice{border-width:1px;min-width:0;min-height:44px;padding:7px 5px;font-size:14px}.classroom-beta .status-left_early[aria-pressed=true]{background:var(--accent);color:var(--accent-ink);border-color:var(--accent)}.classroom-beta .classroom-student .badge{padding:1px 6px;font-size:13px}.classroom-beta .classroom-status-controls>.link-button{margin:3px 0 0;padding:2px 0;font-size:13px}.classroom-name-line .student-flair-badge{min-height:28px;padding:2px 6px;font-size:13px}@media (width<=1100px){.classroom-beta .classroom-student{grid-template-columns:1fr;gap:7px}.classroom-beta .classroom-attendance-buttons{grid-template-columns:repeat(5,minmax(0,1fr))}}@media (width<=480px){.classroom-beta .classroom-student{padding:9px 8px}.classroom-beta .classroom-attendance-buttons{grid-template-columns:repeat(3,minmax(0,1fr))}.classroom-beta .classroom-attendance-buttons .attendance-choice{min-height:44px;font-size:14px}.classroom-beta .profile-photo,.classroom-beta .profile-photo img{width:44px;height:44px}.classroom-beta .profile-photo-control{flex-basis:44px}}.classroom-beta .classroom-attendance-buttons .attendance-choice[aria-pressed=true]{background:var(--accent);color:var(--accent-ink);border-color:var(--accent);box-shadow:inset 0 0 0 1px}.classroom-beta .classroom-attendance-buttons .attendance-choice[aria-pressed=false]{background:var(--surface);color:var(--text)}.cycle-performance-heading{align-items:center;gap:6px;display:flex}.cycle-performance-heading h3,.cycle-performance-heading .cycle-info{margin:0}.cycle-info[open]>summary{background:var(--surface-soft)}.cycle-info>summary:focus-visible{outline:3px solid var(--accent);outline-offset:3px}.cycle-class-card .cycle-class-heading h4{font-size:17px;line-height:1.4}.classroom-finalization{gap:12px;display:grid}.classroom-finalization label{gap:6px;display:grid}.classroom-finalization textarea{resize:vertical;width:100%;min-height:88px;max-height:240px}.attendance-record-history article{border-bottom:1px solid var(--border);padding:12px 0}.attendance-record-history p{white-space:pre-wrap;overflow-wrap:anywhere}.classroom-beta>.classroom-section-divider{border:0;border-top:1px solid var(--border);width:100%;height:0;margin:16px 0;padding:0;display:block}.enrollment-selection{width:100%;min-width:0;display:block;container-type:inline-size}.enrollment-selection .enrollment-selection-header{background:0 0;border:0;margin:0 0 16px;padding:0;display:block}.enrollment-selection-header h3{margin:0 0 5px;font-size:20px;line-height:1.3}.enrollment-selection-header p{color:var(--text-muted,var(--text));margin:0;font-size:14px}.enrollment-selection>fieldset.enrollment-selection-body{border:0;width:100%;min-width:0;margin:0;padding:0;display:block}.enrollment-selection-controls{grid-template-columns:minmax(0,1fr);align-items:end;gap:12px;width:100%;display:grid}.enrollment-selection .enrollment-selection-controls label{flex-direction:column;gap:6px;min-width:0;margin:0;display:flex}.enrollment-selection-controls :is(input,select){width:100%;min-width:0;max-width:100%;height:42px}.enrollment-selection-help{color:var(--text-muted,var(--text));margin:12px 0;font-size:14px;line-height:1.5}.enrollment-toggle-grid{grid-template-columns:minmax(0,1fr);align-items:stretch;gap:12px;width:100%;margin:16px 0;display:grid}.enrollment-toggle-item{flex-direction:column;min-width:0;display:flex}.enrollment-selection .enrollment-toggle{text-align:left;white-space:normal;border:2px solid var(--border);background:var(--surface);width:100%;min-width:0;min-height:112px;color:var(--text);box-shadow:none;border-radius:12px;flex:1;justify-content:flex-start;align-items:flex-start;gap:12px;margin:0;padding:16px;display:flex}.enrollment-selection .enrollment-toggle[aria-pressed=true]{background:var(--accent);color:var(--accent-ink);border-color:var(--accent-ink);box-shadow:0 0 0 2px color-mix(in srgb,var(--accent) 40%,transparent)}.enrollment-toggle-copy{flex:1;min-width:0;display:block}.enrollment-toggle :is(strong,small,span){overflow-wrap:normal;word-break:normal;-webkit-hyphens:none;hyphens:none;white-space:normal}.enrollment-toggle strong{color:inherit;font-size:16px;line-height:1.35;display:block}.enrollment-toggle-state{margin-top:6px;font-size:13px;font-weight:700;line-height:1.4;display:block}.enrollment-selection .enrollment-toggle small{color:inherit;opacity:1;margin-top:6px;font-size:13px;font-weight:400;line-height:1.4;display:block}.enrollment-selection .enrollment-toggle:hover:not(:disabled){background:var(--surface-soft);color:var(--text);box-shadow:inset 0 0 0 1px var(--border)}.enrollment-selection .enrollment-toggle[aria-pressed=true]:hover:not(:disabled){background:var(--accent);color:var(--accent-ink);box-shadow:0 0 0 2px color-mix(in srgb,var(--accent) 40%,transparent)}.enrollment-toggle-check{flex:0 0 28px;font-size:30px;font-weight:800;line-height:1}.enrollment-selection .enrollment-toggle:disabled{opacity:.7;cursor:not-allowed}.enrollment-selection .enrollment-toggle:focus-visible{outline:3px solid var(--text);outline-offset:4px}.enrollment-toggle-setup{overflow-wrap:normal;word-break:normal;align-self:flex-start;margin:8px 0 0;padding:0 4px;font-size:14px;line-height:1.5;display:block}.enrollment-selection-actions{flex-wrap:wrap;justify-content:flex-start;align-items:center;gap:10px;width:100%;margin-top:16px;display:flex}.enrollment-selection .enrollment-selection-actions>button{white-space:nowrap;flex:none;width:auto;min-width:0;max-width:100%;height:auto;min-height:40px;margin:0;padding:9px 16px;display:inline-flex}.enrollment-selection-feedback{margin:12px 0 0;font-size:14px;line-height:1.5}@container (width>=500px){.enrollment-selection-controls{grid-template-columns:repeat(2,minmax(0,1fr))}.enrollment-selection-controls label:last-child{grid-column:1/-1}}@container (width>=520px){.enrollment-toggle-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@container (width>=760px){.enrollment-selection-controls{grid-template-columns:minmax(200px,1fr) minmax(180px,.8fr) minmax(220px,1.2fr)}.enrollment-selection-controls label:last-child{grid-column:auto}}@container (width>=960px){.enrollment-toggle-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}.class-create-dialog{box-sizing:border-box;border:1px solid var(--border);background:var(--surface);width:min(720px,100vw - 32px);max-height:calc(100dvh - 32px);color:var(--ink);border-top:4px solid #8b5cf6;border-radius:18px;padding:clamp(18px,4vw,32px);overflow:auto;box-shadow:0 24px 80px #0005}.class-create-dialog::backdrop{background:#10102499}.class-create-dialog h2{margin-top:0}.compact-class-form .class-fields{border:0;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;width:100%;min-width:0;margin:0;padding:0;display:grid}.compact-class-form .class-fields>legend{grid-column:1/-1}.compact-class-form .class-fields>label{min-width:0}.compact-class-form .class-fields input{box-sizing:border-box;max-width:100%}.compact-class-form .class-fields>.enrollment-rules,.compact-class-form .weekday-toggles,.class-form-error{grid-column:1/-1}.class-form-actions{flex-wrap:wrap;gap:12px;width:100%;margin-top:20px;display:flex}.class-create-dialog .compact-class-form{display:block}.class-form-error{color:var(--ink);border-left:3px solid #dc2626;margin:0;padding:10px}@media (width<=520px){.compact-class-form .class-fields{grid-template-columns:minmax(0,1fr)}.class-create-dialog .enrollment-rules{min-width:0}}.class-create-dialog .weekday-toggles button{white-space:nowrap;padding-inline:6px}.class-create-dialog .enrollment-rules{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;display:grid}.class-create-dialog .enrollment-rules>legend,.class-create-dialog .enrollment-rules>.rule-options{grid-column:1/-1}.class-create-dialog .enrollment-rules>label:has(input[type=checkbox]){grid-column:1/-1}.class-create-dialog .weekday-toggles{grid-template-columns:repeat(7,minmax(0,1fr));gap:6px;display:grid}@media (width<=650px){.class-create-dialog .weekday-toggles{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width<=520px){.class-create-dialog .enrollment-rules{grid-template-columns:minmax(0,1fr)}}.calendar-premium{gap:16px;display:grid}.calendar-school-day,.calendar-school-day strong,.calendar-today-strip,.calendar-toolbar,.calendar-period,.calendar-detail-heading{align-items:center;gap:12px;display:flex}.calendar-school-day{justify-content:space-between}.calendar-school-day small,.calendar-today-strip small,.calendar-toolbar small,.calendar-legend,.calendar-no-sessions{color:var(--muted)}.calendar-today-strip,.calendar-board,.calendar-detail{border:1px solid var(--border);background:var(--surface);border-radius:16px;padding:16px}.calendar-today-strip{background:color-mix(in srgb,var(--category) 9%,var(--surface));justify-content:space-between}.calendar-today-strip small{margin-top:5px;display:block}.calendar-today-strip button{align-items:center;gap:8px;display:flex}.calendar-toolbar{flex-wrap:wrap;margin-bottom:16px}.calendar-toolbar h3{margin:0}.calendar-toolbar>div:first-child{margin-right:auto}.calendar-toolbar label{font-size:12px}.calendar-toolbar input,.calendar-toolbar select{margin-top:4px;display:block}.calendar-premium-grid{background:var(--border);border:1px solid var(--border);border-radius:10px;grid-template-columns:repeat(7,minmax(0,1fr));gap:1px;display:grid;overflow:hidden}.calendar-premium-grid>article{background:var(--surface);min-width:0;min-height:125px;padding:7px}.calendar-premium-grid>article.today{box-shadow:inset 0 0 0 2px var(--category)}.calendar-premium-grid>article.adjacent{background:color-mix(in srgb,var(--surface) 94%,var(--muted))}.calendar-day-name{text-align:center;background:var(--surface);padding:10px 2px;font-size:12px;font-weight:700}.calendar-day-name abbr{text-decoration:none}.calendar-day-button{border:0;justify-content:space-between;align-items:center;gap:4px;width:100%;padding:3px;font-weight:700;display:flex;color:var(--ink)!important;background:0 0!important}.calendar-day-button small{font-size:10px;font-weight:400}.calendar-card{border:1px solid var(--border);border-left:3px solid var(--calendar-class);background:color-mix(in srgb,var(--calendar-class) 8%,var(--surface));border-radius:8px;margin-top:7px;overflow:hidden}.calendar-accent-blue{--calendar-class:var(--info,#589ce8)}.calendar-accent-green{--calendar-class:var(--success,#31a58b)}.calendar-accent-orange{--calendar-class:var(--warning,#c88c36)}.calendar-accent-purple{--calendar-class:var(--accent)}.calendar-card-main{text-align:left;border:0;gap:5px;width:100%;min-width:0;padding:9px;display:grid;color:var(--ink)!important;background:0 0!important}.calendar-card-main strong{overflow-wrap:anywhere;font-size:12px}.calendar-card-main span,.calendar-card-main small{font-size:11px}.calendar-status{font-weight:650}.is-cancelled{opacity:.7}.calendar-attend{justify-content:center;align-items:center;gap:6px;width:calc(100% - 12px);margin:0 6px 7px;padding:7px;font-size:12px;display:flex}.calendar-schedule-preview,.calendar-school-event,.calendar-more{text-align:left;width:100%;margin-top:6px;padding:7px;font-size:11px;color:var(--ink)!important;background:0 0!important}.calendar-schedule-preview{border:1px dashed var(--border)}.calendar-schedule-preview small{margin-top:4px;display:block}.calendar-school-event{background:color-mix(in srgb,var(--accent) 14%,var(--surface))!important}.calendar-legend{margin-bottom:0;font-size:11px}.view-day{grid-template-columns:1fr}.view-day>article{min-height:0;padding:14px}.view-day .calendar-card{align-items:center;display:flex}.view-day .calendar-card-main{flex:1;padding:12px}.view-day .calendar-card-main strong{font-size:15px}.view-day .calendar-attend{width:auto;margin:12px}.calendar-detail-heading{justify-content:space-between}.calendar-detail h3{margin:0}.calendar-detail dl{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;display:grid}.calendar-detail dt{color:var(--muted);font-size:12px}.calendar-detail dd{margin:4px 0}.calendar-planning{margin-top:20px}.calendar-planning>summary{cursor:pointer;border:1px solid var(--border);border-radius:12px;padding:16px;font-weight:700}.calendar-planning:not([open])>:not(summary){display:none}@media (width<=900px){.calendar-premium-scroll{overflow-x:auto}.view-week{min-width:850px}.calendar-day-button{flex-wrap:wrap}.calendar-date-picker{display:none}.calendar-board{padding:10px}.calendar-card-main{padding:5px}.view-month .calendar-card-main span,.view-month .calendar-status{display:none}}@media (width<=520px){.calendar-school-day,.calendar-today-strip{flex-direction:column;align-items:flex-start}.calendar-toolbar{gap:8px}.calendar-toolbar>div:first-child{width:100%}.calendar-premium-grid>article{min-height:92px;padding:3px}.calendar-day-button small{display:none}.view-month .calendar-card-main strong{font-size:10px}.view-month .calendar-schedule-preview{padding:3px;font-size:9px}.view-month .calendar-schedule-preview small{display:none}.calendar-detail dl{grid-template-columns:1fr}.view-day .calendar-card{flex-direction:column;align-items:stretch}.view-day .calendar-attend{margin-top:0}.calendar-detail-heading{align-items:flex-start}.calendar-day-name{font-size:10px}}.calendar-premium .calendar-card-main{text-align:left;white-space:normal;justify-content:stretch;display:grid}.calendar-premium .calendar-card-main>*{text-align:left}.calendar-premium .calendar-schedule-preview{white-space:normal;overflow-wrap:normal;word-break:normal;display:block}.calendar-premium .calendar-day-button{min-height:32px;display:flex}.calendar-premium .calendar-school-event{display:block}.calendar-premium .calendar-premium-grid>article{border-radius:0;margin:0}.calendar-premium .calendar-card-main strong{font-size:13px}.calendar-premium .view-week .calendar-no-sessions{font-size:12px}.calendar-premium .calendar-detail{scroll-margin-top:20px}@media (width<=520px){.calendar-premium .view-month>article{min-height:70px}.calendar-premium .view-month .calendar-card-main{padding:4px 2px}.calendar-premium .view-month .calendar-card-main strong,.calendar-premium .view-month .calendar-schedule-preview{white-space:nowrap;text-overflow:ellipsis;font-size:10px;display:block;overflow:hidden}.calendar-premium .view-month .calendar-day-button{justify-content:center}.calendar-premium .view-month .calendar-schedule-preview{padding:5px 2px}}[data-directory-category=classes] .directory-page-frame:has(.calendar-premium){border:2px solid var(--category);background:var(--surface);border-radius:16px;margin-bottom:22px;overflow:clip}[data-directory-category=classes] .directory-page-frame:has(.calendar-premium)>.page-heading{border:0;border-radius:0}.calendar-premium .calendar-schedule-preview small{font-size:11px;line-height:1.35}.calendar-premium .view-month>article{min-height:100px}.calendar-premium .view-month .calendar-schedule-preview small{display:none}[data-directory-category=classes] .calendar-scheduling{border:0;border-radius:0;margin:0;padding:8px 20px 20px}@media (width<=700px){[data-directory-category=classes] .calendar-scheduling{padding:8px 12px 14px}}#school-setup .setup-steps{grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;display:grid}#school-setup .setup-steps button{text-align:left;white-space:normal;overflow-wrap:anywhere;border-radius:9px;min-width:0;min-height:48px;margin:0;padding:10px 12px;line-height:1.4}#school-setup .setup-steps button[aria-current=step]{box-shadow:inset 0 0 0 1px var(--accent-ink);font-weight:750}#school-setup .setup-content{min-width:0}@media (width<=1000px){#school-setup .setup-steps{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width<=420px){#school-setup .setup-steps{grid-template-columns:1fr}#school-setup .setup-steps button{min-height:44px}}[data-directory-category=enrollment],[data-category=enrollment]{--category:#dc2626;--category-solid:#dc2626;--category-ink:#b91c1c}:root[data-theme=dark] [data-category=enrollment]{--category-ink:#fca5a5}.enrollments-workspace .card-heading{flex-wrap:wrap;justify-content:space-between;align-items:center;display:flex}.enrollments-workspace .card-heading p{color:var(--muted);margin:6px 0}.enrollments-workspace .card-heading>button,.enrollment-editor>button:not(.secondary),.enrollment-review>button:not(.secondary){color:#fff;background:#dc2626;border-color:#dc2626}.enrollment-summary{grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin-bottom:20px;display:grid}.enrollment-summary>div{border:1px solid var(--border);background:var(--surface-soft);border-radius:10px;flex-direction:column;gap:8px;padding:16px;display:flex}.enrollment-summary span{color:var(--muted);font-size:13px}.enrollment-summary strong{font-size:26px}.enrollment-editor{border:1px solid var(--category);background:var(--surface-soft);border-radius:10px;margin-bottom:20px;padding:18px}.enrollment-editor fieldset{border:0;min-width:0;margin:0;padding:0}.enrollment-fields{grid-template-columns:2fr 1.5fr 1fr;gap:12px;display:grid}.enrollment-fields label,.enrollment-editor label:not(.enrollment-class):not(.enrollment-check){flex-direction:column;gap:6px;display:flex}.enrollment-class-list{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin:12px 0;display:grid}.enrollments-workspace .enrollment-class{border:1px solid var(--border);background:var(--surface);cursor:pointer;border-radius:8px;flex-direction:row;align-items:flex-start;gap:12px;padding:12px;display:flex}.enrollment-class:has(input:checked){border-color:var(--category);box-shadow:inset 3px 0 var(--category)}.enrollment-class input,.enrollment-check input{accent-color:#dc2626;flex-shrink:0;width:auto;margin-top:4px}.enrollments-workspace small{color:var(--muted);margin-top:4px;font-size:12px;line-height:1.5;display:block}.enrollment-check{align-items:flex-start;gap:10px;margin:12px 0;display:flex}.enrollment-review{border:1px solid var(--border);border-radius:8px;margin:12px 0;padding:16px}.enrollment-editor button{margin:10px 8px 0 0}.enrollment-search{flex:1}.enrollment-status{border:1px solid var(--border);background:var(--surface-soft);white-space:nowrap;border-radius:5px;padding:3px 8px;font-size:12px;display:inline-block}.enrollment-empty{text-align:center;padding:24px}.enrollment-record-count{color:var(--muted);font-size:12px}.enrollment-legacy{border-top:1px solid var(--border);margin-top:22px;padding-top:16px}.enrollments-workspace .list-toolbar .enrollment-search{flex-direction:column;align-items:stretch;gap:6px;max-width:none;display:flex}.enrollment-actions{white-space:nowrap;align-items:center;gap:10px;display:flex}.enrollments-workspace table{min-width:820px}.enrollment-planning{border:1px solid var(--border);border-radius:8px;margin:16px 0;padding:12px}.enrollment-planning>summary{cursor:pointer;color:var(--category-ink);font-weight:600}.enrollment-planning .auto-assignment>button{background:var(--category);border-color:var(--category);color:#fff}.enrollment-planning .assignment-row .button-group>button{background:var(--surface);border:1px solid var(--border);color:var(--text)}.enrollment-planning .assignment-row .button-group>button[aria-pressed=true]{background:var(--category);border-color:var(--category);color:#fff}.participation-management fieldset,.participation-management .enrollment-fields>label{min-width:0}.participation-management fieldset{box-sizing:border-box;border:1px solid var(--border);width:100%;margin:12px 0;padding:12px;display:block}.participation-management .enrollment-fields{width:100%}.participation-management .enrollment-fields>label{flex-direction:column;gap:6px;display:flex}.participation-management>button{background:var(--category);border-color:var(--category);color:#fff}.participation-management input,.participation-management select{box-sizing:border-box;width:100%;max-width:100%}.participation-management input[type=checkbox]{width:auto}.participation-management li{overflow-wrap:anywhere;margin:10px 0}@media (width<=760px){.enrollment-summary{grid-template-columns:repeat(2,minmax(0,1fr))}.enrollment-fields,.enrollment-class-list{grid-template-columns:1fr}.enrollment-editor{padding:12px}.enrollments-workspace .list-toolbar>label{width:100%;min-width:0}.enrollments-workspace select{max-width:100%}}.participation-management .participation-toggle,.participation-editor>button:not(.secondary){background:var(--category);border-color:var(--category);color:#fff}:root[data-theme=dark] [data-directory-category=enrollment]{--category-ink:#fca5a5}[data-directory-category=enrollment] .directory-header-action>button{background:var(--accent);color:var(--accent-ink);border-color:var(--accent);align-items:center;display:flex}.enrollments-premium .directory-summary{grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin:8px 0 16px}.enrollments-premium .directory-summary>.directory-metric{background:var(--surface-soft);gap:12px;min-height:112px;padding:16px 14px}.enrollments-premium .directory-metric-icon{border-radius:14px;width:50px;height:50px}.enrollments-premium .directory-metric-copy>span{font-size:13px}.enrollments-premium .directory-tone-blue{--metric-fill:#2464c7;--metric-foreground:#fff}.enrollments-premium .directory-tone-purple{--metric-fill:#7c3aed;--metric-foreground:#fff}.enrollments-premium .directory-tone-gold{--metric-fill:#f5c542;--metric-foreground:#352300}.enrollments-premium .enrollment-workflows{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin:0 0 16px;display:grid}.enrollments-premium .enrollment-workflows:has(>details[open]){grid-template-columns:1fr}.enrollments-premium .enrollment-planning{--workflow-color:#2563eb;background:linear-gradient(120deg,color-mix(in srgb,var(--workflow-color) 7%,var(--surface)),var(--surface));border:1px solid color-mix(in srgb,var(--workflow-color) 35%,var(--border));border-radius:12px;min-width:0;margin:0;padding:13px 14px}.enrollments-premium .participation-management{--workflow-color:#0d9488}.enrollments-premium .enrollment-planning>summary{color:var(--ink);align-items:center;gap:12px;min-height:44px;list-style:none;display:flex}.enrollments-premium .enrollment-planning>summary::-webkit-details-marker{display:none}.enrollments-premium .enrollment-planning>summary>span:nth-child(2){flex:1;min-width:0}.enrollments-premium .enrollment-planning>summary strong{font-size:14px}.enrollments-premium .enrollment-planning>summary small{margin:3px 0 0;font-size:12px;line-height:1.4}.enrollments-premium .enrollment-planning>summary>svg{color:var(--workflow-color);flex-shrink:0}.enrollments-premium .enrollment-planning[open]>summary>svg{transform:rotate(90deg)}.enrollments-premium .enrollment-workflow-icon{background:var(--workflow-color);color:#fff;border-radius:12px;flex-shrink:0;place-items:center;width:43px;height:43px;display:grid}.enrollments-premium .enrollment-planning[open]>summary{border-bottom:1px solid var(--border);margin-bottom:12px;padding-bottom:12px}.enrollments-premium .enrollment-planning>.auto-assignment{box-shadow:none;background:0 0;border:0;margin:0;padding:0}.enrollments-premium .enrollment-planning>.auto-assignment>h3{display:none}.enrollments-premium .auto-assignment>label:first-of-type{vertical-align:bottom;flex-direction:column;gap:6px;min-width:200px;margin:0 12px 10px 0;display:inline-flex}.enrollments-premium .auto-assignment>button{vertical-align:bottom;min-height:40px;margin:0 0 10px}.enrollments-premium .enrollment-legacy{border:1px solid var(--border);background:var(--surface-soft);border-radius:10px;margin:14px 0 0;padding:12px 14px}.enrollments-premium .enrollment-legacy>summary{cursor:pointer;color:var(--ink);align-items:center;gap:10px;font-size:13px;font-weight:600;list-style:none;display:flex}.enrollments-premium .enrollment-legacy>summary::-webkit-details-marker{display:none}.enrollments-premium .enrollment-legacy>summary>span:nth-child(2){flex:1}.enrollments-premium .enrollment-history-icon{color:#fff;background:#475569;border-radius:9px;flex-shrink:0;place-items:center;width:32px;height:32px;display:grid}.enrollments-premium .enrollment-legacy[open]>summary{margin-bottom:14px}.enrollments-premium .list-toolbar{gap:12px;margin:0 0 10px}.enrollments-premium .list-toolbar>.search-field{flex:1;min-width:200px;max-width:none}.enrollments-premium .list-toolbar>label{gap:7px;min-width:0;font-size:12px}.enrollments-premium .list-toolbar select{max-width:230px;min-height:38px;padding:7px 9px}.enrollments-premium .table-scroll:has(.enrollment-empty){border:0}.enrollments-premium .enrollment-empty{text-align:left;border:1px dashed var(--border);background:var(--surface-soft);border-radius:12px;align-items:center;gap:14px;min-width:0;padding:20px;display:flex}.enrollments-premium .enrollment-empty>div{flex:1;min-width:0}.enrollments-premium .enrollment-empty strong{color:var(--ink);font-size:15px}.enrollments-premium .enrollment-empty p{color:var(--muted);margin:5px 0 0;font-size:12px}.enrollments-premium .enrollment-empty-icon{background:color-mix(in srgb,var(--category) 12%,var(--surface));width:48px;height:48px;color:var(--category-ink);border-radius:14px;flex-shrink:0;place-items:center;display:grid}.enrollments-premium .enrollment-empty>button{background:var(--accent);color:var(--accent-ink);border-color:var(--accent);align-items:center;gap:8px;margin:0;display:flex}.enrollments-premium .enrollment-record-count{margin:8px 0;font-size:11px}.enrollments-premium .enrollment-status{border-radius:20px;padding:4px 9px;font-size:11px;font-weight:650}.enrollments-premium [data-enrollment-state=Current]{color:#166534;background:#dcfce7;border-color:#86efac}.enrollments-premium [data-enrollment-state=Scheduled]{color:#5b21b6;background:#ede9fe;border-color:#c4b5fd}.enrollments-premium [data-enrollment-state=Paused]{color:#92400e;background:#fef3c7;border-color:#fcd34d}.enrollments-premium [data-enrollment-state=Ended]{background:var(--surface-soft);color:var(--muted)}.enrollments-premium .enrollment-actions{gap:8px;font-size:12px}.enrollments-premium .enrollment-editor{border-color:color-mix(in srgb,var(--category) 45%,var(--border));background:var(--surface-soft);margin:12px 0;padding:16px}.enrollments-premium .enrollment-editor>h3{margin-top:0;font-size:18px}.enrollments-premium :is(summary,a,button):focus-visible{outline:3px solid var(--category-ink);outline-offset:3px}@media (width<=1100px){.enrollments-premium .directory-summary{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width<=700px){.enrollments-premium .enrollment-workflows{grid-template-columns:1fr}.enrollments-premium .directory-summary>.directory-metric{gap:8px;min-height:138px;padding:12px}.enrollments-premium .directory-metric-icon{width:40px;height:40px}.enrollments-premium .directory-metric-icon svg{width:26px;height:26px}.enrollments-premium .directory-metric-copy>strong{font-size:30px}.enrollments-premium .directory-metric-copy>span{font-size:12px}.enrollments-premium .enrollment-empty{flex-wrap:wrap;padding:15px}.enrollments-premium .enrollment-empty>button{margin-left:auto}.enrollments-premium .list-toolbar>.search-field{flex-basis:100%;min-width:0}.enrollments-premium .list-toolbar>label{flex-direction:row;justify-content:space-between;width:100%}.enrollments-premium .list-toolbar select{max-width:75%}.enrollments-premium .enrollment-planning{padding:12px}}[data-directory-category=families] .family-card{border:1px solid var(--border);box-shadow:none;border-radius:10px}[data-directory-category=families] .family-card-header{flex-wrap:wrap;gap:12px}[data-directory-category=families] .family-actions{flex-wrap:wrap;gap:8px;display:flex}[data-directory-category=families] .family-profile{box-shadow:none;background:var(--surface);border:0;margin:0}[data-directory-category=families] .creation-panels>.creation-section{box-shadow:none;background:var(--surface);border:0;border-radius:0;margin:0;padding:12px 20px 20px}[data-directory-category=families] .creation-panels #add-family>h2{font-size:20px}@media (width<=700px){[data-directory-category=families] .creation-panels>.creation-section{padding:12px}}.student-flair{width:34px;min-width:34px;padding-inline:8px!important}.student-attendance{border:1px solid var(--border);white-space:nowrap;border-radius:7px;padding:3px 8px;font-weight:650;display:inline-flex}.student-attendance.tone-red{color:#8a1229;background:#ffe1e7}.student-attendance.tone-orange{color:#863500;background:#ffedd5}.student-attendance.tone-yellow{color:#655000;background:#fff7cc}.students-directory .list-toolbar{flex-wrap:wrap}.students-directory .list-toolbar>label{align-items:center;gap:8px;display:flex}.students-directory>.searchable-table>.table-scroll table{min-width:820px}.students-directory .student-flair{text-align:center;vertical-align:middle;white-space:nowrap;width:44px;min-width:44px;max-width:44px}.students-directory .student-birthday-indicator{display:inline-flex}.students-directory .student-flair-list{flex-wrap:nowrap;gap:0;margin:0;display:inline-flex}.students-directory.directory-v2>.searchable-table td.student-flair button.student-birthday-icon{box-sizing:border-box;white-space:nowrap;width:28px;min-width:28px;height:28px;min-height:28px;color:var(--text);background:0 0;border:0;border-radius:6px;justify-content:center;align-items:center;margin:0;padding:0;font-size:26px;line-height:1;display:inline-flex}.student-birthday-tooltip{z-index:300;white-space:nowrap;border:1px solid var(--border);background:var(--surface);width:max-content;max-width:164px;color:var(--text);pointer-events:none;border-radius:7px;padding:7px 10px;font-size:13px;line-height:1.4;position:fixed;box-shadow:0 3px 12px #0003}.sidebar .nav-item.ask-ella:not(:disabled){cursor:pointer}.sidebar .nav-item.ask-ella:not(:disabled):hover{box-shadow:inset 0 1px #ffd6f530,0 0 17px #d888d44d}.ella-panel{background:var(--surface,#fff);width:min(470px,100%);max-width:100vw;height:100dvh;max-height:100dvh;color:var(--text,#252135);box-sizing:border-box;border:1px solid #c888d2;border-radius:18px 0 0 18px;margin:0;padding:20px;position:fixed;inset:0 0 0 auto;overflow:auto;box-shadow:-10px 0 30px #38204730}.ella-panel::backdrop{background:#19102255}.ella-panel[open]{flex-direction:column;gap:8px;display:flex;overflow:hidden}.ella-panel>header,.ella-panel>form,.ella-panel>small,.ella-panel>.ella-suggestions{flex-shrink:0}.ella-panel header{border-bottom:1px solid #bd8bc180;justify-content:space-between;align-items:center;gap:12px;padding-bottom:12px;display:flex}.ella-panel header h2{color:#9c347c;margin:0;font-family:Ella Quicksand,sans-serif;font-size:27px;font-weight:700}.ella-panel header p{margin:2px 0 0;font-size:12px}.ella-panel .ella-privacy,.ella-panel small{font-size:12px;line-height:1.5;display:block}.ella-panel .ella-transcript{overflow-wrap:anywhere;background:#f7f4f9;border:1px solid #ddd5e5;border-radius:12px;flex:1;min-height:80px;margin:0;padding:8px;overflow:auto}.ella-panel .ella-message{white-space:pre-wrap;overflow-wrap:anywhere;box-sizing:border-box;border:1px solid;border-radius:12px;max-width:90%;margin:4px 0 12px;padding:12px;line-height:1.5}.ella-panel .ella-assistant{color:#803464;background:#f8eaf3;border-color:#bd83aa;margin-right:auto}.ella-panel .ella-assistant strong{color:#803464}.ella-panel .ella-user{color:#243750;background:#eaf1fa;border-color:#8ba8cc;margin-left:auto}.ella-panel .ella-user strong{color:#24568b}.ella-panel>p{margin:0}.ella-panel>p[role=status]:empty{display:none}.ella-panel>p[role=alert]{flex-shrink:0;max-height:75px;overflow:auto}.ella-message p{margin:4px 0}.ella-suggestions,.ella-sources,.ella-actions{flex-wrap:wrap;gap:7px;display:flex}.ella-panel .ella-suggestions button,.ella-panel .ella-sources button{padding:7px 9px;font-size:12px}.ella-panel form{gap:8px;margin:12px 0;display:grid}.ella-panel textarea{resize:vertical;box-sizing:border-box;width:100%;min-height:80px;max-height:200px}.ella-panel button:focus-visible,.ella-panel textarea:focus-visible{outline:3px solid var(--accent,#7545b5);outline-offset:3px}[data-theme=dark] .ella-panel{color:#f5edf7;background:#211e2c}[data-theme=dark] .ella-panel h2{color:#f1b6e5}[data-theme=dark] .ella-panel .ella-transcript{background:#201c2b;border-color:#514357}[data-theme=dark] .ella-panel .ella-assistant{color:#f0b1dd;background:#38283f;border-color:#805076}[data-theme=dark] .ella-panel .ella-assistant strong{color:#f0b1dd}[data-theme=dark] .ella-panel .ella-user{color:#e2e8f0;background:#243750;border-color:#42648b}[data-theme=dark] .ella-panel .ella-user strong{color:#93c5fd}@media (width<=600px){.ella-panel{border-radius:0;width:100%;padding:16px}}@media (prefers-reduced-motion:reduce){.ella-panel,.ella-panel *{transition:none!important;animation:none!important}}.ella-panel button.secondary{color:inherit;background:0 0;border:1px solid #b88cc0}.ella-panel button:not(.secondary){color:#fff;background:#754080}.ella-panel button:disabled{opacity:.55}@font-face{font-family:Ella Poppins;font-style:normal;font-weight:800;font-display:swap;src:url(/fonts/poppins/Poppins-ExtraBold.ttf)format("truetype")}.sidebar .nav-item.ask-ella{opacity:1;color:#f8ddff;text-align:left;cursor:pointer;background:linear-gradient(115deg,#422848,#2d294a);border:1px solid #ce9bdc;border-radius:12px;align-items:center;gap:9px;margin:0 0 8px;padding:10px;display:flex;box-shadow:inset 0 1px #ffd6f51a}.sidebar .nav-item.ask-ella:hover,.sidebar .nav-item.ask-ella[aria-expanded=true]{background:linear-gradient(115deg,#51315a,#3a335d);border-color:#f0b6ed}.sidebar .nav-item.ask-ella:focus-visible{outline-offset:3px;outline:3px solid #f0b6ed}.ask-ella>svg{color:#efb6e9;flex-shrink:0}.ask-ella-copy{flex-direction:column;gap:2px;min-width:0;display:flex}.ask-ella .ask-ella-title{letter-spacing:-.5px;color:#f8ddff;font-family:Ella Poppins,system-ui,sans-serif;font-size:24px;font-style:normal;font-weight:800;line-height:1.1}.ask-ella .ask-ella-subtitle{color:#e9d5ed;white-space:normal;font-family:inherit;font-size:12px;font-weight:500;line-height:1.35}.sidebar .brand-business{overflow-wrap:anywhere;word-break:normal;font-size:18px;font-weight:600;line-height:1.35}.sidebar .brand-logo.brand-logo-approved{object-fit:contain;width:min(100%,190px);max-height:141px}.sidebar .brand-lockup{gap:8px}.financials-intro{padding:4px 0 20px;position:relative}.financials-intro>svg{color:var(--accent)}.financials-coming{border:1px solid var(--border);color:var(--text);background:var(--surface-soft);border-radius:20px;margin-left:10px;padding:3px 10px;font-size:14px;font-weight:650;display:inline-block}.financials-intro h2{margin:12px 0 6px}.financials-roadmap{grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;display:grid}.financials-roadmap article{border:1px solid var(--border);background:var(--surface);border-radius:10px;padding:16px}.financials-roadmap h3{margin:0 0 6px;font-size:18px;line-height:1.4}.financials-roadmap p{color:var(--muted);margin:0;font-size:15px;line-height:1.5}.ella-unavailable{border:1px solid var(--border);color:var(--text);background:var(--surface-soft);border-radius:8px;padding:10px}@media (width<=1050px){.financials-roadmap{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width<=600px){.financials-roadmap{grid-template-columns:1fr}}.sidebar>.ask-ella{flex-shrink:0;margin-top:0;margin-bottom:10px}.sidebar nav{flex-direction:column;min-height:0;padding-bottom:0;display:flex;overflow:hidden}.sidebar nav>.nav-item{flex-shrink:0}.sidebar-nav-scroll{scrollbar-width:thin;scrollbar-color:#33415b transparent;flex:1;min-height:0;padding-bottom:16px;overflow-y:auto}[data-directory-category=dashboard],[data-category=dashboard]{--category:#2563eb;--category-solid:#2563eb;--category-ink:#1d4ed8}:root[data-theme=dark] [data-directory-category=dashboard],:root[data-theme=dark] [data-category=dashboard]{--category-ink:#93c5fd}[data-directory-category=dashboard] .directory-header-action>button{background:var(--accent);color:var(--accent-ink);border-color:var(--accent);align-items:center;display:flex}.premium-dashboard .premium-day{color:var(--muted);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:8px;margin:6px 0 14px;font-size:12px;display:flex}.premium-day>span{align-items:center;gap:7px;display:flex}.premium-day small{font-size:11px}.premium-dashboard>.directory-summary{grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin-bottom:16px}.premium-dashboard .directory-summary>.directory-metric{background:var(--surface-soft);gap:12px;min-height:112px;padding:15px 13px}.premium-dashboard .directory-metric-icon{border-radius:14px;width:48px;height:48px}.premium-dashboard .directory-metric-copy>span{font-size:12px}.premium-dashboard .directory-metric-copy>strong{font-size:29px}.premium-dashboard .directory-metric:nth-child(2) strong,.premium-dashboard .directory-metric:nth-child(4) strong{overflow-wrap:anywhere;font-size:22px}.premium-dashboard .directory-summary small{font-size:11px}.premium-dashboard .directory-tone-blue{--metric-fill:#2464c7;--metric-foreground:#fff}.premium-dashboard .directory-tone-purple{--metric-fill:#7c3aed;--metric-foreground:#fff}.premium-grid{grid-template-columns:1.25fr 1fr;align-items:start;gap:14px;display:grid}.premium-panel{border:1px solid var(--border);background:var(--surface-soft);border-radius:12px;min-width:0;padding:16px}.premium-panel-heading{align-items:center;gap:10px;margin-bottom:14px;display:flex}.premium-panel-heading h2{letter-spacing:-.015em;flex:1;margin:0;font-size:16px}.premium-panel-icon{color:#fff;border-radius:11px;flex-shrink:0;place-items:center;width:36px;height:36px;display:grid}.premium-panel-icon.blue{background:#2563eb}.premium-panel-icon.amber{color:#352300;background:#f5c542}.premium-panel-icon.copper{background:#b45309}.premium-panel-icon.purple{background:#7c3aed}.premium-panel-heading .text-button{align-items:center;gap:4px;min-height:34px;margin:0;padding:4px;font-size:11px;display:flex}.premium-sessions{margin:0;padding:0;list-style:none}.premium-sessions>li{border-top:1px solid var(--border);align-items:center;gap:10px;padding:11px 0;display:flex}.premium-sessions>li:first-child{border-top:0}.premium-time{min-width:70px;color:var(--category-ink);flex-direction:column;gap:3px;display:flex}.premium-time strong{font-size:13px}.premium-time small{color:var(--muted);font-size:10px}.premium-sessions>li>div{flex:1;min-width:0}.premium-sessions>li>div>strong{overflow-wrap:anywhere;font-size:13px;display:block}.premium-sessions small{color:var(--muted);margin-top:3px;font-size:11px;display:block}.premium-status{white-space:nowrap;background:color-mix(in srgb,var(--category) 12%,var(--surface));color:var(--category-ink);border-radius:20px;padding:4px 7px;font-size:10px;font-weight:600}.premium-status.complete{color:#166534;background:#dcfce7}.premium-dashboard .premium-session-action{background:var(--accent);width:34px;height:34px;min-height:34px;color:var(--accent-ink);border-color:var(--accent);flex-shrink:0;place-items:center;margin:0;padding:5px;display:grid}.premium-upcoming-label{color:var(--muted);text-transform:uppercase;letter-spacing:.09em;border-top:1px solid var(--border);margin:12px 0 0;padding-top:13px;font-size:11px}.premium-empty{color:var(--muted);align-items:flex-start;gap:12px;padding:11px 0;display:flex}.premium-empty>svg{color:var(--category-ink);flex-shrink:0;margin-top:3px}.premium-empty strong{color:var(--ink);font-size:13px}.premium-empty p{margin:5px 0;font-size:12px;line-height:1.5}.premium-empty.positive>svg{color:#16a34a}.premium-attention-list{margin:0;padding:0;list-style:none}.premium-attention-list li+li{border-top:1px solid var(--border)}.premium-attention-list button{width:100%;color:var(--ink);text-align:left;background:0 0;border:0;align-items:center;gap:10px;margin:0;padding:12px 2px;display:flex}.premium-attention-list button>span:nth-child(2){flex:1;min-width:0}.premium-attention-list strong{font-size:13px;display:block}.premium-attention-list small{color:var(--muted);margin-top:4px;font-size:12px;line-height:1.5;display:block}.premium-attention-dot{background:#f59e0b;border-radius:50%;flex-shrink:0;width:9px;height:9px}.premium-attention-dot.blue{background:#2563eb}.premium-attention-dot.teal{background:#0d9488}.premium-cycle-title{justify-content:space-between;align-items:center;gap:8px;display:flex}.premium-cycle-title h3{letter-spacing:-.02em;margin:0;font-size:18px}.premium-muted{color:var(--muted);margin:7px 0;font-size:12px;line-height:1.5}.premium-cycle-stats{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin:17px 0;display:grid}.premium-cycle-stats strong{overflow-wrap:anywhere;font-size:23px;display:block}.premium-cycle-stats>div:nth-child(2)>strong{font-size:17px;line-height:1.8}.premium-cycle-stats span{color:var(--muted);font-size:11px}.premium-progress{align-items:center;gap:12px;margin:10px 0;display:flex}.premium-progress progress{accent-color:#b45309;flex:1;min-width:0;height:8px}.premium-progress strong{font-size:12px}.premium-cycle>small{color:var(--muted);font-size:11px}.premium-quick-actions{grid-template-columns:repeat(2,minmax(0,1fr));gap:9px;display:grid}.premium-quick-actions>button{text-align:left;background:var(--surface);color:var(--ink);border:1px solid var(--border);align-items:center;gap:8px;min-height:54px;margin:0;padding:12px 10px;font-size:12px;display:flex}.premium-quick-actions>button>span{color:#fff;background:#2563eb;border-radius:8px;flex-shrink:0;place-items:center;width:28px;height:28px;display:grid}.premium-quick-actions>button:nth-child(2)>span{background:#dc2626}.premium-quick-actions>button:nth-child(3)>span{background:#09964b}.premium-quick-actions>button:nth-child(4)>span{background:#b45309}.premium-quick-actions>button>svg:last-child{flex-shrink:0;width:14px;margin-left:auto}.premium-quick-actions>button:hover{border-color:var(--category)}.premium-reports{border:1px solid var(--border);border-radius:10px;margin-top:14px;padding:12px}.premium-reports>summary{cursor:pointer;color:var(--muted);font-size:12px;font-weight:600}.premium-footnote{color:var(--muted);margin:14px 0 0;font-size:11px}.premium-dashboard :is(button,summary,a):focus-visible{outline:3px solid var(--category-ink);outline-offset:3px}.premium-skeleton{background:var(--surface-soft);border-radius:12px;height:100px;margin-bottom:14px}@media (width<=1150px){.premium-dashboard>.directory-summary{grid-template-columns:repeat(2,minmax(0,1fr))}.premium-grid{grid-template-columns:1fr}.premium-quick-actions{grid-template-columns:repeat(4,minmax(0,1fr))}}@media (width<=700px){.premium-dashboard .directory-summary>.directory-metric{gap:8px;min-height:142px;padding:12px}.premium-dashboard .directory-metric-icon{width:40px;height:40px}.premium-dashboard .directory-metric-icon svg{width:27px;height:27px}.premium-panel{padding:13px}.premium-panel-heading{gap:8px}.premium-panel-heading h2{font-size:15px}.premium-quick-actions{grid-template-columns:repeat(2,minmax(0,1fr))}.premium-sessions>li{flex-wrap:wrap;gap:7px}.premium-time{min-width:55px}.premium-sessions .premium-status{margin-left:62px}.premium-sessions>li>div{min-width:130px}.premium-cycle-stats{gap:8px}.premium-cycle-title{flex-wrap:wrap}.premium-cycle-title h3{font-size:17px}}.my-memberella{--journey-accent:var(--accent,#7545b5);--journey-accent-ink:#fff;max-width:1120px;color:var(--ink);overflow-wrap:anywhere;margin:0 auto;padding:24px;font-family:inherit}.my-memberella *{box-sizing:border-box}.my-memberella h1,.my-memberella h2,.my-memberella h3,.my-memberella p{margin-top:0}.journey-header{justify-content:space-between;align-items:center;gap:16px;margin-bottom:30px;display:flex}.journey-header>.journey-actions{gap:8px;display:flex}.journey-wordmark{color:var(--ink);align-items:center;gap:12px;font-size:20px;font-weight:800;text-decoration:none;display:flex}.journey-wordmark small{color:var(--muted);margin-top:3px;font-size:12px;font-weight:500;display:block}.journey-mark{background:var(--journey-accent);width:44px;height:44px;color:var(--journey-accent-ink);border-radius:15px;place-items:center;font-size:25px;display:grid}.journey-welcome{border:1px solid var(--border);background:linear-gradient(120deg,color-mix(in srgb,var(--journey-accent) 13%,var(--surface)),var(--surface));border-radius:20px;justify-content:space-between;align-items:center;gap:24px;margin-bottom:24px;padding:28px;display:flex}.journey-welcome h1{letter-spacing:-.035em;margin:10px 0;font-size:clamp(26px,4vw,40px);line-height:1.15}.journey-welcome p{max-width:580px;color:var(--muted);margin:0}.journey-eyebrow{letter-spacing:.15em;font-size:10px;font-weight:800}.journey-selector{min-width:200px;font-size:12px;font-weight:650}.journey-selector select{background:var(--surface);width:100%;min-height:48px;color:var(--ink);border:1px solid var(--border);border-radius:10px;margin-top:6px;padding:10px;display:block}.journey-tabs{border-bottom:1px solid var(--border);gap:5px;margin-bottom:22px;padding-bottom:10px;display:flex;overflow-x:auto}.journey-tabs button{white-space:nowrap;color:var(--muted);background:0 0;border:1px solid #0000;border-radius:10px;min-height:44px;padding:10px 16px}.journey-tabs button[aria-current=page]{background:var(--journey-accent);color:var(--journey-accent-ink)}.journey-content{gap:18px;display:grid}.journey-student-heading{justify-content:space-between;align-items:center;gap:12px;display:flex}.journey-student-heading>h2{margin:0;font-size:20px}.journey-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;display:grid}.journey-card{background:var(--surface);border:1px solid var(--border);border-radius:16px;min-width:0;margin:0;padding:23px;box-shadow:0 4px 18px #00000003}.journey-card>h2{align-items:center;gap:9px;margin:0 0 20px;font-size:16px;display:flex}.journey-card h3{margin-bottom:8px;font-size:18px}.journey-card>h2 svg{color:var(--journey-accent)}.journey-card p{margin-bottom:10px;line-height:1.6}.journey-empty,.journey-muted{color:var(--muted);font-size:13px;line-height:1.7}.journey-rank{position:relative;overflow:hidden}.journey-belt{background:color-mix(in srgb,var(--journey-accent) 14%,var(--surface));width:60px;height:60px;color:var(--journey-accent);border-radius:50%;place-items:center;margin-bottom:16px;display:grid}.journey-chip{border:1px solid var(--border);color:var(--ink);background:var(--surface-soft);border-radius:99px;padding:5px 9px;font-size:10px;font-weight:750;display:inline-block}.journey-text-button{text-align:left;margin-top:8px;font-size:12px;text-decoration:underline;display:block;color:var(--ink)!important;background:0 0!important;padding:10px 0!important}.journey-session{border-top:1px solid var(--border);align-items:center;gap:22px;padding:18px 0;display:flex}.journey-date{min-width:110px;font-size:12px;font-weight:750}.journey-session h3,.journey-session p{margin-bottom:4px}.journey-session.is-cancelled{opacity:.7}.journey-row{border-top:1px solid var(--border);padding:18px 0}.journey-row:last-child{padding-bottom:0}.journey-copy{white-space:pre-wrap}.journey-attendance{border:1px solid var(--border);border-left:4px solid #338156;border-radius:10px;margin:14px 0;padding:18px}.journey-attendance.status-at_risk{border-left-color:#bf8a16}.journey-attendance.status-ineligible{border-left-color:#b43d58}.journey-attendance>div{justify-content:space-between;gap:12px;margin-bottom:12px;display:flex}.journey-attendance progress{width:100%;height:10px;accent-color:var(--journey-accent)}.journey-attendance>p>strong{font-size:23px}.journey-milestones{grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:12px;display:grid}.journey-milestones article{text-align:center;border:1px solid var(--border);border-radius:14px;padding:20px}.journey-milestones svg{color:var(--journey-accent);margin-bottom:12px}.journey-balance{font-size:30px;font-weight:750}.journey-balance small{font-size:13px;font-weight:400}.journey-footer{border-top:1px solid var(--border);color:var(--muted);gap:6px;margin-top:35px;padding:22px 0;font-size:12px;display:grid}.journey-preview{border:1px dashed var(--journey-accent);border-radius:10px;padding:12px;font-size:12px}.my-memberella button{min-height:44px}.my-memberella summary{cursor:pointer;align-content:center;min-height:44px}.my-memberella button:focus-visible,.my-memberella select:focus-visible,.my-memberella a:focus-visible{outline:3px solid var(--journey-accent);outline-offset:3px}.portal-control-tabs{gap:6px;margin-bottom:18px;padding-bottom:12px;display:flex;overflow-x:auto}.portal-control-tabs button{white-space:nowrap;min-height:44px}.portal-control-tabs button[aria-current=page]{box-shadow:inset 0 -3px var(--accent)}.portal-control-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;display:grid}.portal-control-stat{border:1px solid var(--border);background:var(--surface);border-radius:14px;padding:22px}.portal-control-stat strong{font-size:28px;display:block}.portal-control-stat span{color:var(--muted);font-size:12px}.portal-options{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;display:grid}.portal-options label{border:1px solid var(--border);border-radius:10px;align-items:center;gap:12px;min-height:48px;padding:12px;font-size:13px;display:flex}.portal-options input{flex:none;width:18px;height:18px}.portal-publish-row{border-top:1px solid var(--border);gap:10px;padding:16px 0;display:grid}.portal-account-row{border-top:1px solid var(--border);padding:16px 0}.portal-control-panel{border:1px solid var(--border);background:var(--surface);border-radius:16px;padding:22px}@media (width<=800px){.journey-grid{grid-template-columns:1fr 1fr}.journey-grid>:last-child:nth-child(odd){grid-column:1/-1}.journey-welcome{flex-direction:column;align-items:flex-start}.journey-selector{width:100%}.portal-control-grid{grid-template-columns:1fr 1fr}.my-memberella{padding:18px}}@media (width<=520px){.my-memberella{padding:16px}.journey-header{align-items:flex-start;gap:8px;margin-bottom:20px}.journey-header>.journey-actions{flex-direction:column;gap:4px}.journey-header button{padding:8px 10px;font-size:11px}.journey-wordmark{gap:8px;font-size:16px}.journey-mark{width:36px;height:36px;font-size:21px}.journey-grid{grid-template-columns:1fr}.journey-grid>:last-child:nth-child(odd){grid-column:auto}.journey-welcome{padding:21px}.journey-card{padding:19px}.journey-tabs button{padding:9px 12px;font-size:12px}.journey-session{flex-wrap:wrap;gap:12px}.journey-date{min-width:95px}.portal-options,.portal-control-grid{grid-template-columns:1fr}.journey-student-heading{flex-direction:column;align-items:flex-start}.portal-control-panel{padding:16px}}@media (prefers-reduced-motion:reduce){.my-memberella *{scroll-behavior:auto;transition:none!important;animation:none!important}}.publication-panel{min-width:0}.publication-panel>h2{margin-bottom:8px}.publication-intro{color:var(--muted);margin-bottom:16px;font-size:13px;line-height:1.6}.publication-filters{border:0;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:12px;min-width:0;margin:0 0 16px;padding:0;display:grid!important}.publication-filters>div{min-width:0}.publication-filters label{margin-bottom:6px;font-size:11px;font-weight:700;display:block}.publication-filters select,.publication-filters input{background:var(--surface);width:100%;min-width:0;min-height:42px;color:var(--ink);border:1px solid var(--border);font:inherit;border-radius:8px;padding:8px;font-size:12px}.publication-toolbar{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;margin-bottom:12px;display:flex}.publication-toolbar>span{color:var(--muted);font-size:12px}.publication-toolbar>div{flex-wrap:wrap;gap:6px;display:flex}.publication-toolbar button{min-height:42px;margin:0;padding:8px 12px;font-size:12px}.publication-legend{color:var(--muted);background:var(--surface-soft);border-radius:8px;margin:0 0 14px;padding:10px 12px;font-size:11px;line-height:1.8}.publication-legend strong{color:var(--ink);margin-left:6px}.publication-legend strong:first-child{margin-left:0}.publication-table-scroll{border:1px solid var(--border);background:var(--surface);border-radius:10px;max-width:100%;overflow-x:auto}.publication-table{border-collapse:collapse;text-align:left;width:100%;min-width:780px;margin:0;font-size:12px}.publication-table th,.publication-table td{border:0;border-bottom:1px solid var(--border);vertical-align:middle;padding:8px 10px;line-height:1.4}.publication-table thead th{background:var(--surface-soft);text-transform:uppercase;letter-spacing:.04em;white-space:nowrap;font-size:10px;font-weight:750}.publication-table tbody th{font-size:12px;font-weight:650}.publication-table tr:last-child td,.publication-table tr:last-child th{border-bottom:0}.publication-table tbody tr:hover{background:color-mix(in srgb,var(--accent) 4%,var(--surface))}.publication-table input[type=checkbox]{width:17px;height:17px;accent-color:var(--accent);cursor:pointer;margin:0}.publication-table input:disabled{cursor:default}.publication-table small{color:var(--muted);margin-top:4px;font-size:10px;display:block}.publication-row-actions{flex-wrap:nowrap;gap:4px;display:flex}.publication-row-actions button{white-space:nowrap;border-radius:7px;min-height:36px;margin:0;padding:7px 9px;font-size:11px;line-height:1.2}.publication-status{white-space:nowrap;background:var(--surface-soft);color:var(--muted);border:1px solid var(--border);border-radius:99px;padding:4px 8px;font-size:10px;font-weight:750;display:inline-block}.publication-status.published{color:#14733e;background:#1376401a;border-color:#14733e55}.publication-status.scheduled{color:#8c5d05;background:#b279101a;border-color:#b2791055}.publication-status.changed{color:#b43d58;background:#b43d581a;border-color:#b43d5855}.publication-footnote{color:var(--muted);margin:12px 0 0;font-size:11px;line-height:1.6}.publication-table-scroll:focus-visible{outline:2px solid var(--accent);outline-offset:3px}[data-theme=dark] .publication-status.published{color:#88dfac}[data-theme=dark] .publication-status.scheduled{color:#f5ce79}[data-theme=dark] .publication-status.changed{color:#ffa0b3}@media (width<=600px){.publication-filters{grid-template-columns:1fr 1fr}.publication-toolbar{flex-direction:column;align-items:flex-start}.publication-toolbar>div{width:100%}.publication-row-actions button{min-height:44px}.publication-panel{padding:14px}.publication-table th,.publication-table td{padding:7px 8px}}@media (width<=380px){.publication-filters{grid-template-columns:1fr}}
