: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;--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;--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}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-style-picker{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;display:grid}.navigation-style-picker legend{grid-column:1/-1}.navigation-style-picker>label{border:1px solid var(--line);border-radius:var(--radius-md);background:var(--tw-surface-rgba-255-255-255-44);cursor:pointer;align-content:start;gap:7px;padding:14px;display:grid;position:relative}.navigation-style-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(--tw-surface-white));box-shadow:0 0 0 3px color-mix(in srgb, var(--accent) 10%, transparent)}.navigation-style-picker input{width:auto;position:absolute;top:14px;right:14px}.navigation-style-picker strong,.navigation-scope-picker strong{font-size:12px}.navigation-style-picker small,.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-style-preview{border:1px solid color-mix(in srgb, var(--main-border) 12%, transparent);background:color-mix(in srgb, var(--main) 4%, var(--tw-surface-white));border-radius:12px;gap:6px;height:82px;padding:9px;display:grid;overflow:hidden}.navigation-style-preview>i{background:linear-gradient(150deg, var(--main), color-mix(in srgb, var(--main) 66%, var(--accent)));display:block}.navigation-style-preview b{background:var(--tw-surface-rgba-255-255-255-8);border-radius:7px;gap:5px;padding:7px;display:flex}.navigation-style-preview b i{background:color-mix(in srgb, var(--main) 9%, var(--tw-surface-white));border-radius:4px;flex:1;display:block}.side-preview{grid-template-columns:26% 1fr}.side-preview>i{border-radius:9px;grid-row:1}.side-preview b{grid-column:2}.header-preview{grid-template-rows:24px 1fr}.header-preview>i{border-radius:999px}.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{grid-template-columns:minmax(180px,.6fr) minmax(260px,1.4fr)}.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}.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)}.optional-navigation-frame.nav-style-header{padding:12px 18px 18px;display:block}.nav-style-header .portal-navigation{z-index:30;border-radius:999px;flex-direction:row;align-items:center;gap:10px;width:min(1380px,100%);height:auto;min-height:62px;margin:0 auto 22px;padding:8px 10px 8px 16px;display:flex;position:sticky;top:12px;overflow:visible}.nav-style-header .portal-navigation:before{display:none}.nav-style-header .portal-navigation .navigation-brand-row{border-bottom:0;flex:none;gap:8px;min-height:0;padding:0}.nav-style-header .portal-navigation .brand{font-size:15px}.nav-style-header .portal-navigation .brand-mark{width:26px;height:26px;font-size:12px}.nav-style-header .portal-navigation .brand-copy,.nav-style-header .portal-navigation .sidebar-collapse-button,.nav-style-header .portal-navigation .navigation-section-label{display:none}.nav-style-header .portal-navigation .navigation-links-scroll{display:contents}.nav-style-header .portal-navigation nav{scrollbar-width:none;flex-direction:row;align-items:center;gap:2px;min-width:0;display:flex;overflow-x:auto}.nav-style-header .portal-navigation nav::-webkit-scrollbar{display:none}.nav-style-header .portal-navigation nav:first-of-type{margin-left:auto}.nav-style-header .portal-navigation nav a{white-space:nowrap;flex:none;min-height:0;padding:9px 11px;font-size:12px}.nav-style-header .portal-navigation .context-navigation-back{white-space:nowrap;flex:none;min-height:0;margin:0;padding:9px 11px}.nav-style-header .portal-navigation nav a:hover{transform:translateY(-1px)}.nav-style-header .portal-navigation .sidebar-bottom{border:0;flex:none;margin:0;padding:0 0 0 4px}.nav-style-header .portal-navigation .navigation-user{border-left:1px solid var(--tw-border-rgba-255-255-255-16);padding-left:12px}.nav-style-header .portal-navigation .navigation-user .avatar{width:32px;height:32px}.nav-style-header .portal-navigation .navigation-user>span{display:none}.optional-navigation-frame.nav-style-header .content{padding-top:4px}.optional-navigation-frame.nav-style-header .optional-navigation-content>.admin-shell{width:min(1180px,100% - 40px)}.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))}.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(--tw-shadow-white) 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{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}.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);border-radius:10px;align-items:flex-start;gap:10px;padding:12px;display:flex}.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]{margin-top:2px}@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}.optional-navigation-frame.nav-style-header:has(.ai-shell){flex-direction:column;display:flex}.optional-navigation-frame.nav-style-header:has(.ai-shell) .optional-navigation-content{flex:1;height:auto}.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 var(--tw-shadow-rgba-255-255-255-55);-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-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;text-transform:uppercase;letter-spacing:.04em;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:11px;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}:where(.companion-chat-messages,.companion-sidebar-scroll,.ai-history-widget,.notification-bell-list){scrollbar-width:thin;scrollbar-color:color-mix(in srgb, var(--main) 30%, transparent) transparent}:where(.companion-chat-messages,.companion-sidebar-scroll,.ai-history-widget,.notification-bell-list)::-webkit-scrollbar{width:7px;height:7px}:where(.companion-chat-messages,.companion-sidebar-scroll,.ai-history-widget,.notification-bell-list)::-webkit-scrollbar-track{background:0 0}:where(.companion-chat-messages,.companion-sidebar-scroll,.ai-history-widget,.notification-bell-list)::-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}:where(.companion-chat-messages,.companion-sidebar-scroll,.ai-history-widget,.notification-bell-list)::-webkit-scrollbar-thumb:hover{background:color-mix(in srgb, var(--main) 48%, transparent);background-clip:padding-box}:where(.companion-chat-messages,.companion-sidebar-scroll,.ai-history-widget,.notification-bell-list)::-webkit-scrollbar-button{width:0;height:0;display:none}:where(.companion-chat-messages,.companion-sidebar-scroll,.ai-history-widget,.notification-bell-list)::-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);border:1px solid var(--glass-line);box-shadow:var(--glass-shadow);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);background:0 0;border:0;flex:1;padding:10px 0;font-size:13px}.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 var(--tw-shadow-rgba-255-255-255-55);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}.companion-conversation-delete{color:var(--muted);cursor:pointer;background:0 0;border:0;border-radius:8px;flex-shrink:0;padding:6px;display:flex}.companion-conversation-delete:hover{color:var(--tw-foreground-b3261e);background:var(--widget-glass)}.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 var(--tw-shadow-rgba-255-255-255-55)}}@media (max-width:760px){.optional-navigation-frame.optional-navigation-frame:has(.ai-shell){flex-direction:column;display:flex}.optional-navigation-frame.optional-navigation-frame.nav-style-header: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(--tw-border-e5eceb);align-items:center;gap:8px;margin-top:9px;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}.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}.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}.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}.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)}.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%}.wide-table-action{min-width:390px}.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{border-top:4px solid var(--teal)}.curriculum-section .section-title>div{max-width:700px}.curriculum-year-form{flex:none;align-items:end;gap:8px;display:flex}.curriculum-year-form label{color:var(--tw-foreground-456066);gap:6px;font-size:12px;font-weight:650;display:grid}.curriculum-year-form select{border:1px solid var(--tw-border-ccd9d7);background:var(--tw-surface-white);min-width:210px;color:var(--ink);border-radius:7px;padding:9px 10px}.grade-curriculum-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:13px;display:grid}.grade-curriculum-card{border:1px solid var(--tw-border-d9e4e3);background:var(--tw-surface-f8fbfa);border-radius:10px;gap:14px;min-width:0;padding:16px;display:grid}.grade-curriculum-card>div{grid-template-columns:auto 1fr;align-items:center;column-gap:9px;display:grid}.grade-curriculum-card>div span{color:var(--tw-foreground-39756e);letter-spacing:.7px;grid-row:1;font:9px ui-monospace,monospace}.grade-curriculum-card>div strong{font:600 31px/1 var(--font-heading);color:var(--navy);grid-row:2/span 2}.grade-curriculum-card>div small{color:var(--muted);grid-area:2/2;font-size:10px}.grade-curriculum-card fieldset{border:0;gap:6px;min-width:0;margin:0;padding:0;display:grid}.grade-curriculum-card fieldset>label,.curriculum-subject-row>label:first-child{background:var(--tw-surface-white);border:1px solid var(--tw-border-e1e8e7);cursor:pointer;border-radius:7px;align-items:start;gap:8px;padding:7px 8px;display:flex}.grade-curriculum-card fieldset input{accent-color:var(--teal);margin:2px 0 0}.grade-curriculum-card fieldset span{min-width:0;color:var(--muted);font-size:10px;line-height:1.35}.grade-curriculum-card fieldset strong{color:var(--ink);font:700 10px ui-monospace,monospace;display:block}.grade-curriculum-card>button{justify-self:start}.curriculum-subject-row{grid-template-columns:minmax(0,1fr) auto auto;align-items:center;gap:6px;display:grid}.curriculum-subject-row .required-toggle{border:1px solid var(--tw-border-d9e4e3);background:var(--tw-surface-f2f7f5);color:var(--tw-foreground-46635f);cursor:pointer;border-radius:7px;align-items:center;gap:5px;padding:7px;font-size:9px;font-weight:700;display:flex}.curriculum-subject-row .required-toggle:has(input:disabled){opacity:.45;cursor:not-allowed}.curriculum-subject-row .subject-units-link{white-space:nowrap;font-size:9px;font-weight:700}.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{background:var(--tw-surface-fff6df);border:1px solid var(--tw-border-ead9a8);border-radius:8px;padding:10px 12px;color:var(--tw-foreground-7c612f)!important}.admin-notice{border:1px solid;border-radius:10px;margin:0 0 20px;padding:12px 14px}.admin-notice.success{background:var(--tw-surface-eaf8f2);border-color:var(--tw-border-a8d9c7);color:var(--tw-foreground-245f4e)}.admin-notice.error{background:var(--tw-surface-fff1ef);border-color:var(--tw-border-efb5ad);color:var(--tw-foreground-8a352b)}.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}}.rollover-section{border-top:4px solid var(--teal)}.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}.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}.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)}.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}.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}.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}.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}.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-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)}.assessment-detail-header .status-pill{margin-top:30px}.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)}.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{border-top:4px solid var(--teal);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:var(--teal);font:600 31px/1 var(--font-heading)}.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}.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-list{display:grid}.announcement-card{border-top:1px solid var(--line);gap:8px;padding:18px 2px;display:grid}.announcement-card:first-child{border-top:0}.announcement-card-header{justify-content:space-between;align-items:start;gap:16px;display:flex}.announcement-card-header h3{font:600 18px/1.2 var(--font-heading);margin:3px 0 0}.announcement-audience{background:var(--tw-surface-edf2f1);color:var(--tw-foreground-46635f);text-transform:uppercase;letter-spacing:.5px;border-radius:999px;padding:3px 9px;font:700 9px ui-monospace,monospace;display:inline-block}.announcement-card-header time{color:var(--muted);white-space:nowrap;font-size:10px}.announcement-body{white-space:pre-wrap;color:var(--ink);margin:0;font-size:13px;line-height:1.5}.announcement-card-footer{justify-content:space-between;align-items:center;gap:12px;display:flex}.announcement-author{color:var(--muted);font-size:11px}.announcement-edit{margin-top:4px}.announcement-edit summary{cursor:pointer;color:var(--teal);font-size:11px;font-weight:700}.announcement-edit-form{margin-top:10px}.announcement-composer .homeroom-multiselect{margin-top:4px}.announcement-composer .assessment-kind-picker>div{grid-template-columns:repeat(2,minmax(0,1fr))}.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}.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-text{font-size:12px;line-height:1.4}.companion-memory-clear{margin-top:8px}.companion-memory-add-row{align-items:center;gap:10px;display:flex}.companion-memory-input{border:1px solid var(--tw-border-ccd9d7);color:var(--ink);border-radius:8px;flex:1;padding:10px 12px}.companion-memory-list{flex-direction:column;gap:8px;margin:0;padding:0;list-style:none;display:flex}.companion-memory-list li{background:var(--tw-surface-f4f8f7);border-radius:10px;justify-content:space-between;align-items:center;gap:12px;padding:10px 12px;font-size:13px;display:flex}.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}.report-archive-layout{grid-template-columns:minmax(240px,.7fr) minmax(0,2fr);align-items:start;gap:18px;display:grid}.report-release-list{gap:5px;padding:10px;display:grid}.report-release-list a{color:inherit;border-radius:8px;gap:5px;padding:14px;text-decoration:none;display:grid}.report-release-list a:hover,.report-release-list a.selected{background:var(--tw-surface-edf5f2)}.report-release-list span{color:var(--tw-foreground-39756e);font:10px ui-monospace,monospace}.report-release-list small{color:var(--muted);font-size:10px}.released-report>header{border-bottom:1px solid var(--line);justify-content:space-between;align-items:start;gap:24px;padding-bottom:20px;display:flex}.released-report>header h2{font:600 31px/1 var(--font-heading);margin:4px 0 7px}.released-report>header p:last-child{color:var(--muted);margin:0;font-size:12px}.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:22px 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 21px/1.1 var(--font-heading);margin:6px 0 4px}.released-subject-heading small{color:var(--muted);font-size:10px}.released-score-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin:18px 0;display:grid}.released-score-grid>div{background:var(--tw-surface-f3f7f6);border-radius:8px;padding:12px}.released-score-grid span,.released-score-grid small{color:var(--muted);text-transform:uppercase;font-size:9px;display:block}.released-score-grid strong{margin:6px 0 3px;display:block}.released-subject-list blockquote,.overall-release-comment blockquote{color:var(--tw-foreground-40575d);font:16px/1.55 var(--font-heading);white-space:pre-wrap;margin:0}.released-unit-breakdown{margin:0 0 18px}.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}.overall-release-comment{background:var(--tw-surface-edf5f2);border-radius:9px;margin-top:22px;padding:18px}.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-visible,button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:3px solid color-mix(in srgb, var(--accent-border) 24%, transparent);outline-offset:2px}input:not([type=checkbox]):not([type=radio]):not([type=color]),select,textarea{border-color:color-mix(in srgb, var(--main-border) 17%, transparent);background:var(--tw-surface-rgba-255-255-255-72);box-shadow:inset 0 1px 0 var(--tw-shadow-rgba-255-255-255-88);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px)}input:not([type=checkbox]):not([type=radio]):not([type=color]):focus,select:focus,textarea:focus{border-color:color-mix(in srgb, var(--accent-border) 66%, 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-white)}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(--tw-shadow-white)}.metric{box-shadow:0 12px 32px color-mix(in srgb, var(--main) 8%, transparent), inset 0 1px 0 var(--tw-shadow-rgba-255-255-255-88);-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(--tw-shadow-white)}.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 var(--tw-shadow-rgba-255-255-255-55);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,.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){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 var(--tw-shadow-rgba-255-255-255-55);-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{grid-template-columns:1fr}.admin-overview-metrics{grid-template-columns:repeat(3,minmax(0,1fr))}.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}.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}.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{align-items:stretch;gap:10px;top:10px}.admin-save-bar small{display:none}.admin-save-actions{flex:none}.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,.optional-navigation-frame.nav-style-header{padding:12px;display:block}.sidebar.portal-navigation{align-items:center;gap:8px;width:100%;border-radius:var(--radius-md)!important;flex-direction:row!important;height:auto!important;min-height:0!important;margin:0 0 12px!important;padding:8px 10px!important;display:flex!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: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{border-left:1px solid var(--tw-border-rgba-255-255-255-16);padding-left:10px;flex:none!important}.portal-navigation .navigation-user>span{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-style-picker,.navigation-scope-picker,.notification-preferences-picker{grid-template-columns:1fr}.navigation-style-picker legend,.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{grid-template-columns:1fr}.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-year-form{flex-direction:column;align-items:stretch}.curriculum-year-form select{width:100%;min-width:0}.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}.release-report-form,.released-report>header{flex-direction:column;align-items:stretch}.released-stamp{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}.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:space-between;width:100%}.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}.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{align-items:flex-start;padding:20px}.assessment-setup-heading .setup-step{width:38px;height:38px}.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}}.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 var(--tw-shadow-rgba-255-255-255-55);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}.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}.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 var(--tw-shadow-rgba-255-255-255-55);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,.student-subject-dashboard-form fieldset label,.navigation-style-picker>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)}.navigation-style-picker>label:has(input:checked){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 var(--tw-shadow-rgba-255-255-255-55);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{background:color-mix(in srgb, var(--surface) 78%, transparent);border-radius:11px;min-height:44px}.settings-ai-provider-widget .ai-provider-field-grid{grid-template-columns:minmax(180px,240px) minmax(320px,1fr);align-items:start;gap:16px;padding-left:49px}.settings-ai-provider-widget .ai-provider-field-grid>label{align-self:start;gap:8px}.settings-ai-provider-widget .ai-provider-field-grid :is(input,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}.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{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{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}.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))}.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]{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:14px;grid-template-columns:minmax(240px,1fr) minmax(150px,180px) auto;align-items:center;gap:14px;padding:16px;display:grid}.staff-attendance-policy-form>label{gap:5px;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:11px;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:42px;box-shadow:none;background:0 0;border:0;border-radius:0}.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 13px;font-size:10px;font-weight:750}.staff-attendance-policy-form button{white-space:nowrap;min-height:42px}.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}.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-appearance-grid{grid-template-columns:1fr;gap:12px;margin-top:12px;display:grid}.settings-appearance-grid .settings-widget{margin-top:0}.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}@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) minmax(140px,170px)}.staff-attendance-policy-form button{grid-column:2;width:100%}}@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%}}@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-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{min-width:150px;padding-block:8px}.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-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-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) 9%, var(--glass));border-radius:10px;place-content:center;height:43px;display:grid}.calendar-agenda-event>time strong{font:650 18px/1 var(--font-heading)}.calendar-agenda-event>time span{color:var(--muted);text-transform:uppercase;font-size:9px;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{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)}.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-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: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}@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}.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)>a{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-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}.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}.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-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-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}.calendar-events-list .submission-row>div:last-child{color:var(--muted);font-size:11px}.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}.calendar-event-delete-bar{max-width:1180px;margin:18px auto 0}.event-color-dot{border-radius:50%;flex:none;width:9px;height:9px;display:inline-block}.event-color-dot.blue{background:var(--tw-surface-4285f4)}.event-color-dot.green{background:var(--tw-surface-2ca46f)}.event-color-dot.orange{background:var(--tw-surface-e38a2f)}.event-color-dot.purple{background:var(--tw-surface-8b62d2)}.event-color-dot.red{background:var(--tw-surface-d95858)}.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}.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{border:1px solid var(--glass-line);border-radius:var(--radius-md);background:var(--glass);display:grid;overflow:hidden}.vacation-row{border-bottom:1px solid var(--glass-line);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-row:last-child{border-bottom:0}.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-section-tabs{border:1px solid var(--glass-line);background:var(--glass);border-radius:11px;grid-template-columns:repeat(2,minmax(0,1fr));gap:7px;width:min(520px,100%);padding:5px;display:grid}.attendance-section-tabs a{color:var(--muted);text-align:center;border-radius:8px;padding:10px 14px;font-size:11px;font-weight:750}.attendance-section-tabs a[aria-current=page]{background:var(--main);color:var(--on-main);box-shadow:0 6px 16px color-mix(in srgb, var(--main) 20%, transparent)}.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:104px;box-shadow:var(--glass-shadow);gap:7px;padding:18px;display:grid}.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-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:11px;gap:13px;padding:15px;display:grid}.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-kiosk-shell{background:radial-gradient(circle at 15% 0%, color-mix(in srgb, var(--accent) 12%, transparent), transparent 34%), 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-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-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:210px;box-shadow:var(--glass-shadow);border-radius:15px;gap:16px;padding:18px;display:grid}.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:48px;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}.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}.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-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}@media (max-width:760px){.backup-restore-grid{grid-template-columns:1fr}}