:root{--main:#183947;--accent:#0a8b85;--secondary:#e89a4a;--on-main:#fff;--on-accent:#fff;--on-secondary:#17252e;--main-foreground:var(--main);--accent-foreground:var(--accent);--secondary-foreground:var(--secondary);--main-border:var(--main);--accent-border:var(--accent);--secondary-border:var(--secondary);--ink:#17252e;--muted:#687980;--line:color-mix(in srgb, var(--main) 14%, transparent);--paper:color-mix(in srgb, var(--main) 4%, #f8faf8);--navy:var(--main);--teal:var(--accent);--blue:color-mix(in srgb, var(--main) 11%, #ffffffc7);--green:color-mix(in srgb, var(--accent) 12%, #fffc);--orange:color-mix(in srgb, var(--secondary) 16%, #ffffffc7);--glass:#ffffff8c;--glass-strong:#ffffffbd;--glass-line:#fff9;--glass-highlight:#fff;--widget-glass:#ffffff42;--ai-widget-glass:#f7feff0c;--widget-glass-strong:#ffffff52;--glass-shadow:0 24px 60px -12px color-mix(in srgb, var(--main) 22%, transparent), 0 2px 8px color-mix(in srgb, var(--main) 6%, transparent);--page-base:#f7faf9;--page-base-alt:#f4f8f7;--surface:#fff;--surface-soft:#f4f8f7;--surface-selected:#edf8f5;--surface-danger:#fff5f3;--surface-neutral-border:#e2e2e5;--surface-neutral:#f7f7f8;--surface-neutral-strong:#f5f5f6;--surface-neutral-chip:#e8e8eb;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--radius-sm:12px;--radius-md:18px;--radius-lg:26px;--radius-xl:34px;--ease-spring:cubic-bezier(.22, 1, .36, 1);--font-heading:"Segoe UI Variable", "Segoe UI", Arial, sans-serif}*{box-sizing:border-box}[hidden]{display:none!important}html{scroll-behavior:smooth;background:var(--paper);min-height:100%}body{background:radial-gradient(circle at 10% 4%, color-mix(in srgb, var(--accent) 22%, transparent), transparent 32rem), radial-gradient(circle at 90% 12%, color-mix(in srgb, var(--secondary) 20%, transparent), transparent 28rem), radial-gradient(circle at 20% 92%, color-mix(in srgb, var(--main) 16%, transparent), transparent 34rem), radial-gradient(circle at 82% 88%, color-mix(in srgb, var(--accent) 12%, transparent), transparent 36rem), linear-gradient(160deg, color-mix(in srgb, var(--main) 6%, var(--page-base)), color-mix(in srgb, var(--accent) 5%, var(--page-base-alt)) 55%, var(--paper));min-height:100vh;color:var(--ink);-webkit-font-smoothing:antialiased;background-attachment:fixed;margin:0;font-family:Segoe UI Variable,Segoe UI,Arial,sans-serif}html.dark{background:#000}html.dark body{background:radial-gradient(circle at 12% 5%, color-mix(in srgb, var(--accent) 12%, transparent), transparent 30rem), radial-gradient(circle at 90% 10%, color-mix(in srgb, var(--secondary) 8%, transparent), transparent 25rem), radial-gradient(circle at 78% 92%, color-mix(in srgb, var(--main) 10%, transparent), transparent 34rem), linear-gradient(160deg, #080809, #000 56%, #0b0b0c);background-attachment:fixed}button,input,select,textarea{font:inherit}button:disabled{cursor:not-allowed;opacity:.55}.sidebar{background:linear-gradient(165deg, color-mix(in srgb, var(--main) 94%, transparent), color-mix(in srgb, var(--main) 74%, var(--accent)));color:var(--on-main);border-radius:var(--radius-md);height:calc(100vh - 36px);box-shadow:0 20px 42px -24px color-mix(in srgb, var(--main) 60%, transparent);-webkit-backdrop-filter:none;backdrop-filter:none;transition:padding .2s var(--ease-spring);border:0;flex-direction:column;padding:16px 12px;display:flex;position:sticky;top:18px;overflow:hidden}.brand,.auth-brand{color:var(--tw-foreground-white);letter-spacing:-1px;align-items:center;gap:9px;font-size:22px;font-weight:700;text-decoration:none;display:flex}.brand-mark{border:1px solid var(--tw-border-a9d7cf);width:29px;height:29px;font-family:var(--font-heading);border-radius:50%;flex:none;place-items:center;font-size:17px;display:grid}.brand-dot{color:color-mix(in srgb, var(--accent-foreground) 72%, var(--tw-foreground-white))}.navigation-brand-row{border-bottom:1px solid var(--tw-border-rgba-255-255-255-12);align-items:center;gap:8px;min-height:42px;padding:0 0 15px;display:flex}.portal-navigation .brand{letter-spacing:0;flex:1;gap:10px;min-width:0;font-size:15px}.portal-navigation .brand-mark{background-color:var(--tw-surface-rgba-255-255-255-96);width:32px;height:32px;box-shadow:0 8px 18px color-mix(in srgb, var(--accent) 28%, transparent);background-position:50%;background-repeat:no-repeat;background-size:contain;border:0;border-radius:9px}.brand-copy{min-width:0;display:block}.brand-copy strong,.brand-copy small{text-overflow:ellipsis;white-space:nowrap;display:block;overflow:hidden}.brand-copy strong{font-size:13px}.brand-copy small{color:var(--tw-foreground-rgba-224-242-238-68);margin-top:4px;font-size:10px;font-weight:400}.sidebar-collapse-button{background:var(--tw-surface-rgba-255-255-255-08);width:30px;height:30px;color:var(--tw-foreground-rgba-233-247-244-82);cursor:pointer;border:0;border-radius:8px;flex:none;place-items:center;transition:background-color .15s,color .15s;display:grid}.sidebar-collapse-button:hover,.sidebar-collapse-button:focus-visible{background:var(--tw-surface-rgba-255-255-255-16);color:var(--tw-foreground-white)}.navigation-section-label{color:var(--tw-foreground-rgba-201-229-223-66);letter-spacing:1.2px;text-transform:uppercase;margin:18px 9px 8px;font:800 9px ui-monospace,monospace}.navigation-section-label:first-of-type{margin-top:14px}.navigation-links-scroll{scrollbar-width:none;flex-direction:column;flex:auto;min-height:0;display:flex;overflow:hidden auto}.navigation-links-scroll::-webkit-scrollbar{display:none}.sidebar nav{gap:4px;display:grid}@media (min-width:761px){.portal-navigation nav{margin-top:5px}}.sidebar nav a{color:var(--tw-foreground-rgba-229-241-239-78);border-radius:9px;align-items:center;gap:11px;min-height:40px;padding:0 11px;font-size:13px;font-weight:600;text-decoration:none;transition:background-color .18s,color .18s;display:flex}.sidebar nav a svg{stroke-width:1.8px;flex:none}.sidebar nav a:hover{background:var(--tw-surface-rgba-255-255-255-09);color:var(--tw-foreground-white)}.sidebar nav .nav-active{background:var(--tw-surface-rgba-255-255-255-16);color:var(--tw-foreground-white);box-shadow:inset 0 1px 0 var(--tw-shadow-rgba-255-255-255-14)}.sidebar nav .nav-active svg{color:color-mix(in srgb, var(--accent-foreground) 52%, var(--tw-foreground-white))}.context-navigation-back{border:1px solid var(--tw-border-rgba-255-255-255-13);background:var(--tw-surface-rgba-255-255-255-06);min-height:40px;color:var(--tw-foreground-rgba-229-241-239-82);cursor:pointer;border-radius:9px;align-items:center;gap:10px;margin:10px 0 2px;padding:0 11px;font-size:12px;font-weight:650;text-decoration:none;display:flex}.context-navigation-back:hover,.context-navigation-back:focus-visible{background:var(--tw-surface-rgba-255-255-255-13);color:var(--tw-foreground-white)}.context-navigation-back svg{flex:none}.nav-badge{background:var(--accent);color:var(--on-accent);border-radius:999px;padding:1px 6px;font-size:10px;font-weight:750;line-height:1.4}.sidebar-bottom{border-top:1px solid var(--tw-border-rgba-255-255-255-13);align-items:center;gap:7px;margin-top:auto;padding:14px 5px 0;display:flex}.navigation-user{min-width:0;color:var(--tw-foreground-white);flex:1;align-items:center;gap:9px;text-decoration:none;display:flex}.navigation-user>span{min-width:0}.navigation-user strong,.navigation-user small{text-overflow:ellipsis;white-space:nowrap;font-size:12px;display:block;overflow:hidden}.navigation-user small{color:var(--tw-foreground-b5c5c9);margin-top:3px}.navigation-sign-out{width:31px;height:31px;color:var(--tw-foreground-rgba-225-241-238-66);cursor:pointer;background:0 0;border:0;border-radius:8px;flex:none;place-items:center;display:grid}.navigation-sign-out:hover,.navigation-sign-out:focus-visible{background:var(--tw-surface-rgba-255-255-255-1);color:var(--tw-foreground-white)}.navigation-sign-out span{clip:rect(0 0 0 0);width:1px;height:1px;position:absolute;overflow:hidden}.portal-navigation[data-collapsed=true]{padding-inline:9.5px}.portal-navigation[data-collapsed=true] .navigation-brand-row{flex-direction:column;justify-content:center;gap:10px;padding-bottom:15px}.portal-navigation[data-collapsed=true] .brand{flex:none}.portal-navigation[data-collapsed=true] .brand-copy,.portal-navigation[data-collapsed=true] .navigation-section-label,.portal-navigation[data-collapsed=true] nav a span,.portal-navigation[data-collapsed=true] .context-navigation-back span,.portal-navigation[data-collapsed=true] .navigation-user>span{display:none}.portal-navigation[data-collapsed=true] nav a,.portal-navigation[data-collapsed=true] .context-navigation-back{justify-content:center;padding:0}.portal-navigation[data-collapsed=true] .avatar{width:30px;height:30px;font-size:10px}.portal-navigation[data-collapsed=true] .sidebar-bottom{justify-content:center}.portal-navigation[data-collapsed=true] .navigation-user{flex:none}.portal-navigation[data-collapsed=true] nav+nav{margin-top:4px}.content{width:100%;max-width:1380px;margin:auto;padding:8px 1.5% 60px}.topbar{justify-content:space-between;align-items:center;gap:24px;margin-bottom:30px;display:flex}.eyebrow{letter-spacing:1px;color:var(--tw-foreground-718087);margin:0 0 8px;font:10px ui-monospace,monospace}h1,h2,h3{color:var(--ink)}.topbar h1,.admin-header h1,.auth-card h1{font:700 clamp(30px, 4vw, 46px)/1.05 var(--font-heading);letter-spacing:-1.5px;margin:0}.profile-area{align-items:center;gap:10px;display:flex}.profile-area-link{color:inherit;border-radius:14px;padding:7px 9px;text-decoration:none}.profile-area-link:hover{background:var(--tw-surface-rgba-255-255-255-62);box-shadow:0 8px 20px color-mix(in srgb, var(--main) 9%, transparent)}.profile-area strong,.profile-area small{font-size:13px;display:block}.profile-area small{color:var(--muted);margin-top:3px}.topbar-notifications-link{border:1px solid var(--line);background:color-mix(in srgb, var(--glass-strong) 80%, transparent);width:40px;height:40px;color:var(--ink);cursor:pointer;font:inherit;border-radius:12px;flex:none;place-items:center;padding:0;text-decoration:none;transition:transform .16s,border-color .16s;display:grid;position:relative}.topbar-notifications-link:hover{border-color:color-mix(in srgb, var(--accent-border) 38%, var(--line));transform:translateY(-1px)}.topbar-notifications-link svg{width:18px;height:18px}.topbar-notifications-link .nav-badge{min-width:18px;box-shadow:0 0 0 2px var(--surface);text-align:center;position:absolute;top:-5px;right:-5px}.avatar{background:var(--tw-surface-d5e9e5);width:38px;height:38px;color:var(--tw-foreground-176158);background-position:50%;background-size:cover;border-radius:50%;flex:none;place-items:center;font:600 12px ui-monospace,monospace;display:grid}.avatar-large{border:4px solid var(--tw-border-rgba-255-255-255-78);width:92px;height:92px;box-shadow:0 12px 28px color-mix(in srgb, var(--main) 15%, transparent);font-size:22px}.avatar.has-photo{background-color:color-mix(in srgb, var(--main) 8%, var(--tw-surface-white))}.profile-settings-layout{grid-template-columns:minmax(220px,.42fr) minmax(0,1fr);align-items:start;gap:18px;display:grid}.profile-settings-summary{border:1px solid var(--glass-line);border-radius:var(--radius-md);background:var(--glass);box-shadow:var(--glass-shadow), inset 0 1px 0 var(--tw-shadow-rgba-255-255-255-9);-webkit-backdrop-filter:blur(24px)saturate(145%);backdrop-filter:blur(24px)saturate(145%);padding:24px;position:sticky;top:18px}.profile-settings-summary h2{font:600 25px/1.1 var(--font-heading);margin:18px 0 5px}.profile-settings-summary>p{color:var(--muted);overflow-wrap:anywhere;margin:0;font-size:12px}.profile-photo-editor{border-bottom:1px solid var(--line);gap:16px;margin-bottom:24px;padding-bottom:22px;display:grid}.profile-photo-copy>strong{margin-bottom:4px;font-size:13px;display:block}.profile-photo-copy>p{color:var(--muted);margin:0 0 12px;font-size:11px;line-height:1.5}.profile-photo-upload-form{gap:8px;display:grid}.profile-photo-picker{text-align:center;text-overflow:ellipsis;white-space:nowrap;cursor:pointer;max-width:100%;padding:9px 11px;display:block;overflow:hidden}.profile-photo-picker input{opacity:0;pointer-events:none;width:1px;height:1px;position:absolute}.profile-photo-upload-form .primary{width:100%}.profile-photo-remove{color:var(--tw-foreground-9a493e);margin-top:10px;padding:0}.profile-scope-note{border-top:1px solid var(--line);border-bottom:1px solid var(--line);margin:24px 0;padding:18px 0}.profile-scope-note strong{font-size:12px}.profile-scope-note p,.profile-form-footer p{color:var(--muted);font-size:12px;line-height:1.6}.profile-settings-form{margin:0}.profile-settings-main{min-width:0}.navigation-settings-form{margin-top:18px}.appearance-mode-picker{grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;display:grid}.appearance-mode-picker button{border:1px solid var(--line);border-radius:var(--radius-md);background:color-mix(in srgb, var(--glass-strong) 78%, transparent);color:var(--ink);text-align:left;cursor:pointer;transition:transform .18s var(--ease-spring), border-color .18s ease, background .18s ease;grid-template-columns:34px minmax(0,1fr);align-items:center;gap:2px 10px;padding:14px;display:grid}.appearance-mode-picker button>span{background:color-mix(in srgb, var(--accent) 12%, transparent);width:34px;height:34px;color:var(--accent-foreground);border-radius:50%;grid-row:1/3;place-items:center;font-size:18px;display:grid}.appearance-mode-picker button strong{font-size:12px}.appearance-mode-picker button small{color:var(--muted);font-size:10px;line-height:1.4}.appearance-mode-picker button:hover{border-color:color-mix(in srgb, var(--accent-border) 52%, var(--line));transform:translateY(-1px)}.appearance-mode-picker button.selected{border-color:var(--accent-border);background:color-mix(in srgb, var(--accent) 14%, var(--glass-strong));box-shadow:0 0 0 3px color-mix(in srgb, var(--accent) 12%, transparent)}.navigation-settings-form fieldset{border:0;min-width:0;margin:0;padding:0}.navigation-settings-form fieldset+fieldset{border-top:1px solid var(--line);margin-top:28px;padding-top:24px}.navigation-settings-form legend{color:var(--ink);margin-bottom:13px;padding:0;font-size:13px;font-weight:700}.navigation-scope-picker strong{font-size:12px}.navigation-scope-picker small{color:var(--muted);font-size:10px;line-height:1.45}.notification-preferences-picker{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;display:grid}.notification-preferences-picker>label{border:1px solid var(--line);border-radius:var(--radius-md);background:var(--surface);color:var(--ink);cursor:pointer;align-content:start;gap:7px;padding:14px;display:grid;position:relative}.notification-preferences-picker>label:has(input:checked){border-color:color-mix(in srgb, var(--accent-border) 56%, var(--tw-border-white));background:color-mix(in srgb, var(--accent) 8%, var(--surface));box-shadow:0 0 0 3px color-mix(in srgb, var(--accent) 10%, transparent)}.notification-preferences-picker input{width:auto;position:absolute;top:14px;right:14px}.notification-preferences-picker strong{font-size:12px}.notification-preferences-picker small{color:var(--muted);font-size:10px;line-height:1.45}.navigation-scope-picker label{border:1px solid var(--line);background:var(--tw-surface-rgba-255-255-255-38);cursor:pointer;border-radius:13px;align-items:flex-start;gap:10px;padding:12px;display:flex}.navigation-scope-picker input{width:auto;margin-top:2px}.navigation-scope-picker span{gap:3px;display:grid}.navigation-scope-picker{grid-template-columns:repeat(2,minmax(0,1fr));gap:9px;display:grid}.navigation-scope-picker legend{grid-column:1/-1}.navigation-reset-button{margin-top:7px;padding:0;display:block}.profile-save-hint{background:color-mix(in srgb, var(--accent) 10%, var(--tw-surface-white));color:color-mix(in srgb, var(--accent-foreground) 76%, var(--tw-foreground-black));text-transform:uppercase;border-radius:999px;align-self:start;padding:6px 9px;font:700 9px ui-monospace,monospace}.profile-field-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.ai-provider-field-grid{border:0;grid-template-columns:minmax(180px,.6fr) minmax(260px,1.4fr);min-width:0;margin:0;padding:0}.ai-provider-field-grid:disabled{opacity:.55}.profile-field-grid>label{align-self:start}.profile-wide-field{grid-column:1/-1}.profile-field-grid textarea{min-height:130px}.profile-form-footer{border-top:1px solid var(--line);justify-content:space-between;align-items:center;gap:24px;margin-top:22px;padding-top:18px;display:flex}.profile-form-footer p{max-width:560px;margin:0}.profile-form-footer button{flex:none}.profile-form-footer .primary{white-space:nowrap;justify-content:center;align-items:center;gap:7px;display:inline-flex}.optional-navigation-frame{min-height:100vh;transition:grid-template-columns .2s var(--ease-spring);grid-template-columns:224px minmax(0,1fr);align-items:start;gap:18px;padding:18px;display:grid}.optional-navigation-frame:has(.portal-navigation[data-collapsed=true]){grid-template-columns:60px minmax(0,1fr)}.optional-navigation-content{min-width:0}.optional-navigation-content>.admin-shell{width:min(100% - 24px,1380px)}.foundation-banner{background:var(--tw-surface-e8f1ee);border:1px solid var(--tw-border-cadfda);border-radius:10px;align-items:center;gap:13px;margin-bottom:26px;padding:13px 16px;font-size:13px;display:flex}.foundation-banner>span{color:var(--teal);font-size:18px}.foundation-banner p{flex:1;margin:0}.metrics{grid-template-columns:repeat(3,minmax(0,1fr));gap:15px;margin-bottom:18px;display:grid}.portal-summary-grid{grid-template-columns:repeat(auto-fit,minmax(190px,1fr))}.admin-overview-metrics{grid-template-columns:repeat(5,minmax(0,1fr))}.homeroom-overview-metrics{grid-template-columns:repeat(4,minmax(0,1fr))}.student-standing-metrics{grid-template-columns:repeat(2,minmax(0,1fr))}.metric{border:1px solid #0000;border-radius:13px;flex-direction:column;min-height:116px;padding:16px;display:flex}.metric-heading{justify-content:space-between;align-items:flex-start;gap:10px;display:flex}.metric p{color:var(--tw-foreground-52656a);margin:0;font-size:12px;font-weight:700}.metric strong{font:600 26px/1 var(--font-heading);letter-spacing:-.5px;margin-top:12px}.metric small{color:var(--tw-foreground-6d7b7e);margin-top:5px;font-size:11px;display:block}.metric-heading>span{background:color-mix(in srgb, var(--main) 10%, var(--tw-surface-white));width:28px;height:28px;color:var(--main-foreground);border-radius:8px;flex:none;place-items:center;display:grid}.metric-heading>span svg{width:15px;height:15px}.metric-heading>span.green{background:color-mix(in srgb, var(--accent) 16%, var(--tw-surface-white));color:var(--accent-foreground)}.metric-heading>span.orange{background:color-mix(in srgb, var(--secondary) 20%, var(--tw-surface-white));color:color-mix(in srgb, var(--secondary-foreground) 80%, var(--tw-foreground-4f3520))}.metric-link{color:inherit;text-decoration:none;transition:transform .15s,box-shadow .15s}.metric-link:hover,.metric-link:focus-visible{box-shadow:0 12px 28px var(--tw-shadow-rgba-24-57-71-1);transform:translateY(-2px)}.metric.blue{background:var(--blue);border-color:var(--tw-border-d0e1ed)}.metric.green{background:var(--green);border-color:var(--tw-border-cce1db)}.metric.orange{background:var(--orange);border-color:var(--tw-border-f0dfc9)}.panel{background:var(--glass);border:1px solid var(--glass-line);box-shadow:var(--glass-shadow), inset 0 1px 0 var(--tw-shadow-rgba-255-255-255-9);-webkit-backdrop-filter:blur(24px)saturate(145%);backdrop-filter:blur(24px)saturate(145%);border-radius:18px;margin-bottom:18px;padding:25px}.route-loading{width:min(1180px,100% - 40px);margin:0 auto;padding:44px 0 80px}.route-loading-header{justify-content:space-between;align-items:center;gap:24px;margin-bottom:30px;display:flex}.route-loading-heading{gap:10px;width:min(430px,72%);display:grid}.route-loading-line,.route-loading-avatar,.route-loading-dot{background:linear-gradient(105deg, color-mix(in srgb, var(--main) 9%, var(--surface-soft)) 20%, color-mix(in srgb, var(--accent) 17%, var(--surface)) 38%, color-mix(in srgb, var(--main) 9%, var(--surface-soft)) 56%);background-size:240% 100%;animation:1.35s ease-in-out infinite route-loading-shimmer;display:block;overflow:hidden}.route-loading-line{border-radius:999px;height:12px}.route-loading-eyebrow{width:104px;height:8px}.route-loading-title{border-radius:15px;width:min(360px,88%);height:42px}.route-loading-avatar{border-radius:50%;flex:none;width:44px;height:44px}.route-loading-metrics{grid-template-columns:repeat(3,minmax(0,1fr));gap:15px;margin-bottom:18px;display:grid}.route-loading-card,.route-loading-panel{border:1px solid var(--glass-line);background:var(--glass);box-shadow:var(--glass-shadow), inset 0 1px 0 color-mix(in srgb, var(--glass-highlight) 72%, transparent);-webkit-backdrop-filter:blur(24px)saturate(145%);backdrop-filter:blur(24px)saturate(145%)}.route-loading-card{border-radius:var(--radius-md);flex-direction:column;min-height:146px;padding:20px;display:flex}.route-loading-label{width:42%}.route-loading-value{border-radius:12px;width:28%;height:34px;margin-top:auto}.route-loading-detail{width:68%;height:9px;margin-top:12px}.route-loading-panel{border-radius:var(--radius-md);padding:25px}.route-loading-section-title{border-radius:10px;width:min(250px,54%);height:24px;margin-bottom:24px}.route-loading-rows{display:grid}.route-loading-row{border-top:1px solid var(--line);grid-template-columns:38px minmax(0,1fr);align-items:center;gap:13px;min-height:70px;padding:14px 2px;display:grid}.route-loading-row:first-child{border-top:0}.route-loading-row>div{gap:9px;display:grid}.route-loading-dot{border-radius:13px;width:38px;height:38px}.route-loading-row-title{width:min(420px,62%)}.route-loading-row-detail{width:min(560px,78%);height:9px}@keyframes route-loading-shimmer{0%{background-position:100% 0}to{background-position:-100% 0}}.section-title{justify-content:space-between;align-items:start;gap:18px;margin-bottom:20px;display:flex}.section-title h2,.form-panel h2,.admin-section h2,.assessment-status h2{font:600 25px/1.1 var(--font-heading);letter-spacing:-.6px;margin:0}.text-button,.text-link{color:var(--accent-foreground);cursor:pointer;background:0 0;border:0;font:650 12px Segoe UI,sans-serif;text-decoration:none}.page-context-links{flex-wrap:wrap;gap:12px;margin:-6px 0 20px;display:flex}.foundation-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:13px;display:grid}.foundation-card{border:1px solid var(--tw-border-d9e4e3);background:var(--tw-surface-f4f8f7);border-radius:10px;min-height:132px;padding:18px}.foundation-card span,.role-pill{text-transform:uppercase;letter-spacing:.6px;color:var(--tw-foreground-39756e);font:10px ui-monospace,monospace}.foundation-card h3{font:600 19px/1.15 var(--font-heading);margin:18px 0 6px}.foundation-card p,.empty-state p,.assessment-status p,.helper-text{color:var(--muted);font-size:13px;line-height:1.55}.empty-state{border:1px dashed var(--tw-border-cbd7d7);background:var(--glass);box-shadow:var(--glass-shadow), inset 0 1px 0 var(--tw-shadow-ffffff8c);border-radius:10px;padding:24px}.empty-state p{margin-bottom:0}.empty-state svg{width:22px;height:22px;color:var(--accent-foreground);margin-bottom:10px}.portal-heading{min-width:0}.portal-breadcrumb{color:var(--muted);margin:0 0 14px;font-size:11px}.portal-breadcrumb span{color:color-mix(in srgb, var(--muted) 55%, transparent);margin-inline:5px}.portal-breadcrumb strong{color:var(--ink)}.portal-subtitle{color:var(--muted);max-width:520px;margin:8px 0 0;font-size:13px}.portal-top-actions,.portal-profile-actions{align-items:center;gap:10px;display:flex}.portal-primary-action{align-items:center;gap:8px;text-decoration:none;display:inline-flex}.portal-primary-action svg{width:16px;height:16px}.mobile-assessment-builder-notice,.mobile-action-label,.assessment-mobile-actions :is(.assessment-past-action,.assessment-paper-action)>svg{display:none}@media (max-width:760px){.desktop-assessment-builder-action{display:none!important}.assessment-mobile-actions .desktop-action-label{display:none}.assessment-mobile-actions .mobile-action-label{display:inline}.assessment-builder-page>:not(.mobile-assessment-builder-notice){opacity:.22;filter:blur(1px);pointer-events:none;-webkit-user-select:none;user-select:none}.assessment-builder-page .mobile-assessment-builder-notice{z-index:45;width:calc(100vw - 28px);max-width:390px;box-shadow:0 20px 55px color-mix(in srgb, var(--navy) 28%, transparent);gap:10px;margin:0;padding:20px;display:grid;position:fixed;top:50%;left:50%;transform:translate(-50%,-50%)}.mobile-assessment-builder-notice h1,.mobile-assessment-builder-notice p{margin:0}.mobile-assessment-builder-notice .link-button{width:100%;min-height:46px;margin-top:6px}.assessment-page>.admin-header .assessment-mobile-actions{right:10px;bottom:calc(10px + env(safe-area-inset-bottom));z-index:40;width:fit-content;box-shadow:none;-webkit-backdrop-filter:none;backdrop-filter:none;background:0 0;border:0;grid-template-columns:repeat(2,auto);gap:8px;padding:0;display:grid;position:fixed;left:auto}.assessment-page>.admin-header .assessment-mobile-actions .link-button{text-align:center;min-width:0;min-height:48px;box-shadow:0 12px 28px color-mix(in srgb, var(--navy) 22%, transparent);border-radius:16px;justify-content:center;gap:7px;padding-inline:14px;font-size:11px;font-weight:750}.assessment-page>.admin-header .assessment-mobile-actions .link-button svg{flex:none;width:15px;height:15px;display:block}.assessment-page>.admin-header .assessment-mobile-actions .assessment-past-action{background:color-mix(in srgb, var(--surface) 92%, transparent);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px)}.assessment-page>.admin-header .assessment-mobile-actions .assessment-paper-action{border-color:var(--accent);background:var(--accent);color:#fff;box-shadow:0 14px 32px color-mix(in srgb, var(--accent) 34%, transparent);padding-inline:17px}.assessment-page>.admin-header .assessment-mobile-actions .link-button:only-child{grid-column:1/-1}.assessment-page .assessment-workspace-tabs{border-radius:12px;grid-template-columns:repeat(3,minmax(0,1fr));gap:3px;width:100%;padding:4px;display:grid;overflow:visible}.assessment-page .assessment-workspace-tabs a{text-align:center;place-items:center;min-width:0;min-height:42px;padding:8px 4px;display:grid}.assessment-page .assessment-workspace-tabs span{font-size:11px}.assessment-page .assessment-workspace-tabs small{display:none}}.portal-date-row{justify-content:flex-end;margin:-8px 0 16px;display:flex}.live-date-time{color:var(--muted);align-items:center;gap:10px;display:flex}.live-date{font-size:11px;font-weight:700}.digital-clock{border:1px solid var(--tw-border-rgba-255-255-255-55);background:var(--widget-glass);min-width:77px;color:var(--ink);box-shadow:0 4px 18px var(--tw-shadow-rgba-0-0-0-07);-webkit-backdrop-filter:blur(8.1px);font-variant-numeric:tabular-nums;letter-spacing:.05em;text-align:center;border-radius:9px;padding:7px 9px;font:750 11px/1 ui-monospace,Cascadia Mono,monospace}.portal-dashboard-grid{grid-template-columns:minmax(0,1.45fr) minmax(280px,.75fr);gap:15px;margin-bottom:18px;display:grid}.portal-dashboard-grid .panel{margin-bottom:0}.portal-dashboard-grid>.attention-panel{grid-area:1/2;align-self:stretch}.portal-dashboard-widget{grid-column:1/-1;min-width:0;overflow:visible;container-type:inline-size}.portal-dashboard-grid>.attention-panel+.portal-dashboard-widget{grid-area:1/1}.portal-dashboard-grid>.attention-panel+.portal-dashboard-widget>.panel{height:100%}.portal-dashboard-widget>.panel{height:auto}.portal-dashboard-widget :is(.upcoming-events-panel,.recent-announcements-panel){isolation:isolate;background-clip:padding-box;flex-direction:column;display:flex;overflow:hidden}.portal-dashboard-widget :is(.upcoming-events-panel,.recent-announcements-panel)>:is(.calendar-dashboard-empty,.upcoming-event-list,.recent-announcement-list){width:100%}.portal-dashboard-widget :is(.upcoming-events-panel,.recent-announcements-panel)>.calendar-dashboard-empty{background:radial-gradient(circle at 50% 35%, color-mix(in srgb, var(--accent) 7%, transparent), transparent 42%), color-mix(in srgb, var(--surface) 82%, transparent);flex:1;place-content:center;min-height:190px;display:grid}@container (max-width:720px){.portal-dashboard-widget .ai-progress-digest{flex-direction:column;padding:20px;display:flex}.portal-dashboard-widget .ai-progress-digest .section-title{flex-direction:column;align-items:stretch;gap:12px;margin-bottom:15px}.portal-dashboard-widget .ai-progress-digest .section-title h2{font-size:21px}.portal-dashboard-widget .ai-progress-digest .section-title p:last-child{margin:7px 0 0;font-size:12px;line-height:1.45}.portal-dashboard-widget .ai-progress-digest .ai-draft-button{align-self:flex-start}.portal-dashboard-widget .ai-progress-digest .foundation-grid{flex:1;grid-template-columns:1fr;gap:9px}.portal-dashboard-widget .ai-progress-digest .foundation-card{min-height:0;padding:17px}.portal-dashboard-widget .ai-progress-digest .foundation-card:only-child{min-height:190px}.portal-dashboard-widget .ai-progress-digest .foundation-card p{margin:12px 0 0;font-size:12px;line-height:1.55}.portal-dashboard-widget .ai-progress-digest .insight-suggested-action{border-top:1px solid var(--line);padding-top:8px}}.ai-insight-card{flex-direction:column;display:flex}.ai-insight-card-heading{align-items:center;gap:9px;display:flex}.ai-insight-card-heading>span:last-child{font-weight:700}.ai-insight-card-icon{background:color-mix(in srgb, var(--accent) 12%, var(--widget-glass));width:30px;height:30px;color:var(--accent-foreground);border-radius:10px;flex:none;place-items:center;display:grid}.ai-insight-card-icon svg{width:15px;height:15px}.ai-insight-card-body{color:var(--ink)}.ai-insight-card-footer{border-top:1px solid var(--line);justify-content:space-between;align-items:center;gap:12px;margin-top:auto;padding-top:13px;display:flex}.ai-insight-card-footer>span{background:color-mix(in srgb, var(--accent) 10%, transparent);color:var(--accent-foreground);text-transform:uppercase;letter-spacing:.04em;border-radius:999px;padding:6px 9px;font-size:9px;font-weight:750}.ai-insight-card-footer small{color:var(--muted);text-align:right;font-size:9px}.portal-widget-customizer{flex-wrap:wrap;justify-content:flex-end;margin-bottom:14px;display:flex}.portal-widget-edit-button{border-radius:999px;align-items:center;gap:7px;padding:9px 15px;display:inline-flex}.portal-widget-edit-button svg{width:15px;height:15px}.portal-widget-edit-button.is-active{border-color:color-mix(in srgb, var(--accent) 38%, var(--line));background:color-mix(in srgb, var(--accent) 10%, var(--widget-glass));color:var(--accent-foreground)}.portal-widget-customizer-panel{border-radius:20px;flex:0 0 100%;margin-top:10px;margin-bottom:18px;padding:20px;overflow:hidden}.portal-widget-editor-heading{justify-content:space-between;align-items:flex-start;gap:16px;margin-bottom:17px;display:flex}.portal-widget-editor-heading h2{margin:2px 0 4px;font-size:21px}.portal-widget-editor-heading p:last-child{color:var(--muted);margin:0;font-size:12px}.portal-widget-editor-heading>small{background:var(--widget-glass-strong);color:var(--muted);border-radius:999px;padding:6px 10px;font-size:10px}.portal-widget-list{gap:9px;margin:0 0 20px;padding:0;list-style:none;display:grid}.portal-widget-list:last-child{margin-bottom:0}.portal-widget-row{border:1px solid var(--glass-line);background:color-mix(in srgb, var(--surface) 76%, transparent);min-height:68px;box-shadow:0 7px 20px color-mix(in srgb, var(--ink) 5%, transparent);transition:transform .18s var(--ease-spring), opacity .18s ease, border-color .18s ease, box-shadow .18s ease;border-radius:15px;grid-template-columns:30px minmax(0,1fr) auto;align-items:center;gap:11px;padding:9px 10px;display:grid}.portal-widget-row.is-dragging{z-index:2;border-color:color-mix(in srgb, var(--accent) 52%, var(--line));opacity:.8;box-shadow:0 16px 35px color-mix(in srgb, var(--accent) 16%, transparent);transform:scale(1.018)}.portal-widget-position{background:var(--widget-glass-strong);width:28px;height:28px;color:var(--muted);border-radius:9px;place-items:center;font:750 10px ui-monospace,monospace;display:grid}.portal-widget-copy{min-width:0}.portal-widget-row strong{font-size:12px;display:block}.portal-widget-row small{color:var(--muted);margin-top:2px;font-size:11px;display:block}.portal-widget-row-actions{align-items:center;gap:4px;display:flex}.portal-widget-row-actions form{display:flex}.portal-widget-remove,.portal-widget-add,.portal-widget-grip{cursor:pointer;border:0;border-radius:50%;place-items:center;width:36px;height:36px;padding:0;display:grid}.portal-widget-remove{color:#d93229;background:#ff3b3021}.portal-widget-add{background:color-mix(in srgb, var(--accent) 14%, transparent);color:var(--accent-foreground)}.portal-widget-grip{color:var(--muted);cursor:grab;touch-action:none;background:0 0;border-radius:10px}.portal-widget-grip:active{cursor:grabbing}.portal-widget-remove svg,.portal-widget-add svg{stroke-width:2.6px;width:16px;height:16px}.portal-widget-grip svg{width:20px;height:20px}.portal-widget-library-title{justify-content:space-between;gap:12px;margin:4px 2px 9px;display:flex}.portal-widget-library-title span{color:var(--ink);font-size:12px;font-weight:750}.portal-widget-library-title small{color:var(--muted);font-size:10px}.portal-widget-library{grid-template-columns:repeat(2,minmax(0,1fr));gap:9px;margin:0;padding:0;list-style:none;display:grid}.portal-widget-library li{border:1px solid var(--line);background:var(--widget-glass);border-radius:14px;justify-content:space-between;align-items:center;gap:10px;min-width:0;padding:11px 12px;display:flex}.portal-widget-library strong,.portal-widget-library small{display:block}.portal-widget-library strong{color:var(--ink);font-size:11px}.portal-widget-library small{color:var(--muted);margin-top:3px;font-size:10px}@media (max-width:620px){.portal-widget-customizer-panel{border-radius:17px;padding:15px}.portal-widget-library{grid-template-columns:1fr}.portal-widget-row{grid-template-columns:26px minmax(0,1fr) auto;gap:8px}.portal-widget-position{width:26px;height:26px}}.section-title.compact{margin-bottom:14px}.section-title.compact h2{font-size:19px}.section-title .text-link{align-items:center;gap:4px;display:inline-flex}.section-title .text-link svg{width:13px;height:13px}.today-class-list{gap:8px;display:grid}.today-class{background:color-mix(in srgb, var(--accent) 5%, var(--tw-surface-white));border-radius:10px;grid-template-columns:58px minmax(0,1fr) auto;align-items:center;gap:12px;min-height:61px;padding:10px 12px;display:grid}.today-class time{color:var(--muted);font-size:11px}.today-class strong,.today-class span{display:block}.today-class strong{font-size:13px}.today-class span{color:var(--muted);margin-top:4px;font-size:11px}.today-class>small{background:color-mix(in srgb, var(--accent) 8%, var(--tw-surface-white));color:color-mix(in srgb, var(--accent-foreground) 65%, var(--ink));border-radius:8px;padding:7px 9px;font-size:10px;font-weight:700}.attendance-widget-stats{flex:none;grid-template-columns:1fr 1fr;gap:8px;display:grid}.attendance-widget-stat{background:color-mix(in srgb, var(--accent) 5%, var(--tw-surface-white));text-align:center;border-radius:10px;justify-items:center;gap:4px;padding:14px 10px;display:grid}.attendance-widget-stat svg{color:var(--muted);width:16px;height:16px}.attendance-widget-stat strong{font-size:22px;line-height:1.1}.attendance-widget-stat span{color:var(--muted);text-transform:uppercase;letter-spacing:.03em;font-size:11px;font-weight:650}.attendance-widget-stat.late svg{color:color-mix(in srgb, var(--tw-foreground-96412f) 80%, var(--muted))}.attendance-widget-stat.absent svg{color:color-mix(in srgb, var(--tw-foreground-657477) 80%, var(--muted))}.portal-dashboard-widget .attendance-widget-panel{flex-direction:column;height:100%;display:flex}.portal-dashboard-widget .attendance-widget-flagged-list,.portal-dashboard-widget .attendance-widget-empty{flex:1}.attendance-widget-flagged-list{align-content:start;gap:6px;margin-top:12px;display:grid}.attendance-widget-flagged-list li{background:color-mix(in srgb, var(--accent) 4%, var(--tw-surface-white));border-radius:9px;justify-content:space-between;align-items:center;gap:10px;padding:8px 10px;display:flex}.attendance-widget-flagged-name{flex-direction:column;min-width:0;font-size:13px;font-weight:650;display:flex}.attendance-widget-flagged-name small{color:var(--muted);text-transform:uppercase;letter-spacing:.03em;font-size:10px;font-weight:600}.attendance-widget-flagged-more{background:0 0!important;justify-content:center!important;padding:4px!important}.attendance-widget-empty{background:color-mix(in srgb, var(--accent) 4%, var(--tw-surface-white));color:var(--muted);border-radius:10px;justify-content:center;align-items:center;gap:8px;margin-top:14px;padding:14px 12px;font-size:12px;display:flex}.attendance-widget-empty svg{flex:none;width:16px;height:16px}.calendar-dashboard-empty{text-align:center;align-content:center;justify-items:center;min-height:190px}.calendar-dashboard-empty svg{width:25px;height:25px}.attention-list{display:grid}.attention-list>a{border-bottom:1px solid var(--line);color:inherit;grid-template-columns:18px minmax(0,1fr) 15px;align-items:center;gap:10px;padding:12px 0;text-decoration:none;display:grid}.attention-list>a:last-child{border-bottom:0;padding-bottom:0}.attention-list>a>svg:first-child{width:17px;height:17px;color:color-mix(in srgb, var(--main-foreground) 36%, transparent)}.attention-list>a>svg:last-child{width:13px;height:13px;color:var(--muted)}.attention-list strong,.attention-list small{font-size:12px;display:block}.attention-list small{color:var(--muted);margin-top:4px;font-size:11px}.attention-note{border:1px solid color-mix(in srgb, var(--secondary-border) 35%, var(--glass-line));background:color-mix(in srgb, var(--secondary) 11%, var(--tw-surface-white));color:color-mix(in srgb, var(--secondary-foreground) 38%, var(--ink));border-radius:10px;margin:13px 0 0;padding:11px;font-size:11px;line-height:1.5}.at-risk-list{margin:0;padding:0;list-style:none;display:grid}.at-risk-list li{border-bottom:1px solid var(--line);padding:12px 0}.at-risk-list li:last-child{border-bottom:0;padding-bottom:0}.at-risk-list li a{color:inherit;font-size:13px;text-decoration:none}.at-risk-list li a:hover{text-decoration:underline}.at-risk-list li p{color:var(--muted);margin:4px 0 0;font-size:12px;line-height:1.5}.ai-progress-digest-text{color:var(--ink);margin:12px 0 0;font-size:13px;line-height:1.6}.ai-feature-toggle-grid{border:0;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin:0;padding:0;display:grid}.ai-feature-toggle-grid label{border:1px solid var(--line);background:color-mix(in srgb, var(--surface) 72%, transparent);cursor:pointer;border-radius:10px;align-items:flex-start;gap:10px;padding:12px;transition:border-color .15s,background .15s,transform .15s;display:flex;position:relative}.ai-feature-toggle-grid label:hover{border-color:color-mix(in srgb, var(--accent-border) 32%, var(--line));background:color-mix(in srgb, var(--accent) 4%, var(--surface))}.ai-feature-toggle-grid label:has(input:checked){border-color:color-mix(in srgb, var(--accent-border) 48%, var(--line));background:color-mix(in srgb, var(--accent) 10%, var(--surface))}.ai-feature-toggle-grid label:focus-within{outline:2px solid color-mix(in srgb, var(--accent) 28%, transparent);outline-offset:2px}.ai-feature-toggle-grid label strong{font-size:13px;display:block}.ai-feature-toggle-grid label small{color:var(--muted);margin-top:2px;font-size:11px;line-height:1.4;display:block}.ai-feature-toggle-grid input[type=checkbox]{opacity:0;pointer-events:none;width:1px;height:1px;margin:0;position:absolute}@media (max-width:640px){.ai-feature-toggle-grid{grid-template-columns:1fr}}.ai-output-delete{color:var(--muted);cursor:pointer;background:0 0;border:0;flex-shrink:0;padding:0;font-size:11px;text-decoration:underline}.ai-output-delete:hover{color:var(--tw-foreground-b3261e)}body:has(.ai-shell){overflow:hidden}.optional-navigation-frame:has(.ai-shell){grid-template-rows:minmax(0,1fr);align-items:stretch;height:100dvh;min-height:0;overflow:hidden}.optional-navigation-frame:has(.ai-shell) .optional-navigation-content{height:100%;min-height:0}.ai-shell{width:min(100% - 24px,1320px);height:100%;min-height:0;margin:0 auto}.ai-companion-layout{height:100%;transition:grid-template-columns .3s var(--ease-spring), gap .3s var(--ease-spring);grid-template-columns:minmax(0,1fr) 0;gap:0;display:grid;position:relative}.ai-companion-layout.history-open{grid-template-columns:minmax(0,1fr) clamp(260px,25vw,320px);gap:14px}.ai-widget,.ai-history-widget{border-radius:var(--radius-xl);background:linear-gradient(165deg, var(--glass-strong), var(--ai-widget-glass));border:1px solid var(--glass-line);height:100%;box-shadow:var(--glass-shadow), inset 0 1px 0 color-mix(in srgb, var(--glass-highlight) 55%, transparent);-webkit-backdrop-filter:blur(28px)saturate(150%);backdrop-filter:blur(28px)saturate(150%);position:relative;overflow:hidden}.ai-widget{flex-direction:column;min-width:0;display:flex}.ai-widget-toolbar{flex-shrink:0;align-items:center;gap:8px;padding:14px 16px 0;display:flex}.ai-history-toggle{margin-left:auto}.ai-icon-button{border:1px solid var(--glass-line);background:var(--widget-glass);width:36px;height:36px;color:var(--ink);cursor:pointer;transition:background .18s ease, transform .18s var(--ease-spring);border-radius:50%;place-items:center;text-decoration:none;display:grid}.ai-icon-button svg{width:17px;height:17px}.ai-icon-button:hover{background:color-mix(in srgb, var(--main) 12%, var(--widget-glass));transform:translateY(-1px)}.ai-icon-button.active{background:linear-gradient(135deg, var(--main), var(--accent));color:var(--on-main);border-color:#0000}.ai-widget-body{flex:1;min-height:0;padding:8px 22px 22px;display:flex}.ai-widget-body>*{flex:1;min-height:0}.companion-chat{flex-direction:column;gap:16px;min-height:0;display:flex}.companion-transcript-view{justify-content:flex-start}.companion-transcript-banner{z-index:1;max-width:calc(100% - 180px);color:var(--muted);background:color-mix(in srgb, var(--main) 8%, transparent);text-overflow:ellipsis;white-space:nowrap;pointer-events:none;border-radius:999px;padding:6px 14px;font-size:12px;font-weight:700;position:absolute;top:18px;left:50%;overflow:hidden;transform:translate(-50%)}.companion-chat-messages{flex-direction:column;flex:1;gap:14px;margin-left:50px;margin-right:50px;padding-right:4px;display:flex;overflow-y:auto}*{scrollbar-width:thin;scrollbar-color:color-mix(in srgb, var(--main) 30%, transparent) transparent}::-webkit-scrollbar{width:7px;height:7px}::-webkit-scrollbar-track{background:0 0}::-webkit-scrollbar-thumb{background:color-mix(in srgb, var(--main) 32%, transparent);background-clip:padding-box;border:2px solid #0000;border-radius:999px;min-height:36px}::-webkit-scrollbar-thumb:hover{background:color-mix(in srgb, var(--main) 48%, transparent);background-clip:padding-box}::-webkit-scrollbar-button{width:0;height:0;display:none}::-webkit-scrollbar-corner{background:0 0}.companion-empty{color:var(--muted);text-align:center;justify-items:center;gap:16px;margin:auto 0;padding:32px 16px;display:grid}.companion-empty-icon{background:linear-gradient(135deg, var(--main), var(--accent));width:52px;height:52px;box-shadow:0 12px 28px -8px color-mix(in srgb, var(--main) 55%, transparent);border-radius:50%;place-items:center;display:grid}.companion-empty-icon svg{width:24px;height:24px;color:var(--on-main)}.companion-suggestions{flex-wrap:wrap;justify-content:center;gap:8px;max-width:560px;display:flex}.companion-suggestions button{border:1px solid var(--glass-line);background:var(--widget-glass);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);color:var(--ink);cursor:pointer;transition:transform .18s var(--ease-spring), border-color .18s ease;border-radius:999px;padding:9px 16px;font-size:12px}.companion-suggestions button:hover{border-color:color-mix(in srgb, var(--main-border) 40%, var(--line));transform:translateY(-1px)}.companion-message{border-radius:30px;max-width:95%;padding:12px 16px;font-size:13px;line-height:1.55}.companion-message.user{background:linear-gradient(135deg, var(--main), color-mix(in srgb, var(--main) 70%, var(--accent)));color:var(--on-main);align-self:flex-end}.companion-message.assistant{border:0px solid var(--glass-line);-webkit-backdrop-filter:1px;backdrop-filter:1px;background:0 0;align-self:flex-start}.companion-message p{margin:0}.companion-message.assistant p{margin-top:10px}.companion-message p+p{margin-top:8px}.companion-thinking{color:var(--muted);font-style:italic}.companion-note{color:var(--muted);margin:0;font-size:12px}.companion-card-group{gap:6px;display:grid}.companion-card-group-title{text-transform:uppercase;color:var(--muted);margin:0;font-size:11px;font-weight:700}.companion-chip-grid{flex-wrap:wrap;gap:8px;display:flex}.companion-chip{background:var(--surface);border:1px solid var(--glass-line);color:inherit;min-width:120px;transition:transform .18s var(--ease-spring), border-color .18s ease;border-radius:12px;flex-direction:column;gap:2px;padding:9px 13px;text-decoration:none;display:flex}.companion-chip:hover{border-color:color-mix(in srgb, var(--main-border) 40%, var(--line));transform:translateY(-1px)}.companion-chip strong{font-size:12px}.companion-chip small{color:var(--muted);font-size:11px}.companion-input-row{background:var(--surface);box-shadow:none;border:0;border-radius:999px;align-self:center;align-items:center;gap:8px;width:50%;max-width:100%;height:60px;margin:0 auto;padding:6px 6px 6px 18px;transition:width .2s;display:flex}.companion-input-row:has(input:not(:placeholder-shown)){width:80%}.companion-input-row input{color:var(--ink);border:0;flex:1;padding:10px 0;font-size:13px;box-shadow:none!important;background:0 0!important}.companion-input-row input:focus,.companion-input-row input:focus-visible{box-shadow:none!important;border-color:#0000!important;outline:none!important}.companion-send{background:linear-gradient(135deg, var(--main), var(--accent));width:36px;height:36px;color:var(--on-main);cursor:pointer;transition:transform .18s var(--ease-spring), opacity .18s ease;border:0;border-radius:50%;flex-shrink:0;place-items:center;display:grid}.companion-send svg{width:16px;height:16px}.companion-send:hover:not(:disabled){transform:scale(1.06)}.companion-send:disabled{opacity:.4;cursor:default}.ai-history-widget{min-width:0;box-shadow:none;opacity:0;visibility:hidden;pointer-events:none;transition:opacity .2s ease, transform .3s var(--ease-spring), visibility 0s linear .3s;border-width:0;padding:0;overflow:hidden;transform:scale(.985)}.ai-companion-layout.history-open .ai-history-widget{box-shadow:var(--glass-shadow), inset 0 1px 0 color-mix(in srgb, var(--glass-highlight) 55%, transparent);opacity:1;visibility:visible;pointer-events:auto;border-width:1px;padding:16px;transition-delay:0s;overflow-y:auto;transform:none}.ai-history-close{position:absolute;top:12px;right:12px}.companion-sidebar{flex-direction:column;gap:14px;height:100%;padding-top:30px;display:flex}.companion-sidebar-title{margin:0;font-size:13px;font-weight:700}.companion-sidebar-scroll{flex-direction:column;flex:1;gap:16px;padding:4px 2px;display:flex;overflow-y:auto}.companion-sidebar-empty{padding:4px 2px}.companion-conversation-list{flex-direction:column;gap:14px;display:flex}.companion-conversation-group{flex-direction:column;gap:2px;display:flex}.companion-conversation-group-title{text-transform:uppercase;letter-spacing:.05em;color:var(--muted);margin:0 0 4px 10px;font-size:10px;font-weight:700}.companion-conversation-item{color:var(--ink);white-space:nowrap;text-overflow:ellipsis;border-radius:10px;padding:9px 10px;font-size:12.5px;text-decoration:none;display:block;overflow:hidden}.companion-conversation-item:hover{background:var(--widget-glass)}.companion-conversation-item.active{background:color-mix(in srgb, var(--main) 14%, transparent);font-weight:600}.companion-outputs-toggle>summary{cursor:pointer;text-transform:uppercase;letter-spacing:.04em;color:var(--muted);padding:4px 2px;font-size:11px;font-weight:700;list-style:none}.companion-outputs-toggle>summary::-webkit-details-marker{display:none}.companion-outputs-toggle .companion-outputs-content{flex-direction:column;gap:14px;margin-top:10px;display:flex}.companion-output-item{align-items:center;gap:6px;display:flex}.companion-output-item .companion-conversation-item{flex:1}.companion-conversation-row{align-items:center;gap:2px;display:flex}.companion-conversation-row .companion-conversation-item{flex:1;min-width:0}.companion-conversation-action,.companion-conversation-delete{width:27px;height:27px;color:var(--muted);cursor:pointer;background:0 0;border:0;border-radius:8px;flex-shrink:0;justify-content:center;align-items:center;padding:0;display:flex}.companion-conversation-action:hover{color:var(--accent-foreground);background:var(--widget-glass)}.companion-conversation-action.save:hover{color:var(--tw-foreground-17634f)}.companion-conversation-delete:hover{color:var(--tw-foreground-b3261e);background:var(--widget-glass)}.companion-conversation-rename-form{grid-template-columns:minmax(0,1fr) 27px 27px;align-items:center;gap:3px;padding:2px;display:grid}.companion-conversation-rename-form input{border-radius:8px;min-width:0;height:31px;padding:6px 9px;font-size:11px}.companion-conversation-rename-form small{color:var(--tw-foreground-b3261e);grid-column:1/-1;padding:2px 7px;font-size:9px;line-height:1.35}.companion-memory-link{text-transform:uppercase;letter-spacing:.04em;color:var(--muted);border-radius:10px;align-items:center;gap:8px;padding:8px 10px;font-size:11px;font-weight:700;text-decoration:none;display:flex}.companion-memory-link:hover{background:var(--widget-glass);color:var(--ink)}@media (max-width:820px){.ai-companion-layout,.ai-companion-layout.history-open{display:block}.ai-history-widget{z-index:5;width:min(320px,88%);position:absolute;inset:0 0 0 auto}.ai-companion-layout.history-open .ai-history-widget{box-shadow:-18px 0 40px -20px var(--tw-shadow-rgba-0-0-0-28), inset 0 1px 0 color-mix(in srgb, var(--glass-highlight) 55%, transparent)}}@media (max-width:760px){.optional-navigation-frame.optional-navigation-frame:has(.ai-shell){flex-direction:column;display:flex}.optional-navigation-frame:has(.ai-shell) .optional-navigation-content{flex:1;height:auto}}.assessment-status{background:var(--navy);justify-content:space-between;align-items:center;gap:30px;display:flex}.assessment-status h2,.assessment-status p{color:var(--tw-foreground-white)}.assessment-status .eyebrow{color:var(--tw-foreground-a8c3c4)}.assessment-status p{max-width:760px;margin-bottom:0}.phase-badge{background:var(--tw-surface-d9eee9);min-width:82px;color:var(--tw-foreground-146a64);white-space:nowrap;border-radius:999px;justify-content:center;align-items:center;padding:9px 13px;font:700 11px ui-monospace,monospace;display:inline-flex}.admin-shell{width:min(1180px,100% - 40px);margin:0 auto;padding:44px 0 80px}.admin-header{justify-content:space-between;align-items:start;gap:24px;margin-bottom:32px;display:flex}.admin-header .eyebrow{margin-top:28px}.admin-header>div>.eyebrow:first-child{margin-top:0}.admin-header>div>p:last-child{color:var(--muted);max-width:760px;line-height:1.6}.admin-workspace-toolbar{z-index:20;border:1px solid var(--tw-border-cedbd9);background:var(--tw-surface-rgba-255-255-255-96);box-shadow:0 10px 30px var(--tw-shadow-rgba-24-57-71-09);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border-radius:13px;margin-bottom:20px;padding:10px;position:sticky;top:12px}.admin-toolbar-top{grid-template-columns:minmax(0,1fr) auto;gap:7px;display:grid}.admin-section-tabs{grid-template-columns:repeat(5,minmax(0,1fr));gap:5px;display:grid}.admin-section-tabs button{color:var(--muted);cursor:pointer;background:0 0;border:0;border-radius:8px;padding:10px 8px;font:700 11px ui-monospace,monospace}.admin-section-tabs button.active{background:var(--navy);color:var(--tw-foreground-white)}.admin-settings-button{border:1px solid var(--tw-border-ccd9d7);background:var(--tw-surface-white);color:var(--tw-foreground-466168);cursor:pointer;border-radius:8px;align-items:center;gap:6px;padding:9px 12px;font:700 11px ui-monospace,monospace;display:inline-flex}.admin-filter-bar{border-top:1px solid var(--line);align-items:center;gap:8px;margin:9px 0 12px;padding-top:9px;display:flex}.admin-filter-bar label{margin:0}.admin-filter-bar input,.admin-filter-bar select{border:1px solid var(--tw-border-ccd9d7);background:var(--tw-surface-white);min-height:36px;color:var(--ink);border-radius:7px;padding:7px 10px;font-size:12px}.admin-search-filter{flex:1}.admin-search-filter input{width:100%}.admin-filter-bar .text-button{white-space:nowrap}.settings-card-table>.admin-filter-bar:first-child{border-top:0;margin-top:0;padding-top:16px}.admin-save-bar{z-index:50;border:1px solid var(--tw-border-335866);background:var(--tw-surface-183947);width:min(720px,100% - 32px);color:var(--tw-foreground-white);box-shadow:0 16px 45px var(--tw-shadow-rgba-5-28-37-28);opacity:0;pointer-events:none;border-radius:12px;justify-content:space-between;align-items:center;gap:24px;padding:12px 14px 12px 18px;transition:transform .18s,opacity .18s;display:flex;position:fixed;top:18px;left:50%;transform:translate(-50%,-140%)}.admin-save-bar.visible{opacity:1;pointer-events:auto;transform:translate(-50%)}.admin-save-bar.has-error{border-color:var(--tw-border-e2aaa2)}.admin-save-bar.has-error .unsaved-dot{background:var(--tw-surface-d95858)}.admin-save-bar>div:first-child{grid-template-columns:auto 1fr;align-items:center;column-gap:9px;display:grid}.admin-save-bar strong{font-size:13px}.admin-save-bar small{color:var(--tw-foreground-bbd0d6);grid-column:2;margin-top:2px;font-size:10px}.unsaved-dot{background:var(--tw-surface-f0a64b);width:9px;height:9px;box-shadow:0 0 0 4px var(--tw-shadow-rgba-240-166-75-15);border-radius:50%;grid-row:1/span 2}.admin-save-actions,.rollover-heading-actions{align-items:center;gap:9px;display:flex}.admin-save-bar .secondary.inverse{border-color:var(--tw-border-76909a);color:var(--tw-foreground-white);background:0 0}.admin-save-bar .secondary.inverse:hover{background:var(--tw-surface-rgba-255-255-255-1)}.rollover-heading-actions form{margin:0}.rollover-heading-actions .danger{padding:8px 11px;font-size:11px}.settings-shell{width:min(1380px,100% - 40px);margin:0 auto;padding:40px 0 80px}.settings-shell-header{border-bottom:1px solid var(--line);justify-content:space-between;align-items:flex-start;gap:20px;margin-bottom:28px;padding-bottom:20px;display:flex}.settings-shell-header .eyebrow{margin:0 0 6px}.settings-shell-header h1{font:650 26px/1.15 var(--font-heading);letter-spacing:-.5px;color:var(--ink);margin:0}.settings-shell-header p{color:var(--muted);max-width:640px;margin:6px 0 0;font-size:12.5px;line-height:1.6}.settings-shell-header .header-actions{flex:none;align-items:center;gap:10px;display:flex}.settings-page{flex-direction:column;gap:20px;display:flex}.settings-page-metrics{grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:14px;display:grid}.settings-card{background:var(--glass);border:1px solid var(--glass-line);border-radius:var(--radius-md);box-shadow:var(--glass-shadow), inset 0 1px 0 var(--tw-shadow-rgba-255-255-255-9);-webkit-backdrop-filter:blur(24px)saturate(145%);backdrop-filter:blur(24px)saturate(145%);overflow:hidden}.settings-card-header{align-items:flex-start;gap:14px;padding:20px 24px;display:flex}.settings-card-header:has(+.settings-card-body,+.settings-card-table){border-bottom:1px solid var(--line)}.settings-card-header>span{border-radius:var(--radius-sm);background:color-mix(in srgb, var(--accent) 12%, transparent);width:36px;height:36px;color:var(--accent-foreground);flex:none;place-items:center;display:grid}.settings-card-header .eyebrow{margin:0 0 4px}.settings-card-header h2{font:650 17px/1.25 var(--font-heading);color:var(--ink);margin:0}.settings-card-header p{color:var(--muted);max-width:62ch;margin:5px 0 0;font-size:12px;line-height:1.55}.settings-card-header .settings-card-header-meta{flex:none;margin-left:auto}.settings-card-body{padding:22px 24px}.settings-card-body+.settings-card-footer{border-top:1px solid var(--line)}.settings-card-table{padding:8px 24px 20px}.settings-card-table .table-wrap{box-shadow:none;-webkit-backdrop-filter:none;backdrop-filter:none;background:0 0;border:none;border-radius:0;padding:0}.settings-card-table table{margin:0}.settings-card-footer{border-top:1px solid var(--line);background:0 0;justify-content:space-between;align-items:center;gap:16px;padding:14px 24px;display:flex}.settings-card-footer p{color:var(--muted);margin:0;font-size:11.5px}.settings-card+.settings-card{margin-top:0}.settings-card-wide-description .settings-card-header p{max-width:110ch}.field-grid.grade-group-clock-out-fields{grid-template-columns:repeat(2,minmax(0,1fr));align-items:start}.grade-group-clock-out-fields input{padding:8px 10px}.settings-card-widest-description .settings-card-header p{max-width:none}@media (max-width:720px){.settings-shell{padding-top:24px}.settings-shell-header,.settings-card-header{flex-direction:column}.settings-card-footer{flex-direction:column;align-items:stretch}}.admin-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;display:grid}.admin-grid.two{grid-template-columns:repeat(2,minmax(0,1fr));gap:30px}.form-panel{min-width:0}.form-panel h2{margin-bottom:18px}.term-manager{gap:24px;display:grid}#onboarding-step-form.term-manager{gap:10px}.term-manager-controls{grid-template-columns:repeat(2,minmax(240px,340px));gap:14px;display:grid}.term-manager-control{border:1px solid color-mix(in srgb, var(--main-border) 14%, var(--tw-border-rgba-255-255-255-72));background:var(--widget-glass);box-shadow:0 10px 28px color-mix(in srgb, var(--main) 7%, transparent), inset 0 1px 0 var(--tw-shadow-rgba-255-255-255-72);-webkit-backdrop-filter:blur(14px)saturate(135%);transition:border-color .2s ease, box-shadow .2s ease, transform .2s var(--ease-spring);border-radius:15px;grid-template-columns:38px minmax(0,1fr);align-items:center;gap:4px 11px;margin:0;padding:13px;display:grid}.term-manager-control:hover{border-color:color-mix(in srgb, var(--accent-border) 28%, var(--tw-border-rgba-255-255-255-74));box-shadow:0 14px 30px color-mix(in srgb, var(--main) 10%, transparent), inset 0 1px 0 var(--tw-shadow-rgba-255-255-255-8);transform:translateY(-1px)}.term-manager-control:focus-within{border-color:color-mix(in srgb, var(--accent-border) 55%, transparent);box-shadow:0 0 0 4px color-mix(in srgb, var(--accent) 12%, transparent), 0 16px 34px color-mix(in srgb, var(--main) 11%, transparent)}.term-control-icon{border:1px solid var(--tw-border-rgba-255-255-255-68);background:color-mix(in srgb, var(--accent) 10%, var(--tw-surface-rgba-255-255-255-56));width:38px;height:38px;color:color-mix(in srgb, var(--accent-foreground) 78%, var(--ink));box-shadow:inset 0 1px 0 var(--tw-shadow-rgba-255-255-255-74);border-radius:11px;grid-row:1;place-items:center;display:grid}.term-control-copy{grid-row:1;gap:2px;min-width:0;display:grid}.term-control-copy strong{color:var(--ink);font-size:12px;line-height:1.2}.term-control-copy small{color:var(--muted);font-size:10px;font-weight:500;line-height:1.2}.term-select-shell{grid-column:1/-1;margin-top:7px;display:block;position:relative}.term-select-shell select{appearance:none;border:1px solid color-mix(in srgb, var(--main-border) 18%, transparent);background:color-mix(in srgb, var(--surface) 82%, var(--tw-surface-rgba-255-255-255-42));width:100%;min-height:48px;color:var(--ink);cursor:pointer;border-radius:12px;padding:0 42px 0 14px;font-size:13px;font-weight:650;line-height:1.2}.term-select-shell select:focus{border-color:color-mix(in srgb, var(--accent-border) 62%, transparent);box-shadow:inset 0 1px 0 var(--tw-shadow-rgba-255-255-255-72);outline:0}.term-select-chevron{color:var(--muted);pointer-events:none;transition:transform .2s,color .2s;position:absolute;top:50%;right:14px;transform:translateY(-50%)}.term-manager-control:focus-within .term-select-chevron{color:var(--accent-foreground);transform:translateY(-50%)rotate(180deg)}.term-timeline{grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;display:grid}.term-card{border:1px solid var(--tw-border-d8e1e3);background:var(--tw-surface-f8fbfb);border-radius:16px;gap:11px;min-width:0;padding:20px;display:grid}.term-card>span,.term-create-summary span{color:var(--tw-foreground-60747c);letter-spacing:.08em;text-transform:uppercase;font-size:12px;font-weight:700}.term-card>strong{color:var(--tw-foreground-173b49);font-size:15px}.term-date-control{color:var(--muted);letter-spacing:.06em;text-transform:uppercase;gap:7px;margin-top:3px;font-size:10px;font-weight:750;display:grid}.term-date-control input{border:1px solid color-mix(in srgb, var(--main-border) 17%, transparent);background:color-mix(in srgb, var(--surface) 82%, var(--tw-surface-rgba-255-255-255-44));width:100%;min-height:46px;color:var(--ink);letter-spacing:0;text-transform:none;cursor:pointer;border-radius:11px;padding:0 12px;font-size:13px;font-weight:650}.term-date-control input:focus{border-color:color-mix(in srgb, var(--accent-border) 62%, transparent);outline:3px solid color-mix(in srgb, var(--accent-border) 14%, transparent);box-shadow:0 7px 22px color-mix(in srgb, var(--accent) 9%, transparent), inset 0 1px 0 var(--tw-shadow-rgba-255-255-255-8)}.term-card.fixed{background:var(--tw-surface-edf7f5);border-color:var(--tw-border-bcded8);align-content:center}.term-card.fixed small{color:var(--tw-foreground-557078)}.term-create-summary{background:var(--tw-surface-edf7f5);border-radius:10px;justify-content:space-between;align-items:center;gap:14px;padding:12px 14px;display:flex}.term-create-summary strong{color:var(--tw-foreground-173b49);text-align:right;font-size:14px}.field-hint{color:var(--tw-foreground-6c7f86);margin-top:5px;font-size:12px;font-weight:400;line-height:1.35}.field-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;display:grid}.stack-form{gap:13px;display:grid}.field-grid label,.stack-form label{color:var(--tw-foreground-456066);gap:6px;font-size:12px;font-weight:650;display:grid}.field-grid input,.field-grid select,.field-grid textarea,.stack-form input,.stack-form select,.stack-form textarea{border:1px solid var(--tw-border-ccd9d7);background:var(--tw-surface-white);width:100%;color:var(--ink);border-radius:7px;padding:10px}.field-grid input:focus,.field-grid select:focus,.field-grid textarea:focus,.stack-form input:focus,.stack-form select:focus,.stack-form textarea:focus{outline:2px solid var(--tw-border-b5ddd6);border-color:var(--tw-border-5ca99e)}.field-grid textarea,.stack-form textarea{resize:vertical;min-height:96px}.academic-year-create-form{gap:12px}.academic-year-create-row{grid-template-columns:repeat(2,minmax(0,1fr));align-items:end;gap:12px;display:grid}.academic-year-create-row>label{min-width:0}.academic-year-create-row>.term-create-summary{border-radius:var(--radius-sm);align-self:end;height:40px;min-height:40px;padding:8px 12px}.academic-year-create-row>.term-create-summary span{letter-spacing:.06em;font-size:9px}.academic-year-create-row>.term-create-summary strong{white-space:nowrap;font-size:11px}.academic-year-create-footer{grid-template-columns:minmax(0,1fr) auto;align-items:stretch;gap:12px;display:grid}.academic-year-create-footer .primary{white-space:nowrap;min-width:180px}.academic-year-create-submit{width:100%}.subject-create-fields{grid-template-columns:minmax(140px,.55fr) minmax(220px,1.45fr) auto;align-items:end;gap:12px;display:grid}.subject-create-fields>label{min-width:0}.subject-create-fields .primary{white-space:nowrap;min-width:120px;min-height:40px}.people-provisioning-form{gap:12px}.people-provisioning-row{grid-template-columns:repeat(2,minmax(0,1fr));align-items:end;gap:12px;display:grid}.people-provisioning-action-row{grid-template-columns:minmax(0,1fr) auto}.people-provisioning-action-row .primary{white-space:nowrap;min-width:155px;min-height:40px}.parent-self-signup-form{grid-template-columns:1fr;gap:12px;display:grid}.parent-self-signup-form>label{border:1px solid var(--line);border-radius:var(--radius-sm);background:color-mix(in srgb, var(--surface) 82%, transparent);min-width:0;margin:0;padding:16px}.parent-self-signup-toggle.required-toggle{grid-template-columns:38px minmax(0,1fr);align-content:center;align-self:stretch;width:100%;gap:12px!important}.parent-self-signup-toggle .toggle-track{width:36px;height:22px}.parent-self-signup-toggle .toggle-track:after{width:16px;height:16px}.parent-self-signup-toggle:has(input:checked) .toggle-track:after{transform:translate(14px)}.parent-self-signup-toggle strong{color:var(--ink);font-size:12px;line-height:1.4}.parent-self-signup-toggle small{color:var(--muted);margin-top:5px;font-size:10px;line-height:1.55}.parent-self-signup-retention{color:var(--tw-foreground-456066);align-content:center;gap:8px;font-size:12px;font-weight:650;display:grid}.parent-self-signup-retention input{border:1px solid var(--tw-border-ccd9d7);border-radius:var(--radius-sm);background:var(--surface);width:100%;min-height:42px;color:var(--ink);padding:10px 12px}.parent-self-signup-retention input:focus{outline:2px solid var(--tw-border-b5ddd6);border-color:var(--tw-border-5ca99e)}.parent-self-signup-retention .field-hint{color:var(--muted);margin:1px 0 0;line-height:1.5}.form-actions{grid-column:1/-1}.primary,.secondary{cursor:pointer;border-radius:7px;padding:10px 14px;font-size:12px;font-weight:650}.primary{background:var(--accent);border:1px solid color-mix(in srgb, var(--accent-border) 84%, var(--tw-border-black));color:var(--on-accent);box-shadow:0 8px 18px color-mix(in srgb, var(--accent) 20%, transparent), inset 0 1px 0 var(--tw-shadow-rgba-255-255-255-24)}.primary:hover:not(:disabled){transform:translateY(-1px)}.secondary{border:1px solid color-mix(in srgb, var(--main-border) 18%, transparent);background:var(--tw-surface-rgba-255-255-255-62);color:color-mix(in srgb, var(--main-foreground) 82%, var(--tw-foreground-26373c));box-shadow:inset 0 1px 0 var(--tw-shadow-rgba-255-255-255-8);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px)}.ai-draft-button{align-items:center;gap:6px;display:inline-flex}.ai-draft-button svg{flex-shrink:0;width:14px;height:14px}.danger-button{border:1px solid var(--tw-border-e2aaa2);background:var(--tw-surface-fff5f3);color:var(--tw-foreground-8a352b);cursor:pointer;border-radius:7px;padding:7px 10px;font-size:11px;font-weight:650}.danger-button:hover:not(:disabled){background:var(--tw-surface-ffe8e4);border-color:var(--tw-border-d98f85)}.success-button{border:1px solid color-mix(in srgb, var(--tw-foreground-17634f) 35%, transparent);background:var(--tw-surface-dff2eb);color:var(--tw-foreground-17634f);cursor:pointer;border-radius:7px;padding:7px 10px;font-size:11px;font-weight:650}.success-button:hover:not(:disabled){background:color-mix(in srgb, var(--tw-surface-dff2eb) 80%, var(--tw-foreground-17634f) 12%);border-color:color-mix(in srgb, var(--tw-foreground-17634f) 55%, transparent)}.role-pill{background:var(--tw-surface-e8f1ee);border-radius:999px;padding:5px 8px;display:inline-block}.table-wrap{overflow:auto}table{border-collapse:collapse;text-align:left;width:100%}th{letter-spacing:.8px;color:var(--tw-foreground-758387);border-bottom:1px solid var(--line);padding:10px;font:10px ui-monospace,monospace}td{border-bottom:1px solid var(--tw-border-edf0ef);color:var(--tw-foreground-526369);padding:14px 10px;font-size:12px}td strong{color:var(--ink)}.table-action{text-align:right;white-space:nowrap;width:1%}.table-action-group{align-items:center;gap:10px;display:inline-flex}.wide-table-action{min-width:390px}.reset-password-inline{align-items:center;gap:8px;display:inline-flex}.reset-password-inline input[type=password]{border:1px solid color-mix(in srgb, var(--main-border) 22%, transparent);background:var(--surface);width:180px;color:var(--ink);border-radius:7px;padding:7px 10px;font-size:12px}.management-block{border-top:1px solid var(--line);margin-top:22px;padding-top:22px}.management-block:first-of-type{border-top:0;margin-top:0;padding-top:0}.management-heading{justify-content:space-between;align-items:start;gap:20px;margin-bottom:12px;display:flex}.management-heading h3{margin:0 0 4px;font-size:16px}.management-heading p{margin:0}.management-heading>span{background:var(--tw-surface-edf3f1);min-width:30px;height:30px;color:var(--tw-foreground-46635f);border-radius:999px;place-items:center;font:700 11px ui-monospace,monospace;display:grid}.relationship-action-panel{border:1px solid var(--tw-border-dbe6e4);background:var(--tw-surface-f7faf9);border-radius:9px;margin:14px 0 16px;padding:16px}.relationship-action-panel>p:first-child{margin-top:0}.relationship-action-panel .stack-form{grid-template-columns:repeat(4,minmax(0,1fr));align-items:end}.relationship-action-panel .stack-form>button{align-self:end;min-height:38px}.relationship-action-panel .form-message{grid-column:1/-1}.student-subject-assignment{justify-content:space-between;align-items:center;gap:24px;display:flex}.student-subject-assignment>div{max-width:760px}.curriculum-section .section-title>div{max-width:700px}.curriculum-subjects-toolbar{border:1px solid var(--glass-line);background:color-mix(in srgb, var(--accent) 4%, var(--surface));border-radius:12px;justify-content:space-between;align-items:center;gap:18px;margin-bottom:14px;padding:11px 12px 11px 14px;display:flex}.curriculum-subjects-toolbar>div{gap:3px;display:grid}.curriculum-subjects-toolbar>div strong{color:var(--ink);font-size:12px}.curriculum-subjects-toolbar>div small{color:var(--muted);font-size:9px}.curriculum-year-form{flex:none;align-items:center;gap:8px;display:flex}.curriculum-year-select{flex:none;width:max-content;display:inline-grid;position:relative}.curriculum-year-select-sizer{visibility:hidden;white-space:nowrap;grid-area:1/1;height:0;padding:0 35px 0 12px;font-size:12px;font-weight:600;overflow:hidden}.curriculum-year-select-trigger{box-sizing:border-box;border:1px solid color-mix(in srgb, var(--main-border) 17%, transparent);background:color-mix(in srgb, var(--surface) 90%, var(--tw-surface-rgba-255-255-255-72));width:100%;min-height:38px;color:var(--ink);box-shadow:inset 0 1px 0 var(--tw-shadow-rgba-255-255-255-8);cursor:pointer;border-radius:9px;grid-area:1/1;justify-content:space-between;align-items:center;gap:16px;padding:0 10px 0 12px;font-size:12px;font-weight:600;line-height:1;display:flex}.curriculum-year-select-trigger svg{color:var(--muted);flex:none;transition:transform .15s}.curriculum-year-select.is-open .curriculum-year-select-trigger{border-color:color-mix(in srgb, var(--accent-border) 45%, transparent);box-shadow:0 0 0 3px color-mix(in srgb, var(--accent) 10%, transparent)}.curriculum-year-select.is-open .curriculum-year-select-trigger svg{transform:rotate(180deg)}.curriculum-year-select-menu{z-index:30;box-sizing:border-box;border:1px solid var(--glass-line);background:color-mix(in srgb, var(--surface) 96%, transparent);width:100%;box-shadow:0 12px 28px var(--shadow);-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);border-radius:9px;gap:2px;padding:4px;display:grid;position:absolute;top:calc(100% + 5px);left:0}.curriculum-year-select-option{width:100%;min-height:31px;color:var(--ink);text-align:left;white-space:nowrap;cursor:pointer;background:0 0;border:0;border-radius:6px;justify-content:space-between;align-items:center;gap:12px;padding:0 8px;font-size:12px;font-weight:500;line-height:1;display:flex}.curriculum-year-select-option:hover,.curriculum-year-select-option:focus-visible{background:color-mix(in srgb, var(--accent) 8%, var(--surface));outline:none}.curriculum-year-select-option[aria-selected=true]{background:color-mix(in srgb, var(--accent) 7%, var(--surface));color:var(--accent-foreground);font-weight:650}.curriculum-year-select-option svg{flex:none}.curriculum-year-form .secondary{min-height:38px}.grade-curriculum-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:11px;display:grid}.grade-curriculum-card{border:1px solid var(--glass-line);background:color-mix(in srgb, var(--surface) 72%, transparent);border-radius:13px;min-width:0;padding:0;display:grid;overflow:hidden}.grade-curriculum-card>div{background:0 0;border-bottom:0;grid-template-rows:auto auto;grid-template-columns:42px minmax(0,1fr);align-items:center;gap:2px 11px;padding:12px 14px 6px;display:grid}.grade-curriculum-card>div span{color:var(--accent-foreground);letter-spacing:.08em;grid-area:1/2;font:750 8px/1.2 ui-monospace,monospace}.grade-curriculum-card>div strong{background:color-mix(in srgb, var(--accent) 11%, var(--surface));width:42px;height:42px;color:var(--accent-foreground);font:650 20px/1 var(--font-heading);border-radius:11px;grid-area:1/1/span 2;place-items:center;display:grid}.grade-curriculum-card>div small{color:var(--muted);grid-area:2/2;font-size:9px}.grade-curriculum-card fieldset{border:0;gap:7px;min-width:0;margin:0;padding:11px;display:grid}.curriculum-subject-row{border:1px solid var(--glass-line);background:color-mix(in srgb, var(--surface) 82%, transparent);cursor:pointer;border-radius:10px;grid-template-columns:minmax(0,1fr) auto auto;align-items:center;gap:8px;min-height:48px;padding:8px 9px;transition:border-color .16s,background-color .16s,box-shadow .16s;display:grid;position:relative}.curriculum-subject-row:hover{border-color:color-mix(in srgb, var(--accent-border) 24%, var(--glass-line))}.curriculum-subject-row.is-offered{border-color:color-mix(in srgb, var(--accent-border) 42%, var(--glass-line));background:color-mix(in srgb, var(--accent) 9%, var(--surface));box-shadow:inset 0 0 0 1px color-mix(in srgb, var(--accent) 5%, transparent)}.curriculum-subject-row:has(.curriculum-offered-checkbox:focus-visible){outline:3px solid color-mix(in srgb, var(--accent) 14%, transparent);outline-offset:1px}.grade-curriculum-card .curriculum-subject-row>.curriculum-subject-selector{cursor:pointer;background:0 0;border:0;border-radius:0;align-items:center;min-width:0;padding:0;display:flex}.curriculum-subject-selector:after{z-index:1;border-radius:inherit;content:"";position:absolute;inset:0}.curriculum-subject-selector>span{z-index:2;position:relative}.grade-curriculum-card fieldset .curriculum-offered-checkbox{opacity:0;pointer-events:none;width:1px;height:1px;margin:0;position:absolute}.grade-curriculum-card fieldset input{accent-color:var(--teal);margin:2px 0 0}.grade-curriculum-card fieldset span{min-width:0;color:var(--muted);text-overflow:ellipsis;white-space:nowrap;font-size:10px;line-height:1.3;overflow:hidden}.grade-curriculum-card fieldset strong{color:var(--ink);margin-right:7px;font:750 9px ui-monospace,monospace;display:inline}.curriculum-subject-actions{z-index:3;align-self:center;align-items:center;height:31px;display:flex;position:relative}.curriculum-subject-actions.required-controls-hidden{display:none}.curriculum-subject-row .curriculum-required-toggle{box-sizing:border-box;border:1px solid var(--glass-line);background:color-mix(in srgb, var(--accent) 5%, var(--surface));height:31px;color:var(--tw-foreground-46635f);cursor:pointer;border-radius:8px;justify-content:center;align-items:center;margin:0;padding:0 10px;font-size:9px;font-weight:700;line-height:1;transition:border-color .15s,background .15s,color .15s;display:inline-flex;position:relative}.curriculum-subject-row .curriculum-required-toggle input{opacity:0;pointer-events:none;width:1px;height:1px;margin:0;position:absolute}.curriculum-subject-row .curriculum-required-toggle:has(input:checked){border-color:color-mix(in srgb, var(--accent) 45%, var(--glass-line));background:color-mix(in srgb, var(--accent) 14%, var(--surface));color:var(--accent-foreground)}.curriculum-subject-row .curriculum-required-toggle:focus-within{outline:2px solid color-mix(in srgb, var(--accent) 35%, transparent);outline-offset:2px}.curriculum-subject-row .curriculum-required-toggle:has(input:disabled){opacity:.45;cursor:not-allowed}.curriculum-subject-row .subject-units-link{z-index:3;box-sizing:border-box;white-space:nowrap;border-radius:7px;justify-content:center;align-self:center;align-items:center;height:31px;margin:0;padding:0 7px;font-size:9px;font-weight:700;line-height:1;display:inline-flex;position:relative}.student-subject-page{max-width:1240px}.student-subject-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;display:grid}.student-subject-card{border:1px solid var(--tw-border-d9e4e3);background:var(--tw-surface-f8fbfa);border-radius:10px;gap:15px;min-width:0;padding:18px;display:grid}.student-subject-card header{justify-content:space-between;align-items:start;gap:18px;display:flex}.student-subject-card header span{color:var(--tw-foreground-39756e);letter-spacing:.65px;font:9px ui-monospace,monospace}.student-subject-card header h3{font:600 19px/1.15 var(--font-heading);margin:6px 0 0}.student-subject-card header small{background:var(--tw-surface-e4efec);color:var(--tw-foreground-46635f);white-space:nowrap;border-radius:999px;padding:5px 8px;font:700 9px ui-monospace,monospace}.student-subject-card fieldset{border:0;grid-template-columns:repeat(2,minmax(0,1fr));gap:7px;min-width:0;margin:0;padding:0;display:grid}.student-subject-card fieldset label{border:1px solid var(--tw-border-e1e8e7);background:var(--tw-surface-white);cursor:pointer;border-radius:7px;align-items:start;gap:8px;padding:8px;display:flex}.student-subject-card fieldset input{accent-color:var(--teal);margin:2px 0 0}.student-subject-card fieldset span{color:var(--muted);font-size:10px;line-height:1.35}.student-subject-card fieldset strong{color:var(--ink);font:700 10px ui-monospace,monospace;display:block}.student-subject-card fieldset label.required-subject{background:var(--tw-surface-eaf5f1);border-color:var(--tw-border-b9ddd2);cursor:default}.student-subject-card fieldset label.required-subject small{color:var(--tw-foreground-267163);text-transform:uppercase;margin-top:3px;font:700 8px ui-monospace,monospace;display:block}.student-subject-card>button{justify-self:start}.management-actions{justify-content:flex-end;align-items:center;gap:8px;display:flex}.move-enrollment-form{align-items:center;gap:7px;display:flex}.move-enrollment-form select{border:1px solid var(--tw-border-ccd9d7);background:var(--tw-surface-white);min-width:185px;color:var(--ink);border-radius:7px;padding:7px 9px;font-size:11px}.unit-rename-form{align-items:center;gap:7px;display:flex}.unit-rename-form input{border:1px solid var(--tw-border-ccd9d7);background:var(--tw-surface-white);min-width:220px;color:var(--ink);border-radius:7px;padding:7px 9px;font-size:11px}.add-unit-form{margin-top:14px}.unit-manager-breadcrumb{color:var(--muted);align-items:center;gap:8px;margin-bottom:14px;font-size:11px;display:flex}.unit-manager-breadcrumb strong{color:var(--navy);font:700 13px var(--font-heading)}.unit-manager-breadcrumb span:before{content:"·";color:var(--tw-foreground-b7c4c2);margin-right:8px}.empty-state.compact{padding:20px}.current-user-label{background:var(--tw-surface-edf2f1);color:var(--tw-foreground-5f7075);text-transform:uppercase;letter-spacing:.5px;border-radius:999px;margin-left:8px;padding:3px 6px;font:9px ui-monospace,monospace;display:inline-block}.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}.auth-page{background:var(--navy);place-items:center;min-height:100vh;padding:24px;display:grid}.auth-card{background:var(--tw-surface-white);width:min(100%,440px);box-shadow:0 20px 60px var(--tw-shadow-rgba-6-28-35-24);border-radius:14px;padding:34px}.auth-brand{color:var(--navy);margin-bottom:30px}.auth-card>p:not(.eyebrow){color:var(--muted);font-size:14px;line-height:1.55}.auth-tabs{background:var(--tw-surface-edf2f1);border-radius:8px;grid-template-columns:1fr 1fr;gap:4px;margin:22px 0;padding:4px;display:grid}.auth-tabs button{color:var(--tw-foreground-607075);cursor:pointer;background:0 0;border:0;border-radius:6px;padding:9px}.auth-tabs .selected{background:var(--tw-surface-white);color:var(--navy);box-shadow:0 1px 4px var(--tw-shadow-cfd9d7);font-weight:650}.auth-form{margin-bottom:18px}.form-message,.admin-notice{--notice-accent:var(--accent);border:1px solid color-mix(in srgb, var(--notice-accent) 20%, var(--line));background:linear-gradient(135deg, color-mix(in srgb, var(--notice-accent) 7%, var(--surface)) 0%, color-mix(in srgb, var(--glass-strong) 92%, transparent) 72%);min-height:50px;box-shadow:0 10px 26px color-mix(in srgb, var(--main) 6%, transparent);border-radius:14px;padding:14px 16px 14px 54px;font-size:12px;font-weight:560;line-height:1.55;position:relative;overflow:hidden;color:var(--ink)!important}.form-message:before,.admin-notice:before{background:var(--notice-accent);width:25px;height:25px;box-shadow:0 5px 12px color-mix(in srgb, var(--notice-accent) 22%, transparent);color:#fff;content:"i";font:750 13px/1 var(--font-heading);border-radius:8px;place-items:center;display:grid;position:absolute;top:50%;left:15px;transform:translateY(-50%)}.form-message{--notice-accent:var(--tw-foreground-7c612f)}.form-message:before{content:"!"}.admin-notice{margin:0 0 20px}.admin-notice.success{--notice-accent:var(--tw-foreground-245f4e)}.admin-notice.success:before{content:"✓"}.admin-notice.error{--notice-accent:var(--tw-foreground-8a352b)}.admin-notice.error:before{content:"!"}.admin-notice.warning{--notice-accent:var(--tw-foreground-8a5527)}.admin-notice.warning:before{content:"!"}.admin-notice.compact{min-height:42px;margin-bottom:12px;padding:10px 13px 10px 45px;font-size:11px}.admin-notice.compact:before{border-radius:7px;width:22px;height:22px;font-size:11px;left:12px}.favicon-settings{border-top:1px solid var(--line);margin-top:22px;padding-top:20px}.favicon-settings h3{margin:3px 0 6px}.favicon-settings p{color:var(--muted);margin:0}.favicon-editor{border:1px solid var(--line);border-radius:var(--radius-md);background:color-mix(in srgb, var(--surface) 76%, var(--accent) 3%);grid-template-columns:66px minmax(0,1fr);gap:16px;margin-top:14px;padding:16px;display:grid}.favicon-preview{border:1px solid color-mix(in srgb, var(--accent-border) 24%, var(--line));background:var(--surface);width:66px;height:66px;box-shadow:0 7px 18px color-mix(in srgb, var(--main) 9%, transparent);border-radius:15px;place-items:center;display:grid}.favicon-preview-image{background-position:50%;background-repeat:no-repeat;background-size:contain;width:42px;height:42px}.favicon-editor-content{min-width:0}.favicon-editor-heading{justify-content:space-between;align-items:flex-start;gap:12px;display:flex}.favicon-editor-heading strong{color:var(--ink);font-size:13px;display:block}.favicon-editor-heading p{margin-top:3px;font-size:11px}.favicon-status{background:color-mix(in srgb, var(--accent) 12%, transparent);color:color-mix(in srgb, var(--accent-foreground) 82%, var(--ink));letter-spacing:.04em;text-transform:uppercase;border-radius:999px;flex:none;padding:4px 8px;font:700 9px ui-monospace,monospace}.favicon-status.new-preview{background:color-mix(in srgb, var(--secondary) 18%, transparent);color:color-mix(in srgb, var(--secondary-foreground) 65%, var(--ink))}.favicon-upload-form{grid-template-columns:minmax(160px,1fr) auto;gap:9px;margin-top:12px;display:grid}.favicon-picker{text-align:left;text-overflow:ellipsis;white-space:nowrap;cursor:pointer;min-width:0;padding:9px 11px;overflow:hidden}.favicon-picker span{text-overflow:ellipsis;display:block;overflow:hidden}.favicon-picker input{opacity:0;pointer-events:none;width:1px;height:1px;position:absolute}.favicon-picker:focus-within{outline:2px solid color-mix(in srgb, var(--accent-border) 45%, transparent);outline-offset:2px}.favicon-editor-footer{justify-content:space-between;align-items:center;gap:12px;min-height:22px;margin-top:7px;display:flex}.favicon-editor-footer>span{color:var(--muted);text-overflow:ellipsis;white-space:nowrap;font-size:10px;overflow:hidden}.favicon-restore{color:var(--tw-foreground-9a493e);padding:2px 0}@media (max-width:620px){.favicon-editor{grid-template-columns:54px minmax(0,1fr);padding:13px}.favicon-preview{border-radius:13px;width:54px;height:54px}.favicon-preview-image{width:34px;height:34px}.favicon-upload-form{grid-template-columns:1fr}.favicon-upload-form .primary{width:100%}.favicon-editor-footer{flex-direction:column;align-items:flex-start}}.branding-editor{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;margin-top:14px;display:grid}.branding-field{border:1px solid var(--line);border-radius:var(--radius-md);background:color-mix(in srgb, var(--surface) 76%, var(--accent) 3%);grid-template-columns:66px minmax(0,1fr);gap:16px;padding:16px;display:grid}.branding-preview{border:1px solid color-mix(in srgb, var(--accent-border) 24%, var(--line));background:var(--surface);width:66px;height:66px;box-shadow:0 7px 18px color-mix(in srgb, var(--main) 9%, transparent);border-radius:15px;place-items:center;display:grid;overflow:hidden}.branding-preview.signature{background:#fff}.branding-preview-image{object-fit:contain;width:100%;height:100%}.branding-preview-empty{color:var(--muted);text-align:center;text-transform:uppercase;letter-spacing:.04em;font-size:9px}.branding-field-content{min-width:0}.branding-field-heading{justify-content:space-between;align-items:flex-start;gap:12px;display:flex}.branding-field-heading strong{color:var(--ink);font-size:13px;display:block}.branding-field-heading p{margin-top:3px;font-size:11px}.branding-status{background:color-mix(in srgb, var(--accent) 12%, transparent);color:color-mix(in srgb, var(--accent-foreground) 82%, var(--ink));letter-spacing:.04em;text-transform:uppercase;border-radius:999px;flex:none;padding:4px 8px;font:700 9px ui-monospace,monospace}.branding-status.new-preview{background:color-mix(in srgb, var(--secondary) 18%, transparent);color:color-mix(in srgb, var(--secondary-foreground) 65%, var(--ink))}.branding-upload-form{grid-template-columns:minmax(140px,1fr) auto;gap:9px;margin-top:12px;display:grid}.branding-picker{text-align:left;text-overflow:ellipsis;white-space:nowrap;cursor:pointer;min-width:0;padding:9px 11px;overflow:hidden}.branding-picker span{text-overflow:ellipsis;display:block;overflow:hidden}.branding-picker input{opacity:0;pointer-events:none;width:1px;height:1px;position:absolute}.branding-picker:focus-within{outline:2px solid color-mix(in srgb, var(--accent-border) 45%, transparent);outline-offset:2px}.branding-field-footer{justify-content:space-between;align-items:center;gap:12px;min-height:22px;margin-top:7px;display:flex}.branding-field-footer>span{color:var(--muted);text-overflow:ellipsis;white-space:nowrap;font-size:10px;overflow:hidden}.branding-remove{color:var(--tw-foreground-9a493e);padding:2px 0}@media (max-width:760px){.branding-editor{grid-template-columns:1fr}}@media (max-width:620px){.branding-field{grid-template-columns:54px minmax(0,1fr);padding:13px}.branding-preview{border-radius:13px;width:54px;height:54px}.branding-upload-form{grid-template-columns:1fr}.branding-upload-form .primary{width:100%}.branding-field-footer{flex-direction:column;align-items:flex-start}}.rollover-prepare{grid-template-columns:minmax(0,1.7fr) minmax(260px,.8fr);align-items:end;gap:32px;display:grid}.rollover-prepare h3{margin:0 0 8px}.rollover-form{align-content:end}.rollover-summary{grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin-bottom:16px;display:grid}.rollover-summary div{border:1px solid var(--tw-border-dce5e3);background:var(--tw-surface-f8fbfa);border-radius:9px;padding:14px}.rollover-summary span{color:var(--muted);text-transform:uppercase;letter-spacing:.06em;margin-bottom:5px;font-size:11px;font-weight:700;display:block}.rollover-summary strong{font-size:15px}.rollover-row-form{grid-template-columns:minmax(210px,1fr) minmax(110px,.55fr);align-items:center;gap:10px;display:grid}.rollover-row-form select{border:1px solid var(--tw-border-ccd9d7);background:var(--tw-surface-white);width:100%;color:var(--ink);border-radius:7px;padding:9px}.rollover-row-form span{color:var(--muted);font-size:12px}.calendar-guide{grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;margin-bottom:18px;display:grid}.calendar-guide h2{font:600 22px/1.1 var(--font-heading);margin:0 0 8px}.calendar-guide p:last-child{color:var(--muted);margin-bottom:0;font-size:13px;line-height:1.55}.academic-settings-category{border-radius:18px;padding:24px}.academic-settings-category>.section-title,.academic-group-heading{border-bottom:1px solid var(--line);margin-bottom:16px;padding-bottom:16px}.academic-settings-category>.section-title{align-items:flex-start}.academic-settings-category>.section-title h2{margin:3px 0 0;font-size:22px}.academic-settings-category>.section-title p:last-child{max-width:720px;margin-top:5px;font-size:10px;line-height:1.45}.academic-setup-section{gap:14px;display:grid}.academic-group-heading{justify-content:space-between;align-items:end;gap:28px;display:flex}.academic-group-heading h2{font:650 24px/1.15 var(--font-heading);margin:3px 0 0}.academic-group-heading>p{max-width:520px;color:var(--muted);text-align:right;margin:0;font-size:11px;line-height:1.5}.academic-guide{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;display:grid}.academic-guide article{border:1px solid var(--glass-line);background:color-mix(in srgb, var(--accent) 5%, var(--surface));border-radius:11px;padding:12px 14px}.academic-guide h3{color:var(--ink);margin:3px 0 4px;font-size:13px}.academic-guide p:last-child{color:var(--muted);margin:0;font-size:9px;line-height:1.4}.academic-foundation-layout{grid-template-columns:minmax(320px,.82fr) minmax(440px,1.18fr);align-items:start;gap:10px;display:grid}.academic-foundation-stack{gap:10px;display:grid}.academic-setup-card{border-color:var(--glass-line);background:color-mix(in srgb, var(--surface) 76%, transparent);box-shadow:none;border-radius:13px;padding:18px;position:relative;overflow:hidden}.academic-setup-card h2{margin:4px 0 7px;font-size:18px}.academic-setup-card>.helper-text{min-height:0;margin:0 0 16px;font-size:11px;line-height:1.5}.generate-homerooms-card>form{grid-template-columns:repeat(3,minmax(0,1fr));align-items:end}.generate-homerooms-card>form>:first-child,.generate-homerooms-card>form>button{grid-column:1/-1}.add-homeroom-card>form{grid-template-columns:minmax(120px,.55fr) minmax(200px,1.45fr);align-items:end}.add-homeroom-card>form>:first-child,.add-homeroom-card>form>button{grid-column:1/-1}.maximum-grade-control{grid-template-columns:minmax(140px,.65fr) minmax(220px,1.35fr);gap:10px;display:grid}.maximum-grade-value{border:1px solid color-mix(in srgb, var(--accent-border) 25%, var(--glass-line));background:color-mix(in srgb, var(--accent) 8%, var(--surface));border-radius:11px;align-content:center;gap:4px;min-height:0;padding:14px;display:grid}.maximum-grade-value span,.vacation-list-summary span{color:var(--muted);letter-spacing:.06em;text-transform:uppercase;font:750 9px/1.2 ui-monospace,monospace}.maximum-grade-value strong{color:var(--ink);font:650 26px/1.05 var(--font-heading)}.maximum-grade-value small{color:var(--muted);font-size:10px}.maximum-grade-control form{border:1px solid var(--glass-line);background:color-mix(in srgb, var(--surface) 72%, transparent);border-radius:11px;align-content:end;padding:12px}.academic-school-week-grid{grid-template-columns:repeat(2,1fr);gap:12px}.academic-school-week-grid>:last-child:nth-child(odd){grid-column:1/-1}.academic-school-week-grid .staff-calendar-card{background:color-mix(in srgb, var(--surface) 76%, transparent)}.academic-school-week-grid .staff-weekday-picker label>span{min-height:44px}.academic-vacation-layout{gap:10px;display:grid}.academic-vacation-create-card,.scheduled-vacations-card{background:color-mix(in srgb, var(--surface) 76%, transparent);box-shadow:none;border-radius:13px;padding:18px}.academic-vacation-create-card .stack-form{grid-template-columns:repeat(4,minmax(0,1fr));align-items:end}.academic-vacation-create-card .stack-form>label:first-child,.academic-vacation-create-card .stack-form>label:nth-child(2){grid-column:span 2}.academic-vacation-create-card .stack-form>label:nth-child(5),.academic-vacation-create-card .stack-form>.admin-grid,.academic-vacation-create-card .stack-form>.helper-text,.academic-vacation-create-card .stack-form>button{grid-column:1/-1}.academic-vacation-create-card .stack-form>.admin-grid{gap:8px}.scheduled-vacations-card{padding:18px}.scheduled-vacations-card h2{margin-bottom:12px}.grade-group-editor{gap:9px;padding-top:8px;display:grid}.grade-group-editor-heading,.grade-level-assign-heading{justify-content:space-between;align-items:center;gap:16px;padding:0 2px 5px;display:flex}.grade-group-editor-heading>div,.grade-level-assign-heading>div{gap:2px;display:grid}.grade-group-editor-heading strong,.grade-level-assign-heading strong{color:var(--ink);font-size:12px}.grade-group-editor-heading small,.grade-level-assign-heading small{color:var(--muted);font-size:9px}.grade-group-editor-heading>span,.grade-level-assign-heading>span{background:color-mix(in srgb, var(--accent) 8%, transparent);color:var(--accent-foreground);letter-spacing:.04em;text-transform:uppercase;white-space:nowrap;border-radius:999px;padding:5px 8px;font:750 8px/1 ui-monospace,monospace}.grade-group-list{gap:7px;display:grid}.grade-group-row{border:1px solid var(--glass-line);background:color-mix(in srgb, var(--surface) 72%, transparent);border-radius:12px;grid-template-columns:minmax(0,1fr) auto;align-items:end;gap:8px;padding:10px;display:grid}.grade-group-rename-form,.grade-group-create-form{grid-template-columns:minmax(180px,1fr) 78px auto;align-items:end;gap:8px;min-width:0;display:grid}.grade-group-name-field,.grade-group-sort-field{min-width:0;color:var(--tw-foreground-718087);letter-spacing:.06em;text-transform:uppercase;gap:5px;font:750 8px/1.2 ui-monospace,monospace;display:grid}.grade-group-name-field input,.grade-group-sort-field input{border:1px solid color-mix(in srgb, var(--main-border) 17%, transparent);background:color-mix(in srgb, var(--surface) 88%, var(--tw-surface-rgba-255-255-255-72));width:100%;min-width:0;min-height:38px;color:var(--ink);letter-spacing:0;text-transform:none;border-radius:9px;padding:8px 10px;font-size:12px;font-weight:550}.grade-group-name-field input:focus,.grade-group-sort-field input:focus{border-color:var(--accent-border);outline:3px solid color-mix(in srgb, var(--accent) 11%, transparent)}.grade-group-rename-form button,.grade-group-create-form button,.grade-group-delete-form button{min-height:38px}.grade-group-delete-form{align-self:end}.grade-group-create-form{border:1px dashed color-mix(in srgb, var(--accent-border) 28%, var(--glass-line));background:color-mix(in srgb, var(--accent) 4%, transparent);border-radius:12px;grid-template-columns:minmax(180px,1fr) 78px auto;padding:11px}.grade-group-create-form .primary{min-width:104px}.grade-level-assign-section{border-top:1px solid var(--line);margin-top:18px;padding-top:16px}.grade-level-assign-grid{grid-template-columns:repeat(auto-fill,minmax(128px,1fr));gap:8px;margin-top:10px;display:grid}.grade-level-assign-form{border:1px solid var(--glass-line);background:color-mix(in srgb, var(--surface) 72%, transparent);border-radius:11px;flex-direction:column;gap:6px;padding:9px 10px 10px;transition:border-color .16s,background-color .16s;display:flex}.grade-level-assign-form:focus-within{border-color:color-mix(in srgb, var(--accent-border) 38%, var(--glass-line));background:color-mix(in srgb, var(--accent) 5%, var(--surface))}.grade-level-assign-label{color:var(--accent-foreground);letter-spacing:.07em;text-transform:uppercase;font:750 8px/1.2 ui-monospace,monospace}.grade-level-assign-form select{border:1px solid color-mix(in srgb, var(--main-border) 16%, transparent);background:color-mix(in srgb, var(--surface) 90%, var(--tw-surface-rgba-255-255-255-72));width:100%;min-height:36px;color:var(--ink);border-radius:9px;padding:0 9px;font-size:12px;font-weight:600}.grade-level-assign-form select:focus{border-color:var(--accent-border);outline:0}.link-button{white-space:nowrap;justify-content:center;align-items:center;text-decoration:none;display:inline-flex}.assessment-page{max-width:1240px}.header-actions{align-items:center;gap:9px;display:flex}.retest-request-actions{flex-wrap:wrap;align-items:center;gap:9px;display:flex}.retest-approve-form{align-items:center;gap:6px;display:flex}.retest-approve-form select{max-width:220px}.assessment-workspace-tabs,.assessment-detail-tabs{border:1px solid var(--tw-border-d6e1df);background:var(--tw-surface-f0f5f3);border-radius:13px;gap:6px;margin-bottom:18px;padding:6px;display:flex}.assessment-workspace-tabs{width:fit-content}.assessment-workspace-tabs a,.assessment-detail-tabs a{min-width:180px;color:var(--tw-foreground-64777b);border-radius:9px;padding:10px 14px;text-decoration:none;position:relative}.assessment-workspace-tabs span,.assessment-workspace-tabs small,.assessment-detail-tabs span,.assessment-detail-tabs small{display:block}.assessment-workspace-tabs span,.assessment-detail-tabs span{font-size:12px;font-weight:750}.assessment-workspace-tabs small,.assessment-detail-tabs small{color:var(--tw-foreground-839194);margin-top:2px;font-size:9px}.assessment-detail-tabs a[aria-disabled=true]{opacity:.5;pointer-events:none}.assessment-detail-tabs b{background:var(--tw-surface-f2ad52);min-width:19px;height:19px;color:var(--tw-foreground-5c3d18);border-radius:999px;place-items:center;padding:0 5px;font:700 8px ui-monospace,monospace;display:grid;position:absolute;top:8px;right:9px}.responses-tab-panel{margin-top:0}.response-workspace .section-title{align-items:center}.response-workspace .section-title>div:first-child{max-width:700px}.response-filter-links{background:var(--tw-surface-edf3f1);border-radius:10px;gap:5px;padding:4px;display:flex}.response-filter-links a{color:var(--tw-foreground-65777a);border-radius:7px;padding:7px 9px;font-size:10px;font-weight:700;text-decoration:none}.response-filter-links a.active{background:var(--tw-surface-white);color:var(--tw-foreground-256a64);box-shadow:0 2px 8px var(--tw-shadow-rgba-30-60-66-07)}.assessment-workspace-header{flex-wrap:wrap;align-items:center;gap:12px;margin-bottom:18px;display:flex}.assessment-workspace-header .assessment-workspace-tabs{margin-bottom:0}.assessment-view-toggle{width:fit-content;margin-left:auto}.assessment-view-toggle a{place-items:center;padding:7px 10px;display:grid}.response-workspace-list .submission-row{border-radius:10px;padding:16px 10px}.response-workspace-list .submission-row:hover{background:var(--tw-surface-f6faf8)}.assessment-setup-card{box-shadow:0 12px 35px var(--tw-shadow-rgba-31-58-66-05);border-radius:18px;padding:0;overflow:hidden}.assessment-setup-heading{border-bottom:1px solid var(--tw-border-e4ecea);background:linear-gradient(120deg, var(--tw-surface-f7fbfa) 0%, var(--tw-surface-fff) 70%);align-items:center;gap:16px;padding:24px 28px;display:flex}.assessment-setup-heading .setup-step{background:var(--navy);width:44px;height:44px;color:var(--tw-foreground-8fe0d4);box-shadow:0 7px 18px var(--tw-shadow-rgba-24-57-71-18);border-radius:13px;flex:none;place-items:center;font:700 12px ui-monospace,monospace;display:grid}.assessment-setup-heading .eyebrow{color:var(--tw-foreground-438079);margin-bottom:5px}.assessment-setup-heading h2{font:600 26px/1.1 var(--font-heading);letter-spacing:-.6px;margin:0}.assessment-setup-heading p:last-child{color:var(--muted);margin:6px 0 0;font-size:12px}.assessment-setup-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:20px 22px;padding:26px 28px 30px;display:grid}.setup-field{min-width:0;color:var(--tw-foreground-3d5960);align-content:start;gap:7px;font-size:12px;font-weight:700;display:grid}.setup-field>span,.assessment-kind-picker legend{color:var(--tw-foreground-37555c);letter-spacing:.01em;font-size:11px;font-weight:750}.setup-field input,.setup-field select,.setup-field textarea{border:1px solid var(--tw-border-cddbd8);background:var(--tw-surface-fff);width:100%;min-height:44px;color:var(--ink);border-radius:10px;padding:10px 12px;transition:border-color .15s,box-shadow .15s,background .15s}.setup-field input:hover,.setup-field select:hover,.setup-field textarea:hover{border-color:var(--tw-border-9ebdb8)}.setup-field input:focus,.setup-field select:focus,.setup-field textarea:focus{border-color:var(--tw-border-4d9d93);box-shadow:0 0 0 4px var(--tw-shadow-rgba-77-157-147-12);outline:0}.setup-title-field input{font-size:15px;font-weight:600}.assessment-kind-picker{border:0;min-width:0;margin:0;padding:0}.assessment-kind-picker legend{margin-bottom:7px}.assessment-kind-picker>div{grid-template-columns:repeat(3,minmax(0,1fr));gap:7px;display:grid}.assessment-kind-picker label{border:1px solid var(--tw-border-d5e0de);background:var(--tw-surface-fff);cursor:pointer;border-radius:10px;grid-template-columns:30px minmax(0,1fr);align-items:center;gap:8px;min-height:44px;padding:7px 9px;transition:border-color .15s,background .15s,transform .15s;display:grid;position:relative}.assessment-kind-picker label:hover{border-color:var(--tw-border-8dbab3);transform:translateY(-1px)}.assessment-kind-picker label:has(input:checked){border-color:var(--tw-border-4a9e93);background:var(--tw-surface-edf8f5);box-shadow:inset 0 0 0 1px var(--tw-shadow-4a9e93)}.assessment-kind-picker input{opacity:0;pointer-events:none;position:absolute}.kind-icon{background:var(--tw-surface-edf2f1);width:28px;height:28px;color:var(--tw-foreground-536c70);border-radius:8px;place-items:center;font-size:12px;display:grid}.assessment-kind-picker label:has(input:checked) .kind-icon{background:var(--tw-surface-147a75);color:var(--tw-foreground-white)}.assessment-kind-picker strong,.assessment-kind-picker small{min-width:0;display:block}.assessment-kind-picker strong{color:var(--tw-foreground-29464d);font-size:11px}.assessment-kind-picker small{color:var(--tw-foreground-829093);text-overflow:ellipsis;white-space:nowrap;font-size:8px;font-weight:500;overflow:hidden}.setup-section-label{border-top:1px solid var(--tw-border-e8eeed);grid-column:1/-1;align-items:baseline;gap:9px;margin:2px 0 -8px;padding-top:18px;display:flex}.setup-section-label>span{color:var(--tw-foreground-31545a);font-size:12px;font-weight:750}.setup-section-label small{color:var(--tw-foreground-879598);font-size:10px}.setup-field .field-hint{color:var(--tw-foreground-819093);margin:0;font-size:10px;font-weight:400}.homeroom-multiselect{border:0;min-width:0;margin:0}.setup-audience{border:1px solid var(--tw-border-d7e2e0);background:var(--tw-surface-f8fbfa);border-radius:14px;grid-column:1/-1;padding:17px}.setup-audience-heading{justify-content:space-between;align-items:center;gap:20px;margin-bottom:13px;display:flex}.setup-audience-heading>div:first-child>span,.setup-schedule-heading strong{color:var(--tw-foreground-31545a);font-size:12px;font-weight:750;display:block}.setup-audience-heading small,.setup-schedule-heading small{color:var(--tw-foreground-819093);margin-top:3px;font-size:10px;display:block}.setup-audience-heading>div:last-child{align-items:center;gap:11px;display:flex}.selection-count{background:var(--tw-surface-e2f1ed);color:var(--tw-foreground-26736a);white-space:nowrap;border-radius:999px;padding:5px 8px;font:700 9px ui-monospace,monospace}.link-code-tree{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px 14px;display:grid}.link-code-tree-toolbar{flex-wrap:wrap;grid-column:1/-1;justify-content:space-between;align-items:center;gap:12px;margin-bottom:4px;display:flex}.link-code-tree-toolbar input[type=search]{border:1px solid var(--line);background:var(--tw-surface-white);min-width:200px;color:var(--ink);border-radius:8px;flex:1;padding:9px 12px}.link-code-tree-toolbar-actions{gap:8px;display:flex}.link-code-tree-grade,.link-code-tree-homeroom{border:1px solid var(--line);border-radius:var(--radius-sm);background:var(--tw-surface-white);align-self:start}.link-code-tree-grade--solo{grid-column:1/-1}.link-code-tree-grade>summary,.link-code-tree-homeroom>summary{cursor:pointer;align-items:center;gap:10px;padding:12px 14px;list-style:none;display:flex}.link-code-tree-grade>summary::-webkit-details-marker{display:none}.link-code-tree-homeroom>summary::-webkit-details-marker{display:none}.link-code-tree-grade>summary:before,.link-code-tree-homeroom>summary:before{content:"▸";color:var(--muted);font-size:10px;transition:transform .15s}.link-code-tree-grade[open]>summary:before,.link-code-tree-homeroom[open]>summary:before{transform:rotate(90deg)}.link-code-tree-label{color:var(--ink);flex:1;font-weight:650}.link-code-tree-grade .link-code-tree-label{font-size:14px}.link-code-tree-homeroom .link-code-tree-label{font-size:13px;font-weight:600}.link-code-tree-count{color:var(--muted);white-space:nowrap;font:700 10px ui-monospace,monospace}.link-code-tree-homerooms{gap:8px;padding:0 12px 12px;display:grid}.link-code-tree-homeroom{background:var(--tw-surface-rgba-255-255-255-62)}.link-code-tree-students{grid-template-columns:repeat(auto-fill,minmax(180px,1fr));gap:4px 12px;margin:0;padding:0 14px 12px;list-style:none;display:grid}.link-code-tree-student-row{color:var(--ink);cursor:pointer;align-items:center;gap:8px;padding:6px 0;font-size:12.5px;display:flex}.link-code-tree-footer{border:1px solid var(--line);border-radius:var(--radius-sm);background:var(--glass);box-shadow:var(--glass-shadow);-webkit-backdrop-filter:blur(24px)saturate(145%);backdrop-filter:blur(24px)saturate(145%);grid-column:1/-1;justify-content:space-between;align-items:center;gap:16px;margin-top:10px;padding:14px 16px;display:flex;position:sticky;bottom:0}.link-code-tree>p{grid-column:1/-1}@media (max-width:640px){.link-code-tree{grid-template-columns:1fr}}.text-button.muted{color:var(--tw-foreground-839092)}.homeroom-option-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;display:grid}.homeroom-option-grid label{border:1px solid var(--tw-border-d9e3e1);background:var(--tw-surface-white);min-height:42px;color:var(--tw-foreground-3e565c);cursor:pointer;border-radius:10px;grid-template-columns:20px minmax(0,1fr);align-items:center;gap:8px;padding:8px 10px;font-size:11px;font-weight:650;transition:border-color .15s,background .15s,transform .15s;display:grid;position:relative}.homeroom-option-grid label:hover{border-color:var(--tw-border-9cbfb9);transform:translateY(-1px)}.homeroom-option-grid label:has(input:checked){border-color:var(--tw-border-4d9e94);background:var(--tw-surface-edf8f5);color:var(--tw-foreground-245f59)}.homeroom-option-grid input{opacity:0;pointer-events:none;position:absolute}.homeroom-check{border:1px solid var(--tw-border-bdccca);background:var(--tw-surface-fff);color:#0000;border-radius:6px;place-items:center;width:20px;height:20px;font-size:11px;display:grid}.homeroom-option-grid label:has(input:checked) .homeroom-check{border-color:var(--tw-border-23877d);background:var(--tw-surface-23877d);color:var(--tw-foreground-white)}.setup-schedule{border:1px solid var(--tw-border-dce5e3);background:var(--tw-surface-fbfcfc);border-radius:14px;grid-column:1/-1;grid-template-columns:minmax(185px,.7fr) minmax(0,1fr) 24px minmax(0,1fr);align-items:end;gap:14px;padding:17px;display:grid}.setup-schedule-heading{align-self:center;align-items:center;gap:10px;display:flex}.setup-time-limit{grid-column:2/-1;max-width:320px}.schedule-icon{background:var(--tw-surface-e6f2ef);width:34px;height:34px;color:var(--tw-foreground-28786f);border-radius:10px;flex:none;place-items:center;font-size:17px;display:grid}.schedule-arrow{color:var(--tw-foreground-91a29f);text-align:center;align-self:center}.setup-field>span small{color:var(--tw-foreground-89979a);margin-left:4px;font-size:9px;font-weight:500}.setup-instructions{grid-column:1/-1}.setup-instructions textarea{resize:vertical;min-height:90px}.paper-record-setup{grid-template-columns:minmax(185px,.72fr) repeat(3,minmax(0,1fr))}.paper-retest-note{border:1px solid var(--tw-border-d7e2e0);background:var(--tw-surface-f8fbfa);border-radius:11px;grid-column:1/-1;margin:0;padding:13px 15px}.optional-label{color:var(--tw-foreground-89979a);margin-left:4px;font-weight:400}.assessment-question-list{gap:18px;margin-bottom:18px;display:grid}.question-editor,.student-question{background:var(--tw-surface-white);border:1px solid var(--line);border-radius:12px;padding:25px}.question-editor-header,.student-question header{justify-content:space-between;align-items:start;gap:18px;display:flex}.question-editor-header h3{font:600 22px/1.1 var(--font-heading);margin:4px 0 5px}.question-editor-header p{color:var(--muted);margin:0;font-size:12px}.question-number,.student-question header span{color:var(--tw-foreground-36766f);letter-spacing:.8px;font:10px ui-monospace,monospace}.question-actions{gap:7px;display:flex}.secondary.compact{padding:7px 10px}.question-base-fields{grid-template-columns:minmax(0,1fr) 110px 110px;align-items:end;gap:13px;margin:22px 0;display:grid}.question-base-fields label,.question-prompt-field>label,.choice-editor legend,.student-written-answer{color:var(--tw-foreground-456066);font-size:12px;font-weight:650}.question-base-fields label,.question-prompt-field{gap:6px;display:grid}.question-base-fields textarea,.question-base-fields input,.choice-row>input[type=text],.choice-row>input:not([type]){border:1px solid var(--tw-border-ccd9d7);background:var(--tw-surface-white);width:100%;color:var(--ink);border-radius:7px;padding:10px}.question-base-fields textarea{resize:vertical;min-height:90px}.question-base-fields .checkbox-label{align-items:center;gap:8px;min-height:40px;display:flex}.question-base-fields .checkbox-label input{width:auto}.choice-editor,.student-choice-list{border:0;margin:0;padding:0}.choice-editor legend{margin-bottom:11px}.choice-editor legend span{color:var(--tw-foreground-89979a);margin-left:5px;font-weight:400}.choice-row{grid-template-columns:20px minmax(0,1fr) auto;align-items:center;gap:10px;margin-bottom:9px;display:grid}.choice-row>input[type=radio],.choice-row>input[type=checkbox]{accent-color:var(--teal)}.written-preview{border:1px dashed var(--tw-border-cbd7d7);background:var(--tw-surface-fafcfb);border-radius:9px;padding:16px}.written-preview span{color:var(--tw-foreground-39756e);letter-spacing:.6px;text-transform:uppercase;margin-bottom:8px;font:10px ui-monospace,monospace;display:block}.written-preview div{color:var(--muted);font-size:13px}.add-question-panel,.builder-submit,.publish-bar,.submission-actions{justify-content:space-between;align-items:center;gap:20px;display:flex}.add-question-panel h2{font:600 23px/1.1 var(--font-heading);margin:0}.add-question-actions{flex-wrap:wrap;gap:9px;display:flex}.builder-submit,.publish-bar,.submission-actions{background:var(--tw-surface-e8f1ee);border:1px solid var(--tw-border-cadfda);border-radius:12px;padding:18px 20px}.builder-submit p,.publish-bar p,.submission-actions p{color:var(--tw-foreground-52656a);margin:0;font-size:12px}.assessment-authoring-header{grid-template-columns:minmax(0,1fr) auto;align-items:end;gap:36px;margin-bottom:30px;display:grid}.authoring-heading .text-link{margin-bottom:24px;display:inline-block}.authoring-heading h1{font:700 clamp(32px, 4vw, 46px)/1.04 var(--font-heading);letter-spacing:-1.5px;margin:0}.authoring-heading>p:last-child{max-width:700px;color:var(--muted);margin:10px 0 0;font-size:14px;line-height:1.55}.paper-authoring-aside{justify-items:end;gap:12px;display:grid}.paper-authoring-aside .secondary{min-height:36px;padding:8px 12px;font-size:11px}.authoring-progress{border:1px solid var(--tw-border-d7e2e0);background:var(--tw-surface-white);box-shadow:0 8px 24px var(--tw-shadow-rgba-30-56-64-05);border-radius:14px;align-items:center;padding:12px 15px;display:flex}.authoring-progress>span{justify-items:center;gap:5px;min-width:68px;display:grid}.authoring-progress b{border:1px solid var(--tw-border-cbd8d6);width:27px;height:27px;color:var(--tw-foreground-879396);border-radius:50%;place-items:center;font:700 10px ui-monospace,monospace;display:grid}.authoring-progress .active b{border-color:var(--tw-border-2a8c82);background:var(--tw-surface-147a75);color:var(--tw-foreground-white)}.authoring-progress small{color:var(--tw-foreground-839093);white-space:nowrap;font-size:9px;font-weight:650}.authoring-progress .active small{color:var(--tw-foreground-2d5f5b)}.authoring-progress i{background:var(--tw-surface-d9e2e1);width:25px;height:1px;margin:0 2px 17px}.lesson-plan-wizard-steps{border:1px solid var(--tw-border-d7e2e0);background:var(--tw-surface-white);box-shadow:0 8px 24px var(--tw-shadow-rgba-30-56-64-05);border-radius:14px;align-items:center;margin-bottom:20px;padding:12px 15px;display:flex}.lesson-plan-wizard-steps>span{justify-items:center;gap:5px;min-width:68px;display:grid}.lesson-plan-wizard-steps b{border:1px solid var(--tw-border-cbd8d6);width:27px;height:27px;color:var(--tw-foreground-879396);border-radius:50%;place-items:center;font:700 10px ui-monospace,monospace;display:grid}.lesson-plan-wizard-steps .active b{border-color:var(--tw-border-2a8c82);background:var(--tw-surface-147a75);color:var(--tw-foreground-white)}.lesson-plan-wizard-steps .done b{border-color:var(--tw-border-2a8c82);color:var(--tw-foreground-2d5f5b)}.lesson-plan-wizard-steps small{color:var(--tw-foreground-839093);white-space:nowrap;font-size:9px;font-weight:650}.lesson-plan-wizard-steps .active small,.lesson-plan-wizard-steps .done small{color:var(--tw-foreground-2d5f5b)}.lesson-plan-wizard-steps i{background:var(--tw-surface-d9e2e1);width:25px;height:1px;margin:0 2px 17px}.lesson-plan-wizard-nav{justify-content:space-between;align-items:center;gap:12px;margin-top:16px;display:flex}.lesson-plan-wizard-instance-links{flex-wrap:wrap;gap:8px;display:flex}.lesson-plan-detail-body{flex-direction:column;display:flex}.lesson-plan-detail-body>form.lesson-plan-builder{display:contents}.lesson-plan-detail-body .lesson-plan-instance-scheduler{order:8}.lesson-plan-detail-body .lesson-plan-linked-assessments{order:9}.lesson-plan-detail-body .lesson-plan-builder-submit{order:10}.lesson-plan-instance-add-form .secondary.compact{margin-top:8px}.builder-section-heading{justify-content:space-between;align-items:center;gap:24px;margin:34px 2px 16px;display:flex}.builder-section-heading>div{align-items:center;gap:13px;display:flex}.builder-step-number{background:var(--navy);width:42px;height:42px;color:var(--tw-foreground-8fe0d4);border-radius:12px;place-items:center;font:700 11px ui-monospace,monospace;display:grid}.builder-section-heading .eyebrow{margin-bottom:4px}.builder-section-heading h2{font:600 24px/1.1 var(--font-heading);margin:0}.builder-section-heading p:last-child{color:var(--muted);margin:5px 0 0;font-size:11px}.question-tally{background:var(--tw-surface-e8f3f0);color:var(--tw-foreground-33726c);white-space:nowrap;border-radius:999px;padding:7px 10px;font:700 9px ui-monospace,monospace}.question-editor{box-shadow:0 9px 28px var(--tw-shadow-rgba-31-58-66-045);border-radius:17px;padding:0;overflow:hidden}.question-editor-header{border-bottom:1px solid var(--tw-border-e6eceb);background:linear-gradient(115deg, var(--tw-surface-f8fbfa), var(--tw-surface-fff) 72%);padding:20px 22px}.question-editor-identity{grid-template-columns:34px 42px minmax(0,1fr);align-items:center;gap:10px;display:grid}.question-sequence{background:var(--navy);width:32px;height:32px;color:var(--tw-foreground-white);border-radius:10px;place-items:center;font:700 11px ui-monospace,monospace;display:grid}.question-format-icon{background:var(--tw-surface-e4f2ef);width:40px;height:40px;color:var(--tw-foreground-1e776e);border-radius:11px;place-items:center;font:700 12px ui-monospace,monospace;display:grid}.question-editor-header h3{margin:3px 0 4px;font-size:20px}.question-editor-header p{max-width:600px;font-size:11px}.question-actions{align-items:center}.question-move-actions{gap:5px;display:flex}.scoring-mode{white-space:nowrap;border-radius:999px;padding:6px 8px;font:700 8px ui-monospace,monospace}.scoring-mode.automatic{background:var(--tw-surface-dff2eb);color:var(--tw-foreground-17634f)}.scoring-mode.manual{background:var(--tw-surface-faeee0);color:var(--tw-foreground-8a5d27)}.question-base-fields{border-bottom:1px solid var(--tw-border-edf1f0);background:var(--tw-surface-fff);grid-template-columns:minmax(0,1fr) 115px 150px;margin:0;padding:20px 22px}.question-base-fields textarea{border-radius:10px;min-height:100px;padding:12px}.question-points-field{align-self:start}.question-points-field .field-hint{margin:0;font-size:9px}.required-toggle{border:1px solid var(--tw-border-dce5e3);background:var(--tw-surface-fafcfc);cursor:pointer;border-radius:10px;grid-template-columns:34px minmax(0,1fr);align-self:start;align-items:center;margin-top:20px;padding:9px 10px;position:relative;gap:9px!important;display:grid!important}.required-toggle>input{opacity:0;pointer-events:none;position:absolute}.toggle-track{background:var(--tw-surface-c7d2d1);border-radius:999px;width:32px;height:19px;transition:background .15s;position:relative}.toggle-track:after{content:"";background:var(--tw-surface-white);width:13px;height:13px;box-shadow:0 1px 4px var(--tw-shadow-rgba-0-0-0-18);border-radius:50%;transition:transform .15s;position:absolute;top:3px;left:3px}.required-toggle:has(input:checked){border-color:var(--tw-border-a9d3cc);background:var(--tw-surface-f0f8f6)}.required-toggle:has(input:checked) .toggle-track{background:var(--tw-surface-278b81)}.required-toggle:has(input:checked) .toggle-track:after{transform:translate(13px)}.required-toggle strong,.required-toggle small{display:block}.required-toggle strong{color:var(--tw-foreground-36555b);font-size:10px}.required-toggle small{color:var(--tw-foreground-879497);margin-top:2px;font-size:8px;font-weight:400}.question-editor>.choice-editor,.question-editor>.rich-format-editor,.question-editor>.response-format-preview,.question-editor>.numeric-answer-editor,.question-editor>.question-media-field{margin:0;padding:20px 22px 22px}.response-format-preview{background:var(--tw-surface-fbfcfc);grid-template-columns:42px minmax(0,1fr) auto;align-items:center;gap:13px;display:grid}.response-preview-icon{background:var(--tw-surface-e1f0ec);width:40px;height:40px;color:var(--tw-foreground-1d756c);border-radius:11px;place-items:center;font-size:17px;display:grid}.response-format-preview strong{color:var(--tw-foreground-315158);font-size:12px}.response-format-preview p{color:var(--tw-foreground-748588);margin:4px 0 0;font-size:10px;line-height:1.45}.response-preview-field{border:1px dashed var(--tw-border-b8cbc7);background:var(--tw-surface-white);min-width:150px;color:var(--tw-foreground-8b989a);text-align:center;border-radius:9px;padding:11px 13px;font-size:10px}.publish-bar{margin-top:18px}.publish-bar strong{margin-bottom:4px;display:block}.assessment-manager-actions{gap:12px;margin-top:18px;display:grid}.assessment-manager-actions .publish-bar{margin-top:0}.destructive-bar{background:var(--tw-surface-fff5f3);border:1px solid var(--tw-border-edc7c1);border-radius:12px;justify-content:space-between;align-items:center;gap:20px;padding:18px 20px;display:flex}.destructive-bar strong{margin-bottom:4px;display:block}.destructive-bar p{color:var(--tw-foreground-75534f);margin:0;font-size:12px}.unpublish-bar{background:var(--tw-surface-f3f0e9);border-color:var(--tw-border-e2d7bf)}.lock-bar{background:var(--tw-surface-eef2f8);border-color:var(--tw-border-cdd8e8)}.assessment-filter-form{grid-template-columns:repeat(auto-fit,minmax(160px,1fr));align-items:end;gap:12px;margin-bottom:16px;display:grid}.assessment-filter-form label{color:var(--muted);gap:6px;font-size:11px;font-weight:700;display:grid}.assessment-filter-form select{border:1px solid var(--tw-border-ccd9d7);background:var(--tw-surface-white);width:100%;min-width:0;min-height:42px;color:var(--ink);border-radius:8px;padding:9px 10px}.assessment-filter-form .assessment-filter-clear{min-height:42px}.assessment-card-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;display:grid}.assessment-card{background:var(--tw-surface-white);border:1px solid var(--line);min-height:190px;color:inherit;border-radius:12px;padding:22px;text-decoration:none;transition:transform .15s,border-color .15s;display:block}.assessment-card:hover{border-color:var(--tw-border-91bbb5);transform:translateY(-2px)}.assessment-card-top,.assessment-card-meta{justify-content:space-between;align-items:center;gap:12px;display:flex}.assessment-card-top>span:last-child{color:var(--tw-foreground-78868a);text-transform:uppercase;font:10px ui-monospace,monospace}.assessment-card h2{font:600 22px/1.15 var(--font-heading);margin:26px 0 7px}.assessment-card>p{color:var(--muted);margin:0;font-size:13px}.assessment-card-meta{color:var(--tw-foreground-718087);margin-top:25px;font-size:11px}.status-pill{background:var(--tw-surface-edf2f1);color:var(--tw-foreground-52666a);text-transform:uppercase;border-radius:999px;padding:6px 9px;font:700 10px ui-monospace,monospace;display:inline-flex}.status-pill.published{background:var(--tw-surface-def1ea);color:var(--tw-foreground-1d6b57)}.status-pill.submitted{background:var(--tw-surface-e2edf6);color:var(--tw-foreground-315f80)}.status-pill.closed,.status-pill.locked{background:var(--tw-surface-efecec);color:var(--tw-foreground-6e5e5e)}.status-pill.pending{background:var(--tw-surface-faeee0);color:var(--tw-foreground-8a5d27)}.status-pill.reviewed{background:var(--tw-surface-e8f1ee);color:var(--tw-foreground-327169)}.status-pill.released,.status-pill.ok{background:var(--tw-surface-dff2eb);color:var(--tw-foreground-17634f)}.status-pill.warning{background:var(--tw-surface-faeee0);color:var(--tw-foreground-8a5d27)}.status-pill.blocked{background:var(--tw-surface-fff1ef);color:var(--tw-foreground-8a352b)}.status-pill.vacation-work{background:color-mix(in srgb, var(--muted) 16%, transparent);color:var(--muted)}.status-pill.done{background:var(--tw-surface-dff2eb);color:var(--tw-foreground-17634f)}.status-pill.failed{background:var(--tw-surface-fff1ef);color:var(--tw-foreground-8a352b)}.status-pill.unsupported{background:var(--tw-surface-efecec);color:var(--tw-foreground-6e5e5e)}.resource-workspace{position:relative}.resource-workspace.drag-active{outline:2px dashed var(--accent-border);outline-offset:-8px;border-radius:18px}.resource-drop-overlay{z-index:5;background:color-mix(in srgb, var(--accent) 10%, var(--surface) 88%);pointer-events:none;color:var(--accent-foreground);border-radius:18px;flex-direction:column;justify-content:center;align-items:center;gap:8px;font-size:14px;font-weight:700;display:flex;position:absolute;inset:0}.resource-search-bar{flex-wrap:wrap;align-items:center;gap:10px;margin-bottom:14px;display:flex}.resource-search-input{border:1px solid var(--tw-border-ccd9d7);background:var(--tw-surface-white);min-width:180px;min-height:40px;color:var(--tw-foreground-718087);border-radius:9px;flex:1;align-items:center;gap:8px;padding:0 12px;display:flex}.resource-search-input input{appearance:none;color:var(--ink);background:0 0;border:0;flex:1;padding:0;font-size:13px;border-radius:0!important}.resource-search-bar select{border:1px solid var(--tw-border-ccd9d7);background:var(--tw-surface-white);min-height:40px;color:var(--ink);border-radius:9px;padding:7px 10px;font-size:12px}.resource-search-scope{border:1px solid var(--tw-border-ccd9d7);border-radius:9px;display:flex;overflow:hidden}.resource-search-scope button{background:var(--tw-surface-white);min-height:40px;color:var(--tw-foreground-718087);cursor:pointer;white-space:nowrap;border:0;padding:0 12px;font-size:12px;font-weight:650}.resource-search-scope button+button{border-left:1px solid var(--tw-border-ccd9d7)}.resource-search-scope button.active{background:var(--tw-surface-edf8f5);color:var(--tw-foreground-245f59)}.resource-breadcrumbs{color:var(--tw-foreground-718087);align-items:center;gap:6px;margin-bottom:16px;font-size:12px;font-weight:650;display:flex}.resource-breadcrumbs button{color:var(--tw-foreground-718087);font:inherit;cursor:pointer;background:0 0;border:0;padding:2px 0}.resource-breadcrumbs button:not(:disabled):hover{color:var(--tw-foreground-245f59);text-decoration:underline}.resource-breadcrumbs button:disabled{color:var(--ink);cursor:default}.resource-breadcrumbs svg{color:var(--tw-foreground-89979a)}.resource-folder-grid{grid-template-columns:repeat(auto-fill,minmax(160px,1fr));gap:12px;margin-bottom:18px;display:grid}.resource-folder-tile{border:1px solid var(--tw-border-d9e3e1);background:var(--tw-surface-white);min-height:88px;color:var(--tw-foreground-3e565c);text-align:left;cursor:pointer;border-radius:12px;flex-direction:column;padding:14px;transition:border-color .15s,background .15s,transform .15s;display:flex}.resource-folder-tile:hover{border-color:var(--tw-border-9cbfb9);background:var(--tw-surface-f8fbfa);transform:translateY(-1px)}.resource-folder-tile.drag-over{border-color:var(--accent-border);background:color-mix(in srgb, var(--accent) 12%, var(--surface) 88%);transform:translateY(-1px)}.resource-folder-tile button{width:100%;color:inherit;font:inherit;text-align:left;cursor:pointer;background:0 0;border:0;flex-direction:column;align-items:flex-start;gap:6px;padding:0;display:flex}.resource-folder-tile svg{color:var(--tw-foreground-245f59)}.resource-folder-tile span{font-size:13px;font-weight:700}.resource-folder-tile small{color:var(--tw-foreground-89979a);font-size:10px;font-weight:500}.resource-file-list{flex-direction:column;display:flex}.resource-file-row{border-radius:9px;align-items:center;gap:10px;padding:9px 10px;display:flex;position:relative}.resource-file-row:hover,.resource-file-row.is-renaming,.resource-file-row:focus-within{background:var(--tw-surface-rgba-255-255-255-28)}.resource-file-icon{flex:none}.resource-file-icon.pdf{color:var(--tw-foreground-8a352b)}.resource-file-icon.docx{color:var(--tw-foreground-315f80)}.resource-file-icon.markdown{color:var(--tw-foreground-8a5527)}.resource-file-icon.text{color:var(--tw-foreground-89979a)}.resource-file-main{flex-direction:column;flex:1;min-width:0;display:flex}.resource-file-main .text-link{text-align:left;font-size:13px;font-weight:700}.resource-file-meta{opacity:0;max-height:0;color:var(--tw-foreground-89979a);white-space:nowrap;text-overflow:ellipsis;font-size:11px;transition:opacity .12s,max-height .12s;display:block;overflow:hidden}.resource-file-meta.muted{color:var(--tw-foreground-89979a);font-style:italic}.resource-file-row:hover .resource-file-meta,.resource-file-row:focus-within .resource-file-meta,.resource-file-row.is-renaming .resource-file-meta{opacity:1;max-height:20px;margin-top:2px}.resource-file-row .status-pill.compact{opacity:0;flex:none;transition:opacity .12s}.resource-file-row:hover .status-pill.compact,.resource-file-row:focus-within .status-pill.compact{opacity:1}.resource-file-menu-trigger{width:28px;height:28px;color:var(--tw-foreground-89979a);opacity:0;cursor:pointer;background:0 0;border:0;border-radius:7px;flex:none;place-items:center;transition:opacity .12s,background .12s;display:grid}.resource-file-row:hover .resource-file-menu-trigger,.resource-file-row:focus-within .resource-file-menu-trigger{opacity:1}.resource-file-menu-trigger:hover{background:color-mix(in srgb, var(--accent) 10%, transparent);color:var(--ink)}.resource-rename-input{border:1px solid var(--tw-border-ccd9d7);background:var(--tw-surface-white);width:100%;max-width:320px;color:var(--ink);font:inherit;border-radius:6px;padding:4px 7px;font-size:13px;font-weight:700}.resource-folder-list{flex-direction:column;display:flex}.resource-folder-row button{width:100%;color:var(--tw-foreground-3e565c);font:inherit;text-align:left;cursor:pointer;background:0 0;border:0;border-radius:9px;align-items:center;gap:10px;padding:9px 10px;display:flex}.resource-folder-row button:hover{background:var(--tw-surface-rgba-255-255-255-28)}.resource-folder-row.drag-over{background:color-mix(in srgb, var(--accent) 14%, transparent);border-radius:9px}.resource-folder-row svg{color:var(--tw-foreground-245f59);flex:none}.resource-folder-row span{flex:1;font-size:13px;font-weight:700}.resource-folder-row small{color:var(--tw-foreground-89979a);font-size:10px;font-weight:500}.resource-file-grid{grid-template-columns:repeat(auto-fill,minmax(184px,1fr));gap:16px;display:grid}.resource-file-tile{border:1px solid var(--tw-border-d9e3e1);background:var(--tw-surface-white);text-align:left;border-radius:14px;flex-direction:column;padding:0;transition:border-color .15s,box-shadow .15s,transform .15s;display:flex;position:relative;overflow:hidden}.resource-file-tile:hover,.resource-file-tile:focus-within,.resource-file-tile.is-renaming{border-color:var(--tw-border-9cbfb9);box-shadow:0 10px 22px color-mix(in srgb, var(--ink) 10%, transparent);transform:translateY(-1px)}.resource-file-preview{background:var(--tw-surface-f8fbfa);border-bottom:1px solid var(--tw-border-d9e3e1);place-items:center;height:132px;display:grid;position:relative}.resource-file-preview .resource-file-icon{width:48px;height:48px}.resource-file-footer{padding:10px 12px 12px}.resource-file-tile .resource-file-main{min-width:0}.resource-file-tile .resource-file-main .text-link{-webkit-line-clamp:2;white-space:normal;word-break:break-word;-webkit-box-orient:vertical;font-size:13px;line-height:1.35;display:-webkit-box;overflow:hidden}.resource-file-tile .resource-file-menu-trigger{opacity:1;background:color-mix(in srgb, var(--tw-surface-white) 82%, transparent);position:absolute;top:8px;right:8px}.resource-file-tile .resource-file-menu-trigger:hover{background:var(--tw-surface-white)}.resource-file-tile .resource-rename-input{max-width:100%}.resource-context-menu{z-index:60;border:1px solid var(--glass-line);background:var(--glass);min-width:170px;box-shadow:var(--glass-shadow);-webkit-backdrop-filter:blur(20px)saturate(140%);backdrop-filter:blur(20px)saturate(140%);border-radius:10px;flex-direction:column;gap:2px;padding:6px;display:flex;position:fixed}.resource-context-menu form{display:contents}.resource-context-menu [role=menuitem]{width:100%;color:var(--ink);text-align:left;cursor:pointer;background:0 0;border:0;border-radius:7px;align-items:center;gap:8px;padding:8px 10px;font-size:12px;font-weight:650;text-decoration:none;display:flex}.resource-context-menu [role=menuitem]:hover{background:color-mix(in srgb, var(--accent) 8%, var(--surface))}.resource-context-menu [role=menuitem].danger{color:var(--tw-foreground-8a352b)}.resource-context-menu button[role=menuitem].danger:hover{background:color-mix(in srgb, var(--tw-foreground-8a352b) 10%, var(--surface))}.assessment-detail-header .status-pill,.assessment-detail-header .header-actions{margin-top:30px}.assessment-detail-header .header-actions .status-pill{margin-top:0}.assessment-overview{grid-template-columns:repeat(4,minmax(0,1fr));gap:18px;display:grid}.assessment-overview>div span{color:var(--tw-foreground-7c8b8f);text-transform:uppercase;margin-bottom:7px;font:10px ui-monospace,monospace;display:block}.assessment-overview>div strong{font-size:13px}.assessment-overview>p{color:var(--muted);border-top:1px solid var(--line);white-space:pre-wrap;grid-column:1/-1;margin:0;padding-top:17px;line-height:1.6}.assessment-preview-list,.assessment-submission-form{gap:18px;display:grid}.assessment-timer{z-index:5;border:1px solid var(--tw-border-cadfda);background:color-mix(in srgb, var(--tw-surface-e8f1ee) 94%, transparent);-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);border-radius:14px;justify-content:space-between;align-items:center;gap:20px;padding:14px 18px;display:flex;position:sticky;top:16px;box-shadow:0 10px 30px #1543411f}.assessment-timer div{align-items:baseline;gap:12px;display:flex}.assessment-timer span{color:var(--muted);letter-spacing:.12em;font-size:10px;font-weight:800}.assessment-timer strong{font:700 24px/1 var(--font-heading);font-variant-numeric:tabular-nums}.assessment-timer p{color:var(--muted);margin:0;font-size:12px}.assessment-timer.urgent{border-color:color-mix(in srgb, #d15b4d 55%, var(--border));background:color-mix(in srgb, #d15b4d 10%, var(--surface));color:#b33c31}.student-question header strong{color:var(--tw-foreground-6f7e82);font-size:11px}.student-question h2{font:600 22px/1.35 var(--font-heading);white-space:pre-wrap;margin:20px 0}.student-choice-list{gap:10px;display:grid}.student-choice-list label{border:1px solid var(--tw-border-d8e2e1);color:var(--tw-foreground-40575d);cursor:pointer;border-radius:9px;grid-template-columns:20px minmax(0,1fr);align-items:center;gap:10px;padding:13px;display:grid}.student-choice-list label:has(input:checked){border-color:var(--tw-border-5ca99e);background:var(--tw-surface-edf7f4)}.student-choice-list input{accent-color:var(--teal)}.student-written-answer{gap:8px;display:grid}.student-written-answer textarea,.student-written-answer input{border:1px solid var(--tw-border-ccd9d7);border-radius:8px;padding:12px}.student-written-answer textarea{resize:vertical;min-height:150px}.student-written-answer.compact{max-width:420px}.student-written-answer.compact input{min-height:44px}.preview-options{gap:8px;display:grid}.preview-options>div{border:1px solid var(--tw-border-dde5e4);color:var(--tw-foreground-526369);border-radius:8px;padding:11px 13px;font-size:13px}.preview-options .correct-option{border-color:var(--tw-border-8dcbbb);background:var(--tw-surface-e8f5f0);color:var(--tw-foreground-276454);font-weight:650}.format-count{background:var(--tw-surface-eaf4f2);color:var(--tw-foreground-28736b);border-radius:999px;padding:7px 11px;font:700 10px ui-monospace,monospace}.format-picker-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;display:grid}.format-picker-card{text-align:left;border:1px solid var(--tw-border-d9e4e2);background:linear-gradient(145deg, var(--tw-surface-fff), var(--tw-surface-f8fbfa));min-height:92px;color:var(--ink);cursor:pointer;border-radius:14px;grid-template-columns:42px minmax(0,1fr) 24px;align-items:center;gap:12px;padding:14px;transition:transform .18s,border-color .18s,box-shadow .18s;display:grid}.format-picker-card:hover{border-color:var(--tw-border-79bdb4);box-shadow:0 10px 24px var(--tw-shadow-rgba-24-57-71-08);transform:translateY(-2px)}.format-picker-card strong,.format-picker-card small,.format-picker-card em{display:block}.format-picker-card strong{margin-bottom:5px;font-size:13px}.format-picker-card small{color:var(--muted);font-size:10px;line-height:1.35}.format-picker-card em{background:var(--tw-surface-edf3f1);width:fit-content;color:var(--tw-foreground-5f7778);text-transform:uppercase;border-radius:999px;margin-top:8px;padding:3px 6px;font:700 7px ui-monospace,monospace}.format-icon{background:var(--tw-surface-e5f2ef);width:42px;height:42px;color:var(--tw-foreground-166b63);border-radius:12px;place-items:center;font:800 13px ui-monospace,monospace;display:grid}.format-add{color:var(--tw-foreground-3f827a);font-size:19px}.question-library{border-radius:17px;padding:24px;display:block}.question-library .section-title{align-items:center}.question-library .section-title>div{max-width:720px}.builder-submit{z-index:12;border-color:var(--tw-border-315766);background:var(--tw-surface-rgba-24-57-71-97);color:var(--tw-foreground-white);box-shadow:0 16px 40px var(--tw-shadow-rgba-11-35-44-22);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border-radius:14px;grid-template-columns:38px minmax(0,1fr) auto;padding:13px 14px;display:grid;position:sticky;bottom:14px}.save-summary-icon{background:var(--tw-surface-2c665f);width:34px;height:34px;color:var(--tw-foreground-8ee0d3);border-radius:10px;place-items:center;font-size:14px;display:grid}.builder-submit strong{font-size:12px;display:block}.builder-submit p{color:var(--tw-foreground-b9ced1);margin-top:3px;font-size:10px}.builder-submit .primary{border-color:var(--tw-border-65c7b9);background:var(--tw-surface-66cabb);min-width:135px;color:var(--tw-foreground-123b3b)}.lesson-plan-builder-submit{grid-template-columns:38px minmax(0,1fr) auto}.lesson-plan-submit-actions{align-items:center;gap:8px;display:flex}.lesson-plan-card-body{padding:26px 28px 30px}.ai-import-trigger{text-align:right;flex-direction:column;flex:none;align-items:flex-end;gap:6px;margin-left:auto;display:flex}.ai-import-actions{flex-wrap:wrap;justify-content:flex-end;gap:8px;display:flex}.ai-import-button{justify-content:center;min-width:170px}.ai-import-trigger .field-hint{max-width:260px}.lesson-plan-objectives-list{gap:10px;margin:0 0 16px;display:grid}.lesson-plan-objective-row{border:1px solid var(--tw-border-e4ecea);background:var(--tw-surface-fff);border-radius:12px;grid-template-columns:28px minmax(0,1fr) auto auto;align-items:start;gap:10px;padding:10px;display:grid}.lesson-plan-objective-position{background:var(--tw-surface-e4f2ef);width:26px;height:26px;color:var(--tw-foreground-1e776e);border-radius:8px;place-items:center;margin-top:2px;font:700 11px ui-monospace,monospace;display:grid}.lesson-plan-objective-fields{gap:8px;min-width:0;display:grid}.lesson-plan-objective-fields input{border:1px solid var(--tw-border-cddbd8);background:var(--tw-surface-fff);width:100%;min-height:40px;color:var(--ink);border-radius:9px;padding:8px 11px}.lesson-plan-objective-meta{grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:8px;display:grid}.lesson-plan-objective-meta select,.lesson-plan-objective-meta input{border:1px solid var(--tw-border-cddbd8);border-radius:9px;min-height:36px;font-size:12px}.lesson-plan-objective-move-actions{flex-direction:column;gap:5px;display:flex}.lesson-plan-material-row{border:1px solid var(--tw-border-e4ecea);background:var(--tw-surface-fff);border-radius:12px;grid-template-columns:28px minmax(0,1fr) auto auto;align-items:start;gap:10px;padding:10px;display:grid}.lesson-plan-material-fields{grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:8px;min-width:0;display:grid}.lesson-plan-material-fields input{border:1px solid var(--tw-border-cddbd8);background:var(--tw-surface-fff);width:100%;min-height:40px;color:var(--ink);border-radius:9px;padding:8px 11px}.lesson-plan-material-linked{border:1px solid var(--tw-border-cddbd8);background:var(--surface-soft);border-radius:9px;justify-content:space-between;align-items:center;gap:8px;min-height:40px;padding:8px 11px;display:flex}.lesson-plan-header-actions{align-items:center;gap:8px;display:flex}.date-mismatch-badge{background:var(--tw-surface-faeee0);color:var(--tw-foreground-8a5527);border-radius:999px;margin-left:8px;padding:3px 8px;font:700 10px ui-monospace,monospace;display:inline-flex}.lesson-plan-differentiation-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;display:grid}@media (max-width:860px){.lesson-plan-differentiation-grid{grid-template-columns:1fr}}.period-occurrence-calendar{border:1px solid var(--line);background:var(--tw-surface-fff);border-radius:12px;gap:8px;padding:12px;display:grid}.period-occurrence-calendar-header{color:var(--ink);justify-content:space-between;align-items:center;gap:8px;font:700 13px inherit;display:flex}.period-occurrence-calendar-header button{padding:2px 8px;font-size:16px;line-height:1}.period-occurrence-calendar-weekdays{color:var(--muted);text-align:center;grid-template-columns:repeat(7,minmax(0,1fr));gap:4px;font:700 10px ui-monospace,monospace;display:grid}.period-occurrence-calendar-grid{grid-template-columns:repeat(7,minmax(0,1fr));gap:4px;display:grid}.period-occurrence-calendar-cell{min-height:44px;color:var(--tw-foreground-b3bcbe);border:1px solid #0000;border-radius:9px;place-items:center;padding:4px;font-size:12px;display:grid}.period-occurrence-calendar-cell.empty{visibility:hidden}.period-occurrence-calendar-cell.disabled{color:var(--tw-foreground-c7cfd1)}.period-occurrence-calendar-cell.available{border-color:color-mix(in srgb, var(--accent) 30%, var(--line));background:color-mix(in srgb, var(--accent) 6%, var(--tw-surface-fff));color:var(--ink);cursor:pointer;gap:2px}.period-occurrence-calendar-cell.available small{color:var(--accent-foreground);font:700 9px ui-monospace,monospace}.period-occurrence-calendar-cell.available:hover,.period-occurrence-calendar-cell.available:focus-visible{border-color:var(--accent);background:color-mix(in srgb, var(--accent) 14%, var(--tw-surface-fff))}.period-occurrence-calendar-cell.available.selected{border-color:var(--accent);background:var(--accent);color:var(--on-accent)}.period-occurrence-calendar-cell.available.selected small{color:var(--on-accent)}.period-occurrence-selection{color:var(--ink);margin:6px 0 0;font-size:12px;font-weight:700}.lesson-plan-duration-total{background:var(--tw-surface-edf2f1);color:var(--tw-foreground-52666a);border-radius:999px;align-self:start;margin:0 0 14px;padding:5px 10px;font:700 11px ui-monospace,monospace;display:inline-flex}.lesson-plan-duration-total.is-mismatch{background:var(--tw-surface-faeee0);color:var(--tw-foreground-8a5d27)}.lesson-plan-stage-list{gap:11px;margin:0 0 16px;display:grid}.lesson-plan-stage-card{border:1px solid var(--glass-line);background:color-mix(in srgb, var(--surface) 76%, transparent);box-shadow:0 7px 20px color-mix(in srgb, var(--ink) 5%, transparent);transition:transform .18s var(--ease-spring), opacity .18s ease, border-color .18s ease, box-shadow .18s ease;border-radius:15px;overflow:hidden}.lesson-plan-stage-card.is-dragging{z-index:2;border-color:color-mix(in srgb, var(--accent) 52%, var(--line));opacity:.8;box-shadow:0 16px 35px color-mix(in srgb, var(--accent) 16%, transparent);transform:scale(1.012)}.lesson-plan-stage-header{align-items:center;gap:10px;padding:10px 14px;display:flex}.lesson-plan-stage-grip{width:32px;height:32px;color:var(--muted);cursor:grab;touch-action:none;background:0 0;border:0;border-radius:10px;flex:none;place-items:center;padding:0;display:grid}.lesson-plan-stage-grip:active{cursor:grabbing}.lesson-plan-stage-grip svg{width:18px;height:18px}.lesson-plan-stage-identity{cursor:pointer;flex:1;align-items:center;gap:10px;min-width:0;display:flex}.lesson-plan-stage-identity h3{margin:0;font-size:14px}.lesson-plan-stage-badges{align-items:center;gap:6px;margin-top:4px;display:flex}.lesson-plan-duration-badge{background:var(--tw-surface-edf2f1);color:var(--tw-foreground-52666a);border-radius:999px;padding:3px 8px;font:700 10px ui-monospace,monospace;display:inline-flex}.lesson-plan-stage-body{border-top:1px solid var(--tw-border-e6eceb);padding:4px 18px 20px}.lesson-plan-stage-body .assessment-setup-grid{padding:16px 0 0}.question-media-field,.upload-format-preview{border:1px solid var(--tw-border-d8e5e2);background:var(--tw-surface-f5faf8);border-radius:13px;justify-content:space-between;align-items:center;gap:16px;margin:0 0 20px;padding:16px;display:flex}.question-media-copy,.upload-format-preview{justify-content:flex-start}.question-media-copy{flex:1;align-items:center;gap:12px;display:flex}.question-media-copy p,.upload-format-preview p{color:var(--muted);margin:4px 0 0;font-size:11px}.upload-format-icon{background:var(--tw-surface-dcefeb);width:38px;height:38px;color:var(--tw-foreground-126f67);border-radius:11px;flex:none;place-items:center;font-size:18px;display:grid}.question-media-preview{object-fit:cover;border:1px solid var(--tw-border-cbdad7);border-radius:10px;width:110px;height:76px}.question-media-field.has-media{border-color:var(--tw-border-a7d2ca);background:var(--tw-surface-f0f8f6)}.file-picker-button{border:1px solid var(--tw-border-9cc8c1);background:var(--tw-surface-white);color:var(--tw-foreground-176e67);cursor:pointer;white-space:nowrap;border-radius:9px;justify-content:center;align-items:center;padding:9px 12px;font-size:11px;font-weight:700;display:inline-flex}.file-picker-button input{opacity:0;pointer-events:none;width:1px;height:1px;position:absolute}.rich-format-editor{border:0;margin:0;padding:0}.rich-format-editor legend{color:var(--tw-foreground-456066);margin-bottom:13px;font-size:12px;font-weight:700}.rich-format-editor legend span{color:var(--tw-foreground-89979a);margin-left:5px;font-weight:400}.modern-choice-editor legend{color:var(--tw-foreground-405a60);margin-bottom:11px;font-size:11px}.answer-option-list,.accepted-answer-list,.matching-pair-list,.ordering-item-list{gap:8px;display:grid}.answer-option-row{border:1px solid var(--tw-border-dce5e3);background:var(--tw-surface-fbfcfc);border-radius:11px;grid-template-columns:76px 28px minmax(0,1fr) auto;align-items:center;gap:9px;padding:8px 10px;transition:border-color .15s,background .15s;display:grid}.answer-option-row.is-correct{border-color:var(--tw-border-71b3aa);background:var(--tw-surface-eef8f5)}.correct-answer-toggle{color:var(--tw-foreground-829092);cursor:pointer;grid-template-columns:22px minmax(0,1fr);align-items:center;gap:5px;display:grid;position:relative}.correct-answer-toggle input{opacity:0;pointer-events:none;position:absolute}.correct-answer-toggle>span{border:1px solid var(--tw-border-c5d2d0);background:var(--tw-surface-white);color:#0000;border-radius:7px;place-items:center;width:22px;height:22px;font-size:10px;display:grid}.correct-answer-toggle small{font-size:8px;font-weight:650}.answer-option-row.is-correct .correct-answer-toggle>span{border-color:var(--tw-border-25877d);background:var(--tw-surface-25877d);color:var(--tw-foreground-white)}.answer-option-row.is-correct .correct-answer-toggle small{color:var(--tw-foreground-27736b)}.answer-letter,.accepted-answer-row>span{background:var(--tw-surface-edf2f1);width:26px;height:26px;color:var(--tw-foreground-567076);border-radius:8px;place-items:center;font:700 10px ui-monospace,monospace;display:grid}.answer-option-row>input,.accepted-answer-row>input{border:1px solid var(--tw-border-cddbd8);background:var(--tw-surface-white);width:100%;min-width:0;color:var(--ink);border-radius:9px;padding:10px}.answer-option-row>input:focus,.accepted-answer-row>input:focus{border-color:var(--tw-border-5da59c);outline:3px solid var(--tw-border-rgba-93-165-156-12)}.answer-add-button{border-color:var(--tw-border-9ecac3);color:var(--tw-foreground-1e7169);margin-top:11px}.true-false-editor>div{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;display:grid}.true-false-editor>div>label{border:1px solid var(--tw-border-d8e3e1);background:var(--tw-surface-fbfcfc);cursor:pointer;border-radius:13px;grid-template-columns:38px minmax(0,1fr);align-items:center;gap:11px;min-height:70px;padding:13px;transition:transform .15s,border-color .15s,background .15s;display:grid;position:relative}.true-false-editor>div>label:hover{border-color:var(--tw-border-9cbfb9);transform:translateY(-1px)}.true-false-editor>div>label.selected{border-color:var(--tw-border-4b9e93);background:var(--tw-surface-edf8f5);box-shadow:inset 0 0 0 1px var(--tw-shadow-4b9e93)}.true-false-editor input{opacity:0;pointer-events:none;position:absolute}.truth-icon{background:var(--tw-surface-edf2f1);width:36px;height:36px;color:var(--tw-foreground-667c80);border-radius:10px;place-items:center;font-size:18px;display:grid}.true-false-editor label.selected .truth-icon{background:var(--tw-surface-217f76);color:var(--tw-foreground-white)}.true-false-editor strong,.true-false-editor small{display:block}.true-false-editor strong{color:var(--tw-foreground-315158);font-size:13px}.true-false-editor small{color:var(--tw-foreground-839194);margin-top:3px;font-size:9px;font-weight:400}.format-editor-heading{justify-content:space-between;align-items:center;gap:18px;margin-bottom:12px;display:flex}.format-editor-heading strong,.format-editor-heading span{display:block}.format-editor-heading strong{color:var(--tw-foreground-34545a);font-size:12px}.format-editor-heading div>span{color:var(--tw-foreground-7e8e91);margin-top:3px;font-size:10px}.format-editor-heading>span{background:var(--tw-surface-e6f2ef);color:var(--tw-foreground-34766f);white-space:nowrap;border-radius:999px;padding:5px 8px;font:700 8px ui-monospace,monospace}.matching-column-labels{color:var(--tw-foreground-7a8b8e);text-transform:uppercase;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:50px;padding:0 48px 7px;font:9px ui-monospace,monospace;display:grid}.matching-pair-row{border:1px solid var(--tw-border-e0e7e6);background:var(--tw-surface-fbfcfc);border-radius:11px;grid-template-columns:28px minmax(0,1fr) 24px minmax(0,1fr) auto;align-items:center;gap:9px;padding:8px 9px;display:grid}.matching-pair-row input,.ordering-item-row input,.multi-part-card input,.blank-answer-group input{border:1px solid var(--tw-border-ccd9d7);background:var(--tw-surface-white);width:100%;min-width:0;color:var(--ink);border-radius:9px;padding:10px}.pair-index,.order-position,.part-letter,.blank-label{color:var(--tw-foreground-2e716a);font:700 11px ui-monospace,monospace}.pair-index,.order-position{background:var(--tw-surface-e5f2ef);border-radius:8px;place-items:center;width:26px;height:26px;display:grid}.pair-connector{color:var(--tw-foreground-65a59d);text-align:center;font-size:16px}.ordering-item-row{border:1px solid var(--tw-border-e0e7e6);background:var(--tw-surface-fbfcfc);border-radius:11px;grid-template-columns:30px minmax(0,1fr) auto auto;align-items:center;gap:9px;padding:8px 9px;display:grid}.mini-move-actions,.order-controls{gap:5px;display:flex}.mini-move-actions button,.order-controls button{border:1px solid var(--tw-border-cddbd8);background:var(--tw-surface-white);width:31px;height:31px;color:var(--tw-foreground-286e67);cursor:pointer;border-radius:8px}.fill-blank-prompt-tools{color:var(--tw-foreground-718286);align-items:center;gap:10px;margin-top:2px;font-size:11px;font-weight:500;display:flex}.fill-blank-prompt-tools .secondary{width:auto;color:var(--tw-foreground-176e67)}.fill-blank-preview{border:1px solid var(--tw-border-d7e4e1);background:linear-gradient(135deg, var(--tw-surface-f8fbfa), var(--tw-surface-f1f7f5));border-radius:12px;margin:0 0 14px;padding:15px 17px}.fill-blank-preview>span{color:var(--tw-foreground-56807b);letter-spacing:.8px;text-transform:uppercase;margin-bottom:9px;font:700 9px ui-monospace,monospace;display:block}.fill-blank-preview p{color:var(--tw-foreground-253d42);margin:0;font-size:14px;line-height:2}.fill-blank-preview p b{border-bottom:2px solid var(--tw-border-4c9e94);min-width:82px;color:var(--tw-foreground-2e716a);justify-content:center;align-items:center;margin:0 5px;padding:2px 10px;font:700 10px ui-monospace,monospace;display:inline-flex}.fill-blank-empty{border:1px dashed var(--tw-border-b9ceca);background:var(--tw-surface-fafcfb);color:var(--tw-foreground-758689);text-align:center;border-radius:12px;gap:4px;padding:18px;font-size:12px;display:grid}.fill-blank-empty strong{color:var(--tw-foreground-35575b);font-size:13px}.blank-answer-group{border:1px solid var(--tw-border-dbe5e3);background:var(--tw-surface-fbfdfc);border-radius:12px;margin-top:10px;overflow:hidden}.blank-answer-header{border-bottom:1px solid var(--tw-border-e5ecea);background:var(--tw-surface-f3f8f6);grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:10px;padding:10px 13px;display:grid}.blank-answer-header>span:nth-child(2){color:var(--tw-foreground-80908f);font-size:10px}.blank-answer-list{gap:8px;padding:12px 13px;display:grid}.blank-answer-row{grid-template-columns:24px minmax(0,1fr) auto;align-items:center;gap:9px;display:grid}.blank-answer-row>span{background:var(--tw-surface-e5f2ef);width:24px;height:24px;color:var(--tw-foreground-2e716a);border-radius:50%;place-items:center;font:700 10px ui-monospace,monospace;display:grid}.blank-answer-row input:focus{border-color:var(--tw-border-62a99f);outline:3px solid var(--tw-border-rgba-98-169-159-13)}.multi-part-guide{border:1px solid var(--tw-border-cfe1dd);background:var(--tw-surface-f1f8f6);border-radius:12px;grid-template-columns:30px minmax(0,1fr);gap:11px;margin-bottom:13px;padding:13px 15px;display:grid}.multi-part-guide>span{background:var(--tw-surface-d9eee9);width:28px;height:28px;color:var(--tw-foreground-1b756c);font:700 13px var(--font-heading);border-radius:9px;place-items:center;display:grid}.multi-part-guide strong{color:var(--tw-foreground-31565b);font-size:12px}.multi-part-guide p{color:var(--tw-foreground-6f8184);margin:4px 0 0;font-size:11px;line-height:1.45}.multi-part-list{gap:10px;display:grid}.multi-part-card{border:1px solid var(--tw-border-dbe5e3);background:var(--tw-surface-fff);border-radius:13px;overflow:hidden}.multi-part-card>header{border-bottom:1px solid var(--tw-border-e6eceb);background:var(--tw-surface-f8faf9);grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:10px;padding:10px 13px;display:grid}.multi-part-card>header .part-letter{background:var(--tw-surface-e2f1ed);width:fit-content;color:var(--tw-foreground-246e66);border-radius:7px;padding:5px 8px;font:700 9px ui-monospace,monospace;display:inline-flex}.multi-part-card>header>span:nth-child(2){color:var(--tw-foreground-809092);font-size:10px}.multi-part-prompt{color:var(--tw-foreground-405a60);gap:7px;padding:13px 13px 10px;font-size:11px;font-weight:700;display:grid}.multi-part-prompt input{min-height:43px;font-size:13px}.multi-part-card input:focus{border-color:var(--tw-border-5da59c);outline:3px solid var(--tw-border-rgba-93-165-156-12)}.response-style-picker{border:0;margin:0;padding:0 13px 13px}.response-style-picker legend{color:var(--tw-foreground-405a60);margin:0 0 7px;font-size:11px}.response-style-picker>div{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;display:grid}.response-style-picker label{border:1px solid var(--tw-border-d9e3e1);background:var(--tw-surface-fbfcfc);cursor:pointer;border-radius:10px;grid-template-columns:17px minmax(0,1fr);gap:8px;padding:10px;display:grid;position:relative}.response-style-picker label:has(input:checked){border-color:var(--tw-border-5aa49a);background:var(--tw-surface-edf7f4);box-shadow:inset 0 0 0 1px var(--tw-shadow-5aa49a)}.response-style-picker input{width:15px;accent-color:var(--teal);margin:2px 0 0;padding:0}.response-style-picker strong,.response-style-picker small{display:block}.response-style-picker strong{color:var(--tw-foreground-345157);font-size:11px}.response-style-picker small{color:var(--tw-foreground-839194);margin-top:2px;font-size:9px;font-weight:400}.multi-part-add{margin-top:11px}.accepted-answer-row{border:1px solid var(--tw-border-e0e7e6);background:var(--tw-surface-fbfcfc);border-radius:11px;grid-template-columns:28px minmax(0,1fr) auto;align-items:center;gap:9px;padding:8px 9px;display:grid}.numeric-answer-editor{background:var(--tw-surface-fbfcfc);grid-template-columns:minmax(190px,1.2fr) minmax(140px,.7fr) minmax(140px,.7fr) minmax(180px,1fr);align-items:start;gap:12px;padding:20px 22px 22px;display:grid}.numeric-answer-copy{align-self:center;align-items:center;gap:11px;display:flex}.numeric-answer-copy>span{background:var(--tw-surface-e2f1ed);width:38px;height:38px;color:var(--tw-foreground-23766d);font:700 17px var(--font-heading);border-radius:11px;flex:none;place-items:center;display:grid}.numeric-answer-copy strong{color:var(--tw-foreground-34545a);font-size:11px}.numeric-answer-copy p{color:var(--tw-foreground-7c8c8f);margin:3px 0 0;font-size:9px;line-height:1.4}.numeric-answer-editor>label{color:var(--tw-foreground-405a60);gap:6px;font-size:10px;font-weight:700;display:grid}.numeric-answer-editor input{border:1px solid var(--tw-border-ccd9d7);width:100%;min-height:42px;color:var(--ink);border-radius:9px;padding:10px}.numeric-answer-editor input:focus{border-color:var(--tw-border-5da59c);outline:3px solid var(--tw-border-rgba-93-165-156-12)}.numeric-range-preview{border:1px solid var(--tw-border-cfe0dc);background:var(--tw-surface-edf7f4);border-radius:10px;gap:3px;padding:10px 12px;display:grid}.numeric-range-preview span{color:var(--tw-foreground-52807b);text-transform:uppercase;font:700 8px ui-monospace,monospace}.numeric-range-preview strong{color:var(--tw-foreground-245d57);font-size:13px}.numeric-range-preview small{color:var(--tw-foreground-718683);font-size:8px;line-height:1.35}.assessment-visual{border:1px solid var(--tw-border-d9e3e1);background:var(--tw-surface-eef3f2);border-radius:16px;margin:18px 0 22px;overflow:hidden}.assessment-visual img{object-fit:contain;width:100%;max-height:540px;display:block}.interaction-heading{justify-content:space-between;align-items:center;gap:14px;margin-bottom:12px;display:flex}.interaction-heading span{background:var(--tw-surface-e6f3f0);color:var(--tw-foreground-27736b);border-radius:999px;padding:6px 9px;font:700 10px ui-monospace,monospace}.interaction-heading p{color:var(--muted);margin:0;font-size:11px}.matching-board{background:var(--tw-surface-f2f6f5);border-radius:16px;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;padding:14px;display:grid}.matching-card-column{align-content:start;gap:9px;display:grid}.matching-card{border:1px solid var(--tw-border-d4dfdd);background:var(--tw-surface-white);min-height:64px;color:var(--tw-foreground-344c52);text-align:left;cursor:pointer;border-radius:13px;justify-content:space-between;align-items:center;gap:10px;padding:13px 14px;transition:border-color .15s,box-shadow .15s,transform .15s;display:flex}.matching-card:hover:not(:disabled),.matching-card.active{border-color:var(--tw-border-58a99f);box-shadow:0 0 0 3px var(--tw-shadow-rgba-10-139-133-1);transform:translateY(-1px)}.matching-card.paired{background:var(--tw-surface-e8f5f1);border-color:var(--tw-border-95cfc3)}.matching-card small{color:var(--tw-foreground-2b786e);text-transform:uppercase;font-size:9px}.interaction-reset{margin-top:10px}.ordering-response ol,.preview-order-list,.response-order-list{counter-reset:order;gap:8px;margin:0;padding:0;list-style:none;display:grid}.ordering-response li,.preview-order-list li,.response-order-list li{border:1px solid var(--tw-border-d9e3e1);background:var(--tw-surface-fafcfc);border-radius:12px;align-items:center;gap:12px;min-height:58px;padding:10px 12px;display:flex}.ordering-response li strong{flex:1;font-size:13px}.fill-blank-sentence{font:600 21px/1.9 var(--font-heading);color:var(--tw-foreground-273b44);border:1px solid var(--tw-border-dce6e4);background:var(--tw-surface-fafcfb);border-radius:14px;padding:18px}.fill-blank-sentence input{border:0;border-bottom:2px solid var(--tw-border-5ba69c);background:var(--tw-surface-eaf5f2);width:min(180px,45vw);color:var(--ink);text-align:center;outline:none;margin:0 7px;padding:3px 6px;font:600 16px Segoe UI,sans-serif;display:inline-block}.multi-part-response{gap:13px;display:grid}.multi-part-response label{border:1px solid var(--tw-border-dce5e3);background:var(--tw-surface-fafcfc);color:var(--tw-foreground-40585e);border-radius:13px;gap:8px;padding:15px;font-size:13px;display:grid}.multi-part-response input,.multi-part-response textarea{border:1px solid var(--tw-border-cad8d5);background:var(--tw-surface-white);width:100%;color:var(--ink);border-radius:9px;padding:11px}.multi-part-response textarea{resize:vertical;min-height:120px}.student-upload-zone{border:1.5px dashed var(--tw-border-9ebfba);background:linear-gradient(145deg, var(--tw-surface-f9fcfb), var(--tw-surface-eef7f4));min-height:160px;color:var(--tw-foreground-33575a);cursor:pointer;text-align:center;border-radius:16px;flex-direction:column;justify-content:center;align-items:center;gap:7px;transition:border-color .15s,background .15s;display:flex}.student-upload-zone:hover,.student-upload-zone.has-file{border-color:var(--tw-border-3a978d);background:var(--tw-surface-eaf6f2)}.student-upload-zone input{opacity:0;width:1px;height:1px;position:absolute}.student-upload-zone small{color:var(--muted);font-size:11px}.upload-zone-icon{background:var(--tw-surface-d9eee9);width:42px;height:42px;color:var(--tw-foreground-14736a);border-radius:13px;flex:none;place-items:center;font-size:20px;display:grid}.preview-pair-grid,.response-pair-list{gap:8px;display:grid}.preview-pair-grid>div,.response-pair-list>div{border:1px solid var(--tw-border-dce5e3);background:var(--tw-surface-fafcfc);border-radius:10px;grid-template-columns:26px minmax(0,1fr) 24px minmax(0,1fr);align-items:center;gap:10px;padding:11px;display:grid}.preview-pair-grid span,.response-pair-list span,.preview-part-list span,.response-part-list span{color:var(--tw-foreground-27736b);font:700 10px ui-monospace,monospace}.preview-pair-grid b,.response-pair-list b{color:var(--tw-foreground-6eaaa3);text-align:center}.preview-part-list,.response-part-list{gap:8px;display:grid}.preview-part-list>div,.response-part-list>div{background:var(--tw-surface-f4f8f7);border-radius:10px;grid-template-columns:28px minmax(0,1fr);gap:8px;padding:11px;display:grid}.preview-part-list p,.response-part-list p{margin:0;line-height:1.5}.response-chip-list{flex-wrap:wrap;gap:8px;display:flex}.response-chip-list span{background:var(--tw-surface-white);border:1px solid var(--tw-border-d6e2e0);color:var(--tw-foreground-40575d);border-radius:10px;align-items:center;gap:7px;padding:8px 10px;font-size:12px;display:inline-flex}.response-chip-list b{background:var(--tw-surface-dff0ec);width:19px;height:19px;color:var(--tw-foreground-226f66);border-radius:6px;place-items:center;font-size:9px;display:grid}.submitted-file-card{align-items:center;gap:12px;display:flex}.submitted-file-card>div{flex:1}.submitted-file-card strong,.submitted-file-card small{display:block}.submitted-file-card small{color:var(--muted);margin-top:3px;font-size:10px}.submission-confirmation{align-items:center;gap:16px;display:flex}.submission-confirmation>span{background:var(--tw-surface-dff2eb);width:40px;height:40px;color:var(--tw-foreground-147a75);border-radius:50%;place-items:center;font-size:20px;display:grid}.submission-confirmation h2{font:600 23px/1.1 var(--font-heading);margin:0 0 5px}.submission-confirmation p{color:var(--muted);margin:0;font-size:13px}.submission-queue{margin-top:18px}.submission-list,.result-list{display:grid}.submission-row,.result-row{border-top:1px solid var(--tw-border-edf0ef);color:inherit;justify-content:space-between;align-items:center;gap:20px;padding:15px 4px;text-decoration:none;display:flex}.submission-row:first-child,.result-row:first-child{border-top:0}.submission-row:hover,.result-row:hover{color:var(--tw-foreground-116e68)}.submission-row>div,.submission-row>div:last-child{align-items:center;gap:12px;display:flex}.submission-row>div:first-child{flex-direction:column;align-items:start;gap:4px}.submission-row span,.result-row p{color:var(--muted);font-size:11px}.released-result-banner{background:var(--tw-surface-e8f5f0);border-color:var(--tw-border-b9ddd2);justify-content:space-between;align-items:center;gap:24px;display:flex}.released-result-banner h2{font:600 34px/1 var(--font-heading);margin:0 0 5px}.released-result-banner p:last-child{color:var(--muted);margin:0;font-size:13px}.review-summary{grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;display:grid}.review-summary span{color:var(--tw-foreground-7c8b8f);text-transform:uppercase;margin-bottom:8px;font:10px ui-monospace,monospace;display:block}.review-summary strong{font:600 27px/1 var(--font-heading)}.review-form{gap:18px;display:grid}.student-response{background:var(--tw-surface-f3f7f6);border:1px solid var(--tw-border-dce6e4);border-radius:9px;padding:15px}.student-response span,.answer-feedback span,.automatic-result span{color:var(--tw-foreground-39756e);letter-spacing:.6px;text-transform:uppercase;margin-bottom:7px;font:10px ui-monospace,monospace;display:block}.student-response p,.answer-feedback p{color:var(--tw-foreground-465c62);white-space:pre-wrap;margin:0;font-size:13px;line-height:1.6}.review-fields{grid-template-columns:150px minmax(0,1fr);gap:14px;margin-top:15px;display:grid}.review-fields label,.overall-feedback label{color:var(--tw-foreground-456066);gap:7px;font-size:12px;font-weight:650;display:grid}.review-fields input,.review-fields textarea,.overall-feedback textarea{border:1px solid var(--tw-border-ccd9d7);background:var(--tw-surface-white);width:100%;color:var(--ink);border-radius:8px;padding:10px}.review-fields textarea,.overall-feedback textarea{resize:vertical;min-height:100px}.automatic-result{background:var(--tw-surface-e8f5f0);border-radius:9px;justify-content:space-between;align-items:center;gap:20px;margin-top:15px;padding:13px 15px;display:flex}.automatic-result span,.overall-feedback{margin:0}.review-actions{align-items:center;gap:16px;display:flex}.review-actions p{color:var(--muted);margin:0;font-size:12px}.release-bar,.paper-marks-panel{margin-top:18px}.paper-marks-table{min-width:920px}.paper-marks-table td{vertical-align:middle}.paper-marks-table td:nth-child(3){width:210px}.paper-marks-table td:nth-child(4){min-width:260px}.paper-marks-table input{border:1px solid var(--tw-border-ccd9d7);background:var(--tw-surface-white);width:100%;color:var(--ink);border-radius:7px;padding:9px 10px}.paper-score-field{align-items:center;gap:8px;display:flex}.paper-score-field input{max-width:110px}.paper-score-field span{color:var(--muted);white-space:nowrap}.paper-homework-check{cursor:pointer;color:var(--ink);align-items:center;gap:8px;font-size:12px;font-weight:650;display:inline-flex}.paper-homework-check input[type=checkbox]{width:18px;height:18px;accent-color:var(--teal)}.import-card{gap:14px;display:grid}.import-columns-hint{color:var(--muted);margin:-6px 0 0;font-size:11px;line-height:1.5}.import-upload-form{flex-wrap:wrap;align-items:center;gap:14px;display:flex}.import-upload-form .primary{flex-shrink:0}.import-dropzone{text-align:left;border-radius:12px;flex-direction:row;flex:1;justify-content:flex-start;min-width:220px;min-height:0;padding:12px 16px}.import-dropzone .upload-zone-icon{flex-shrink:0}.import-results{gap:10px;display:grid}.import-summary{color:var(--muted);margin:0;font-size:12px;font-weight:650}.paper-mark-actions{border-top:1px solid var(--line);justify-content:flex-end;align-items:center;gap:18px;margin-top:14px;padding-top:18px;display:flex}.paper-mark-actions p,.paper-result-note p:last-child{color:var(--muted);margin:0;font-size:12px;line-height:1.6}.paper-result-note h2{font:600 22px/1.1 var(--font-heading);margin:0 0 8px}.results-metrics{margin-bottom:18px}.subject-progress-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;display:grid}.subject-progress-card{border:1px solid var(--tw-border-d9e4e3);background:var(--tw-surface-f7faf9);color:inherit;border-radius:10px;padding:17px;text-decoration:none;display:block}.subject-progress-card>div:first-child{justify-content:space-between;align-items:center;gap:14px;display:flex}.subject-progress-card>div:first-child span{color:var(--tw-foreground-39756e);font:10px ui-monospace,monospace}.subject-progress-card>div:first-child strong{font:600 23px/1 var(--font-heading)}.subject-progress-card h3{font:600 18px/1.15 var(--font-heading);margin:18px 0 5px}.subject-progress-card p{color:var(--muted);margin:0;font-size:11px}.subject-progress-card>b{color:var(--accent-foreground);margin-top:10px;font-size:11px;font-weight:800;display:block}.progress-track{background:var(--tw-surface-dfe9e7);border-radius:999px;height:6px;margin-top:16px;overflow:hidden}.progress-track span{border-radius:inherit;background:var(--teal);height:100%;display:block}.result-row>div:first-child>span{color:var(--tw-foreground-39756e);letter-spacing:.6px;font:10px ui-monospace,monospace}.result-row h3{font:600 19px/1.15 var(--font-heading);margin:6px 0}.result-row p{margin:0}.result-score{text-align:right;gap:5px;display:grid}.result-score strong{color:var(--ink)}.result-score span{color:var(--tw-foreground-177c78);font:700 12px ui-monospace,monospace}.result-hero{background:var(--navy);color:var(--tw-foreground-white);border-radius:14px;justify-content:space-between;align-items:center;gap:24px;margin-bottom:18px;padding:30px;display:flex}.result-hero .eyebrow{color:var(--tw-foreground-a8c3c4)}.result-hero>div:first-child>strong{color:var(--tw-foreground-white);font:600 clamp(46px, 8vw, 76px)/1 var(--font-heading)}.result-hero>div:first-child>strong span{color:var(--tw-foreground-a8c3c4);font-size:.45em}.result-percent{text-align:center;background:var(--tw-surface-dff2eb);width:110px;height:110px;color:var(--tw-foreground-17634f);border-radius:50%;place-content:center;display:grid}.result-percent strong,.result-percent span{display:block}.result-percent strong{font:600 28px/1 var(--font-heading)}.result-percent span{text-transform:uppercase;margin-top:5px;font:10px ui-monospace,monospace}.teacher-feedback blockquote{color:var(--tw-foreground-40575d);font:20px/1.55 var(--font-heading);white-space:pre-wrap;margin:10px 0 0}.result-answer-list{gap:18px;display:grid}.answer-feedback{border-left:3px solid var(--tw-border-65aaa0);background:var(--tw-surface-f2f8f6);margin-top:14px;padding:12px 14px}.report-card-page{max-width:1320px}.report-policy-banner{grid-template-columns:repeat(3,minmax(150px,1fr));gap:14px;display:grid}.report-policy-banner>div{border-right:1px solid var(--line);gap:4px;display:grid}.report-policy-banner>div:nth-child(3){border-right:0}.report-policy-banner span{color:#000;font:600 31px/1 var(--font-heading)}html.dark .report-policy-banner span{color:#fff}.report-policy-banner strong{font-size:13px}.report-policy-banner small,.report-policy-banner p{color:var(--muted);font-size:11px}.report-policy-banner p{border-top:1px solid var(--line);grid-column:1/-1;margin:2px 0 0;padding-top:14px}.report-context-form{grid-template-columns:minmax(280px,1fr) auto;align-items:end;gap:13px;display:grid}.report-context-form label{color:var(--tw-foreground-456066);gap:7px;font-size:12px;font-weight:650;display:grid}.report-context-form select{border:1px solid var(--tw-border-ccd9d7);background:var(--tw-surface-white);width:100%;color:var(--ink);border-radius:7px;padding:10px}.attendance-parent-child-row{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;padding:12px 4px;display:flex}.attendance-parent-report-form{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.attendance-parent-report-form select,.attendance-parent-report-form input[type=text],.attendance-parent-report-form input[type=date]{border:1px solid var(--tw-border-ccd9d7);background:var(--tw-surface-white);color:var(--ink);border-radius:7px;padding:8px 10px;font-size:13px}.attendance-parent-report-form input[type=text]{min-width:160px}.attendance-parent-date-label{color:var(--muted);align-items:center;gap:6px;font-size:12px;font-weight:650;display:flex}.report-preview-panel .section-title>div>p:last-child{color:var(--muted);font-size:11px}.report-preview-table{min-width:1040px}.report-preview-table td{vertical-align:top}.report-preview-table td strong,.report-preview-table td>span{display:block}.report-preview-table td>span,.report-preview-table td strong+span{color:var(--muted);margin-top:4px;font-size:10px}.unit-breakdown-panel{overflow:hidden}.unit-breakdown-panel .section-title{margin-bottom:18px}.domain-results-table-wrap{box-shadow:none;background:0 0;border:0;border-radius:0;overflow:auto hidden}.domain-results-table{table-layout:fixed;background:0 0;width:100%;min-width:760px}.domain-results-table th:first-child{width:23%}.domain-results-table th:nth-child(2){width:44%}.domain-results-table th:nth-child(3){text-align:center;width:18%}.domain-results-table th:last-child{text-align:center;width:15%}.domain-grade-cell{text-align:center}.domain-grade-cell .report-grade{margin-inline:auto}.domain-results-table th{border-bottom:1px solid color-mix(in srgb, var(--line) 72%, transparent);color:var(--muted);letter-spacing:.1em;background:0 0;padding:12px 20px;font-size:9px}.domain-results-table td{vertical-align:middle;background:0 0;height:82px;padding:15px 20px}.domain-results-table tbody tr{transition:background-color .16s}.domain-results-table tbody tr:hover{background:color-mix(in srgb, var(--accent) 4%, transparent)}.domain-name-cell>strong{color:var(--ink);font-size:13px}.domain-score-result{gap:9px;max-width:430px;display:grid}.domain-score-copy{align-items:baseline;gap:11px;display:flex}.domain-score-copy>strong{min-width:72px;color:var(--accent-foreground);font:700 23px/1 var(--font-heading);font-variant-numeric:tabular-nums}.domain-score-copy>strong small{margin-left:1px;font-size:.55em}.domain-score-copy>span{color:var(--muted);font-variant-numeric:tabular-nums;font-size:10px;font-weight:600}.domain-score-track{background:color-mix(in srgb, var(--main) 9%, transparent);border-radius:999px;height:6px;overflow:hidden}.domain-score-track>span{border-radius:inherit;background:var(--accent);height:100%;display:block}.domain-assessment-cell{text-align:center}.domain-assessment-cell>strong{background:color-mix(in srgb, var(--accent) 10%, var(--glass-strong));width:34px;height:34px;color:var(--accent-foreground);font:750 13px/1 var(--font-heading);border-radius:10px;place-items:center;margin-inline:auto;display:grid}.domain-assessment-cell>span{color:var(--muted);margin-top:5px;font-size:9px;display:block}.report-missing{font-weight:700;color:var(--tw-foreground-8a5d27)!important}.report-missing span{max-width:120px;font-weight:400;color:var(--tw-foreground-9b8060)!important}.report-grade{border-radius:50%;place-items:center;width:30px;height:30px;font:700 13px ui-monospace,monospace;color:var(--tw-foreground-white)!important;display:grid!important}.grade-5{background:var(--tw-surface-157a68)}.grade-4{background:var(--tw-surface-42896d)}.grade-3{background:var(--tw-surface-739363)}.grade-2{background:var(--tw-surface-bc853e)}.grade-1{background:var(--tw-surface-b75d50)}.homework-review-list{display:grid}.homework-review-row{border-top:1px solid var(--line);justify-content:space-between;align-items:center;gap:24px;padding:16px 2px;display:flex}.homework-review-row:first-child{border-top:0}.homework-review-row h3{font:600 18px/1.15 var(--font-heading);margin:8px 0 4px}.homework-review-row p{color:var(--muted);margin:0;font-size:11px}.homework-excuse-form{align-items:center;gap:8px;display:flex}.homework-excuse-form input:not([type=hidden]){border:1px solid var(--tw-border-ccd9d7);border-radius:7px;width:170px;padding:8px 9px}.homework-excuse-disclosure{text-align:right}.homework-excuse-disclosure summary{cursor:pointer;color:var(--teal);font-size:11px;font-weight:700;list-style:none}.homework-excuse-disclosure summary::-webkit-details-marker{display:none}.homework-excuse-disclosure[open] summary{margin-bottom:10px}.homework-excuse-disclosure .homework-excuse-form{text-align:left;flex-direction:column;align-items:stretch;gap:10px;min-width:220px}.homework-excuse-disclosure .homework-excuse-form label{color:var(--tw-foreground-456066);gap:5px;font-size:11px;font-weight:650;display:grid}.homework-excuse-disclosure .homework-excuse-form input:not([type=hidden]){width:100%}.announcement-center-page{max-width:1040px;padding-top:24px}.announcement-center-header{border-bottom:1px solid color-mix(in srgb, var(--line) 76%, transparent);align-items:flex-end;margin-bottom:14px;padding:0 2px 14px}.announcement-center-title{align-items:center;gap:12px;margin-top:8px;display:flex}.announcement-center-title h1{margin:1px 0 3px;font-size:31px}.announcement-center-title p:last-child{color:var(--muted);margin:0;font-size:12px}.announcement-center-icon{background:linear-gradient(145deg, var(--main), var(--accent));width:44px;height:44px;box-shadow:0 12px 28px color-mix(in srgb, var(--main) 24%, transparent);color:var(--on-main);border-radius:13px;flex:none;place-items:center;display:grid}.announcement-center-icon svg{width:20px;height:20px}.announcement-create-button{align-items:center;gap:7px;min-height:36px;padding:8px 12px;display:inline-flex}.announcement-feed-panel{width:100%}.announcement-feed-heading{justify-content:space-between;align-items:flex-end;gap:18px;margin-bottom:10px;padding-inline:2px;display:flex}.announcement-feed-heading h2{font:650 20px/1.15 var(--font-heading);margin:1px 0 2px}.announcement-feed-heading p:last-child{color:var(--muted);margin:0;font-size:12px}.announcement-count{border:1px solid color-mix(in srgb, var(--accent) 18%, var(--line));background:color-mix(in srgb, var(--accent) 6%, var(--glass-strong));color:var(--accent-foreground);border-radius:999px;flex:none;padding:5px 10px;font-size:10px;font-weight:750}.announcement-list{gap:14px;display:grid}.announcement-card{border:1px solid color-mix(in srgb, var(--line) 86%, transparent);background:color-mix(in srgb, var(--glass-strong) 94%, transparent);box-shadow:0 12px 34px color-mix(in srgb, var(--tw-shadow-rgba-0-0-0-07) 68%, transparent);border-radius:18px;gap:0;display:grid;overflow:hidden}.announcement-card-header{justify-content:space-between;align-items:center;gap:16px;padding:17px 18px 13px;display:flex}.announcement-author-block{align-items:center;gap:10px;min-width:0;display:flex}.announcement-author-block>div{min-width:0}.announcement-author-block>div>strong{color:var(--ink);text-overflow:ellipsis;white-space:nowrap;font-size:13px;display:block;overflow:hidden}.announcement-author-avatar{border:1px solid color-mix(in srgb, var(--accent) 22%, transparent);background:linear-gradient(145deg, color-mix(in srgb, var(--main) 13%, var(--glass-strong)), color-mix(in srgb, var(--accent) 17%, var(--glass-strong)));width:38px;height:38px;color:var(--accent-foreground);font:750 14px/1 var(--font-heading);border-radius:50%;flex:none;place-items:center;display:grid}.announcement-post-meta{color:var(--muted);flex-wrap:wrap;align-items:center;gap:5px;margin-top:3px;font-size:10px;display:flex}.announcement-post-meta time{white-space:nowrap}.announcement-audience{background:var(--tw-surface-edf2f1);color:var(--tw-foreground-46635f);text-transform:uppercase;letter-spacing:.45px;border-radius:999px;padding:2px 7px;font:700 8px ui-monospace,monospace;display:inline-block}.announcement-manager-badge{background:color-mix(in srgb, var(--main) 8%, transparent);color:var(--main);border-radius:999px;flex:none;padding:4px 8px;font-size:9px;font-weight:750}.announcement-card-content{padding:3px 18px 18px}.announcement-card-content h3{color:var(--ink);font:650 20px/1.25 var(--font-heading);margin:0 0 9px}.announcement-body{white-space:pre-wrap;width:100%;color:color-mix(in srgb, var(--ink) 88%, var(--muted));margin:0;font-size:13px;line-height:1.65}.announcement-content-disclosure{margin-top:7px}.announcement-content-disclosure summary{cursor:pointer;width:fit-content;color:var(--accent-foreground);font-size:11px;font-weight:750;list-style:none}.announcement-content-disclosure summary::-webkit-details-marker{display:none}.announcement-content-disclosure summary:hover{color:var(--main)}.announcement-content-full{margin-top:9px}.announcement-show-less,.announcement-content-disclosure[open] .announcement-read-more{display:none}.announcement-content-disclosure[open] .announcement-show-less{display:inline}.announcement-card-content:has(.announcement-content-disclosure[open]) .announcement-content-preview{display:none}.announcement-card-footer{border-top:1px solid color-mix(in srgb, var(--line) 68%, transparent);background:color-mix(in srgb, var(--glass-strong) 64%, transparent);align-items:center;min-height:46px;padding:10px 18px;display:flex}.announcement-link{color:var(--accent-foreground);align-items:center;gap:5px;font-size:11px;font-weight:750;text-decoration:none;display:inline-flex}.announcement-link:hover{color:var(--main)}.announcement-card-status{color:var(--muted);align-items:center;gap:6px;font-size:10px;font-weight:650;display:inline-flex}.announcement-edit{border-top:1px solid color-mix(in srgb, var(--line) 68%, transparent);margin:0;padding:0 18px 14px}.announcement-edit summary{cursor:pointer;width:fit-content;color:var(--teal);padding-top:12px;font-size:11px;font-weight:700}.announcement-edit-form{margin-top:10px}@media (max-width:640px){.announcement-center-header{align-items:stretch}.announcement-center-title{align-items:flex-start}.announcement-center-icon{border-radius:13px;width:44px;height:44px}.announcement-center-title h1{font-size:28px}.announcement-create-button{right:14px;bottom:calc(14px + env(safe-area-inset-bottom));z-index:40;width:auto;min-height:48px;box-shadow:0 16px 34px color-mix(in srgb, var(--accent) 32%, transparent);border-radius:16px;justify-content:center;padding:11px 16px;position:fixed}.announcement-feed-heading{align-items:center}.announcement-feed-heading p:last-child{display:none}.announcement-card{border-radius:14px}.announcement-card-header{align-items:flex-start;padding:15px 15px 12px}.announcement-card-content{padding:3px 15px 16px}.announcement-card-content h3{font-size:18px}.announcement-card-footer{padding-inline:15px}.announcement-manager-badge{display:none}.announcement-edit{padding-inline:15px}}.announcement-composer .homeroom-multiselect{margin-top:4px}.announcement-composer .assessment-kind-picker>div{grid-template-columns:repeat(2,minmax(0,1fr))}.announcement-attachment-preview-list{grid-template-columns:repeat(auto-fill,minmax(92px,1fr));gap:9px;margin-top:6px;display:grid}.announcement-attachment-preview-item{border:1px solid var(--tw-border-cddbd8);text-align:center;background:var(--tw-surface-fff);border-radius:10px;justify-items:center;gap:4px;padding:8px;display:grid}.announcement-attachment-preview-thumb{aspect-ratio:1;border-radius:7px;width:100%;display:block;position:relative;overflow:hidden}.announcement-attachment-preview-thumb img{object-fit:cover}.announcement-attachment-icon{background:var(--tw-surface-d9eee9);width:34px;height:34px;color:var(--tw-foreground-14736a);border-radius:10px;place-items:center;font-size:16px;display:grid}.announcement-attachment-preview-item strong{text-overflow:ellipsis;white-space:nowrap;max-width:100%;color:var(--ink);font-size:10px;font-weight:650;overflow:hidden}.announcement-attachment-preview-item small{color:var(--muted);font-size:9px}.announcement-attachment-preview-list .text-button{grid-column:1/-1;justify-self:start}.announcement-attachments{gap:10px;margin-top:13px;display:grid}.announcement-attachment-images{grid-template-columns:repeat(auto-fill,minmax(92px,1fr));gap:8px;display:grid}.announcement-attachment-image{aspect-ratio:1;border:1px solid color-mix(in srgb, var(--line) 78%, transparent);background:var(--tw-surface-edf2f1);border-radius:10px;display:block;overflow:hidden}.announcement-attachment-image img{object-fit:cover;width:100%;height:100%;display:block}.announcement-attachment-files{gap:8px;display:grid}.announcement-attachment-file{border:1px solid color-mix(in srgb, var(--line) 78%, transparent);color:inherit;background:color-mix(in srgb, var(--glass-strong) 70%, transparent);border-radius:12px;padding:10px 12px;text-decoration:none;transition:border-color .15s}.announcement-attachment-file:hover{border-color:color-mix(in srgb, var(--accent) 30%, transparent)}.status-pill.completed{background:var(--tw-surface-dff2eb);color:var(--tw-foreground-17634f)}.status-pill.incomplete{background:var(--tw-surface-fff0e5);color:var(--tw-foreground-8a5527)}.status-pill.excused{background:var(--tw-surface-e5edf7);color:var(--tw-foreground-3f638a)}.status-pill.not_due,.status-pill.draft{background:var(--tw-surface-edf0ef);color:var(--tw-foreground-657477)}.status-pill.submitted,.status-pill.in_review{background:var(--tw-surface-faeee0);color:var(--tw-foreground-8a5d27)}.status-pill.approved,.status-pill.released{background:var(--tw-surface-dff2eb);color:var(--tw-foreground-17634f)}.status-pill.changes-requested,.status-pill.pending{background:var(--tw-surface-fbe9e6);color:var(--tw-foreground-96412f)}.report-breadcrumb{color:var(--muted);flex-wrap:wrap;align-items:center;gap:6px;margin:0 0 10px;font-size:11px;display:flex}.report-breadcrumb span{color:color-mix(in srgb, var(--muted) 55%, transparent)}.report-breadcrumb strong{color:var(--ink);font-weight:700}.student-overview-table{min-width:720px}.student-overview-table td{vertical-align:middle}.calc-summary-grid{grid-template-columns:repeat(auto-fit,minmax(115px,1fr));gap:16px;display:grid}.calc-summary-grid>div{border-right:1px solid var(--line);gap:5px;padding-right:16px;display:grid}.calc-summary-grid>div:last-child{border-right:0}.calc-summary-grid>div>span:first-child{color:var(--muted);text-transform:uppercase;letter-spacing:.04em;font:700 10px ui-monospace,monospace}.calc-summary-grid strong{font:600 22px/1 var(--font-heading)}.calc-summary-grid small{color:var(--muted);font-size:10px}.subject-overview-list{display:grid}.subject-overview-row{border-top:1px solid var(--line);justify-content:space-between;align-items:center;gap:24px;padding:16px 2px;display:flex}.subject-overview-row:first-child{border-top:0}.subject-overview-row h3{font:600 18px/1.15 var(--font-heading);margin:8px 0 4px}.subject-overview-row p{color:var(--muted);margin:0;font-size:11px}.subject-comment-form{gap:14px;display:grid}.subject-comment-form label{color:var(--tw-foreground-456066);gap:7px;font-size:12px;font-weight:650;display:grid}.subject-comment-form textarea{border:1px solid var(--tw-border-ccd9d7);resize:vertical;width:100%;min-height:110px;color:var(--ink);border-radius:8px;padding:12px}.subject-comment-byline{color:var(--muted);margin:0;font-size:11px}.ai-draft-controls{align-items:center;gap:12px;margin-top:-4px;display:flex}.ai-draft-controls .field-hint{margin:0}.ai-draft-section-button{flex-shrink:0;align-self:center;align-items:center;gap:5px;margin-left:auto;display:inline-flex}.ai-draft-section-button svg{flex-shrink:0;width:13px;height:13px}.ui-dialog.ai-draft-preview-dialog{width:min(92vw,860px);max-height:85vh}.ai-draft-preview-dialog .ui-dialog-header{gap:4px;display:grid}.ai-draft-preview-dialog .ui-dialog-header p{color:var(--muted);margin:0;font-size:12px}.ui-dialog.upload-resource-modal{flex-direction:column;width:min(92vw,620px);max-height:min(85vh,720px);display:flex;overflow:hidden}.upload-resource-modal>.ui-dialog-header{flex-shrink:0;align-items:flex-start}.upload-resource-modal .ui-dialog-header>div{gap:4px;display:grid}.upload-resource-modal .ui-dialog-header p{color:var(--muted);margin:0;font-size:12px}.upload-resource-modal-body{flex:1;min-height:0;overflow-y:auto}.upload-resource-modal-body .primary,.upload-resource-modal-body .primary:hover:not(:disabled),html.dark .upload-resource-modal-body .primary,html.dark .upload-resource-modal-body .primary:hover:not(:disabled){box-shadow:none}.ai-draft-preview-body{gap:22px;display:grid}.ai-draft-preview-section{border-top:1px solid var(--line);padding-top:18px}.ai-draft-preview-section:first-child{border-top:0;padding-top:0}.ai-draft-preview-section h3{text-transform:uppercase;letter-spacing:.03em;color:var(--tw-foreground-438079);margin:0 0 12px;font-size:13px}.ai-draft-preview-section ol{gap:14px;margin:0;padding-left:22px;display:grid}.ai-draft-preview-section li p.field-hint{margin:3px 0 0}.ai-draft-preview-tag{background:var(--surface-soft);color:var(--muted);white-space:nowrap;border-radius:999px;margin-left:8px;padding:2px 8px;font-size:10px;font-weight:650;display:inline-block}.ai-question-draft-list{margin:0;padding:0;list-style:none;display:grid}.ai-question-draft-check{align-items:center;gap:4px;margin-bottom:6px;display:flex}.ai-question-draft-check input{margin:0 6px 0 0}.ai-question-draft-options{color:var(--muted);gap:4px;margin:6px 0 0;padding-left:18px;font-size:13px;display:grid}.lesson-plan-content-preview{border:1px solid var(--tw-border-ccd9d7);min-height:220px;color:var(--ink);cursor:pointer;border-radius:8px;padding:14px 16px;transition:border-color .15s}.lesson-plan-content-preview:hover{border-color:var(--tw-foreground-607075)}.lesson-plan-content-preview:focus-visible{outline:2px solid var(--navy);outline-offset:2px}.lesson-plan-content-placeholder{color:var(--muted);margin:0}.lesson-plan-content-preview .ProseMirror,.lesson-plan-editor-surface .ProseMirror{outline:none}.lesson-plan-content-preview h1,.lesson-plan-editor-surface h1{font:700 20px/1.25 var(--font-heading);margin:0 0 10px}.lesson-plan-content-preview h2,.lesson-plan-editor-surface h2{font:700 17px/1.25 var(--font-heading);margin:16px 0 8px}.lesson-plan-content-preview h2:first-child,.lesson-plan-editor-surface h2:first-child{margin-top:0}.lesson-plan-content-preview h3,.lesson-plan-editor-surface h3{font:650 14px/1.3 var(--font-heading);margin:14px 0 6px}.lesson-plan-content-preview h3:first-child,.lesson-plan-editor-surface h3:first-child{margin-top:0}.lesson-plan-content-preview p,.lesson-plan-editor-surface p{margin:0 0 10px;line-height:1.6}.lesson-plan-content-preview ul,.lesson-plan-editor-surface ul,.lesson-plan-content-preview ol,.lesson-plan-editor-surface ol{margin:0 0 10px;padding-left:0;list-style:none}.lesson-plan-content-preview li,.lesson-plan-editor-surface li{color:var(--ink);margin:2px 0 2px 26px;line-height:1.6;position:relative}.lesson-plan-content-preview ul li:before,.lesson-plan-editor-surface ul li:before{content:"•";color:var(--ink);position:absolute;left:-18px}.lesson-plan-content-preview ol,.lesson-plan-editor-surface ol{counter-reset:lesson-plan-ol}.lesson-plan-content-preview ol li,.lesson-plan-editor-surface ol li{counter-increment:lesson-plan-ol}.lesson-plan-content-preview ol li:before,.lesson-plan-editor-surface ol li:before{content:counter(lesson-plan-ol) ".";text-align:right;width:20px;color:var(--ink);position:absolute;left:-26px}.lesson-plan-content-preview hr,.lesson-plan-editor-surface hr{border:0;border-top:1px solid var(--tw-border-ccd9d7);margin:14px 0}.lesson-plan-editor-surface .ProseMirror{cursor:text;min-height:100%}.ui-dialog.lesson-plan-editor-dialog{flex-direction:column;width:min(1180px,100vw - 40px);height:min(88vh,880px);display:flex;overflow:hidden}.lesson-plan-editor-dialog>.ui-dialog-header,.lesson-plan-editor-dialog>.ui-dialog-footer{flex-shrink:0}.lesson-plan-editor-body{border:1px solid var(--tw-border-ccd9d7);border-radius:8px;flex-direction:column;flex:1;min-height:0;transition:border-color .15s;display:flex;overflow:hidden}.lesson-plan-editor-body:focus-within{border-color:var(--navy)}.lesson-plan-editor-toolbar{border:0;border-bottom:1px solid var(--tw-border-ccd9d7);background:var(--tw-surface-edf2f1);border-radius:0;flex-wrap:nowrap;flex-shrink:0;justify-content:center;align-items:center;gap:3px;padding:6px;display:flex;overflow-x:auto}.lesson-plan-editor-toolbar button{color:var(--tw-foreground-607075);cursor:pointer;background:0 0;border:0;border-radius:6px;place-items:center;padding:6px;display:grid}.lesson-plan-editor-toolbar button:hover{background:var(--tw-surface-white);color:var(--ink)}.lesson-plan-editor-toolbar button.active{background:var(--tw-surface-white);color:var(--navy);box-shadow:0 1px 3px var(--tw-shadow-cfd9d7)}.lesson-plan-editor-toolbar-divider{background:var(--tw-border-ccd9d7);align-self:stretch;width:1px;margin:2px 4px}.lesson-plan-editor-colors{align-items:center;gap:4px;display:flex}.lesson-plan-editor-color-swatch{border:1px solid var(--tw-border-ccd9d7);cursor:pointer;border-radius:50%;width:18px;height:18px;padding:0}.lesson-plan-editor-surface{min-height:0;color:var(--ink);border:0;border-radius:0;flex:1;padding:14px 16px;overflow-y:auto}html.dark .lesson-plan-content-preview{border-color:var(--surface-border)}html.dark .lesson-plan-content-preview:hover{border-color:var(--muted)}html.dark .lesson-plan-content-preview hr,html.dark .lesson-plan-editor-surface hr{border-top-color:var(--surface-border)}html.dark .lesson-plan-editor-toolbar{background:var(--surface-soft);border-color:var(--surface-border)}html.dark .lesson-plan-editor-toolbar button{color:var(--muted)}html.dark .lesson-plan-editor-toolbar button:hover,html.dark .lesson-plan-editor-toolbar button.active{background:var(--surface);color:var(--ink)}html.dark .lesson-plan-editor-toolbar-divider{background:var(--surface-border)}.lesson-plan-content-readonly{cursor:default;border:0;min-height:0;padding:0}.lesson-plan-content-readonly:hover{border:0}.print-only{display:none}.lesson-plan-print-header{border-bottom:1px solid var(--line);justify-content:space-between;align-items:flex-start;gap:20px;margin-bottom:14px;padding-bottom:14px;display:flex}.lesson-plan-print-header h2{font:700 20px var(--font-heading);margin:0 0 4px}.lesson-plan-print-header p{color:var(--muted);margin:0;font-size:13px}.lesson-plan-print-meta{grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:12px;margin-bottom:20px;display:grid}.lesson-plan-print-meta>div{flex-direction:column;gap:2px;display:flex}.lesson-plan-print-meta span{color:var(--muted);text-transform:uppercase;letter-spacing:.04em;font-size:10px}.lesson-plan-print-meta strong{font-size:13px}.lesson-plan-print-section{margin-bottom:20px}.lesson-plan-print-section h3{font:650 14px var(--font-heading);margin:0 0 8px}.lesson-plan-print-section ol,.lesson-plan-print-section ul{margin:0;padding-left:20px}.lesson-plan-print-section li{margin-bottom:10px;line-height:1.5}.lesson-plan-print-section li p{color:var(--muted);margin:2px 0 0;font-size:13px}.lesson-plan-print-item-heading{justify-content:space-between;align-items:baseline;gap:10px;display:flex}.lesson-plan-print-item-heading span{color:var(--muted);flex:none;font-size:11px}.lesson-plan-print-tag{background:color-mix(in srgb, var(--accent) 12%, transparent);color:var(--accent-foreground);border-radius:999px;flex:none;padding:1px 7px;font-size:10px;font-weight:650}html.dark .lesson-plan-editor-color-swatch,html.dark .lesson-plan-editor-body{border-color:var(--surface-border)}html.dark .lesson-plan-editor-body:focus-within{border-color:var(--navy)}.explain-page-widget{margin:0 0 20px}.explain-page-result{margin:10px 0 0;font-size:13px;line-height:1.6}.insight-suggested-action{color:var(--tw-foreground-245f4e);margin:8px 0 0;font-weight:600}.companion-memory-manager{gap:18px;display:grid}.companion-memory-manager .panel{margin-bottom:0}.companion-memory-add{padding:26px}.companion-memory-section-title{align-items:flex-start}.companion-memory-section-title>div{min-width:0}.companion-memory-section-title>div>p:last-child{max-width:620px;color:var(--muted);margin:6px 0 0;font-size:11px;line-height:1.55}.companion-memory-count{border:1px solid var(--glass-line);background:color-mix(in srgb, var(--main) 8%, var(--surface));min-height:28px;color:var(--accent-foreground);border-radius:999px;flex:none;align-items:center;padding:0 11px;font-size:10px;font-weight:750;display:inline-flex}.companion-memory-field-grid{grid-template-columns:minmax(0,1fr) minmax(240px,.75fr);gap:14px;display:grid}.companion-memory-manager .stack-form{gap:14px}.companion-memory-manager .stack-form label{color:var(--tw-foreground-456066);gap:7px;font-size:11px;font-weight:700;display:grid}.companion-memory-manager :is(input,select,textarea){width:100%;color:var(--ink)}.companion-memory-manager textarea{resize:vertical;min-height:112px;line-height:1.55}.companion-memory-form-footer{justify-content:space-between;align-items:center;gap:14px;margin-top:14px;display:flex}.companion-memory-form-footer>small{color:var(--muted);font-variant-numeric:tabular-nums;font-size:10px}.companion-memory-columns{grid-template-columns:repeat(2,minmax(0,1fr));align-items:start;gap:18px;display:grid}.companion-memory-list-panel{min-width:0;padding:22px}.companion-memory-list{flex-direction:column;gap:10px;margin:0;padding:0;list-style:none;display:flex}.companion-memory-list li{border:1px solid color-mix(in srgb, var(--line) 74%, transparent);border-radius:var(--radius-sm);background:color-mix(in srgb, var(--surface) 76%, transparent);transition:border-color .16s ease, background-color .16s ease, transform .18s var(--ease-spring);justify-content:space-between;align-items:flex-start;gap:18px;padding:15px;font-size:13px;display:flex}.companion-memory-list li:hover{border-color:color-mix(in srgb, var(--accent-border) 28%, var(--line));background:color-mix(in srgb, var(--accent) 4%, var(--surface));transform:translateY(-1px)}.companion-memory-entry-copy{min-width:0}.companion-memory-entry-heading{flex-wrap:wrap;align-items:center;gap:7px;display:flex}.companion-memory-entry-heading strong{color:var(--ink);font-size:13px}.companion-memory-entry-heading span{background:color-mix(in srgb, var(--main) 8%, transparent);color:var(--muted);text-transform:uppercase;letter-spacing:.035em;border-radius:999px;padding:3px 7px;font-size:8px;font-weight:750}.companion-memory-entry-copy p{color:var(--muted);overflow-wrap:anywhere;margin:7px 0 0;font-size:11px;line-height:1.55}.companion-memory-actions{flex:none;align-items:center;gap:10px;display:flex}.companion-memory-actions .ai-output-delete:first-child:hover{color:var(--accent-foreground)}.companion-memory-edit-form{flex:1;min-width:0}.companion-memory-edit-form .companion-memory-form-footer{margin-top:8px}.companion-memory-empty{border:1px dashed color-mix(in srgb, var(--line) 80%, transparent);border-radius:var(--radius-sm);color:var(--muted);background:color-mix(in srgb, var(--surface) 48%, transparent);margin:0;padding:18px;font-size:11px;line-height:1.6}.companion-memory-clear-row{justify-content:space-between;align-items:center;gap:18px;padding:2px 4px 0;display:flex}.companion-memory-clear-row p{color:var(--muted);margin:0;font-size:10px}.companion-memory-clear{flex:none}@media (max-width:980px){.companion-memory-columns{grid-template-columns:1fr}}@media (max-width:640px){.companion-memory-add,.companion-memory-list-panel{padding:18px}.companion-memory-field-grid{grid-template-columns:1fr}.companion-memory-list li{flex-direction:column}.companion-memory-actions{justify-content:flex-end;width:100%}.companion-memory-clear-row{flex-direction:column;align-items:flex-start}}.ai-usage-limit-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;display:grid}.ai-usage-limit-form{border:1px solid var(--tw-border-d9e4e3);border-radius:10px;gap:8px;padding:14px;display:grid}.ai-usage-limit-form label{color:var(--tw-foreground-456066);gap:4px;font-size:12px;display:grid}.ai-usage-limit-form input{border:1px solid var(--tw-border-ccd9d7);color:var(--ink);border-radius:8px;padding:8px 10px}.ai-usage-table-wrap{overflow-x:auto}.ai-usage-table{border-collapse:collapse;width:100%;font-size:13px}.ai-usage-table th{text-align:left;color:var(--muted);text-transform:uppercase;letter-spacing:.04em;padding:8px 10px;font-size:11px}.ai-usage-table td{border-top:1px solid var(--tw-border-d9e4e3);padding:8px 10px}.review-actions{flex-wrap:wrap}.review-change-form{border:1px solid var(--tw-border-ccd9d7);gap:10px;margin-top:16px;padding:16px;display:grid}.review-change-form label{color:var(--tw-foreground-456066);gap:6px;font-size:12px;font-weight:650;display:grid}.review-change-form input:not([type=hidden]){border:1px solid var(--tw-border-ccd9d7);width:100%;color:var(--ink);border-radius:8px;padding:10px 12px}.review-change-form button{justify-self:start}.release-readiness{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin-bottom:20px;display:grid}.release-readiness>div{border:1px solid var(--tw-border-dce5e3);background:var(--tw-surface-f8fbfa);border-radius:9px;padding:15px}.release-readiness span,.release-readiness small{color:var(--muted);font-size:10px;display:block}.release-readiness span{text-transform:uppercase;letter-spacing:.05em;font-weight:700}.release-readiness strong{font:600 25px/1 var(--font-heading);margin:8px 0 4px;display:block}.overall-comment-form{border-top:1px solid var(--line);padding-top:18px}.overall-comment-form button{justify-self:end}.release-report-form{background:var(--tw-surface-e8f5f0);border:1px solid var(--tw-border-b9ddd2);border-radius:10px;justify-content:space-between;align-items:center;gap:22px;margin-top:20px;padding:18px 20px;display:flex}.release-report-form strong{margin-bottom:4px;display:block}.release-report-form p{color:var(--muted);margin:0;font-size:11px}.archive-page{padding-top:30px}.archive-page>.admin-header{margin-bottom:20px}.archive-page>.admin-header>div>p:last-child{max-width:680px;margin-bottom:0;font-size:12px}.report-archive-layout{grid-template-columns:minmax(220px,.58fr) minmax(0,2fr);align-items:start;gap:14px;display:grid}.report-release-list{gap:3px;max-height:calc(100vh - 32px);padding:6px;display:grid;position:sticky;top:16px;overflow-y:auto}.report-release-list a{color:inherit;border:1px solid #0000;border-radius:10px;gap:3px;padding:10px 11px;text-decoration:none;display:grid}.report-release-list a:hover{border-color:color-mix(in srgb, var(--accent-border) 16%, var(--line));background:color-mix(in srgb, var(--accent) 5%, transparent)}.report-release-list a.selected{border-color:color-mix(in srgb, var(--accent-border) 30%, var(--line));background:color-mix(in srgb, var(--accent) 10%, var(--glass-strong));box-shadow:0 5px 14px color-mix(in srgb, var(--main) 6%, transparent)}.report-release-list span{color:var(--tw-foreground-39756e);letter-spacing:.02em;font:8.5px/1.3 ui-monospace,monospace}.report-release-list strong{text-overflow:ellipsis;white-space:nowrap;font-size:12px;line-height:1.25;overflow:hidden}.report-release-list small{color:var(--muted);text-overflow:ellipsis;white-space:nowrap;font-size:9px;line-height:1.35;overflow:hidden}.released-report{padding:20px}.report-card-export{flex-direction:column;flex:none;align-items:flex-end;gap:4px;display:flex}.print-hint{max-width:230px;color:var(--muted);text-align:right;margin:0;font-size:10px}.report-card-brand-header{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;gap:20px;margin-bottom:14px;padding-bottom:14px;display:flex}.report-card-brand-identity{align-items:center;gap:12px;min-width:0;display:flex}.report-card-brand-logo{object-fit:contain;width:44px;height:44px}.report-card-brand-header strong{font:600 15px var(--font-heading);display:block}.report-card-brand-header span{color:var(--muted);text-transform:uppercase;letter-spacing:.04em;font-size:10px}.report-card-release-footer{border-top:1px solid var(--line);justify-content:space-between;align-items:flex-end;gap:20px;margin-top:18px;padding-top:16px;display:flex}.report-card-signature{gap:3px;display:grid}.report-card-signature-image{object-fit:contain;max-width:160px;max-height:48px;margin-bottom:4px}.report-card-signature span{color:var(--muted);text-transform:uppercase;letter-spacing:.04em;font-size:9px}.report-card-signature strong{font-size:11px}.report-card-release-meta{text-align:right;color:var(--muted);gap:2px;font-size:10px;display:grid}.report-card-release-meta span,.report-card-release-meta small{white-space:nowrap}.released-report>header{border-bottom:1px solid var(--line);justify-content:space-between;align-items:start;gap:20px;padding-bottom:14px;display:flex}.released-report>header h2{font:600 27px/1 var(--font-heading);margin:3px 0 5px}.released-report>header p:last-child{color:var(--muted);margin:0;font-size:11px}.released-stamp{text-align:right;color:var(--tw-foreground-17634f);gap:4px;display:grid}.released-stamp strong{text-transform:uppercase;font:700 11px ui-monospace,monospace}.released-stamp span{color:var(--muted);font-size:10px}.released-subject-list>article{border-bottom:1px solid var(--line);padding:16px 2px}.released-subject-heading{justify-content:space-between;align-items:center;gap:20px;display:flex}.released-subject-heading>div>span{color:var(--tw-foreground-39756e);font:10px ui-monospace,monospace}.released-subject-heading h3{font:600 19px/1.1 var(--font-heading);margin:4px 0 3px}.released-subject-heading small{color:var(--muted);font-size:10px}.released-score-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;margin:12px 0;display:grid}.released-score-grid>div{background:var(--tw-surface-f3f7f6);border-radius:8px;padding:9px 10px}.released-score-grid span,.released-score-grid small{color:var(--muted);text-transform:uppercase;font-size:9px;display:block}.released-score-grid strong{margin:4px 0 2px;display:block}.released-subject-list blockquote,.overall-release-comment blockquote{color:var(--tw-foreground-40575d);font:14px/1.5 var(--font-heading);white-space:pre-wrap;margin:0}.released-subject-comment{border:1px solid color-mix(in srgb, var(--accent-border) 16%, var(--line));background:var(--glass-strong);border-radius:12px;margin-top:13px;padding:12px 14px 13px;box-shadow:inset 0 1px #ffffff7a}.released-subject-comment>span{color:var(--tw-foreground-39756e);letter-spacing:.07em;text-transform:uppercase;margin-bottom:7px;font:700 9px/1.2 ui-monospace,monospace;display:block}.released-subject-comment blockquote{color:var(--ink)}.released-unit-breakdown{margin:0 0 13px}.released-unit-breakdown>span{color:var(--tw-foreground-39756e);text-transform:uppercase;letter-spacing:.04em;margin-bottom:8px;font:700 10px ui-monospace,monospace;display:block}.released-unit-breakdown .domain-results-table th{padding:9px 16px}.released-unit-breakdown .domain-results-table td{height:68px;padding:10px 16px}.released-unit-breakdown .domain-score-result{gap:7px}.overall-release-comment{background:var(--tw-surface-edf5f2);border-radius:9px;margin-top:16px;padding:14px}.overall-release-comment>span{color:var(--tw-foreground-39756e);text-transform:uppercase;margin-bottom:8px;font:10px ui-monospace,monospace;display:block}a,button{transition:color .16s,border-color .16s,box-shadow .16s,transform .16s}input,select,textarea{transition:color .16s,background-color .16s,border-color .16s,box-shadow .16s,transform .16s}a:focus,a:focus-visible,button:focus,button:focus-visible,input:focus,input:focus-visible,select:focus,select:focus-visible,textarea:focus,textarea:focus-visible{outline:none}input:not([type=checkbox]):not([type=radio]):not([type=color]),select,textarea{border-color:color-mix(in srgb, var(--main-border) 17%, transparent);background:color-mix(in srgb, var(--surface) 72%, transparent);box-shadow:inset 0 1px 0 color-mix(in srgb, var(--glass-highlight) 88%, transparent);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px)}input[type=checkbox],input[type=radio]{accent-color:var(--accent)}.admin-workspace-toolbar,.assessment-workspace-tabs,.assessment-detail-tabs,.auth-card,.assessment-card,.foundation-card,.question-editor,.student-question,.assessment-setup-card,.question-library,.term-card,.grade-curriculum-card,.student-subject-card,.subject-progress-card,.relationship-action-panel,.release-readiness>div,.released-score-grid>div,.review-change-form{border-color:var(--glass-line);background:var(--glass);box-shadow:0 12px 34px color-mix(in srgb, var(--main) 8%, transparent), inset 0 1px 0 var(--tw-shadow-rgba-255-255-255-9);-webkit-backdrop-filter:blur(20px)saturate(140%);backdrop-filter:blur(20px)saturate(140%)}.assessment-card:hover,.foundation-card:hover,.grade-curriculum-card:hover,.subject-progress-card:hover{border-color:color-mix(in srgb, var(--accent-border) 38%, var(--tw-border-white));box-shadow:0 18px 38px color-mix(in srgb, var(--main) 12%, transparent), inset 0 1px 0 var(--glass-highlight)}.metric{box-shadow:0 12px 32px color-mix(in srgb, var(--main) 8%, transparent), inset 0 1px 0 color-mix(in srgb, var(--glass-highlight) 88%, transparent);-webkit-backdrop-filter:blur(18px)saturate(135%);backdrop-filter:blur(18px)saturate(135%);border-color:var(--tw-border-rgba-255-255-255-72)!important}.metric-link:hover,.metric-link:focus-visible{box-shadow:0 18px 38px color-mix(in srgb, var(--main) 13%, transparent)}.report-missing,.status-pill.incomplete,.status-pill.submitted,.status-pill.in_review{color:color-mix(in srgb, var(--secondary-foreground) 72%, var(--tw-foreground-4f3520))}.foundation-banner,.automatic-result,.released-result-banner,.release-report-form{border-color:color-mix(in srgb, var(--accent-border) 24%, var(--tw-border-rgba-255-255-255-72));background:color-mix(in srgb, var(--accent) 10%, var(--tw-surface-rgba-255-255-255-7));box-shadow:inset 0 1px 0 var(--tw-shadow-rgba-255-255-255-85);-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px)}.assessment-status,.result-hero,.admin-save-bar,.builder-submit{border-color:color-mix(in srgb, var(--main-border) 76%, var(--tw-border-white));background:linear-gradient(135deg, color-mix(in srgb, var(--main) 92%, transparent), color-mix(in srgb, var(--main) 78%, var(--accent)));color:var(--on-main);box-shadow:0 20px 48px color-mix(in srgb, var(--main) 24%, transparent), inset 0 1px 0 var(--tw-shadow-rgba-255-255-255-19);-webkit-backdrop-filter:blur(24px)saturate(145%);backdrop-filter:blur(24px)saturate(145%)}.assessment-status h2,.assessment-status p,.result-hero,.result-hero h2,.builder-submit strong{color:var(--on-main)}.assessment-status .eyebrow,.result-hero .eyebrow,.builder-submit p,.admin-save-bar small{color:color-mix(in srgb, var(--on-main) 72%, transparent)}.builder-submit .primary{border-color:color-mix(in srgb, var(--accent-border) 72%, var(--tw-border-white));background:var(--accent);color:var(--on-accent)}.builder-step-number,.question-sequence{background:var(--main);color:var(--on-main)}.setup-step,.format-picker-card.selected,.true-false-editor>div>label.selected{border-color:color-mix(in srgb, var(--accent-border) 58%, var(--tw-border-white))}.response-style-picker label:has(input:checked){border-color:color-mix(in srgb, var(--accent-border) 58%, var(--tw-border-white))}.format-picker-card.selected,.true-false-editor>div>label.selected{background:color-mix(in srgb, var(--accent) 10%, var(--tw-surface-rgba-255-255-255-76));box-shadow:inset 0 0 0 1px color-mix(in srgb, var(--accent) 48%, transparent)}.response-style-picker label:has(input:checked){background:color-mix(in srgb, var(--accent) 10%, var(--tw-surface-rgba-255-255-255-76));box-shadow:inset 0 0 0 1px color-mix(in srgb, var(--accent) 48%, transparent)}.assessment-workspace-tabs a.active,.assessment-detail-tabs a.active{background:var(--tw-surface-rgba-255-255-255-8);color:var(--main-foreground);box-shadow:0 7px 20px color-mix(in srgb, var(--main) 10%, transparent), inset 0 1px 0 var(--glass-highlight)}.assessment-detail-tabs b,.unsaved-dot{background:var(--secondary);color:var(--on-secondary);box-shadow:0 0 0 4px color-mix(in srgb, var(--secondary) 17%, transparent)}.admin-section-tabs button:hover{background:color-mix(in srgb, var(--accent) 9%, var(--tw-surface-rgba-255-255-255-7));color:var(--main-foreground)}.admin-section-tabs button.active{background:var(--main);color:var(--on-main);box-shadow:0 7px 18px color-mix(in srgb, var(--main) 17%, transparent)}.admin-settings-button{border-color:color-mix(in srgb, var(--main-border) 16%, transparent);background:var(--tw-surface-rgba-255-255-255-64)}.admin-settings-button:hover,.admin-settings-button.active{border-color:color-mix(in srgb, var(--accent-border) 48%, var(--tw-border-white));background:color-mix(in srgb, var(--accent) 9%, var(--tw-surface-rgba-255-255-255-72));color:var(--main-foreground)}.settings-subsection-heading{border-top:1px solid var(--line);margin:28px 0 15px;padding-top:26px}.settings-subsection-heading:first-child{border-top:0;margin-top:0;padding-top:0}.settings-subsection-heading h3{font:600 20px/1.15 var(--font-heading);margin:0 0 6px}.settings-subsection-heading>p:last-child{max-width:680px;color:var(--muted);margin:0;font-size:12px;line-height:1.55}.theme-settings{grid-template-columns:minmax(0,1fr) minmax(320px,.85fr);align-items:stretch;gap:22px;display:grid}.theme-color-controls{align-content:start;gap:10px;display:grid}.theme-color-field{border:1px solid var(--glass-line);background:var(--glass);min-height:76px;box-shadow:inset 0 1px 0 var(--tw-shadow-rgba-255-255-255-16);border-radius:14px;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:18px;padding:13px 14px;display:grid}.theme-color-field>span:first-child,.theme-color-field strong,.theme-color-field small{display:block}.theme-color-field strong{color:var(--ink);font-size:12px}.theme-color-field small{color:var(--muted);margin-top:4px;font-size:10px;font-weight:400}.theme-color-inputs{grid-template-columns:42px 98px;align-items:center;gap:8px;display:grid}.theme-color-inputs input[type=color]{border:1px solid color-mix(in srgb, var(--main-border) 15%, transparent);background:var(--glass-strong);cursor:pointer;border-radius:12px;width:42px;height:42px;padding:3px}.theme-color-inputs input[type=color]::-webkit-color-swatch-wrapper{padding:2px}.theme-color-inputs input[type=color]::-webkit-color-swatch{border:0;border-radius:7px}.theme-color-inputs input:not([type=color]){text-transform:uppercase;width:98px;min-height:42px;padding:9px;font:700 11px ui-monospace,monospace}.theme-reset-button{justify-self:start;margin:3px 4px 0}.theme-live-preview{--preview-main:var(--main);--preview-accent:var(--accent);--preview-secondary:var(--secondary);--preview-on-main:var(--on-main);--preview-on-accent:var(--on-accent);--preview-on-secondary:var(--on-secondary);border:1px solid var(--glass-line);background:radial-gradient(circle at 80% 10%, color-mix(in srgb, var(--preview-secondary) 24%, transparent), transparent 48%), color-mix(in srgb, var(--preview-main) 5%, var(--paper));min-height:280px;box-shadow:0 18px 42px color-mix(in srgb, var(--preview-main) 17%, transparent), inset 0 1px 0 var(--tw-shadow-rgba-255-255-255-16);border-radius:18px;grid-template-columns:76px minmax(0,1fr);display:grid;overflow:hidden}.theme-preview-sidebar{background:linear-gradient(160deg, var(--preview-main), color-mix(in srgb, var(--preview-main) 72%, var(--preview-accent)));grid-auto-rows:max-content;justify-items:center;gap:18px;padding:18px 12px;display:grid}.theme-preview-logo{border:1px solid color-mix(in srgb, var(--preview-on-main) 42%, transparent);width:34px;height:34px;color:var(--preview-on-main);font:700 13px var(--font-heading);border-radius:11px;place-items:center;display:grid}.theme-preview-sidebar i{background:color-mix(in srgb, var(--preview-on-main) 30%, transparent);border-radius:999px;width:28px;height:6px;display:block}.theme-preview-sidebar i:first-of-type{background:var(--preview-accent)}.theme-preview-content{color:var(--ink);padding:26px 22px}.theme-preview-content>span{color:var(--preview-accent);letter-spacing:.8px;font:700 8px ui-monospace,monospace}.theme-preview-content>strong{font:600 24px/1.05 var(--font-heading);color:var(--ink);margin:8px 0 6px;display:block}.theme-preview-content>p{max-width:320px;color:var(--muted);margin:0;font-size:10px;line-height:1.5}.theme-preview-content>div{flex-wrap:wrap;align-items:center;gap:8px;margin-top:18px;display:flex}.theme-preview-content button{background:var(--preview-accent);color:var(--preview-on-accent);border:0;border-radius:8px;padding:9px 11px;font-size:9px;font-weight:700}.theme-preview-content>div>span{background:var(--preview-secondary);color:var(--preview-on-secondary);border-radius:8px;padding:8px 10px;font-size:8px;font-weight:700}.theme-preview-content section{grid-template-columns:repeat(3,minmax(0,1fr));gap:7px;margin-top:18px;display:grid}.theme-preview-content section i{border:1px solid var(--glass-line);background:var(--glass);height:44px;box-shadow:0 8px 20px color-mix(in srgb, var(--preview-main) 8%, transparent), inset 0 1px 0 var(--tw-shadow-rgba-255-255-255-16);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border-radius:10px}.panel,.assessment-setup-card,.question-library,.assessment-status,.result-hero,.admin-save-bar,.released-result-banner,.auth-card,.theme-live-preview,.assessment-visual,.matching-board{border-radius:var(--radius-lg)}.metric,.foundation-card,.assessment-card,.question-editor,.student-question,.term-card,.grade-curriculum-card,.student-subject-card,.subject-progress-card,.relationship-action-panel,.release-readiness>div,.released-score-grid>div,.admin-workspace-toolbar,.assessment-workspace-tabs,.assessment-detail-tabs,.empty-state,.format-picker-card,.matching-card,.theme-color-field,.multi-part-card,.blank-answer-group,.fill-blank-preview,.student-upload-zone,.question-media-field,.upload-format-preview,.response-format-preview,.publish-bar,.destructive-bar,.builder-submit,.automatic-result,.overall-comment-form,.release-report-form,.overall-release-comment,.rollover-summary>div,.term-create-summary,.numeric-range-preview,.review-change-form{border-radius:var(--radius-md)}.answer-option-row,.accepted-answer-row,.matching-pair-row,.ordering-item-row,.ordering-response li,.preview-order-list li,.response-order-list li,.required-toggle,.homeroom-option-grid label,.true-false-editor>div>label,.response-style-picker label,.assessment-kind-picker label,.student-choice-list label,.preview-pair-grid>div,.response-pair-list>div,.preview-part-list>div,.response-part-list>div,.response-chip-list span{border-radius:var(--radius-sm)}.panel,.metric,.foundation-card,.assessment-card,.question-editor,.student-question,.term-card,.grade-curriculum-card,.student-subject-card,.subject-progress-card,.assessment-setup-card,.question-library,.admin-workspace-toolbar,.assessment-workspace-tabs,.assessment-detail-tabs,.auth-card,.theme-color-field,.relationship-action-panel{box-shadow:var(--glass-shadow), inset 0 1px 0 color-mix(in srgb, var(--glass-highlight) 55%, transparent);transition:transform .28s var(--ease-spring), box-shadow .28s var(--ease-spring), border-color .2s ease}.assessment-card:hover,.format-picker-card:hover,.grade-curriculum-card:hover,.subject-progress-card:hover,.foundation-card:hover{transform:translateY(-4px)}.metric-link:hover,.metric-link:focus-visible{transform:translateY(-4px)scale(1.005)}.primary,.secondary,.danger-button,.success-button,.file-picker-button,.admin-settings-button,.theme-reset-button,.answer-add-button{border-radius:999px}.primary{background:linear-gradient(150deg, color-mix(in srgb, var(--accent) 96%, var(--tw-surface-white)), color-mix(in srgb, var(--accent) 78%, var(--tw-surface-black)));box-shadow:0 10px 24px color-mix(in srgb, var(--accent) 30%, transparent), inset 0 1px 0 var(--tw-shadow-rgba-255-255-255-32);padding:11px 20px}.primary:hover:not(:disabled){box-shadow:0 14px 30px color-mix(in srgb, var(--accent) 34%, transparent), inset 0 1px 0 var(--tw-shadow-rgba-255-255-255-32);transform:translateY(-2px)}.primary:active:not(:disabled){transform:translateY(0)}.secondary{background:var(--tw-surface-rgba-255-255-255-5);-webkit-backdrop-filter:blur(16px)saturate(140%);backdrop-filter:blur(16px)saturate(140%);padding:11px 20px}.secondary:hover:not(:disabled){background:var(--tw-surface-rgba-255-255-255-72);border-color:color-mix(in srgb, var(--accent-border) 30%, transparent);transform:translateY(-2px)}.danger-button:hover:not(:disabled),.success-button:hover:not(:disabled){transform:translateY(-1px)}.table-wrap{border-radius:var(--radius-md);border:1px solid var(--glass-line);background:var(--glass);box-shadow:var(--glass-shadow), inset 0 1px 0 color-mix(in srgb, var(--glass-highlight) 55%, transparent);-webkit-backdrop-filter:blur(20px)saturate(140%);backdrop-filter:blur(20px)saturate(140%);padding:4px 10px}.table-wrap table{border-collapse:separate;border-spacing:0}.table-wrap tr:hover td{background:var(--tw-surface-rgba-255-255-255-28)}th,td{border-bottom-color:var(--tw-border-rgba-255-255-255-4)}.status-pill,.role-pill,.phase-badge,.scoring-mode,.selection-count,.question-tally,.format-count,.current-user-label,.homeroom-check,.correct-answer-toggle>span{box-shadow:inset 0 1px 0 var(--tw-shadow-rgba-255-255-255-5)}input:not([type=checkbox]):not([type=radio]):not([type=color]),select,textarea,.field-grid input,.field-grid select,.field-grid textarea,.stack-form input,.stack-form select,.stack-form textarea{border-radius:var(--radius-sm)}.auth-page{--main:var(--school-main);--accent:var(--school-accent);--secondary:var(--school-secondary);--on-main:var(--school-on-main);--on-accent:var(--school-on-accent);--on-secondary:var(--school-on-secondary);background:radial-gradient(circle at 15% 10%, color-mix(in srgb, var(--accent) 30%, transparent), transparent 34rem), radial-gradient(circle at 88% 85%, color-mix(in srgb, var(--secondary) 22%, transparent), transparent 32rem), linear-gradient(160deg, var(--main), color-mix(in srgb, var(--main) 74%, var(--accent)))}.auth-card{background:var(--tw-surface-rgba-255-255-255-86);border:1px solid var(--tw-border-rgba-255-255-255-6);box-shadow:0 40px 90px -20px var(--tw-shadow-rgba-6-28-35-45), inset 0 1px 0 var(--tw-shadow-rgba-255-255-255-9);-webkit-backdrop-filter:blur(24px)saturate(150%);backdrop-filter:blur(24px)saturate(150%)}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}@media (max-width:950px){.theme-settings,.academic-foundation-layout{grid-template-columns:1fr}.academic-vacation-create-card .stack-form{grid-template-columns:repeat(2,minmax(0,1fr))}.academic-vacation-create-card .required-toggle{grid-column:auto;width:auto}.admin-overview-metrics{grid-template-columns:repeat(3,minmax(0,1fr))}.homeroom-overview-metrics,.relationship-action-panel .stack-form,.admin-grid,.grade-curriculum-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.student-subject-grid{grid-template-columns:1fr}.field-grid,.foundation-grid,.assessment-card-grid,.subject-progress-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.question-base-fields{grid-template-columns:minmax(0,1fr) 100px}.question-base-fields .checkbox-label{grid-column:1/-1}.required-toggle{grid-column:1/-1;width:fit-content;margin-top:0}.format-picker-grid,.homeroom-option-grid,.setup-schedule{grid-template-columns:repeat(2,minmax(0,1fr))}.setup-schedule-heading,.setup-time-limit{grid-column:1/-1}.schedule-arrow{display:none}.assessment-authoring-header{grid-template-columns:1fr;align-items:start;gap:20px}.authoring-progress{width:fit-content}.paper-authoring-aside{justify-items:start}.numeric-answer-editor{grid-template-columns:repeat(2,minmax(0,1fr))}.numeric-answer-copy,.numeric-range-preview{grid-column:1/-1}}@media (max-width:760px){.admin-workspace-toolbar{padding:8px;top:7px}.academic-group-heading{flex-direction:column;align-items:flex-start;gap:7px}.academic-group-heading>p{text-align:left;max-width:none}.maximum-grade-control,.academic-guide,.generate-homerooms-card>form,.add-homeroom-card>form,.academic-vacation-create-card .stack-form{grid-template-columns:1fr}.academic-vacation-create-card .stack-form>label:first-child,.academic-vacation-create-card .stack-form>label:nth-child(2){grid-column:auto}.grade-group-row{grid-template-columns:1fr}.grade-group-rename-form,.grade-group-create-form{grid-template-columns:minmax(0,1fr) 72px}.grade-group-name-field{grid-column:1/-1}.grade-group-delete-form{justify-self:end}.grade-group-editor-heading,.grade-level-assign-heading{flex-direction:column;align-items:flex-start;gap:7px}.admin-toolbar-top{grid-template-columns:minmax(0,1fr) auto}.admin-section-tabs{scrollbar-width:thin;display:flex;overflow-x:auto}.admin-section-tabs button{flex:none;padding-inline:13px}.admin-settings-button{padding-inline:10px}.admin-filter-bar{grid-template-columns:1fr;display:grid}.admin-filter-bar input,.admin-filter-bar select{width:100%}.admin-save-bar{top:auto;bottom:calc(10px + env(safe-area-inset-bottom));border-color:var(--tw-border-rgba-255-255-255-16);background:linear-gradient(145deg, color-mix(in srgb, var(--main) 96%, transparent), color-mix(in srgb, var(--main) 78%, var(--accent)));width:min(460px,100% - 20px);box-shadow:0 18px 46px color-mix(in srgb, var(--main) 42%, transparent), inset 0 1px 0 var(--tw-shadow-rgba-255-255-255-14);-webkit-backdrop-filter:blur(18px)saturate(135%);backdrop-filter:blur(18px)saturate(135%);border-radius:18px;align-items:center;gap:12px;padding:9px 10px 9px 13px;transform:translate(-50%,140%)}.admin-save-bar.visible{transform:translate(-50%)}.admin-save-bar>div:first-child{flex:auto;gap:8px;min-width:0;display:flex}.admin-save-bar strong{text-overflow:ellipsis;white-space:nowrap;font-size:11.5px;overflow:hidden}.admin-save-bar small{display:none}.admin-save-actions{flex:none;gap:6px}.admin-save-actions button{white-space:nowrap;border-radius:12px;min-height:38px;padding:8px 12px;font-size:11px}.rollover-heading-actions{flex-direction:column;align-items:flex-end}.relationship-action-panel .stack-form{grid-template-columns:1fr}.student-subject-assignment{flex-direction:column;align-items:stretch}.optional-navigation-frame{padding:12px;display:block}.sidebar.portal-navigation{grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:8px;width:100%;border-radius:var(--radius-md)!important;height:auto!important;min-height:0!important;margin:0 0 12px!important;padding:8px 10px!important;display:grid!important;position:static!important;overflow:hidden!important}.portal-navigation .navigation-brand-row{border-bottom:0!important;flex-direction:row!important;flex:none!important;min-height:0!important;padding:0!important}.portal-navigation .brand-copy,.portal-navigation .navigation-section-label,.portal-navigation .sidebar-collapse-button{display:none!important}.portal-navigation .navigation-links-scroll{overscroll-behavior-inline:contain;scrollbar-width:none;-webkit-overflow-scrolling:touch;flex-direction:row;flex:auto;align-items:center;gap:2px;min-width:0;display:flex;overflow:auto hidden}.portal-navigation .navigation-links-scroll::-webkit-scrollbar{display:none}.portal-navigation .context-navigation-back{white-space:nowrap;flex:none;min-height:0;margin:0;padding:9px 11px}.portal-navigation nav{flex:none;align-items:center;gap:2px;min-width:max-content;overflow:visible;flex-direction:row!important;margin:0!important;display:flex!important}.portal-navigation nav::-webkit-scrollbar{display:none}.portal-navigation nav:first-of-type{margin-left:0!important}.portal-navigation nav a{white-space:nowrap;font-size:12px;flex:none!important;justify-content:flex-start!important;min-height:0!important;padding:9px 11px!important}.portal-navigation nav a span{display:inline!important}.portal-navigation .sidebar-bottom{border:0!important;flex:none!important;justify-content:flex-start!important;margin:0!important;padding:0!important;display:flex!important}.portal-navigation .navigation-user{display:none!important}.content{padding:16px 8px 60px}.route-loading{width:100%;padding:24px 20px 60px}.route-loading-title{height:34px}.route-loading-metrics{grid-template-columns:1fr}.route-loading-card{min-height:118px}.route-loading-panel{padding:20px}.profile-settings-layout{grid-template-columns:1fr}.profile-settings-summary{position:static}.profile-field-grid,.navigation-scope-picker,.notification-preferences-picker{grid-template-columns:1fr}.navigation-scope-picker legend,.profile-wide-field{grid-column:auto}.profile-form-footer{flex-direction:column;align-items:stretch}.profile-form-footer button{width:100%}.assessment-workspace-tabs,.assessment-detail-tabs{width:100%;overflow-x:auto}.assessment-workspace-tabs a,.assessment-detail-tabs a{flex:1 0 160px;min-width:160px}.response-workspace .section-title{flex-direction:column;align-items:flex-start}.metrics,.admin-grid,.admin-grid.two,.field-grid,.foundation-grid,.assessment-card-grid,.assessment-overview,.review-summary,.subject-progress-grid,.rollover-prepare,.rollover-summary,.calendar-guide,.report-policy-banner,.report-context-form,.term-manager-controls,.term-timeline,.portal-dashboard-grid,.overview-top-grid,.overview-news-grid,.academic-year-create-row,.academic-year-create-footer{grid-template-columns:1fr}.academic-year-create-footer .primary{width:100%}.subject-create-fields{grid-template-columns:1fr}.subject-create-fields .primary{width:100%}.people-provisioning-row,.people-provisioning-action-row{grid-template-columns:1fr}.people-provisioning-action-row .primary{width:100%}.portal-dashboard-grid>.attention-panel,.portal-dashboard-grid>.attention-panel+.portal-dashboard-widget{grid-area:auto/1}.portal-dashboard-grid>.attention-panel+.portal-dashboard-widget>.panel{height:auto}.overview-news-grid .upcoming-events-panel,.overview-news-grid .recent-announcements-panel{min-height:0}.grade-curriculum-grid,.student-subject-card fieldset{grid-template-columns:1fr}.curriculum-section .section-title,.curriculum-subjects-toolbar,.curriculum-year-form{flex-direction:column;align-items:stretch}.curriculum-year-select{width:100%}.report-policy-banner>div{border-right:0;border-bottom:1px solid var(--line);padding-bottom:12px}.report-policy-banner p{grid-column:auto}.homework-review-row,.homework-excuse-form,.subject-overview-row{flex-direction:column;align-items:stretch}.calc-summary-grid>div{border-right:0;border-bottom:1px solid var(--line);padding:0 0 12px}.homework-excuse-form input:not([type=hidden]){width:100%}.release-readiness,.released-score-grid{grid-template-columns:1fr 1fr}.report-archive-layout{grid-template-columns:1fr}.report-release-list{max-height:none;display:flex;position:static;overflow:auto hidden}.report-release-list a{flex:0 0 210px;min-width:210px}.release-report-form,.released-report>header{flex-direction:column;align-items:stretch}.released-stamp{text-align:left}.report-card-release-footer{flex-direction:column;align-items:stretch}.report-card-release-meta{text-align:left}.rollover-row-form{grid-template-columns:1fr;align-items:stretch}.wide-table-action{min-width:260px}.management-actions,.move-enrollment-form{flex-direction:column;align-items:stretch}.move-enrollment-form select{width:100%;min-width:0}.assessment-setup-grid{grid-template-columns:1fr;padding:22px}.setup-title-field,.assessment-kind-picker,.setup-section-label,.setup-audience,.setup-schedule,.setup-instructions{grid-column:auto}.homeroom-option-grid{grid-template-columns:1fr}.setup-audience-heading{flex-direction:column;align-items:flex-start}.setup-audience-heading>div:last-child{flex-wrap:wrap}.builder-section-heading{flex-direction:column;align-items:flex-start}.question-editor-header,.add-question-panel,.builder-submit,.publish-bar,.destructive-bar,.submission-actions{flex-direction:column;align-items:stretch}.lesson-plan-submit-actions{flex-direction:column;width:100%}.lesson-plan-objective-row{grid-template-columns:28px minmax(0,1fr)}.lesson-plan-objective-move-actions,.lesson-plan-objective-row>.text-button{flex-direction:row;grid-column:2;justify-self:start}.lesson-plan-objective-meta{grid-template-columns:1fr}.lesson-plan-material-row{grid-template-columns:28px minmax(0,1fr)}.lesson-plan-material-row .lesson-plan-objective-move-actions,.lesson-plan-material-row>.text-button{flex-direction:row;grid-column:2;justify-self:start}.lesson-plan-material-fields{grid-template-columns:1fr}.submission-row,.result-row,.released-result-banner,.result-hero{flex-direction:column;align-items:flex-start}.review-fields{grid-template-columns:1fr}.result-score{text-align:left}.question-actions{align-self:end}.answer-option-row{grid-template-columns:28px minmax(0,1fr) auto}.answer-option-row .correct-answer-toggle{grid-column:1/-1;width:fit-content}.response-format-preview{grid-template-columns:42px minmax(0,1fr)}.response-preview-field{grid-column:1/-1}.assessment-overview>p{grid-column:auto}.matching-pair-row{grid-template-columns:26px minmax(0,1fr)}.matching-pair-row .pair-connector{display:none}.matching-pair-row input:last-of-type{grid-column:2}.matching-pair-row .text-button{grid-column:2;justify-self:start}.matching-column-labels{display:none}.multi-part-card>header{grid-template-columns:auto minmax(0,1fr)}.multi-part-card>header .text-button{grid-column:1/-1;justify-self:start}.question-media-field{flex-direction:column;align-items:stretch}.question-media-preview{width:100%;height:auto;max-height:260px}.topbar,.admin-header,.assessment-status{align-items:start}.portal-content .topbar{flex-direction:column;gap:14px}.portal-top-actions{justify-content:flex-start;width:100%}.portal-profile-actions{margin-left:auto}.header-actions,.paper-mark-actions{flex-direction:column;align-items:stretch;width:100%}.profile-area>div{display:none}.admin-shell{width:min(100% - 28px,1180px);padding-top:28px}.admin-header{flex-direction:column-reverse}.admin-header .eyebrow{margin-top:22px}}@media (max-width:500px){.theme-color-field{grid-template-columns:1fr;gap:10px}.theme-color-inputs{grid-template-columns:42px minmax(0,1fr)}.theme-color-inputs input:not([type=color]){width:100%}.theme-live-preview{grid-template-columns:58px minmax(0,1fr)}.theme-preview-content{padding:21px 16px}.topbar h1,.admin-header h1,.auth-card h1{font-size:31px}.panel,.auth-card{padding:20px}.metrics{gap:10px}.metric{min-height:112px}.metric strong{font-size:30px}.assessment-status{flex-direction:column}.response-filter-links{width:100%}.response-filter-links a{text-align:center;flex:1}.assessment-authoring-header{margin-bottom:22px}.authoring-heading .text-link{margin-bottom:18px}.authoring-progress{justify-content:center;width:100%;padding-inline:8px}.paper-authoring-aside,.paper-authoring-aside .secondary{width:100%}.authoring-progress>span{min-width:58px}.authoring-progress i{width:15px}.question-editor-header{padding:16px}.question-editor-identity{grid-template-columns:38px minmax(0,1fr)}.question-sequence{display:none}.question-actions{flex-wrap:wrap;align-self:stretch;width:100%}.question-actions .danger-button{margin-left:auto}.question-base-fields,.question-editor>.choice-editor,.question-editor>.rich-format-editor,.question-editor>.response-format-preview,.question-editor>.numeric-answer-editor,.question-editor>.question-media-field{padding:16px}.format-picker-grid,.matching-board{grid-template-columns:1fr}.format-picker-card{min-height:82px}.question-library{padding:18px}.question-library .section-title{flex-direction:column;align-items:flex-start}.true-false-editor>div,.numeric-answer-editor{grid-template-columns:1fr}.numeric-answer-copy,.numeric-range-preview{grid-column:auto}.builder-submit{grid-template-columns:34px minmax(0,1fr);position:static}.builder-submit .primary{grid-column:1/-1;width:100%}.ordering-item-row{grid-template-columns:28px minmax(0,1fr)}.ordering-item-row .mini-move-actions,.ordering-item-row .text-button{grid-column:2}.fill-blank-prompt-tools{flex-direction:column;align-items:flex-start}.blank-answer-header{grid-template-columns:auto minmax(0,1fr)}.blank-answer-header .text-button{grid-column:1/-1;justify-self:start}.blank-answer-row{grid-template-columns:24px minmax(0,1fr)}.blank-answer-row .text-button{grid-column:2;justify-self:start}.preview-pair-grid>div,.response-pair-list>div{grid-template-columns:22px minmax(0,1fr)}.preview-pair-grid b,.response-pair-list b{display:none}.submitted-file-card{flex-wrap:wrap;align-items:flex-start}.assessment-setup-heading{flex-wrap:wrap;align-items:flex-start;padding:20px}.assessment-setup-heading .setup-step{width:38px;height:38px}.ai-import-trigger{text-align:left;align-items:flex-start;margin-left:0}.ai-import-actions{justify-content:flex-start}.assessment-setup-grid{gap:18px;padding:20px}.assessment-kind-picker>div{grid-template-columns:1fr}.assessment-kind-picker label{min-height:48px}.setup-section-label{flex-direction:column;align-items:flex-start;gap:3px}.setup-schedule{grid-template-columns:1fr}.setup-time-limit{grid-column:auto;max-width:none}.assessment-timer{flex-direction:column;align-items:flex-start;gap:6px;position:static}.response-style-picker>div{grid-template-columns:1fr}}.directory-search-bar{margin-bottom:16px}.directory-search-bar input{max-width:360px}.class-widget-grid,.student-card-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;display:grid}.teacher-class-section+.teacher-class-section{margin-top:18px}.class-widget,.student-card{border:1px solid var(--glass-line);border-radius:var(--radius-md);background:var(--glass);min-width:0;box-shadow:var(--glass-shadow), inset 0 1px 0 color-mix(in srgb, var(--glass-highlight) 55%, transparent);transition:transform .24s var(--ease-spring), box-shadow .24s ease;position:relative;overflow:hidden}.class-widget:hover,.student-card:hover{transform:translateY(-4px)}.class-widget>a:first-child{min-height:158px;color:inherit;padding:22px 58px 20px 20px;text-decoration:none;display:block}.class-widget span,.student-card span,.report-card-widget>div>span{color:var(--accent-foreground);letter-spacing:.7px;font:800 11px/1.2 ui-monospace,monospace}.class-widget h3,.student-card h3{font:600 23px/1.08 var(--font-heading);margin:8px 0 7px}.class-widget p,.student-card p{color:var(--muted);margin:0;line-height:1.45}.class-gear,.student-manage-link{z-index:2;border:1px solid var(--glass-line);background:var(--tw-surface-rgba-255-255-255-62);width:38px;height:38px;color:var(--main-foreground);box-shadow:0 8px 20px var(--tw-shadow-rgba-13-42-49-12);border-radius:999px;place-items:center;text-decoration:none;display:grid;position:absolute}.class-gear{top:16px;right:16px}.class-tags{flex-wrap:wrap;gap:6px;margin-top:14px;display:flex}.class-tags i{background:color-mix(in srgb, var(--accent) 11%, var(--tw-surface-white));color:var(--accent-foreground);border-radius:999px;padding:5px 8px;font:800 10px ui-monospace,monospace}@media (max-width:760px){.homerooms-portal-content .topbar{position:relative}.homerooms-portal-content .portal-heading{width:100%;padding-right:58px}.homerooms-portal-content .portal-top-actions{width:auto;position:absolute;top:39px;right:0}.homerooms-portal-content .portal-profile-actions{margin-left:0}.homerooms-portal-content .class-widget>a:first-child{align-content:center;min-height:76px;padding:13px 58px 13px 15px;display:grid}.homerooms-portal-content .class-widget h3{margin:4px 0 0;font-size:18px}.homerooms-portal-content .class-widget p,.homerooms-portal-content .class-tags{display:none}.homerooms-portal-content .class-gear{width:36px;height:36px;top:50%;right:12px;transform:translateY(-50%)}}.student-card-link{min-height:116px;color:inherit;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:14px;padding:18px 52px 18px 18px;text-decoration:none;display:grid}.student-card-link b{color:var(--accent-foreground);font-size:22px}.student-manage-link{width:32px;height:32px;font-size:13px;top:10px;right:10px}.overview-top-grid{grid-template-columns:minmax(0,1.3fr) minmax(0,1fr);align-items:stretch;gap:15px;margin-bottom:18px;display:grid}.overview-top-grid .student-profile-hero,.overview-top-grid .report-card-widget{margin:0}.overview-news-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:15px;margin-bottom:18px;display:grid}.overview-news-grid .upcoming-events-panel,.overview-news-grid .recent-announcements-panel{min-height:320px}.student-profile-hero{grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:20px;display:grid}.student-profile-hero h2{font:600 30px/1.08 var(--font-heading);margin:8px 0 6px}.student-profile-hero p{color:var(--muted);margin:0}.progress-chart-wrap{overflow-x:auto}.progress-chart{width:100%;min-width:620px;height:auto;display:block}.progress-chart text{fill:var(--muted);font-size:11px}.chart-grid-line{stroke:color-mix(in srgb, var(--main-foreground) 12%, transparent);stroke-width:1px}.chart-legend{color:var(--muted);flex-wrap:wrap;gap:10px 18px;margin-top:12px;font-size:12px;display:flex}.chart-legend span{align-items:center;gap:7px;display:inline-flex}.chart-legend i{border-radius:50%;width:9px;height:9px}.percentile-curve-chart-wrap{overflow-x:auto}.percentile-curve-chart{width:100%;min-width:480px;height:auto;display:block}.percentile-curve-chart text{fill:var(--muted);font-size:11px}.percentile-curve-chart-wrap-compact .percentile-curve-chart{min-width:300px}.percentile-band-label{fill:var(--muted);font-size:11px;font-weight:700}.marks-curve-chart-wrap{overflow-x:auto}.marks-curve-chart{width:100%;min-width:480px;height:auto;display:block}.marks-curve-chart text{fill:var(--muted);font-size:11px}.marks-curve-chart-wrap-compact .marks-curve-chart{min-width:300px}.marks-band-label{fill:var(--muted);font-size:11px;font-weight:700}.chart-highlight-line{stroke:var(--chart-3);stroke-width:2px;stroke-dasharray:5 4}.chart-highlight-label{fill:var(--chart-3);font-size:11px;font-weight:700}.radar-chart-wrap{flex-direction:column;align-items:center;display:flex}.radar-chart{width:100%;max-width:360px;height:auto;display:block}.radar-chart text{fill:var(--muted);font-size:11px}.chart-average-ring{stroke:var(--chart-3);stroke-width:1.5px;stroke-dasharray:5 3}.chart-average-ring-label{fill:var(--chart-3);font-weight:700}.radar-panel-body{flex-wrap:wrap;align-items:flex-start;gap:24px;display:flex}.radar-panel-body .radar-chart-wrap{flex:280px;max-width:360px}.radar-panel-stat{flex:300px;min-width:260px}.radar-panel-stat-wide{flex:100%}.chart-mini-title{color:var(--muted);text-transform:uppercase;letter-spacing:.04em;margin:0 0 8px;font-size:12px;font-weight:700}.report-card-widget{color:inherit;justify-content:space-between;align-items:center;gap:24px;margin:18px 0;text-decoration:none;display:flex}.report-card-widget h2{font:600 25px/1.1 var(--font-heading);margin:7px 0}.report-card-widget p{color:var(--muted);margin:0}.report-card-widget>div:last-child{text-align:right;flex:none}.report-card-widget>div:last-child strong{text-transform:capitalize;font-size:18px;display:block}.report-card-widget>div:last-child small{color:var(--accent-foreground);font-weight:800}.student-dashboard-links{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;margin-bottom:18px;display:grid}.student-dashboard-link{border:1px solid var(--glass-line);border-radius:var(--radius-md);background:var(--glass);min-width:0;color:inherit;box-shadow:var(--glass-shadow), inset 0 1px 0 color-mix(in srgb, var(--glass-highlight) 55%, transparent);transition:transform .24s var(--ease-spring), box-shadow .24s ease;grid-template-columns:minmax(0,1fr) auto;gap:7px 20px;padding:21px;text-decoration:none;display:grid;position:relative;overflow:hidden}.student-dashboard-link:hover{transform:translateY(-3px)}.student-dashboard-link:after{content:"";background:var(--accent);width:4px;position:absolute;inset:0 auto 0 0}.student-dashboard-link.pending:after{background:var(--secondary)}.student-dashboard-link>span{color:var(--accent-foreground);letter-spacing:.65px;font:800 10px ui-monospace,monospace}.student-dashboard-link.pending>span{color:color-mix(in srgb, var(--secondary-foreground) 75%, var(--tw-foreground-6d421c))}.student-dashboard-link>strong{font:600 38px/1 var(--font-heading);grid-area:1/2/span 2;align-self:center}.student-dashboard-link p{color:var(--muted);margin:0;font-size:12px;line-height:1.5}.student-dashboard-link b{color:var(--accent-foreground);grid-column:1/-1;margin-top:3px;font-size:11px}.student-subject-dashboard{scroll-margin-top:18px}.subject-gear{white-space:nowrap}.student-selected-subjects{grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;display:grid}.student-selected-subjects article{border:1px solid var(--glass-line);background:color-mix(in srgb, var(--accent) 5%, var(--tw-surface-white));border-radius:10px;gap:5px;padding:14px;display:grid}.student-selected-subjects span{color:var(--accent-foreground);font:800 10px ui-monospace,monospace}.student-selected-subjects strong{font-size:13px}.student-subject-dashboard-form{gap:16px;display:grid}.student-subject-dashboard-form fieldset{border:0;grid-template-columns:repeat(3,minmax(0,1fr));gap:9px;min-width:0;margin:0;padding:0;display:grid}.student-subject-dashboard-form fieldset label{border:1px solid var(--glass-line);background:var(--tw-surface-white);cursor:pointer;border-radius:9px;align-items:flex-start;gap:9px;min-width:0;padding:11px;display:flex}.student-subject-dashboard-form fieldset label.required-subject{background:var(--tw-surface-eaf5f1);border-color:var(--tw-border-b9ddd2);cursor:default}.student-subject-dashboard-form fieldset input{accent-color:var(--accent);margin-top:2px}.student-subject-dashboard-form fieldset span{min-width:0;color:var(--muted);font-size:11px;line-height:1.35}.student-subject-dashboard-form fieldset strong,.student-subject-dashboard-form fieldset small{display:block}.student-subject-dashboard-form fieldset strong{color:var(--ink);font:800 10px ui-monospace,monospace}.student-subject-dashboard-form fieldset small{color:var(--accent-foreground);text-transform:uppercase;margin-top:4px;font:800 8px ui-monospace,monospace}.student-assessment-header{justify-content:space-between;align-items:center;gap:18px;margin-bottom:18px;display:flex}.student-assessment-header nav{border:1px solid var(--glass-line);background:var(--glass);border-radius:999px;gap:7px;padding:5px;display:flex}.student-assessment-header nav a{color:var(--muted);border-radius:999px;padding:8px 11px;font-size:11px;font-weight:750;text-decoration:none}.student-assessment-header nav a.active{background:var(--main);color:var(--tw-foreground-white)}.student-assessment-header nav span{opacity:.78;margin-left:5px}.student-assessment-list{gap:9px;display:grid}.student-assessment-row{border:1px solid var(--glass-line);background:var(--tw-surface-rgba-255-255-255-58);color:inherit;border-radius:10px;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:20px;padding:15px;text-decoration:none;display:grid}a.student-assessment-row:hover{border-color:color-mix(in srgb, var(--accent-border) 35%, var(--glass-line))}.student-assessment-row>div:first-child>span{color:var(--accent-foreground);letter-spacing:.5px;font:800 10px ui-monospace,monospace}.student-assessment-row h3{font:600 18px/1.15 var(--font-heading);margin:6px 0 5px}.student-assessment-row p{color:var(--muted);margin:0;font-size:11px}.student-assessment-row>div:last-child{align-items:center;gap:12px;display:flex}.metric-name{line-height:1.15;font-size:21px!important}.class-settings-form{max-width:620px}.class-management-links{margin-top:18px}.student-photo-form{gap:9px;width:100%;margin:16px 0 8px;display:grid}.student-photo-form input{opacity:0;width:1px;height:1px;position:absolute}.student-photo-form .file-picker-button{cursor:pointer;text-align:center}@media (max-width:950px){.class-widget-grid,.student-card-grid,.student-selected-subjects,.student-subject-dashboard-form fieldset{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width:620px){.class-widget-grid,.student-card-grid{grid-template-columns:1fr}.student-profile-hero{grid-template-columns:auto minmax(0,1fr)}.student-profile-hero>a{text-align:center;grid-column:1/-1;width:100%}.report-card-widget{flex-direction:column;align-items:flex-start}.report-card-widget>div:last-child{text-align:left}.student-dashboard-links,.student-selected-subjects,.student-subject-dashboard-form fieldset{grid-template-columns:1fr}.student-assessment-header{flex-direction:column;align-items:flex-start}.student-assessment-header nav{border-radius:12px;width:100%}.student-assessment-header nav a{text-align:center;flex:1}.student-assessment-row{grid-template-columns:1fr}.student-assessment-row>div:last-child{justify-content:space-between}}.field-grid input,.field-grid select,.field-grid textarea,.stack-form input,.stack-form select,.stack-form textarea,.setup-field input,.setup-field select,.setup-field textarea,.question-base-fields textarea,.question-base-fields input,.choice-row>input[type=text],.choice-row>input:not([type]),.answer-option-row>input,.accepted-answer-row>input,.matching-pair-row input,.ordering-item-row input,.multi-part-card input,.blank-answer-group input,.multi-part-response input,.multi-part-response textarea,.review-fields input,.review-fields textarea,.overall-feedback textarea,.paper-marks-table input,.report-context-form select,.curriculum-year-form select,.move-enrollment-form select,.rollover-row-form select,.admin-filter-bar input,.admin-filter-bar select,.assessment-filter-form select,.student-subject-dashboard-form fieldset label,.navigation-scope-picker label,.question-editor,.student-question,.assessment-card,.authoring-progress,.homeroom-option-grid label,.matching-card,.response-chip-list span,.multi-part-card,.file-picker-button,.mini-move-actions button,.order-controls button,.student-assessment-row,.auth-card{border-color:var(--line);background:var(--surface);color:var(--ink)}.assessment-kind-picker label,.format-picker-card,.grade-curriculum-card fieldset>label,.curriculum-subject-row>label:first-child,.student-subject-card fieldset label,.student-selected-subjects article{border-color:var(--line);background:var(--surface-soft);color:var(--ink)}.matching-card.paired,.true-false-editor>div>label.selected,.answer-option-row.is-correct{background:var(--surface-selected)}.assessment-kind-picker label:has(input:checked){background:var(--surface-selected)}.homeroom-option-grid label:has(input:checked){background:var(--surface-selected)}.student-choice-list label:has(input:checked){background:var(--surface-selected)}.response-style-picker label:has(input:checked){background:var(--surface-selected)}.required-toggle:has(input:checked){background:var(--surface-selected)}.danger-button,.destructive-bar{background:var(--surface-danger)}.metric p,.metric small,.builder-submit p,.publish-bar p,.submission-actions p{color:var(--muted)}.profile-area-link:hover{background:var(--glass-strong)}.portal-content :is(.panel,.metric),.admin-overview-metrics .metric,.results-metrics .metric{background:var(--widget-glass);box-shadow:0 4px 30px var(--tw-shadow-rgba-0-0-0-0-1);-webkit-backdrop-filter:blur(8.1px);border-radius:16px}.admin-settings-panel{padding:28px;overflow:hidden}.settings-page-heading{border-bottom:1px solid var(--line);align-items:center;margin-bottom:18px;padding-bottom:20px}.settings-page-heading>div>p:last-child{max-width:620px;color:var(--muted);margin:8px 0 0;font-size:12px;line-height:1.55}.settings-count{border:1px solid var(--tw-border-rgba-255-255-255-55);background:var(--widget-glass);color:var(--muted);letter-spacing:.05em;text-transform:uppercase;border-radius:999px;flex:none;padding:7px 10px;font:700 9px ui-monospace,monospace}.settings-widget,.settings-action-card{border:1px solid var(--tw-border-rgba-255-255-255-55);background:var(--widget-glass);box-shadow:0 4px 30px var(--tw-shadow-rgba-0-0-0-0-1);-webkit-backdrop-filter:blur(8.1px);border-radius:16px}.settings-widget{padding:22px}.settings-widget+.settings-widget{margin-top:14px}.settings-widget-heading{grid-template-columns:36px minmax(0,1fr);align-items:start;gap:13px;margin-bottom:18px;display:grid}.settings-widget-heading>span{border:1px solid var(--tw-border-rgba-255-255-255-62);background:var(--widget-glass-strong);width:36px;height:36px;color:var(--accent-foreground);box-shadow:inset 0 1px 0 color-mix(in srgb, var(--glass-highlight) 55%, transparent);border-radius:11px;place-items:center;font:800 10px ui-monospace,monospace;display:grid}.settings-widget-heading .eyebrow{margin-bottom:5px}.settings-widget-heading h3{color:var(--ink);font:600 19px/1.15 var(--font-heading);margin:0}.settings-widget-heading p:last-child{max-width:680px;color:var(--muted);margin:6px 0 0;font-size:11px;line-height:1.5}.settings-widget .field-grid{gap:10px}.settings-widget .field-grid label{gap:8px}.settings-widget .field-grid input,.settings-widget .field-grid select{background:color-mix(in srgb, var(--surface) 78%, transparent);border-radius:11px;min-height:44px}.settings-retest-widget .field-grid{grid-template-columns:minmax(0,220px)}.settings-attendance-policy-widget .field-grid{grid-template-columns:minmax(0,250px)}.settings-attendance-policy-widget .field-hint{margin:0;font-weight:500}.attendance-qr-card-body{align-items:center;gap:20px;display:flex}.attendance-qr-image{border:1px solid var(--line);background:#fff;border-radius:12px;flex:none;place-items:center;width:130px;height:130px;padding:8px;display:grid}.attendance-qr-image svg{width:100%;height:100%}.attendance-qr-code-text{gap:4px;display:grid}.attendance-qr-code-text span{color:var(--muted);letter-spacing:.05em;text-transform:uppercase;font-size:10px;font-weight:700}.attendance-qr-code-text strong{letter-spacing:.02em;font:700 20px/1.2 ui-monospace,monospace}@media (max-width:640px){.attendance-qr-card-body{flex-direction:column;align-items:flex-start}}.retest-kind-picker{flex-wrap:wrap;gap:14px;margin-top:14px;display:flex}.retest-kind-picker legend{width:100%;color:var(--tw-foreground-456066);margin-bottom:4px;font-size:12px;font-weight:650}.retest-kind-picker label{color:var(--ink);align-items:center;gap:8px;font-size:13px;display:flex}.settings-ai-provider-widget .ai-provider-field-grid{grid-template-columns:minmax(180px,240px) minmax(320px,1fr);align-items:start;gap:16px;padding-left:0}.settings-ai-provider-widget .ai-provider-field-grid>label,.settings-ai-provider-widget .ai-provider-field-grid>.ai-provider-field{align-self:start;gap:8px}.settings-ai-provider-widget .ai-provider-field-grid select{background:color-mix(in srgb, var(--surface) 84%, transparent);border-radius:12px;height:48px;min-height:48px;padding-inline:14px;font-size:12px;font-weight:650}.settings-ai-provider-widget .field-hint{max-width:600px;color:var(--muted);margin-top:1px;font-size:10px;font-weight:500;line-height:1.5}.ai-drafting-key-preference{border:1px solid color-mix(in srgb, var(--accent-border) 26%, var(--line));background:color-mix(in srgb, var(--accent) 5%, var(--surface));border-radius:14px;justify-content:space-between;align-items:center;gap:20px;margin-top:18px;padding:16px 18px;display:flex}.ai-drafting-key-preference>div{gap:3px;max-width:650px;display:grid}.ai-drafting-key-preference strong{color:var(--ink);font-size:13px}.ai-drafting-key-preference small{color:var(--muted);font-size:10.5px;line-height:1.5}.ai-drafting-key-eyebrow{color:var(--accent-foreground);letter-spacing:.08em;text-transform:uppercase;font-size:9px;font-weight:750}.ai-drafting-key-switch{cursor:pointer;flex:none;display:inline-flex;position:relative}.ai-drafting-key-switch input{opacity:0;pointer-events:none;width:1px;height:1px;margin:0;position:absolute}.ai-drafting-key-track{border:1px solid var(--line);background:color-mix(in srgb, var(--muted) 28%, var(--surface));border-radius:999px;width:44px;height:25px;transition:border-color .15s,background .15s;position:relative}.ai-drafting-key-track:after{content:"";background:var(--surface);border-radius:50%;width:17px;height:17px;transition:transform .15s;position:absolute;top:3px;left:3px;box-shadow:0 1px 4px #0003}.ai-drafting-key-switch input:checked+.ai-drafting-key-track{border-color:color-mix(in srgb, var(--accent-border) 65%, var(--line));background:var(--accent)}.ai-drafting-key-switch input:checked+.ai-drafting-key-track:after{transform:translate(19px)}.ai-drafting-key-switch input:focus-visible+.ai-drafting-key-track{outline:2px solid color-mix(in srgb, var(--accent) 36%, transparent);outline-offset:3px}.ai-drafting-key-switch input:disabled+.ai-drafting-key-track{opacity:.55;cursor:wait}.settings-ai-provider-widget .profile-form-footer{margin-top:18px;margin-left:49px;padding-top:16px}.settings-ai-provider-widget .profile-form-footer button{min-height:42px;padding-inline:20px}.settings-appearance-widget .theme-settings{gap:14px}.settings-appearance-widget .theme-color-controls{gap:8px}.settings-appearance-widget .theme-color-field,.settings-favicon-widget .favicon-editor,.settings-branding-widget .branding-field{border-color:var(--tw-border-rgba-255-255-255-55);background:var(--widget-glass);box-shadow:0 4px 30px var(--tw-shadow-rgba-0-0-0-0-1);-webkit-backdrop-filter:blur(8.1px);border-radius:16px}.settings-appearance-widget .theme-color-field{min-height:82px;padding:14px 15px}.settings-appearance-widget .theme-reset-button{margin-top:4px}.settings-favicon-widget .favicon-editor,.settings-branding-widget .branding-editor{margin-top:0}.staff-calendar-settings-grid{gap:12px;display:grid}.staff-calendar-card{border:1px solid var(--glass-line);background:color-mix(in srgb, var(--surface) 68%, transparent);border-radius:12px;min-width:0;padding:16px}.staff-calendar-card-heading{justify-content:space-between;align-items:flex-start;gap:16px;margin-bottom:14px;display:flex}.staff-calendar-card-heading strong{color:var(--ink);font-size:13px}.staff-calendar-card-heading p,.staff-calendar-card-footer p{color:var(--muted);margin:4px 0 0;font-size:10px;line-height:1.45}.staff-calendar-card-heading>span{background:var(--tw-surface-edf0ef);color:var(--muted);text-transform:uppercase;border-radius:999px;flex:none;padding:6px 9px;font-size:9px;font-weight:750}.staff-weekday-picker{border:0;grid-template-columns:repeat(7,minmax(0,1fr));gap:7px;margin:0;padding:0;display:grid}.staff-weekday-picker label{cursor:pointer;min-width:0;position:relative}.staff-weekday-picker input{opacity:0;pointer-events:none;position:absolute}.staff-weekday-picker label>span{border:1px solid var(--glass-line);background:var(--tw-surface-white);text-align:center;border-radius:9px;place-content:center;gap:3px;min-height:62px;transition:border-color .16s,background .16s,transform .16s;display:grid}.staff-weekday-picker label:hover>span{border-color:color-mix(in srgb, var(--main) 30%, var(--glass-line));transform:translateY(-1px)}.staff-weekday-picker input:focus-visible+span{outline:2px solid var(--main);outline-offset:2px}.staff-weekday-picker input:checked+span{border-color:color-mix(in srgb, var(--main) 44%, var(--glass-line));background:color-mix(in srgb, var(--main) 10%, var(--tw-surface-white));box-shadow:inset 0 0 0 1px color-mix(in srgb, var(--main) 12%, transparent)}.staff-weekday-picker strong{color:var(--ink);font-size:11px}.staff-weekday-picker small{color:var(--muted);text-overflow:ellipsis;font-size:8px;overflow:hidden}.staff-calendar-card-footer{justify-content:space-between;align-items:center;gap:12px;margin-top:12px;display:flex}.staff-calendar-card-footer p{margin:0}.staff-vacation-create-form,.staff-vacation-edit-form{grid-template-columns:minmax(180px,1.3fr) repeat(2,minmax(145px,.8fr)) auto;align-items:end;gap:8px;display:grid}.staff-vacation-create-form{border-bottom:1px solid var(--glass-line);padding-bottom:14px}.staff-vacation-create-form label,.staff-vacation-edit-form label{min-width:0;color:var(--muted);gap:5px;font-size:9px;font-weight:700;display:grid}.staff-vacation-create-form input,.staff-vacation-edit-form input{border:1px solid var(--tw-border-ccd9d7);background:var(--tw-surface-white);width:100%;min-width:0;min-height:38px;color:var(--ink);border-radius:8px;padding:8px 9px}.staff-vacation-create-form button,.staff-vacation-edit-form button{white-space:nowrap;min-height:38px}.staff-vacation-list{gap:7px;margin-top:12px;display:grid}.staff-vacation-row{border:1px solid var(--glass-line);background:color-mix(in srgb, var(--surface) 78%, transparent);border-radius:9px;grid-template-columns:minmax(0,1fr) auto auto;align-items:center;gap:8px;padding:10px;display:grid}.staff-vacation-row>div:first-child{gap:3px;min-width:0;display:grid}.staff-vacation-row>div:first-child strong{color:var(--ink);text-overflow:ellipsis;white-space:nowrap;font-size:11px;overflow:hidden}.staff-vacation-row>div:first-child span{color:var(--muted);font-size:9px}.staff-vacation-row details{justify-self:end}.staff-vacation-row summary,.staff-vacation-delete{color:var(--main-foreground);cursor:pointer;background:0 0;border:0;padding:5px 6px;font-size:9px;font-weight:750;list-style:none}.staff-vacation-row summary::-webkit-details-marker{display:none}.staff-vacation-delete{color:var(--danger)}.staff-vacation-row details[open]{border-top:1px solid var(--glass-line);grid-area:2/1/auto/-1;width:100%;padding-top:9px}.staff-vacation-row details[open] summary{width:fit-content;margin-left:auto}.staff-vacation-edit-form{margin-top:8px}.owner-settings-panel{margin-top:2px}.owner-settings-grid{gap:14px!important}.settings-action-card{align-content:start;min-width:0;padding:22px}.settings-action-card>div:first-child{min-height:86px}.settings-action-card h3{color:var(--ink);font:600 19px/1.15 var(--font-heading);margin:7px 0 6px}.settings-action-card p{color:var(--muted);margin:0;font-size:11px;line-height:1.55}.settings-action-label{color:var(--accent-foreground);letter-spacing:.07em;font:800 9px ui-monospace,monospace}.settings-action-card>button{justify-self:start;margin-top:2px}.setup-wizard-card{border-color:color-mix(in srgb, var(--accent-border) 24%, var(--tw-border-rgba-255-255-255-55));background:color-mix(in srgb, var(--accent) 4%, var(--widget-glass));overflow:hidden}.setup-wizard-card>.setup-wizard-card-copy{gap:12px;min-height:0;display:grid}.setup-wizard-card-heading{grid-template-columns:42px minmax(0,1fr);align-items:center;gap:11px;display:grid}.setup-wizard-card-heading>span{border:1px solid color-mix(in srgb, var(--accent-border) 24%, var(--glass-line));background:color-mix(in srgb, var(--accent) 10%, var(--surface));width:42px;height:42px;color:var(--accent-foreground);border-radius:12px;place-items:center;display:grid}.setup-wizard-card-heading h3{margin:4px 0 0;font-size:18px}.setup-wizard-steps{flex-wrap:wrap;gap:5px;display:flex}.setup-wizard-steps span{border:1px solid var(--glass-line);background:color-mix(in srgb, var(--surface) 75%, transparent);color:var(--muted);text-transform:uppercase;border-radius:999px;padding:5px 7px;font:700 8px ui-monospace,monospace}.setup-wizard-card>.secondary{justify-content:center;align-items:center;gap:7px;width:100%;min-height:42px;margin-top:auto;display:inline-flex}.setup-wizard-card>.secondary svg{color:var(--accent-foreground)}.settings-danger-card{border-color:color-mix(in srgb, var(--tw-border-c86759) 25%, var(--tw-border-rgba-255-255-255-55))}.settings-danger-card .settings-action-label{color:var(--tw-foreground-a94c40)}@media (max-width:760px){.settings-ai-provider-widget .ai-provider-field-grid{grid-template-columns:1fr;padding-left:0}.settings-ai-provider-widget .profile-form-footer{margin-left:0}}@media (max-width:620px){.admin-settings-panel{padding:20px}.settings-page-heading{align-items:flex-start}.settings-count{display:none}.settings-widget{padding:17px}.settings-widget-heading{grid-template-columns:32px minmax(0,1fr);gap:11px}.settings-widget-heading>span{border-radius:10px;width:32px;height:32px}.staff-weekday-picker{grid-template-columns:repeat(4,minmax(0,1fr))}.academic-school-week-grid{grid-template-columns:1fr}.staff-calendar-card-footer{flex-direction:column;align-items:stretch}.staff-calendar-card-footer button{width:100%}.staff-vacation-create-form,.staff-vacation-edit-form{grid-template-columns:1fr}.staff-vacation-create-form button,.staff-vacation-edit-form button{width:100%}.settings-action-card{padding:18px}.settings-action-card>div:first-child{min-height:0}.appearance-mode-picker{grid-template-columns:1fr}}.admin-shell:has(.admin-portal-workspace){width:min(1380px,100% - 40px)}.admin-portal-workspace{display:block}.admin-portal-main{min-width:0}.admin-portal-section-header{border-bottom:1px solid var(--line);justify-content:space-between;align-items:end;gap:20px;min-height:74px;margin-bottom:12px;padding:2px 3px 15px;display:flex}.admin-portal-section-header .eyebrow{margin:0 0 5px}.admin-portal-section-header h2{color:var(--ink);font:650 26px/1.1 var(--font-heading);letter-spacing:-.5px;margin:0}.admin-portal-section-header p:last-child{color:var(--muted);margin:5px 0 0;font-size:11px}.admin-portal-main>.admin-filter-bar{border:1px solid var(--glass-line);background:var(--widget-glass);border-radius:13px;margin:0 0 14px;padding:10px}.admin-workspace-content{gap:16px;min-width:0;display:grid}.admin-workspace-content>[hidden],.admin-workspace[data-active-admin-section=overview] .admin-workspace-content>[data-admin-section]:not([data-admin-section~=overview]),.admin-workspace[data-active-admin-section=people] .admin-workspace-content>[data-admin-section]:not([data-admin-section~=people]),.admin-workspace[data-active-admin-section=staff] .admin-workspace-content>[data-admin-section]:not([data-admin-section~=staff]),.admin-workspace[data-active-admin-section=students] .admin-workspace-content>[data-admin-section]:not([data-admin-section~=students]),.admin-workspace[data-active-admin-section=academic] .admin-workspace-content>[data-admin-section]:not([data-admin-section~=academic]),.admin-workspace[data-active-admin-section=curriculum] .admin-workspace-content>[data-admin-section]:not([data-admin-section~=curriculum]),.admin-workspace[data-active-admin-section=ai] .admin-workspace-content>[data-admin-section]:not([data-admin-section~=ai]){display:none!important}.admin-workspace-content>.panel,.admin-workspace-content>.metrics{margin-bottom:0}.admin-overview-actions{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;display:grid}.admin-overview-actions a{border:1px solid var(--glass-line);background:var(--widget-glass);min-height:112px;box-shadow:0 10px 30px color-mix(in srgb, var(--main) 7%, transparent);border-radius:16px;gap:5px;padding:18px;transition:transform .18s,border-color .18s;display:grid}.admin-overview-actions a:hover{border-color:color-mix(in srgb, var(--accent-border) 35%, var(--glass-line));transform:translateY(-2px)}.admin-overview-actions span{color:var(--accent-foreground);letter-spacing:.06em;text-transform:uppercase;font:800 9px ui-monospace,monospace}.admin-overview-actions strong{color:var(--ink);font:650 16px/1.25 var(--font-heading)}.admin-overview-actions small{color:var(--muted);font-size:10px}.staff-summary-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;display:grid}.staff-summary-grid article{border:1px solid var(--glass-line);background:var(--widget-glass);border-radius:14px;gap:5px;min-width:0;padding:15px 16px;display:grid}.staff-summary-grid span{color:var(--muted);letter-spacing:.05em;text-transform:uppercase;font:750 9px ui-monospace,monospace}.staff-summary-grid strong{color:var(--ink);font:650 25px/1 var(--font-heading)}.staff-summary-grid small{color:var(--muted);text-overflow:ellipsis;white-space:nowrap;font-size:9px;overflow:hidden}.staff-ai-usage-copy{color:var(--muted);margin-left:8px;font-size:9px;display:inline-block}.staff-calendar-panel>.settings-widget{box-shadow:none;-webkit-backdrop-filter:none;backdrop-filter:none;background:0 0;border:0;padding:0}.staff-calendar-panel .settings-widget-heading{margin-bottom:16px}.staff-policy-heading{align-items:center}.staff-policy-title{grid-template-columns:40px minmax(0,1fr);align-items:start;gap:12px;display:grid}.staff-policy-title>span{border:1px solid var(--glass-line);background:color-mix(in srgb, var(--accent) 8%, var(--widget-glass));width:40px;height:40px;color:var(--accent-foreground);border-radius:12px;place-items:center;display:grid}.staff-policy-title .eyebrow{margin:1px 0 4px}.staff-policy-title h2{margin:0}.staff-policy-title p:last-child{max-width:680px;margin:5px 0 0}.staff-attendance-policy-form{border:1px solid var(--glass-line);background:color-mix(in srgb, var(--surface) 68%, transparent);border-radius:12px;grid-template-columns:minmax(240px,1fr) 132px auto;align-items:center;gap:10px;padding:11px 12px 11px 14px;display:grid}.staff-attendance-policy-form>label{gap:3px;min-width:0;display:grid}.staff-attendance-policy-form>label>span{color:var(--ink);font-size:12px;font-weight:750}.staff-attendance-policy-form>label>small{color:var(--muted);font-size:10px;line-height:1.45}.staff-attendance-window-control{border:1px solid var(--tw-border-ccd9d7);background:var(--tw-surface-white);border-radius:10px;grid-template-columns:minmax(0,1fr) auto;align-items:center;min-width:0;transition:border-color .16s,box-shadow .16s;display:grid;overflow:hidden}.staff-attendance-window-control:focus-within{border-color:var(--accent-border);box-shadow:0 0 0 3px color-mix(in srgb, var(--accent) 15%, transparent)}.staff-attendance-window-control input{width:100%;min-width:0;min-height:36px;box-shadow:none;background:0 0;border:0;border-radius:0;padding:7px 8px}.staff-attendance-window-control input:focus{box-shadow:none;outline:0}.staff-attendance-window-control>span{border-left:1px solid var(--glass-line);color:var(--muted);text-transform:uppercase;padding:0 9px;font-size:9px;font-weight:750}.staff-attendance-policy-form button{white-space:nowrap;min-height:36px;padding:8px 14px}.staff-ai-panel .section-title{align-items:center}.staff-ai-panel .section-title .text-link{flex:none;font-size:10px}.staff-ai-usage-table{border-top:1px solid var(--line);margin-top:20px;padding-top:18px}.staff-ai-usage-table .management-heading{margin-bottom:10px}.ai-limit-role-heading{justify-content:space-between;align-items:center;gap:12px;display:flex}.ai-limit-role-heading span{background:color-mix(in srgb, var(--accent) 9%, transparent);color:var(--accent-foreground);text-transform:uppercase;border-radius:999px;padding:4px 7px;font-size:8px;font-weight:750}.ai-usage-summary-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin-bottom:16px;display:grid}.ai-usage-summary-card{border:1px solid var(--glass-line);background:color-mix(in srgb, var(--surface) 72%, transparent);border-radius:13px;gap:4px;padding:14px 16px;display:grid}.ai-usage-summary-card span{color:var(--muted);text-transform:uppercase;font-size:9px;font-weight:750}.ai-usage-summary-card strong{color:var(--ink);font:650 21px/1.1 var(--font-heading)}.ai-usage-summary-card small{color:var(--muted);font-size:9px}.admin-settings-shell{width:min(1320px,100% - 40px)}.admin-settings-header{margin-bottom:24px}.admin-settings-portal-layout{display:block}.admin-settings-portal-content{gap:16px;min-width:0;display:grid}.admin-settings-category{padding:24px;scroll-margin-top:18px}.settings-category-heading{border-bottom:1px solid var(--line);grid-template-columns:42px minmax(0,1fr) auto;align-items:start;gap:13px;margin-bottom:17px;padding-bottom:17px;display:grid}.settings-category-heading>span:first-child{border:1px solid var(--glass-line);background:color-mix(in srgb, var(--accent) 8%, var(--widget-glass));width:42px;height:42px;color:var(--accent-foreground);border-radius:12px;place-items:center;display:grid}.settings-category-heading .eyebrow{margin:2px 0 4px}.settings-category-heading h2{color:var(--ink);font:650 22px/1.15 var(--font-heading);margin:0}.settings-category-heading p:last-child{color:var(--muted);margin:5px 0 0;font-size:10px;line-height:1.45}.admin-settings-category>.settings-widget{margin-top:0}.admin-settings-category>.settings-identity-widget+.settings-country-widget,.admin-settings-category>.settings-appearance-widget+.settings-favicon-widget,.admin-settings-category>.settings-favicon-widget+.settings-branding-widget{margin-top:14px}.admin-settings-category>.settings-face-recognition-widget+.settings-face-enrollments-widget{margin-top:18px}.settings-subheading{margin-bottom:15px}.settings-subheading.with-icon{color:var(--accent-foreground);grid-template-columns:24px minmax(0,1fr);gap:8px;display:grid}.settings-subheading h3{color:var(--ink);font:650 17px/1.2 var(--font-heading);margin:0}.settings-subheading p{color:var(--muted);margin:5px 0 0;font-size:10px;line-height:1.45}.settings-category-save{border-top:1px solid var(--line);justify-content:flex-end;align-items:center;gap:18px;margin-top:14px;padding-top:14px;display:flex}.settings-category-save p{color:var(--muted);margin:0;font-size:10px}.settings-face-recognition-widget{gap:16px;display:grid}.settings-face-recognition-widget>.helper-text{margin:0;line-height:1.6}.face-recognition-consent-options{border:0;gap:10px;margin:0;padding:0;display:grid}.face-recognition-consent-option{border:1px solid var(--line);background:color-mix(in srgb, var(--surface) 72%, transparent);cursor:pointer;border-radius:12px;grid-template-columns:20px minmax(0,1fr);align-items:start;gap:12px;padding:14px 15px;transition:border-color .16s,background .16s,box-shadow .16s;display:grid}.face-recognition-consent-option:hover{border-color:color-mix(in srgb, var(--accent) 38%, var(--line));background:color-mix(in srgb, var(--accent) 5%, var(--surface))}.face-recognition-consent-option:focus-within{border-color:var(--accent);box-shadow:0 0 0 3px color-mix(in srgb, var(--accent) 16%, transparent)}.face-recognition-consent-option input{width:18px;height:18px;accent-color:var(--accent);cursor:pointer;margin:1px 0 0}.face-recognition-consent-option span{gap:4px;min-width:0;display:grid}.face-recognition-consent-option strong{color:var(--ink);font-size:12px;line-height:1.35}.face-recognition-consent-option small{color:var(--muted);font-size:10px;line-height:1.5}.face-recognition-attestation-date{color:var(--muted);margin:-3px 0 0;font-size:10px}.attendance-auto-late-sweep-toggle.required-toggle{grid-column:1/-1;grid-template-columns:34px minmax(0,1fr);width:100%;margin-top:0;padding:14px 15px}.attendance-auto-late-sweep-toggle strong{font-size:12px}.attendance-auto-late-sweep-toggle small{font-size:10px;line-height:1.5}.kiosk-device-manager{gap:16px;display:grid}.kiosk-device-launcher{border:1px solid color-mix(in srgb, var(--main) 22%, var(--glass-line));background:linear-gradient(120deg, color-mix(in srgb, var(--main) 7%, var(--surface)), var(--glass));border-radius:12px;justify-content:space-between;align-items:center;gap:18px;padding:16px;display:flex}.kiosk-device-launcher strong,.kiosk-device-create-intro strong{color:var(--ink);font-size:14px}.kiosk-device-launcher p,.kiosk-device-create-intro p{max-width:540px;color:var(--muted);margin:4px 0 0;font-size:12px}.kiosk-device-launcher .primary{white-space:nowrap;justify-content:center;align-items:center;gap:7px;display:inline-flex}.kiosk-device-create-form{border:1px solid var(--glass-line);background:color-mix(in srgb, var(--surface) 76%, transparent);border-radius:12px;max-width:520px;padding:18px}.kiosk-device-create-intro{align-items:flex-start;gap:10px;display:flex}.kiosk-device-create-intro>span{background:var(--main);width:24px;height:24px;color:var(--on-main);border-radius:50%;flex:none;place-items:center;font-size:12px;font-weight:800;display:grid}.kiosk-pairing-callout{border-color:color-mix(in srgb, var(--accent) 42%, var(--glass-line));background:color-mix(in srgb, var(--accent) 7%, var(--surface));gap:10px;display:grid}.kiosk-pairing-callout p{color:var(--muted);margin:0;font-size:12px}.kiosk-pairing-code{border:1px dashed color-mix(in srgb, var(--main) 38%, var(--glass-line));background:var(--tw-surface-white);border-radius:10px;justify-content:space-between;align-items:center;gap:10px;padding:11px 12px;display:flex}.kiosk-pairing-code span{letter-spacing:3px;color:var(--ink);font:700 26px/1 ui-monospace,monospace}.kiosk-copy-button,.kiosk-device-icon-button{flex:none;place-items:center;width:36px;height:36px;min-height:36px;padding:0;line-height:0;display:inline-grid}.kiosk-copy-button svg,.kiosk-device-icon-button svg{display:block;transform:translate(-.5px,.5px)}.kiosk-copy-button{box-shadow:none;background:0 0;border:0}.kiosk-copy-button:hover:not(:disabled){color:var(--accent-foreground)}.kiosk-device-rename-form{align-items:center;gap:6px;display:flex}.kiosk-device-rename-form input{min-height:34px;padding:4px 8px}.kiosk-device-list{gap:8px;margin:0;padding:0;list-style:none;display:grid}.kiosk-device-item{gap:8px;display:grid}.kiosk-device-row{border:1px solid var(--glass-line);background:color-mix(in srgb, var(--surface) 76%, transparent);border-radius:11px;grid-template-columns:minmax(180px,1fr) auto minmax(150px,.7fr) auto;align-items:center;gap:16px;min-height:64px;padding:10px 12px 10px 16px;display:grid}.kiosk-device-name{min-width:0;color:var(--ink);font-size:13px}.kiosk-device-paired{color:var(--muted);font-size:11px}.kiosk-device-actions{align-items:center;gap:6px;display:flex}.kiosk-device-actions form{display:contents}.kiosk-device-scope-panel{border:1px solid var(--glass-line);background:color-mix(in srgb, var(--surface) 60%, transparent);border-radius:11px;gap:12px;padding:14px 16px;display:grid}.kiosk-scope-choice-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:9px;display:grid}.kiosk-scope-choice{border:1px solid var(--glass-line);background:color-mix(in srgb, var(--surface) 80%, transparent);cursor:pointer;border-radius:12px;grid-template-columns:36px minmax(0,1fr) 24px;align-items:center;gap:10px;min-height:68px;padding:10px 11px;transition:border-color .15s,background-color .15s,box-shadow .15s,transform .15s;display:grid;position:relative;box-shadow:inset 0 1px #ffffffad}.kiosk-scope-choice input,.kiosk-scope-grade-choice input{opacity:0;pointer-events:none;width:1px;height:1px;margin:0;position:absolute}.kiosk-scope-choice:hover,.kiosk-scope-grade-choice:hover{border-color:color-mix(in srgb, var(--accent) 32%, var(--glass-line));background:color-mix(in srgb, var(--accent) 5%, var(--surface))}.kiosk-scope-choice:hover{transform:translateY(-1px)}:is(.kiosk-scope-choice:has(input:focus-visible),.kiosk-scope-grade-choice:has(input:focus-visible)){outline:3px solid color-mix(in srgb, var(--accent) 24%, transparent);outline-offset:2px}.kiosk-scope-choice:has(input:checked){border-color:color-mix(in srgb, var(--accent) 48%, var(--glass-line));background:color-mix(in srgb, var(--accent) 9%, var(--surface));box-shadow:0 8px 20px color-mix(in srgb, var(--accent) 9%, transparent), inset 0 1px 0 #ffffffb8}.kiosk-scope-choice-icon{background:color-mix(in srgb, var(--main) 7%, var(--surface));width:36px;height:36px;color:var(--muted);border-radius:10px;place-items:center;display:grid}.kiosk-scope-choice:has(input:checked) .kiosk-scope-choice-icon{background:color-mix(in srgb, var(--accent) 14%, var(--surface));color:var(--accent-foreground)}.kiosk-scope-choice-copy{gap:2px;min-width:0;display:grid}.kiosk-scope-choice-copy strong{color:var(--ink);font-size:12.5px}.kiosk-scope-choice-copy small{color:var(--muted);font-size:10.5px;font-weight:500;line-height:1.35}.kiosk-scope-choice-check{border:1px solid var(--glass-line);color:#0000;background:color-mix(in srgb, var(--surface) 74%, transparent);border-radius:50%;place-items:center;width:22px;height:22px;display:grid}.kiosk-scope-choice:has(input:checked) .kiosk-scope-choice-check{border-color:var(--accent);background:var(--accent);color:var(--on-accent)}.kiosk-scope-groups{gap:10px;display:grid}.kiosk-scope-group{gap:6px;display:grid}.kiosk-scope-group-header{color:var(--muted);letter-spacing:.05em;text-transform:uppercase;font:700 10px/1.2 ui-monospace,monospace}.kiosk-scope-grades{grid-template-columns:repeat(auto-fill,minmax(112px,1fr));gap:7px;display:grid}.kiosk-scope-grade-choice{border:1px solid var(--glass-line);min-height:38px;color:var(--ink);background:color-mix(in srgb, var(--surface) 72%, transparent);cursor:pointer;border-radius:10px;justify-content:space-between;align-items:center;gap:8px;padding:7px 9px 7px 11px;font-size:11.5px;font-weight:650;transition:border-color .15s,background-color .15s,box-shadow .15s;display:flex;position:relative}.kiosk-scope-grade-choice>svg{color:#0000;border-radius:50%;flex:none;width:18px;height:18px;padding:3px}.kiosk-scope-grade-choice:has(input:checked){border-color:color-mix(in srgb, var(--accent) 45%, var(--glass-line));background:color-mix(in srgb, var(--accent) 9%, var(--surface));box-shadow:inset 0 0 0 1px color-mix(in srgb, var(--accent) 7%, transparent)}.kiosk-scope-grade-choice:has(input:checked)>svg{background:var(--accent);color:var(--on-accent)}.kiosk-scope-actions{justify-content:flex-end;gap:8px;display:flex}@media (max-width:1040px){.staff-summary-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.staff-attendance-policy-form{grid-template-columns:minmax(220px,1fr) 132px auto}}@media (max-width:760px){:is(.admin-shell:has(.admin-portal-workspace),.admin-settings-shell){width:min(100% - 24px,1000px)}.admin-overview-actions,.ai-usage-summary-grid{grid-template-columns:1fr}.staff-policy-heading{flex-direction:column;align-items:flex-start;gap:10px}.staff-policy-heading>.helper-text{margin-left:52px}.staff-attendance-policy-form{grid-template-columns:1fr;align-items:stretch}.staff-attendance-policy-form button{grid-column:auto;width:100%}.kiosk-device-row{grid-template-columns:minmax(0,1fr) auto auto;gap:10px}.kiosk-device-paired{grid-area:2/1/auto/-1}.kiosk-scope-choice-grid{grid-template-columns:1fr}}@media (max-width:540px){.staff-summary-grid{grid-template-columns:1fr}.settings-category-heading{grid-template-columns:36px minmax(0,1fr)}.settings-category-heading>span:first-child{width:36px;height:36px}.settings-category-heading>.role-pill{grid-column:2;justify-self:start}.settings-category-save{flex-direction:column;align-items:stretch}.settings-category-save button{width:100%}}.calendar-toolbar{grid-template-columns:minmax(190px,1fr) auto minmax(320px,1fr);align-items:center;gap:20px;padding:18px 20px;display:grid}.calendar-toolbar-heading,.calendar-toolbar-actions,.calendar-year-picker,.calendar-year-picker label{align-items:center;gap:11px;display:flex}.calendar-toolbar-actions{justify-content:flex-end}.calendar-year-picker{align-items:flex-end}.calendar-toolbar h2{font:650 22px/1.1 var(--font-heading);margin:1px 0 0}.calendar-icon{width:42px;height:42px;color:var(--on-accent);background:linear-gradient(145deg, var(--accent), color-mix(in srgb, var(--accent) 66%, var(--tw-surface-4f6fd8)));box-shadow:0 9px 22px color-mix(in srgb, var(--accent) 28%, transparent);border-radius:12px;place-items:center;display:grid}.calendar-icon svg{width:20px}.calendar-year-picker label{color:var(--muted);gap:3px;font-size:10px;font-weight:650;display:grid}.calendar-year-picker select{border-radius:8px;min-width:150px;min-height:42px;padding:9px 10px}.calendar-period-navigation,.calendar-view-switcher{border:1px solid var(--line);background:color-mix(in srgb, var(--glass-strong) 80%, transparent);box-shadow:inset 0 1px 0 var(--tw-shadow-rgba-255-255-255-52);border-radius:12px;align-items:center;padding:3px;display:flex}.calendar-period-navigation{justify-self:center;gap:2px}.calendar-period-navigation a,.calendar-period-navigation>span,.calendar-period-navigation button{width:34px;height:34px;color:var(--ink);cursor:pointer;background:0 0;border:0;border-radius:9px;place-items:center;padding:0;display:grid}.calendar-period-navigation :is(a,button):hover{background:color-mix(in srgb, var(--accent) 10%, transparent)}.calendar-period-navigation>span{color:color-mix(in srgb, var(--muted) 42%, transparent)}.calendar-period-navigation button:disabled{color:color-mix(in srgb, var(--muted) 42%, transparent);cursor:default}.calendar-period-navigation svg{width:16px}.calendar-period-navigation .calendar-today-button,.calendar-today-button{width:auto;color:var(--accent-foreground);cursor:pointer;background:0 0;border:0;padding:0 11px;font-size:11px;font-weight:750;text-decoration:none}.calendar-view-switcher :is(a,button){color:var(--muted);cursor:pointer;background:0 0;border:0;border-radius:9px;padding:8px 11px;font-size:10px;font-weight:700;text-decoration:none}.calendar-view-switcher :is(a,button):hover{color:var(--ink)}.calendar-view-switcher :is(a,button).active{color:var(--on-accent);background:var(--accent);box-shadow:0 6px 14px color-mix(in srgb, var(--accent) 24%, transparent)}.calendar-stage{view-transition-name:calendar-stage;animation:.18s cubic-bezier(.2,.75,.25,1) both calendar-stage-in}.calendar-stage-forward{--calendar-shift:7px}.calendar-stage-backward{--calendar-shift:-7px}.calendar-stage-still{--calendar-shift:0px}.calendar-layout{grid-template-columns:minmax(0,1fr) 340px;align-items:start;gap:18px;transition:grid-template-columns .24s cubic-bezier(.2,.75,.25,1),gap .24s;display:grid}.calendar-layout.agenda-is-collapsed{grid-template-columns:minmax(0,1fr) 58px;gap:10px}.calendar-year-grid{grid-template-columns:repeat(3,minmax(230px,1fr));gap:13px;display:grid}.calendar-month{border-radius:16px;margin:0;padding:17px}.calendar-month header{justify-content:space-between;margin-bottom:12px;display:flex}.calendar-month header button{width:100%;color:var(--ink);text-align:left;cursor:pointer;background:0 0;border:0;justify-content:space-between;align-items:center;padding:0;display:flex}.calendar-month header button:hover{color:var(--accent-foreground)}.calendar-month header svg{width:14px;height:14px}.calendar-month h2{font:650 15px/1.2 var(--font-heading);margin:0}.calendar-weekdays,.calendar-days{grid-template-columns:repeat(7,minmax(0,1fr));gap:3px;display:grid}.calendar-weekdays{color:var(--muted);text-align:center;margin-bottom:4px;font-size:9px;font-weight:750}.calendar-day{min-height:31px;color:var(--ink);border-radius:8px;justify-content:center;align-items:center;gap:2px;font-size:10px;text-decoration:none;display:flex;position:relative}.calendar-create-event-target{z-index:1;border-radius:inherit;cursor:crosshair;appearance:none;background:0 0;border:0;width:100%;margin:0;padding:0;display:block;position:absolute;inset:0}.calendar-day>span{z-index:2;pointer-events:none;position:relative}.calendar-day>:is(i,small){z-index:2;pointer-events:none}.calendar-day.has-event{background:color-mix(in srgb, var(--accent) 9%, var(--glass));font-weight:750}.calendar-day:has(.calendar-create-event-target:hover){background:color-mix(in srgb, var(--accent) 14%, var(--glass))}.calendar-day i{border-radius:50%;width:4px;height:4px;position:absolute;bottom:3px}.calendar-day i:first-of-type{left:calc(50% - 5px)}.calendar-day i:nth-of-type(2){left:calc(50% + 2px)}.calendar-day small{font-size:7px;position:absolute;bottom:1px;right:2px}.calendar-day i.blue,.calendar-agenda-event.blue:before{background:var(--tw-surface-4285f4)}.calendar-day i.green,.calendar-agenda-event.green:before{background:var(--tw-surface-2ca46f)}.calendar-day i.orange,.calendar-agenda-event.orange:before{background:var(--tw-surface-e38a2f)}.calendar-day i.purple,.calendar-agenda-event.purple:before{background:var(--tw-surface-8b62d2)}.calendar-day i.red,.calendar-agenda-event.red:before{background:var(--tw-surface-d95858)}.calendar-day i.vacation,.calendar-agenda-event.vacation:before{background:var(--muted)}.calendar-day i.holiday,.calendar-agenda-event.holiday:before{background:var(--accent)}.calendar-period-view{min-width:0;margin:0;padding:0;overflow:hidden}.calendar-period-weekdays{border-bottom:1px solid var(--line);background:color-mix(in srgb, var(--glass-strong) 68%, transparent);grid-template-columns:repeat(7,minmax(0,1fr));display:grid}.calendar-period-weekdays span{color:var(--muted);text-align:center;text-transform:uppercase;padding:12px 8px;font-size:10px;font-weight:750}.calendar-period-grid{grid-template-columns:repeat(7,minmax(0,1fr));display:grid}.calendar-period-day{border-right:1px solid var(--line);border-bottom:1px solid var(--line);background:color-mix(in srgb, var(--glass) 74%, transparent);min-width:0;min-height:132px;padding:8px;position:relative}.calendar-period-day:has(.calendar-create-event-target:hover){background:color-mix(in srgb, var(--accent) 7%, var(--glass))}.calendar-period-day:nth-child(7n){border-right:0}.calendar-period-day:nth-last-child(-n+7){border-bottom:0}.calendar-period-day.outside{background:color-mix(in srgb, var(--paper) 76%, transparent)}.calendar-period-day.non-school-day,.calendar-week-day.non-school-day{background:color-mix(in srgb, var(--muted) 6%, transparent)}.calendar-period-day.outside>header,.calendar-period-day.outside .calendar-cell-events{opacity:.46}.calendar-period-day>header{z-index:2;pointer-events:none;justify-content:space-between;align-items:center;margin-bottom:7px;display:flex;position:relative}.calendar-period-day>header>span{border-radius:50%;place-items:center;width:25px;height:25px;font-size:11px;font-weight:650;display:grid}.calendar-period-day.today>header>span,.calendar-week-day.today>header strong{color:var(--on-accent);background:var(--accent)}.calendar-period-day>header small{color:var(--accent-foreground);font-size:8px;font-weight:750}.calendar-cell-events{z-index:2;pointer-events:none;gap:4px;display:grid;position:relative}.calendar-cell-event{width:100%;min-width:0;color:var(--ink);background:color-mix(in srgb, var(--glass-strong) 76%, transparent);font:inherit;text-align:left;cursor:pointer;appearance:none;pointer-events:auto;border:0;border-left:3px solid;border-radius:6px;align-items:center;gap:5px;padding:5px 6px;font-size:8px;text-decoration:none;display:flex}.calendar-cell-event:hover{background:color-mix(in srgb, var(--accent) 10%, var(--glass-strong))}.calendar-cell-event time{color:var(--muted);flex:none}.calendar-cell-event strong{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.calendar-cell-event.blue,.calendar-week-event.blue{border-color:var(--tw-border-4285f4)}.calendar-cell-event.green,.calendar-week-event.green{border-color:var(--tw-border-2ca46f)}.calendar-cell-event.orange,.calendar-week-event.orange{border-color:var(--tw-border-e38a2f)}.calendar-cell-event.purple,.calendar-week-event.purple{border-color:var(--tw-border-8b62d2)}.calendar-cell-event.red,.calendar-week-event.red{border-color:var(--tw-border-d95858)}.calendar-cell-event.vacation,.calendar-week-event.vacation{border-color:var(--muted);background:color-mix(in srgb, var(--muted) 10%, transparent);border-style:dashed}.calendar-cell-event.holiday,.calendar-week-event.holiday{border-color:var(--accent-border);background:color-mix(in srgb, var(--accent) 12%, transparent);border-style:dashed}.calendar-more-events{color:var(--muted);padding-left:8px;font-size:8px;font-weight:700}.calendar-week-columns{grid-template-columns:repeat(7,minmax(0,1fr));min-height:570px;display:grid}.calendar-week-day{border-right:1px solid var(--line);min-width:0;position:relative}.calendar-week-day:has(.calendar-create-event-target:hover){background:color-mix(in srgb, var(--accent) 6%, transparent)}.calendar-week-day:last-child{border-right:0}.calendar-week-day>header{z-index:2;border-bottom:1px solid var(--line);background:color-mix(in srgb, var(--glass-strong) 68%, transparent);pointer-events:none;justify-items:center;gap:6px;padding:14px 8px 12px;display:grid;position:relative}.calendar-week-day>header span{color:var(--muted);text-transform:uppercase;font-size:9px;font-weight:750}.calendar-week-day>header strong{width:32px;height:32px;font:650 15px/1 var(--font-heading);border-radius:50%;place-items:center;display:grid}.calendar-week-events{z-index:2;pointer-events:none;align-content:start;gap:7px;padding:9px 7px;display:grid;position:relative}.calendar-week-event{width:100%;min-width:0;color:var(--ink);background:color-mix(in srgb, var(--glass-strong) 84%, transparent);box-shadow:0 5px 14px color-mix(in srgb, var(--main) 6%, transparent);font:inherit;text-align:left;cursor:pointer;appearance:none;pointer-events:auto;border:0;border-left:4px solid;border-radius:9px;gap:3px;padding:9px;text-decoration:none;display:grid}.calendar-week-event:hover{transform:translateY(-1px)}.calendar-week-event>span{color:var(--muted);font-size:8px;font-weight:700}.calendar-week-event>strong{text-overflow:ellipsis;font-size:10px;line-height:1.3;overflow:hidden}.calendar-week-event small{color:var(--muted);align-items:center;gap:3px;font-size:8px;display:flex}.calendar-week-event small svg{width:9px;height:9px}.calendar-week-empty{color:var(--muted);text-align:center;padding-top:14px;font-size:8px}.calendar-agenda{max-height:calc(100vh - 36px);padding:20px;transition:padding .2s;position:sticky;top:18px;overflow:auto}.calendar-agenda-header{align-items:flex-start;gap:12px;display:flex}.calendar-agenda-header .section-title{flex:1;min-width:0}.calendar-agenda-view-all{white-space:nowrap;border-left:1px solid var(--line);flex:none;align-items:center;height:27px;padding-left:12px;display:flex}.calendar-agenda-toggle{border:1px solid var(--line);width:32px;height:32px;color:var(--muted);background:color-mix(in srgb, var(--glass-strong) 80%, transparent);cursor:pointer;border-radius:10px;flex:none;place-items:center;padding:0;display:grid}.calendar-agenda-toggle:hover{color:var(--accent-foreground);border-color:color-mix(in srgb, var(--accent-border) 35%, var(--line))}.calendar-agenda-toggle svg{width:15px;height:15px}.calendar-agenda-content{margin-top:12px}.calendar-agenda.is-collapsed{justify-items:center;padding:10px;display:grid;overflow:hidden}.calendar-agenda.is-collapsed .calendar-agenda-header{justify-items:center;display:grid}.calendar-agenda.is-collapsed .section-title{justify-items:center;gap:8px;display:grid}.calendar-agenda.is-collapsed .section-title>div{display:none}.calendar-agenda.is-collapsed .calendar-agenda-toggle{grid-row:1}.calendar-agenda.is-collapsed .section-title>span{min-width:26px}.calendar-agenda.is-collapsed .calendar-agenda-content{display:none}.calendar-agenda .section-title>span{background:color-mix(in srgb, var(--accent) 12%, transparent);min-width:27px;height:27px;color:var(--accent-foreground);border-radius:9px;place-items:center;font-size:11px;font-weight:750;display:grid}.calendar-agenda-list{gap:10px;display:grid}.calendar-agenda-event{border:1px solid var(--line);background:color-mix(in srgb, var(--glass-strong) 78%, transparent);border-radius:13px;grid-template-columns:42px minmax(0,1fr) auto;gap:11px;padding:14px 8px 14px 14px;scroll-margin-top:18px;display:grid;position:relative;overflow:hidden}.calendar-agenda-event:before{content:"";width:4px;position:absolute;inset:0 auto 0 0}.calendar-agenda-event-link{color:inherit;cursor:pointer;text-decoration:none;display:contents}.calendar-agenda-event>time{text-align:center;background:color-mix(in srgb, var(--accent) 10%, var(--glass));border-radius:10px;flex-direction:column;justify-content:center;align-items:center;min-height:44px;display:flex}.calendar-agenda-event>time strong{font:650 17px/1 var(--font-heading)}.calendar-agenda-event>time span{color:var(--muted);text-transform:uppercase;margin-top:3px;font-size:8px;font-weight:750}.calendar-agenda-event h3{margin:1px 0 5px;font-size:13px;line-height:1.25}.calendar-agenda-event p{color:var(--muted);align-items:center;gap:4px;margin:3px 0;font-size:10px;line-height:1.4;display:flex}.calendar-agenda-event p svg,.event-audience svg{flex:none;width:11px;height:11px}.calendar-agenda-event .calendar-event-description{color:var(--ink);margin-top:7px;display:block}.event-audience{color:var(--accent-foreground);align-items:start;gap:4px;margin-top:8px;font-size:9px;font-weight:650;line-height:1.35;display:flex}.calendar-agenda-event .danger-button{align-self:start;padding:6px}.calendar-agenda-event .danger-button svg{width:13px;height:13px}.calendar-event-form{margin-top:18px;scroll-margin-top:18px}.calendar-event-form-standalone{max-width:1180px;margin:0 auto}.calendar-selected-date{color:var(--ink);font-weight:800}.calendar-event-form .section-title p:last-child{color:var(--muted);margin:7px 0 0;font-size:13px}.event-form-main{grid-template-columns:repeat(4,minmax(0,1fr));gap:15px 13px;display:grid}.event-form-main label{align-content:start;gap:6px;display:grid}.event-form-main label>span:first-child,.event-target-fieldset legend,.event-kind-fieldset legend{color:var(--muted);font-size:11px;font-weight:700}.event-form-main label>span:first-child{justify-content:space-between;align-items:center;display:flex}.event-form-main label>span:first-child small{color:color-mix(in srgb, var(--muted) 74%, transparent);text-transform:uppercase;font-size:8px;font-weight:600}.event-title-field,.event-description-field{grid-column:span 2}.event-time-fields{display:contents}.calendar-event-form:has(input[name=isAllDay]:checked) .event-time-fields{display:none}.event-input-shell{border:1px solid color-mix(in srgb, var(--main-border) 15%, transparent);min-width:0;min-height:47px;color:var(--muted);background:color-mix(in srgb, var(--glass-strong) 88%, transparent);box-shadow:inset 0 1px 0 var(--tw-shadow-rgba-255-255-255-68), 0 5px 15px color-mix(in srgb, var(--main) 4%, transparent);border-radius:12px;align-items:center;gap:9px;padding:0 13px;transition:border-color .16s,box-shadow .16s,background .16s;display:flex}.event-input-shell:focus-within{border-color:color-mix(in srgb, var(--accent-border) 62%, var(--line));background:var(--glass-strong);box-shadow:0 0 0 3px color-mix(in srgb, var(--accent) 13%, transparent), inset 0 1px 0 var(--tw-shadow-rgba-255-255-255-72)}.event-input-shell.prominent{border-color:color-mix(in srgb, var(--accent-border) 24%, var(--line))}.event-input-shell>svg{width:16px;height:16px;color:var(--accent-foreground);flex:none}.event-input-shell input:not([type=checkbox]):not([type=radio]):not([type=color]),.event-input-shell select{width:100%;min-width:0;height:45px;box-shadow:none;color:var(--ink);background:0 0;border:0;border-radius:0;outline:0;padding:0;font-size:13px}.event-input-shell input:focus,.event-input-shell select:focus{box-shadow:none}.event-description-field textarea{border-color:color-mix(in srgb, var(--main-border) 15%, transparent);background:color-mix(in srgb, var(--glass-strong) 88%, transparent);min-height:100px;box-shadow:inset 0 1px 0 var(--tw-shadow-rgba-255-255-255-68), 0 5px 15px color-mix(in srgb, var(--main) 4%, transparent);resize:vertical;border-radius:12px;padding:13px 15px}.event-description-field textarea:focus{border-color:color-mix(in srgb, var(--accent-border) 62%, var(--line));box-shadow:0 0 0 3px color-mix(in srgb, var(--accent) 13%, transparent)}html.dark .calendar-event-form-standalone .event-input-shell,html.dark .calendar-event-form-standalone .event-description-field textarea{border-color:var(--surface-border);background:var(--surface-soft);box-shadow:none;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;background-image:none}html.dark .calendar-event-form-standalone .event-input-shell:focus-within,html.dark .calendar-event-form-standalone .event-description-field textarea:focus{border-color:color-mix(in srgb, var(--main) 52%, var(--surface-border));background:var(--surface-selected);box-shadow:0 0 0 3px color-mix(in srgb, var(--main) 14%, transparent);outline:0}html.dark .calendar-event-form-standalone .event-input-shell>svg{color:var(--main-foreground)}.event-form-main .event-all-day{border:1px solid var(--line);background:color-mix(in srgb, var(--glass) 82%, transparent);cursor:pointer;border-radius:12px;align-items:center;gap:10px;min-height:47px;margin-top:17px;padding:0 13px;display:flex}.event-form-main .event-all-day:has(input:checked){border-color:color-mix(in srgb, var(--accent-border) 52%, var(--line));background:color-mix(in srgb, var(--accent) 10%, var(--glass))}.event-form-main .event-all-day input{width:17px;height:17px;margin:0}.event-form-main .event-all-day>svg{width:16px;height:16px;color:var(--accent-foreground)}.event-form-main .event-all-day span{color:var(--ink);justify-content:start;gap:1px;display:grid}.event-form-main .event-all-day strong{font-size:10px}.event-form-main .event-all-day small{color:var(--muted);font-size:8px}.event-kind-fieldset{border:0;min-width:0;margin:0 0 22px;padding:0}.event-kind-fieldset legend{margin-bottom:9px}.event-kind-fieldset .event-target-mode{grid-template-columns:repeat(3,minmax(0,1fr))}.event-target-fieldset{border:0;min-width:0;margin:22px 0 0;padding:0}.event-target-fieldset legend{margin-bottom:9px}.event-target-mode{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;display:grid}.event-target-mode>label{border:1px solid var(--line);background:var(--glass);cursor:pointer;border-radius:12px;align-items:center;gap:11px;padding:13px;display:flex}.event-target-mode>label:has(input:checked){border-color:color-mix(in srgb, var(--accent-border) 52%, var(--line));background:color-mix(in srgb, var(--accent) 10%, var(--glass));box-shadow:0 0 0 2px color-mix(in srgb, var(--accent) 10%, transparent)}.event-target-mode span{gap:2px;display:grid}.event-target-mode strong{font-size:12px}.event-target-mode small{color:var(--muted);font-size:10px}.event-target-groups{grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin-top:10px;display:grid}.event-target-fieldset:has(.event-target-mode input[value=all]:checked) .event-target-groups{display:none}.event-target-group{border:1px solid var(--line);background:var(--glass);border-radius:12px;min-width:0;overflow:hidden}.event-target-group summary{cursor:pointer;align-items:center;gap:7px;padding:12px;font-size:11px;font-weight:700;list-style:none;display:flex}.event-target-group summary::-webkit-details-marker{display:none}.event-target-group summary span{background:color-mix(in srgb, var(--accent) 10%, transparent);min-width:20px;height:20px;color:var(--accent-foreground);border-radius:7px;place-items:center;margin-left:auto;font-size:9px;display:grid}.event-target-group summary svg{width:13px;transition:transform .18s}.event-target-group[open] summary svg{transform:rotate(90deg)}.event-target-options{gap:3px;max-height:235px;padding:0 7px 8px;display:grid;overflow:auto}.event-target-options label{cursor:pointer;border-radius:8px;align-items:center;gap:8px;padding:8px;display:flex}.event-target-options label:hover{background:color-mix(in srgb, var(--accent) 9%, transparent)}.event-target-options label:has(input:checked){background:color-mix(in srgb, var(--accent) 9%, transparent)}.event-target-options span{gap:1px;min-width:0;display:grid}.event-target-options strong{text-overflow:ellipsis;white-space:nowrap;font-size:10px;overflow:hidden}.event-target-options small,.event-target-group>p{color:var(--muted);font-size:9px}.event-target-group>p{padding:0 12px 12px}.calendar-form-submit{justify-content:flex-end;align-items:center;gap:9px;margin-top:18px;display:flex}.calendar-form-submit .primary{align-items:center;gap:6px;display:inline-flex}.calendar-form-submit .primary svg{width:14px}@keyframes calendar-stage-in{0%{opacity:.72;transform:translateX(var(--calendar-shift))}to{opacity:1;transform:translate(0)}}::view-transition-old(calendar-stage){animation:.13s both calendar-stage-out}::view-transition-new(calendar-stage){animation:.2s cubic-bezier(.2,.75,.25,1) both calendar-stage-in}@keyframes calendar-stage-out{to{opacity:.55;transform:scale(.997)}}.upcoming-events-panel.compact{margin:0}.upcoming-event-list{gap:8px;display:grid}.upcoming-event{border:1px solid var(--line);color:var(--ink);background:color-mix(in srgb, var(--glass-strong) 80%, transparent);border-radius:12px;grid-template-columns:45px minmax(0,1fr);gap:11px;padding:10px;text-decoration:none;transition:transform .16s,border-color .16s;display:grid}.upcoming-event:hover{border-color:color-mix(in srgb, var(--accent-border) 38%, var(--line));transform:translateY(-1px)}.upcoming-event>time{text-align:center;background:color-mix(in srgb, var(--accent) 10%, var(--glass));border-radius:10px;place-content:center;min-height:44px;display:grid}.upcoming-event>time strong{font:650 17px/1 var(--font-heading)}.upcoming-event>time span{color:var(--muted);text-transform:uppercase;margin-top:3px;font-size:8px;font-weight:750}.upcoming-event-copy{gap:3px;min-width:0;display:grid}.upcoming-event-copy>strong{text-overflow:ellipsis;white-space:nowrap;font-size:12px;overflow:hidden}.upcoming-event-copy small{color:var(--muted);flex-wrap:wrap;align-items:center;gap:4px;font-size:9px;display:flex}.upcoming-event-copy small svg{width:10px;height:10px}.upcoming-event-copy em{color:var(--accent-foreground);font-size:9px;font-style:normal;font-weight:650}.recent-announcements-panel.compact{margin:0}.recent-announcement-list{gap:8px;display:grid}.recent-announcement{border:1px solid var(--line);color:var(--ink);background:color-mix(in srgb, var(--glass-strong) 80%, transparent);border-radius:12px;gap:3px;padding:10px;text-decoration:none;transition:transform .16s,border-color .16s;display:grid}.recent-announcement:hover{border-color:color-mix(in srgb, var(--accent-border) 38%, var(--line));transform:translateY(-1px)}.notification-list{gap:8px;display:grid}.notification-row{border:1px solid var(--line);background:color-mix(in srgb, var(--glass-strong) 80%, transparent);border-radius:12px;align-items:center;gap:6px;padding:12px;transition:transform .16s,border-color .16s;display:flex}.notification-row:hover{border-color:color-mix(in srgb, var(--accent-border) 38%, var(--line));transform:translateY(-1px)}.notification-row.unread{border-color:color-mix(in srgb, var(--accent-border) 45%, var(--line));background:color-mix(in srgb, var(--accent) 7%, var(--glass-strong))}.notification-row-link{min-width:0;color:var(--ink);flex:1;grid-template-columns:38px minmax(0,1fr) auto;align-items:center;gap:12px;text-decoration:none;display:grid}.notification-dismiss{width:30px;height:30px;color:var(--muted);border-radius:8px;flex:none;place-items:center;padding:0;display:grid}.notification-dismiss:hover{color:var(--ink);background:color-mix(in srgb, var(--accent) 9%, transparent)}.notification-dismiss svg{width:15px;height:15px}.notification-icon{background:color-mix(in srgb, var(--accent) 12%, var(--glass));width:38px;height:38px;color:var(--accent-foreground);border-radius:10px;place-items:center;display:grid}.notification-icon svg{width:17px;height:17px}.notification-copy{gap:2px;min-width:0;display:grid}.notification-eyebrow{color:var(--muted);letter-spacing:.04em;text-transform:uppercase;align-items:center;gap:6px;font-size:9px;font-weight:750;display:flex}.notification-new{background:var(--accent);color:var(--on-accent);border-radius:999px;padding:1px 6px;font-size:8px}.notification-copy strong{text-overflow:ellipsis;white-space:nowrap;font-size:13px;overflow:hidden}.notification-copy small{color:var(--muted);font-size:10px}.notification-row-link>time{color:var(--muted);white-space:nowrap;font-size:10px}.notification-bell{position:relative}.notification-bell-backdrop{z-index:60;position:fixed;inset:0}.notification-bell-popup{z-index:61;border:1px solid var(--line);background:var(--tw-surface-white);width:320px;max-width:calc(100vw - 32px);box-shadow:0 20px 45px var(--tw-shadow-rgba-0-0-0-07), 0 4px 12px var(--tw-shadow-rgba-0-0-0-07);border-radius:14px;gap:10px;padding:12px;display:grid;position:absolute;top:calc(100% + 10px);right:0}.notification-bell-popup-heading{justify-content:space-between;align-items:center;gap:8px;display:flex}.notification-bell-popup-heading strong{font-size:13px}.notification-bell-list{scrollbar-width:thin;gap:6px;max-height:340px;padding-right:4px;display:grid;overflow-y:auto}.notification-bell-list::-webkit-scrollbar{width:2px}.notification-bell-list::-webkit-scrollbar-thumb{border:1px solid #0000;min-height:24px}.notification-bell-item{color:var(--ink);background:color-mix(in srgb, var(--glass-strong) 70%, transparent);border-radius:10px;gap:2px;padding:8px 10px;text-decoration:none;display:grid}.notification-bell-item:hover{background:color-mix(in srgb, var(--accent) 8%, var(--glass-strong))}.notification-bell-item.unread{border:1px solid color-mix(in srgb, var(--accent-border) 40%, var(--line))}.notification-bell-eyebrow{color:var(--muted);letter-spacing:.04em;text-transform:uppercase;align-items:center;gap:6px;font-size:9px;font-weight:750;display:flex}.notification-bell-item strong{text-overflow:ellipsis;white-space:nowrap;font-size:12.5px;overflow:hidden}.notification-bell-item small{color:var(--muted);font-size:10.5px}.notification-bell-empty{text-align:center;color:var(--muted);margin:0;padding:16px 4px;font-size:12px}.recent-announcement-audience{color:var(--accent-foreground);text-transform:uppercase;letter-spacing:.3px;font-size:9px;font-weight:650}.recent-announcement strong{text-overflow:ellipsis;white-space:nowrap;font-size:12px;overflow:hidden}.recent-announcement small{color:var(--muted);font-size:9px}@media (max-width:1320px){.calendar-toolbar{grid-template-columns:minmax(190px,1fr) auto}.calendar-period-navigation{justify-self:end}.calendar-toolbar-actions{grid-column:1/-1;justify-content:space-between}}@media (max-width:1180px){.calendar-layout{grid-template-columns:1fr}.calendar-layout.agenda-is-collapsed{grid-template-columns:1fr;gap:18px}.calendar-agenda{max-height:none;position:static}.calendar-agenda.is-collapsed{justify-items:stretch}.calendar-agenda.is-collapsed .calendar-agenda-header{justify-content:flex-end;display:flex}.calendar-agenda.is-collapsed .section-title{display:none}.calendar-year-grid{grid-template-columns:repeat(3,minmax(210px,1fr))}}@media (max-width:860px){.calendar-toolbar{grid-template-columns:1fr}.calendar-period-navigation{justify-self:start}.calendar-toolbar-actions{flex-wrap:wrap;grid-column:auto;justify-content:flex-start}.calendar-year-grid{grid-template-columns:repeat(2,minmax(220px,1fr))}.event-form-main,.event-target-groups{grid-template-columns:repeat(2,minmax(0,1fr))}.calendar-period-view{overflow-x:auto}.calendar-period-weekdays,.calendar-period-grid,.calendar-week-columns{min-width:720px}}@media (max-width:760px){.calendar-toolbar{grid-template-columns:minmax(0,1fr) auto;gap:14px 10px}.calendar-toolbar>.calendar-today-button,.calendar-toolbar>.calendar-period-navigation{grid-area:1/2;justify-self:end}.calendar-toolbar>.calendar-today-button{border:1px solid var(--line);background:color-mix(in srgb, var(--glass-strong) 80%, transparent);min-height:40px;box-shadow:inset 0 1px 0 var(--tw-shadow-rgba-255-255-255-52);border-radius:12px;padding-inline:14px}.calendar-toolbar-actions{grid-column:1/-1;justify-content:flex-start;width:100%}.calendar-view-switcher{width:100%}.calendar-view-switcher :is(a,button){text-align:center;flex:1}.calendar-month-view .calendar-period-weekdays,.calendar-month-view .calendar-period-grid{width:100%;min-width:0}.calendar-month-view .calendar-period-day{aspect-ratio:1;min-height:0;padding:4px;overflow:hidden}.calendar-month-view .calendar-period-day>header{justify-content:center;margin-bottom:2px}.calendar-month-view .calendar-period-day>header small{display:none}.calendar-month-view .calendar-cell-events{justify-content:center;gap:3px;display:flex}.calendar-month-view .calendar-cell-event{width:7px;min-width:7px;height:7px;box-shadow:none;border:0;border-radius:50%;flex:0 0 7px;padding:0;overflow:hidden}.calendar-month-view .calendar-cell-event>*{display:none}.calendar-month-view .calendar-cell-event.blue{background:var(--tw-surface-4285f4)}.calendar-month-view .calendar-cell-event.green{background:var(--tw-surface-2ca46f)}.calendar-month-view .calendar-cell-event.orange{background:var(--tw-surface-e38a2f)}.calendar-month-view .calendar-cell-event.purple{background:var(--tw-surface-8b62d2)}.calendar-month-view .calendar-cell-event.red{background:var(--tw-surface-d95858)}.calendar-month-view .calendar-cell-event.vacation{background:var(--muted)}.calendar-month-view .calendar-cell-event.holiday{background:var(--accent)}.calendar-month-view .calendar-more-events{display:none}.calendar-week-view .calendar-week-columns{grid-template-columns:1fr;min-width:0;min-height:0}.calendar-week-view .calendar-week-day{border-right:0;border-bottom:1px solid var(--line);grid-template-columns:64px minmax(0,1fr);min-height:82px;display:grid}.calendar-week-view .calendar-week-day:last-child{border-bottom:0}.calendar-week-view .calendar-week-day>header{border-right:1px solid var(--line);border-bottom:0;align-content:center;padding:10px 8px}.calendar-week-view .calendar-week-events{align-content:center;padding:10px}.calendar-week-view .calendar-week-event>span{font-size:10px}.calendar-week-view .calendar-week-event>strong{font-size:12px}.calendar-week-view .calendar-week-event small{font-size:10px}.calendar-week-view .calendar-week-empty{text-align:left;padding:0;font-size:10px}.calendar-event-popover{border-radius:22px;align-content:start;height:auto;min-height:0;max-height:85dvh;padding:18px;animation:.26s cubic-bezier(.22,1,.36,1) calendar-mobile-composer-in;bottom:10px;right:auto;overflow-y:auto;transform:translate(-50%);width:90vw!important;top:auto!important;left:50%!important}.calendar-event-popover .calendar-popover-drag-handle{cursor:grab;touch-action:none}.calendar-event-popover .calendar-popover-drag-handle:active{cursor:grabbing}.calendar-event-popover input,.calendar-event-popover select{min-height:44px}.calendar-year-grid{grid-template-columns:1fr}.calendar-year-grid .calendar-day{aspect-ratio:1;min-height:0;font-size:12.5px}}@keyframes calendar-mobile-composer-in{0%{transform:translate(-50%,100%)}to{transform:translate(-50%)}}@media (max-width:560px){.calendar-toolbar{align-items:stretch}.calendar-year-picker{flex-direction:column;align-items:stretch;width:100%}.calendar-toolbar-actions{display:grid}.calendar-view-switcher{justify-content:stretch}.calendar-view-switcher :is(a,button){text-align:center;flex:1}.calendar-year-picker label{display:grid}.calendar-year-grid,.event-form-main,.event-target-mode,.event-target-groups{grid-template-columns:1fr}.event-title-field,.event-description-field{grid-column:auto}.calendar-agenda-event{grid-template-columns:40px minmax(0,1fr)}.calendar-agenda-event>form{position:absolute;top:8px;right:8px}}.optional-navigation-frame:has(.auth-page){padding:0;display:block}.optional-navigation-frame:has(.auth-page)>.portal-navigation{display:none}.optional-navigation-frame:has(.auth-page)>.optional-navigation-content{width:100%}.auth-page{--ink:#17252e;--muted:#687980;--main-border:color-mix(in srgb, var(--school-main) 34%, transparent);--accent-border:var(--school-accent);--tw-surface-rgba-255-255-255-72:#fff;--tw-shadow-rgba-255-255-255-88:#ffffffe0;isolation:isolate;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;background:linear-gradient(135deg, color-mix(in srgb, var(--school-main) 96%, #061419), color-mix(in srgb, var(--school-main) 72%, var(--school-accent)));min-height:100svh;padding:clamp(16px,2.5vw,30px);position:relative;overflow:hidden}.auth-page:before{z-index:-1;background-image:linear-gradient(color-mix(in srgb, var(--school-on-main) 4%, transparent) 1px, transparent 1px), linear-gradient(90deg, color-mix(in srgb, var(--school-on-main) 4%, transparent) 1px, transparent 1px);content:"";background-size:46px 46px;position:absolute;inset:0;-webkit-mask-image:linear-gradient(to bottom right,#000c,#0000 70%);mask-image:linear-gradient(to bottom right,#000c,#0000 70%)}.auth-orb{z-index:-1;filter:blur(2px);pointer-events:none;border-radius:999px;position:absolute}.auth-orb-one{aspect-ratio:1;background:radial-gradient(circle, color-mix(in srgb, var(--school-accent) 52%, transparent), transparent 67%);width:min(48vw,620px);top:-30%;right:-10%}.auth-orb-two{aspect-ratio:1;background:radial-gradient(circle, color-mix(in srgb, var(--school-secondary) 34%, transparent), transparent 68%);width:min(42vw,520px);bottom:-34%;left:-8%}.auth-shell{border:1px solid color-mix(in srgb, var(--school-on-main) 20%, transparent);background:color-mix(in srgb, var(--school-on-main) 8%, transparent);width:min(100%,1040px);min-height:min(640px,100svh - 32px);box-shadow:0 42px 110px #020b0f75, inset 0 1px 0 color-mix(in srgb, var(--school-on-main) 18%, transparent);-webkit-backdrop-filter:blur(24px)saturate(125%);backdrop-filter:blur(24px)saturate(125%);border-radius:30px;grid-template-columns:minmax(0,1.08fr) minmax(380px,.92fr);margin:auto;display:grid;overflow:hidden}.auth-intro{min-width:0;color:var(--school-on-main);flex-direction:column;padding:clamp(32px,4vw,52px);display:flex}.auth-intro .auth-brand{width:fit-content;max-width:100%;color:var(--school-on-main);letter-spacing:-.5px;margin:0}.auth-intro .auth-brand>span:last-child,.auth-mobile-brand strong{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.auth-school-logo{border:1px solid color-mix(in srgb, var(--school-on-main) 28%, transparent);background-color:color-mix(in srgb, var(--school-on-main) 10%, transparent);width:34px;height:34px;box-shadow:0 10px 24px color-mix(in srgb, var(--school-main) 24%, transparent);background-position:50%;background-repeat:no-repeat;background-size:contain;border-radius:11px;flex:none;display:block}.auth-intro-copy{max-width:480px;margin:auto 0;padding:30px 0}.auth-intro-copy .eyebrow{color:color-mix(in srgb, var(--school-on-main) 66%, var(--school-accent))}.auth-intro-copy h2{max-width:12ch;color:var(--school-on-main);font:720 clamp(38px, 4.2vw, 54px)/1.02 var(--font-heading);letter-spacing:-2.7px;margin:12px 0 22px}.auth-intro-copy>p:last-child{max-width:47ch;color:color-mix(in srgb, var(--school-on-main) 72%, transparent);margin:0;font-size:15px;line-height:1.7}.auth-benefits{gap:12px;display:grid}.auth-benefits>div{grid-template-columns:38px minmax(0,1fr);align-items:center;gap:12px;display:grid}.auth-benefits svg{border:1px solid color-mix(in srgb, var(--school-on-main) 18%, transparent);background:color-mix(in srgb, var(--school-on-main) 9%, transparent);width:38px;height:38px;color:color-mix(in srgb, var(--school-on-main) 74%, var(--school-accent));border-radius:12px;padding:9px}.auth-benefits strong,.auth-benefits small{display:block}.auth-benefits strong{font-size:13px}.auth-benefits small{color:color-mix(in srgb, var(--school-on-main) 58%, transparent);margin-top:3px;font-size:11px}.auth-intro-note{color:color-mix(in srgb, var(--school-on-main) 54%, transparent);align-items:center;gap:8px;margin:32px 0 0;font-size:11px;display:flex}.auth-intro-note span{background:color-mix(in srgb, var(--school-accent) 64%, var(--school-on-main));width:6px;height:6px;box-shadow:0 0 0 5px color-mix(in srgb, var(--school-accent) 14%, transparent);border-radius:50%}.auth-page .auth-card{border:1px solid color-mix(in srgb, var(--school-accent) 18%, #fff);background:linear-gradient(150deg, color-mix(in srgb, #fff 95%, var(--school-main)), color-mix(in srgb, #fff 92%, var(--school-accent)));color:#17252e;-webkit-backdrop-filter:blur(26px)saturate(140%);backdrop-filter:blur(26px)saturate(140%);border-radius:24px;align-self:stretch;width:auto;margin:10px;padding:clamp(30px,3vw,42px);box-shadow:0 28px 70px #07191f3d,inset 0 1px #fffffff2}.auth-mobile-brand{display:none}.auth-card-header .eyebrow{color:color-mix(in srgb, var(--school-accent) 78%, #17252e);margin-bottom:10px;font-weight:800}.auth-page .auth-card h1{color:#17252e;letter-spacing:-2px;font-size:clamp(34px,4vw,44px)}.auth-card-header>p:last-child{color:#64777b;min-height:44px;margin:13px 0 0;font-size:14px;line-height:1.55}.auth-page .auth-tabs{border:1px solid color-mix(in srgb, var(--school-main) 8%, transparent);background:color-mix(in srgb, var(--school-main) 6%, #f8fbfa);border-radius:14px;gap:5px;margin:22px 0 20px;padding:5px}.auth-page .auth-tabs button{color:#687980;border-radius:10px;justify-content:center;align-items:center;gap:8px;min-height:43px;font-size:12px;font-weight:700;transition:color .18s,background-color .18s,box-shadow .18s,transform .18s;display:flex}.auth-page .auth-tabs button:hover{color:#17252e}.auth-page .auth-tabs button svg{width:16px;height:16px}.auth-page .auth-tabs .selected{color:color-mix(in srgb, var(--school-accent) 78%, #17252e);box-shadow:0 8px 22px color-mix(in srgb, var(--school-main) 10%, transparent), inset 0 0 0 1px #fffc;background:#fff}.auth-page .auth-form{gap:14px;margin:28px 0 18px}.auth-page .auth-tabs+.auth-form{margin-top:0}.auth-page .auth-form label{color:#344c52;gap:8px;font-size:12px}.auth-input{display:block;position:relative}.auth-input>svg{z-index:1;color:#829093;pointer-events:none;width:17px;height:17px;position:absolute;top:50%;left:14px;transform:translateY(-50%)}.auth-page .auth-input input{border-color:color-mix(in srgb, var(--school-main) 14%, transparent);color:#17252e;background:#fff;border-radius:12px;min-height:49px;padding:12px 14px 12px 43px;box-shadow:0 1px 2px #1839470a}.auth-page .auth-input input::placeholder{color:#9aa7aa}.auth-page .auth-input input:focus{border-color:color-mix(in srgb, var(--school-accent) 68%, transparent);outline:3px solid color-mix(in srgb, var(--school-accent) 14%, transparent);box-shadow:0 8px 20px color-mix(in srgb, var(--school-accent) 10%, transparent)}.auth-page .auth-submit{border:1px solid color-mix(in srgb, var(--school-accent) 82%, #0c2b2e);background:linear-gradient(135deg, color-mix(in srgb, var(--school-accent) 92%, #fff), color-mix(in srgb, var(--school-accent) 76%, var(--school-main)));min-height:50px;color:var(--school-on-accent);box-shadow:0 14px 30px color-mix(in srgb, var(--school-accent) 30%, transparent), inset 0 1px 0 #ffffff38;border-radius:13px;justify-content:center;align-items:center;gap:10px;margin-top:3px;font-size:13px;display:flex}.auth-page .auth-submit svg{width:17px;height:17px;transition:transform .18s}.auth-page .auth-submit:hover:not(:disabled) svg{transform:translate(3px)}.auth-page .form-message{border-radius:11px;margin:0 0 16px;font-size:12px;line-height:1.5}.auth-page .auth-help{color:color-mix(in srgb, var(--school-accent) 82%, #17252e);padding:3px 0;font-size:12px}.auth-support{border-top:1px solid color-mix(in srgb, var(--school-main) 10%, transparent);text-align:center;padding-top:16px;color:#829093!important;margin:20px 0 0!important;font-size:11px!important}.auth-divider{color:#9aa7aa;text-transform:uppercase;letter-spacing:.5px;align-items:center;gap:10px;margin:2px 0 14px;font-size:11px;font-weight:650;display:flex}.auth-divider:before,.auth-divider:after{content:"";background:color-mix(in srgb, var(--school-main) 12%, transparent);flex:1;height:1px}.auth-passkey-button{border:1px solid color-mix(in srgb, var(--school-main) 16%, transparent);color:#17252e;cursor:pointer;background:#fff;border-radius:12px;justify-content:center;align-items:center;gap:10px;width:100%;min-height:49px;font-size:13px;font-weight:650;transition:border-color .18s,box-shadow .18s,transform .18s;display:flex}.auth-passkey-button:hover:not(:disabled){border-color:color-mix(in srgb, var(--school-accent) 45%, transparent);box-shadow:0 8px 20px color-mix(in srgb, var(--school-accent) 10%, transparent)}.auth-passkey-button:disabled{opacity:.65;cursor:not-allowed}.auth-passkey-button svg{width:17px;height:17px;color:color-mix(in srgb, var(--school-accent) 78%, #17252e)}.passkey-list{gap:8px;margin:0 0 16px;padding:0;list-style:none;display:grid}.passkey-row{border:1px solid var(--glass-line);background:color-mix(in srgb, var(--surface) 76%, transparent);border-radius:13px;grid-template-columns:30px minmax(0,1fr) auto;align-items:center;gap:11px;padding:10px 12px;display:grid}.passkey-row>svg{color:var(--accent-foreground)}.passkey-row strong{font-size:13px;display:block}.passkey-row small{color:var(--muted);margin-top:2px;font-size:11px;display:block}.passkey-row-actions{align-items:center;gap:4px;display:flex}.passkey-row-actions .text-button svg{width:15px;height:15px}.passkey-rename-form{align-items:center;gap:6px;display:flex}.passkey-rename-form input{flex:1;min-width:0}.passkey-rename-form svg{width:15px;height:15px}html.dark .auth-page{--ink:#fff;--muted:#b0b4ba;--tw-surface-rgba-255-255-255-72:var(--surface);--tw-shadow-rgba-255-255-255-88:#ffffff0f;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}html.dark .auth-page .auth-card{border-color:color-mix(in srgb, var(--school-accent) 22%, var(--surface-border));background:linear-gradient(150deg, color-mix(in srgb, var(--surface) 94%, var(--school-main)), color-mix(in srgb, var(--surface) 90%, var(--school-accent)));color:var(--ink);box-shadow:0 28px 70px #00000080,inset 0 1px #ffffff0a}html.dark .auth-page .auth-card h1{color:var(--ink)}html.dark .auth-card-header .eyebrow,html.dark .auth-page .auth-help{color:color-mix(in srgb, var(--school-accent) 82%, var(--ink))}html.dark :is(.auth-card-header>p:last-child,.auth-page .auth-form label),html.dark .auth-input>svg,html.dark .auth-page .auth-input input::placeholder,html.dark .auth-divider{color:var(--muted)}html.dark .auth-support{color:var(--muted)!important}html.dark .auth-divider:before,html.dark .auth-divider:after{background:var(--surface-border)}html.dark .auth-page .auth-tabs{border-color:var(--surface-border);background:var(--surface-soft)}html.dark .auth-page .auth-tabs button{color:var(--muted)}html.dark .auth-page .auth-tabs button:hover{color:var(--ink)}html.dark .auth-page .auth-tabs .selected{background:var(--surface-selected);color:color-mix(in srgb, var(--school-accent) 78%, var(--ink));box-shadow:0 8px 22px #0000004d, inset 0 0 0 1px var(--surface-border)}html.dark .auth-page .auth-input input{border-color:var(--surface-border);background:var(--surface-soft);color:var(--ink);box-shadow:none}html.dark .auth-passkey-button{border-color:var(--surface-border);background:var(--surface-soft);color:var(--ink)}html.dark .auth-passkey-button svg{color:color-mix(in srgb, var(--school-accent) 78%, var(--ink))}@media (max-width:840px){.auth-page{padding:24px}.auth-shell{grid-template-columns:1fr;width:min(100%,520px);min-height:0}.auth-intro{display:none}.auth-page .auth-card{margin:8px}.auth-mobile-brand{color:var(--school-main);letter-spacing:-.7px;align-items:center;gap:9px;margin-bottom:42px;font-size:18px;display:flex}.auth-mobile-brand .auth-school-logo{border-color:color-mix(in srgb, var(--school-main) 22%, transparent);background-color:color-mix(in srgb, var(--school-main) 5%, #fff)}}@media (min-width:841px) and (max-height:850px){.auth-page{height:100svh;min-height:0;padding:12px}.auth-shell{height:calc(100svh - 24px);min-height:0}.auth-intro{padding:34px 46px}.auth-intro-copy{padding:24px 0}.auth-intro-copy h2{letter-spacing:-2.7px;margin:12px 0 20px;font-size:clamp(44px,4vw,56px)}.auth-intro-copy>p:last-child{font-size:15px;line-height:1.65}.auth-benefits{gap:12px}.auth-benefits>div{grid-template-columns:38px minmax(0,1fr);gap:12px}.auth-benefits svg{width:38px;height:38px;padding:9px}.auth-intro-note{margin-top:24px}.auth-page .auth-card{align-self:center;margin:0 14px;padding:26px 42px;overflow:visible}.auth-page .auth-card h1{font-size:38px}.auth-card-header .eyebrow{margin-bottom:6px}.auth-card-header>p:last-child{min-height:0;margin-top:6px;font-size:14px}.auth-page .auth-tabs{margin:14px 0}.auth-page .auth-tabs button{min-height:40px}.auth-page .auth-form{gap:10px;margin-bottom:12px}.auth-page .auth-form label{gap:6px}.auth-page .auth-input input{min-height:44px;padding-block:10px}.auth-page .auth-submit{min-height:46px}.auth-page .auth-divider{margin:0 0 10px}.auth-passkey-button{min-height:44px}.auth-support{padding-top:10px;margin-top:12px!important}}@media (max-width:500px){.auth-page{align-items:start;padding:12px;overflow:auto}.auth-shell{border-radius:24px}.auth-page .auth-card{border-radius:19px;margin:6px;padding:28px 22px}.auth-mobile-brand{margin-bottom:32px}.auth-page .auth-card h1{font-size:32px}}@media (prefers-reduced-motion:reduce){.calendar-stage{animation:none}::view-transition-old(calendar-stage){animation:none}::view-transition-new(calendar-stage){animation:none}.calendar-layout{transition:none}}.calendar-view-switcher.wrap{flex-wrap:wrap;width:fit-content;height:auto;margin-bottom:12px}@media (max-width:760px){.schedule-year-selector{width:fit-content}.schedules-portal-content .topbar{position:relative}.schedules-portal-content .portal-heading{width:100%;padding-right:58px}.schedules-portal-content .portal-top-actions{width:auto;position:absolute;top:39px;right:0}.schedules-portal-content .portal-profile-actions{margin-left:0}.calendar-portal-content .topbar{position:relative}.calendar-portal-content .portal-heading{width:100%;padding-right:58px}.calendar-portal-content .portal-profile-actions{margin-left:0;position:absolute;top:39px;right:0}.calendar-view-switcher.wrap.schedule-class-selector{overscroll-behavior-inline:contain;scrollbar-width:none;-webkit-overflow-scrolling:touch;flex-wrap:nowrap;justify-content:flex-start;gap:4px;width:100%;overflow-x:auto}.schedule-class-selector::-webkit-scrollbar{display:none}.schedule-class-selector button{flex:none;min-width:48px;min-height:44px;padding:10px 14px;font-size:12px}}@media (max-width:640px){.announcement-new-page{width:min(100% - 12px,1180px);padding-top:16px;padding-bottom:28px}.announcement-new-page .assessment-authoring-header{margin-bottom:18px}.announcement-new-page .authoring-heading h1{font-size:30px;line-height:1.05}.announcement-new-page .authoring-heading>p:last-child{max-width:none;font-size:13px;line-height:1.5}.announcement-composer{gap:12px;display:grid}.announcement-composer .assessment-setup-card{background:color-mix(in srgb, var(--glass-strong) 88%, transparent);box-shadow:0 18px 42px color-mix(in srgb, var(--main) 12%, transparent);border-radius:20px}.announcement-composer .assessment-setup-heading{background:0 0;align-items:center;gap:12px;padding:18px}.announcement-composer .assessment-setup-heading .setup-step{border-radius:12px;width:40px;height:40px}.announcement-composer .assessment-setup-heading h2{font-size:22px}.announcement-composer .assessment-setup-heading p:last-child{font-size:11px;line-height:1.45}.announcement-composer .assessment-setup-grid{gap:16px;padding:18px 10px}.announcement-composer .setup-audience{padding:14px 10px}.announcement-composer .setup-field{gap:8px;font-size:13px}.announcement-composer .setup-field>span,.announcement-composer .assessment-kind-picker legend{font-size:12px}.announcement-composer .setup-field input,.announcement-composer .setup-field select,.announcement-composer .setup-field textarea{border-radius:12px;min-height:48px;padding:12px 13px;font-size:14px}.announcement-composer .setup-instructions textarea{resize:vertical;min-height:150px}.announcement-composer .ai-draft-controls{grid-template-columns:auto minmax(0,1fr);align-items:center;gap:10px;margin-top:0;display:grid}.announcement-composer .ai-draft-button{border-radius:12px;min-height:42px}.announcement-composer .setup-section-label{gap:4px;margin:2px 0 -2px;padding-top:18px}.announcement-composer .setup-section-label>span{font-size:13px}.announcement-composer .setup-section-label small{font-size:10px;line-height:1.4}.announcement-composer .assessment-kind-picker>div{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.announcement-composer .announcement-audience-mode-picker>div{grid-template-columns:1fr}.announcement-composer .homeroom-option-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.announcement-composer .assessment-kind-picker label{border-radius:13px;grid-template-columns:34px minmax(0,1fr);min-height:58px;padding:9px 10px}.announcement-composer .assessment-kind-picker strong{font-size:12px}.announcement-composer .assessment-kind-picker small{margin-top:2px;font-size:9px}.announcement-composer .announcement-attachment-field input[type=file]{min-height:50px;padding:10px}.announcement-composer .builder-submit{bottom:calc(10px + env(safe-area-inset-bottom));border-radius:18px;padding:8px;display:block;position:sticky}.announcement-composer .builder-submit .save-summary-icon,.announcement-composer .builder-submit>div{display:none}.announcement-composer .builder-submit .primary{border-radius:12px;width:100%;min-height:48px;padding:11px 16px;font-size:13px}}.schedule-workspace-header{flex-wrap:wrap;justify-content:space-between;align-items:flex-end;gap:12px;margin-bottom:4px;display:flex}.schedule-context-summary{border:1px solid color-mix(in srgb, var(--accent) 18%, var(--line));background:color-mix(in srgb, var(--accent) 5%, var(--glass-strong));color:var(--muted);border-radius:9px;align-items:center;gap:7px;margin:0;padding:8px 11px;font-size:12px;font-weight:650;display:inline-flex}.schedule-context-summary svg{color:var(--accent-foreground);flex:none}.schedule-empty-summary{border:1px solid color-mix(in srgb, var(--accent) 22%, var(--line));background:color-mix(in srgb, var(--accent) 6%, var(--glass-strong));color:var(--ink);border-radius:10px;align-items:center;gap:10px;margin:0 0 16px;padding:11px 13px;font-size:13px;display:flex}.schedule-empty-summary>span{background:color-mix(in srgb, var(--accent) 13%, transparent);width:30px;height:30px;color:var(--accent-foreground);border-radius:8px;flex:none;place-items:center;display:grid}.inline-form-row{flex-wrap:wrap;align-items:flex-end;gap:10px;display:flex}.inline-form-row label{color:var(--tw-foreground-456066);gap:6px;font-size:12px;font-weight:650;display:grid}.inline-form-row input,.inline-form-row select{border:1px solid var(--tw-border-ccd9d7);background:var(--tw-surface-white);color:var(--ink);border-radius:7px;padding:10px}.schedule-start-form{grid-template-columns:minmax(220px,320px) max-content;align-items:end;gap:10px;display:grid}.schedule-start-form label{min-width:0;color:var(--tw-foreground-456066);gap:6px;font-size:12px;font-weight:650;display:grid}.schedule-start-form input,.schedule-date-form input{border:1px solid var(--tw-border-ccd9d7);background:var(--tw-surface-white);width:100%;min-height:38px;color:var(--ink);border-radius:7px;padding:7px 10px}.schedule-start-form input:focus,.schedule-date-form input:focus{outline:2px solid var(--tw-border-b5ddd6);border-color:var(--tw-border-5ca99e)}.schedule-action-button,.schedule-compact-button{white-space:nowrap;justify-content:center;align-items:center;gap:6px;width:fit-content;min-height:38px;padding:8px 13px;display:inline-flex}.schedule-action-button svg{flex:none}.schedule-date-form{margin-bottom:16px}.schedule-date-form label{width:min(260px,100%)}.schedule-empty-state{margin-bottom:18px}.schedule-version-pill{border-radius:9px;align-items:center;gap:0;display:inline-flex}.schedule-version-pill:has(form){border:1px solid color-mix(in srgb, var(--line) 78%, transparent);background:color-mix(in srgb, var(--glass-strong) 72%, transparent);overflow:hidden}.calendar-view-switcher .schedule-version-pill:has(form)>:is(a,button){border-radius:8px 0 0 8px}.calendar-view-switcher .schedule-version-pill>form{align-self:stretch;place-items:center;display:grid}.calendar-view-switcher .schedule-version-delete{border:0;border-left:1px solid color-mix(in srgb, var(--line) 82%, transparent);width:30px;height:100%;min-height:30px;color:var(--tw-foreground-8a352b);cursor:pointer;background:0 0;border-radius:0;place-items:center;padding:0;display:grid}.calendar-view-switcher .schedule-version-delete:hover,.calendar-view-switcher .schedule-version-delete:focus-visible{background:var(--tw-surface-ffe8e4);color:color-mix(in srgb, var(--tw-foreground-8a352b) 88%, var(--tw-foreground-black));outline:0}.schedule-grid table{min-width:760px}.schedule-mobile-timetable{display:none}.schedule-grid th,.schedule-grid td{vertical-align:top}.schedule-cell{min-width:150px;padding:4px!important}.schedule-entry{flex-direction:column;gap:2px;padding:8px;display:flex}.schedule-entry small{color:color-mix(in srgb, var(--main-foreground) 65%, var(--tw-foreground-26373c))}.schedule-cell-button{text-align:left;cursor:pointer;background:0 0;border:1px dashed #0000;border-radius:8px;width:100%;padding:0;display:block}.schedule-cell-button:hover{border-color:var(--tw-border-a9d3cc);background:var(--tw-surface-f2f7f5)}.schedule-cell-add{color:var(--accent);align-items:center;gap:5px;padding:12px 8px;font-size:11px;font-weight:650;display:flex}.schedule-entry-editor summary{cursor:pointer;color:var(--accent);margin-top:4px;font-size:11px;font-weight:650;list-style:none}.schedule-entry-editor summary::-webkit-details-marker{display:none}.schedule-entry-form{border:1px solid var(--line);border-radius:10px;margin-top:8px;padding:10px}.schedule-entry-remove{margin-top:6px}@media (max-width:760px){.schedule-grid{display:none}.schedule-mobile-timetable{gap:12px;display:grid}.schedule-mobile-day-tabs{border:1px solid var(--line);background:color-mix(in srgb, var(--glass-strong) 80%, transparent);scrollbar-width:none;border-radius:12px;gap:4px;padding:4px;display:flex;overflow-x:auto}.schedule-mobile-day-tabs::-webkit-scrollbar{display:none}.schedule-mobile-day-tabs button{min-height:42px;color:var(--muted);background:0 0;border:0;border-radius:9px;flex:1 0 auto;padding:9px 13px;font-size:12px;font-weight:700}.schedule-mobile-day-tabs button.active{background:var(--accent);color:var(--on-accent);box-shadow:0 6px 14px color-mix(in srgb, var(--accent) 24%, transparent)}.schedule-mobile-periods{border:1px solid var(--line);border-radius:14px;display:grid;overflow:hidden}.schedule-mobile-period{border-bottom:1px solid var(--line);grid-template-columns:minmax(88px,.38fr) minmax(0,1fr);min-height:72px;display:grid}.schedule-mobile-period:last-child{border-bottom:0}.schedule-mobile-period-time{border-right:1px solid var(--line);background:color-mix(in srgb, var(--glass-strong) 68%, transparent);align-content:center;gap:4px;padding:12px;display:grid}.schedule-mobile-period-time strong{font-size:12px}.schedule-mobile-period-time small{color:var(--muted);font-size:9px}.schedule-mobile-slot{border:0;border-radius:0;align-content:center;min-width:0;padding:8px;display:grid}.schedule-mobile-slot .schedule-entry{padding:4px}.schedule-mobile-empty{color:var(--muted);font-size:11px}}.ui-dialog-backdrop{z-index:200;background:color-mix(in srgb, var(--ink) 32%, transparent);-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);position:fixed;inset:0}.ui-dialog{z-index:201;border:1px solid var(--line);border-radius:var(--radius-lg);background:var(--surface);width:min(92vw,480px);max-height:88vh;box-shadow:0 28px 70px color-mix(in srgb, var(--ink) 22%, transparent);color:var(--ink);gap:14px;padding:22px;display:grid;position:fixed;top:50%;left:50%;overflow-y:auto;transform:translate(-50%,-50%)}.ui-dialog-header{justify-content:space-between;align-items:center;gap:12px;display:flex}.ui-dialog-header h2,.ui-dialog-header h3{margin:0;font-size:16px}.ui-dialog-close{color:var(--muted);cursor:pointer;background:0 0;border:0;border-radius:8px;place-items:center;padding:4px;display:grid}.ui-dialog-close:hover{background:var(--surface-soft);color:var(--ink)}.ui-dialog-footer{justify-content:flex-end;gap:8px;margin-top:4px;display:flex}.schedule-popover-backdrop{z-index:60;position:fixed;inset:0}.schedule-slot-popover{z-index:61;border:1px solid var(--line);background:var(--tw-surface-white);width:280px;box-shadow:0 20px 45px var(--tw-shadow-rgba-0-0-0-07), 0 4px 12px var(--tw-shadow-rgba-0-0-0-07);border-radius:14px;gap:10px;padding:14px;display:grid;position:fixed}.schedule-slot-popover-heading{justify-content:space-between;align-items:center;display:flex}.schedule-slot-popover-heading strong{font-size:13px}.schedule-slot-popover-heading>div{gap:2px;display:grid}.schedule-slot-popover-heading small{color:var(--muted);font-size:10px;font-weight:550}.schedule-popover-close{border-radius:8px;place-items:center;width:30px;height:30px;padding:0;display:grid}.schedule-popover-close:hover{background:color-mix(in srgb, var(--accent) 9%, transparent)}.schedule-slot-popover label{color:var(--tw-foreground-456066);gap:6px;font-size:12px;font-weight:650;display:grid}.schedule-slot-popover input,.schedule-slot-popover select{border:1px solid var(--tw-border-ccd9d7);background:var(--tw-surface-white);color:var(--ink);border-radius:7px;padding:9px 10px}.schedule-slot-popover-actions{justify-content:space-between;align-items:center;gap:8px;margin-top:2px;display:flex}.schedule-slot-popover-actions .danger-button,.schedule-slot-popover-actions .primary{justify-content:center;align-items:center;gap:6px;min-height:36px;padding:7px 11px;display:inline-flex}@media (max-width:760px){.schedule-slot-popover{border-radius:22px;gap:16px;width:90vw;max-height:85dvh;padding:20px;animation:.26s cubic-bezier(.22,1,.36,1) calendar-mobile-composer-in;bottom:10px;overflow-y:auto;transform:translate(-50%);top:auto!important;left:50%!important}.schedule-slot-popover-heading strong{font-size:16px}.schedule-slot-popover-drag-handle{cursor:grab;touch-action:none}.schedule-slot-popover-drag-handle:active{cursor:grabbing}.schedule-slot-popover-heading .text-button{place-items:center;width:38px;height:38px;display:grid}.schedule-slot-popover label{gap:8px;font-size:14px}.schedule-slot-popover input,.schedule-slot-popover select{min-height:48px;padding:11px 13px;font-size:14px}.schedule-slot-popover-actions{gap:12px;margin-top:4px}.schedule-slot-popover-actions .danger-button,.schedule-slot-popover-actions .primary{min-height:46px;padding:11px 16px;font-size:13px}}.schedule-overrides-panel>.table-wrap+.table-wrap{margin-top:16px}.calendar-event-popover{z-index:61;border:1px solid var(--line);background:var(--tw-surface-white);width:320px;box-shadow:0 20px 45px var(--tw-shadow-rgba-0-0-0-07), 0 4px 12px var(--tw-shadow-rgba-0-0-0-07);border-radius:14px;gap:10px;padding:14px;display:grid;position:fixed}.calendar-popover-drag-handle{cursor:grab;touch-action:none}.calendar-popover-drag-handle:active{cursor:grabbing}.calendar-event-popover form{gap:10px;display:grid}.calendar-event-popover label{color:var(--tw-foreground-456066);gap:6px;font-size:12px;font-weight:650;display:grid}.calendar-event-popover input,.calendar-event-popover select{border:1px solid var(--tw-border-ccd9d7);background:var(--tw-surface-white);color:var(--ink);border-radius:7px;padding:9px 10px}.calendar-popover-all-day{flex-direction:row;align-items:center;gap:8px;display:flex!important}.calendar-popover-all-day input{flex:none}.calendar-popover-times{grid-template-columns:1fr 1fr;gap:10px;display:grid}.calendar-event-popover:has(input[name=isAllDay]:checked) .calendar-popover-times{display:none}.calendar-popover-kind{grid-template-columns:repeat(3,minmax(0,1fr));gap:6px;display:grid}.calendar-popover-kind label{border:1px solid var(--tw-border-ccd9d7);color:var(--muted);cursor:pointer;border-radius:7px;flex-direction:row;justify-content:center;align-items:center;gap:5px;margin:0;padding:6px 4px;font-size:11px;font-weight:700;display:flex!important}.calendar-popover-kind label:has(input:checked){border-color:color-mix(in srgb, var(--accent-border) 52%, var(--line));background:color-mix(in srgb, var(--accent) 10%, var(--glass));color:var(--ink)}.calendar-popover-kind input{flex:none;width:12px;height:12px;margin:0}.calendar-popover-groups{flex-wrap:wrap;gap:6px;display:flex}.calendar-popover-groups label{border:1px solid var(--tw-border-ccd9d7);color:var(--ink);cursor:pointer;border-radius:999px;flex-direction:row;align-items:center;gap:6px;margin:0;padding:6px 10px;font-size:11px;font-weight:650;display:flex!important}.calendar-popover-groups input{flex:none;width:13px;height:13px;margin:0}.calendar-event-popover-actions{justify-content:space-between;align-items:center;gap:8px;margin-top:2px;display:flex}.calendar-event-popover-actions .primary{justify-content:center;align-items:center;gap:6px;min-height:36px;padding:7px 11px;display:inline-flex}.events-manage-list{flex-direction:column;gap:10px;display:flex}.events-manage-row{border:1px solid var(--line);background:var(--panel);color:inherit;border-radius:13px;grid-template-columns:48px minmax(0,1fr) auto;align-items:center;gap:14px;padding:12px 16px 12px 18px;text-decoration:none;transition:background .15s,border-color .15s;display:grid;position:relative;overflow:hidden}.events-manage-row:before{content:"";width:4px;position:absolute;inset:0 auto 0 0}.events-manage-row.blue:before{background:var(--tw-surface-4285f4)}.events-manage-row.green:before{background:var(--tw-surface-2ca46f)}.events-manage-row.orange:before{background:var(--tw-surface-e38a2f)}.events-manage-row.purple:before{background:var(--tw-surface-8b62d2)}.events-manage-row.red:before{background:var(--tw-surface-d95858)}.events-manage-row:hover{background:color-mix(in srgb, var(--accent) 6%, var(--panel));border-color:color-mix(in srgb, var(--accent) 30%, var(--line))}.events-manage-date{text-align:center;background:color-mix(in srgb, var(--accent) 9%, var(--glass));border-radius:11px;place-content:center;width:46px;height:46px;display:grid}.events-manage-date strong{font:650 19px/1 var(--font-heading)}.events-manage-date span{color:var(--muted);text-transform:uppercase;margin-top:2px;font-size:9px;font-weight:750;display:block}.events-manage-info{flex-direction:column;gap:4px;min-width:0;display:flex}.events-manage-info strong{font-size:14px}.events-manage-info span{color:var(--muted);font-size:11px}.events-manage-meta{color:var(--muted);white-space:nowrap;align-items:center;gap:12px;font-size:11px;display:flex}.events-manage-arrow{color:var(--muted)}.calendar-event-popover-delete{margin-top:2px}.calendar-event-popover-delete .danger-button{justify-content:center;align-items:center;gap:6px;width:100%;min-height:36px;padding:7px 11px;display:flex}.calendar-event-view-details{color:var(--ink);gap:8px;font-size:12px;display:grid}.calendar-event-view-details p{align-items:flex-start;gap:8px;margin:0;display:flex}.calendar-event-view-details svg{width:14px;height:14px;color:var(--accent-foreground);flex:none;margin-top:1px}.calendar-event-view-description{color:var(--muted)}.calendar-event-view-popover .calendar-event-popover-actions{justify-content:flex-end}@media (max-width:760px){.calendar-event-popover{gap:16px;padding:20px!important}.calendar-event-popover .schedule-slot-popover-heading strong{font-size:16px}.calendar-event-popover .schedule-slot-popover-heading button{place-items:center;width:38px;height:38px;display:grid}.calendar-event-popover form{gap:14px}.calendar-event-popover label{gap:8px;font-size:14px}.calendar-event-popover input,.calendar-event-popover select{min-height:48px;padding:11px 13px;font-size:14px}.calendar-popover-kind{gap:8px}.calendar-popover-kind label{gap:7px;min-height:48px;padding:9px 6px;font-size:13px}.calendar-popover-kind input{width:16px;height:16px;min-height:0;padding:0}.calendar-popover-all-day{gap:10px}.calendar-popover-all-day input{width:18px;height:18px;min-height:0;padding:0}.calendar-popover-times{gap:12px}.calendar-event-popover-actions{gap:12px;margin-top:4px}.calendar-event-popover-actions .secondary,.calendar-event-popover-actions .primary{min-height:46px;padding:11px 16px;font-size:13px}}.calendar-event-delete-bar{max-width:1180px;margin:18px auto 0}.schedule-override-trigger{white-space:nowrap;justify-content:center;align-items:center;gap:5px;min-height:34px;padding:7px 10px;display:inline-flex}.schedule-override-popover{width:min(300px,100vw - 24px)}.schedule-override-popover-actions{justify-content:flex-end;align-items:center;gap:8px;margin-top:2px;display:flex}@media (max-width:760px){.schedule-slot-popover.schedule-override-popover{width:90vw!important}.schedule-override-popover-actions{gap:12px;margin-top:4px}.schedule-override-popover-actions .schedule-compact-button{border-radius:12px;min-height:46px;padding:11px 16px;font-size:13px}}.periods-workspace{grid-template-columns:minmax(0,1fr) minmax(270px,340px);align-items:start;gap:18px;display:grid}.periods-workspace>.panel{min-width:0;margin-bottom:0}.periods-section-title{align-items:center}.periods-section-title p:last-child,.period-create-panel .section-title p:last-child{max-width:620px;color:var(--muted);margin:6px 0 0;font-size:12px;line-height:1.45}.period-count{background:color-mix(in srgb, var(--accent) 10%, var(--tw-surface-white));color:var(--accent-foreground);text-transform:uppercase;border-radius:999px;flex:none;padding:6px 9px;font:700 9px ui-monospace,monospace}.period-editor-list{gap:8px;display:grid}.period-editor-labels,.period-editor-row{grid-template-columns:minmax(0,1fr) 34px;gap:8px;display:grid}.period-editor-labels{color:var(--muted);letter-spacing:.05em;text-transform:uppercase;grid-template-columns:64px minmax(130px,1fr) 112px 112px 34px;padding:0 11px 2px;font-size:9px;font-weight:750}.period-editor-labels span:last-child{text-align:center}.period-editor-row{border:1px solid var(--line);background:color-mix(in srgb, var(--glass-strong) 68%, transparent);box-shadow:inset 0 1px 0 var(--tw-shadow-rgba-255-255-255-52);border-radius:12px;align-items:center;padding:9px}.period-editor-fields{grid-template-columns:64px minmax(130px,1fr) 112px 112px;align-items:end;gap:8px;display:grid}.period-editor-fields label,.period-create-form label{min-width:0;color:var(--tw-foreground-456066);gap:5px;font-size:11px;font-weight:650;display:grid}.period-editor-fields label>span{display:none}.period-editor-fields input,.period-create-form input{border:1px solid var(--tw-border-ccd9d7);background:var(--tw-surface-white);width:100%;min-width:0;min-height:38px;color:var(--ink);border-radius:7px;padding:7px 9px}.period-editor-fields input:focus,.period-create-form input:focus{outline:2px solid var(--tw-border-b5ddd6);border-color:var(--tw-border-5ca99e)}.period-remove-form{place-items:center;display:grid}.period-remove-button{place-items:center;width:34px;height:38px;padding:0;display:grid}.period-create-panel{position:sticky;top:18px}.period-create-form{gap:12px;display:grid}.period-create-row{gap:10px;display:grid}.period-create-main-row{grid-template-columns:minmax(0,1fr) 72px}.period-create-time-row{grid-template-columns:repeat(2,minmax(0,1fr))}.period-add-button{width:100%}.period-empty-state{min-height:210px}@media (max-width:1050px){.periods-workspace{grid-template-columns:1fr}.period-create-panel{position:static}.period-add-button{width:fit-content}}@media (max-width:760px){.period-editor-labels{display:none}.period-editor-row{grid-template-columns:minmax(0,1fr) 34px;align-items:end}.period-editor-fields{grid-template-columns:70px minmax(130px,1fr) repeat(2,minmax(105px,.7fr))}.period-editor-fields label>span{display:block}.period-add-button{width:100%}}@media (max-width:560px){.schedule-start-form{grid-template-columns:minmax(0,1fr)}.schedule-action-button{width:100%}.schedule-date-form{align-items:stretch}.schedule-date-form label{width:100%}.periods-section-title{align-items:flex-start}.period-editor-row{grid-template-columns:minmax(0,1fr)}.period-editor-fields{grid-template-columns:64px minmax(0,1fr)}.period-editor-fields label:nth-of-type(n+3){grid-column:span 1}.period-remove-form{justify-self:end}}.panel .form-panel .stack-form .required-toggle{margin-top:0}.vacation-list-wrap{gap:8px;display:grid}.vacation-list-summary{border:1px solid color-mix(in srgb, var(--accent-border) 22%, var(--glass-line));background:color-mix(in srgb, var(--accent) 7%, var(--surface));border-radius:10px;justify-content:space-between;align-items:center;padding:10px 12px;display:flex}.vacation-list-summary strong{color:var(--accent-foreground);font:650 20px/1 var(--font-heading)}.vacation-list{gap:7px;display:grid}.vacation-row{border-bottom:1px solid var(--glass-line);border:1px solid var(--glass-line);background:color-mix(in srgb, var(--surface) 76%, transparent);border-radius:10px;grid-template-columns:minmax(120px,1fr) auto auto;align-items:center;gap:10px;min-width:0;min-height:52px;padding:7px 9px;display:grid}.vacation-summary{gap:2px;min-width:0;display:grid}.vacation-summary strong,.vacation-summary span{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.vacation-summary strong{color:var(--ink);font-size:12px}.vacation-summary span{color:var(--muted);font-size:9px}.vacation-dates{color:var(--tw-foreground-526369);white-space:nowrap;font-size:10px}.vacation-actions{align-items:center;gap:4px;display:flex}.vacation-actions form{display:contents}.vacation-action.primary,.vacation-action.secondary{border-radius:6px;min-height:28px;padding:5px 8px;font-size:9px;line-height:1}.vacation-edit-form{grid-column:1/-1;grid-template-columns:repeat(2,minmax(120px,1fr)) auto auto;align-items:end;gap:6px;width:100%;display:grid}.vacation-edit-form label{min-width:0;color:var(--muted);gap:3px;font-size:8px;font-weight:700;display:grid}.vacation-edit-form input{border:1px solid var(--tw-border-ccd9d7);background:var(--tw-surface-white);width:100%;min-width:0;height:30px;color:var(--ink);border-radius:6px;padding:4px 6px;font-size:10px}.vacation-row.is-editing{grid-template-columns:1fr;gap:6px;padding-block:8px}.vacation-detailed-editor{gap:5px;display:grid}.vacation-band-form{border-top:1px solid var(--glass-line);grid-template-columns:minmax(72px,.65fr) repeat(2,minmax(120px,1fr)) auto;align-items:end;gap:6px;padding-top:5px;display:grid}.vacation-band-form>strong{color:var(--ink);align-self:center;font-size:10px}.vacation-band-form label{min-width:0;color:var(--muted);gap:3px;font-size:8px;display:grid}.vacation-band-form input{border:1px solid var(--tw-border-ccd9d7);background:var(--tw-surface-white);width:100%;min-width:0;height:30px;color:var(--ink);border-radius:6px;padding:4px 6px;font-size:10px}.vacation-editor-close{justify-self:end;margin-top:2px}.attendance-page{gap:18px;display:grid}.attendance-page .admin-header{margin-bottom:2px}.attendance-tabs-row{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;display:flex}.attendance-section-tabs,.attendance-logs-mode-toggle{border:1px solid var(--glass-line);background:var(--glass);grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.attendance-section-tabs a,.attendance-logs-mode-toggle button{color:var(--muted);text-align:center;border-radius:8px;font-weight:750}.attendance-section-tabs a[aria-current=page],.attendance-logs-mode-toggle button[aria-current=page]{background:var(--main);color:var(--on-main);box-shadow:0 6px 16px color-mix(in srgb, var(--main) 20%, transparent)}.attendance-section-tabs{border-radius:11px;gap:7px;width:min(520px,100%);padding:5px}.attendance-section-tabs a{padding:10px 14px;font-size:11px}.attendance-logs-mode-toggle{border-radius:8px;gap:4px;width:fit-content;padding:3px}.attendance-logs-mode-toggle button{border-radius:6px;padding:5px 10px;font-size:10px}.attendance-summary-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;display:grid}.attendance-summary-card{border:1px solid var(--glass-line);border-radius:var(--radius-md);background:var(--glass);min-height:108px;box-shadow:var(--glass-shadow);gap:7px;padding:18px;display:grid;position:relative;overflow:hidden}.attendance-summary-card:after{content:"";background:color-mix(in srgb, currentColor 9%, transparent);border-radius:50%;width:74px;height:74px;position:absolute;bottom:-24px;right:-18px}.attendance-summary-card span{color:var(--muted);letter-spacing:.06em;text-transform:uppercase;font-size:11px;font-weight:750}.attendance-summary-card strong{color:var(--ink);font:750 34px/1 var(--font-heading)}.attendance-summary-card.active{border-color:color-mix(in srgb, var(--secondary) 34%, var(--glass-line));background:color-mix(in srgb, var(--secondary) 8%, var(--glass))}.attendance-summary-card.complete{border-color:color-mix(in srgb, var(--accent) 34%, var(--glass-line));background:color-mix(in srgb, var(--accent) 8%, var(--glass))}.attendance-summary-card.missing{border-color:color-mix(in srgb, #dc2626 28%, var(--glass-line));background:color-mix(in srgb, #dc2626 6%, var(--glass))}.attendance-control-panel{padding-block:18px}.attendance-filter-form{grid-template-columns:minmax(220px,1fr) minmax(180px,.55fr) auto;align-items:end;gap:12px;display:grid}.attendance-filter-form label,.attendance-student-fields label,.attendance-inline-editor label{color:var(--muted);gap:6px;font-size:11px;font-weight:700;display:grid}.attendance-filter-form select,.attendance-filter-form input,.attendance-student-fields select,.attendance-student-fields input,.attendance-inline-editor input{border:1px solid var(--tw-border-ccd9d7);background:var(--tw-surface-white);width:100%;min-width:0;min-height:42px;color:var(--ink);border-radius:8px;padding:9px 10px}.attendance-roster-panel{gap:16px;display:grid}.attendance-roster-count{background:color-mix(in srgb, var(--main) 8%, var(--surface));color:var(--main-foreground);border-radius:999px;flex:none;padding:7px 10px;font-size:11px;font-weight:750}.attendance-card-list{gap:9px;display:grid}.attendance-student-card,.attendance-person-row{border:1px solid var(--glass-line);background:color-mix(in srgb, var(--surface) 74%, transparent);border-radius:12px;gap:13px;padding:16px;transition:border-color .18s,box-shadow .18s;display:grid}.attendance-student-card:focus-within,.attendance-person-row:focus-within{border-color:color-mix(in srgb, var(--main) 46%, var(--glass-line));box-shadow:0 8px 22px color-mix(in srgb, var(--main) 10%, transparent)}.attendance-student-heading,.attendance-person-identity,.attendance-person-times{justify-content:space-between;align-items:center;gap:12px;display:flex}.attendance-student-heading>div,.attendance-person-identity{min-width:0}.attendance-student-heading strong,.attendance-person-identity strong{color:var(--ink);font-size:14px}.attendance-student-heading span{color:var(--muted);text-transform:capitalize;margin-top:3px;font-size:10px;display:block}.attendance-student-fields{grid-template-columns:minmax(130px,.7fr) repeat(2,minmax(170px,1fr)) minmax(190px,1.2fr);gap:10px;display:grid}.attendance-save-bar{border:1px solid var(--glass-line);background:var(--glass-strong);box-shadow:var(--glass-shadow);-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);border-radius:10px;justify-content:space-between;align-items:center;gap:16px;padding:12px 14px;display:flex;position:sticky;bottom:14px}.attendance-save-bar span{color:var(--muted);font-size:11px}.attendance-person-row{grid-template-columns:minmax(180px,.8fr) minmax(280px,1.2fr) minmax(150px,auto);align-items:center}.attendance-person-identity,.attendance-person-times{justify-content:flex-start}.attendance-person-times>span:not(.attendance-clock-state){min-width:70px;color:var(--muted);text-transform:uppercase;gap:2px;font-size:10px;display:grid}.attendance-person-times strong{color:var(--ink);font-size:13px}.attendance-clock-state{background:var(--tw-surface-edf0ef);width:fit-content;color:var(--muted);text-transform:uppercase;border-radius:999px;align-items:center;padding:6px 9px;font-size:10px;font-weight:750;display:inline-flex}.attendance-clock-state.active{background:var(--tw-surface-faeee0);color:var(--tw-foreground-8a5d27)}.attendance-clock-state.complete{background:var(--tw-surface-dff2eb);color:var(--tw-foreground-17634f)}.attendance-staff-actions{border-top:1px solid var(--glass-line);flex-wrap:wrap;grid-column:1/-1;justify-content:flex-end;align-items:center;gap:8px;padding-top:2px;display:flex}.attendance-staff-actions>form,.attendance-manage-details{padding-top:10px}.attendance-manage-details[open]{border:1px solid color-mix(in srgb, var(--main) 20%, var(--glass-line));background:color-mix(in srgb, var(--surface-soft) 64%, transparent);border-radius:10px;flex:0 0 100%;order:2;padding:12px}.attendance-manage-details summary{border:1px solid var(--tw-border-ccd9d7);background:var(--tw-surface-white);width:fit-content;color:var(--main-foreground);cursor:pointer;border-radius:8px;justify-content:flex-end;align-items:center;gap:7px;margin-left:auto;padding:8px 11px;font-size:11px;font-weight:750;list-style:none;display:flex}.attendance-manage-details summary::-webkit-details-marker{display:none}.attendance-manage-details summary:before{content:"+";background:color-mix(in srgb, var(--main) 10%, transparent);border-radius:50%;place-items:center;width:16px;height:16px;font-size:13px;line-height:1;display:grid}.attendance-manage-details[open] summary:before{content:"−"}.attendance-editor-intro{border-top:1px solid var(--glass-line);justify-content:space-between;align-items:start;gap:18px;margin-top:14px;padding-top:14px;display:flex}.attendance-editor-intro>div{gap:3px;display:grid}.attendance-editor-intro strong{color:var(--ink);font-size:13px}.attendance-editor-intro span,.attendance-editor-intro p{color:var(--muted);font-size:10px}.attendance-editor-intro p{text-align:right;max-width:390px;margin:0}.attendance-inline-editor{grid-template-columns:repeat(2,minmax(190px,1fr)) minmax(220px,1.35fr) auto;align-items:end;gap:10px;margin-top:12px;display:grid}.attendance-correction-save{white-space:nowrap;min-height:42px}.attendance-range-form{flex-wrap:wrap;align-items:end;gap:8px;display:flex}.attendance-range-form label{color:var(--muted);gap:4px;font-size:10px;font-weight:700;display:grid}.attendance-range-form select,.attendance-range-form input{border:1px solid var(--tw-border-ccd9d7);background:var(--tw-surface-white);min-width:0;min-height:32px;color:var(--ink);border-radius:7px;padding:5px 8px;font-size:12px}.attendance-range-form select{min-width:160px}.attendance-range-form input[type=date]{width:145px}.attendance-logs-grid{border-collapse:separate;border-spacing:0;min-width:100%;font-size:11px}.attendance-logs-grid th,.attendance-logs-grid td{text-align:center;white-space:nowrap;border-bottom:1px solid var(--glass-line);padding:8px 9px}.attendance-logs-grid thead th{color:var(--muted);text-transform:uppercase;letter-spacing:.03em;font-size:9px;font-weight:750}.attendance-logs-grid thead th a{color:inherit}.attendance-logs-grid tbody tr:hover td{background:color-mix(in srgb, var(--main) 5%, transparent)}.attendance-logs-grid .attendance-logs-grid-name{z-index:1;background:var(--tw-surface-white);text-align:left;white-space:normal;min-width:160px;padding-left:4px;position:sticky;left:0}.attendance-logs-grid tfoot .attendance-logs-grid-name{background:var(--tw-surface-white)}.attendance-logs-grid-cell{min-width:44px}.attendance-logs-grid-empty{color:var(--muted)}.attendance-status-cell{flex-direction:column;align-items:center;gap:4px;display:flex}.attendance-clock-cell{flex-direction:column;align-items:center;gap:3px;font:700 10px ui-monospace,monospace;display:flex}.attendance-clock-cell-in{color:var(--tw-foreground-17634f)}.attendance-clock-cell-out{color:var(--muted);border-top:1px solid var(--glass-line);width:100%;padding-top:3px}.attendance-logs-grid-footer-cell{color:var(--muted);font-size:10px;font-weight:700}.attendance-logs-grid tfoot td{border-top:2px solid var(--glass-line);border-bottom:none;font-weight:750}.status-pill.compact{padding:3px 7px;font-size:9px}.attendance-kiosk-shell{background:radial-gradient(circle at 15% 0%, color-mix(in srgb, var(--accent) 16%, transparent), transparent 34%), radial-gradient(circle at 88% 20%, color-mix(in srgb, var(--secondary) 11%, transparent), transparent 30%), var(--page-base);min-height:100dvh;padding:clamp(18px,3vw,42px)}.attendance-kiosk-header{justify-content:space-between;align-items:flex-start;gap:24px;max-width:1500px;margin:0 auto 22px;display:flex}.attendance-kiosk-header h1{color:var(--ink);font:750 clamp(34px, 5vw, 62px)/1 var(--font-heading);margin:4px 0 6px}.attendance-kiosk-header p:last-child{color:var(--muted)}.attendance-kiosk-time{justify-items:end;gap:8px;display:grid}.attendance-kiosk-clock{color:var(--ink);letter-spacing:-.05em;font:750 clamp(30px,4vw,52px)/1 ui-monospace,monospace}.attendance-kiosk-tabs{border:1px solid var(--glass-line);background:var(--glass);border-radius:14px;grid-template-columns:1fr 1fr;gap:8px;max-width:720px;margin:0 auto 22px;padding:6px;display:grid}.attendance-kiosk-tabs a{color:var(--muted);text-align:center;border-radius:10px;padding:15px;font-size:15px;font-weight:750}.attendance-kiosk-tabs a[aria-current=page]{background:var(--main);color:var(--on-main);box-shadow:0 8px 20px color-mix(in srgb, var(--main) 22%, transparent)}.attendance-kiosk-toolbar{justify-content:space-between;align-items:end;gap:18px;max-width:1500px;margin:0 auto 16px;display:flex}.attendance-kiosk-toolbar h2{color:var(--ink);font:700 22px/1.2 var(--font-heading);margin:3px 0 0}.attendance-kiosk-helper{max-width:640px;color:var(--muted);margin:7px 0 0;font-size:12px}.attendance-kiosk-toolbar form{gap:8px;display:flex}.attendance-kiosk-toolbar input{border:1px solid var(--tw-border-ccd9d7);background:var(--tw-surface-white);min-width:min(360px,55vw);color:var(--ink);border-radius:9px;padding:11px 13px}.attendance-kiosk-summary{grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;max-width:1500px;margin:0 auto 16px;display:grid}.attendance-kiosk-summary-card{border:1px solid var(--glass-line);background:var(--glass);min-height:86px;box-shadow:var(--glass-shadow);border-radius:12px;gap:5px;padding:14px 16px;display:grid}.attendance-kiosk-summary-card span{color:var(--muted);letter-spacing:.05em;text-transform:uppercase;font-size:10px;font-weight:750}.attendance-kiosk-summary-card strong{color:var(--ink);font:750 28px/1 var(--font-heading)}.attendance-kiosk-summary-card.active{border-color:color-mix(in srgb, var(--secondary) 42%, var(--glass-line));background:color-mix(in srgb, var(--secondary) 8%, var(--glass))}.attendance-kiosk-summary-card.complete{border-color:color-mix(in srgb, var(--accent) 42%, var(--glass-line));background:color-mix(in srgb, var(--accent) 8%, var(--glass))}.attendance-kiosk-grid{grid-template-columns:repeat(auto-fill,minmax(310px,1fr));gap:13px;max-width:1500px;margin:0 auto;display:grid}.attendance-kiosk-person{border:1px solid var(--glass-line);background:var(--glass);min-height:220px;box-shadow:var(--glass-shadow);border-radius:15px;gap:16px;padding:18px;transition:border-color .18s,box-shadow .18s,transform .18s;display:grid}.attendance-kiosk-person:hover{border-color:color-mix(in srgb, var(--main) 32%, var(--glass-line));box-shadow:0 12px 30px color-mix(in srgb, var(--main) 11%, transparent);transform:translateY(-2px)}.attendance-kiosk-person-heading{justify-content:space-between;align-items:flex-start;gap:12px;display:flex}.attendance-kiosk-person-heading div{min-width:0}.attendance-kiosk-person-heading strong{color:var(--ink);text-overflow:ellipsis;white-space:nowrap;font-size:17px;display:block;overflow:hidden}.attendance-kiosk-person-heading div span{color:var(--muted);font-size:11px}.attendance-kiosk-stamps{grid-template-columns:repeat(3,1fr);gap:7px;display:grid}.attendance-kiosk-stamps span{background:color-mix(in srgb, var(--surface-soft) 60%, transparent);color:var(--muted);text-transform:uppercase;border-radius:8px;gap:3px;padding:9px;font-size:9px;display:grid}.attendance-kiosk-stamps strong{color:var(--ink);text-transform:capitalize;font-size:12px}.attendance-kiosk-person form{align-self:end}.attendance-kiosk-person form button{width:100%;min-height:52px;font-size:14px}.attendance-kiosk-complete{color:var(--muted);text-align:center;align-self:end;margin:0;font-size:12px}@media (max-width:760px){.attendance-summary-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.attendance-filter-form,.attendance-student-fields,.attendance-inline-editor{grid-template-columns:1fr 1fr}.attendance-note-field{grid-column:1/-1}.attendance-person-row{grid-template-columns:1fr}.attendance-editor-intro{flex-direction:column;align-items:start;gap:6px}.attendance-editor-intro p{text-align:left}.attendance-kiosk-header,.attendance-kiosk-toolbar{flex-direction:column;align-items:stretch}.attendance-kiosk-time{justify-items:start}.attendance-kiosk-toolbar input{width:100%;min-width:0}.attendance-kiosk-toolbar form{width:100%}.attendance-kiosk-grid{grid-template-columns:1fr}.attendance-kiosk-summary{grid-template-columns:repeat(3,minmax(0,1fr))}.vacation-row{grid-template-columns:minmax(0,1fr) auto}.vacation-dates{grid-column:1}.vacation-actions{grid-area:1/2/span 2}.vacation-edit-form{grid-template-columns:repeat(2,minmax(0,1fr))}.vacation-band-form{grid-template-columns:repeat(2,minmax(0,1fr)) auto}.vacation-band-form>strong{grid-column:1/-1}}@media (max-width:520px){.attendance-filter-form,.attendance-student-fields,.attendance-inline-editor{grid-template-columns:1fr}.kiosk-device-launcher{flex-direction:column;align-items:stretch}.kiosk-device-launcher .primary{width:100%}.attendance-kiosk-summary{grid-template-columns:1fr}.attendance-kiosk-summary-card{grid-template-columns:1fr auto;align-items:center;min-height:72px}.attendance-correction-save{width:100%}.attendance-save-bar{flex-direction:column;align-items:stretch}.attendance-save-bar button{width:100%}}.settings-backup-widget{margin-bottom:1rem}.backup-restore-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem;margin-top:1rem;display:grid}.backup-action-pane{border:1px solid var(--line);background:color-mix(in srgb, var(--surface) 84%, transparent);border-radius:16px;flex-direction:column;align-items:flex-start;gap:.75rem;min-width:0;padding:1rem;display:flex}.backup-action-pane>p,.backup-security-note{color:var(--muted);margin:0;line-height:1.55}.backup-import-pane label{width:100%}.backup-import-pane .backup-file-control,.backup-import-pane .backup-confirm-control{gap:7px;display:grid}.backup-export-summary{border:1px solid color-mix(in srgb, var(--main-border) 18%, transparent);background:color-mix(in srgb, var(--surface) 82%, transparent);border-radius:11px;grid-template-columns:32px minmax(0,1fr);align-items:center;gap:10px;width:100%;min-height:52px;margin-top:24px;padding:7px 11px;display:grid}.backup-export-summary>span{background:color-mix(in srgb, var(--accent) 9%, transparent);width:32px;height:32px;color:var(--accent-foreground);border-radius:9px;place-items:center;display:grid}.backup-export-summary>div{gap:2px;display:grid}.backup-export-summary strong{color:var(--ink);font-size:11px}.backup-export-summary small{color:var(--muted);font-size:9px;font-weight:500}.backup-export-contents{grid-template-columns:repeat(3,minmax(0,1fr));gap:7px;width:100%;display:grid}.backup-export-contents>div{border:1px solid var(--glass-line);background:color-mix(in srgb, var(--surface) 72%, transparent);border-radius:9px;align-items:center;gap:7px;min-width:0;padding:9px;display:flex}.backup-export-contents>div>svg{color:var(--accent-foreground);flex:none}.backup-export-contents>div>span{gap:1px;min-width:0;display:grid}.backup-export-contents small{color:var(--muted);text-transform:uppercase;font-size:8px;font-weight:650}.backup-export-contents strong{color:var(--ink);text-overflow:ellipsis;white-space:nowrap;font-size:9px;overflow:hidden}.backup-export-button,.backup-import-pane>.danger-button{width:100%;margin-top:auto}.backup-field-label{color:var(--ink);font-size:11px;font-weight:650}.backup-field-label strong{color:var(--tw-foreground-a94c40);letter-spacing:.03em;font:750 10px ui-monospace,monospace}.backup-file-picker{border:1px solid color-mix(in srgb, var(--main-border) 18%, transparent);background:color-mix(in srgb, var(--surface) 82%, transparent);cursor:pointer;border-radius:11px;grid-template-columns:32px minmax(0,1fr) auto;align-items:center;gap:10px;min-height:52px;padding:7px 9px 7px 11px;transition:border-color .15s,background .15s;display:grid;position:relative;overflow:hidden}.backup-file-picker:hover{border-color:color-mix(in srgb, var(--accent-border) 38%, transparent);background:color-mix(in srgb, var(--accent) 4%, var(--surface))}.backup-file-picker>svg{color:var(--accent-foreground)}.backup-file-picker>span{gap:2px;min-width:0;display:grid}.backup-file-picker>span strong{color:var(--ink);text-overflow:ellipsis;white-space:nowrap;font-size:11px;overflow:hidden}.backup-file-picker>span small{color:var(--muted);font-size:9px;font-weight:500}.backup-file-picker>em{border:1px solid var(--glass-line);background:color-mix(in srgb, var(--surface) 88%, transparent);color:var(--ink);border-radius:7px;padding:7px 9px;font-size:9px;font-style:normal;font-weight:700}.backup-file-picker input[type=file]{opacity:0;cursor:pointer;width:100%;height:100%;margin:0;position:absolute;inset:0}.backup-file-picker:focus-within{outline:2px solid color-mix(in srgb, var(--accent) 28%, transparent);outline-offset:2px}.backup-confirm-control>input{background:color-mix(in srgb, var(--surface) 82%, transparent);border-radius:10px;min-height:44px;padding:9px 11px;font-size:11px}.backup-action-pane button{justify-content:center;align-items:center;gap:.45rem;min-height:42px;display:inline-flex}.backup-security-note{margin-top:1rem;font-size:.86rem}.optional-navigation-frame:has(.onboarding-page){padding:0;display:block}.optional-navigation-frame:has(.onboarding-page)>.portal-navigation{display:none}.optional-navigation-frame:has(.onboarding-page)>.optional-navigation-content{width:100%}.onboarding-page{background:radial-gradient(circle at 10% 4%, color-mix(in srgb, var(--accent) 40%, transparent), transparent 32rem), radial-gradient(circle at 90% 12%, color-mix(in srgb, var(--secondary) 40%, transparent), transparent 28rem), radial-gradient(circle at 20% 92%, color-mix(in srgb, var(--main) 40%, transparent), transparent 34rem), radial-gradient(circle at 82% 88%, color-mix(in srgb, var(--accent) 40%, transparent), transparent 36rem), linear-gradient(160deg, color-mix(in srgb, var(--main) 6%, var(--page-base)), color-mix(in srgb, var(--accent) 100%, var(--page-base-alt)) 55%, var(--paper));justify-content:center;align-items:center;min-height:100dvh;padding:12px;display:flex}.onboarding-shell{width:85%;height:86dvh}.onboarding-card{border-radius:var(--radius-lg);background:var(--glass-strong);border:1px solid var(--glass-line);width:100%;height:100%;box-shadow:var(--glass-shadow), inset 0 1px 0 var(--tw-shadow-rgba-255-255-255-9);-webkit-backdrop-filter:blur(24px)saturate(145%);backdrop-filter:blur(24px)saturate(145%);flex-direction:column;gap:10px;padding:clamp(18px,2.6vw,30px) clamp(28px,4vw,48px) clamp(10px,1.4vw,16px);display:flex;overflow:hidden}.onboarding-card .theme-color-field,.onboarding-card .theme-live-preview,.onboarding-card .theme-preview-content section i,.onboarding-card input:not([type=checkbox]):not([type=radio]),.onboarding-card select,.onboarding-card textarea,.onboarding-card input:not([type=checkbox]):not([type=radio]):focus,.onboarding-card select:focus,.onboarding-card textarea:focus,.onboarding-card .term-card{box-shadow:none}.onboarding-dots{justify-content:center;gap:10px;margin:0;padding:0;list-style:none;display:flex}.onboarding-dot{background:color-mix(in srgb, var(--main) 16%, transparent);border-radius:999px;width:10px;height:10px;transition:transform .2s,background .2s,width .2s;display:block}.onboarding-dot:hover{background:color-mix(in srgb, var(--accent) 40%, transparent)}.onboarding-dot-current{background:var(--accent);width:26px}.onboarding-dot-completed{background:var(--accent)}.onboarding-dot-skipped{background:color-mix(in srgb, var(--main) 32%, transparent)}.onboarding-dot-pending{background:color-mix(in srgb, var(--main) 16%, transparent)}.onboarding-loading-line-wide{width:92%;margin-top:8px}.onboarding-loading-line-narrow{width:68%}.onboarding-loading-button{border-radius:7px;width:130px;height:40px}.onboarding-content{flex-direction:column;flex:1;min-height:0;display:flex;overflow-y:auto}.onboarding-welcome,.onboarding-step,.onboarding-finish{flex-direction:column;gap:14px;margin:auto 0;display:flex}.onboarding-welcome-layout{grid-template-columns:minmax(0,.9fr) minmax(420px,1.1fr);align-items:center;gap:clamp(34px,6vw,76px);display:grid}.onboarding-welcome-copy{min-width:0;animation:onboarding-welcome-copy-in .55s var(--ease-spring) both;align-content:center;gap:14px;display:grid}.onboarding-welcome-copy h1{max-width:14ch}.onboarding-welcome-copy>p:not(.eyebrow){max-width:48ch;color:var(--muted);margin:0;line-height:1.6}.onboarding-welcome-meta{flex-wrap:wrap;gap:8px 14px;margin-top:4px;display:flex}.onboarding-welcome-meta span{color:var(--muted);align-items:center;gap:6px;font-size:10px;font-weight:650;display:inline-flex}.onboarding-welcome-meta svg{color:var(--accent-foreground)}.onboarding-welcome-overview{border:1px solid var(--glass-line);background:color-mix(in srgb, var(--surface) 62%, transparent);min-width:0;animation:onboarding-welcome-panel-in .58s 80ms var(--ease-spring) both;border-radius:16px;gap:13px;padding:17px;display:grid}.onboarding-welcome-overview-heading{align-items:center;gap:10px;display:flex}.onboarding-welcome-overview-icon{background:color-mix(in srgb, var(--accent) 10%, transparent);width:36px;height:36px;color:var(--accent-foreground);border-radius:10px;flex:none;place-items:center;display:grid}.onboarding-welcome-overview-heading>div{gap:2px;display:grid}.onboarding-welcome-overview-heading>div>span{color:var(--muted);letter-spacing:.08em;font:750 8px/1.2 ui-monospace,monospace}.onboarding-welcome-overview-heading strong{color:var(--ink);font:650 15px/1.2 var(--font-heading)}.onboarding-welcome-overview-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;display:grid}.onboarding-welcome-overview-grid article{border:1px solid var(--glass-line);background:color-mix(in srgb, var(--surface) 74%, transparent);min-width:0;animation:onboarding-welcome-item-in .4s var(--ease-spring) both;transition:border-color .18s ease, background .18s ease, transform .18s var(--ease-spring);border-radius:10px;align-items:flex-start;gap:9px;padding:10px;display:flex}.onboarding-welcome-overview-grid article:first-child{animation-delay:.2s}.onboarding-welcome-overview-grid article:nth-child(2){animation-delay:.26s}.onboarding-welcome-overview-grid article:nth-child(3){animation-delay:.32s}.onboarding-welcome-overview-grid article:nth-child(4){animation-delay:.38s}.onboarding-welcome-overview-grid article:hover{border-color:color-mix(in srgb, var(--accent-border) 26%, var(--glass-line));background:color-mix(in srgb, var(--accent) 5%, var(--surface));transform:translateY(-2px)}.onboarding-welcome-overview-grid article>svg{color:var(--accent-foreground);flex:none;margin-top:1px}.onboarding-welcome-overview-grid article>span{gap:2px;min-width:0;display:grid}.onboarding-welcome-overview-grid strong{color:var(--ink);font-size:11px;line-height:1.25}.onboarding-welcome-overview-grid small{color:var(--muted);font-size:9px;line-height:1.35}.onboarding-welcome-overview>p{color:var(--muted);align-items:center;gap:6px;margin:0;font-size:9px;display:flex}.onboarding-welcome-overview>p svg{color:var(--accent-foreground);flex:none}@keyframes onboarding-welcome-copy-in{0%{opacity:0;transform:translate(-14px)}to{opacity:1;transform:translate(0)}}@keyframes onboarding-welcome-panel-in{0%{opacity:0;transform:translate(16px)scale(.985)}to{opacity:1;transform:translate(0)scale(1)}}@keyframes onboarding-welcome-item-in{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}.onboarding-welcome h1,.onboarding-step h1,.onboarding-finish h1{font:700 clamp(26px, 3.4vw, 38px)/1.1 var(--font-heading);letter-spacing:-1px;color:var(--ink);margin:0}.onboarding-welcome p,.onboarding-step>p,.onboarding-finish>p{color:var(--muted);max-width:60ch;margin:0;line-height:1.6}.onboarding-form{gap:14px;margin-top:6px}.onboarding-term-count{max-width:220px;color:var(--tw-foreground-456066);gap:6px;font-size:12px;font-weight:650;display:grid}.ai-provider-card{border-color:var(--glass-line);background:color-mix(in srgb, var(--surface) 58%, transparent);gap:0}.ai-provider-card-row{align-items:flex-start;gap:20px;display:flex}.ai-provider-field{gap:8px;min-width:0;display:grid}.ai-provider-field-provider{flex:0 30%;min-width:170px}.ai-provider-field-key{flex:60%;min-width:220px}.ai-provider-field .ai-provider-card-label{color:var(--tw-foreground-60747c);letter-spacing:.08em;text-transform:uppercase;font-size:12px;font-weight:700}.ai-provider-field-row{align-items:center;gap:10px;display:flex}.ai-provider-select{min-width:0;position:relative}.ai-provider-select-trigger{border:1px solid color-mix(in srgb, var(--main-border) 18%, transparent);background:color-mix(in srgb, var(--surface) 82%, var(--tw-surface-rgba-255-255-255-42));width:100%;min-height:46px;color:var(--ink);text-align:left;cursor:pointer;border-radius:12px;align-items:center;gap:10px;padding:0 13px;font-size:13px;font-weight:650;display:flex}.ai-provider-select-trigger>img,.ai-provider-select-option>img{object-fit:contain;flex:none;width:18px;height:18px}.ai-provider-select-trigger>span,.ai-provider-select-option>span{flex:1;min-width:0}.ai-provider-select-trigger:hover{border-color:color-mix(in srgb, var(--accent-border) 42%, transparent)}.ai-provider-select-open .ai-provider-select-trigger{border-color:color-mix(in srgb, var(--accent-border) 66%, transparent);outline:3px solid color-mix(in srgb, var(--accent-border) 14%, transparent)}.ai-provider-select-chevron{color:var(--muted);flex:none;transition:transform .2s,color .2s}.ai-provider-select-open .ai-provider-select-chevron{color:var(--accent-foreground);transform:rotate(180deg)}.ai-provider-select-menu{z-index:20;border:1px solid color-mix(in srgb, var(--main-border) 18%, transparent);background:color-mix(in srgb, var(--surface) 94%, var(--paper));width:100%;box-shadow:0 18px 38px color-mix(in srgb, var(--main) 16%, transparent), inset 0 1px 0 var(--glass-highlight);-webkit-backdrop-filter:blur(18px)saturate(140%);backdrop-filter:blur(18px)saturate(140%);border-radius:12px;padding:5px;position:absolute;bottom:calc(100% + 7px);left:0}.ai-provider-select-option{width:100%;min-height:38px;color:var(--ink);text-align:left;cursor:pointer;background:0 0;border:0;border-radius:8px;align-items:center;gap:10px;padding:0 9px;font-size:13px;font-weight:600;display:flex}.ai-provider-select-option:hover,.ai-provider-select-option:focus-visible{background:color-mix(in srgb, var(--accent) 10%, transparent);outline:0}.ai-provider-select-option[aria-selected=true]{color:var(--accent-foreground)}.ai-provider-select-option>svg{color:var(--accent-foreground);flex:none}.ai-provider-key-field{box-sizing:border-box;border:1.5px solid color-mix(in srgb, var(--main-border) 22%, transparent);background:color-mix(in srgb, var(--surface) 82%, var(--tw-surface-rgba-255-255-255-42));border-radius:12px;flex:1;align-items:center;gap:6px;min-width:0;min-height:46px;padding:0 8px 0 14px;transition:border-color .2s;display:flex}.ai-provider-key-icon{color:var(--muted);flex:none}.ai-provider-key-input{min-width:0;height:auto;color:var(--ink);background:0 0;border:0;flex:1;align-self:stretch;padding:0;font-size:14px;font-weight:600;line-height:1.4}.ai-provider-key-control .ai-provider-key-input{box-shadow:none!important;background:0 0!important;border:0!important;border-radius:0!important;outline:0!important}.ai-provider-key-input::placeholder{color:var(--muted);opacity:.82}.ai-provider-key-control .ai-provider-key-field .ai-provider-key-input:focus,.ai-provider-key-control .ai-provider-key-field .ai-provider-key-input:focus-visible{box-shadow:none!important;background:0 0!important;border:0!important;outline:0!important}.ai-provider-key-toggle{width:28px;height:28px;color:var(--muted);cursor:pointer;background:0 0;border:0;border-radius:8px;flex:none;place-items:center;display:grid}.ai-provider-key-toggle:hover{background:color-mix(in srgb, var(--main) 8%, transparent);color:var(--ink)}.ai-provider-field .ai-provider-card-hint{color:var(--muted);text-transform:none;letter-spacing:normal;align-items:center;gap:6px;font-size:11px;font-weight:500;display:flex}.onboarding-existing-list{color:var(--muted);font-size:13px}.onboarding-existing-list ul{margin:6px 0 0;padding-left:18px}.onboarding-subheading{font:700 15px/1.2 var(--font-heading);color:var(--ink);margin:4px 0 0}.onboarding-field-row{grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:14px;display:grid}.onboarding-compact-form{border:1px solid var(--glass-line);background:color-mix(in srgb, var(--surface) 58%, transparent);border-radius:14px;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin-top:4px;padding:13px;display:grid}.onboarding-compact-form label{min-width:0;color:var(--muted);letter-spacing:.055em;text-transform:uppercase;align-content:start;gap:5px;font-size:10px;font-weight:750;display:grid}.onboarding-compact-form input,.onboarding-compact-form select{box-sizing:border-box;border:1px solid color-mix(in srgb, var(--main-border) 18%, transparent);background:color-mix(in srgb, var(--surface) 88%, var(--tw-surface-rgba-255-255-255-72));width:100%;min-width:0;min-height:40px;color:var(--ink);letter-spacing:0;text-transform:none;border-radius:10px;padding:0 11px;font-size:13px;font-weight:600}.onboarding-compact-form input:focus,.onboarding-compact-form select:focus{border-color:color-mix(in srgb, var(--accent-border) 54%, transparent);box-shadow:none!important;outline:0!important}.onboarding-compact-form input:disabled,.onboarding-compact-form select:disabled{cursor:not-allowed;opacity:.58}.onboarding-profile-form{grid-template-columns:repeat(2,minmax(0,1fr))}.onboarding-academic-year-form{grid-template-columns:minmax(180px,1.25fr) repeat(2,minmax(150px,1fr))}.onboarding-grade-range-form{grid-template-columns:repeat(2,minmax(220px,1fr))}.onboarding-homeroom-form{grid-template-columns:minmax(180px,1.4fr) minmax(135px,.85fr) repeat(2,minmax(95px,.6fr)) auto;align-items:end}.onboarding-generate-homerooms{white-space:nowrap;justify-content:center;align-items:center;gap:6px;min-height:40px;display:inline-flex}.onboarding-invite-form{grid-template-columns:repeat(3,minmax(150px,1fr)) auto;align-items:end}.onboarding-invite-form .primary{white-space:nowrap;min-height:40px}.onboarding-step>.admin-notice{max-width:none;min-height:42px;padding:9px 10px 9px 44px;font-size:11px}.onboarding-step>.admin-notice:before{border-radius:7px;width:22px;height:22px;font-size:11px;left:11px}.onboarding-invite-roster{border:1px solid var(--glass-line);background:color-mix(in srgb, var(--surface) 52%, transparent);border-radius:12px;gap:7px;padding:10px 12px;display:grid}.onboarding-invite-roster-heading{justify-content:space-between;align-items:center;gap:12px;display:flex}.onboarding-invite-roster-heading>span{color:var(--ink);align-items:center;gap:7px;display:inline-flex}.onboarding-invite-roster-heading svg{color:var(--accent-foreground)}.onboarding-invite-roster-heading strong{font-size:11px}.onboarding-invite-roster-heading>small{color:var(--muted);font-size:9px}.onboarding-invite-roster ul{scrollbar-width:none;gap:7px;margin:0;padding:0 0 2px;list-style:none;display:flex;overflow-x:auto}.onboarding-invite-roster ul::-webkit-scrollbar{display:none}.onboarding-invite-roster li{border:1px solid var(--glass-line);background:color-mix(in srgb, var(--surface) 78%, transparent);border-radius:9px;flex:0 0 min(270px,82vw);grid-template-columns:28px minmax(130px,1fr) auto 14px;align-items:center;gap:7px;min-width:0;padding:7px 8px;display:grid}.onboarding-invite-person-icon{background:color-mix(in srgb, var(--accent) 8%, transparent);width:28px;height:28px;color:var(--accent-foreground);border-radius:8px;place-items:center;display:grid}.onboarding-invite-roster li>span:nth-child(2){gap:1px;min-width:0;display:grid}.onboarding-invite-roster li>span:nth-child(2) strong,.onboarding-invite-roster li>span:nth-child(2) small{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.onboarding-invite-roster li>span:nth-child(2) strong{color:var(--ink);font-size:10px}.onboarding-invite-roster li>span:nth-child(2) small{color:var(--muted);font-size:8px}.onboarding-invite-role{background:color-mix(in srgb, var(--main) 7%, transparent);color:var(--muted);text-transform:capitalize;border-radius:999px;padding:3px 6px;font-size:8px;font-weight:750}.onboarding-invite-roster li>svg{color:var(--accent-foreground)}.onboarding-homeroom-summary{border:1px solid var(--glass-line);background:color-mix(in srgb, var(--surface) 52%, transparent);border-radius:12px;gap:7px;padding:10px 12px;display:grid}.onboarding-homeroom-summary-heading{justify-content:space-between;align-items:center;gap:12px;display:flex}.onboarding-homeroom-summary-heading>span{color:var(--ink);align-items:center;gap:7px;display:inline-flex}.onboarding-homeroom-summary-heading svg{color:var(--accent-foreground)}.onboarding-homeroom-summary-heading strong{font-size:11px}.onboarding-homeroom-summary-heading>small{color:var(--muted);font-size:9px}.onboarding-homeroom-summary ul{scrollbar-width:none;gap:7px;margin:0;padding:0 0 2px;list-style:none;display:flex;overflow-x:auto}.onboarding-homeroom-summary ul::-webkit-scrollbar{display:none}.onboarding-homeroom-summary li{border:1px solid var(--glass-line);background:color-mix(in srgb, var(--surface) 78%, transparent);border-radius:9px;flex:0 0 min(285px,84vw);grid-template-columns:28px minmax(135px,1fr) auto;align-items:center;gap:7px;min-width:0;padding:7px 8px;display:grid}.onboarding-homeroom-range-icon{background:color-mix(in srgb, var(--accent) 8%, transparent);width:28px;height:28px;color:var(--accent-foreground);border-radius:8px;place-items:center;display:grid}.onboarding-homeroom-summary li>span:nth-child(2){gap:1px;min-width:0;display:grid}.onboarding-homeroom-summary li>span:nth-child(2) strong,.onboarding-homeroom-summary li>span:nth-child(2) small{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.onboarding-homeroom-summary li>span:nth-child(2) strong{color:var(--ink);font-size:10px}.onboarding-homeroom-summary li>span:nth-child(2) small{color:var(--muted);font-size:8px}.onboarding-homeroom-summary li>span:last-child{background:color-mix(in srgb, var(--main) 7%, transparent);color:var(--muted);white-space:nowrap;border-radius:999px;padding:3px 6px;font-size:8px;font-weight:750}.onboarding-grade-assign-grid{grid-template-columns:repeat(6,minmax(105px,1fr));gap:8px;margin-top:4px}.onboarding-grade-assign-grid .grade-level-assign-form{border-color:var(--glass-line);background:color-mix(in srgb, var(--surface) 62%, transparent);border-radius:10px;gap:5px;padding:9px 10px}.onboarding-grade-assign-grid select{box-sizing:border-box;border:1px solid color-mix(in srgb, var(--main-border) 18%, transparent);background:color-mix(in srgb, var(--surface) 88%, var(--tw-surface-rgba-255-255-255-72));min-height:36px;color:var(--ink);border-radius:9px;padding:0 8px;font-size:12px;font-weight:600}.onboarding-grade-assign-grid select:focus{border-color:color-mix(in srgb, var(--accent-border) 54%, transparent);outline:0}.onboarding-card .onboarding-toggle-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.onboarding-card .onboarding-toggle-grid label{border-color:var(--glass-line);background:color-mix(in srgb, var(--surface) 60%, transparent);cursor:pointer;border-radius:10px;gap:0;min-width:0;min-height:58px;padding:9px 10px;transition:border-color .16s,background .16s;position:relative}.onboarding-card .onboarding-toggle-grid label:hover{border-color:color-mix(in srgb, var(--accent-border) 30%, var(--glass-line));background:color-mix(in srgb, var(--accent) 5%, var(--surface))}.onboarding-card .onboarding-toggle-grid input[type=checkbox]{opacity:0;pointer-events:none;width:1px;height:1px;margin:0;position:absolute}.onboarding-card .onboarding-toggle-grid label:has(input:checked){border-width:3px;border-color:color-mix(in srgb, var(--accent-border) 38%, var(--glass-line));background:color-mix(in srgb, var(--accent) 4%, var(--surface));box-shadow:none;padding:7px 8px}.onboarding-card .onboarding-toggle-grid label:has(input:checked) strong{color:var(--ink)}.onboarding-card .onboarding-toggle-grid label:has(input:focus-visible){outline:2px solid color-mix(in srgb, var(--accent-border) 34%, transparent);outline-offset:2px}.onboarding-card .onboarding-toggle-grid label strong{font-size:12px;line-height:1.25}.onboarding-card .onboarding-toggle-grid label small{margin-top:2px;font-size:10px;line-height:1.3}.onboarding-grade-groups-grid{grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:10px;margin-top:4px;display:grid}.onboarding-grade-group-card{border:1px solid var(--glass-line);background:color-mix(in srgb, var(--surface) 58%, transparent);border-radius:14px;grid-template-columns:minmax(0,1fr) 76px auto;align-items:end;gap:8px;min-width:0;padding:11px 13px;display:grid}.onboarding-grade-group-delete{white-space:nowrap;min-height:36px;padding-block:7px}.onboarding-grade-group-delete:disabled{opacity:.45;cursor:not-allowed}.onboarding-grade-group-card label{text-transform:uppercase;letter-spacing:.06em;min-width:0;color:var(--muted);gap:4px;font-size:11px;font-weight:700;display:grid}.onboarding-grade-group-card input{border:1px solid color-mix(in srgb, var(--main-border) 18%, transparent);background:color-mix(in srgb, var(--surface) 88%, var(--tw-surface-rgba-255-255-255-72));width:100%;min-width:0;min-height:36px;color:var(--ink);letter-spacing:0;text-transform:none;border-radius:10px;padding:0 12px;font-size:13px;font-weight:600}.onboarding-grade-group-card input::placeholder{color:color-mix(in srgb, var(--muted) 68%, transparent);font-weight:500}.onboarding-grade-group-card input:focus{border-color:color-mix(in srgb, var(--accent-border) 62%, transparent);outline:3px solid color-mix(in srgb, var(--accent-border) 14%, transparent)}.onboarding-grade-group-add{border-style:dashed;grid-template-columns:minmax(0,1fr) minmax(110px,.24fr);gap:10px}.onboarding-grade-group-add .secondary{min-height:36px;padding-block:7px}.onboarding-nav{border-top:1px solid var(--line);justify-content:space-between;align-items:center;gap:12px;padding-top:10px;display:flex}.onboarding-nav-left,.onboarding-nav-right{align-items:center;gap:12px;display:flex}.onboarding-nav-back{text-decoration:none}.onboarding-nav-continue{justify-content:center;align-items:center;gap:7px;min-width:120px;display:inline-flex}.onboarding-nav-continue svg{flex:none;transition:transform .16s}.onboarding-nav-continue:hover:not(:disabled) svg{transform:translate(2px)}.onboarding-finish-celebration{border:1px solid color-mix(in srgb, var(--accent-border) 24%, var(--glass-line));background:color-mix(in srgb, var(--accent) 6%, var(--surface));animation:onboarding-finish-celebration-in .6s var(--ease-spring) both;border-radius:16px;grid-template-columns:68px minmax(0,1fr) auto;align-items:center;gap:15px;padding:15px 16px;display:grid}.onboarding-finish-illustration{border:1px solid color-mix(in srgb, var(--accent-border) 20%, var(--glass-line));background:color-mix(in srgb, var(--surface) 76%, transparent);width:62px;height:62px;color:var(--accent-foreground);border-radius:18px;place-items:center;display:grid;position:relative}.onboarding-finish-illustration>svg:last-child{animation:2.8s ease-in-out .5s infinite onboarding-finish-popper}.onboarding-finish-sparkle{color:var(--secondary-foreground);animation:2.2s ease-in-out infinite onboarding-finish-sparkle;position:absolute}.onboarding-finish-sparkle-one{top:-6px;right:-5px}.onboarding-finish-sparkle-two{animation-delay:.65s;bottom:3px;left:-6px}.onboarding-finish-copy{gap:4px;min-width:0;display:grid}.onboarding-finish-copy .eyebrow{margin:0}.onboarding-finish-copy h1{margin:0;font-size:clamp(24px,2.7vw,31px)}.onboarding-finish-copy>p:last-child{max-width:62ch;color:var(--muted);margin:0;font-size:11px;line-height:1.5}.onboarding-finish-stats{gap:5px;min-width:112px;display:grid}.onboarding-finish-stats span{color:var(--muted);white-space:nowrap;align-items:center;gap:5px;font-size:9px;display:flex}.onboarding-finish-stats svg{color:var(--accent-foreground)}.onboarding-finish-stats strong{color:var(--ink);font-size:11px}.onboarding-finish-review{border:1px solid var(--glass-line);background:color-mix(in srgb, var(--surface) 52%, transparent);animation:onboarding-finish-review-in .5s .16s var(--ease-spring) both;border-radius:14px;gap:8px;padding:11px 12px;display:grid}.onboarding-finish-review-heading{justify-content:space-between;align-items:end;gap:16px;display:flex}.onboarding-finish-review-heading>div{gap:1px;display:grid}.onboarding-finish-review-heading>div>span{color:var(--muted);letter-spacing:.07em;font:750 8px/1.2 ui-monospace,monospace}.onboarding-finish-review-heading strong{color:var(--ink);font-size:12px}.onboarding-finish-review-heading>small{color:var(--muted);font-size:9px}.onboarding-finish-list{grid-template-columns:repeat(2,minmax(0,1fr));gap:6px;margin:0;padding:0;list-style:none;display:grid}.onboarding-finish-item{border:1px solid var(--glass-line);background:color-mix(in srgb, var(--surface) 62%, transparent);border-radius:10px;align-items:center;gap:9px;min-width:0;padding:8px 10px;display:flex}.onboarding-finish-item span:first-child{min-width:0;color:var(--ink);text-overflow:ellipsis;white-space:nowrap;flex:1;font-size:12px;font-weight:650;overflow:hidden}.onboarding-finish-status{text-transform:uppercase;letter-spacing:.04em;color:var(--muted);font-size:9px;font-weight:750}.onboarding-finish-item-completed .onboarding-finish-status{color:color-mix(in srgb, var(--accent) 78%, var(--ink))}.onboarding-finish-item a{color:var(--accent);font-size:12px;font-weight:650;text-decoration:none}.onboarding-finish-item .text-button{padding:3px;font-size:10px}@keyframes onboarding-finish-celebration-in{0%{opacity:0;transform:translateY(10px)scale(.99)}to{opacity:1;transform:translateY(0)scale(1)}}@keyframes onboarding-finish-review-in{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}@keyframes onboarding-finish-popper{0%,82%,to{transform:rotate(0)scale(1)}88%{transform:rotate(-7deg)scale(1.08)}94%{transform:rotate(4deg)scale(1.03)}}@keyframes onboarding-finish-sparkle{0%,to{opacity:.45;transform:scale(.82)rotate(0)}50%{opacity:1;transform:scale(1.12)rotate(10deg)}}@media (max-width:960px){.onboarding-welcome-layout{grid-template-columns:1fr;gap:24px}.onboarding-welcome-copy h1{max-width:none}.onboarding-finish-celebration{grid-template-columns:62px minmax(0,1fr)}.onboarding-finish-stats{flex-wrap:wrap;grid-column:1/-1;gap:6px 14px;display:flex}.onboarding-compact-form,.onboarding-academic-year-form,.onboarding-grade-range-form,.onboarding-homeroom-form,.onboarding-invite-form{grid-template-columns:repeat(2,minmax(0,1fr))}.onboarding-invite-form .primary,.onboarding-generate-homerooms{width:100%}.onboarding-grade-assign-grid{grid-template-columns:repeat(4,minmax(105px,1fr))}.onboarding-card .onboarding-toggle-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width:640px){.onboarding-page{padding:8px}.onboarding-shell{width:97%;height:97dvh}.onboarding-card{border-radius:18px;padding:22px}.onboarding-nav{flex-direction:column;align-items:stretch}.onboarding-nav-left,.onboarding-nav-right{justify-content:space-between}.ai-provider-card-row{flex-direction:column}.ai-provider-field-provider,.ai-provider-field-key{flex:auto;width:100%}.onboarding-compact-form,.onboarding-academic-year-form,.onboarding-grade-range-form,.onboarding-homeroom-form,.onboarding-invite-form,.onboarding-card .onboarding-toggle-grid,.onboarding-finish-list{grid-template-columns:1fr}.onboarding-grade-assign-grid{grid-template-columns:repeat(2,minmax(105px,1fr))}.onboarding-grade-group-card,.onboarding-grade-group-add,.onboarding-welcome-overview-grid{grid-template-columns:1fr}.onboarding-finish-celebration{text-align:center;grid-template-columns:1fr}.onboarding-finish-illustration{justify-self:center}.onboarding-finish-stats{justify-content:center}.onboarding-finish-review-heading{flex-direction:column;align-items:flex-start;gap:3px}}.onboarding-checklist-banner{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:14px;display:flex}.onboarding-checklist-banner p{margin:4px 0 0}.onboarding-checklist-banner-actions{flex-wrap:wrap;gap:8px;display:flex}@media (max-width:760px){.backup-restore-grid{grid-template-columns:1fr}}html.dark :is(.panel,.metric,.profile-settings-summary,.settings-card,.settings-widget,.settings-action-card,.foundation-card,.class-widget,.student-card,.student-dashboard-link,.grade-curriculum-card,.assessment-card,.question-editor,.student-question,.empty-state,.table-wrap,.route-loading-card,.route-loading-panel){border-color:var(--line);box-shadow:0 12px 32px #00000047}html.dark :is(.settings-widget-heading>span,.theme-color-field,.theme-live-preview,.theme-preview-content section i,.calendar-view-switcher,.calendar-period-navigation,.assessment-workspace-tabs,.assessment-detail-tabs,.student-assessment-header nav,.period-editor-row,.term-manager-control,.term-control-icon),html.dark :is(.field-grid,.stack-form,.setup-field,.profile-settings-form,.parent-self-signup-form) :is(input:not([type=checkbox]):not([type=radio]),select,textarea){border-color:var(--line);box-shadow:none}html.dark :is(.primary,.secondary,.danger-button,.success-button,.file-picker-button,.admin-settings-button,.theme-reset-button,.answer-add-button){box-shadow:0 8px 20px #0000003d}html.dark :is(.primary,.secondary,.danger-button,.success-button):hover:not(:disabled){box-shadow:0 10px 24px #0000004d}html.dark :is(.assessment-workspace-tabs,.assessment-detail-tabs,.student-assessment-header nav){border-color:var(--surface-border);background:var(--surface)}html.dark :is(.assessment-workspace-tabs,.assessment-detail-tabs,.student-assessment-header nav) :is(a,button).active{background:var(--surface-selected);box-shadow:0 5px 14px #00000047}html.dark :is(.response-workspace,.submission-queue) :is(.submission-row,.result-row){border:0}html.dark .response-workspace-list{gap:8px}html.dark .response-workspace-list .submission-row{background:var(--surface-soft);box-shadow:var(--shadow-dark-row);padding:14px}html.dark .response-workspace-list .submission-row:hover{background:var(--surface-selected)}html.dark .response-filter-links{background:var(--surface)}html.dark .response-filter-links a{color:var(--muted);box-shadow:none}html.dark .response-filter-links a.active{background:var(--surface-selected);color:var(--ink);box-shadow:0 4px 12px #0000003d}html.dark :is(.period-editor-fields,.period-create-form) :is(input,select,textarea),html.dark :is(.admin-filter-bar,.assessment-filter-form,.attendance-filter-form,.calendar-year-picker,.attendance-student-fields,.attendance-inline-editor,.attendance-parent-report-form,.attendance-kiosk-toolbar,.companion-memory-manager) :is(input:not([type=checkbox]):not([type=radio]),select,textarea){--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;border-color:var(--surface-border)!important;background-color:var(--surface-soft)!important;box-shadow:none!important;background-image:none!important}html.dark .companion-memory-list li{border-color:var(--surface-border);background:var(--surface-soft);box-shadow:none}html.dark .companion-memory-list li:hover{border-color:color-mix(in srgb, var(--accent-border) 28%, var(--surface-border));background:var(--surface-selected)}html.dark :is(.companion-memory-count,.companion-memory-entry-heading span,.companion-memory-empty){border-color:var(--surface-border);background:var(--surface-soft)}html.dark .companion-memory-manager .stack-form label{color:var(--muted)}html.dark .companion-conversation-rename-form input,html.dark .link-code-tree-toolbar input[type=search]{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;border-color:var(--surface-border)!important;background-color:var(--surface-soft)!important;box-shadow:none!important;background-image:none!important}html.dark .link-code-tree-grade{border-color:var(--surface-border);background:var(--surface);box-shadow:var(--shadow-dark-row)}html.dark .link-code-tree-homeroom,html.dark .staff-attendance-window-control{border-color:var(--surface-border);background:var(--surface-soft);box-shadow:none}html.dark .theme-color-inputs :is(input[type=color],input:not([type=color])),html.dark [class*=popover] :is(input:not([type=checkbox]):not([type=radio]),select,textarea),html.dark :is(.schedule-start-form,.schedule-date-form) input[type=date]{border-color:var(--line);background:var(--surface-soft);box-shadow:none}html.dark :is(.calendar-event-popover,.schedule-slot-popover){border-color:var(--line);background:var(--surface);box-shadow:0 20px 46px #00000080}html.dark .schedule-mobile-periods{border-color:var(--surface-selected);background:var(--surface);box-shadow:none}html.dark .schedule-mobile-period,html.dark .schedule-mobile-period-time{border-color:var(--surface-selected)}html.dark .class-widget .class-gear,html.dark .student-card .student-manage-link{border-color:var(--surface-border);background:var(--surface-soft);box-shadow:var(--shadow-dark-chip)}.assessment-builder .builder-submit{border-color:var(--line);background:var(--glass-strong);color:var(--ink);box-shadow:0 14px 34px #00000029}.assessment-builder .builder-submit strong{color:var(--ink)}.assessment-builder .builder-submit p{color:var(--muted)}.assessment-builder .assessment-setup-heading{border-bottom-color:var(--surface-neutral-border);background:#f3f3f5}.assessment-builder .assessment-setup-heading .eyebrow{color:var(--muted)}.assessment-builder .assessment-setup-heading .setup-step,.assessment-builder .save-summary-icon,.assessment-builder :is(.question-sequence,.question-format-icon,.format-icon,.upload-format-icon){background:var(--surface-selected);color:var(--ink);box-shadow:none}.assessment-builder .assessment-kind-picker label:has(input:checked){background:var(--surface-selected);box-shadow:none}.assessment-builder .assessment-kind-picker label:has(input:checked) .kind-icon{background:color-mix(in srgb, var(--accent) 12%, var(--surface-selected));color:var(--accent-foreground)}.assessment-builder :is(.setup-audience,.setup-schedule,.question-editor,.question-library){border-color:var(--surface-neutral-border);background:var(--surface-neutral-strong)}.assessment-builder :is(.setup-audience,.setup-schedule){box-shadow:none}.assessment-builder :is(.setup-audience-heading>div:first-child>span,.setup-schedule-heading strong){color:var(--ink)}.assessment-builder :is(.setup-audience-heading small,.setup-schedule-heading small){color:var(--muted)}.assessment-builder .schedule-icon{background:var(--surface-selected);color:var(--ink)}.assessment-builder-page .authoring-progress .active small{color:var(--ink)}html.dark .assessment-builder .builder-submit{background:var(--surface-soft);box-shadow:0 14px 34px #00000057}html.dark .assessment-builder .assessment-setup-heading{border-bottom-color:var(--surface-border);background:var(--surface-soft)}.assessment-builder .question-editor-header,.assessment-builder .question-base-fields{background:0 0;border-bottom:0}.assessment-builder .question-editor>:is(.choice-editor,.rich-format-editor,.response-format-preview,.numeric-answer-editor,.question-media-field){background:0 0;border-color:#0000}.assessment-builder .question-remove-button,.assessment-builder .choice-remove-button{border-radius:999px;padding:7px 11px;box-shadow:0 7px 18px #b83d3d38;color:#fff!important;background:#d9534f!important;border:1px solid #b83d3d!important}.assessment-builder :is(.question-remove-button,.choice-remove-button):hover:not(:disabled){box-shadow:0 9px 22px #b83d3d4d;color:#fff!important;background:#c74440!important;border-color:#a83232!important}.assessment-builder :is(.question-remove-button,.choice-remove-button):disabled{opacity:.62}.assessment-builder :is(.format-picker-card,.answer-option-row,.accepted-answer-row,.matching-pair-row,.ordering-item-row,.multi-part-card,.blank-answer-group,.fill-blank-preview,.fill-blank-empty,.blank-answer-header,.required-toggle,.true-false-editor>div>label,.response-format-preview,.response-preview-field,.multi-part-guide,.numeric-range-preview,.student-upload-zone,.response-style-picker label){border-color:var(--surface-neutral-border);background:var(--surface-neutral);box-shadow:none}.assessment-builder :is(.format-picker-card.selected,.answer-option-row.is-correct,.true-false-editor>div>label.selected,.response-style-picker label:has(input:checked)){box-shadow:none;background:#eeeef0}.assessment-builder .true-false-editor>div>label:not(.selected) .truth-icon{background:var(--surface-neutral-chip);color:var(--muted)}.assessment-builder .true-false-editor :is(strong,small){color:var(--ink)}.assessment-builder .true-false-editor small{color:var(--muted)}.assessment-builder :is(.fill-blank-preview,.fill-blank-empty,.blank-answer-header) :is(span,strong,p){color:var(--ink)}.assessment-builder .blank-answer-header>span:nth-child(2),.assessment-builder .fill-blank-preview>span{color:var(--muted)}.assessment-builder .blank-answer-row>span{background:var(--surface-neutral-chip);color:var(--muted)}.assessment-builder .setup-section-label{border-top-color:var(--surface-neutral-border)}.assessment-builder :is(.required-toggle:has(input:checked),.response-style-picker label:has(input:checked)){background:#eeeef0}.assessment-builder :is(.response-preview-icon,.pair-index,.order-position,.multi-part-guide>span,.numeric-answer-copy>span,.multi-part-card>header .part-letter,.format-editor-heading>span){background:var(--surface-neutral-chip);color:var(--muted);box-shadow:none}.assessment-builder :is(.question-number,.format-editor-heading strong,.numeric-answer-copy strong,.numeric-range-preview strong,.response-format-preview strong,.multi-part-guide strong,.setup-section-label>span){color:var(--ink)}.assessment-builder :is(.format-editor-heading div>span,.numeric-answer-copy p,.numeric-range-preview :is(span,small),.response-format-preview p,.multi-part-guide p,.choice-editor legend span,.setup-section-label small){color:var(--muted)}html.dark .assessment-builder :is(.setup-audience,.setup-schedule,.question-editor,.question-library){border-color:var(--surface-border);background:var(--surface)}html.dark .assessment-builder :is(.question-editor-header,.question-base-fields){background:0 0;border-color:#0000}html.dark .assessment-builder :is(.format-picker-card,.answer-option-row,.accepted-answer-row,.matching-pair-row,.ordering-item-row,.multi-part-card,.blank-answer-group,.fill-blank-preview,.fill-blank-empty,.blank-answer-header,.required-toggle,.true-false-editor>div>label,.response-format-preview,.response-preview-field,.multi-part-guide,.numeric-range-preview,.student-upload-zone,.response-style-picker label){border-color:var(--surface-border);background:var(--surface-soft)}html.dark .assessment-builder :is(.format-picker-card.selected,.answer-option-row.is-correct,.true-false-editor>div>label.selected,.response-style-picker label:has(input:checked)){background:var(--surface-selected)}html.dark .assessment-builder .true-false-editor>div>label:not(.selected) .truth-icon,html.dark .assessment-builder .blank-answer-row>span{background:var(--surface-selected);color:var(--muted)}html.dark .assessment-builder .setup-section-label{border-top-color:var(--surface-border)}html.dark .assessment-builder :is(.required-toggle:has(input:checked),.response-style-picker label:has(input:checked)){background:var(--surface-selected)}html.dark .assessment-builder :is(.response-preview-icon,.pair-index,.order-position,.multi-part-guide>span,.numeric-answer-copy>span,.multi-part-card>header .part-letter,.format-editor-heading>span){background:var(--surface-selected);color:var(--muted)}html.dark .assessment-builder :is(.question-base-fields,.choice-row,.answer-option-row,.accepted-answer-row,.matching-pair-row,.ordering-item-row,.multi-part-card,.blank-answer-group,.numeric-answer-editor,.rich-format-editor,.question-media-field) :is(input:not([type=checkbox]):not([type=radio]),select,textarea){--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;border-color:var(--surface-border)!important;background-color:var(--surface)!important;box-shadow:none!important;background-image:none!important}.assessment-builder :is(.assessment-kind-picker label:has(input:checked),.homeroom-option-grid label:has(input:checked),.format-picker-card.selected,.answer-option-row.is-correct,.true-false-editor>div>label.selected,.response-style-picker label:has(input:checked),.required-toggle:has(input:checked),.matching-card.active){border-color:color-mix(in srgb, var(--main) 52%, var(--line));box-shadow:0 0 0 2px color-mix(in srgb, var(--main) 10%, transparent)}.assessment-builder :is(.assessment-kind-picker label:has(input:checked) .kind-icon,.homeroom-option-grid label:has(input:checked) .homeroom-check,.answer-option-row.is-correct .correct-answer-toggle>span,.true-false-editor label.selected .truth-icon){border-color:var(--main)!important;background:var(--main)!important;color:var(--on-main)!important}.assessment-builder .required-toggle:has(input:checked) .toggle-track{background:var(--main)}.assessment-builder .response-style-picker input{accent-color:var(--main)}.assessment-builder .answer-option-row.is-correct .correct-answer-toggle small,.assessment-builder-page .authoring-progress .active small{color:var(--main-foreground)}.assessment-builder-page .authoring-progress .active b{border-color:var(--main);background:var(--main);color:var(--on-main)}html.dark .report-card-page .report-context-form select,html.dark .move-enrollment-form select{border-color:var(--surface-border);background-color:var(--surface-soft);box-shadow:none;color:var(--ink);--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;background-image:none}html.dark .report-card-page .release-readiness>div{border-color:var(--surface-border);background:var(--surface-soft);box-shadow:var(--shadow-dark-card)}html.dark .report-card-page .overall-comment-form{border-top:0}html.dark .report-card-page .subject-comment-form textarea{background:var(--surface-soft);box-shadow:var(--shadow-dark-row);color:var(--ink);--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;border:0}html.dark .report-card-page .release-report-form{background:var(--surface-soft);box-shadow:var(--shadow-dark-card);-webkit-backdrop-filter:none;backdrop-filter:none;border:0}.admin-staff-page{gap:16px;min-width:0;display:grid}.admin-staff-page .staff-ai-allowances-card{border-color:var(--line);background:var(--surface-neutral-strong);box-shadow:0 10px 26px #00000014}.ai-usage-limit-form,.ai-usage-summary-card{border-color:var(--surface-neutral-border);background:var(--surface-neutral);box-shadow:none}.ai-limit-role-heading span{background:var(--surface-neutral-chip);color:var(--muted)}html.dark :is(.ai-usage-limit-form,.ai-usage-summary-card){border-color:var(--surface-border);background:var(--surface-soft);box-shadow:0 7px 18px #0003}html.dark .ai-limit-role-heading span{background:var(--surface-selected);color:var(--muted)}html.dark .ai-usage-limit-form input:not([type=checkbox]){border-color:var(--surface-border);background:var(--surface);box-shadow:none;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;background-image:none}.ai-usage-limit-form .ai-role-access-toggle{border:1px solid var(--surface-neutral-border);cursor:pointer;background:#fff;border-radius:10px;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:14px;padding:11px 12px;display:grid}.ai-role-access-toggle>span,.ai-role-access-toggle>span :is(strong,small){display:block}.ai-role-access-toggle>span strong{color:var(--ink);font-size:11px}.ai-role-access-toggle>span small{color:var(--muted);margin-top:3px;font-size:9px;font-weight:400;line-height:1.4}.ai-usage-limit-form .ai-role-access-toggle>input[type=checkbox]{appearance:none;width:34px;height:20px;box-shadow:none;cursor:pointer;background:#c7c9ce;border:0;border-radius:999px;margin:0;padding:0;transition:background-color .16s;position:relative}.ai-usage-limit-form .ai-role-access-toggle>input[type=checkbox]:after{content:"";background:#fff;border-radius:50%;width:14px;height:14px;transition:transform .16s;position:absolute;top:3px;left:3px;box-shadow:0 1px 4px #0003}.ai-usage-limit-form .ai-role-access-toggle>input[type=checkbox]:checked{background:var(--main)}.ai-usage-limit-form .ai-role-access-toggle>input[type=checkbox]:checked:after{transform:translate(14px)}.ai-usage-limit-form .ai-role-access-toggle>input[type=checkbox]:focus-visible{outline:2px solid var(--main);outline-offset:3px}html.dark .ai-usage-limit-form .ai-role-access-toggle{border-color:var(--surface-border);background:var(--surface);box-shadow:none}html.dark .ai-usage-limit-form .ai-role-access-toggle>input[type=checkbox]{background:#55585e}html.dark .ai-usage-limit-form .ai-role-access-toggle>input[type=checkbox]:checked{background:var(--main)}html.dark .admin-staff-page :is(.staff-ai-allowances-card,.settings-card,.staff-summary-grid article,.relationship-action-panel,.staff-calendar-card,.staff-attendance-policy-form,.staff-vacation-row,.table-wrap,.empty-state){border-color:var(--surface-border);background:var(--surface);box-shadow:var(--shadow-dark-card-strong)}html.dark .admin-staff-page :is(.relationship-action-panel,.staff-calendar-card,.staff-attendance-policy-form,.staff-vacation-row,.empty-state){background:var(--surface-soft)}html.dark .admin-staff-page :is(.staff-vacation-create-form,.staff-vacation-edit-form) input{border-color:var(--surface-border);background:var(--surface);box-shadow:none;color:var(--ink);--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;background-image:none}html.dark .admin-staff-page .staff-attendance-window-control{border-color:var(--surface-border);background:var(--surface);box-shadow:none}html.dark .admin-staff-page .staff-attendance-window-control input{box-shadow:none;color:var(--ink);--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;background:0 0;border:0}html.dark .relationship-action-panel,html.dark :is(.term-manager-control,.term-card,.term-card.fixed){border-color:var(--surface-border);background:var(--surface-soft);box-shadow:var(--shadow-dark-card);-webkit-backdrop-filter:none;backdrop-filter:none}html.dark :is(.term-select-shell select,.term-date-control input),html.dark .academic-year-create-form :is(input,select),html.dark :is(.grade-group-name-field,.grade-group-sort-field) input,html.dark .grade-level-assign-form select{border-color:var(--surface-border);background:var(--surface);box-shadow:none;color:var(--ink);--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;background-image:none}html.dark :is(.term-select-shell select,.term-date-control input):focus,html.dark :is(.grade-group-name-field,.grade-group-sort-field) input:focus,html.dark .grade-level-assign-form select:focus{border-color:color-mix(in srgb, var(--main) 48%, var(--surface-border));outline-color:color-mix(in srgb, var(--main) 14%, transparent);box-shadow:none}html.dark .term-card .term-date-control input[type=date],html.dark .term-card .term-date-control input[type=date]:focus{color:var(--ink);--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;border-color:var(--surface-border)!important;background:var(--surface)!important;box-shadow:none!important}.calendar-grade-scope-form .required-toggle,.attendance-auto-late-sweep-toggle.required-toggle{background:var(--surface-neutral);box-shadow:none;border-color:#d8d9dd}:is(.calendar-grade-scope-form .required-toggle:has(input:checked),.attendance-auto-late-sweep-toggle.required-toggle:has(input:checked)){border-color:color-mix(in srgb, var(--main) 68%, #d8d9dd);background:color-mix(in srgb, var(--main) 10%, var(--surface-neutral));box-shadow:0 0 0 2px color-mix(in srgb, var(--main) 12%, transparent)}:is(.calendar-grade-scope-form .required-toggle:has(input:checked) .toggle-track,.attendance-auto-late-sweep-toggle.required-toggle:has(input:checked) .toggle-track){background:var(--main)}:is(.calendar-grade-scope-form .required-toggle:has(input:checked) strong,.attendance-auto-late-sweep-toggle.required-toggle:has(input:checked) strong){color:var(--main-foreground)}html.dark .calendar-grade-scope-form .required-toggle,html.dark .attendance-auto-late-sweep-toggle.required-toggle{border-color:var(--surface-border);background:var(--surface-soft)}:is(html.dark .calendar-grade-scope-form .required-toggle:has(input:checked),html.dark .attendance-auto-late-sweep-toggle.required-toggle:has(input:checked)){border-color:color-mix(in srgb, var(--main) 72%, #55585e);background:color-mix(in srgb, var(--main) 20%, var(--surface-soft));box-shadow:0 0 0 2px color-mix(in srgb, var(--main) 18%, transparent)}html.dark :is(.grade-group-rename-form,.grade-group-create-form) :is(.grade-group-name-field,.grade-group-sort-field) input,html.dark :is(.grade-group-rename-form,.grade-group-create-form) :is(.grade-group-name-field,.grade-group-sort-field) input:focus{color:var(--ink);--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;border-color:var(--surface-border)!important;background:var(--surface)!important;box-shadow:none!important;background-image:none!important}html.dark .settings-backup-widget .backup-confirm-control input,html.dark .settings-backup-widget .backup-confirm-control input:focus{color:var(--ink);--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;border-color:var(--surface-border)!important;background:var(--surface-selected)!important;background-image:none!important;box-shadow:0 5px 14px #0003!important}html.dark :is(.unit-rename-form,.add-unit-form) input:not([type=hidden]){border-color:var(--surface-border)!important;background-color:var(--surface-soft)!important;box-shadow:none!important;background-image:none!important}html.dark :is(.status-pill,.role-pill,.phase-badge,.scoring-mode,.selection-count,.question-tally,.format-count,.current-user-label,.homeroom-check,.correct-answer-toggle>span),html.dark :is(.assessment-workspace-tabs,.assessment-detail-tabs,.student-assessment-header nav) :is(a,button),html.dark [class*=popover] :is(label,button,.secondary,.primary,.danger-button),html.dark .curriculum-subject-row{box-shadow:none}@page{size:A4 portrait;margin:14mm 12mm}@media print{html,body{--lightningcss-light:initial!important;--lightningcss-dark: !important;color-scheme:light!important;background:#fff!important}html.dark{--lightningcss-light:initial!important;--lightningcss-dark: !important;color-scheme:light!important}.archive-page>.admin-header,.report-release-list,.print-hidden,.optional-navigation-frame>.portal-navigation{display:none!important}.optional-navigation-frame{padding:0!important;display:block!important}.optional-navigation-content{width:100%!important}.admin-shell{width:100%!important;max-width:none!important;margin:0!important;padding:0!important}.report-archive-layout{display:block!important}.panel,.released-report{box-shadow:none!important;-webkit-backdrop-filter:none!important;backdrop-filter:none!important;background:#fff!important;border:0!important;border-radius:0!important;margin:0!important;padding:0!important}.report-card-printable,.report-card-printable *{box-shadow:none!important}.report-card-printable{--main:var(--school-main);--accent:var(--school-accent);--secondary:var(--school-secondary);--on-main:var(--school-on-main);--on-accent:var(--school-on-accent);--on-secondary:var(--school-on-secondary);--main-foreground:var(--school-main);--accent-foreground:var(--school-accent);--secondary-foreground:var(--school-secondary);--main-border:var(--school-main);--accent-border:var(--school-accent);--secondary-border:var(--school-secondary)}.report-grade,.domain-score-track,.domain-score-track>span,.released-score-grid>div,.released-subject-comment,.overall-release-comment{-webkit-print-color-adjust:exact;print-color-adjust:exact}.released-subject-list>article,.report-card-brand-header,.report-card-release-footer,.released-subject-comment{break-inside:avoid;page-break-inside:avoid}.domain-results-table thead{display:table-header-group}.table-wrap,.domain-results-table-wrap{max-height:none!important;overflow:visible!important}.report-card-printable{max-height:none!important;position:static!important;overflow:visible!important}.print-only{display:block!important}.lesson-plan-print-header,.lesson-plan-print-section li{break-inside:avoid;page-break-inside:avoid}a[href]:after{content:none!important}}