/*! tailwindcss v4.2.4 | MIT License | https://tailwindcss.com */
@layer properties{@supports (((-webkit-hyphens:none)) and (not (margin-trim:inline))) or ((-moz-orient:inline) and (not (color:rgb(from red r g b)))){*,:before,:after,::backdrop{--tw-border-style:solid;--tw-leading:initial;--tw-font-weight:initial;--tw-shadow:0 0 #0000;--tw-shadow-color:initial;--tw-shadow-alpha:100%;--tw-inset-shadow:0 0 #0000;--tw-inset-shadow-color:initial;--tw-inset-shadow-alpha:100%;--tw-ring-color:initial;--tw-ring-shadow:0 0 #0000;--tw-inset-ring-color:initial;--tw-inset-ring-shadow:0 0 #0000;--tw-ring-inset:initial;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-offset-shadow:0 0 #0000;--tw-outline-style:solid;--tw-blur:initial;--tw-brightness:initial;--tw-contrast:initial;--tw-grayscale:initial;--tw-hue-rotate:initial;--tw-invert:initial;--tw-opacity:initial;--tw-saturate:initial;--tw-sepia:initial;--tw-drop-shadow:initial;--tw-drop-shadow-color:initial;--tw-drop-shadow-alpha:100%;--tw-drop-shadow-size:initial;--tw-duration:initial;--tw-ease:initial}}}@layer theme{:root,:host{--font-sans:"Instrument Sans", ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";--font-mono:ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;--color-blue-300:oklch(80.9% .105 251.813);--color-blue-700:oklch(48.8% .243 264.376);--color-blue-800:oklch(42.4% .199 265.638);--color-gray-100:oklch(96.7% .003 264.542);--color-gray-200:oklch(92.8% .006 264.531);--color-gray-300:oklch(87.2% .01 258.338);--color-gray-400:oklch(70.7% .022 261.325);--color-gray-500:oklch(55.1% .027 264.364);--color-gray-600:oklch(44.6% .03 256.802);--color-gray-700:oklch(37.3% .034 259.733);--color-gray-800:oklch(27.8% .033 256.848);--color-gray-900:oklch(21% .034 264.665);--color-black:#000;--color-white:#fff;--spacing:.25rem;--container-xl:36rem;--container-6xl:72rem;--text-sm:.875rem;--text-sm--line-height:calc(1.25 / .875);--text-lg:1.125rem;--text-lg--line-height:calc(1.75 / 1.125);--font-weight-medium:500;--font-weight-semibold:600;--tracking-wider:.05em;--radius-sm:.25rem;--radius-md:.375rem;--radius-lg:.5rem;--shadow-xs:0 1px 2px 0 #0000000d;--shadow-sm:0 1px 3px 0 #0000001a, 0 1px 2px -1px #0000001a;--shadow-md:0 4px 6px -1px #0000001a, 0 2px 4px -2px #0000001a;--shadow-lg:0 10px 15px -3px #0000001a, 0 4px 6px -4px #0000001a;--ease-in-out:cubic-bezier(.4, 0, .2, 1);--default-transition-duration:.15s;--default-transition-timing-function:cubic-bezier(.4, 0, .2, 1);--default-font-family:var(--font-sans);--default-mono-font-family:var(--font-mono)}}@layer base{*,:after,:before,::backdrop{box-sizing:border-box;border:0 solid;margin:0;padding:0}::file-selector-button{box-sizing:border-box;border:0 solid;margin:0;padding:0}html,:host{-webkit-text-size-adjust:100%;tab-size:4;line-height:1.5;font-family:var(--default-font-family,ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji");font-feature-settings:var(--default-font-feature-settings,normal);font-variation-settings:var(--default-font-variation-settings,normal);-webkit-tap-highlight-color:transparent}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:var(--default-mono-font-family,ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace);font-feature-settings:var(--default-mono-font-feature-settings,normal);font-variation-settings:var(--default-mono-font-variation-settings,normal);font-size:1em}small{font-size:80%}sub,sup{vertical-align:baseline;font-size:75%;line-height:0;position:relative}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}:-moz-focusring{outline:auto}progress{vertical-align:baseline}summary{display:list-item}ol,ul,menu{list-style:none}img,svg,video,canvas,audio,iframe,embed,object{vertical-align:middle;display:block}img,video{max-width:100%;height:auto}button,input,select,optgroup,textarea{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}::file-selector-button{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}:where(select:is([multiple],[size])) optgroup{font-weight:bolder}:where(select:is([multiple],[size])) optgroup option{padding-inline-start:20px}::file-selector-button{margin-inline-end:4px}::placeholder{opacity:1}@supports (not ((-webkit-appearance:-apple-pay-button))) or (contain-intrinsic-size:1px){::placeholder{color:currentColor}@supports (color:color-mix(in lab, red, red)){::placeholder{color:color-mix(in oklab, currentcolor 50%, transparent)}}}textarea{resize:vertical}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-date-and-time-value{min-height:1lh;text-align:inherit}::-webkit-datetime-edit{display:inline-flex}::-webkit-datetime-edit-fields-wrapper{padding:0}::-webkit-datetime-edit{padding-block:0}::-webkit-datetime-edit-year-field{padding-block:0}::-webkit-datetime-edit-month-field{padding-block:0}::-webkit-datetime-edit-day-field{padding-block:0}::-webkit-datetime-edit-hour-field{padding-block:0}::-webkit-datetime-edit-minute-field{padding-block:0}::-webkit-datetime-edit-second-field{padding-block:0}::-webkit-datetime-edit-millisecond-field{padding-block:0}::-webkit-datetime-edit-meridiem-field{padding-block:0}::-webkit-calendar-picker-indicator{line-height:1}:-moz-ui-invalid{box-shadow:none}button,input:where([type=button],[type=reset],[type=submit]){appearance:button}::file-selector-button{appearance:button}::-webkit-inner-spin-button{height:auto}::-webkit-outer-spin-button{height:auto}[hidden]:where(:not([hidden=until-found])){display:none!important}}@layer components;@layer utilities{.collapse{visibility:collapse}.invisible{visibility:hidden}.visible{visibility:visible}.sr-only{clip-path:inset(50%);white-space:nowrap;border-width:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.fixed{position:fixed}.relative{position:relative}.static{position:static}.start{inset-inline-start:var(--spacing)}.end{inset-inline-end:var(--spacing)}.container{width:100%}@media (width>=40rem){.container{max-width:40rem}}@media (width>=48rem){.container{max-width:48rem}}@media (width>=64rem){.container{max-width:64rem}}@media (width>=80rem){.container{max-width:80rem}}@media (width>=96rem){.container{max-width:96rem}}.-ml-px{margin-left:-1px}.block{display:block}.flex{display:flex}.grid{display:grid}.hidden{display:none}.inline-flex{display:inline-flex}.table{display:table}.h-5{height:calc(var(--spacing) * 5)}.w-5{width:calc(var(--spacing) * 5)}.grow{flex-grow:1}.cursor-default{cursor:default}.cursor-not-allowed{cursor:not-allowed}.items-center{align-items:center}.justify-between{justify-content:space-between}.justify-items-center{justify-items:center}.gap-2{gap:calc(var(--spacing) * 2)}.rounded-md{border-radius:var(--radius-md)}.rounded-l-md{border-top-left-radius:var(--radius-md);border-bottom-left-radius:var(--radius-md)}.rounded-r-md{border-top-right-radius:var(--radius-md);border-bottom-right-radius:var(--radius-md)}.border{border-style:var(--tw-border-style);border-width:1px}.border-gray-300{border-color:var(--color-gray-300)}.bg-gray-200{background-color:var(--color-gray-200)}.bg-white{background-color:var(--color-white)}.px-2{padding-inline:calc(var(--spacing) * 2)}.px-4{padding-inline:calc(var(--spacing) * 4)}.py-2{padding-block:calc(var(--spacing) * 2)}.text-sm{font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height))}.leading-5{--tw-leading:calc(var(--spacing) * 5);line-height:calc(var(--spacing) * 5)}.font-medium{--tw-font-weight:var(--font-weight-medium);font-weight:var(--font-weight-medium)}.text-gray-500{color:var(--color-gray-500)}.text-gray-600{color:var(--color-gray-600)}.text-gray-700{color:var(--color-gray-700)}.text-gray-800{color:var(--color-gray-800)}.italic{font-style:italic}.underline{text-decoration-line:underline}.shadow-sm{--tw-shadow:0 1px 3px 0 var(--tw-shadow-color,#0000001a), 0 1px 2px -1px var(--tw-shadow-color,#0000001a);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.ring-gray-300{--tw-ring-color:var(--color-gray-300)}.outline{outline-style:var(--tw-outline-style);outline-width:1px}.filter{filter:var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,) var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,) var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,)}.transition{transition-property:color,background-color,border-color,outline-color,text-decoration-color,fill,stroke,--tw-gradient-from,--tw-gradient-via,--tw-gradient-to,opacity,box-shadow,transform,translate,scale,rotate,filter,-webkit-backdrop-filter,backdrop-filter,display,content-visibility,overlay,pointer-events;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.duration-150{--tw-duration:.15s;transition-duration:.15s}.ease-in-out{--tw-ease:var(--ease-in-out);transition-timing-function:var(--ease-in-out)}@media (hover:hover){.hover\:bg-gray-100:hover{background-color:var(--color-gray-100)}.hover\:text-gray-400:hover{color:var(--color-gray-400)}.hover\:text-gray-700:hover{color:var(--color-gray-700)}}.focus\:border-blue-300:focus{border-color:var(--color-blue-300)}.focus\:ring:focus{--tw-ring-shadow:var(--tw-ring-inset,) 0 0 0 calc(1px + var(--tw-ring-offset-width)) var(--tw-ring-color,currentcolor);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.focus\:outline-none:focus{--tw-outline-style:none;outline-style:none}.active\:bg-gray-100:active{background-color:var(--color-gray-100)}.active\:text-gray-500:active{color:var(--color-gray-500)}.active\:text-gray-700:active{color:var(--color-gray-700)}.active\:text-gray-800:active{color:var(--color-gray-800)}@media (width>=40rem){.sm\:flex{display:flex}.sm\:hidden{display:none}.sm\:flex-1{flex:1}.sm\:items-center{align-items:center}.sm\:justify-between{justify-content:space-between}.sm\:gap-2{gap:calc(var(--spacing) * 2)}}.rtl\:flex-row-reverse:where(:is(:lang(ae),:lang(ar),:lang(arc),:lang(bcc),:lang(bqi),:lang(ckb),:lang(dv),:lang(fa),:lang(glk),:lang(he),:lang(ku),:lang(mzn),:lang(nqo),:lang(pnb),:lang(ps),:lang(sd),:lang(ug),:lang(ur),:lang(yi)),[dir=rtl],[dir=rtl] *){flex-direction:row-reverse}@media (prefers-color-scheme:dark){.dark\:border-gray-600{border-color:var(--color-gray-600)}.dark\:bg-gray-700{background-color:var(--color-gray-700)}.dark\:bg-gray-800{background-color:var(--color-gray-800)}.dark\:text-gray-200{color:var(--color-gray-200)}.dark\:text-gray-300{color:var(--color-gray-300)}.dark\:text-gray-400{color:var(--color-gray-400)}.dark\:text-gray-600{color:var(--color-gray-600)}@media (hover:hover){.dark\:hover\:bg-gray-900:hover{background-color:var(--color-gray-900)}.dark\:hover\:text-gray-200:hover{color:var(--color-gray-200)}.dark\:hover\:text-gray-300:hover{color:var(--color-gray-300)}}.dark\:focus\:border-blue-700:focus{border-color:var(--color-blue-700)}.dark\:focus\:border-blue-800:focus{border-color:var(--color-blue-800)}.dark\:active\:bg-gray-700:active{background-color:var(--color-gray-700)}.dark\:active\:text-gray-300:active{color:var(--color-gray-300)}}}@layer legacy{:root{--primary:#130c44;--primary-strong:#130c44;--primary-soft:#eeeef6;--primary-ring:#130c442e;--ink:#12213f;--muted:#5d708f;--muted-light:#8aa0c0;--line:#dbe7f7;--line-strong:#c6d7f2;--panel:#fff;--field:#f7faff;--bg-app:#eef4ff;--bg-sidebar:#130c44;--sidebar-ink:#f8fbff;--sidebar-muted:#b8cdf8;--sidebar-active-bg:#130c44;--sidebar-active-text:#fff;--sidebar-icon-bg:#ffffff1f;--sidebar-icon-color:#dbeafe;--sidebar-hover-bg:#ffffff1a;--navbar-bg:#fff;--navbar-text:#12213f;--navbar-muted:#5d708f;--navbar-border:#d6e3f8;--navbar-surface:#f7faff;--hero-dark:#130c44;--radius-sm:8px;--radius-md:12px;--radius-lg:16px;--shadow-xs:0 1px 3px #0f21470a;--shadow-sm:0 4px 20px #0f21470d;--shadow-md:0 12px 36px #0f214712;--shadow-lg:0 24px 60px #0f214717;--transition-fast:.15s cubic-bezier(.4, 0, .2, 1);--transition-normal:.25s cubic-bezier(.4, 0, .2, 1);--transition-slow:.35s cubic-bezier(.4, 0, .2, 1);--glow-primary:0 0 12px #130c442e;--glass-bg:#ffffffbf;--glass-border:#fff6;--glass-blur:blur(8px)}.school-app,body{font-family:var(--font-sans);background:var(--bg-app);color:var(--ink);-webkit-font-smoothing:antialiased}.public-site{color:#18243b;font-family:var(--font-sans);background:#fff;margin:0}.public-nav{z-index:30;background:#fff;border-bottom:1px solid #e5edf8;justify-content:space-between;align-items:center;gap:24px;min-height:84px;padding:0 clamp(18px,5vw,78px);display:flex;position:sticky;top:0;box-shadow:0 8px 26px #0f214714}.public-brand{color:#12213f;align-items:center;gap:12px;min-width:0;text-decoration:none;display:flex}.public-brand img,.public-brand span{border-radius:8px;flex:none;width:46px;height:46px}.public-brand img{object-fit:contain;background:#fff;border:1px solid #dbe7f7}.public-brand span{color:#fff;background:#130c44;place-items:center;font-weight:900;display:grid;box-shadow:0 12px 26px #130c442e}.public-brand strong{font-size:1rem;font-weight:950;line-height:1.1}.public-nav nav{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:8px;display:flex}.public-nav nav a{color:#24364f;text-transform:uppercase;letter-spacing:.02em;border-radius:4px;align-items:center;min-height:38px;padding:0 12px;font-size:.9rem;font-weight:850;text-decoration:none;display:inline-flex}.public-nav nav a:hover{color:#130c44;background:#eeeef6}.public-nav .portal-button{color:#fff;background:#130c44;box-shadow:0 12px 26px #130c442e}.public-nav .portal-button:hover{color:#fff;background:#0f0938}.public-menu-button,.public-menu-close,.public-menu-backdrop,.public-menu-head{display:none}.public-menu-button,.public-menu-close{color:#130c44;width:42px;height:42px;box-shadow:none;cursor:pointer;background:#fff;border:1px solid #dbe7f7;border-radius:8px;justify-content:center;align-items:center;padding:0}.public-menu-button svg,.public-menu-close svg{fill:none;stroke:currentColor;stroke-width:2.2px;stroke-linecap:round;stroke-linejoin:round;width:22px;height:22px}.public-hero{background:var(--public-hero-image,url(/images/hero-poster.jpg)) center / cover no-repeat;color:#fff;text-align:center;align-content:center;place-items:center;gap:26px;min-height:calc(100vh - 84px);padding:clamp(68px,9vw,126px) clamp(18px,5vw,72px);display:grid;position:relative;overflow:hidden}.public-hero:before{content:"";pointer-events:none;background:#130c44c7;position:absolute;inset:0}.public-hero-brand{z-index:1;justify-items:center;gap:14px;display:grid;position:relative}.public-hero-brand img,.public-hero-brand>span{object-fit:contain;background:#fff;border-radius:8px;width:104px;height:104px;padding:8px;box-shadow:0 16px 38px #00000038}.public-hero-brand>span{color:#130c44;place-items:center;padding:0;font-size:2rem;font-weight:950;display:grid}.public-hero-brand h1{color:#fff;text-transform:uppercase;letter-spacing:.02em;text-wrap:balance;margin:0;font-size:clamp(2.7rem,6.6vw,6rem);font-weight:950;line-height:.92}.public-hero-brand small{color:#dbeafe;text-transform:uppercase;letter-spacing:.14em;font-size:clamp(.9rem,1.5vw,1.18rem);font-weight:850}.public-hero-content{z-index:1;justify-items:center;gap:14px;width:min(780px,100%);margin-top:8px;display:grid;position:relative}.public-hero-content span{color:#fff;text-transform:uppercase;letter-spacing:.08em;font-size:.78rem;font-weight:950}.public-section-head span{color:#130c44;text-transform:uppercase;letter-spacing:.08em;font-size:.78rem;font-weight:950}.public-hero h2{color:#fff;text-transform:uppercase;letter-spacing:.03em;margin:0;font-size:clamp(2rem,4.4vw,4.1rem);font-weight:950;line-height:.96}.public-hero-content strong{color:#bfdbfe;font-size:clamp(1rem,1.8vw,1.34rem);font-weight:850}.public-hero p{color:#dbeafe;max-width:690px;margin:0;font-size:clamp(1rem,1.8vw,1.24rem);line-height:1.72}.public-actions{flex-wrap:wrap;gap:12px;margin-top:8px;display:flex}.public-actions a,.public-cta a,.public-section-action a{color:#fff;text-transform:uppercase;letter-spacing:.03em;background:#130c44;border-radius:4px;justify-content:center;align-items:center;min-height:48px;padding:0 20px;font-weight:950;text-decoration:none;display:inline-flex;box-shadow:0 18px 36px #130c442e}.public-actions a+a{color:#fff;box-shadow:none;background:#ffffff1f;border:1px solid #ffffff4d}.public-section{padding:clamp(62px,8vw,104px) clamp(18px,5vw,72px)}.public-invite{color:#fff;text-align:center;background:#130c44;justify-items:center;gap:8px;padding:34px 18px;display:grid}.public-invite span{color:#bfdbfe;text-transform:uppercase;letter-spacing:.08em;font-size:.8rem;font-weight:950}.public-invite h2{color:#fff;margin:0;font-size:clamp(1.35rem,2.5vw,2.15rem);font-weight:950}.public-section-head{gap:10px;width:min(820px,100%);margin-bottom:34px;display:grid}.public-section-head--center{text-align:center;justify-items:center;margin-inline:auto}.public-section-head h2,.public-cta h2{color:#12213f;text-wrap:balance;margin:0;font-size:clamp(2rem,4vw,3.45rem);font-weight:950;line-height:1}.public-section-head p{color:#526987;margin:0;font-size:1rem;line-height:1.7}.public-card-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:22px;display:grid}.public-card-grid article{text-align:center;background:#fff;border:1px solid #dbe7f7;border-radius:4px;align-content:start;gap:12px;min-height:218px;padding:28px;display:grid;position:relative;overflow:hidden;box-shadow:0 18px 42px #0f21470f}.public-card-grid article:before{content:"";background:#130c44;width:4px;position:absolute;inset:0 auto 0 0}.public-card-grid article span,.public-programme-list article>span,.public-gallery-grid article span{color:#130c44;text-transform:uppercase;letter-spacing:.06em;font-size:.82rem;font-weight:950}.public-card-grid article p{color:#526987;margin:0;font-size:.96rem;line-height:1.68}.public-motto-list{gap:8px;margin-top:4px;display:grid}.public-motto-list strong{color:#12213f;text-transform:uppercase;letter-spacing:.04em;font-size:1.08rem;font-weight:950}.public-programmes{background:#f6f9ff}.public-programme-list{grid-template-columns:repeat(3,minmax(0,1fr));gap:22px;display:grid}.public-programme-list article{text-align:center;background:#fff;border:1px solid #dbe7f7;border-radius:4px;align-content:start;gap:12px;min-height:230px;padding:28px;display:grid;box-shadow:0 18px 42px #0f21470f}.public-programme-list article:nth-child(2n),.public-programme-list article:nth-last-child(-n+2){border-bottom:1px solid #dbe7f7;border-right:1px solid #dbe7f7}.public-programme-list strong{color:#12213f;font-size:1.1rem;font-weight:950;display:block}.public-programme-list small{color:#526987;margin-top:6px;font-size:.9rem;line-height:1.55;display:block}.public-gallery-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:22px;display:grid}.public-gallery-grid article{background:#fff;border:1px solid #dbe7f7;border-radius:4px;align-content:start;gap:0;min-height:280px;display:grid;overflow:hidden;box-shadow:0 16px 38px #0f21470f}.public-gallery-grid article div{background-color:#eef2fb;background-image:var(--public-gallery-image,url(/images/hero-mobile.jpg));background-position:50%;background-repeat:no-repeat;background-size:cover;min-height:210px}.public-gallery-grid article strong{color:#12213f;text-align:center;padding:18px 20px;font-weight:900;line-height:1.25;display:block}.public-values{background:#f6f9ff}.public-values-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;display:grid}.public-values-grid article{text-align:center;background:#fff;border:1px solid #dbe7f7;border-radius:4px;align-content:center;justify-items:center;gap:9px;min-height:132px;padding:20px;display:grid;box-shadow:0 14px 32px #0f21470d}.public-values-grid span{color:#130c44;font-size:.82rem;font-weight:950}.public-values-grid strong{color:#12213f;font-size:1.05rem;font-weight:950}.public-cta{text-align:center;background:var(--public-hero-image,url(/images/hero-poster.jpg)) center / cover no-repeat;color:#fff;justify-items:center;gap:14px;padding:clamp(58px,8vw,96px) 18px;display:grid;position:relative;overflow:hidden}.public-cta:before{content:"";pointer-events:none;background:#130c44eb;position:absolute;inset:0}.public-cta>*{z-index:1;position:relative}.public-cta span{color:#fff;text-transform:uppercase;letter-spacing:.08em;font-size:.8rem;font-weight:950}.public-cta h2,.public-cta p{color:#fff}.public-cta p{color:#dbeafe;width:min(680px,100%);margin:0;line-height:1.7}.public-footer{color:#dbeafe;background:#130c44;grid-template-columns:1.2fr .75fr .85fr 1fr;gap:28px;padding:52px clamp(18px,5vw,72px);display:grid}.public-footer strong,.public-footer span{color:#fff;margin-bottom:8px;font-weight:950;display:block}.public-footer p,.public-footer a{color:#b9c8e3;margin:5px 0;line-height:1.6;text-decoration:none;display:block}.public-footer>small{color:#8ea8cf;border-top:1px solid #ffffff1f;grid-column:1/-1;padding-top:20px;display:block}.public-section-action{justify-content:center;margin-top:28px;display:flex}@media (width<=1100px){.public-programme-list,.public-gallery-grid,.public-values-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.public-card-grid{grid-template-columns:1fr}.public-footer{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width<=900px){.public-nav{flex-direction:row;align-items:center;min-height:72px;padding-top:0;padding-bottom:0}.public-brand strong{text-overflow:ellipsis;white-space:nowrap;max-width:min(52vw,360px);overflow:hidden}.public-menu-button{margin-left:auto;display:inline-flex}.public-menu-head{border-bottom:1px solid #dbe7f7;justify-content:space-between;align-items:center;gap:12px;min-height:68px;padding:0 18px;display:flex}.public-menu-head strong{color:#12213f;text-transform:uppercase;letter-spacing:.05em;font-size:1rem;font-weight:950}.public-menu-close{display:inline-flex}.public-nav .public-menu{z-index:50;will-change:transform;backface-visibility:hidden;background:#fff;border-left:1px solid #dbe7f7;flex-wrap:nowrap;place-content:start stretch;gap:0;width:min(86vw,360px);padding:0 0 18px;transition:transform .24s;display:grid;position:fixed;top:0;bottom:0;right:0;overflow-y:auto;transform:translate(102%);box-shadow:-28px 0 70px #0f214733}.public-nav .public-menu a{color:#12213f;border-bottom:1px solid #edf4ff;border-radius:0;justify-content:flex-start;width:auto;min-height:54px;padding:0 22px}.public-nav .public-menu .portal-button{color:#fff;border-bottom:0;border-radius:8px;justify-content:center;width:auto;margin:18px}.public-menu-backdrop{z-index:20;opacity:0;pointer-events:none;background:#0f214770;border:0;padding:0;transition:opacity .2s;display:block;position:fixed;inset:0}.public-menu-open{overflow:hidden}.public-menu-open .public-menu{transform:translate(0)}.public-menu-open .public-menu-backdrop{opacity:1;pointer-events:auto}.public-hero{min-height:620px}.public-card-grid,.public-programme-list,.public-gallery-grid,.public-values-grid,.public-footer{grid-template-columns:1fr}.public-programme-list article,.public-programme-list article:nth-child(2n),.public-programme-list article:nth-last-child(-n+2){border-bottom:1px solid #dbe7f7;border-right:0}.public-programme-list article:last-child{border-bottom:0}}@media (width<=640px){.public-nav nav a{min-height:34px;padding-inline:9px;font-size:.82rem}.public-hero{min-height:560px;padding-top:54px;padding-bottom:54px}.public-actions a,.public-cta a{width:100%}.public-section{padding-top:46px;padding-bottom:46px}}.app-shell{grid-template-columns:260px minmax(0,1fr);min-height:100vh;display:grid}.nav-toggle,.nav-backdrop,.mobile-bar,.rail-close{display:none}.side-rail{background:var(--bg-sidebar);height:100vh;color:var(--sidebar-ink);border-right:1px solid var(--line-strong);box-shadow:var(--shadow-xs);flex-direction:column;gap:24px;padding:24px 16px;display:flex;position:sticky;top:0;overflow-y:auto}.rail-head{justify-content:space-between;align-items:center;gap:12px;padding:0 4px;display:flex}.brand-mark{align-items:center;gap:12px;display:flex}.brand-mark>span{background:var(--primary);color:#fff;letter-spacing:-.02em;width:44px;height:44px;box-shadow:0 6px 16px var(--sidebar-active-bg,var(--primary));border-radius:12px;place-items:center;font-size:1rem;font-weight:800;display:grid}@supports (color:color-mix(in lab, red, red)){.brand-mark>span{box-shadow:0 6px 16px color-mix(in srgb, var(--sidebar-active-bg,var(--primary)) 20%, transparent)}}.brand-mark strong,.brand-mark small{display:block}.brand-mark strong{color:var(--sidebar-ink);letter-spacing:-.03em;font-size:1.05rem;font-weight:800}.brand-mark small{color:var(--sidebar-ink)}@supports (color:color-mix(in lab, red, red)){.brand-mark small{color:color-mix(in srgb, var(--sidebar-ink) 48%, var(--sidebar-muted) 52%)}}.brand-mark small{font-size:.8rem;font-weight:600}.rail-nav{gap:4px;display:grid}.rail-label{color:var(--sidebar-muted,var(--muted));letter-spacing:.08em;text-transform:uppercase;opacity:.85;margin:12px 8px 6px;font-size:.72rem;font-weight:700}.rail-nav a{min-height:46px;color:var(--sidebar-ink);border-radius:var(--radius-md);transition:all var(--transition-normal);border:1px solid #0000;grid-template-columns:36px minmax(0,1fr);align-items:center;padding:0 12px;font-size:.92rem;text-decoration:none;display:grid;position:relative}.rail-nav a span:not(.nav-icon){font-weight:600}.nav-icon{border-radius:var(--radius-sm);background:var(--sidebar-icon-bg,var(--field));width:32px;height:32px;color:var(--sidebar-icon-color,var(--primary-strong));transition:all var(--transition-normal);place-items:center;display:grid}.nav-icon svg{fill:none;stroke:currentColor;stroke-width:1.75px;stroke-linecap:round;stroke-linejoin:round;width:18px;height:18px}.rail-nav a:hover{background:var(--sidebar-hover-bg,var(--primary-soft));color:var(--sidebar-ink);border-color:#0000;transform:translate(4px)}.rail-nav a:hover .nav-icon{background:var(--sidebar-active-bg,var(--primary));color:var(--sidebar-active-text,#fff)}.rail-nav a.active{background:var(--sidebar-active-bg,var(--primary));color:var(--sidebar-active-text,#fff);border-color:var(--sidebar-active-bg,var(--primary));box-shadow:0 8px 16px var(--sidebar-active-bg,var(--primary))}@supports (color:color-mix(in lab, red, red)){.rail-nav a.active{box-shadow:0 8px 16px color-mix(in srgb, var(--sidebar-active-bg,var(--primary)) 25%, transparent)}}.rail-nav a.active{transform:translate(4px)}.rail-nav a.active .nav-icon{background:var(--sidebar-active-text,#fff)}@supports (color:color-mix(in lab, red, red)){.rail-nav a.active .nav-icon{background:color-mix(in srgb, var(--sidebar-active-text,#fff) 18%, transparent)}}.rail-nav a.active .nav-icon{color:var(--sidebar-active-text,#fff)}.rail-nav a.active:after{content:"";background:var(--sidebar-active-text,#fff);border-radius:99px;width:4px;height:50%;position:absolute;top:25%;left:0}.rail-foot{border:1px solid var(--line-strong);border-radius:var(--radius-md);background:var(--field);gap:4px;margin-top:auto;padding:14px;display:grid}@supports (color:color-mix(in lab, red, red)){.rail-foot{background:color-mix(in srgb, var(--field) 40%, var(--panel))}}.rail-foot{transition:all var(--transition-normal)}.rail-foot span{color:var(--sidebar-muted,var(--muted));text-transform:uppercase;letter-spacing:.04em;font-size:.72rem;font-weight:600}.rail-foot strong{color:var(--sidebar-ink);font-size:.9rem;font-weight:600}.workspace{align-content:start;gap:24px;min-width:0;padding:20px clamp(20px,3vw,36px) 36px;display:grid}.panel-head span,.metric span,.metric small,.stack-list span,.dash-stat-label,.dash-stat-hint{color:var(--muted)}.workspace-header{z-index:20;background:var(--navbar-bg);box-shadow:var(--shadow-sm);border-bottom:0;margin:-20px calc(-1*clamp(20px,3vw,36px)) 0;position:sticky;top:0}.workspace-header-accent{background:var(--primary);border-bottom-right-radius:4px;border-bottom-left-radius:4px;height:4px}.workspace-header-inner{grid-template-columns:minmax(0,1fr) auto auto;align-items:center;gap:16px;padding:16px clamp(20px,3vw,36px);display:grid}.workspace-header-main{align-items:flex-start;gap:14px;min-width:0;display:flex}.workspace-role-badge{background:var(--panel);min-height:32px;color:var(--primary-strong);letter-spacing:.04em;text-transform:uppercase;border:1px solid var(--primary);border-radius:999px;flex:none;align-items:center;padding:0 14px;font-size:.72rem;font-weight:800;display:inline-flex}@supports (color:color-mix(in lab, red, red)){.workspace-role-badge{border:1px solid color-mix(in srgb, var(--primary) 18%, transparent)}}.workspace-role-badge{box-shadow:0 4px 12px #0000000a}.workspace-title-block{min-width:0}.workspace-eyebrow{color:var(--navbar-text,var(--muted));margin:0 0 4px}@supports (color:color-mix(in lab, red, red)){.workspace-eyebrow{color:color-mix(in srgb, var(--navbar-text,var(--muted)) 75%, var(--panel) 25%)}}.workspace-eyebrow{font-size:.86rem;font-weight:600;line-height:1.2}.workspace-header h1{color:var(--navbar-text,#fff);letter-spacing:-.03em;margin:0;font-size:clamp(1.35rem,2vw,1.85rem);font-weight:800;line-height:1.1}.workspace-header-meta{align-items:center;gap:10px;display:flex}.workspace-date-chip{border-radius:var(--radius-md);text-align:right;background:var(--panel);border:1px solid var(--primary);gap:2px;min-width:130px;padding:8px 14px;display:grid}@supports (color:color-mix(in lab, red, red)){.workspace-date-chip{border:1px solid color-mix(in srgb, var(--primary) 12%, transparent)}}.workspace-date-chip{box-shadow:var(--shadow-sm)}.workspace-date-chip span{color:var(--primary-strong);text-transform:uppercase;letter-spacing:.04em;font-size:.7rem;font-weight:800}.workspace-date-chip strong{color:var(--navbar-text,#0b3b2a);font-size:.9rem;font-weight:800}.workspace-toolbar{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:10px;display:flex}.workspace-toolbar .notification-menu{position:relative}.workspace-user-chip{border-radius:var(--radius-md);background:var(--navbar-surface,#ffffff0f);min-width:0;max-width:320px;box-shadow:none;transition:all var(--transition-normal);border:1px solid #ffffff0f;align-items:center;gap:10px;padding:6px 12px;display:flex}.workspace-logout-form{margin:0}.workspace-logout-button{border:1px solid var(--primary);border-radius:var(--radius-sm);background:var(--primary);color:#fff;cursor:pointer;min-height:42px;padding:0 14px;font-size:.86rem;font-weight:600}.workspace-logout-button:hover{background:var(--primary-strong);border-color:var(--primary-strong)}.toolbar-label{color:var(--navbar-text,var(--ink));font-size:.82rem;font-weight:600}.notification-count{background:var(--primary);color:#fff;border-radius:999px;place-items:center;min-width:22px;height:22px;padding:0 6px;font-size:.72rem;font-weight:700;display:inline-grid}.user-avatar{border-radius:var(--radius-md);background:var(--primary);color:#fff;flex:none;place-items:center;width:38px;height:38px;font-size:.82rem;font-weight:700;display:grid}.user-name{min-width:0;color:var(--ink);gap:1px;display:grid}.user-name strong,.user-name small{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.user-name strong{color:var(--ink);font-size:.88rem;font-weight:700}.user-name small{color:var(--navbar-muted,var(--muted));font-size:.76rem;font-weight:500}.topbar{display:none}.page-kicker{color:var(--muted);margin-bottom:4px;font-size:.78rem;font-weight:600;display:block}.notification-menu{position:relative}.notification-menu[open] summary{box-shadow:var(--shadow-sm);background:#fff}.notification-menu summary::-webkit-details-marker{display:none}.notification-trigger{border-radius:var(--radius-md);background:var(--navbar-surface,#ffffff0f);min-height:40px;color:var(--navbar-text,#fff);cursor:pointer;-webkit-user-select:none;user-select:none;transition:all var(--transition-normal);border:1px solid #ffffff0f;align-items:center;gap:10px;padding:8px 14px;list-style:none;display:inline-flex}.notification-trigger:hover{background:#ffffff1a;border-color:#ffffff4d;transform:translateY(-1px)}.notification-trigger svg{fill:none;stroke:currentColor;stroke-width:1.85px;stroke-linecap:round;stroke-linejoin:round;width:18px;height:18px}.notification-trigger span{font-size:.86rem;font-weight:600}.notification-trigger strong{min-width:22px;height:22px;color:var(--primary-strong);background:#fff;border-radius:999px;place-items:center;padding:0 6px;font-size:.72rem;font-weight:800;display:inline-grid}.notification-panel{border:1px solid var(--line-strong);border-radius:var(--radius-lg);background:var(--panel);width:min(420px,100vw - 32px);box-shadow:var(--shadow-lg);color:var(--ink);z-index:50;gap:14px;padding:20px;display:grid;position:absolute;top:calc(100% + 10px);right:0}.notification-panel-head{justify-content:space-between;align-items:flex-start;gap:10px;display:flex}.notification-panel-head h2{color:var(--ink);letter-spacing:-.02em;font-size:1.05rem;font-weight:800}.notification-panel-head p{color:var(--muted);margin-top:2px;font-size:.84rem}.notification-link-button{min-height:34px;padding:0 12px;background:var(--primary-soft)!important;color:var(--primary-strong)!important;border:1px solid var(--primary)!important}@supports (color:color-mix(in lab, red, red)){.notification-link-button{border:1px solid color-mix(in srgb, var(--primary) 20%, transparent)!important}}.notification-link-button{border-radius:var(--radius-sm);transition:all var(--transition-normal);box-shadow:none!important}.notification-link-button:hover{background:var(--primary)!important;color:#fff!important}.notification-list{gap:10px;max-height:360px;display:grid;overflow-y:auto}.notification-item{border:1px solid var(--line-strong);border-radius:var(--radius-md);background:var(--field);transition:all var(--transition-normal);grid-template-columns:minmax(0,1fr) auto;gap:12px;padding:12px;display:grid}.notification-item.is-unread{border-color:var(--primary)}@supports (color:color-mix(in lab, red, red)){.notification-item.is-unread{border-color:color-mix(in srgb, var(--primary) 30%, transparent)}}.notification-item.is-unread{background:var(--primary-soft)}.notification-copy{min-width:0}.notification-type{color:var(--primary-strong);text-transform:uppercase;letter-spacing:.04em;margin-bottom:4px;font-size:.7rem;font-weight:700;display:inline-flex}.notification-copy strong{color:var(--ink);font-size:.9rem;font-weight:700;display:block}.notification-copy p{color:var(--muted);margin-top:4px;font-size:.84rem;line-height:1.45}.notification-copy small{color:var(--muted-light);margin-top:6px;font-size:.74rem;display:block}.notification-open{border-radius:var(--radius-sm);align-self:center;min-height:32px;padding:0 10px}.notification-empty{color:var(--muted);text-align:center;padding:20px 6px;font-size:.9rem}.notice{background:var(--primary-soft);color:var(--primary-strong);border-radius:var(--radius-md);border:1px solid #bfdbfe;padding:12px 16px;font-weight:500}.notice-error{color:#991b1b;background:#fef2f2;border-color:#fecaca;gap:2px;display:grid}.notice-error span{font-weight:600}.class-subject-preview{border:1px solid var(--line-strong);border-radius:var(--radius-md);background:var(--field);color:var(--muted);flex-wrap:wrap;gap:8px;padding:12px 14px;font-size:.86rem;font-weight:700;display:flex}.class-subject-preview strong{color:var(--ink);text-transform:uppercase;letter-spacing:.04em;flex-basis:100%;font-size:.78rem}.class-subject-preview span{background:var(--primary-soft);min-height:28px;color:var(--primary-strong);border-radius:999px;align-items:center;padding:0 10px;display:inline-flex}.subject-teacher-assignment-grid{gap:10px;display:grid}.subject-teacher-assignment{border:1px solid var(--line-strong);border-radius:var(--radius-md);background:var(--field);gap:6px;padding:12px 14px;display:grid}.subject-teacher-assignment span{color:var(--ink);font-size:.82rem;font-weight:800}.dash-hero,.pupil-portal-head,.admin-page-head,.pupil-home-hero,.document-hero{border:1px solid var(--line-strong);border-radius:var(--radius-lg);background:var(--panel);box-shadow:var(--shadow-sm);grid-template-columns:minmax(0,1fr) minmax(240px,340px);align-items:stretch;gap:20px;padding:24px;display:grid}.dash-hero-main,.pupil-identity,.admin-page-head>div:first-child,.pupil-home-hero>div:first-child{align-content:center;min-width:0;display:grid}.dash-hero h2,.pupil-identity h2,.admin-page-head h2,.pupil-home-hero h2{color:var(--ink);letter-spacing:-.03em;font-size:clamp(1.65rem,2.8vw,2.35rem);font-weight:700;line-height:1.08}.dash-hero p,.pupil-identity p,.admin-page-head p,.pupil-home-hero p{color:var(--muted);max-width:640px;margin-top:8px;line-height:1.55}.dash-focus-card,.pupil-focus-card,.pupil-balance-card{border-radius:var(--radius-md);color:#fff;box-shadow:var(--shadow-md);align-content:center;gap:6px;padding:20px;display:grid;position:relative;overflow:hidden}.dash-focus-card--brand,.pupil-focus-card,.pupil-balance-card{background:linear-gradient(145deg, var(--primary) 0%, var(--primary-strong) 100%)}.dash-focus-card--dark{background:linear-gradient(145deg, var(--hero-dark) 0%, #1e40af 100%)}.dash-focus-card:after,.pupil-focus-card:after,.pupil-balance-card:after{content:"";pointer-events:none;background:#ffffff1a;border-radius:999px;width:140px;height:140px;position:absolute;inset:auto -40px -60px auto}.dash-focus-card span,.dash-focus-card small,.pupil-focus-card span,.pupil-focus-card small,.pupil-balance-card span,.pupil-balance-card small{z-index:1;color:#dbeafe;font-weight:600;position:relative}.dash-focus-card span,.pupil-focus-card span,.pupil-balance-card span{text-transform:uppercase;letter-spacing:.05em;font-size:.74rem}.dash-focus-card strong,.pupil-focus-card strong,.pupil-balance-card strong{z-index:1;color:#fff;letter-spacing:-.02em;font-size:clamp(1.5rem,2.2vw,1.9rem);font-weight:700;line-height:1;position:relative}.dash-focus-card a,.pupil-focus-card a,.pupil-balance-card a{z-index:1;color:#fff;border-bottom:1px solid #fff6;justify-self:start;margin-top:4px;font-size:.88rem;font-weight:600;text-decoration:none;position:relative}.dash-stat-grid,.metric-grid,.admin-stat-grid,.pupil-metric-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;display:grid}.dash-stat-card,.metric,.admin-stat-grid>div,.admin-stat-grid>a,.pupil-metric-grid>a,.pupil-metric-grid>div,.dashboard-stat-card{border:1px solid var(--line-strong);border-radius:var(--radius-md);background:var(--panel);min-height:108px;box-shadow:var(--shadow-xs);align-content:center;gap:5px;padding:18px;transition:border-color .15s,transform .15s,box-shadow .15s,background-color .15s;display:grid}.dash-stat-card:hover,.dashboard-stat-card:hover,.pupil-metric-grid>a:hover{box-shadow:var(--shadow-sm);background:#f7faff;border-color:#c9c6dc;transform:translateY(-2px)}.dashboard-stat-card.is-active,.pupil-metric-grid>a.active{border-color:var(--primary);background:var(--primary-soft);box-shadow:0 0 0 1px #130c441f}.dash-stat-label,.dash-stat-card>span,.admin-stat-grid span,.pupil-metric-grid span{color:var(--muted);font-size:.84rem;font-weight:600}.dash-stat-value,.dash-stat-card>strong,.admin-stat-grid strong,.pupil-metric-grid strong{color:var(--ink);letter-spacing:-.02em;overflow-wrap:anywhere;font-size:clamp(1.25rem,1.8vw,1.65rem);font-weight:700;line-height:1.1}.dash-stat-hint,.dash-stat-card>small,.admin-stat-grid small,.pupil-metric-grid small{color:var(--muted-light);font-size:.8rem}.dash-tabs,.pupil-section-tabs,.admin-tabs{border:1px solid var(--line-strong);border-radius:var(--radius-md);scrollbar-width:thin;background:#e8f0ff;gap:6px;padding:5px;display:flex;overflow-x:auto}.dash-tabs a,.pupil-section-tabs a,.admin-tabs a{border-radius:calc(var(--radius-md) - 2px);color:#38506f;border:1px solid #0000;flex:none;align-items:center;min-height:40px;padding:0 16px;font-size:.88rem;font-weight:600;text-decoration:none;transition:background-color .15s,color .15s,box-shadow .15s;display:inline-flex}.dash-tabs a:hover,.pupil-section-tabs a:hover,.admin-tabs a:hover{background:#ffffffb3}.dash-tabs a.active,.pupil-section-tabs a.active,.admin-tabs a.active{background:var(--primary);color:#fff;border-color:var(--primary);box-shadow:0 6px 16px #130c4438}.dash-actions{flex-wrap:wrap;gap:10px;margin-top:-6px;display:flex}.theme-settings-layout{grid-template-columns:minmax(0,1.2fr) minmax(300px,.8fr);align-items:start;gap:18px;display:grid}.theme-settings-note{color:var(--muted);margin:0 0 14px;line-height:1.55}.theme-settings-note a{color:var(--primary-strong);border-bottom:1px solid var(--primary);font-weight:700;text-decoration:none}@supports (color:color-mix(in lab, red, red)){.theme-settings-note a{border-bottom:1px solid color-mix(in srgb, var(--primary) 35%, transparent)}}.theme-color-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;display:grid}.theme-color-field{border:1px solid var(--line-strong);border-radius:var(--radius-md);background:var(--field);gap:6px;padding:14px;display:grid}.theme-color-field>span{color:var(--ink);font-size:.9rem;font-weight:700}.theme-color-field>small{color:var(--muted);font-size:.8rem;line-height:1.4}.theme-color-inputs{grid-template-columns:52px minmax(0,1fr);align-items:center;gap:10px;display:grid}.theme-color-inputs input[type=color]{border:1px solid var(--line-strong);border-radius:var(--radius-sm);cursor:pointer;background:#fff;width:52px;height:42px;padding:4px}.theme-color-inputs input[type=text]{min-height:42px;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-weight:600}.theme-settings-actions{border-top:1px solid var(--line);flex-wrap:wrap;gap:10px;margin-top:18px;padding-top:16px;display:flex}.theme-reset-button:before{content:none}.theme-preview-panel{position:sticky;top:92px}.theme-preview-shell{border:1px solid var(--line-strong);border-radius:var(--radius-md);min-height:280px;box-shadow:var(--shadow-sm);grid-template-columns:118px minmax(0,1fr);display:grid;overflow:hidden}.theme-preview-sidebar{align-content:start;gap:12px;padding:12px 10px;display:grid}.theme-preview-brand{text-align:center;justify-items:center;gap:6px;display:grid}.theme-preview-brand span{border-radius:var(--radius-sm);background:var(--primary);color:#fff;place-items:center;width:34px;height:34px;font-size:.72rem;font-weight:700;display:grid}.theme-preview-brand strong{font-size:.72rem;font-weight:700}.theme-preview-nav{gap:6px;display:grid}.theme-preview-nav span{border-radius:var(--radius-sm);padding:8px 9px;font-size:.72rem;font-weight:600;display:block}.theme-preview-nav span.is-active{box-shadow:var(--shadow-xs)}.theme-preview-main{background:var(--bg-app);align-content:start;gap:10px;padding:10px;display:grid}@supports (color:color-mix(in lab, red, red)){.theme-preview-main{background:color-mix(in srgb, var(--bg-app) 88%, #fff)}}.theme-preview-topbar{border-radius:var(--radius-sm);gap:2px;padding:12px;display:grid}.theme-preview-topbar strong{font-size:.92rem;font-weight:700}.theme-preview-topbar small{opacity:.85;font-size:.72rem}.theme-preview-card{border:1px solid var(--line-strong);border-radius:var(--radius-sm);background:#fff;gap:8px;padding:14px;display:grid}.theme-preview-card p{color:var(--muted);font-size:.82rem;line-height:1.45}.theme-preview-card .primary-action{min-height:36px;padding:0 12px;font-size:.8rem}.section-kicker{color:var(--primary-strong);text-transform:uppercase;letter-spacing:.06em;margin-bottom:8px;font-size:.72rem;font-weight:700;display:inline-flex}.slide-over{z-index:60;opacity:0;pointer-events:none;grid-template-columns:minmax(0,1fr) minmax(320px,560px);transition:opacity .18s;display:grid;position:fixed;inset:0}.slide-over.is-open{opacity:1;pointer-events:auto}.slide-over-backdrop{background:#0f172a7a;grid-area:1/1/auto/-1}.slide-over-panel{background:#fff;grid-area:1/2;height:100dvh;transition:transform .22s;overflow-y:auto;transform:translate(100%);box-shadow:-24px 0 60px #0f172a38}.slide-over-panel-full{grid-column:1/-1;justify-self:end;width:min(100vw,1440px)}.slide-over.is-open .slide-over-panel{transform:translate(0)}.slide-over-head{z-index:1;background:#fff;border-bottom:1px solid #dbe7f7;justify-content:space-between;align-items:center;gap:14px;padding:16px 18px;display:flex;position:sticky;top:0}.slide-over-head h3{color:#12213f;font-size:1.05rem;font-weight:950}.slide-over-head p{color:#5d708f;font-size:.9rem}.slide-over-close{color:#130c44;background:#eff6ff;border-radius:8px;justify-content:center;align-items:center;width:36px;height:36px;padding:0;font-size:1.45rem;line-height:1;display:inline-flex}.slide-over-content{padding:18px}.slide-over-open{overflow:hidden}.metric-grid{grid-template-columns:repeat(auto-fit,minmax(190px,1fr));gap:14px;display:grid}.metric,.panel{background:var(--panel);border:1px solid var(--line-strong);border-radius:var(--radius-md);box-shadow:var(--shadow-sm)}.metric{padding:18px}.metric strong{margin:8px 0;font-size:1.8rem;font-weight:700;display:block}.panel-grid{gap:16px;display:grid}.panel-grid.two{grid-template-columns:repeat(2,minmax(0,1fr))}.panel{padding:18px}.panel-head{justify-content:space-between;align-items:center;gap:12px;margin-bottom:14px;display:flex}.panel-head h2{font-size:1.05rem;font-weight:800}.panel-head a,button,.primary-action,.secondary-action{border-radius:var(--radius-sm);cursor:pointer;border:1px solid #0000;justify-content:center;align-items:center;gap:8px;min-height:42px;padding:0 16px;font-size:.88rem;font-weight:600;line-height:1;text-decoration:none;transition:background-color .15s,border-color .15s,color .15s,box-shadow .15s,transform .15s;display:inline-flex}.panel-head a,button,.primary-action{background:var(--primary);color:#fff;border-color:var(--primary);box-shadow:0 6px 16px #130c4433}.primary-action:hover,button:hover,.panel-head a:hover{background:var(--primary-strong);border-color:var(--primary-strong);transform:translateY(-1px);box-shadow:0 8px 20px #130c443d}.secondary-action{color:var(--primary-strong);border-color:var(--line-strong);box-shadow:var(--shadow-xs);background:#fff}.secondary-action:hover{background:var(--primary-soft);color:var(--primary-strong);border-color:#c9c6dc;transform:translateY(-1px)}.secondary-action:before{content:"<";opacity:.75;font-size:.95rem;font-weight:950;line-height:1}.admin-action-row .secondary-action:before,.repeatable-actions .secondary-action:before{content:none}.admin-action-row{flex-wrap:wrap;justify-content:flex-end;gap:9px;display:flex}.stack-list,.table-like,.attendance-grid{gap:10px;display:grid}.stack-list article,.table-like div,.attendance-row{background:var(--field);border:1px solid #dbe7f7;border-radius:8px;justify-content:space-between;gap:12px;padding:12px;display:flex}.stack-list article{flex-direction:column;align-items:flex-start}.filter-bar,.inline-pay,.settings-form{flex-wrap:wrap;gap:10px;display:flex}input,select{border:1px solid var(--line);background:#fff;border-radius:8px;width:100%;min-height:42px;padding:8px 10px}textarea{border:1px solid var(--line);resize:vertical;background:#fff;border-radius:8px;min-height:96px;padding:10px}select[multiple]{min-height:118px}.inline-pay input{width:130px}.settings-form{margin-top:12px}.permission-cloud{flex-wrap:wrap;gap:8px;display:flex}.permission-cloud span{color:#9a3412;background:#fff7ed;border-radius:999px;padding:8px 10px;font-size:.88rem;font-weight:700}.admin-hero{color:#fff;background:#0f2147;border-radius:8px;grid-template-columns:minmax(0,1fr) 280px;align-items:stretch;gap:18px;padding:24px;display:grid}.admin-hero span{color:#bfdbfe;text-transform:uppercase;letter-spacing:0;font-size:.76rem;font-weight:800}.admin-hero h2{margin:8px 0;font-size:clamp(1.8rem,4vw,3.4rem);font-weight:950;line-height:1}.admin-hero p{color:#dbeafe;max-width:680px}.admin-hero-stat{background:#ffffff14;border:1px solid #ffffff1f;border-radius:8px;align-content:center;gap:8px;padding:18px;display:grid}.admin-hero-stat small{color:#dbeafe}.admin-hero-stat strong{font-size:1.8rem}.admin-module-grid{grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px;display:grid}.admin-module-grid a{border:1px solid var(--line);min-height:130px;color:var(--ink);background:#fff;border-radius:8px;align-content:center;gap:8px;padding:18px;text-decoration:none;display:grid;box-shadow:0 18px 45px #0f172a0f}.admin-module-grid a:hover{border-color:#c9c6dc;transform:translateY(-1px)}.admin-module-grid strong{font-size:1.08rem}.admin-module-grid span,.muted-copy{color:var(--muted)}.ops-overview{border:1px solid var(--line);background:#fff;border-radius:8px;gap:0;display:grid;overflow:hidden;box-shadow:0 18px 45px #0f172a0d}.ops-heading{border-bottom:1px solid var(--line);background:#f7faff;grid-template-columns:minmax(0,1fr) 300px;gap:18px;padding:24px;display:grid}.ops-heading h2{color:#12213f;font-size:clamp(1.7rem,3vw,2.6rem);font-weight:950;line-height:1.02}.ops-heading p{max-width:680px;color:var(--muted);margin-top:8px}.ops-balance{color:#fff;background:#0f2147;border-radius:8px;align-content:center;gap:4px;padding:16px;display:grid}.ops-balance span,.ops-balance small{color:#dbeafe}.ops-balance strong{font-size:1.85rem;line-height:1.1}.ops-kpis{grid-template-columns:repeat(4,minmax(0,1fr));display:grid}.ops-kpis div{border-right:1px solid var(--line);padding:18px}.ops-kpis div:last-child{border-right:0}.ops-kpis span,.ops-kpis small{color:var(--muted);display:block}.ops-kpis strong{color:#12213f;margin:6px 0 4px;font-size:1.55rem;display:block}.ops-layout{grid-template-columns:minmax(0,1.55fr) minmax(320px,.75fr);align-items:start;gap:18px;display:grid}.ops-main,.ops-side{gap:18px;display:grid}.refined-panel{box-shadow:0 12px 34px #0f172a0b}.finance-line{border:1px solid var(--line);border-radius:8px;grid-template-columns:repeat(3,minmax(0,1fr));margin-bottom:14px;display:grid;overflow:hidden}.finance-line div{border-right:1px solid var(--line);background:#f7faff;padding:14px}.finance-line div:last-child{border-right:0}.finance-line span{color:var(--muted);font-size:.88rem;display:block}.finance-line strong{margin-top:5px;font-size:1.25rem;display:block}.compact-table{border-top:1px solid var(--line);display:grid}.compact-table a,.compact-table .empty-line{color:var(--ink);border-bottom:1px solid #e8f0ff;grid-template-columns:minmax(0,1fr) auto auto;align-items:center;gap:14px;padding:12px 0;text-decoration:none;display:grid}.compact-table a:hover strong{color:var(--primary-strong)}.compact-table small{color:var(--muted);margin-top:2px;display:block}.status-pill{color:#475569;background:#f1f5f9;border-radius:999px;justify-self:start;padding:5px 9px;font-size:.78rem;font-weight:850}.status-pill.paid{color:#130c44;background:#eff6ff}.status-pill.partial{color:#9a3412;background:#ffedd5}.status-pill.unpaid{color:#991b1b;background:#fee2e2}.role-bars{gap:13px;display:grid}.role-bars>div{grid-template-columns:110px minmax(0,1fr) 36px;align-items:center;gap:12px;display:grid}.role-bars span{color:var(--muted)}.role-bars div div{background:#e8f0ff;border-radius:999px;height:8px;overflow:hidden}.role-bars i{border-radius:inherit;background:#130c44;height:100%;display:block}.ops-links{gap:7px;display:grid}.ops-links a{color:var(--ink);background:#f7faff;border:1px solid #dbe7f7;border-radius:8px;gap:3px;padding:12px;text-decoration:none;display:grid}.ops-links a:hover{background:#f6f9ff;border-color:#c9c6dc}.ops-links span{color:var(--muted);font-size:.9rem}.readiness-list{gap:9px;display:grid}.readiness-list div{border-bottom:1px solid #e8f0ff;justify-content:space-between;gap:12px;padding:10px 0;display:flex}.readiness-list div:last-child{border-bottom:0}.readiness-list span{color:var(--muted)}.readiness-list strong{color:#12213f}.admin-console{background:#f7faff;border:1px solid #dbe7f7;border-radius:8px;overflow:hidden;box-shadow:0 16px 38px #0f172a0b}.console-head{background:linear-gradient(#fff 0%,#f4faf6 100%);border-bottom:1px solid #dbe7f7;grid-template-columns:minmax(0,1fr) 190px;gap:18px;padding:24px;display:grid}.console-head h2{color:#12213f;font-size:clamp(1.75rem,3vw,2.75rem);font-weight:950;line-height:1.02}.console-head p{color:#5e7169;max-width:720px;margin-top:8px}.console-stamp{color:#fff;text-align:right;background:#0f2147;border:1px solid #c6d7f2;border-radius:8px;align-content:center;gap:3px;padding:14px;display:grid}.console-stamp span,.console-stamp small{color:#b7d6ca}.console-stamp strong{font-variant-numeric:tabular-nums;font-size:1.7rem}.console-strip{grid-template-columns:repeat(4,minmax(0,1fr));display:grid}.console-strip a,.console-strip div{color:#12213f;border-right:1px solid #dbe7f7;gap:5px;padding:17px 18px;text-decoration:none;display:grid}.console-strip a:last-child,.console-strip div:last-child{border-right:0}.console-strip a:hover{background:#f0f8f4}.console-strip span,.console-strip small{color:#63766d}.console-strip strong{font-variant-numeric:tabular-nums;font-size:1.45rem;line-height:1}.office-grid{grid-template-columns:minmax(0,1.48fr) minmax(330px,.72fr);align-items:start;gap:18px;display:grid}.office-primary,.office-secondary{gap:18px;display:grid}.office-panel{background:#fff;border:1px solid #dbe7f7;border-radius:8px;padding:18px;box-shadow:0 14px 34px #0f172a0b}.office-panel-head{justify-content:space-between;align-items:flex-start;gap:14px;margin-bottom:16px;display:flex}.office-panel-head h2{color:#12213f;font-size:1.08rem;font-weight:900}.office-panel-head a{color:var(--primary-strong);border-bottom:1px solid #130c4440;font-weight:850;text-decoration:none}.ledger-summary{border:1px solid #dbe7f7;border-radius:8px;grid-template-columns:repeat(3,minmax(0,1fr));margin-bottom:12px;display:grid;overflow:hidden}.ledger-summary div{background:#f7faff;border-right:1px solid #dbe7f7;padding:14px}.ledger-summary div:last-child{border-right:0}.ledger-summary span{color:#63766d;font-size:.86rem;display:block}.ledger-summary strong{color:#12213f;font-variant-numeric:tabular-nums;margin-top:5px;font-size:1.22rem;display:block}.ledger-table{border-top:1px solid #dbe7f7;display:grid}.ledger-row{color:#12213f;border-bottom:1px solid #e8f0ff;grid-template-columns:minmax(0,1fr) 110px 130px;align-items:center;gap:14px;padding:12px 0;text-decoration:none;display:grid}.ledger-row:hover strong{color:var(--primary-strong)}.ledger-row-head{color:#63766d;text-transform:uppercase;letter-spacing:0;font-size:.78rem;font-weight:900}.ledger-row small{color:#63766d;margin-top:2px;display:block}.ledger-row b{font-variant-numeric:tabular-nums;justify-self:end}.ledger-empty{color:#63766d;padding:14px 0}.role-ledger{gap:12px;display:grid}.role-ledger>div{grid-template-columns:112px minmax(0,1fr) 34px;align-items:center;gap:12px;display:grid}.role-ledger span{color:#63766d}.role-ledger div div{background:#e8f0ff;border-radius:999px;height:9px;overflow:hidden}.role-ledger i{border-radius:inherit;background:linear-gradient(90deg,#130c44,#130c44);height:100%;display:block}.office-actions{gap:8px;display:grid}.office-actions a{color:#12213f;background:#f7faff;border:1px solid #dbe7f7;border-radius:8px;gap:3px;padding:12px 13px;text-decoration:none;display:grid}.office-actions a:hover{background:#f3fbf7;border-color:#c9c6dc}.office-actions span{color:#63766d;font-size:.9rem}.readiness-board{border-top:1px solid #e8f0ff;gap:0;display:grid}.readiness-board div{border-bottom:1px solid #e8f0ff;justify-content:space-between;gap:12px;padding:12px 0;display:flex}.readiness-board span{color:#63766d}.readiness-board strong{color:#12213f;text-align:right}.school-desk{border:1px solid var(--line-strong);border-radius:var(--radius-lg);background:var(--panel);box-shadow:var(--shadow-sm);overflow:hidden}.desk-masthead{background:linear-gradient(180deg, #fff 0%, var(--field) 100%);border-bottom:1px solid var(--line-strong);grid-template-columns:64px minmax(0,1fr) 210px;align-items:center;gap:18px;padding:22px 20px;display:grid}.desk-seal{background:linear-gradient(145deg, var(--hero-dark) 0%, var(--primary-strong) 100%);color:#fff;border-radius:50%;place-items:center;width:64px;height:64px;display:grid;box-shadow:0 8px 24px #130c4440}.desk-seal span{font-size:1.12rem;font-weight:950}.desk-title h2{color:#12213f;font-size:clamp(1.75rem,3.2vw,2.55rem);font-weight:950;line-height:1.02}.desk-title p{color:#5d708f;max-width:760px;margin-top:8px;font-size:.96rem}.desk-date{background:#fff;border-left:4px solid #130c44;border-radius:8px;justify-self:stretch;gap:4px;padding:13px 15px;display:grid}.desk-date span,.desk-date small{color:#5d708f}.desk-date strong{color:#12213f;font-size:1.25rem}.desk-register{background:#f7faff;grid-template-columns:repeat(5,minmax(0,1fr));display:grid}.desk-register a,.desk-register div{color:#12213f;border-right:1px solid #dbe7f7;gap:4px;padding:15px 18px;text-decoration:none;display:grid}.desk-register a:last-child,.desk-register div:last-child{border-right:0}.desk-register a:hover{background:#eff6ff}.desk-register span,.desk-register small{color:#5d708f}.desk-register strong{font-variant-numeric:tabular-nums;font-size:1.42rem;line-height:1}.desk-grid{grid-template-columns:minmax(0,1.55fr) minmax(330px,.7fr);align-items:start;gap:18px;display:grid}.desk-left,.desk-right{gap:18px;display:grid}.desk-panel{background:var(--panel);border:1px solid var(--line-strong);border-radius:var(--radius-md);box-shadow:var(--shadow-xs);padding:20px}.desk-panel-head{justify-content:space-between;align-items:flex-start;gap:14px;margin-bottom:16px;display:flex}.desk-panel-head h2{color:#12213f;font-size:1.08rem;font-weight:900}.desk-panel-head a{color:#130c44;border-bottom:1px solid #130c4440;font-weight:850;text-decoration:none}.cashbook-strip{background:#f7faff;border:1px solid #dbe7f7;border-radius:8px;grid-template-columns:repeat(4,minmax(0,1fr));margin-bottom:12px;display:grid;overflow:hidden}.cashbook-strip div{background:0 0;border-right:1px solid #dbe7f7;padding:13px 14px}.cashbook-strip div:last-child{border-right:0}.cashbook-strip span{color:#5d708f;font-size:.84rem;display:block}.cashbook-strip strong{color:#12213f;font-variant-numeric:tabular-nums;margin-top:5px;font-size:1.12rem;display:block}.cashbook-table{border-top:1px solid #dbe7f7;display:grid}@media (width<=640px){.document-hero,.pupil-detail-hero,.material-detail-hero{gap:12px;padding:14px}.admin-stat-grid,.admin-stat-grid>div,.admin-stat-grid>a{padding:12px}.panel-grid.two,.panel-grid.two.admin-workspace{grid-template-columns:1fr}.submission-form,.pupil-submission-form,.form-grid{gap:10px}.submission-form button,.panel .primary-action{justify-self:stretch;width:100%}textarea,input[type=number],select{min-height:48px}.drop-upload{min-height:110px;padding:14px}.upload-preview-item{grid-template-columns:44px 1fr;gap:10px}.attachment-grid{grid-template-columns:repeat(auto-fit,minmax(180px,1fr))}.panel{padding:14px}}@media (width<=900px){.document-hero,.pupil-detail-hero,.material-detail-hero,.work-detail-hero{align-items:start;grid-template-columns:1fr!important;gap:12px!important;padding:14px!important}.document-hero .document-actions,.work-detail-actions,.document-actions{justify-content:flex-end;flex-wrap:wrap!important;gap:8px!important;display:flex!important}.document-actions a,.document-actions button{flex:auto!important;min-width:0!important}.document-hero h2{font-size:1.1rem!important;line-height:1.12!important}.document-hero p{color:var(--muted)!important;font-size:.9rem!important}.work-detail-actions,.document-actions .primary-action{margin-top:4px}}.cashbook-row{color:#12213f;border-bottom:1px solid #e8f0ff;grid-template-columns:minmax(0,1fr) 112px 136px;align-items:center;gap:14px;padding:12px 0;text-decoration:none;display:grid}.cashbook-row:hover strong{color:#130c44}.cashbook-head{color:#5d708f;text-transform:uppercase;letter-spacing:0;font-size:.76rem;font-weight:900}.cashbook-row small{color:#5d708f;margin-top:2px;display:block}.cashbook-row b{font-variant-numeric:tabular-nums;justify-self:end}.cashbook-empty{color:#5d708f;padding:14px 0}.management-map{padding-bottom:14px}.map-rows{border-top:1px solid #dbe7f7;display:grid}.map-rows a{color:#12213f;border-bottom:1px solid #e8f0ff;grid-template-columns:42px minmax(180px,.65fr) minmax(0,1fr);align-items:center;gap:14px;padding:12px 0;text-decoration:none;display:grid}.map-rows a:hover strong{color:#130c44}.map-rows span{color:#130c44;background:#eff6ff;border-radius:999px;place-items:center;width:30px;height:30px;font-size:.78rem;font-weight:900;display:grid}.map-rows small{color:#5d708f}.registrar-stack,.office-checks{border-top:1px solid #e8f0ff;display:grid}.registrar-stack div,.office-checks div{border-bottom:1px solid #e8f0ff;justify-content:space-between;gap:12px;padding:11px 0;display:flex}.registrar-stack span,.office-checks span{color:#5d708f}.registrar-stack strong,.office-checks strong{color:#12213f;font-variant-numeric:tabular-nums;text-align:right}.settings-tabs>input{opacity:0;pointer-events:none;position:absolute}.tab-list{border:1px solid var(--line);background:#edf6f1;border-radius:8px;flex-wrap:wrap;gap:8px;padding:6px;display:flex}.tab-list label{cursor:pointer;color:#38506f;border-radius:8px;padding:11px 14px;font-weight:850}.tab-list label:hover{background:#130c4417}.tab-panels{margin-top:16px}.tab-panel{display:none}#tab-school:checked~.tab-list label[for=tab-school],#tab-brand:checked~.tab-list label[for=tab-brand],#tab-gateways:checked~.tab-list label[for=tab-gateways],#tab-security:checked~.tab-list label[for=tab-security]{background:var(--primary);color:#fff;box-shadow:0 10px 24px #130c4438}#tab-school:checked~.tab-panels .school-tab,#tab-brand:checked~.tab-panels .brand-tab,#tab-gateways:checked~.tab-panels .gateways-tab,#tab-security:checked~.tab-panels .security-tab{display:block}.admin-page-head{border:1px solid var(--line-strong);border-radius:var(--radius-lg);background:var(--panel);box-shadow:var(--shadow-sm);grid-template-columns:minmax(0,1fr) auto;align-items:end;gap:20px;padding:24px 28px;display:grid;position:relative;overflow:hidden}.admin-page-head:before{content:"";background:linear-gradient(180deg, var(--primary) 0%, var(--primary-strong) 100%);border-radius:var(--radius-lg) 0 0 var(--radius-lg);width:4px;position:absolute;inset:0 auto 0 0}.admin-page-head>div:first-child{padding-left:8px}.admin-page-head h2{max-width:760px;color:var(--ink);letter-spacing:-.03em;font-size:clamp(1.5rem,2.8vw,2.1rem);font-weight:800;line-height:1.1}.admin-page-head p{max-width:760px;color:var(--muted);margin-top:8px;line-height:1.55}.pupil-home-hero{background:linear-gradient(135deg,#fff 0%,#f3faf6 58%,#e9f7f1 100%);border:1px solid #c6d7f2;border-radius:8px;grid-template-columns:minmax(0,1fr) minmax(260px,360px);align-items:stretch;gap:18px;padding:24px;display:grid;box-shadow:0 18px 42px #0f172a0e}.pupil-home-hero>div:first-child{align-content:center;display:grid}.pupil-home-hero h2{color:#12213f;max-width:780px;font-size:clamp(1.8rem,3.2vw,2.8rem);font-weight:950;line-height:1.02}.pupil-home-hero p{color:#5d708f;max-width:760px;margin-top:8px}.pupil-balance-card{color:#fff;background:#130c44;border-radius:8px;align-content:center;gap:6px;min-width:260px;padding:18px;display:grid;position:relative;overflow:hidden;box-shadow:0 18px 38px #130c443d}.pupil-balance-card:after{content:"";background:#ffffff1f;border-radius:999px;width:150px;height:150px;position:absolute;inset:auto -34px -54px auto}.pupil-balance-card span,.pupil-balance-card small{color:#dbeafe;font-weight:800}.pupil-balance-card span{text-transform:uppercase;letter-spacing:0;font-size:.78rem}.pupil-balance-card strong{color:#fff;font-size:1.7rem;font-weight:950;line-height:1}.pupil-balance-card a{z-index:1;color:#fff;border-bottom:1px solid #ffffff73;justify-self:start;margin-top:4px;font-weight:900;text-decoration:none;position:relative}.document-hero{background:#fff;border:1px solid #c6d7f2;border-radius:8px;grid-template-columns:minmax(0,1fr) auto;align-items:end;gap:18px;padding:24px;display:grid;box-shadow:0 16px 38px #0f172a0b}.document-hero h2{color:#12213f;font-size:clamp(1.8rem,3.2vw,2.8rem);font-weight:950;line-height:1.02}.document-hero p{color:#5d708f;margin-top:8px}.document-actions{flex-wrap:wrap;justify-content:flex-end;gap:9px;display:flex}.document-copy{color:#33433d;white-space:pre-wrap;line-height:1.75}.admin-tabs{border:1px solid var(--line-strong);border-radius:var(--radius-lg);background:var(--panel);gap:6px;padding:5px;display:flex}@supports (color:color-mix(in lab, red, red)){.admin-tabs{background:color-mix(in srgb, var(--panel) 70%, var(--field))}}.admin-tabs{scrollbar-width:thin;overflow-x:auto}.admin-tabs a{color:var(--muted);border-radius:calc(var(--radius-lg) - 4px);border:1px solid #0000;flex:none;padding:10px 16px;font-size:.88rem;font-weight:600;text-decoration:none;transition:background-color .15s,color .15s,box-shadow .15s}.role-tabs a{align-items:center;gap:8px;display:inline-flex}.role-tabs a strong{background:var(--primary);border-radius:999px;place-items:center;min-width:24px;height:24px;padding:0 7px;display:inline-grid}@supports (color:color-mix(in lab, red, red)){.role-tabs a strong{background:color-mix(in srgb, var(--primary) 12%, transparent)}}.role-tabs a strong{color:var(--primary-strong);font-size:.76rem;font-weight:700}.role-tabs a.active strong{color:#fff;background:#ffffff38}.admin-tabs a:hover{background:var(--panel);color:var(--ink)}.admin-tabs a.active{background:var(--primary);color:#fff;box-shadow:0 4px 14px var(--primary)}@supports (color:color-mix(in lab, red, red)){.admin-tabs a.active{box-shadow:0 4px 14px color-mix(in srgb, var(--primary) 28%, transparent)}}.admin-stat-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;display:grid}.admin-stat-grid div,.dashboard-stat-card{border:1px solid var(--line-strong);border-radius:var(--radius-md);background:var(--panel);min-height:108px;box-shadow:var(--shadow-xs);align-content:center;gap:4px;padding:18px 20px;display:grid}.dashboard-stat-card{color:#12213f;text-decoration:none;transition:border-color .16s,transform .16s,box-shadow .16s,background-color .16s}.dashboard-stat-card:hover{background:#f6f9ff;border-color:#c9c6dc;transform:translateY(-1px);box-shadow:0 18px 38px #0f172a0f}.dashboard-stat-card.is-active{background:#eff6ff;border-color:#130c44;box-shadow:0 16px 34px #130c4414}.admin-stat-grid span,.admin-stat-grid small{color:var(--muted)}.admin-stat-grid span{font-size:.84rem;font-weight:600}.admin-stat-grid strong{color:var(--ink);letter-spacing:-.02em;overflow-wrap:anywhere;font-size:clamp(1.25rem,1.8vw,1.65rem);font-weight:800;line-height:1.1}.admin-dashboard{gap:24px;display:grid}.admin-welcome-hero{border-radius:var(--radius-lg);color:#fff;background:linear-gradient(138deg,#130c44 0% 46%,#130c44 100%);border:1px solid #e2fff433;grid-template-columns:minmax(0,1.25fr) minmax(240px,1fr);align-items:stretch;gap:28px;padding:32px 36px;display:grid;position:relative;overflow:hidden;box-shadow:0 18px 44px #0f214747}.admin-welcome-hero:before{content:"";pointer-events:none;background:radial-gradient(circle,#ffffff14 0%,#0000 60%);width:60%;height:140%;position:absolute;top:-20%;left:-20%}.admin-welcome-hero:after{content:"";pointer-events:none;background:radial-gradient(circle,#ffffff0d 0%,#0000 70%);border-radius:999px;width:280px;height:280px;position:absolute;top:-80px;right:-60px}.admin-welcome-copy{z-index:1;align-content:center;gap:0;min-width:0;display:grid;position:relative}.admin-welcome-greeting{color:#dbeafe;letter-spacing:-.01em;font-size:.95rem;font-weight:650}.admin-welcome-hero h2{letter-spacing:-.03em;text-shadow:0 2px 4px #00000026;margin:8px 0 0;font-size:clamp(1.8rem,3.2vw,2.6rem);font-weight:850;line-height:1.08}.admin-welcome-hero p{color:#eff6ff;max-width:580px;margin-top:12px;font-size:1rem;line-height:1.6}.admin-welcome-chips{flex-wrap:wrap;gap:8px;margin-top:20px;display:flex}.admin-chip{color:#f8fbff;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);min-height:32px;box-shadow:var(--shadow-xs);background:#ffffff2e;border:1px solid #dbeafe4d;border-radius:999px;align-items:center;padding:0 14px;font-size:.82rem;font-weight:650;display:inline-flex}.admin-chip--live{background:#130c4447;border-color:#c9c6dc75}.admin-chip--live:before{content:"";background:#c9c6dc;border-radius:999px;width:8px;height:8px;margin-right:8px;box-shadow:0 0 0 3px #c9c6dc52}.admin-chip--warn{background:#f59e0b42;border-color:#fde68a73}.admin-welcome-highlight{z-index:1;border-radius:var(--radius-md);text-align:center;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);transition:all var(--transition-normal);background:#0f21475c;border:1px solid #c9c6dc47;align-content:center;justify-items:center;gap:10px;padding:24px;display:grid;position:relative;box-shadow:0 10px 30px #00000029}.admin-welcome-highlight:hover{border-color:#ffffff4d;transform:translateY(-2px);box-shadow:0 14px 36px #0000002e}.admin-welcome-highlight .section-kicker{color:#bfdbfe;margin-bottom:4px;font-weight:800}.admin-collection-ring{place-items:center;width:120px;height:120px;display:grid;position:relative}.admin-collection-ring svg{width:100%;height:100%;transform:rotate(-90deg)}.admin-collection-ring-track{fill:none;stroke:#dbeafe4d;stroke-width:10px}.admin-collection-ring-fill{fill:none;stroke:#c9c6dc;stroke-width:10px;stroke-linecap:round;stroke-dasharray:326.7;stroke-dashoffset:calc(326.7 - (326.7 * var(--ring-percent,0) / 100));filter:drop-shadow(0 0 6px #c9c6dc8c);transition:stroke-dashoffset .8s cubic-bezier(.4,0,.2,1)}.admin-collection-ring strong{letter-spacing:-.04em;color:#fff;font-size:1.85rem;font-weight:850;position:absolute}.admin-welcome-highlight small{color:#eff6ff;max-width:220px;font-size:.84rem;line-height:1.45}.admin-welcome-highlight a{color:#fff;transition:border-color var(--transition-fast);border-bottom:1px solid #ffffffad;font-size:.88rem;font-weight:650;text-decoration:none}.admin-welcome-highlight a:hover{border-color:#fff}.admin-module-strip{grid-template-columns:repeat(auto-fit,minmax(170px,1fr));gap:12px;display:grid}.admin-module-link{border:1px solid var(--line-strong);border-radius:var(--radius-md);background:var(--panel);min-height:76px;color:var(--ink);box-shadow:var(--shadow-xs);transition:all var(--transition-normal);align-items:center;gap:14px;padding:14px 18px;text-decoration:none;display:flex}.admin-module-link:hover{border-color:var(--primary);box-shadow:var(--shadow-md), var(--glow-primary);transform:translateY(-4px)}.admin-module-icon{border-radius:var(--radius-sm);background:var(--primary-soft);width:44px;height:44px;color:var(--primary-strong);transition:all var(--transition-normal);flex:none;place-items:center;display:grid}.admin-module-icon svg{fill:none;stroke:currentColor;stroke-width:1.75px;stroke-linecap:round;stroke-linejoin:round;width:22px;height:22px}.admin-module-text{gap:2px;min-width:0;display:grid}.admin-module-text strong{letter-spacing:-.01em;font-size:.95rem;font-weight:700}.admin-module-text small{color:var(--muted);text-overflow:ellipsis;white-space:nowrap;font-size:.78rem;font-weight:500;overflow:hidden}.admin-module-link:hover .admin-module-icon{background:var(--primary);color:#fff;transform:scale(1.05)}.admin-metric-card{border:1px solid var(--line-strong);border-radius:var(--radius-md);background:var(--panel);min-height:108px;color:var(--ink);box-shadow:var(--shadow-xs);transition:all var(--transition-normal);grid-template-columns:48px minmax(0,1fr) auto;align-items:center;gap:16px;padding:18px 22px;text-decoration:none;display:grid}.admin-metric-card:hover{border-color:var(--metric-color);box-shadow:var(--shadow-md), 0 8px 24px var(--metric-color);transform:translateY(-4px)}@supports (color:color-mix(in lab, red, red)){.admin-metric-card:hover{box-shadow:var(--shadow-md), 0 8px 24px color-mix(in srgb, var(--metric-color) 12%, transparent)}}.admin-metric-icon{background:var(--metric-bg,var(--field));width:48px;height:48px;color:var(--metric-color,var(--primary));transition:all var(--transition-normal);border-radius:50%;place-items:center;display:grid}.admin-metric-icon svg{fill:none;stroke:currentColor;stroke-width:1.85px;stroke-linecap:round;stroke-linejoin:round;width:22px;height:22px}.admin-metric-body{gap:2px;min-width:0;display:grid}.admin-metric-body small{color:var(--muted);font-size:.84rem;font-weight:600}.admin-metric-body strong{letter-spacing:-.03em;color:var(--ink);font-size:clamp(1.4rem,2.2vw,1.85rem);font-weight:850;line-height:1.05}.admin-metric-hint{color:var(--muted-light);font-size:.78rem;font-weight:500}.admin-metric-arrow{color:var(--muted-light);opacity:0;transition:all var(--transition-fast);font-size:1.2rem;transform:translate(-4px)}.admin-metric-card:hover .admin-metric-arrow{opacity:1;color:var(--metric-color);transform:translate(0)}.admin-metric-card:hover .admin-metric-icon{transform:rotate(10deg)scale(1.05)}.admin-metric-card--blue{--metric-bg:#eff6ff;--metric-color:#130c44}.admin-metric-card--cyan{--metric-bg:#ecfeff;--metric-color:#0891b2}.admin-metric-card--gold{--metric-bg:#fffbeb;--metric-color:#d97706}.admin-metric-card--emerald{--metric-bg:#eff6ff;--metric-color:#0284c7}.admin-metric-card--violet{--metric-bg:var(--primary-soft);--metric-color:var(--primary-strong)}.admin-dashboard-grid{grid-template-columns:minmax(0,1.5fr) minmax(320px,.9fr);align-items:start;gap:24px;display:grid}.admin-dashboard-primary,.admin-dashboard-secondary{gap:24px;display:grid}.admin-card{border:1px solid var(--line-strong);border-radius:var(--radius-lg);background:var(--panel);box-shadow:var(--shadow-sm);transition:all var(--transition-normal);padding:24px 26px}.admin-card:hover{box-shadow:var(--shadow-md)}.admin-card-head{justify-content:space-between;align-items:flex-start;gap:14px;margin-bottom:20px;display:flex}.admin-card-head h3{color:var(--ink);letter-spacing:-.02em;font-size:1.12rem;font-weight:800}.admin-card-link{color:var(--primary-strong);transition:all var(--transition-fast);border-bottom:1px solid #0000;flex:none;align-self:center;font-size:.88rem;font-weight:600;text-decoration:none}.admin-card-link:hover{color:var(--primary);border-bottom-color:var(--primary)}.admin-card-meta{color:var(--muted);align-self:center;font-size:.84rem;font-weight:600}.admin-finance-bars{gap:18px;display:grid}.admin-finance-bar-row{gap:8px;display:grid}.admin-finance-bar-label{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.admin-finance-bar-label>span:not(.admin-finance-dot){color:var(--muted);flex:1;font-size:.88rem;font-weight:600}.admin-finance-bar-label strong{color:var(--ink);font-variant-numeric:tabular-nums;font-size:.95rem;font-weight:750}.admin-finance-dot{border-radius:999px;flex:none;width:10px;height:10px}.admin-finance-bar-track{background:var(--field);border-radius:999px;height:10px;overflow:hidden}.admin-finance-bar-track i{border-radius:999px;height:100%;transition:width .8s cubic-bezier(.4,0,.2,1);display:block}.admin-finance-footer{border-top:1px solid var(--line);grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin-top:24px;padding-top:20px;display:grid}.admin-finance-footer div{border-radius:var(--radius-md);background:var(--field);border:1px solid var(--line);transition:all var(--transition-normal);gap:4px;padding:14px 16px;display:grid}.admin-finance-footer div:hover{background:var(--panel);border-color:var(--primary-ring);box-shadow:var(--shadow-xs)}.admin-finance-footer span{color:var(--muted);text-transform:uppercase;letter-spacing:.05em;font-size:.78rem;font-weight:700}.admin-finance-footer strong{color:var(--ink);letter-spacing:-.02em;font-size:1.15rem;font-weight:850}.admin-dashboard-calendar-grid{grid-template-columns:repeat(7,minmax(0,1fr));gap:8px;display:grid}.admin-dashboard-calendar-dayname{color:var(--muted);text-transform:uppercase;letter-spacing:.06em;text-align:center;padding-bottom:6px;font-size:.76rem;font-weight:700}.admin-dashboard-calendar-cell{border-radius:var(--radius-md);background:var(--field);min-height:56px;color:var(--ink);text-align:center;transition:all var(--transition-fast);border:1px solid #0000;align-content:center;justify-items:center;gap:4px;padding:8px 6px;display:grid}.admin-dashboard-calendar-cell:not(.is-outside):hover{background:var(--field)}@supports (color:color-mix(in lab, red, red)){.admin-dashboard-calendar-cell:not(.is-outside):hover{background:color-mix(in srgb, var(--field) 90%, var(--primary-soft))}}.admin-dashboard-calendar-cell:not(.is-outside):hover{transform:scale(1.03)}.admin-dashboard-calendar-cell strong{font-size:.95rem;font-weight:700}.admin-dashboard-calendar-cell small{color:var(--primary-strong);text-overflow:ellipsis;white-space:nowrap;max-width:100%;font-size:.62rem;font-weight:600;line-height:1.1;overflow:hidden}.admin-dashboard-calendar-cell.is-today{border-color:var(--primary);background:var(--primary-soft);box-shadow:0 0 0 2px var(--primary-ring)}.admin-dashboard-calendar-cell.has-event{align-content:start;padding-top:10px}.admin-contact-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;display:grid}.admin-contact-card{border:1px solid var(--line-strong);border-radius:var(--radius-md);background:var(--panel);min-height:78px;color:var(--ink);transition:all var(--transition-normal);align-items:center;gap:14px;padding:14px 18px;text-decoration:none;display:flex}.admin-contact-card:hover{border-color:var(--contact-accent,var(--primary))}@supports (color:color-mix(in lab, red, red)){.admin-contact-card:hover{border-color:color-mix(in srgb, var(--contact-accent,var(--primary)) 35%, var(--line-strong))}}.admin-contact-card:hover{background:var(--contact-accent,var(--primary))}@supports (color:color-mix(in lab, red, red)){.admin-contact-card:hover{background:color-mix(in srgb, var(--contact-accent,var(--primary)) 6%, var(--panel))}}.admin-contact-card:hover{box-shadow:var(--shadow-sm);transform:translateY(-2px)}.admin-contact-icon{background:var(--contact-accent,var(--primary));border-radius:50%;flex:none;place-items:center;width:40px;height:40px;display:grid}@supports (color:color-mix(in lab, red, red)){.admin-contact-icon{background:color-mix(in srgb, var(--contact-accent,var(--primary)) 12%, var(--field))}}.admin-contact-icon{color:var(--contact-accent,var(--primary));transition:all var(--transition-normal)}.admin-contact-icon svg{fill:none;stroke:currentColor;stroke-width:1.85px;stroke-linecap:round;stroke-linejoin:round;width:18px;height:18px}.admin-contact-copy{gap:2px;min-width:0;display:grid}.admin-contact-copy small{color:var(--muted);font-size:.78rem;font-weight:600}.admin-contact-copy strong{text-overflow:ellipsis;white-space:nowrap;font-size:.92rem;font-weight:700;overflow:hidden}.admin-contact-card:hover .admin-contact-icon{transform:scale(1.05)rotate(-5deg)}.admin-contact-card--blue{--contact-accent:#130c44}.admin-contact-card--cyan{--contact-accent:#0891b2}.admin-contact-card--gold{--contact-accent:#d97706}.admin-contact-card--emerald{--contact-accent:#0284c7}.admin-feed{gap:0;padding-left:6px;display:grid;position:relative}.admin-feed:before{content:"";background:var(--line);width:2px;position:absolute;top:10px;bottom:10px;left:10px}.admin-feed-item{border-bottom:1px solid var(--line);transition:all var(--transition-normal);grid-template-columns:20px minmax(0,1fr);gap:16px;padding:14px 0;display:grid;position:relative}.admin-feed-item:last-child{border-bottom:0;padding-bottom:0}.admin-feed-marker{background:var(--primary);border:2px solid var(--panel);width:10px;height:10px;box-shadow:0 0 0 4px var(--primary-soft);z-index:2;border-radius:999px;margin-top:6px}.admin-feed-item time{color:var(--muted);margin-bottom:2px;font-size:.76rem;font-weight:600;display:block}.admin-feed-item strong{color:var(--ink);font-size:.92rem;font-weight:700;display:block}.admin-feed-item p{color:var(--muted);margin-top:4px;font-size:.86rem;line-height:1.5}.admin-feed-item small{color:var(--muted-light);margin-top:4px;font-size:.78rem;display:block}.admin-feed-item:hover{transform:translate(4px)}.admin-feed-item--blue .admin-feed-marker{border-color:var(--panel);background:#130c44;box-shadow:0 0 0 4px #eff6ff}.admin-feed-item--emerald .admin-feed-marker{border-color:var(--panel);background:#0284c7;box-shadow:0 0 0 4px #eff6ff}.admin-feed-item--gold .admin-feed-marker{border-color:var(--panel);background:#d97706;box-shadow:0 0 0 4px #fffbeb}.admin-feed-empty{color:var(--muted);text-align:center;padding:16px 0;font-size:.92rem}.admin-dashboard .section-kicker{margin-bottom:4px}.school-app--admin .workspace-header{background:var(--panel);border-bottom:1px solid var(--line-strong);box-shadow:var(--shadow-xs);margin:-20px calc(-1*clamp(20px,3vw,36px)) 0}.school-app--admin .workspace-header-inner{padding:16px clamp(20px,3vw,36px)}.school-app--admin .workspace-eyebrow{color:var(--muted);font-size:.84rem;font-weight:600}.school-app--admin .workspace-header h1{color:var(--ink);letter-spacing:-.02em;font-size:clamp(1.35rem,2vw,1.75rem);font-weight:800}.school-app--admin .workspace-date-chip{background:var(--field);border-color:var(--line-strong);box-shadow:none}.school-app--admin .workspace-date-chip span{color:var(--muted)}.school-app--admin .workspace-date-chip strong{color:var(--ink);font-weight:700}.school-app--admin .workspace-user-chip{background:var(--field);border-color:var(--line-strong)}.school-app--admin .notification-trigger{background:var(--field);color:var(--ink);border-color:var(--line-strong)}.school-app--admin .notification-trigger strong{background:var(--primary);color:#fff}.school-app--admin .toolbar-label,.school-app--admin .user-name strong{color:var(--ink)}.school-app--admin .user-name small{color:var(--muted)}.school-app--admin .rail-foot{background:var(--field);border-color:var(--line-strong)}.school-app--admin .panel{border-radius:var(--radius-lg)}.school-app--admin .role-insight-grid article{border-radius:var(--radius-md)}.school-app--admin .admin-table-panel{border-radius:var(--radius-lg);overflow:hidden}.school-app--admin .admin-record-row{transition:all var(--transition-normal);border-radius:var(--radius-md);padding:14px 16px}.school-app--admin .admin-record-row:hover{background:var(--field);border-color:#0000}@media (width<=900px){.school-app--admin .mobile-bar-title strong{color:var(--ink)}.school-app--admin .mobile-bar-eyebrow{color:var(--muted)}}.admin-workspace{gap:24px;display:grid}.admin-workspace .admin-stat-grid{gap:14px}.admin-stat-tile{border:1px solid var(--line-strong);border-radius:var(--radius-md);background:var(--panel);min-height:108px;box-shadow:var(--shadow-xs);transition:all var(--transition-normal);align-content:center;gap:6px;padding:18px 22px;display:grid}.admin-stat-tile:hover{border-color:var(--primary-ring);box-shadow:var(--shadow-sm);transform:translateY(-2px)}.admin-stat-tile span{color:var(--muted);font-size:.84rem;font-weight:600}.admin-stat-tile strong{color:var(--ink);letter-spacing:-.02em;overflow-wrap:anywhere;font-size:clamp(1.3rem,1.8vw,1.7rem);font-weight:800;line-height:1.1}.admin-stat-tile small{color:var(--muted-light);font-size:.8rem;line-height:1.45}.admin-stat-tile small a{color:var(--primary-strong);transition:border-color var(--transition-fast);border-bottom:1px solid #0000;font-weight:600;text-decoration:none}.admin-stat-tile small a:hover{border-bottom-color:var(--primary-strong)}.admin-insight-grid{grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:14px;display:grid}.admin-insight-card{border:1px solid var(--line-strong);border-radius:var(--radius-md);background:linear-gradient(180deg, var(--panel) 0%, var(--field) 100%);gap:6px;padding:18px 22px;display:grid}@supports (color:color-mix(in lab, red, red)){.admin-insight-card{background:linear-gradient(180deg, var(--panel) 0%, color-mix(in srgb, var(--field) 65%, var(--panel)) 100%)}}.admin-insight-card{box-shadow:var(--shadow-xs);transition:all var(--transition-normal)}.admin-insight-card:hover{border-color:var(--primary-ring);box-shadow:var(--shadow-sm)}.admin-insight-card span{color:var(--muted);text-transform:uppercase;letter-spacing:.05em;font-size:.78rem;font-weight:700}.admin-insight-card strong{color:var(--ink);letter-spacing:-.01em;font-size:1.05rem;font-weight:700}.admin-insight-card small{color:var(--muted);font-size:.86rem;line-height:1.55}.admin-workspace .panel,.admin-workspace .admin-card{border:1px solid var(--line-strong);border-radius:var(--radius-lg);background:var(--panel);box-shadow:var(--shadow-sm);padding:0;overflow:hidden}.admin-workspace .panel-head,.admin-workspace .admin-card-head{border-bottom:1px solid var(--line);background:var(--field);justify-content:space-between;align-items:center;gap:14px;margin:0;padding:18px 24px;display:flex}@supports (color:color-mix(in lab, red, red)){.admin-workspace .panel-head,.admin-workspace .admin-card-head{background:color-mix(in srgb, var(--field) 65%, var(--panel))}}.admin-workspace .panel-head h2,.admin-workspace .panel-head h3,.admin-workspace .admin-card-head h2,.admin-workspace .admin-card-head h3{color:var(--ink);letter-spacing:-.02em;margin:0;font-size:1.08rem;font-weight:800}.admin-workspace .panel-head>span,.admin-workspace .admin-card-meta{color:var(--muted);font-size:.84rem;font-weight:600}.admin-workspace .panel>:not(.panel-head):not(.admin-table):not(.admin-table-head),.admin-workspace .admin-card>:not(.admin-card-head):not(.admin-table){padding:18px 24px 24px}.admin-workspace .panel .form-grid,.admin-workspace .admin-card .form-grid,.admin-workspace .panel .detail-list,.admin-workspace .admin-card .detail-list,.admin-workspace .panel .noticeboard-stack,.admin-workspace .panel .permission-cloud,.admin-workspace .panel .theme-settings-note,.admin-workspace .panel .theme-color-grid,.admin-workspace .panel .theme-settings-actions,.admin-workspace .panel .muted-copy,.admin-workspace .panel .role-note,.admin-workspace .panel .danger-form,.admin-workspace .panel .ops-links,.admin-workspace .panel .p-4{padding:24px}.admin-workspace .panel .admin-table,.admin-workspace .admin-card .admin-table{border-top:0;padding:0 24px 24px}.admin-workspace .panel .admin-table-head{padding-top:4px}.admin-workspace .panel .empty-state,.admin-workspace .admin-card .empty-state,.admin-workspace .admin-feed-empty{text-align:center;color:var(--muted);margin:0;padding:24px;font-size:.92rem;line-height:1.6}.admin-workspace .panel-grid.two,.admin-workspace .admin-detail-grid{grid-template-columns:repeat(2,minmax(0,1fr));align-items:start;gap:24px;display:grid}.admin-workspace .theme-settings-layout{grid-template-columns:minmax(0,1.2fr) minmax(280px,.8fr);align-items:start;gap:24px;display:grid}.admin-workspace .theme-settings-form.panel,.admin-workspace .theme-preview-panel{padding:0}.admin-workspace .theme-preview-panel .theme-preview-shell{margin:0 24px 24px}.admin-workspace .admin-form-panel .form-grid{padding-bottom:24px}.admin-workspace .admin-form-panel button,.admin-workspace .admin-form-panel .primary-action{margin:0 24px 24px}.admin-workspace .admin-toolbar-card{border:1px dashed var(--primary);padding:24px}@supports (color:color-mix(in lab, red, red)){.admin-workspace .admin-toolbar-card{border:1px dashed color-mix(in srgb, var(--primary) 25%, var(--line-strong))}}.admin-workspace .admin-toolbar-card{border-radius:var(--radius-lg);background:var(--primary-soft)}@supports (color:color-mix(in lab, red, red)){.admin-workspace .admin-toolbar-card{background:color-mix(in srgb, var(--primary-soft) 40%, var(--panel))}}.admin-workspace .admin-toolbar-card p{color:var(--muted);margin:0 0 16px;line-height:1.6}.admin-workspace .admin-toolbar-actions{flex-wrap:wrap;gap:10px;display:flex}.admin-profile-banner{border:1px solid var(--line-strong);border-radius:var(--radius-lg);background:var(--panel);box-shadow:var(--shadow-sm);grid-template-columns:64px minmax(0,1fr) auto;align-items:center;gap:20px;padding:24px;display:grid}.admin-profile-avatar{border-radius:var(--radius-md);background:linear-gradient(135deg, var(--primary) 0%, var(--primary-strong) 100%);color:#fff;text-transform:uppercase;place-items:center;width:64px;height:64px;font-size:1.25rem;font-weight:800;display:grid;box-shadow:0 8px 16px #130c4426}.admin-profile-copy h2{letter-spacing:-.02em;color:var(--ink);margin:0;font-size:1.4rem;font-weight:800}.admin-profile-copy p{color:var(--muted);margin:4px 0 0;font-size:.92rem}.admin-profile-badges{flex-wrap:wrap;justify-content:flex-end;gap:8px;display:flex}.admin-profile-badge{background:var(--field);border:1px solid var(--line-strong);min-height:32px;color:var(--ink);border-radius:999px;align-items:center;padding:0 14px;font-size:.82rem;font-weight:600;display:inline-flex}.admin-profile-badge.is-active{background:var(--primary-soft);color:var(--primary-strong);border-color:var(--primary)}@supports (color:color-mix(in lab, red, red)){.admin-profile-badge.is-active{border-color:color-mix(in srgb, var(--primary) 25%, transparent)}}.admin-profile-badge.is-role{background:var(--primary)}@supports (color:color-mix(in lab, red, red)){.admin-profile-badge.is-role{background:color-mix(in srgb, var(--primary) 10%, var(--field))}}.admin-profile-badge.is-role{color:var(--primary-strong)}.admin-workspace .detail-list{border-top:1px solid var(--line)}.admin-workspace .detail-list div{padding:14px 0}.admin-workspace .detail-list span{color:var(--muted);font-size:.84rem;font-weight:600}.admin-workspace .detail-list strong{color:var(--ink);font-weight:600}.admin-workspace .detail-list a{color:var(--primary-strong);font-weight:600;text-decoration:none}.admin-workspace .detail-list a:hover{text-decoration:underline}.admin-workspace .ops-links{gap:10px;display:grid}.admin-workspace .ops-links a{border:1px solid var(--line-strong);border-radius:var(--radius-md);background:var(--field);color:var(--ink);transition:all var(--transition-normal);gap:4px;padding:16px 18px;text-decoration:none;display:grid}.admin-workspace .ops-links a:hover{border-color:var(--primary);background:var(--primary-soft);transform:translate(6px)}.admin-workspace .ops-links strong{font-size:.95rem;font-weight:700}.admin-workspace .ops-links span{color:var(--muted);font-size:.84rem}.admin-workspace .noticeboard-item{border-radius:var(--radius-md);border-color:var(--line-strong);background:var(--field);border:1px solid var(--line-strong);padding:18px}.admin-workspace .permission-cloud.polished span{background:var(--primary-soft);color:var(--primary-strong);border-color:var(--primary)}@supports (color:color-mix(in lab, red, red)){.admin-workspace .permission-cloud.polished span{border-color:color-mix(in srgb, var(--primary) 20%, var(--line-strong))}}.admin-workspace .pagination{padding:8px 0}.admin-workspace .pagination nav{flex-wrap:wrap;gap:6px;display:flex}.admin-workspace .pagination a,.admin-workspace .pagination span{border:1px solid var(--line-strong);border-radius:var(--radius-sm);background:var(--panel);min-height:38px;color:var(--ink);transition:all var(--transition-fast);align-items:center;padding:0 14px;font-size:.88rem;font-weight:600;text-decoration:none;display:inline-flex}.admin-workspace .pagination a:hover{background:var(--field);border-color:var(--primary-ring)}.admin-workspace .pagination span[aria-current=page]{background:var(--primary);color:#fff;border-color:var(--primary);box-shadow:0 4px 10px #130c4426}.admin-workspace .danger-form{border-top:1px solid var(--line);margin-top:20px;padding-top:20px}.admin-workspace .muted-copy{color:var(--muted);font-size:.92rem;line-height:1.6}.admin-workspace .status-pill{text-transform:capitalize;border-radius:999px;align-items:center;min-height:28px;padding:0 12px;font-size:.78rem;font-weight:700;display:inline-flex}.admin-workspace .status-pill.paid{color:#130c44;background:#eff6ff;border:1px solid #130c4433}.admin-workspace .status-pill.partial{color:#b45309;background:#fef3c7;border:1px solid #f59e0b33}.admin-workspace .status-pill.unpaid{color:#b91c1c;background:#fee2e2;border:1px solid #ef444433}.admin-workspace .role-badge{background:var(--primary-soft);color:var(--primary-strong);border:1px solid var(--primary)}@supports (color:color-mix(in lab, red, red)){.admin-workspace .role-badge{border:1px solid color-mix(in srgb, var(--primary) 15%, transparent)}}.admin-workspace .role-badge{font-weight:600}.admin-workspace .admin-table article:not(.admin-record-row){border-bottom:1px solid var(--line);grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:14px;padding:16px 0;display:grid}.admin-workspace .backup-table article{grid-template-columns:auto auto minmax(0,1fr) auto}.admin-workspace .backup-table form button{min-height:36px;padding:0 14px;font-size:.84rem}@media (width<=900px){.admin-insight-grid,.admin-workspace .panel-grid.two,.admin-workspace .admin-detail-grid,.admin-workspace .theme-settings-layout{grid-template-columns:1fr}.admin-profile-banner{grid-template-columns:52px minmax(0,1fr)}.admin-profile-badges{grid-column:1/-1;justify-content:flex-start}}@media (width<=640px){.admin-workspace .admin-stat-grid,.admin-insight-grid{grid-template-columns:1fr}}.noticeboard-stack{gap:14px;display:grid}.noticeboard-item{border:1px solid var(--line-strong);border-radius:var(--radius-md);background:var(--field);gap:12px;padding:16px;display:grid}.noticeboard-item-head{grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:12px;display:grid}.noticeboard-item-head input{min-height:40px}.noticeboard-edit-form{gap:10px;display:grid}.noticeboard-edit-form textarea{min-height:110px}.noticeboard-item-actions{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:10px;display:flex}.noticeboard-item-actions .check-line{margin:0}.noticeboard-item-actions button{margin-left:auto}.gateway-settings-list{gap:14px;display:grid}.gateway-settings-item{border:1px solid var(--line-strong);border-radius:var(--radius-md);background:var(--field);gap:12px;padding:16px;display:grid}.gateway-edit-form{gap:12px;display:grid}.gateway-edit-form textarea{min-height:96px}.gateway-settings-head{grid-template-columns:minmax(0,1fr) auto;align-items:start;gap:12px;display:grid}.gateway-settings-head small{color:var(--muted);overflow-wrap:anywhere;margin-top:3px;font-weight:500;display:block}.gateway-settings-actions{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:10px;display:flex}.gateway-settings-actions .check-line{margin:0}.gateway-settings-actions button{margin-left:auto}.gateway-status-form{border-top:1px solid var(--line);justify-content:flex-end;padding-top:12px;display:flex}.gallery-settings-list{gap:14px;margin-bottom:18px;display:grid}.gallery-settings-item{border:1px solid var(--line-strong);border-radius:var(--radius-md);background:var(--field);gap:12px;padding:16px;display:grid}.gallery-settings-head{grid-template-columns:72px minmax(0,1fr);align-items:center;gap:14px;display:grid}.gallery-settings-thumb{border:1px solid var(--line);background:#eff6ff;border-radius:8px;place-items:center;width:72px;height:60px;display:grid;overflow:hidden}.gallery-settings-thumb img{object-fit:cover;width:100%;height:100%}.gallery-settings-edit-form{grid-template-columns:minmax(0,1fr) minmax(0,1fr) auto;align-items:center;gap:10px;display:grid}.gallery-settings-actions{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.gallery-settings-actions form{display:contents}.gallery-settings-add-form{gap:14px;display:grid}@media (width<=640px){.gallery-settings-head{grid-template-columns:60px minmax(0,1fr)}.gallery-settings-edit-form{grid-template-columns:1fr}}.admin-table-panel{overflow:hidden}.admin-table{border-top:1px solid var(--line-strong);display:grid}.admin-table-head,.admin-table article,.admin-record-row{border-bottom:1px solid var(--line);color:var(--ink);border-radius:var(--radius-md);transition:all var(--transition-normal);grid-template-columns:minmax(220px,1.2fr) minmax(120px,.7fr) minmax(150px,.8fr) minmax(110px,auto);align-items:center;gap:14px;padding:14px 16px;text-decoration:none;display:grid}.admin-table.compact article,.admin-table.compact .admin-record-row{grid-template-columns:minmax(0,1fr) auto auto}.admin-table.backup-table article{grid-template-columns:120px 150px minmax(0,1fr) auto}.admin-table-head{color:var(--muted);text-transform:uppercase;letter-spacing:.05em;background:var(--field);font-size:.8rem;font-weight:700}@supports (color:color-mix(in lab, red, red)){.admin-table-head{background:color-mix(in srgb, var(--field) 40%, var(--panel))}}.admin-table-head{border-bottom:2px solid var(--line-strong);border-radius:0;margin-bottom:8px}.admin-table article strong,.admin-record-row strong{color:var(--ink)}.admin-table article small,.admin-record-row small{color:var(--muted);overflow-wrap:anywhere;margin-top:3px;font-weight:500;display:block}.admin-table article>span,.admin-record-row>span{color:var(--muted);overflow-wrap:anywhere;font-size:.9rem;font-weight:500}.admin-record-row:hover{background:var(--field);box-shadow:var(--shadow-xs);border-color:#0000;transform:translate(4px)}.admin-record-row:hover strong{color:var(--primary-strong)}.danger-form{border-top:1px solid var(--line);margin-top:18px;padding-top:16px}.inline-delete-form{margin:0;display:inline-flex}.danger-button{color:#fff;transition:all var(--transition-fast);background:#b91c1c}.danger-button:hover{box-shadow:var(--glow-danger);background:#991b1b;transform:translateY(-1px)}.role-badge{background:var(--primary-soft);border:1px solid var(--primary);border-radius:999px;justify-self:start;align-items:center;min-height:28px;padding:4px 12px;font-size:.8rem;font-weight:700;display:inline-flex;color:var(--primary-strong)!important}@supports (color:color-mix(in lab, red, red)){.role-badge{border:1px solid color-mix(in srgb, var(--primary) 15%, transparent)}}.empty-state{color:var(--muted);text-align:center;padding:24px 0}.admin-form-panel{max-width:980px}.permission-cloud.polished span,.permission-cloud label{background:var(--primary-soft);color:var(--primary-strong);border:1px solid var(--primary);align-items:center;gap:7px;display:inline-flex}@supports (color:color-mix(in lab, red, red)){.permission-cloud.polished span,.permission-cloud label{border:1px solid color-mix(in srgb, var(--primary) 20%, var(--line-strong))}}.permission-cloud.polished span,.permission-cloud label{transition:all var(--transition-fast);border-radius:999px;padding:8px 14px;font-size:.86rem;font-weight:700}.permission-cloud label{cursor:pointer}.permission-cloud label:hover{background:var(--primary);color:#fff;border-color:var(--primary)}.permission-cloud label input{cursor:pointer;width:auto;min-height:auto}.detail-list{border-top:1px solid var(--line);display:grid}.detail-list div{border-bottom:1px solid var(--line);grid-template-columns:160px minmax(0,1fr);gap:14px;padding:14px 0;display:grid}.detail-list span{color:var(--muted);font-size:.9rem;font-weight:600}.detail-list strong{color:var(--ink);overflow-wrap:anywhere;font-weight:700}.role-insight-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;display:grid}.role-insight-grid article,.role-note{border:1px solid var(--line-strong);border-radius:var(--radius-md);background:var(--field);transition:all var(--transition-normal);padding:16px}.role-insight-grid article:hover{border-color:var(--primary-ring);box-shadow:var(--shadow-xs)}.role-insight-grid span,.role-insight-grid small,.role-note span{color:var(--muted);font-size:.84rem}.role-insight-grid strong,.role-note strong{color:var(--ink);font-size:1rem;font-weight:750;display:block}.role-note span{margin-top:4px;display:block}.role-fields{gap:10px;display:grid}.panel-head.compact{background:0 0;border-bottom:0;margin-bottom:8px;padding-inline:0}.sample-link-grid{grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:10px;display:grid}.sample-link-grid a{border-radius:var(--radius-md);background:var(--primary-soft);color:var(--primary-strong);border:1px solid var(--primary);padding:12px;font-weight:700;text-decoration:none;display:block}@supports (color:color-mix(in lab, red, red)){.sample-link-grid a{border:1px solid color-mix(in srgb, var(--primary) 20%, transparent)}}.sample-link-grid a{text-align:center;transition:all var(--transition-fast)}.sample-link-grid a:hover{background:var(--primary);color:#fff;border-color:var(--primary);transform:translateY(-1px)}.grade-class-reference{border:1px solid var(--line-strong);border-radius:var(--radius-md);background:var(--field);margin-top:6px;overflow:hidden}.reference-toggle{text-align:left;cursor:pointer;background:0 0;border:0;border-radius:0;flex-direction:column;align-items:flex-start;gap:2px;width:100%;padding:14px 40px 14px 16px;display:flex;position:relative}.reference-toggle:hover{background:var(--primary-soft)}.reference-toggle span{color:var(--ink);font-size:.92rem;font-weight:700}.reference-toggle small{color:var(--muted);font-size:.82rem}.reference-toggle:after{content:"›";color:var(--muted);transition:transform var(--transition-fast);font-size:1.2rem;font-weight:900;line-height:1;position:absolute;top:50%;right:16px;transform:translateY(-50%)rotate(90deg)}.reference-toggle[aria-expanded=true]:after{transform:translateY(-50%)rotate(-90deg)}.reference-body{gap:10px;padding:0 16px 16px;display:grid}.reference-download-row{justify-content:flex-start;margin:0}.reference-table-wrap{border:1px solid var(--line-strong);border-radius:var(--radius-sm);max-height:280px;overflow:auto}.reference-table{border-collapse:collapse;width:100%;font-size:.85rem}.reference-table thead th{background:var(--field);color:var(--muted);text-align:left;border-bottom:1px solid var(--line-strong);padding:8px 10px;font-weight:700;position:sticky;top:0}.reference-table td{border-bottom:1px solid var(--line-strong);vertical-align:middle;padding:6px 10px}.reference-table tbody tr:last-child td{border-bottom:0}.copy-chip{border:1px solid var(--primary);border-radius:999px;align-items:center;gap:4px;min-height:26px;padding:0 11px;display:inline-flex}@supports (color:color-mix(in lab, red, red)){.copy-chip{border:1px solid color-mix(in srgb, var(--primary) 18%, transparent)}}.copy-chip{background:var(--primary-soft);color:var(--primary-strong);font:inherit;cursor:pointer;vertical-align:middle;transition:all var(--transition-fast);font-size:.78rem;font-weight:700}.copy-chip:hover,.copy-chip.is-copied{background:var(--primary);color:#fff;border-color:var(--primary)}.copy-chip--muted,.id-chip{background:var(--field);color:var(--muted);border-color:var(--line-strong)}.copy-chip--muted:hover,.copy-chip--muted.is-copied{background:var(--primary);color:#fff;border-color:var(--primary)}.id-chip{border:1px solid var(--line-strong);vertical-align:middle;border-radius:999px;align-items:center;min-height:24px;margin-left:8px;padding:0 10px;font-size:.74rem;font-weight:700;display:inline-flex}.import-preview-panel{overflow:hidden}.import-preview-list{gap:10px;padding:0 24px 24px;display:grid}.import-preview-row{border:1px solid var(--line-strong);border-radius:var(--radius-md);background:var(--field);grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:10px 14px;padding:14px;display:grid}.import-preview-row>small{color:var(--muted);grid-column:1/-1;line-height:1.45}.import-preview-row.is-ready{background:#f0fdf4;border-color:#bbf7d0}.import-preview-row.is-skipped{background:#fff7ed;border-color:#fed7aa}.import-preview-row strong{color:var(--ink)}.import-preview-row div small{color:var(--muted);margin-top:3px;display:block}.work-page-head .primary-action{align-self:center}.work-grid{grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:14px;display:grid}.work-card{color:#12213f;background:#fff;border:1px solid #c6d7f2;border-radius:8px;align-content:start;gap:12px;min-height:218px;padding:18px;text-decoration:none;transition:transform .16s,border-color .16s,box-shadow .16s;display:grid;box-shadow:0 14px 34px #0f172a0b}.work-card:hover{border-color:#c9c6dc;transform:translateY(-2px);box-shadow:0 18px 40px #0f172a12}.work-card-top,.work-meta{justify-content:space-between;align-items:center;gap:10px;display:flex}.work-card-top span,.work-card-top strong,.work-meta span{border-radius:999px;align-items:center;min-height:28px;padding:5px 9px;font-size:.78rem;font-weight:900;display:inline-flex}.work-card-top span{color:#130c44;background:#eff6ff}.work-card-top strong{color:#5d708f;background:#f7faff;border:1px solid #dbe7f7}.work-card h3{color:#12213f;font-size:1.12rem;font-weight:950;line-height:1.2}.work-card p{color:#5d708f;line-height:1.55}.work-meta{border-top:1px solid #e8f0ff;margin-top:auto;padding-top:10px}.work-meta span{color:#5d708f;border-radius:0;padding:0}.material-card .work-card-top span{color:#130c44;background:#eff6ff}.empty-work-panel{grid-column:1/-1;justify-items:start;gap:8px;display:grid}.work-create-panel{gap:14px;display:grid}.drop-upload{color:#38506f;text-align:center;cursor:pointer;background:#f7faff;border:1.5px dashed #c9c6dc;border-radius:8px;place-items:center;gap:7px;min-height:132px;padding:18px;display:grid;position:relative}.drop-upload:hover{background:#eff6ff;border-color:#130c44}.drop-upload input{opacity:0;cursor:pointer;position:absolute;inset:0}.drop-upload span{color:#12213f;font-weight:950}.drop-upload small{color:#5d708f}.upload-preview{z-index:1;text-align:left;gap:8px;width:100%;margin-top:8px;display:grid;position:relative}.upload-preview[hidden]{display:none}.upload-preview-item{background:#fff;border:1px solid #dbe7f7;border-radius:8px;grid-template-columns:54px minmax(0,1fr);align-items:center;gap:12px;padding:10px;display:grid}.upload-preview img{object-fit:cover;border:1px solid #dbe7f7;border-radius:8px;width:54px;height:54px}.upload-preview strong{color:#12213f;overflow-wrap:anywhere;font-size:.9rem;display:block}.upload-preview small{color:#5d708f;margin-top:3px;display:block}.upload-preview-icon{color:#130c44;background:#eff6ff;border-radius:8px;place-items:center;width:54px;height:54px;font-size:.78rem;font-weight:950;display:grid}.work-detail-hero{background:#fff;border:1px solid #c6d7f2;border-radius:8px;grid-template-columns:minmax(0,1fr) auto;align-items:end;gap:18px;padding:24px;display:grid;box-shadow:0 16px 38px #0f172a0b}.work-detail-hero h2{color:#12213f;max-width:840px;font-size:clamp(1.9rem,3.2vw,2.8rem);font-weight:950;line-height:1.02}.work-detail-hero p{color:#5d708f;margin-top:8px}.work-detail-actions{flex-wrap:wrap;justify-content:flex-end;gap:9px;display:flex}.work-detail-grid{align-items:start}.work-rich-text{color:#263a33;line-height:1.75}.work-rich-text p+p,.work-rich-text ul,.work-rich-text ol{margin-top:12px}.work-rich-text ul,.work-rich-text ol{padding-left:22px}.file-preview-list{gap:14px;display:grid}.file-preview-frame{background:#f7faff;border:1px solid #dbe7f7;border-radius:8px;place-items:center;min-height:360px;display:grid;overflow:hidden}.file-preview-frame iframe,.file-preview-frame video{background:#fff;border:0;width:100%;min-height:520px}.file-preview-frame img{object-fit:contain;max-width:100%;max-height:620px;display:block}.file-preview-frame audio{width:min(100%,620px)}.file-preview-empty{text-align:center;justify-items:center;gap:8px;padding:24px;display:grid}.file-preview-empty strong{color:#12213f;overflow-wrap:anywhere;font-size:1.05rem}.file-preview-empty span{color:#5d708f}.attachment-grid{grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:12px;display:grid}.attachment-card{background:#f7faff;border:1px solid #dbe7f7;border-radius:8px;grid-template-columns:58px minmax(0,1fr) auto;align-items:center;gap:12px;min-height:92px;padding:14px;display:grid}.attachment-icon{color:#130c44;text-transform:uppercase;background:#eff6ff;border-radius:8px;place-items:center;width:58px;height:58px;font-size:.76rem;font-weight:950;display:grid}.attachment-card strong{color:#12213f;overflow-wrap:anywhere;font-size:.95rem;font-weight:950;display:block}.attachment-card span{color:#5d708f;margin-top:3px;font-size:.84rem;display:block}.attachment-actions{gap:7px;display:flex}.attachment-actions a{color:#130c44;background:#fff;border:1px solid #c6d7f2;border-radius:8px;place-items:center;width:36px;height:36px;display:inline-grid}.attachment-actions a:hover{background:#edf8f2;border-color:#7bc7a8}.attachment-actions svg{fill:none;stroke:currentColor;stroke-width:1.9px;stroke-linecap:round;stroke-linejoin:round;width:18px;height:18px}.submission-list{gap:14px;display:grid}.submission-card{background:#f7faff;border:1px solid #dbe7f7;border-radius:8px;gap:12px;padding:14px;display:grid}.submission-card-head{justify-content:space-between;align-items:flex-start;gap:12px;display:flex}.submission-card-head strong{color:#12213f;font-size:.96rem;font-weight:950}.submission-card-head small{color:#5d708f;margin-top:4px;display:block}.submission-statuses{flex-wrap:wrap;justify-content:flex-end;gap:8px;display:flex}.compact-attachments{grid-template-columns:repeat(auto-fit,minmax(220px,1fr))}.submission-note{background:#fff;border:1px solid #dbe7f7;border-radius:8px;gap:5px;padding:12px;display:grid}.submission-note span{color:#5d708f;text-transform:uppercase;font-size:.78rem;font-weight:900}.submission-note p{color:#263a33;line-height:1.6}.grading-form{background:#fff;border:1px solid #dbe7f7;border-radius:8px;gap:10px;padding:14px;display:grid}.grading-form-head{justify-content:space-between;align-items:flex-start;gap:12px;display:flex}.grading-form-head h3{color:#12213f;font-size:.98rem;font-weight:950}.grading-form-head p,.grading-form-head small{color:#5d708f;font-size:.84rem}.grading-meta{background:#f7faff;border:1px solid #dbe7f7;border-radius:8px;align-content:center;min-height:42px;padding:8px 12px;display:grid}.grading-meta span{color:#5d708f;text-transform:uppercase;font-size:.74rem;font-weight:850}.grading-meta strong{color:#12213f;font-size:1rem;font-weight:950}.submission-form{margin-top:14px}.report-batch-list{gap:12px;display:grid}.report-batch-card{color:#12213f;background:#f7faff;border:1px solid #dbe7f7;border-radius:8px;gap:10px;padding:16px;text-decoration:none;display:grid;box-shadow:0 10px 24px #0f172a09}.report-batch-card:hover{background:#f6f9ff;border-color:#c9c6dc}.report-batch-card.is-active{background:#eff6ff;border-color:#130c44;box-shadow:0 16px 32px #130c4414}.report-batch-top,.report-batch-meta{justify-content:space-between;align-items:center;gap:10px;display:flex}.report-batch-top strong,.report-batch-card h3{color:#12213f;font-weight:950}.report-batch-card h3{font-size:1.02rem}.report-batch-card p,.report-batch-meta span{color:#5d708f}.report-add-subject:before{content:none}.report-preview-summary{grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin-bottom:16px;display:grid}.report-preview-summary div{background:#f7faff;border:1px solid #dbe7f7;border-radius:8px;padding:14px}.report-preview-summary span{color:#5d708f;font-size:.82rem}.report-preview-summary strong{color:#12213f;margin-top:5px;font-size:1.02rem;font-weight:950;display:block}.report-picker-panel,.report-entry-panel{padding:14px}.compact-report-selection{margin-bottom:10px}.compact-report-selection div{padding:10px 0}.report-pupil-list{gap:8px;max-height:320px;margin-top:10px;display:grid;overflow-y:auto}.report-pupil-option{text-align:left;border-radius:8px;justify-items:start;gap:4px;width:100%;display:grid;color:#12213f!important;box-shadow:none!important;background:#f7faff!important;border:1px solid #dbe7f7!important;padding:12px!important}.report-pupil-option strong{font-size:.92rem;font-weight:950}.report-pupil-option small{color:#5d708f}.report-pupil-option.is-selected{background:#eff6ff!important;border-color:#130c44!important}.report-grade-rows{gap:10px;display:grid}.report-grade-row{background:#f7faff;border:1px solid #dbe7f7;border-radius:8px;grid-template-columns:minmax(0,1fr) auto;align-items:start;gap:10px;padding:12px;display:grid}.report-grade-grid{grid-template-columns:1.2fr .7fr .7fr 1.2fr}.report-grade-remove{min-height:42px;padding:0 12px;color:#991b1b!important;box-shadow:none!important;background:#fff!important;border:1px solid #fecaca!important}.report-full-grid{grid-template-columns:repeat(auto-fit,minmax(320px,1fr));gap:14px;display:grid}.report-full-card{background:#f7faff;border:1px solid #dbe7f7;border-radius:8px;gap:14px;padding:16px;display:grid}.report-full-head{justify-content:space-between;align-items:flex-start;gap:10px;display:flex}.report-full-head strong{color:#12213f;font-size:1rem;font-weight:950}.report-full-head small{color:#5d708f;margin-top:4px;display:block}.report-expand-card{gap:0;padding:0}.report-expand-summary{cursor:pointer;justify-content:space-between;align-items:center;gap:12px;padding:16px;list-style:none;display:flex}.report-expand-summary::-webkit-details-marker{display:none}.report-expand-summary strong{color:#12213f;font-size:1rem;font-weight:950}.report-expand-summary small{color:#5d708f;margin-top:4px;display:block}.report-expand-label{color:#130c44;white-space:nowrap;background:#fff;border:1px solid #c6d7f2;border-radius:999px;align-items:center;min-height:32px;padding:0 10px;font-size:.8rem;font-weight:900;display:inline-flex}.report-expand-card[open] .report-expand-label{background:#eff6ff;border-color:#c9c6dc}.report-expand-body{border-top:1px solid #dbe7f7;gap:14px;padding:0 16px 16px;display:grid}.report-draft-tools{gap:18px;display:grid}.report-draft-tool-grid{grid-template-columns:repeat(2,minmax(0,1fr));align-items:start;gap:16px;display:grid}.report-draft-tool-card{background:linear-gradient(#f7faff 0%,#fff 100%);border:1px solid #dbe7f7;border-radius:12px;gap:14px;padding:18px;display:grid;box-shadow:0 10px 24px #0f172a0a}.report-draft-tool-card h3{color:#12213f;letter-spacing:-.02em;font-size:1.05rem;font-weight:950}.report-draft-tool-card p{color:#5d708f;margin-top:4px;line-height:1.5}.report-modal-help{color:#5d708f;background:#f7fbf8;border:1px solid #dbe7f7;border-radius:10px;margin:0;padding:12px 14px;line-height:1.55}.report-publish-warning{background:#fffbeb;border:1px solid #fde68a;border-left:5px solid #d97706;border-radius:12px;gap:6px;padding:16px;display:grid}.report-publish-warning strong{color:#92400e;font-weight:950}.report-publish-warning p{color:#78350f;margin:0;line-height:1.55}.report-edit-form{gap:14px;display:grid}.report-edit-form label{color:#5d708f;text-transform:uppercase;letter-spacing:.04em;gap:8px;font-size:.78rem;font-weight:900;display:grid}.report-inline-grade-grid{gap:10px;display:grid}.report-inline-grade-row{background:#fff;border:1px solid #dbe7f7;border-radius:10px;grid-template-columns:minmax(140px,1fr) minmax(90px,.5fr) minmax(90px,.5fr) minmax(160px,1fr);align-items:center;gap:10px;padding:12px;display:grid}.report-inline-grade-row strong{color:#12213f;font-size:.9rem;font-weight:900}.report-inline-grade-row input{min-height:40px}.report-grade-summary{gap:10px;display:grid}.report-grade-summary div{background:#fff;border:1px solid #dbe7f7;border-radius:8px;padding:12px}.report-grade-summary span{color:#5d708f;font-size:.8rem;display:block}.report-grade-summary strong{color:#12213f;margin-top:5px;font-size:.95rem;font-weight:950;display:block}.report-grade-summary small{color:#5d708f;margin-top:4px;line-height:1.45;display:block}.year-group-list{gap:16px;display:grid}.year-group{gap:8px;display:grid}.year-group-head{border-bottom:1px solid #dbe7f7;justify-content:space-between;align-items:center;gap:10px;padding:0 0 8px;display:flex}.year-group-head strong{color:#12213f;font-size:1rem;font-weight:950}.year-group-head span{color:#5d708f;font-size:.84rem;font-weight:850}.year-group-head small{color:#5d708f;margin-top:4px;font-size:.8rem;display:block}.report-archive-masthead{gap:10px;display:grid}.report-archive-masthead h2{color:#12213f;font-size:clamp(1.45rem,2.5vw,2.05rem);font-weight:950;line-height:1.04}.report-archive-masthead p{color:#5d708f;max-width:760px;margin-top:6px}.report-archive-strip{grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin-top:2px;display:grid}.report-archive-strip div{background:#f7faff;border:1px solid #dbe7f7;border-radius:8px;gap:4px;padding:12px 14px;display:grid}.report-archive-strip span{color:#5d708f;font-size:.8rem;font-weight:850}.report-archive-strip strong{color:#12213f;font-size:.98rem;font-weight:950}.report-archive-layout{align-items:start}.report-archive-panel,.report-detail-panel{padding:18px}.report-year-block{background:0 0;border:0;gap:10px;padding:0}.report-archive-head-row{color:#5d708f;text-transform:uppercase;grid-template-columns:minmax(0,1fr) auto auto;gap:12px;padding:0 0 8px;font-size:.74rem;font-weight:900;display:grid}.report-year-rows{border-top:1px solid #e8f0ff;display:grid}.report-archive-row{color:#12213f;border-bottom:1px solid #e8f0ff;grid-template-columns:minmax(0,1fr) auto auto;align-items:center;gap:12px;padding:12px 0;text-decoration:none;display:grid}.report-archive-row:hover strong{color:#130c44}.report-archive-row.is-active{background:#f7fbf8;border-bottom-color:#0000;border-radius:8px;margin-inline:-10px;padding-inline:14px 10px;position:relative}.report-archive-row.is-active:before{content:"";background:#130c44;border-radius:999px;width:3px;position:absolute;top:10px;bottom:10px;left:0}.report-archive-row strong{color:#12213f;font-size:.95rem;font-weight:950}.report-archive-row small{color:#5d708f;margin-top:3px;font-size:.82rem;display:block}.report-archive-row>span:not(.role-badge){color:#526987;font-size:.84rem;font-weight:850}.report-detail-banner{border-bottom:1px solid #e8f0ff;justify-content:space-between;align-items:flex-start;gap:14px;margin-bottom:16px;padding:14px 0 16px;display:flex}.report-detail-banner h3{color:#12213f;font-size:1.15rem;font-weight:950;line-height:1.08}.report-detail-banner p{color:#5d708f;margin-top:4px;font-size:.88rem}.report-detail-banner>strong{color:#130c44;font-size:1.55rem;font-weight:950;line-height:1}.report-detail-list{margin-bottom:16px}.report-grade-table{border-top:1px solid #dbe7f7}.report-detail-empty{background:#f7faff;border:1px dashed #c6d7f2;border-radius:8px;justify-items:start;gap:6px;padding:18px;display:grid}.report-detail-empty strong{color:#12213f;font-size:1rem;font-weight:950}.report-detail-empty span{color:#5d708f;line-height:1.55}.auth-body{background:#eef4ff;min-height:100vh}.auth-page{background:#eef4ff;place-items:center;min-height:100vh;padding:24px;display:grid}.login-page{background:#130c44 var(--login-hero-image,url(https://images.pexels.com/photos/5676672/pexels-photo-5676672.jpeg?auto=compress&cs=tinysrgb&w=2400)) center / cover no-repeat;grid-template-columns:1fr;padding:clamp(18px,4vw,42px);position:relative;overflow:hidden}.login-page:before{content:"";-webkit-backdrop-filter:blur(1px);backdrop-filter:blur(1px);background:#130c449e;position:absolute;inset:0}.login-page>*{z-index:1;position:relative}.login-showcase{color:#fff;background:#130c44;border-radius:8px 0 0 8px;align-content:space-between;gap:28px;min-height:min(760px,100vh - 84px);padding:clamp(24px,4vw,44px);display:grid;box-shadow:0 24px 70px #0f172a24}.login-brand{align-items:center;gap:12px;padding-bottom:4px;display:flex}.login-brand>span{color:#fff;background:#130c44;border-radius:8px;place-items:center;width:40px;height:40px;font-weight:950;display:grid;box-shadow:0 10px 24px #130c442e}.login-brand strong,.login-brand small{display:block}.login-brand strong{color:#12213f;font-size:.98rem;font-weight:950}.login-brand small{color:#5d708f;font-size:.82rem;font-weight:760}.login-showcase-copy h1{color:#fff;max-width:620px;font-size:clamp(2.2rem,5vw,4.7rem);font-weight:950;line-height:.96}.login-showcase-copy p{color:#dbeafe;max-width:560px;margin-top:14px;font-size:1.03rem;line-height:1.65}.login-showcase .section-kicker{color:#c9c6dc}.login-showcase-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;display:grid}.login-showcase-grid div{background:#ffffff14;border:1px solid #ffffff29;border-radius:8px;align-content:center;gap:5px;min-height:112px;padding:16px;display:grid}.login-showcase-grid span,.login-showcase-grid small{color:#bfdbfe;font-weight:780}.login-showcase-grid span{text-transform:uppercase;font-size:.78rem}.login-showcase-grid strong{color:#fff;font-size:1.6rem;font-weight:950;line-height:1}.login-panel{background:#fff;border:1px solid #ffffffd1;border-radius:8px;place-items:center;width:min(100%,420px);min-height:auto;padding:30px;display:grid;box-shadow:0 30px 90px #0000003d}.auth-card{border:1px solid var(--line);background:#fff;border-radius:8px;gap:14px;width:min(100%,440px);padding:24px;display:grid;box-shadow:0 22px 60px #0f172a1a}.login-card{box-shadow:none;background:0 0;border:0;gap:18px;padding:0}.auth-card.wide{width:min(100%,760px)}.auth-card h1{font-size:2rem;font-weight:900}.auth-card a{color:var(--primary-strong);font-weight:800;text-decoration:none}.auth-card-head h2{color:#12213f;font-size:clamp(2rem,3vw,2.5rem);font-weight:950;line-height:.98}.auth-card-head p{color:#5d708f;margin-top:9px;line-height:1.55}.auth-alert{color:#991b1b;background:#fef2f2;border:1px solid #fecaca;border-radius:8px;padding:12px 13px;font-weight:820}.login-type-switch{background:#f7faff;border:1px solid #dbe7f7;border-radius:8px;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;padding:5px;display:grid;box-shadow:inset 0 1px #ffffffd9}.login-type-switch__item{color:#526987;text-align:left;background:0 0;border:1px solid #0000;border-radius:8px;align-content:center;gap:4px;min-height:74px;padding:12px 14px;text-decoration:none;transition:transform .18s,border-color .18s,background .18s,color .18s,box-shadow .18s;display:grid;position:relative;overflow:hidden}.login-type-switch__item:hover{color:#130c44;background:#fff;border-color:#c6d7f2;transform:translateY(-1px)}.login-type-switch__item span{color:inherit;font-size:.9rem;font-weight:950;line-height:1.1}.login-type-switch__item small{color:#6a7f9d;font-size:.72rem;font-weight:820;line-height:1.25}.login-type-switch__item.is-active{color:#fff;background:#130c44;border-color:#130c44;box-shadow:0 14px 28px #130c443d}.login-type-switch__item.is-active:after{content:"";background:#fff;border-radius:999px;width:9px;height:9px;position:absolute;top:12px;right:12px;box-shadow:0 0 0 4px #ffffff38}.login-type-switch__item.is-active small{color:#dbeafe}.auth-field{color:#38506f;gap:8px;font-weight:850;display:grid}.auth-field span{color:#526987;font-size:.82rem;font-weight:900}.auth-field input{background:#fff;border-color:#c6d7f2;min-height:50px;font-weight:720;box-shadow:inset 0 1px #0f172a05}.auth-field input:focus{background:#fff;border-color:#130c44;outline:3px solid #130c4429}.auth-options{justify-content:flex-start;align-items:center;gap:12px;margin-top:-2px;display:flex}.auth-options .check-line{color:#5d708f;font-weight:780}.auth-options .check-line input{accent-color:#130c44;width:16px;height:16px;min-height:16px}.auth-submit{width:100%;min-height:50px;font-size:.96rem;box-shadow:0 14px 28px #130c442e}.setup-link{justify-self:center;margin-top:2px}.check-line{color:var(--muted);align-items:center;gap:8px;display:flex}.check-line input{width:18px;height:18px;min-height:18px;accent-color:var(--primary);flex:none}.form-grid{gap:10px;display:grid}.form-grid.two{grid-template-columns:repeat(2,minmax(0,1fr))}.form-grid.three{grid-template-columns:repeat(3,minmax(0,1fr))}.section-title{margin-bottom:10px;font-size:1.35rem;font-weight:900}.repeatable-wrap{gap:10px;min-width:0;display:grid}.repeatable-rows{gap:8px;min-width:0;display:grid}.repeatable-row{border:1px solid var(--line-strong);border-radius:var(--radius-sm);background:var(--field);flex-wrap:wrap;align-items:center;gap:8px;min-width:0;padding:10px;display:flex}.repeatable-row input,.repeatable-row select{min-height:38px}.repeatable-row>input[name*="[label]"]{flex:3 160px;min-width:120px}.repeatable-row>input[data-item-amount]{flex:110px;min-width:90px}.repeatable-row--milestone>input[name*="[remind_on]"]{flex:140px;min-width:130px}.repeatable-row--milestone>input[name*="[minimum_percentage]"],.repeatable-row--milestone>input[name*="[lead_days]"]{flex:90px;min-width:80px}.repeatable-row [data-remove-row]{flex:none;min-height:38px;margin-left:auto;padding:0 12px}.repeatable-actions{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:10px;display:flex}.repeatable-total{color:var(--ink);font-weight:800}.repeatable-total strong{color:var(--primary-strong)}.schedule-target-row{gap:6px;min-width:0;display:grid}.schedule-target-row select[multiple]{min-height:120px}@media (width<=640px){.repeatable-row [data-remove-row]{flex-basis:100%;margin-left:0}}.promotions-table-wrap{border:1px solid var(--line-strong);border-radius:var(--radius-sm);overflow:auto}.promotions-table{border-collapse:collapse;width:100%;font-size:.85rem}.promotions-table thead th{background:var(--field);color:var(--muted);text-align:left;border-bottom:1px solid var(--line-strong);white-space:nowrap;padding:10px 12px;font-weight:700;position:sticky;top:0}.promotions-table td{border-bottom:1px solid var(--line-strong);vertical-align:middle;padding:10px 12px}.promotions-table tbody tr:last-child td{border-bottom:0}.promotions-table select{min-width:160px;min-height:38px}.promotions-table textarea{width:220px;min-height:60px;margin-top:6px}.promotions-table .check-line{white-space:nowrap}.promotions-submit-row{margin-top:16px}.danger-text{color:#b91c1c}.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}.register-page-head{align-items:stretch}.register-head-actions{grid-template-columns:210px;align-content:center;justify-items:stretch;gap:16px;padding-left:12px;display:grid}.register-date-card{background:#fff;border-left:4px solid #130c44;border-radius:8px;align-content:center;gap:4px;min-width:210px;padding:14px 15px;display:grid}.register-date-card span,.register-date-card small{color:#5d708f;font-weight:760}.register-date-card strong{color:#12213f;font-variant-numeric:tabular-nums;font-size:1.22rem;font-weight:950}.register-controls{grid-template-columns:minmax(0,1fr) 320px;gap:0;padding:0;display:grid;overflow:hidden}.register-controls.compact{grid-template-columns:1fr}.register-control-form{border-right:1px solid #dbe7f7;grid-template-columns:minmax(150px,.9fr) minmax(220px,1.4fr) minmax(170px,.8fr) auto;align-items:end;gap:12px;padding:16px;display:grid}.register-controls.compact .register-control-form{border-right:0}.register-control-form h2{color:#12213f;font-size:1rem;font-weight:950}.register-control-form label{color:#38506f;gap:6px;font-weight:850;display:grid}.register-control-form label span{color:#5d708f;font-size:.8rem;font-weight:850}.register-button:before{content:none}.register-download-button{width:100%}.register-export-card{background:#f7faff;align-content:center;gap:12px;padding:16px;display:grid}.register-export-card h2{color:#12213f;font-size:1rem;font-weight:950}.register-export-card p{color:#5d708f;font-size:.88rem;line-height:1.45}.register-export-modal{z-index:70;opacity:0;pointer-events:none;place-items:center;padding:18px;transition:opacity .18s;display:grid;position:fixed;inset:0}.register-export-modal.is-open{opacity:1;pointer-events:auto}.register-export-backdrop{background:#0f172a80;position:absolute;inset:0}.register-export-dialog{background:#fff;border:1px solid #c6d7f2;border-radius:8px;width:min(100%,560px);max-height:min(760px,100dvh - 36px);position:relative;overflow-y:auto;box-shadow:0 30px 80px #0f172a47}.register-export-head{background:#f7faff;border-bottom:1px solid #dbe7f7;justify-content:space-between;align-items:flex-start;gap:14px;padding:20px;display:flex}.register-export-head h2{color:#12213f;font-size:1.28rem;font-weight:950;line-height:1.1}.register-export-head p{color:#5d708f;margin-top:6px;font-size:.92rem}.register-export-close{color:#130c44;width:36px;height:36px;min-height:36px;box-shadow:none;background:#fff;border:1px solid #c6d7f2;border-radius:8px;flex:none;padding:0;font-size:1.4rem;line-height:1}.register-export-form{gap:14px;padding:20px;display:grid}.register-export-form label{color:#38506f;gap:6px;font-weight:850;display:grid}.register-export-form label span{color:#5d708f;font-size:.82rem;font-weight:850}.register-export-class{background:#f7faff;border:1px solid #dbe7f7;border-radius:8px;gap:4px;padding:14px;display:grid}.register-export-class span,.register-export-class small{color:#5d708f}.register-export-class strong{color:#12213f;font-size:1.12rem;font-weight:950}.register-export-actions{justify-content:flex-end;gap:10px;padding-top:4px;display:flex}.register-summary-grid div{min-height:96px}.summary-present strong{color:#130c44}.summary-late strong{color:#b45309}.summary-excused strong{color:#130c44}.summary-absent strong{color:#b91c1c}.register-panel{padding-bottom:0;overflow:hidden}.register-panel .panel-head{border-bottom:1px solid #dbe7f7;margin-bottom:0;padding-bottom:14px}.register-table-head,.register-row{grid-template-columns:minmax(220px,.95fr) minmax(360px,1.25fr) minmax(240px,.85fr);align-items:center;gap:14px;display:grid}.register-table-head{color:#5d708f;text-transform:uppercase;letter-spacing:0;background:#f7faff;border-bottom:1px solid #dbe7f7;min-height:40px;margin:0 -18px;padding:0 18px;font-size:.76rem;font-weight:950}.register-row{border-bottom:1px solid #e8f0ff;min-height:82px;margin:0 -18px;padding:12px 18px}.register-row:hover{background:#f7faff}.register-pupil{align-items:center;gap:12px;min-width:0;display:flex}.register-pupil>span{color:#130c44;text-transform:uppercase;background:#eff6ff;border-radius:8px;flex:none;place-items:center;width:38px;height:38px;font-weight:950;display:grid}.register-pupil div{min-width:0}.register-pupil strong{color:#12213f;overflow-wrap:anywhere;font-weight:950;display:block}.register-pupil small{color:#5d708f;margin-top:2px;display:block}.register-options{border:0;grid-template-columns:repeat(4,minmax(76px,1fr));gap:7px;min-width:0;margin:0;padding:0;display:grid}.register-choice{cursor:pointer;min-width:0;position:relative}.register-choice input{opacity:0;cursor:pointer;width:100%;min-height:100%;position:absolute;inset:0}.register-choice span{color:#38506f;background:#fff;border:1px solid #dbe7f7;border-radius:8px;justify-content:center;align-items:center;min-height:36px;padding:0 9px;font-size:.84rem;font-weight:900;transition:background-color .16s,border-color .16s,color .16s,box-shadow .16s;display:flex}.register-choice input:focus-visible+span{outline-offset:2px;outline:3px solid #130c4433}.register-choice input:checked+span{color:#fff;border-color:#0000;box-shadow:0 8px 18px #0f172a14}.choice-present input:checked+span{background:#130c44}.choice-late input:checked+span{background:#b45309}.choice-excused input:checked+span{background:#130c44}.choice-absent input:checked+span{background:#b91c1c}.register-excuse{opacity:.42;min-width:0;transition:opacity .16s}.register-excuse.is-visible{opacity:1}.register-excuse label{gap:5px;display:grid}.register-excuse label span{color:#5d708f;font-size:.78rem;font-weight:850}.register-excuse input:disabled{color:#0000;background:#f4f7f5}.field-error{color:#b91c1c;margin-top:5px;font-weight:800;display:block}.register-footer{background:#f7faff;justify-content:space-between;align-items:center;gap:12px;margin:0 -18px;padding:16px 18px;display:flex}.register-footer span{color:#5d708f;font-weight:850}.welcome-page{grid-template-columns:.95fr 1.05fr;min-height:100vh;display:grid}.welcome-hero{color:#fff;background:#0f2147;align-content:center;gap:22px;padding:clamp(28px,6vw,72px);display:grid}.welcome-hero h1{max-width:720px;font-size:clamp(2.2rem,6vw,5.2rem);font-weight:900;line-height:.96}.welcome-hero p{color:#dbeafe;max-width:640px;font-size:1.08rem}.welcome-links{background:#f6f8f5;align-content:center;gap:14px;padding:clamp(24px,5vw,56px);display:grid}.welcome-links a{border:1px solid var(--line);min-height:72px;color:var(--ink);background:#fff;border-radius:8px;justify-content:space-between;align-items:center;padding:18px;font-weight:850;text-decoration:none;display:flex}.welcome-links small{color:var(--muted);margin-top:4px;font-weight:500;display:block}.welcome-links span{color:var(--primary)}.pupil-portal-head{background:#fff;border:1px solid #c6d7f2;border-radius:8px;grid-template-columns:minmax(0,1fr) minmax(260px,360px);align-items:stretch;gap:18px;padding:22px;display:grid;box-shadow:0 18px 44px #0f172a0e}.pupil-identity{align-content:center;min-width:0;display:grid}.pupil-identity h2{color:#12213f;font-size:clamp(1.85rem,3vw,2.7rem);font-weight:950;line-height:1.03}.school-app--admin{--ink:#12213f;--muted:#5d708f;--muted-light:#8aa0c0;--line:#dbe7f7;--line-strong:#c6d7f2;--field:#f7faff;--panel:#fff;--bg-app:#eef4ff;--radius-sm:8px;--radius-md:10px;--radius-lg:14px;--shadow-xs:0 1px 2px #0f214709;--shadow-sm:0 10px 28px #0f21470e;--shadow-md:0 18px 46px #0f214716;background:linear-gradient(#eef4fff5,#f7faffeb),radial-gradient(circle at 76% -10%,#130c4414,#0000 34%),radial-gradient(circle at 18% 10%,#130c4414,#0000 32%)}.school-app--admin .app-shell{grid-template-columns:284px minmax(0,1fr)}.school-app--admin .side-rail{background:linear-gradient(180deg, var(--bg-sidebar) 0%, var(--bg-sidebar) 100%);padding:22px 16px}@supports (color:color-mix(in lab, red, red)){.school-app--admin .side-rail{background:linear-gradient(180deg, color-mix(in srgb, var(--bg-sidebar) 94%, #fff) 0%, color-mix(in srgb, var(--bg-sidebar) 88%, #eef4ff) 100%)}}.school-app--admin .side-rail{border-right:1px solid var(--line-strong)}@supports (color:color-mix(in lab, red, red)){.school-app--admin .side-rail{border-right:1px solid color-mix(in srgb, var(--line-strong) 80%, transparent)}}.school-app--admin .side-rail{box-shadow:10px 0 34px #0f21470b}.school-app--admin .brand-mark{border:1px solid var(--sidebar-ink);min-height:56px;padding:8px}@supports (color:color-mix(in lab, red, red)){.school-app--admin .brand-mark{border:1px solid color-mix(in srgb, var(--sidebar-ink) 8%, transparent)}}.school-app--admin .brand-mark{background:var(--bg-sidebar);border-radius:14px}@supports (color:color-mix(in lab, red, red)){.school-app--admin .brand-mark{background:color-mix(in srgb, var(--bg-sidebar) 88%, #fff)}}.school-app--admin .brand-mark>span{background:linear-gradient(145deg, #130c44 0%, var(--primary) 58%, var(--primary-strong) 100%);width:42px;height:42px;box-shadow:0 14px 28px var(--primary);border-radius:10px}@supports (color:color-mix(in lab, red, red)){.school-app--admin .brand-mark>span{box-shadow:0 14px 28px color-mix(in srgb, var(--primary) 18%, transparent)}}.school-app--admin .brand-mark strong{letter-spacing:0;font-size:1rem}.school-app--admin .rail-label{color:var(--sidebar-ink);margin:8px 8px 7px}@supports (color:color-mix(in lab, red, red)){.school-app--admin .rail-label{color:color-mix(in srgb, var(--sidebar-ink) 55%, var(--sidebar-muted))}}.school-app--admin .rail-label{letter-spacing:.12em;font-size:.68rem}.school-app--admin .rail-nav{gap:6px}.school-app--admin .rail-nav a{min-height:48px;color:var(--sidebar-ink);border-radius:10px;padding:0 12px}@supports (color:color-mix(in lab, red, red)){.school-app--admin .rail-nav a{color:color-mix(in srgb, var(--sidebar-ink) 92%, #000)}}.school-app--admin .rail-nav a{font-size:.91rem}.school-app--admin .rail-nav a:hover{background:var(--sidebar-active-bg,var(--primary));transform:translate(2px)}@supports (color:color-mix(in lab, red, red)){.school-app--admin .rail-nav a:hover{background:color-mix(in srgb, var(--sidebar-active-bg,var(--primary)) 8%, var(--bg-sidebar))}}.school-app--admin .rail-nav a.active{background:linear-gradient(135deg, var(--sidebar-active-bg,var(--primary)) 0%, var(--sidebar-active-bg,var(--primary)) 100%);transform:none}@supports (color:color-mix(in lab, red, red)){.school-app--admin .rail-nav a.active{background:linear-gradient(135deg, var(--sidebar-active-bg,var(--primary)) 0%, color-mix(in srgb, var(--sidebar-active-bg,var(--primary)) 68%, #130c44) 100%)}}.school-app--admin .rail-nav a.active{box-shadow:0 14px 30px var(--sidebar-active-bg,var(--primary))}@supports (color:color-mix(in lab, red, red)){.school-app--admin .rail-nav a.active{box-shadow:0 14px 30px color-mix(in srgb, var(--sidebar-active-bg,var(--primary)) 22%, transparent)}}.school-app--admin .rail-nav a.active:after{display:none}.school-app--admin .nav-icon{border-radius:9px;width:32px;height:32px}.school-app--admin .rail-foot{background:var(--bg-sidebar);border-radius:12px;gap:5px;padding:14px}@supports (color:color-mix(in lab, red, red)){.school-app--admin .rail-foot{background:color-mix(in srgb, var(--bg-sidebar) 82%, #fff)}}.school-app--admin .workspace{gap:22px;padding:22px clamp(18px,2.7vw,34px) 34px}.school-app--admin .workspace-header{-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);background:#ffffffeb;border-bottom:1px solid #d5e1dbdb;margin:-22px calc(-1*clamp(18px,2.7vw,34px)) 0;box-shadow:0 8px 26px #0f21470b}.school-app--admin .workspace-header-inner{grid-template-columns:minmax(0,1fr) auto auto;padding:14px clamp(18px,2.7vw,34px)}.school-app--admin .workspace-eyebrow{color:var(--muted);text-transform:uppercase;letter-spacing:.08em;font-size:.78rem;font-weight:800}.school-app--admin .workspace-header h1{color:var(--ink);letter-spacing:0;font-size:clamp(1.28rem,1.8vw,1.7rem)}.school-app--admin .workspace-date-chip,.school-app--admin .workspace-user-chip,.school-app--admin .notification-trigger{border-color:var(--line-strong);min-height:42px;box-shadow:var(--shadow-xs);background:#fff;border-radius:10px}.school-app--admin .workspace-logout-button{border-radius:10px}.admin-workspace{gap:22px}.admin-page-head{box-shadow:var(--shadow-sm);background:linear-gradient(135deg,#fffffffa 0%,#f6f9f7f5 100%);border:1px solid #d5e1dbe6;border-radius:14px;align-items:center;padding:26px 28px}.admin-page-head:before{background:linear-gradient(180deg, #130c44 0%, var(--primary) 55%, #d97706 100%);width:5px}.admin-page-head h2{letter-spacing:0;max-width:820px;font-size:clamp(1.55rem,2.4vw,2.08rem);font-weight:850}.admin-page-head p{max-width:760px;color:var(--muted);font-size:.96rem}.section-kicker{color:var(--primary-strong)}@supports (color:color-mix(in lab, red, red)){.section-kicker{color:color-mix(in srgb, var(--primary-strong) 82%, #130c44)}}.section-kicker{letter-spacing:.09em}.admin-tabs{border-color:var(--line-strong);box-shadow:inset 0 1px 0 #ffffffb3, var(--shadow-xs);background:#ffffffb8;border-radius:12px;gap:7px;padding:6px}.admin-tabs a{color:#39564c;border-radius:9px;min-height:42px;font-size:.87rem;font-weight:750}.admin-tabs a:hover{color:var(--ink);background:#fff}.admin-tabs a.active{background:linear-gradient(135deg, var(--primary) 0%, var(--primary) 100%)}@supports (color:color-mix(in lab, red, red)){.admin-tabs a.active{background:linear-gradient(135deg, var(--primary) 0%, color-mix(in srgb, var(--primary) 72%, #130c44) 100%)}}.admin-tabs a.active{box-shadow:0 10px 22px var(--primary);border-color:#0000}@supports (color:color-mix(in lab, red, red)){.admin-tabs a.active{box-shadow:0 10px 22px color-mix(in srgb, var(--primary) 22%, transparent)}}.admin-stat-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:14px}.admin-stat-tile,.admin-metric-card,.admin-insight-card,.admin-contact-card{box-shadow:var(--shadow-xs);background:#fff;border-color:#d5e1dbeb;border-radius:12px}.admin-stat-tile{min-height:112px;padding:18px 20px;position:relative;overflow:hidden}.admin-stat-tile:after{content:"";background:linear-gradient(135deg,#130c441f,#130c441f);border-radius:10px;width:34px;height:34px;position:absolute;top:16px;right:16px}.admin-stat-tile:hover,.admin-insight-card:hover,.admin-contact-card:hover{border-color:var(--primary);transform:translateY(-3px)}@supports (color:color-mix(in lab, red, red)){.admin-stat-tile:hover,.admin-insight-card:hover,.admin-contact-card:hover{border-color:color-mix(in srgb, var(--primary) 28%, var(--line-strong))}}.admin-stat-tile:hover,.admin-insight-card:hover,.admin-contact-card:hover{box-shadow:var(--shadow-sm)}.admin-stat-tile span,.admin-metric-body small,.admin-insight-card span{color:var(--muted);font-weight:750}.admin-stat-tile strong{font-weight:850}.admin-workspace .panel,.admin-workspace .admin-card{box-shadow:var(--shadow-sm);background:#fff;border-color:#d5e1dbf2;border-radius:14px}.admin-workspace .panel-head,.admin-workspace .admin-card-head{border-bottom:1px solid var(--line);background:linear-gradient(#fff 0%,#f8faf9 100%);padding:18px 22px}.admin-workspace .panel-head h2,.admin-workspace .panel-head h3,.admin-workspace .admin-card-head h2,.admin-workspace .admin-card-head h3{letter-spacing:0;font-size:1.02rem;font-weight:850}.admin-card-meta{white-space:nowrap}.admin-table{gap:0}.admin-workspace .admin-card .admin-table,.admin-workspace .panel .admin-table{padding:0 18px 18px}.admin-table-head,.admin-table article,.admin-record-row{border-radius:10px;padding:14px}.admin-table-head{border:1px solid var(--line);color:#5d708f;letter-spacing:.08em;background:#f5f8f6;min-height:42px;margin:0 0 6px;font-size:.72rem}.admin-table article,.admin-record-row{border-bottom:1px solid var(--line)}.admin-record-row:hover{box-shadow:inset 3px 0 0 var(--primary);background:#f7faff;transform:translate(0)}.status-pill,.role-badge{white-space:nowrap;border-radius:999px}.admin-workspace .admin-detail-grid,.admin-workspace .panel-grid.two{gap:18px}.form-grid{gap:12px}input,select,textarea{color:var(--ink);background:#fff;border-color:#cfdcd6;border-radius:9px;font-weight:600}input:focus,select:focus,textarea:focus{outline:3px solid var(--primary)}@supports (color:color-mix(in lab, red, red)){input:focus,select:focus,textarea:focus{outline:3px solid color-mix(in srgb, var(--primary) 18%, transparent)}}input:focus,select:focus,textarea:focus{border-color:var(--primary)}.primary-action,button,.panel-head a{border-radius:9px}.secondary-action{background:#fff;border-radius:9px}.admin-welcome-hero{background:linear-gradient(135deg,#064632f7 0%,#0b7452f5 56%,#0f8f62eb 100%),linear-gradient(45deg,#130c44,#130c44);border-radius:16px;grid-template-columns:minmax(0,1.35fr) minmax(260px,.65fr);min-height:280px;padding:clamp(28px,4vw,42px);box-shadow:0 22px 60px #0f214724}.admin-welcome-hero:before,.admin-welcome-hero:after{opacity:.8}.admin-welcome-hero h2{letter-spacing:0;max-width:780px;font-size:clamp(2rem,4vw,3.35rem);font-weight:900}.admin-welcome-hero p{max-width:700px;font-size:1rem}.admin-welcome-highlight{background:#0f214761;border-radius:14px}.admin-module-strip{grid-template-columns:repeat(auto-fit,minmax(190px,1fr))}.admin-module-link{background:#fff;border-radius:12px;min-height:82px}.admin-module-icon,.admin-contact-icon{border-radius:10px}.admin-dashboard-grid{grid-template-columns:minmax(0,1.55fr) minmax(320px,.8fr);gap:22px}.admin-card{border-radius:14px}.admin-finance-footer div,.admin-dashboard-calendar-cell{border-radius:10px}.admin-profile-banner{background:linear-gradient(135deg,#fff 0%,#f7faff 100%);border-radius:14px}.noticeboard-item{background:#fff;border-radius:12px}.people-workspace{gap:20px}.people-role-nav{grid-template-columns:repeat(5,minmax(0,1fr));gap:10px;display:grid}.people-role-link,.people-hub-card,.student-profile-card,.guardian-family-card,.staff-profile-row{color:var(--ink);text-decoration:none}.people-role-link{border:1px solid var(--line-strong);min-height:76px;box-shadow:var(--shadow-xs);transition:all var(--transition-normal);background:#fff;border-radius:12px;align-items:center;gap:12px;padding:14px;display:flex}.people-role-link:hover,.people-role-link.is-active{border-color:var(--people-accent,var(--primary));box-shadow:var(--shadow-sm);transform:translateY(-2px)}.people-role-link.is-active{background:var(--people-accent,var(--primary))}@supports (color:color-mix(in lab, red, red)){.people-role-link.is-active{background:color-mix(in srgb, var(--people-accent,var(--primary)) 8%, #fff)}}.people-role-mark{background:var(--people-accent,var(--primary));border-radius:10px;flex:none;place-items:center;width:42px;height:42px;display:grid}@supports (color:color-mix(in lab, red, red)){.people-role-mark{background:color-mix(in srgb, var(--people-accent,var(--primary)) 12%, #fff)}}.people-role-mark{color:var(--people-accent,var(--primary));font-size:.82rem;font-weight:900}.people-role-link strong,.people-role-link small{display:block}.people-role-link strong{font-weight:850}.people-role-link small{color:var(--muted);margin-top:2px;font-size:.8rem}.people-role-link--indigo,.people-hub-card--indigo,.people-filter-card--indigo,.staff-profile-row--indigo{--people-accent:#4f46e5}.people-role-link--cyan,.people-hub-card--cyan,.people-filter-card--cyan,.staff-profile-row--cyan{--people-accent:#0891b2}.people-role-link--emerald,.people-hub-card--emerald,.people-filter-card--emerald,.staff-profile-row--emerald{--people-accent:#0284c7}.people-role-link--gold,.people-hub-card--gold,.people-filter-card--gold,.staff-profile-row--gold{--people-accent:#d97706}.people-role-link--rose,.people-hub-card--rose,.people-filter-card--rose,.staff-profile-row--rose{--people-accent:#e11d48}.people-hub-grid{grid-template-columns:repeat(5,minmax(0,1fr));gap:14px;display:grid}.people-hub-card{border:1px solid var(--line-strong);background:linear-gradient(180deg, #fff 0%, var(--people-accent,var(--primary)) 100%);border-radius:14px;align-content:space-between;gap:18px;min-height:230px;padding:20px;display:grid}@supports (color:color-mix(in lab, red, red)){.people-hub-card{background:linear-gradient(180deg, #fff 0%, color-mix(in srgb, var(--people-accent,var(--primary)) 6%, #fff) 100%)}}.people-hub-card{box-shadow:var(--shadow-sm);transition:all var(--transition-normal)}.people-hub-card:hover{border-color:var(--people-accent,var(--primary));box-shadow:var(--shadow-md);transform:translateY(-4px)}.people-hub-card h3{color:var(--ink);font-size:1rem;font-weight:800;line-height:1.35}.people-hub-card>strong{color:var(--people-accent,var(--primary));font-size:2rem;font-weight:900;line-height:1}.people-hub-card>small{color:var(--muted);font-weight:750}.people-recent-panel .admin-card-head{margin-bottom:0}.people-mini-list{gap:0;padding:0 18px 18px;display:grid}.people-mini-list a{border-bottom:1px solid var(--line);color:var(--ink);grid-template-columns:42px minmax(0,1fr) auto;align-items:center;gap:12px;padding:14px 0;text-decoration:none;display:grid}.people-mini-list a:last-child{border-bottom:0}.people-mini-avatar{width:42px;height:42px;color:var(--primary-strong);text-transform:uppercase;background:#eef6f2;border-radius:10px;place-items:center;font-weight:900;display:grid}.people-mini-list strong,.people-mini-list small{overflow-wrap:anywhere;display:block}.people-mini-list small{color:var(--muted);margin-top:2px}.people-filter-card{border:1px solid var(--people-accent,var(--primary));padding:18px}@supports (color:color-mix(in lab, red, red)){.people-filter-card{border:1px solid color-mix(in srgb, var(--people-accent,var(--primary)) 25%, var(--line-strong))}}.people-filter-card{background:linear-gradient(135deg, var(--people-accent,var(--primary)) 0%, #fff 100%);border-radius:14px}@supports (color:color-mix(in lab, red, red)){.people-filter-card{background:linear-gradient(135deg, color-mix(in srgb, var(--people-accent,var(--primary)) 8%, #fff) 0%, #fff 100%)}}.people-filter-card{box-shadow:var(--shadow-sm)}.people-filter-form{grid-template-columns:minmax(220px,1.2fr) repeat(3,minmax(150px,.8fr)) auto;align-items:end;gap:12px;display:grid}.people-filter-form label{color:var(--muted);text-transform:uppercase;letter-spacing:.05em;gap:6px;font-size:.78rem;font-weight:850;display:grid}.people-filter-actions{align-items:center;gap:8px;display:flex}.people-filter-actions .secondary-action{min-height:42px}.student-register-grid{grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:14px;display:grid}.student-profile-card{border:1px solid var(--line-strong);min-height:150px;box-shadow:var(--shadow-sm);transition:all var(--transition-normal);background:#fff;border-radius:14px;grid-template-columns:52px minmax(0,1fr);gap:14px;padding:18px;display:grid}.student-profile-card:hover{box-shadow:var(--shadow-md);border-color:#0284c7;transform:translateY(-3px)}.student-avatar{color:#130c44;text-transform:uppercase;background:#eff6ff;border-radius:14px;grid-row:span 2;place-items:center;width:52px;height:52px;font-size:1.1rem;font-weight:900;display:grid}.student-profile-main{gap:5px;min-width:0;display:grid}.student-profile-main strong{font-size:1rem;font-weight:900}.student-profile-main small,.student-profile-main span,.student-profile-meta span{color:var(--muted);overflow-wrap:anywhere;font-size:.84rem}.student-profile-main span{color:#38506f;background:#f2f8f5;border-radius:999px;justify-self:start;padding:5px 10px;font-weight:750;display:inline-flex}.student-profile-meta{border-top:1px solid var(--line);grid-column:2;justify-content:space-between;align-items:center;gap:10px;padding-top:10px;display:flex}.guardian-register-grid{grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:14px;display:grid}.guardian-family-card{border:1px solid var(--line-strong);min-height:190px;box-shadow:var(--shadow-sm);transition:all var(--transition-normal);background:linear-gradient(#fff,#fff7f9);border-radius:14px;gap:14px;padding:18px;display:grid}.guardian-family-card:hover{box-shadow:var(--shadow-md);border-color:#e11d48;transform:translateY(-3px)}.guardian-family-card header{align-items:center;gap:12px;display:flex}.guardian-family-card strong,.guardian-family-card small{display:block}.guardian-family-card small,.guardian-family-card p{color:var(--muted)}.guardian-family-links{border-top:1px solid #f2dce2;flex-wrap:wrap;gap:8px;margin-top:auto;padding-top:12px;display:flex}.guardian-family-links span{color:#9f1239;background:#fff1f2;border-radius:999px;align-items:center;min-height:30px;padding:0 10px;font-size:.8rem;font-weight:800;display:inline-flex}.staff-register-grid{gap:10px;display:grid}.staff-profile-row{border:1px solid var(--line-strong);min-height:82px;box-shadow:var(--shadow-xs);transition:all var(--transition-normal);background:#fff;border-radius:12px;grid-template-columns:44px minmax(220px,1fr) minmax(120px,.55fr) minmax(180px,.8fr) auto;align-items:center;gap:14px;padding:16px;display:grid}.staff-profile-row:hover{border-color:var(--people-accent,var(--primary));box-shadow:var(--shadow-sm);transform:translateY(-2px)}.staff-profile-row strong,.staff-profile-row small{display:block}.staff-profile-row small,.staff-profile-row>span:not(.people-role-mark){color:var(--muted);overflow-wrap:anywhere}.admin-access-table .admin-record-row{grid-template-columns:minmax(220px,1.2fr) minmax(120px,.7fr) minmax(120px,.7fr) auto}@media (width<=1180px){.school-app--admin .app-shell{grid-template-columns:264px minmax(0,1fr)}.admin-stat-grid,.admin-dashboard-stat-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.admin-dashboard-grid{grid-template-columns:1fr}.people-role-nav,.people-hub-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.people-filter-form,.staff-profile-row{grid-template-columns:1fr 1fr}}@media (width<=900px){.school-app--admin .app-shell{display:block}.school-app--admin .workspace{padding:76px 16px 26px}.school-app--admin .workspace-header{border-radius:14px;margin:0;position:static}.school-app--admin .workspace-header-inner{grid-template-columns:1fr;gap:12px}.school-app--admin .workspace-toolbar{justify-content:flex-start}.admin-page-head,.admin-welcome-hero,.dash-hero,.pupil-portal-head{grid-template-columns:1fr}.admin-page-head{padding:22px}.admin-action-row{justify-content:flex-start}.admin-workspace .admin-detail-grid,.admin-workspace .panel-grid.two,.theme-settings-layout,.people-filter-form,.staff-profile-row{grid-template-columns:1fr}}@media (width<=640px){.admin-stat-grid,.admin-dashboard-stat-grid,.admin-contact-grid,.admin-finance-footer,.form-grid.two,.form-grid.three{grid-template-columns:1fr}.admin-page-head h2,.admin-welcome-hero h2{font-size:1.65rem}.workspace-user-chip{max-width:100%}.admin-table-head{display:none}.admin-table article,.admin-record-row,.admin-table.compact article,.admin-table.compact .admin-record-row,.admin-table.backup-table article{grid-template-columns:1fr;gap:8px}.people-role-nav,.people-hub-grid,.people-mini-list a,.student-profile-card,.admin-access-table .admin-record-row{grid-template-columns:1fr}.student-profile-meta{flex-direction:column;grid-column:1;align-items:flex-start}.people-filter-actions{flex-direction:column;align-items:stretch}}.pupil-identity p{color:#5d708f;margin-top:8px;font-weight:720}.pupil-focus-card{border-radius:var(--radius-md);background:linear-gradient(145deg, var(--primary) 0%, var(--primary-strong) 100%);color:#fff;box-shadow:var(--shadow-md);align-content:center;gap:6px;padding:18px;display:grid}.pupil-focus-card span,.pupil-focus-card small{color:#dbeafe;font-weight:600}.pupil-focus-card span{text-transform:uppercase;font-size:.78rem}.pupil-focus-card strong{color:#fff;font-size:clamp(1.5rem,2.2vw,2rem);font-weight:950;line-height:1}.pupil-focus-card a{color:#fff;border-bottom:1px solid #ffffff7a;justify-self:start;margin-top:5px;font-weight:900;text-decoration:none}.pupil-section-tabs{scrollbar-width:thin;background:#edf6f1;border:1px solid #c6d7f2;border-radius:8px;gap:8px;padding:6px;display:flex;overflow-x:auto}.pupil-section-tabs a{color:#38506f;border:1px solid #0000;border-radius:8px;flex:none;align-items:center;min-height:40px;padding:0 14px;font-weight:900;text-decoration:none;display:inline-flex}.pupil-section-tabs a:hover{background:#130c4414;border-color:#130c441f}.pupil-section-tabs a.active{color:#fff;background:#130c44;border-color:#130c44;box-shadow:0 10px 24px #130c442e}.pupil-metric-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;display:grid}.pupil-metric-grid>a,.pupil-metric-grid>div{color:#12213f;background:#fff;border:1px solid #c6d7f2;border-radius:8px;align-content:center;gap:5px;min-height:118px;padding:17px;text-decoration:none;transition:transform .16s,border-color .16s,background-color .16s,box-shadow .16s;display:grid;box-shadow:0 14px 32px #0f172a0a}.pupil-metric-grid>a:hover{background:#f7fbf8;border-color:#c9c6dc;transform:translateY(-1px);box-shadow:0 18px 38px #0f172a0f}.pupil-metric-grid span,.pupil-metric-grid small{color:#5d708f}.pupil-metric-grid span{font-size:.84rem;font-weight:840}.pupil-metric-grid strong{color:#12213f;overflow-wrap:anywhere;font-size:clamp(1.35rem,2vw,1.85rem);font-weight:950;line-height:1.05}.pupil-dashboard-grid{grid-template-columns:minmax(0,1.15fr) minmax(320px,.85fr);align-items:start;gap:16px;display:grid}.pupil-panel{border:1px solid var(--line-strong);border-radius:var(--radius-md);background:var(--panel);box-shadow:var(--shadow-sm);padding:20px}.guardian-child-card{border:1px solid var(--line-strong);border-radius:var(--radius-md);background:var(--field);grid-template-columns:44px minmax(0,1fr);align-items:center;gap:12px;padding:14px;text-decoration:none;transition:border-color .15s,background-color .15s,box-shadow .15s;display:grid}.guardian-child-card:hover{border-color:var(--primary)}@supports (color:color-mix(in lab, red, red)){.guardian-child-card:hover{border-color:color-mix(in srgb, var(--primary) 35%, var(--line))}}.guardian-child-card:hover{background:var(--primary-soft);box-shadow:var(--shadow-sm)}.guardian-child-avatar{border-radius:var(--radius-md);background:linear-gradient(145deg, var(--primary) 0%, var(--primary-strong) 100%);color:#fff;text-transform:uppercase;place-items:center;width:44px;height:44px;font-weight:700;display:grid}.guardian-child-card strong{color:var(--ink);font-weight:700}.guardian-child-card span{color:var(--muted);margin-top:3px;font-size:.88rem;line-height:1.4;display:block}.school-app--admin .student-profile-card .admin-card-link{color:var(--primary-strong);font-size:.84rem;font-weight:800}.pupil-panel-head{justify-content:space-between;align-items:flex-start;gap:14px;margin-bottom:14px;display:flex}.pupil-panel-head h2{color:#12213f;font-size:1.08rem;font-weight:950;line-height:1.15}.pupil-panel-head>span,.pupil-panel-head>strong{color:#130c44;background:#eff6ff;border-radius:999px;flex:none;align-items:center;min-height:30px;padding:5px 10px;font-size:.8rem;font-weight:950;display:inline-flex}.pupil-detail-panel{position:sticky;top:92px}.pupil-profile-list{border-top:1px solid #e8f0ff;display:grid}.pupil-profile-list div{border-bottom:1px solid #e8f0ff;grid-template-columns:135px minmax(0,1fr);gap:14px;padding:12px 0;display:grid}.pupil-profile-list span{color:#5d708f}.pupil-profile-list strong{color:#12213f;overflow-wrap:anywhere}.pupil-action-list,.pupil-work-list,.pupil-year-list{gap:9px;display:grid}.pupil-action-list a,.pupil-work-list a,.pupil-year-list a{color:#12213f;background:#f7faff;border:1px solid #dbe7f7;border-radius:8px;gap:4px;padding:13px;text-decoration:none;transition:background-color .16s,border-color .16s,transform .16s;display:grid}.pupil-action-list a:hover,.pupil-work-list a:hover,.pupil-year-list a:hover{background:#f3faf6;border-color:#c9c6dc;transform:translateY(-1px)}.pupil-action-list strong,.pupil-work-list strong,.pupil-year-list strong{color:#12213f;font-weight:950}.pupil-action-list span,.pupil-work-list small,.pupil-year-list small{color:#5d708f;line-height:1.4}.pupil-work-list a,.pupil-year-list a{grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:12px}.pupil-work-list a>span,.pupil-year-list a>span{color:#38506f;text-align:right;justify-self:end;font-size:.82rem;font-weight:900}.pupil-work-list a.active,.pupil-year-list a.active{background:#eff6ff;border-color:#130c44;box-shadow:inset 3px 0 #130c44}.pupil-year-list section{gap:8px;display:grid}.pupil-year-head{justify-content:space-between;align-items:center;gap:10px;padding:4px 2px;display:flex}.pupil-year-head strong{color:#12213f;font-weight:950}.pupil-year-head span{color:#5d708f;font-size:.82rem;font-weight:850}.pupil-grade-list{gap:8px;margin:14px 0;display:grid}.pupil-grade-list article{background:#f7faff;border:1px solid #dbe7f7;border-radius:8px;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:12px;padding:12px;display:grid}.pupil-grade-list strong{color:#12213f;font-weight:950}.pupil-grade-list small{color:#5d708f;margin-top:3px;display:block}.pupil-grade-list b{color:#130c44;text-align:right;font-weight:950}.pupil-record-list{border-top:1px solid #e8f0ff;display:grid}.pupil-record-list>a,.pupil-record-list>article{color:#12213f;border-bottom:1px solid #e8f0ff;grid-template-columns:minmax(0,1fr) auto auto;align-items:center;gap:14px;padding:13px 0;text-decoration:none;display:grid}.pupil-record-list>article>a{color:#12213f;text-decoration:none}.pupil-record-list strong{color:#12213f;font-weight:950}.pupil-record-list small{color:#5d708f;margin-top:3px;display:block}.pupil-record-list b{color:#12213f;font-variant-numeric:tabular-nums}.pupil-detail-copy{color:#526987;margin:14px 0;line-height:1.65}.pupil-empty{color:#5d708f;background:#f7faff;border:1px dashed #c6d7f2;border-radius:8px;padding:16px;line-height:1.55}.account-pupil-grid{grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:14px;display:grid}.account-pupil-card{color:#12213f;background:#fff;border:1px solid #c6d7f2;border-radius:8px;grid-template-columns:48px minmax(0,1fr);gap:13px;padding:16px;text-decoration:none;transition:transform .16s,border-color .16s,box-shadow .16s;display:grid;box-shadow:0 16px 38px #0f172a0b}.account-pupil-card:hover{border-color:#c9c6dc;transform:translateY(-2px);box-shadow:0 20px 44px #0f172a12}.account-pupil-avatar,.account-profile-avatar{color:#fff;text-transform:uppercase;background:#130c44;border-radius:8px;place-items:center;font-weight:950;display:grid}.account-pupil-avatar{width:48px;height:48px}.account-pupil-card strong{color:#12213f;font-weight:950;display:block}.account-pupil-card span{color:#5d708f;margin-top:3px;font-size:.88rem;display:block}.account-pupil-card dl{grid-column:1/-1;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin:4px 0 0;display:grid}.account-pupil-card dl div{background:#f7faff;border:1px solid #e8f0ff;border-radius:8px;padding:10px}.account-pupil-card dt{color:#5d708f;font-size:.76rem;font-weight:850}.account-pupil-card dd{color:#12213f;margin:4px 0 0;font-weight:950}.account-profile-hero{background:#fff;border:1px solid #c6d7f2;border-radius:8px;grid-template-columns:76px minmax(0,1fr) minmax(240px,320px);align-items:center;gap:18px;padding:22px;display:grid;box-shadow:0 18px 44px #0f172a0e}.account-profile-avatar{width:76px;height:76px;font-size:1.25rem;box-shadow:0 14px 30px #130c442e}.account-profile-hero h2{color:#12213f;font-size:clamp(1.8rem,3vw,2.5rem);font-weight:950;line-height:1.02}.account-profile-hero p{color:#5d708f;margin-top:7px;font-weight:760}.account-profile-balance{border-radius:var(--radius-md);background:linear-gradient(145deg, var(--primary) 0%, var(--primary-strong) 100%);color:#fff;box-shadow:var(--shadow-md);gap:5px;padding:16px;display:grid}.account-profile-balance span,.account-profile-balance small{color:#dbeafe;font-weight:600}.account-profile-balance span{text-transform:uppercase;font-size:.78rem}.account-profile-balance strong{color:#fff;font-size:1.65rem;font-weight:950;line-height:1}.accountant-workspace{align-items:start}.account-payment-page{gap:18px}.account-payment-shell{grid-template-columns:minmax(0,1.35fr) minmax(320px,.75fr);align-items:start;gap:22px;display:grid}.account-payment-shell--single{grid-template-columns:minmax(0,920px)}.account-payment-form{border-radius:var(--radius-lg);box-shadow:var(--shadow-sm)}.account-form-panel,.account-ledger-form{gap:14px;display:grid}.account-form-shell{padding:0;overflow:hidden}.account-form-shell>.account-form-section,.account-form-shell>form{padding-inline:18px}.account-form-shell>form{padding-bottom:18px}.account-form-hero{background:linear-gradient(135deg,#fff 0%,#f1fbf6 100%);border-bottom:1px solid #dbe7f7;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:16px;padding:18px;display:grid}.account-form-hero.invoice{background:linear-gradient(135deg,#fff 0%,#eef6ff 100%)}.account-form-hero span{color:#130c44;text-transform:uppercase;font-size:.76rem;font-weight:950}.account-form-hero h2{color:#12213f;margin-top:4px;font-size:1.35rem;font-weight:950;line-height:1.1}.account-form-hero p{color:#5d708f;max-width:640px;margin-top:6px;line-height:1.5}.account-form-hero>strong{color:#fff;background:#130c44;border-radius:8px;place-items:center;min-height:38px;padding:0 12px;font-size:.88rem;font-weight:950;display:inline-grid;box-shadow:0 12px 26px #130c4429}.account-form-hero.invoice>strong{background:#0f2147;box-shadow:0 12px 26px #102a4329}.account-payment-steps{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;padding:16px 18px 0;display:grid}.account-payment-steps div{border:1px solid var(--line);border-radius:var(--radius-md);background:var(--field);align-items:center;gap:9px;min-height:44px;padding:9px 10px;display:flex}.account-payment-steps span{background:var(--primary);color:#fff;border-radius:999px;flex:none;place-items:center;width:24px;height:24px;font-size:.76rem;font-weight:900;display:grid}.account-payment-steps strong{color:var(--ink);font-size:.84rem;font-weight:900}.account-form-section{gap:10px;padding-top:18px;display:grid}.account-form-divider{color:var(--muted);text-transform:uppercase;align-items:center;gap:10px;font-size:.78rem;font-weight:950;display:flex}.account-form-divider:after{content:"";background:var(--line);flex:1;height:1px}.field-stack{color:#38506f;gap:7px;font-weight:850;display:grid}.field-stack span{color:#5d708f;font-size:.8rem;font-weight:900}.field-stack input,.field-stack select,.field-stack textarea{background:#fff;border-color:#c6d7f2;font-weight:720}.field-stack input:focus,.field-stack select:focus,.field-stack textarea:focus{border-color:#130c44;outline:3px solid #130c4424}.account-search-results{gap:8px;max-height:330px;padding-right:2px;display:grid;overflow-y:auto}.account-search-results.refined{max-height:210px}.account-pupil-option{color:#12213f;width:100%;min-height:auto;box-shadow:none;text-align:left;background:#f7faff;border:1px solid #dbe7f7;border-radius:8px;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:4px 12px;padding:12px;display:grid}.account-pupil-option:hover{background:#f3faf6;border-color:#c9c6dc;transform:translateY(-1px)}.account-pupil-option strong{color:#12213f;grid-column:1;font-weight:950}.account-pupil-option span{color:#5d708f;grid-column:1;font-size:.84rem;font-weight:760}.account-pupil-option b{color:#130c44;font-variant-numeric:tabular-nums;text-align:right;grid-area:1/2/span 2;font-weight:950}.account-allocation-mini{background:#f6f9ff;border:1px solid #c6d7f2;border-radius:8px;align-content:center;gap:4px;min-height:42px;padding:10px 12px;display:grid}.account-allocation-mini span{color:#5d708f;font-size:.76rem;font-weight:900}.account-allocation-mini strong{color:#130c44;font-weight:950}.account-payment-side{gap:14px;display:grid;position:sticky;top:92px}.account-selection-card{gap:14px;display:grid}.account-selection-card h2{color:#12213f;font-size:clamp(1.45rem,2.6vw,2.1rem);font-weight:950;line-height:1.02}.account-selection-card p{color:#5d708f;line-height:1.55}.account-selected-card{border-radius:var(--radius-lg);padding:18px}.account-selected-head{grid-template-columns:54px minmax(0,1fr);align-items:center;gap:12px;display:grid}.account-selected-avatar{border-radius:var(--radius-md);background:var(--primary-soft);width:54px;height:54px;color:var(--primary-strong);text-transform:uppercase;place-items:center;font-weight:950;display:grid}.account-balance-tile{border-radius:var(--radius-md);background:linear-gradient(145deg, var(--hero-dark) 0%, #1e40af 100%);color:#fff;box-shadow:var(--shadow-md);gap:6px;padding:16px;display:grid}.account-balance-tile span{color:#dbeafe;text-transform:uppercase;letter-spacing:.04em;font-size:.78rem;font-weight:600}.account-balance-tile strong{color:#fff;font-size:1.7rem;font-weight:950;line-height:1}.account-allocation-preview{background:#f7faff;border:1px solid #dbe7f7;border-radius:8px;gap:8px;padding:14px;display:grid}.account-allocation-preview>strong{color:#12213f;font-weight:950}.account-allocation-preview span,.account-allocation-preview small{color:#5d708f;line-height:1.45}.account-allocation-preview div{border-top:1px solid #e8f0ff;justify-content:space-between;gap:12px;padding-top:8px;display:flex}.account-allocation-preview div span{color:#5d708f;font-weight:850}.account-allocation-preview div strong{color:#130c44;font-weight:950}.account-submit-row{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;padding-top:2px;display:flex}.account-submit-row span{max-width:360px;color:var(--muted);font-size:.84rem;line-height:1.45}.account-payment-note{border-radius:var(--radius-lg);gap:8px;padding:16px;display:grid}.account-payment-note h3{color:var(--ink);font-size:1rem;font-weight:900}.account-payment-note p{color:var(--muted);line-height:1.5}.account-payment-note a{color:var(--primary-strong);font-weight:900;text-decoration:none}.account-ledger-card{overflow:hidden}.account-ledger-filter{grid-template-columns:minmax(220px,1fr) minmax(130px,.45fr) repeat(2,minmax(130px,.42fr)) auto;padding:18px 24px 0}.account-pupil-filter{grid-template-columns:minmax(220px,1fr) minmax(150px,.5fr) minmax(140px,.45fr) minmax(160px,.5fr) auto}.account-ledger-body{padding:18px 24px 8px}.account-ledger-body .admin-table{border:1px solid var(--line);border-radius:var(--radius-md);background:var(--panel);overflow:hidden}.account-billing-target-note{border:1px solid var(--line-strong);border-radius:var(--radius-md);background:var(--field);gap:6px;margin-bottom:14px;padding:14px;display:grid}.account-billing-target-note p{color:var(--muted);margin:0;line-height:1.5}@media (width<=980px){.account-payment-shell{grid-template-columns:1fr}.account-payment-side{position:static}}@media (width<=680px){.account-payment-steps{grid-template-columns:1fr}.account-submit-row button{width:100%}}.detail-list.compact div{grid-template-columns:minmax(110px,.55fr) minmax(0,1fr)}.admin-tabs a strong{color:#130c44;background:#130c441a;border-radius:999px;place-items:center;min-width:24px;height:24px;margin-left:6px;padding:0 7px;font-size:.78rem;font-weight:950;display:inline-grid}.admin-tabs a.active strong{color:#fff;background:#ffffff2e}.brand-mark img{object-fit:contain;background:#fff;border:1px solid #ffffff59;border-radius:12px;width:42px;height:42px;padding:4px}.settings-hero{border:1px solid var(--line-strong);border-radius:var(--radius-lg);background:linear-gradient(135deg, #fff 0%, var(--primary-soft) 100%);justify-content:space-between;align-items:center;gap:18px;padding:24px;display:flex}@supports (color:color-mix(in lab, red, red)){.settings-hero{background:linear-gradient(135deg, #fff 0%, color-mix(in srgb, var(--primary-soft) 42%, #fff) 100%)}}.settings-hero{box-shadow:var(--shadow-sm)}.settings-hero-brand{align-items:center;gap:18px;min-width:0;display:flex}.settings-logo-preview{border:1px solid var(--line-strong);background:#fff;border-radius:18px;flex:none;place-items:center;width:76px;height:76px;display:grid;overflow:hidden;box-shadow:0 10px 22px #0f172a14}.settings-logo-preview img{object-fit:contain;width:100%;height:100%;padding:8px}.settings-logo-preview span{color:var(--primary-strong);font-size:1.35rem;font-weight:950}.settings-hero h2{color:var(--ink);margin:3px 0 6px;font-size:clamp(1.55rem,2.5vw,2.3rem);font-weight:950;line-height:1.05}.settings-hero p{max-width:760px;color:var(--muted);margin:0;line-height:1.55}.settings-hero-actions{flex-wrap:wrap;justify-content:flex-end;gap:10px;display:flex}.settings-workspace{gap:18px}.settings-tabs{grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:10px;display:grid}.settings-tabs a{border:1px solid var(--line-strong);border-radius:var(--radius-md);background:var(--panel);min-height:54px;color:var(--ink);box-shadow:var(--shadow-xs);align-items:center;gap:10px;padding:10px 12px;font-size:.88rem;font-weight:850;text-decoration:none;display:flex}.settings-tabs a svg,.settings-link-card svg,.upload-preview svg{fill:none;stroke:currentColor;stroke-width:1.9px;stroke-linecap:round;stroke-linejoin:round;flex:none;width:20px;height:20px}.settings-tabs a svg{color:var(--primary-strong)}.settings-tabs a:hover{border-color:var(--primary)}@supports (color:color-mix(in lab, red, red)){.settings-tabs a:hover{border-color:color-mix(in srgb, var(--primary) 30%, var(--line-strong))}}.settings-tabs a:hover{transform:translateY(-1px)}.settings-tabs a.active{background:var(--primary);border-color:var(--primary);color:#fff;box-shadow:0 10px 24px var(--primary)}@supports (color:color-mix(in lab, red, red)){.settings-tabs a.active{box-shadow:0 10px 24px color-mix(in srgb, var(--primary) 24%, transparent)}}.settings-tabs a.active svg{color:#fff}.settings-panel .admin-card-head p,.settings-panel .panel-head span{color:var(--muted);margin:3px 0 0;font-size:.86rem;font-weight:600;line-height:1.45}.settings-panel label:not(.check-line):not(.upload-card){color:var(--muted);gap:7px;font-size:.82rem;font-weight:800;display:grid}.form-section-title{color:var(--ink);text-transform:uppercase;letter-spacing:.06em;margin-bottom:-2px;font-size:.8rem;font-weight:950}.settings-split{grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);align-items:start;gap:18px;display:grid}.upload-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;display:grid}.upload-card{border:1px dashed var(--primary);gap:8px;min-height:190px;padding:18px;display:grid;position:relative}@supports (color:color-mix(in lab, red, red)){.upload-card{border:1px dashed color-mix(in srgb, var(--primary) 42%, var(--line-strong))}}.upload-card{border-radius:var(--radius-md);background:var(--primary-soft)}@supports (color:color-mix(in lab, red, red)){.upload-card{background:color-mix(in srgb, var(--primary-soft) 18%, var(--panel))}}.upload-card{cursor:pointer}.upload-card:hover{background:var(--primary-soft);border-style:solid}@supports (color:color-mix(in lab, red, red)){.upload-card:hover{background:color-mix(in srgb, var(--primary-soft) 36%, var(--panel))}}.upload-card input{opacity:0;cursor:pointer;position:absolute;inset:0}.upload-preview{width:70px;height:70px;color:var(--primary-strong);border:1px solid var(--line-strong);background:#fff;border-radius:16px;place-items:center;display:grid;overflow:hidden}.upload-preview img{object-fit:contain;width:100%;height:100%;padding:7px}.upload-card strong{color:var(--ink);font-size:1rem;font-weight:950}.upload-card small{color:var(--muted);line-height:1.45}.settings-overview-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;display:grid}.settings-overview-list{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;display:grid}.settings-link-card{border:1px solid var(--line-strong);border-radius:var(--radius-md);background:var(--panel);color:var(--ink);box-shadow:var(--shadow-sm);align-items:center;gap:14px;padding:18px;text-decoration:none;display:flex}.settings-link-card>span{width:44px;height:44px;color:var(--primary-strong);background:var(--primary-soft);border-radius:12px;place-items:center;display:grid}.settings-link-card strong{margin-bottom:3px;font-weight:950;display:block}.settings-link-card small{color:var(--muted);line-height:1.4}.website-studio{grid-template-columns:minmax(280px,.72fr) minmax(0,1fr);align-items:start;gap:18px;display:grid}.website-studio-preview{gap:14px;display:grid;position:sticky;top:92px}.website-preview-frame{border:1px solid var(--line-strong);border-radius:var(--radius-lg);box-shadow:var(--shadow-md);background:#fff;overflow:hidden}.website-preview-nav{border-bottom:1px solid var(--line);background:#fff;grid-template-columns:38px minmax(0,1fr) minmax(0,.7fr) 72px;align-items:center;gap:8px;padding:12px;display:grid}.website-preview-nav span{background:linear-gradient(135deg, var(--primary), #130c44);color:#fff;border-radius:10px;place-items:center;width:38px;height:38px;font-weight:950;display:grid}.website-preview-nav i{background:#dbe7f7;border-radius:999px;height:9px}.website-preview-hero{background:linear-gradient(180deg, #0f21471f, #0f2147db), var(--website-preview-image,url(/images/hero-poster.jpg)) center / cover no-repeat;color:#fff;align-content:end;gap:10px;min-height:320px;padding:24px;display:grid}.website-preview-hero small{color:#bfdbfe;letter-spacing:.08em;text-transform:uppercase;font-size:.72rem;font-weight:950}.website-preview-hero strong{color:#fff;max-width:420px;font-size:clamp(1.7rem,3vw,2.55rem);font-weight:950;line-height:.98}.website-preview-hero p{color:#dbeafe;max-width:420px;margin:0;font-size:.92rem;line-height:1.55}.website-status-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;display:grid}.website-status-grid div{border:1px solid var(--line-strong);border-radius:var(--radius-md);min-height:86px;box-shadow:var(--shadow-xs);background:#fff;align-content:center;gap:4px;padding:15px;display:grid}.website-status-grid span{color:var(--muted);text-transform:uppercase;letter-spacing:.04em;font-size:.78rem;font-weight:850}.website-status-grid strong{color:var(--ink);font-size:1.2rem;font-weight:950}.website-studio-form{gap:14px;display:grid}.website-section-card{padding:0;overflow:hidden}.website-section-card>.admin-card-head{border-bottom:1px solid var(--line);background:linear-gradient(#fff,#f7faff);margin:0;padding:20px 22px}.website-section-card>:not(.admin-card-head){margin-inline:22px}.website-section-card>label,.website-section-card>.form-grid{margin-top:18px}.website-section-card>label:last-child,.website-section-card>.form-grid:last-child{margin-bottom:22px}.website-section-card textarea{resize:vertical;min-height:118px}.website-publish-card{background:linear-gradient(135deg,#fff,#eff6ff)}.website-toggle{border:1px solid var(--primary);grid-template-columns:auto minmax(0,1fr);align-items:center;padding:18px;gap:14px!important;display:grid!important}@supports (color:color-mix(in lab, red, red)){.website-toggle{border:1px solid color-mix(in srgb, var(--primary) 18%, var(--line))}}.website-toggle{border-radius:var(--radius-md);background:#fff;color:var(--ink)!important}.website-toggle input{width:20px;height:20px;min-height:20px;accent-color:var(--primary)}.website-toggle strong,.website-toggle small{display:block}.website-toggle strong{color:var(--ink);font-weight:950}.website-toggle small{color:var(--muted);margin-top:3px;font-weight:650;line-height:1.45}.website-studio-save{z-index:5;border-radius:var(--radius-md);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);box-shadow:var(--shadow-md);background:#ffffffdb;border:1px solid #dbe7f7db;justify-content:flex-end;padding:14px;display:flex;position:sticky;bottom:14px}.website-studio-save button{min-width:210px}.media-picker-grid{grid-template-columns:minmax(260px,.9fr) minmax(0,1fr);align-items:stretch;gap:14px;display:grid}.media-picker{border:1px dashed var(--primary);grid-template-columns:118px minmax(0,1fr);align-items:center;min-height:132px;padding:14px;position:relative;gap:14px!important;display:grid!important}@supports (color:color-mix(in lab, red, red)){.media-picker{border:1px dashed color-mix(in srgb, var(--primary) 34%, var(--line-strong))}}.media-picker{border-radius:var(--radius-md);cursor:pointer;box-shadow:var(--shadow-xs);background:linear-gradient(135deg,#fff,#f7faff);transition:border-color .16s,transform .16s,box-shadow .16s;color:var(--ink)!important}.media-picker:hover,.media-picker.has-selection{border-color:var(--primary);box-shadow:var(--shadow-sm);transform:translateY(-1px)}.media-picker-preview{width:118px;height:92px;color:var(--primary-strong);border:1px solid var(--line);background:#eff6ff;border-radius:8px;place-items:center;display:grid;overflow:hidden}.media-picker-preview img{object-fit:cover;width:100%;height:100%}.media-picker-preview svg{width:34px;height:34px}.media-picker-copy{gap:5px;min-width:0;display:grid}.media-picker-copy strong,.media-picker>strong{color:var(--ink);font-weight:950}.media-picker-copy small,.media-picker>small{color:var(--muted);font-weight:650;line-height:1.45}.media-picker input[type=file]{opacity:0;cursor:pointer;position:absolute;inset:0}.upload-card.media-picker{text-align:center;grid-template-columns:1fr;justify-items:center}.upload-card.media-picker .media-picker-preview{width:100%;height:150px}.admin-profile-hero{border:1px solid var(--line-strong);border-radius:var(--radius-lg);background:linear-gradient(135deg, #fff 0%, var(--primary-soft) 100%);grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:22px;padding:28px;display:grid}@supports (color:color-mix(in lab, red, red)){.admin-profile-hero{background:linear-gradient(135deg, #fff 0%, color-mix(in srgb, var(--primary-soft) 34%, #fff) 100%)}}.admin-profile-hero{box-shadow:var(--shadow-sm)}.admin-profile-avatar-wrap{border:1px solid var(--line-strong);background:#fff;border-radius:24px;place-items:center;width:94px;height:94px;display:grid;box-shadow:0 12px 24px #0f172a14}.admin-profile-hero .admin-profile-avatar{border-radius:18px;width:72px;height:72px;font-size:1.35rem}.admin-profile-hero h2{color:var(--ink);margin:2px 0 6px;font-size:clamp(1.6rem,2.8vw,2.5rem);font-weight:950;line-height:1.05}.admin-profile-meta-row{flex-wrap:wrap;gap:8px;margin-top:12px;display:flex}.admin-profile-meta-row span{border:1px solid var(--line);min-height:30px;color:var(--ink);background:#ffffffc7;border-radius:999px;align-items:center;padding:5px 10px;font-size:.8rem;font-weight:850;display:inline-flex}.admin-profile-hero .admin-profile-badges{flex-direction:column;align-items:flex-end}.profile-filter-bar{grid-template-columns:minmax(160px,1fr) minmax(130px,auto) auto;gap:10px;padding:16px 24px 0;display:grid}.profile-filter-bar--wide{grid-template-columns:minmax(150px,.8fr) repeat(2,minmax(130px,.6fr)) auto}.profile-filter-bar input,.profile-filter-bar select{width:100%;min-height:42px}.profile-pagination{padding:0 24px 22px}.profile-pagination nav{color:var(--muted);flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:8px;font-size:.84rem;display:flex}.profile-pagination a,.profile-pagination span{text-decoration:none}.admin-dashboard{gap:22px}.admin-dashboard .admin-welcome-hero{background:linear-gradient(135deg, var(--primary-strong) 0%, var(--primary) 58%, #130c44 100%);border-radius:18px}@supports (color:color-mix(in lab, red, red)){.admin-dashboard .admin-welcome-hero{background:linear-gradient(135deg, color-mix(in srgb, var(--primary-strong) 92%, #0f172a) 0%, var(--primary) 58%, #130c44 100%)}}.admin-dashboard .admin-module-strip{grid-template-columns:repeat(auto-fit,minmax(185px,1fr))}.admin-dashboard .admin-module-link,.admin-dashboard .admin-metric-card,.admin-dashboard .admin-contact-card,.admin-dashboard .admin-module-icon,.admin-dashboard .admin-metric-icon,.admin-dashboard .admin-contact-icon{border-radius:14px}.admin-dashboard svg,.admin-card--calendar{overflow:visible}.admin-calendar-summary{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;padding:0 24px 16px;display:grid}.admin-calendar-summary div{border:1px solid var(--line);background:var(--primary-soft);border-radius:12px;gap:3px;padding:13px 14px;display:grid}@supports (color:color-mix(in lab, red, red)){.admin-calendar-summary div{background:color-mix(in srgb, var(--primary-soft) 22%, var(--panel))}}.admin-calendar-summary strong{color:var(--ink);font-size:1.3rem;font-weight:950;line-height:1}.admin-calendar-summary span{color:var(--muted);font-size:.78rem;font-weight:800}.admin-dashboard-calendar-grid{padding:0 24px 18px}.admin-dashboard-calendar-cell{border-color:var(--line);min-height:78px;box-shadow:var(--shadow-xs);background:#fff;align-content:start;justify-items:stretch;padding:10px;position:relative}.admin-dashboard-calendar-cell small{max-width:none;min-height:2.2em;color:var(--muted);white-space:normal;margin-top:6px;font-size:.7rem;display:block;overflow:hidden}.admin-dashboard-calendar-cell.is-outside{opacity:.42;background:var(--field)}@supports (color:color-mix(in lab, red, red)){.admin-dashboard-calendar-cell.is-outside{background:color-mix(in srgb, var(--field) 60%, transparent)}}.admin-dashboard-calendar-cell.is-outside{box-shadow:none}.admin-dashboard-calendar-cell.is-today{border-color:var(--primary);background:var(--primary-soft)}@supports (color:color-mix(in lab, red, red)){.admin-dashboard-calendar-cell.is-today{background:color-mix(in srgb, var(--primary-soft) 65%, #fff)}}.admin-dashboard-calendar-cell.is-today{box-shadow:0 0 0 2px var(--primary-ring), var(--shadow-sm)}.admin-dashboard-calendar-cell.has-holiday{background:#fffbeb;border-color:#f59e0b}.admin-dashboard-calendar-cell.tone-finance,.admin-dashboard-calendar-cell.tone-session{border-color:#130c44}.admin-dashboard-calendar-cell.tone-notice{border-color:var(--primary)}.calendar-date-row{justify-content:space-between;align-items:center;gap:8px;display:flex}.calendar-date-row strong{color:var(--ink);font-size:.95rem;font-weight:950}.calendar-date-row span{background:var(--primary);color:#fff;border-radius:999px;place-items:center;min-width:22px;height:22px;padding:0 6px;font-size:.7rem;font-weight:950;display:inline-grid}.calendar-event-dots,.admin-calendar-legend{flex-wrap:wrap;align-items:center;gap:5px;display:flex}.calendar-event-dots{margin-top:7px}.calendar-event-dots i,.admin-calendar-legend i{background:var(--primary);border-radius:999px;width:8px;height:8px}.dot-holiday{background:#f59e0b!important}.dot-finance{background:#130c44!important}.dot-session{background:#0284c7!important}.dot-notice,.dot-today{background:var(--primary)!important}.admin-calendar-legend{color:var(--muted);padding:0 24px 18px;font-size:.76rem;font-weight:850}.admin-calendar-legend span{border:1px solid var(--line);background:var(--field);border-radius:999px;align-items:center;gap:6px;min-height:26px;padding:0 9px;display:inline-flex}.admin-calendar-agenda{border:1px solid var(--line);background:var(--field);border-radius:14px;gap:8px;margin:0 24px 24px;padding:16px;display:grid}@supports (color:color-mix(in lab, red, red)){.admin-calendar-agenda{background:color-mix(in srgb, var(--field) 70%, var(--panel))}}.admin-calendar-agenda h4{color:var(--ink);font-size:.92rem;font-weight:950}.agenda-item{border-top:1px solid var(--line);grid-template-columns:54px minmax(0,1fr);align-items:center;gap:10px;padding:10px 0;display:grid}.agenda-item:first-of-type{border-top:0}.agenda-item time{border:1px solid var(--line-strong);min-height:38px;color:var(--ink);background:#fff;border-radius:10px;place-items:center;font-size:.78rem;font-weight:950;display:grid}.agenda-item strong{color:var(--ink);overflow-wrap:anywhere;font-size:.88rem;font-weight:950;display:block}.agenda-item small{color:var(--muted);font-size:.78rem;font-weight:750}.agenda-item--holiday time{color:#92400e;background:#fffbeb;border-color:#fbbf24}.agenda-item--finance time,.agenda-item--session time{color:#130c44;background:#eff6ff;border-color:#c9c6dc}.agenda-item--notice time{color:var(--primary-strong);background:var(--primary-soft);border-color:var(--primary)}@supports (color:color-mix(in lab, red, red)){.agenda-item--notice time{border-color:color-mix(in srgb, var(--primary) 38%, var(--line-strong))}}.admin-dashboard .admin-card{border-radius:16px;overflow:hidden}.admin-dashboard .admin-card-head{background:#fff;align-items:center;padding:20px 24px}.admin-section-title{align-items:center;gap:12px;min-width:0;display:flex}.admin-section-icon{color:#130c44;background:#eff6ff;border-radius:12px;flex:none;place-items:center;width:42px;height:42px;display:grid}.admin-section-icon svg{fill:none;stroke:currentColor;stroke-width:1.9px;stroke-linecap:round;stroke-linejoin:round;width:21px;height:21px}.admin-section-icon--calendar{color:#130c44;background:#eff6ff}.admin-section-icon--notice{background:var(--primary-soft);color:var(--primary-strong)}.admin-section-icon--activity{color:#b45309;background:#fffbeb}.admin-dashboard .admin-card-link{min-height:34px;color:var(--primary-strong);border:1px solid var(--line);background:#f2f8f5;border-radius:999px;align-items:center;padding:0 12px;font-weight:900;display:inline-flex}.admin-dashboard .admin-card-link:hover{background:var(--primary);color:#fff;border-color:var(--primary);text-decoration:none}.admin-card--chart .admin-finance-bars{gap:12px;padding:4px 24px 22px}.admin-finance-bar-row{border:1px solid var(--line);background:linear-gradient(#fff 0%,#f7faff 100%);border-radius:14px;padding:15px 16px}.admin-finance-bar-label{grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:10px;display:grid}.admin-finance-bar-label>span:not(.admin-finance-dot){color:#39564c;font-size:.9rem;font-weight:900}.admin-finance-bar-label strong{color:var(--ink);font-size:1rem;font-weight:950}.admin-finance-dot{width:12px;height:12px;box-shadow:0 0 0 4px}@supports (color:color-mix(in lab, red, red)){.admin-finance-dot{box-shadow:0 0 0 4px color-mix(in srgb, currentColor 12%, transparent)}}.admin-finance-bar-track{background:#eef4f1;height:8px}.admin-finance-footer{border-top:1px solid var(--line);background:#f7faff;margin:0;padding:18px 24px 24px}.admin-finance-footer div{background:#fff;border-color:#dbe7f7;min-height:82px;padding:16px}.admin-finance-footer span{color:#496158;letter-spacing:.04em;font-size:.76rem;font-weight:950}.admin-finance-footer strong{font-size:1.25rem;font-weight:950}.admin-dashboard-secondary .admin-card>.admin-feed{padding:0 24px 22px}.admin-feed{gap:10px;padding-left:0}.admin-feed:before{display:none}.admin-feed-item{border:1px solid var(--line);box-shadow:var(--shadow-xs);background:#fff;border-radius:14px;grid-template-columns:auto minmax(0,1fr);gap:12px;padding:14px}.admin-feed-item:first-child{padding-top:14px}.admin-feed-item:last-child{padding-bottom:14px}.admin-feed-marker{width:12px;height:12px;box-shadow:0 0 0 5px var(--primary-soft);border:0;margin-top:5px}.admin-feed-item time{color:var(--primary-strong);font-weight:950}.admin-feed-item strong{font-size:.96rem;font-weight:950}.admin-feed-item p{color:#5d7169;font-size:.88rem}.admin-feed-item small{color:#6f827a;font-weight:750}.admin-feed-item:hover{border-color:var(--primary);transform:translateY(-2px)}@supports (color:color-mix(in lab, red, red)){.admin-feed-item:hover{border-color:color-mix(in srgb, var(--primary) 24%, var(--line))}}.admin-feed-item:hover{box-shadow:var(--shadow-sm)}.admin-dashboard{--dash-card-radius:16px;--dash-icon-radius:12px;--dash-border:#dbe7f7;--dash-card-bg:#fff;--dash-soft:#f6faf8;--dash-accent:var(--primary);--dash-accent-strong:var(--primary-strong);--dash-ink:#12213f;--dash-muted:#5d708f;--dash-label:#3f5a50}.admin-dashboard .admin-card,.admin-dashboard .admin-module-link,.admin-dashboard .admin-metric-card,.admin-dashboard .admin-contact-card{border-color:var(--dash-border);border-radius:var(--dash-card-radius);background:var(--dash-card-bg);box-shadow:0 12px 30px #0f21470e}.admin-dashboard .admin-card:hover,.admin-dashboard .admin-module-link:hover,.admin-dashboard .admin-metric-card:hover,.admin-dashboard .admin-contact-card:hover{border-color:var(--dash-accent);transform:translateY(-2px)}@supports (color:color-mix(in lab, red, red)){.admin-dashboard .admin-card:hover,.admin-dashboard .admin-module-link:hover,.admin-dashboard .admin-metric-card:hover,.admin-dashboard .admin-contact-card:hover{border-color:color-mix(in srgb, var(--dash-accent) 32%, var(--dash-border))}}.admin-dashboard .admin-card:hover,.admin-dashboard .admin-module-link:hover,.admin-dashboard .admin-metric-card:hover,.admin-dashboard .admin-contact-card:hover{box-shadow:0 18px 38px #0f214714}.admin-dashboard .section-kicker,.admin-dashboard .admin-metric-body small,.admin-dashboard .admin-contact-copy small,.admin-dashboard .admin-finance-footer span,.admin-dashboard .admin-calendar-summary span{color:var(--dash-label);letter-spacing:.04em;text-transform:uppercase;font-size:.76rem;font-weight:900}.admin-dashboard h3,.admin-dashboard .admin-module-text strong,.admin-dashboard .admin-contact-copy strong,.admin-dashboard .admin-feed-item strong,.admin-dashboard .agenda-item strong{color:var(--dash-ink);letter-spacing:0;font-weight:900}.admin-dashboard p,.admin-dashboard small,.admin-dashboard .admin-module-text small,.admin-dashboard .admin-metric-hint{color:var(--dash-muted);font-weight:650}.admin-dashboard .admin-welcome-hero{background:linear-gradient(135deg,#0f2147 0%,#130c44 54% 100%);box-shadow:0 26px 64px #0f214742}.admin-dashboard .admin-welcome-hero .admin-welcome-greeting,.admin-dashboard .admin-welcome-hero .section-kicker,.admin-dashboard .admin-welcome-hero h2,.admin-dashboard .admin-welcome-hero p,.admin-dashboard .admin-welcome-hero .admin-chip,.admin-dashboard .admin-welcome-highlight .section-kicker,.admin-dashboard .admin-welcome-highlight small,.admin-dashboard .admin-welcome-highlight a{color:#eff6ff}.admin-dashboard .admin-welcome-hero p,.admin-dashboard .admin-welcome-highlight small{text-shadow:0 1px 2px #0f21473d}.admin-dashboard .admin-welcome-highlight{background:#0f214775}.admin-dashboard .admin-module-icon,.admin-dashboard .admin-metric-icon,.admin-dashboard .admin-contact-icon,.admin-dashboard .admin-section-icon{border-radius:var(--dash-icon-radius);background:var(--dash-accent);width:44px;height:44px}@supports (color:color-mix(in lab, red, red)){.admin-dashboard .admin-module-icon,.admin-dashboard .admin-metric-icon,.admin-dashboard .admin-contact-icon,.admin-dashboard .admin-section-icon{background:color-mix(in srgb, var(--dash-accent) 12%, #fff)}}.admin-dashboard .admin-module-icon,.admin-dashboard .admin-metric-icon,.admin-dashboard .admin-contact-icon,.admin-dashboard .admin-section-icon{color:var(--dash-accent-strong)}.admin-dashboard .admin-module-icon svg,.admin-dashboard .admin-metric-icon svg,.admin-dashboard .admin-contact-icon svg,.admin-dashboard .admin-section-icon svg{stroke-width:1.9px;width:21px;height:21px}.admin-dashboard .admin-metric-card{grid-template-columns:44px minmax(0,1fr);gap:14px;min-height:112px}.admin-dashboard .admin-metric-arrow{display:none}.admin-dashboard .admin-metric-body strong{color:var(--dash-ink);letter-spacing:0;font-size:clamp(1.45rem,2.1vw,1.9rem);font-weight:950}.admin-dashboard .admin-metric-card--blue,.admin-dashboard .admin-metric-card--cyan,.admin-dashboard .admin-metric-card--gold,.admin-dashboard .admin-metric-card--emerald{--metric-bg:var(--dash-accent)}@supports (color:color-mix(in lab, red, red)){.admin-dashboard .admin-metric-card--blue,.admin-dashboard .admin-metric-card--cyan,.admin-dashboard .admin-metric-card--gold,.admin-dashboard .admin-metric-card--emerald{--metric-bg:color-mix(in srgb, var(--dash-accent) 12%, #fff)}}.admin-dashboard .admin-metric-card--blue,.admin-dashboard .admin-metric-card--cyan,.admin-dashboard .admin-metric-card--gold,.admin-dashboard .admin-metric-card--emerald{--metric-color:var(--dash-accent-strong)}.admin-dashboard .admin-card-head{border-bottom:1px solid var(--dash-border);background:linear-gradient(180deg, #fff 0%, var(--dash-soft) 100%);min-height:84px;margin:0}.admin-dashboard .admin-card-link{color:var(--dash-accent-strong);border-color:var(--dash-border);background:#fff;border-radius:999px}.admin-dashboard .admin-card-link:hover{background:var(--dash-accent);color:#fff}.admin-dashboard .admin-finance-bar-row,.admin-dashboard .admin-finance-footer div,.admin-dashboard .admin-calendar-summary div,.admin-dashboard .admin-calendar-agenda,.admin-dashboard .admin-feed-item,.admin-dashboard .agenda-item time{border-color:var(--dash-border);background:#fff;border-radius:14px}.admin-dashboard .admin-finance-bar-label>span:not(.admin-finance-dot),.admin-dashboard .admin-finance-bar-label strong,.admin-dashboard .admin-finance-footer strong,.admin-dashboard .admin-calendar-summary strong{color:var(--dash-ink);font-weight:950}.admin-dashboard .admin-finance-bar-track{background:#edf4f0;height:8px}.admin-dashboard .admin-contact-card{min-height:82px}.admin-dashboard .admin-contact-card--blue,.admin-dashboard .admin-contact-card--cyan,.admin-dashboard .admin-contact-card--gold,.admin-dashboard .admin-contact-card--emerald{--contact-accent:var(--dash-accent-strong)}.admin-dashboard .admin-feed-item{box-shadow:none}.admin-dashboard .admin-feed-marker{background:var(--dash-accent);box-shadow:0 0 0 5px var(--dash-accent)}@supports (color:color-mix(in lab, red, red)){.admin-dashboard .admin-feed-marker{box-shadow:0 0 0 5px color-mix(in srgb, var(--dash-accent) 12%, #fff)}}.admin-dashboard .admin-dashboard-calendar-cell{border-color:var(--dash-border);border-radius:12px}@supports (color:color-mix(in lab, red, red)){.admin-dashboard .admin-dashboard-calendar-cell.tone-finance,.admin-dashboard .admin-dashboard-calendar-cell.tone-session,.admin-dashboard .admin-dashboard-calendar-cell.tone-notice{border-color:color-mix(in srgb, var(--dash-accent) 35%, var(--dash-border))}}.guardian-dashboard,.guardian-finance-page,.guardian-pupils-page,.guardian-reports-page,.guardian-attendance-page{gap:22px;width:100%;max-width:none;margin:0;display:grid}.guardian-dashboard>.admin-welcome-hero,.guardian-finance-page>div:first-child,.guardian-pupils-page>header,.guardian-reports-page>header,.guardian-attendance-page>header{box-sizing:border-box;width:100%;max-width:none;margin:0}.guardian-dashboard>.admin-welcome-hero{background:linear-gradient(135deg,#0f2147 0%,#130c44 54% 100%);border:1px solid #ffffff24;border-radius:18px;padding-left:clamp(24px,4vw,40px);padding-right:clamp(24px,4vw,40px);box-shadow:0 26px 64px #0f214738}.guardian-dashboard>.admin-welcome-hero h2,.guardian-dashboard>.admin-welcome-hero p,.guardian-dashboard>.admin-welcome-hero .admin-welcome-greeting,.guardian-dashboard>.admin-welcome-hero .section-kicker,.guardian-dashboard>.admin-welcome-hero .admin-chip,.guardian-dashboard>.admin-welcome-highlight .section-kicker,.guardian-dashboard>.admin-welcome-highlight small,.guardian-dashboard>.admin-welcome-highlight a{color:#eff6ff}.guardian-dashboard>.admin-welcome-hero p,.guardian-dashboard>.admin-welcome-highlight small{text-shadow:0 1px 2px #0f214738}.guardian-dashboard>.admin-welcome-highlight{background:#0f214775}.guardian-filter-bar{padding-bottom:16px}.guardian-filter-bar .secondary-action{align-self:end;min-height:42px}.guardian-finance-hero{align-items:flex-end}.guardian-finance-summary{border-radius:var(--radius-md);background:var(--field);flex-wrap:wrap;gap:18px;padding:14px 18px;display:flex}@supports (color:color-mix(in lab, red, red)){.guardian-finance-summary{background:color-mix(in srgb, var(--field) 70%, var(--panel))}}.guardian-finance-summary{border:1px solid var(--line)}.guardian-finance-summary>div{gap:4px;min-width:120px;display:grid}.guardian-finance-summary span{color:var(--muted);text-transform:uppercase;letter-spacing:.04em;font-size:.82rem;font-weight:700}.guardian-finance-summary strong{color:var(--ink);letter-spacing:-.02em;font-size:1.35rem;font-weight:900}.guardian-finance-summary strong.is-due{color:#b91c1c}.guardian-register-log{padding:0 24px 8px}.guardian-register-log .register-table-head,.guardian-register-log .guardian-register-row{grid-template-columns:minmax(130px,.7fr) minmax(200px,1fr) minmax(110px,.45fr) minmax(0,1.1fr)}.guardian-register-log .guardian-register-row>div:first-child strong{color:var(--ink);font-weight:800;display:block}.guardian-register-log .guardian-register-row>div:first-child small{color:var(--muted);margin-top:2px;font-size:.82rem;display:block}.guardian-register-remarks{color:var(--muted);overflow-wrap:anywhere;font-size:.9rem;line-height:1.45}.guardian-reports-grid{align-items:start}.guardian-report-list .admin-record-row.is-active{border-color:var(--primary)}@supports (color:color-mix(in lab, red, red)){.guardian-report-list .admin-record-row.is-active{border-color:color-mix(in srgb, var(--primary) 35%, var(--line))}}.guardian-report-list .admin-record-row.is-active{background:var(--primary-soft)}.guardian-report-preview .detail-list.compact{gap:10px;display:grid}.guardian-report-preview .detail-list.compact>div{border-bottom:1px solid var(--line);justify-content:space-between;gap:12px;padding-bottom:10px;display:flex}.guardian-report-remarks{border-left:4px solid var(--primary);border-radius:var(--radius-md);background:var(--primary-soft);color:var(--ink);padding:14px 16px;font-style:italic;line-height:1.55}.guardian-report-more{color:var(--primary-strong);margin:0;padding:8px 0 0;font-size:.88rem;font-weight:700}.guardian-reports-filters{margin-bottom:-8px}.guardian-reports-layout{align-items:start}.guardian-reports-archive{gap:22px;min-width:0;display:grid}.guardian-report-year{border:1px solid var(--line-strong);border-radius:var(--radius-lg);background:var(--panel);box-shadow:var(--shadow-sm);gap:16px;padding:20px 22px;display:grid}.guardian-report-year-head{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;gap:12px;padding-bottom:14px;display:flex}.guardian-report-year-head h3{color:var(--ink);letter-spacing:-.03em;margin:0;font-size:1.35rem;font-weight:900}.guardian-report-year-head span{color:var(--muted);font-size:.86rem;font-weight:700}.guardian-report-term{gap:12px;display:grid}.guardian-report-term-head{border-radius:var(--radius-md);background:var(--primary-soft);justify-content:space-between;align-items:center;gap:10px;padding:10px 12px;display:flex}@supports (color:color-mix(in lab, red, red)){.guardian-report-term-head{background:color-mix(in srgb, var(--primary-soft) 55%, var(--field))}}.guardian-report-term-head{border:1px solid var(--primary)}@supports (color:color-mix(in lab, red, red)){.guardian-report-term-head{border:1px solid color-mix(in srgb, var(--primary) 14%, var(--line))}}.guardian-report-term-head strong{color:var(--ink);font-size:1rem;font-weight:800}.guardian-report-term-head span{color:var(--muted);font-size:.82rem;font-weight:700}.guardian-report-card-grid{grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:12px;display:grid}.guardian-report-card{border:1px solid var(--line-strong);border-radius:var(--radius-md);background:var(--field);color:var(--ink);gap:12px;padding:14px 16px;text-decoration:none;transition:border-color .15s,background-color .15s,box-shadow .15s,transform .15s;display:grid}.guardian-report-card:hover{border-color:var(--primary)}@supports (color:color-mix(in lab, red, red)){.guardian-report-card:hover{border-color:color-mix(in srgb, var(--primary) 30%, var(--line))}}.guardian-report-card:hover{background:var(--panel);box-shadow:var(--shadow-sm);transform:translateY(-2px)}.guardian-report-card.is-active{border-color:var(--primary)}@supports (color:color-mix(in lab, red, red)){.guardian-report-card.is-active{border-color:color-mix(in srgb, var(--primary) 40%, var(--line))}}.guardian-report-card.is-active{background:var(--primary-soft);box-shadow:0 0 0 1px var(--primary)}@supports (color:color-mix(in lab, red, red)){.guardian-report-card.is-active{box-shadow:0 0 0 1px color-mix(in srgb, var(--primary) 18%, transparent)}}.guardian-report-card-top{grid-template-columns:40px minmax(0,1fr);align-items:center;gap:10px;display:grid}.guardian-report-card-avatar{background:linear-gradient(145deg, var(--primary) 0%, var(--primary-strong) 100%);color:#fff;text-transform:uppercase;border-radius:10px;place-items:center;width:40px;height:40px;font-weight:800;display:grid}.guardian-report-card-top strong{color:var(--ink);font-weight:800;display:block}.guardian-report-card-top small{color:var(--muted);margin-top:2px;font-size:.82rem;display:block}.guardian-report-card-meta{border-top:1px solid var(--line);color:var(--muted);justify-content:space-between;align-items:center;gap:8px;padding-top:10px;font-size:.84rem;font-weight:700;display:flex}.guardian-report-card-meta strong{color:var(--primary-strong);font-size:.88rem}.guardian-report-feed{gap:14px;display:grid}.guardian-report-full-card{border:1px solid var(--line-strong);border-radius:var(--radius-lg);background:var(--field);box-shadow:var(--shadow-xs);gap:16px;padding:18px;display:grid}.guardian-report-full-head{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;gap:14px;padding-bottom:14px;display:flex}.guardian-report-full-actions{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:10px;display:flex}.guardian-report-full-actions>span{border-radius:var(--radius-sm);background:var(--primary-soft);min-height:34px;color:var(--primary-strong);align-items:center;padding:0 12px;font-size:.82rem;font-weight:800;display:inline-flex}.guardian-report-full-meta{grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;display:grid}.guardian-report-full-meta>div{border:1px solid var(--line);border-radius:var(--radius-md);background:var(--panel);padding:12px 14px}.guardian-report-full-meta span{color:var(--muted);text-transform:uppercase;letter-spacing:.04em;font-size:.74rem;font-weight:800;display:block}.guardian-report-full-meta strong{color:var(--ink);margin-top:4px;font-size:.95rem;font-weight:850;display:block}.guardian-report-grade-table{border:1px solid var(--line);border-radius:var(--radius-md);background:var(--panel);overflow:hidden}.guardian-report-preview-body{gap:18px;padding:0 24px 24px;display:grid}.guardian-report-preview-empty{padding:32px 24px}.guardian-reports-page{gap:26px}.guardian-reports-page>.admin-page-head{padding:clamp(22px,3vw,34px)}.guardian-reports-filters{border:1px solid var(--line-strong);border-radius:var(--radius-lg);background:var(--panel);box-shadow:var(--shadow-xs);margin:0;padding:18px}.guardian-reports-layout{display:block}.guardian-reports-archive{gap:28px}.guardian-report-year{border-radius:18px;gap:24px;padding:clamp(22px,3vw,32px)}.guardian-report-year-head{padding-bottom:18px}.guardian-report-term{gap:16px}.guardian-report-term+.guardian-report-term{border-top:1px solid var(--line);padding-top:20px}.guardian-report-term-head{border-radius:14px;padding:14px 18px}.guardian-report-term-head strong{font-size:1.08rem}.guardian-report-feed{gap:18px}.guardian-report-full-card{background:linear-gradient(180deg, #f7faff 0%, #fff 34%), var(--panel);border-color:var(--primary);border-radius:18px;gap:22px;padding:clamp(20px,2.6vw,30px)}@supports (color:color-mix(in lab, red, red)){.guardian-report-full-card{border-color:color-mix(in srgb, var(--primary) 16%, var(--line-strong))}}.guardian-report-full-card{box-shadow:0 18px 42px #0f172a12}.guardian-report-full-head{border-bottom-color:var(--primary);gap:18px;padding-bottom:18px}@supports (color:color-mix(in lab, red, red)){.guardian-report-full-head{border-bottom-color:color-mix(in srgb, var(--primary) 14%, var(--line))}}.guardian-report-card-top{grid-template-columns:48px minmax(0,1fr);gap:14px}.guardian-report-card-avatar{border-radius:14px;width:48px;height:48px}.guardian-report-card-top strong{font-size:1.04rem}.guardian-report-card-top small{margin-top:4px;line-height:1.4}.guardian-report-full-actions .secondary-action{min-height:38px}.guardian-report-full-meta{gap:12px}.guardian-report-full-meta>div{background:var(--primary-soft);padding:14px 16px}@supports (color:color-mix(in lab, red, red)){.guardian-report-full-meta>div{background:color-mix(in srgb, var(--primary-soft) 34%, #fff)}}.guardian-report-full-meta>div{border-color:var(--primary)}@supports (color:color-mix(in lab, red, red)){.guardian-report-full-meta>div{border-color:color-mix(in srgb, var(--primary) 12%, var(--line))}}.guardian-report-remarks{border-radius:14px;padding:16px 18px}.guardian-report-grade-table{border-color:var(--primary);background:#fff;padding:6px 18px}@supports (color:color-mix(in lab, red, red)){.guardian-report-grade-table{border-color:color-mix(in srgb, var(--primary) 10%, var(--line))}}.guardian-report-grade-table article{padding:14px 0}.guardian-report-footer{border:1px solid var(--primary);gap:8px;padding:18px 20px;display:grid}@supports (color:color-mix(in lab, red, red)){.guardian-report-footer{border:1px solid color-mix(in srgb, var(--primary) 16%, var(--line))}}.guardian-report-footer{border-left:5px solid var(--primary);background:linear-gradient(135deg, var(--primary-soft) 0%, #fff 100%);border-radius:16px}.guardian-report-footer span{color:var(--primary-strong);letter-spacing:.05em;text-transform:uppercase;font-size:.75rem;font-weight:900}.guardian-report-footer p{color:var(--ink);margin:0;font-weight:600;line-height:1.6}.guardian-reports-pagination{margin-top:22px}.guardian-dashboard{min-width:0}.guardian-dashboard-primary{grid-template-columns:repeat(2,minmax(0,1fr))}.guardian-dashboard-children-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;padding:0 24px 24px;display:grid}.guardian-dashboard-children-grid .guardian-child-card{min-height:100%}.guardian-dashboard-children-grid .guardian-child-card span{color:var(--muted);margin-top:2px;font-size:.86rem;display:block}.guardian-dashboard-children-grid .guardian-child-card small{color:var(--muted-light);margin-top:4px;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:.78rem;display:block}.guardian-dashboard-empty{grid-column:1/-1;padding:8px 0 4px}.guardian-attendance-list{gap:0;padding:0 24px 20px;display:grid}.guardian-attendance-row{border-bottom:1px solid var(--line);grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:12px;padding:14px 0;display:grid}.guardian-attendance-row:last-child{border-bottom:0;padding-bottom:4px}.guardian-attendance-row:first-child{padding-top:4px}.guardian-attendance-copy strong{color:var(--ink);font-weight:700;display:block}.guardian-attendance-copy small{color:var(--muted);margin-top:3px;font-size:.86rem;display:block}.guardian-dashboard-feed{padding:0 24px 20px}.guardian-dashboard .admin-card{padding:0;overflow:hidden}.guardian-dashboard .admin-card-head{border-bottom:1px solid var(--line);background:var(--field);margin-bottom:0;padding:18px 24px}@supports (color:color-mix(in lab, red, red)){.guardian-dashboard .admin-card-head{background:color-mix(in srgb, var(--field) 65%, var(--panel))}}@media (width<=1180px){.guardian-dashboard-primary{grid-template-columns:1fr}.guardian-dashboard-children-grid{grid-template-columns:1fr 1fr}}@media (width<=900px){.school-app--admin .mobile-bar{z-index:45;min-height:64px;margin:0;padding:10px 12px;display:grid;position:fixed;top:0;left:0;right:0}.school-app--admin .workspace{gap:14px;min-width:0;padding:76px 14px 24px;overflow-x:clip}.school-app--admin .workspace-header{display:none}.school-app--admin .nav-toggle:checked~.side-rail{z-index:50}.school-app--admin .side-rail{width:min(88vw,320px)}.guardian-reports-layout{grid-template-columns:1fr}.guardian-report-preview{order:-1}.guardian-report-card-grid{grid-template-columns:1fr}.guardian-report-full-head{flex-direction:column;align-items:flex-start}.guardian-report-full-actions{justify-content:flex-start}.guardian-report-full-meta{grid-template-columns:1fr}.guardian-reports-page{gap:18px}.guardian-reports-page>.admin-page-head,.guardian-report-year,.guardian-report-full-card{padding:18px}.guardian-reports-filters{padding:14px}.guardian-report-term-head{flex-direction:column;align-items:flex-start;padding:12px 14px}.guardian-report-card-top{grid-template-columns:42px minmax(0,1fr)}.guardian-report-card-avatar{border-radius:12px;width:42px;height:42px}.guardian-report-grade-table{padding:4px 12px}.guardian-dashboard-children-grid,.guardian-dashboard .admin-welcome-hero{grid-template-columns:1fr}}@media (width<=640px){.school-app--admin .workspace{padding:64px 10px 20px}.school-app--admin .mobile-bar{min-height:58px;padding:8px 10px}.school-app--admin .workspace{padding-top:70px}.mobile-bar-brand{width:32px;height:32px}.mobile-menu{width:40px;height:40px}.guardian-report-year,.pupil-report-year{padding:16px}.guardian-dashboard-children-grid,.guardian-attendance-list,.guardian-dashboard-feed,.pupil-assignment-list,.pupil-dashboard-feed,.guardian-dashboard .admin-card-head,.pupil-dashboard .admin-card-head,.pupil-profile-summary,.pupil-reports-hero,.pupil-reports-panel-head,.pupil-reports-toolbar,.pupil-report-list,.pupil-reports-pagination{padding-inline:16px}.pupil-report-sheet-masthead,.pupil-report-sheet-band,.pupil-report-sheet-grades,.pupil-report-sheet-remarks,.pupil-report-sheet-footer{padding-inline:18px}.pupil-report-sheet-summary-row{grid-template-columns:1fr}.pupil-report-sheet-summary-row article{border-right:0;border-bottom:1px solid var(--line)}.pupil-report-sheet-summary-row article:last-child{border-bottom:0}}.pupil-dashboard,.pupil-finance-page,.pupil-reports-page,.pupil-assignments-page,.pupil-materials-page{gap:22px;width:100%;max-width:none;margin:0;display:grid}.pupil-dashboard>.admin-welcome-hero,.pupil-finance-page>div:first-child,.pupil-reports-page>header,.pupil-assignments-page>header,.pupil-materials-page>header{box-sizing:border-box;width:100%;max-width:none;margin:0}.pupil-dashboard>.admin-welcome-hero{background:linear-gradient(135deg,#0c3d5c 0%,#155e8a 52%,#1d7fb8 100%);border:1px solid #ffffff24;border-radius:18px;padding-left:clamp(24px,4vw,40px);padding-right:clamp(24px,4vw,40px);box-shadow:0 26px 64px #08263a38}.pupil-dashboard>.admin-welcome-hero h2,.pupil-dashboard>.admin-welcome-hero p,.pupil-dashboard>.admin-welcome-hero .admin-welcome-greeting,.pupil-dashboard>.admin-welcome-hero .section-kicker,.pupil-dashboard>.admin-welcome-hero .admin-chip,.pupil-dashboard>.admin-welcome-highlight .section-kicker,.pupil-dashboard>.admin-welcome-highlight small,.pupil-dashboard>.admin-welcome-highlight a,.pupil-dashboard>.admin-welcome-highlight strong{color:#f0f9ff}.pupil-dashboard>.admin-welcome-highlight{background:#082f4975}.pupil-dashboard>.admin-welcome-highlight .admin-collection-ring-track{stroke:#e0f2fe4d}.pupil-dashboard>.admin-welcome-highlight .admin-collection-ring-fill{stroke:#7dd3fc;filter:drop-shadow(0 0 6px #7dd3fc8c)}.pupil-hero-score{letter-spacing:-.04em;font-size:clamp(2rem,4vw,2.8rem);font-weight:850;line-height:1}.pupil-filter-bar{padding-bottom:16px}.pupil-filter-bar .secondary-action{align-self:end;min-height:42px}.pupil-attendance-filter-section{width:100%}.pupil-attendance-filter-form{grid-template-columns:repeat(3,minmax(180px,1fr)) auto;align-items:end;gap:14px;width:100%;padding:18px 20px;display:grid}.pupil-attendance-filter-field{gap:8px;min-width:0;display:grid}.pupil-attendance-filter-field input,.pupil-attendance-filter-field select{width:100%;min-height:44px}.pupil-attendance-filter-actions{justify-content:flex-end;align-items:center;gap:8px;display:flex}.pupil-attendance-filter-actions .button,.pupil-attendance-filter-actions .button--ghost{white-space:nowrap;min-height:44px}.pupil-finance-hero{align-items:flex-end}.pupil-finance-summary{border-radius:var(--radius-md);background:var(--field);flex-wrap:wrap;gap:18px;padding:14px 18px;display:flex}@supports (color:color-mix(in lab, red, red)){.pupil-finance-summary{background:color-mix(in srgb, var(--field) 70%, var(--panel))}}.pupil-finance-summary{border:1px solid var(--line)}.pupil-finance-summary>div{gap:4px;min-width:120px;display:grid}.pupil-finance-summary span{color:var(--muted);text-transform:uppercase;letter-spacing:.04em;font-size:.82rem;font-weight:700}.pupil-finance-summary strong{color:var(--ink);letter-spacing:-.02em;font-size:1.35rem;font-weight:900}.pupil-finance-summary strong.is-due{color:#b91c1c}.pupil-invoice-table .admin-table-head,.pupil-invoice-row{grid-template-columns:minmax(0,1.2fr) minmax(100px,.7fr) minmax(90px,.5fr) minmax(90px,.5fr) auto}.pupil-invoice-row{border-bottom:1px solid var(--line);color:var(--ink);align-items:center;gap:12px;padding:14px 16px;text-decoration:none;display:grid}.pupil-invoice-row>a{color:inherit;text-decoration:none}.pupil-invoice-row .primary-action{justify-self:end;min-height:36px;padding:0 14px;font-size:.84rem}.pupil-reports-filters{margin-bottom:-8px}.pupil-reports-layout,.pupil-assignments-layout,.pupil-materials-layout{align-items:start}.pupil-reports-archive,.pupil-assignments-archive,.pupil-materials-archive{min-width:0}.pupil-report-year{border:1px solid var(--line-strong);border-radius:var(--radius-lg);background:var(--panel);box-shadow:var(--shadow-sm);gap:16px;padding:20px 22px;display:grid}.pupil-report-year-head{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;gap:12px;padding-bottom:14px;display:flex}.pupil-report-year-head h3{color:var(--ink);letter-spacing:-.03em;margin:0;font-size:1.35rem;font-weight:900}.pupil-report-term{gap:12px;display:grid}.pupil-report-term-head{border-radius:var(--radius-md);background:#e0f2fe;justify-content:space-between;align-items:center;gap:10px;padding:10px 12px;display:flex}@supports (color:color-mix(in lab, red, red)){.pupil-report-term-head{background:color-mix(in srgb, #e0f2fe 55%, var(--field))}}.pupil-report-term-head{border:1px solid #0284c7}@supports (color:color-mix(in lab, red, red)){.pupil-report-term-head{border:1px solid color-mix(in srgb, #0284c7 14%, var(--line))}}.pupil-report-card-grid{grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:12px;display:grid}.pupil-report-card{border:1px solid var(--line-strong);border-radius:var(--radius-md);background:var(--field);color:var(--ink);gap:12px;padding:14px 16px;text-decoration:none;transition:border-color .15s,background-color .15s,box-shadow .15s,transform .15s;display:grid}.pupil-report-card:hover{border-color:#0284c7}@supports (color:color-mix(in lab, red, red)){.pupil-report-card:hover{border-color:color-mix(in srgb, #0284c7 30%, var(--line))}}.pupil-report-card:hover{background:var(--panel);box-shadow:var(--shadow-sm);transform:translateY(-2px)}.pupil-report-card.is-active{border-color:#0284c7}@supports (color:color-mix(in lab, red, red)){.pupil-report-card.is-active{border-color:color-mix(in srgb, #0284c7 40%, var(--line))}}.pupil-report-card.is-active{background:#e0f2fe;box-shadow:0 0 0 1px #0284c72e}.pupil-report-card-top{grid-template-columns:40px minmax(0,1fr);align-items:center;gap:10px;display:grid}.pupil-report-card-avatar{color:#fff;text-transform:uppercase;background:linear-gradient(145deg,#0284c7 0%,#0369a1 100%);border-radius:10px;place-items:center;width:40px;height:40px;font-weight:800;display:grid}.pupil-report-card-meta{border-top:1px solid var(--line);color:var(--muted);justify-content:space-between;align-items:center;gap:8px;padding-top:10px;font-size:.84rem;font-weight:700;display:flex}.pupil-report-preview-body,.pupil-assignment-preview-body,.pupil-material-preview-body{gap:18px;padding:0 24px 24px;display:grid}.pupil-report-remarks{border-radius:var(--radius-md);color:var(--ink);background:#e0f2fe;border-left:4px solid #0284c7;padding:14px 16px;font-style:italic;line-height:1.55}.pupil-detail-copy{color:var(--muted);margin:0;padding:0 24px 8px;line-height:1.55}.pupil-work-archive{gap:0;padding:0 24px 20px;display:grid}.pupil-work-card{border-bottom:1px solid var(--line);color:var(--ink);grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:12px;padding:14px 0;text-decoration:none;transition:background-color .15s;display:grid}.pupil-work-card:last-child{border-bottom:0}.pupil-work-card:hover{background:var(--field)}@supports (color:color-mix(in lab, red, red)){.pupil-work-card:hover{background:color-mix(in srgb, var(--field) 50%, transparent)}}.pupil-work-card.is-active{border-radius:var(--radius-md);background:#e0f2fe;margin:0 -12px;padding-inline:12px}.pupil-work-card strong{font-weight:800;display:block}.pupil-work-card small{color:var(--muted);margin-top:2px;font-size:.82rem;display:block}.pupil-dashboard-primary{grid-template-columns:repeat(2,minmax(0,1fr))}.pupil-profile-summary{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;padding:0 24px 24px;display:grid}.pupil-profile-summary>div{border-radius:var(--radius-md);background:var(--field);border:1px solid var(--line);gap:4px;padding:14px 16px;display:grid}.pupil-profile-summary span{color:var(--muted);text-transform:uppercase;letter-spacing:.04em;font-size:.78rem;font-weight:700}.pupil-profile-summary strong{color:var(--ink);font-size:1rem;font-weight:800}.pupil-assignment-list{gap:0;padding:0 24px 20px;display:grid}.pupil-assignment-row{border-bottom:1px solid var(--line);color:var(--ink);grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:12px;padding:14px 0;text-decoration:none;display:grid}.pupil-assignment-row:last-child{border-bottom:0}.pupil-assignment-copy strong{font-weight:700;display:block}.pupil-assignment-copy small{color:var(--muted);margin-top:3px;font-size:.86rem;display:block}.pupil-dashboard .admin-card{padding:0;overflow:hidden}.pupil-dashboard .admin-card-head{border-bottom:1px solid var(--line);background:var(--field);margin-bottom:0;padding:18px 24px}@supports (color:color-mix(in lab, red, red)){.pupil-dashboard .admin-card-head{background:color-mix(in srgb, var(--field) 65%, var(--panel))}}.pupil-dashboard .admin-card>:not(.admin-card-head):not(.admin-table){padding-top:24px}.pupil-dashboard-feed{padding:0 24px 20px}.pupil-dashboard-empty{grid-column:1/-1;padding:8px 0 4px}.mobile-bar{grid-template-columns:44px minmax(0,1fr);align-items:center;gap:10px;display:none}.mobile-bar--pupil,.mobile-bar--with-actions{grid-template-columns:44px minmax(0,1fr) auto}.mobile-menu{background:var(--panel);border:1px solid var(--line-strong);width:44px;height:44px;color:var(--ink);box-shadow:var(--shadow-xs);cursor:pointer;border-radius:12px;justify-content:center;align-items:center;transition:background-color .15s,border-color .15s,box-shadow .15s;display:inline-flex}.mobile-menu:hover{background:var(--field);border-color:var(--primary)}@supports (color:color-mix(in lab, red, red)){.mobile-menu:hover{border-color:color-mix(in srgb, var(--primary) 25%, var(--line))}}.mobile-menu-icon{place-items:center;width:20px;height:20px;display:grid}.mobile-menu-icon svg{fill:none;stroke:currentColor;stroke-width:2.2px;stroke-linecap:round;width:20px;height:20px}.nav-toggle:checked~.workspace .mobile-menu{background:var(--primary);border-color:var(--primary);color:#fff;box-shadow:0 10px 24px var(--primary)}@supports (color:color-mix(in lab, red, red)){.nav-toggle:checked~.workspace .mobile-menu{box-shadow:0 10px 24px color-mix(in srgb, var(--primary) 28%, transparent)}}.nav-toggle:checked~.workspace .mobile-menu-icon svg path:first-child{transform-origin:50%;transform:translateY(5px)rotate(45deg)}.nav-toggle:checked~.workspace .mobile-menu-icon svg path:nth-child(2){opacity:0}.nav-toggle:checked~.workspace .mobile-menu-icon svg path:nth-child(3){transform-origin:50%;transform:translateY(-5px)rotate(-45deg)}.nav-toggle:checked~.workspace .mobile-menu-icon svg path{transition:transform .2s,opacity .2s}.mobile-bar-brand{background:linear-gradient(145deg, var(--primary) 0%, var(--primary-strong) 100%);color:#fff;width:36px;height:36px;box-shadow:0 8px 18px var(--primary);border-radius:10px;place-items:center;font-size:.9rem;font-weight:800;display:grid;overflow:hidden}@supports (color:color-mix(in lab, red, red)){.mobile-bar-brand{box-shadow:0 8px 18px color-mix(in srgb, var(--primary) 22%, transparent)}}.mobile-bar-brand img{object-fit:cover;width:100%;height:100%}.mobile-bar-title{gap:1px;min-width:0;display:grid}.mobile-bar-eyebrow{color:var(--muted);text-transform:uppercase;letter-spacing:.08em;font-size:.68rem;font-weight:700;line-height:1.2}.mobile-bar-title strong{text-overflow:ellipsis;white-space:nowrap;min-width:0;color:var(--ink);letter-spacing:-.02em;font-size:.98rem;font-weight:800;line-height:1.2;overflow:hidden}.mobile-bar-actions{align-items:center;gap:8px;display:flex}.mobile-notification-menu{position:relative}.mobile-notification-menu .notification-trigger{background:var(--panel);width:40px;height:40px;min-height:40px;color:var(--ink);border-color:var(--line-strong);box-shadow:var(--shadow-xs);border-radius:12px;justify-content:center;gap:0;padding:0}.mobile-notification-menu[open] .notification-trigger,.mobile-notification-menu .notification-trigger:hover,.mobile-notification-menu .notification-trigger:focus-visible{background:var(--primary-soft);border-color:var(--primary)}@supports (color:color-mix(in lab, red, red)){.mobile-notification-menu[open] .notification-trigger,.mobile-notification-menu .notification-trigger:hover,.mobile-notification-menu .notification-trigger:focus-visible{border-color:color-mix(in srgb, var(--primary) 30%, var(--line))}}.mobile-notification-menu[open] .notification-trigger,.mobile-notification-menu .notification-trigger:hover,.mobile-notification-menu .notification-trigger:focus-visible{color:var(--primary-strong);transform:none}.mobile-notification-menu .toolbar-label{display:none}.mobile-notification-menu .notification-count{border:2px solid var(--panel);color:#fff;background:#dc2626;min-width:18px;height:18px;padding:0 5px;font-size:.64rem;line-height:1;position:absolute;top:-5px;right:-5px}.mobile-bar-icon,.mobile-bar-avatar{border:1px solid var(--line-strong);background:var(--panel);width:40px;height:40px;color:var(--ink);box-shadow:var(--shadow-xs);border-radius:12px;justify-content:center;align-items:center;text-decoration:none;transition:background-color .15s,border-color .15s,color .15s,box-shadow .15s;display:inline-flex}.mobile-bar-icon svg{fill:none;stroke:currentColor;stroke-width:2px;stroke-linecap:round;stroke-linejoin:round;width:20px;height:20px}.mobile-bar-icon:hover,.mobile-bar-icon:focus-visible{background:var(--primary-soft);border-color:var(--primary)}@supports (color:color-mix(in lab, red, red)){.mobile-bar-icon:hover,.mobile-bar-icon:focus-visible{border-color:color-mix(in srgb, var(--primary) 30%, var(--line))}}.mobile-bar-icon:hover,.mobile-bar-icon:focus-visible{color:var(--primary-strong)}.mobile-profile-menu{position:relative}.mobile-bar-avatar{letter-spacing:.02em;text-transform:uppercase;background:linear-gradient(145deg, var(--primary-soft) 0%, var(--panel) 100%);cursor:pointer;font-size:.82rem;font-weight:800;list-style:none}.mobile-bar-avatar::-webkit-details-marker{display:none}.mobile-profile-menu[open]>.mobile-bar-avatar,.mobile-bar-avatar:hover{border-color:var(--primary)}@supports (color:color-mix(in lab, red, red)){.mobile-profile-menu[open]>.mobile-bar-avatar,.mobile-bar-avatar:hover{border-color:color-mix(in srgb, var(--primary) 35%, var(--line))}}.mobile-profile-menu[open]>.mobile-bar-avatar,.mobile-bar-avatar:hover{background:var(--primary-soft);color:var(--primary-strong)}.mobile-bar-avatar--large{width:44px;height:44px;font-size:.9rem}.mobile-profile-panel{z-index:60;border:1px solid var(--line-strong);background:var(--panel);border-radius:14px;width:min(280px,100vw - 24px);padding:12px;position:absolute;top:calc(100% + 10px);right:0;box-shadow:0 20px 50px #0f172a29}.mobile-profile-panel-head{border-bottom:1px solid var(--line);grid-template-columns:44px minmax(0,1fr);align-items:center;gap:10px;padding:8px 8px 12px;display:grid}.mobile-profile-panel-head strong{color:var(--ink);font-size:.92rem;font-weight:800;display:block}.mobile-profile-panel-head small{color:var(--muted);text-overflow:ellipsis;white-space:nowrap;margin-top:2px;font-size:.78rem;display:block;overflow:hidden}.mobile-profile-links{gap:4px;padding:8px 0;display:grid}.mobile-profile-links a,.mobile-profile-logout button{width:100%;min-height:42px;color:var(--ink);text-align:left;cursor:pointer;background:0 0;border:0;border-radius:10px;grid-template-columns:18px minmax(0,1fr);align-items:center;gap:10px;padding:0 10px;font-size:.9rem;font-weight:650;text-decoration:none;display:grid}.mobile-profile-links a svg,.mobile-profile-logout button svg{fill:none;stroke:currentColor;stroke-width:2px;stroke-linecap:round;stroke-linejoin:round;width:18px;height:18px}.mobile-profile-links a:hover,.mobile-profile-logout button:hover{background:var(--field)}.mobile-profile-logout{border-top:1px solid var(--line);padding-top:8px}.mobile-profile-logout button{color:#b91c1c}.mobile-profile-logout button:hover{background:#fef2f2}.pupil-profile-page{gap:20px;display:grid}.pupil-profile-details-body{padding:0 24px 24px}.school-app--admin .mobile-menu{background:var(--primary-soft)}@supports (color:color-mix(in lab, red, red)){.school-app--admin .mobile-menu{background:color-mix(in srgb, var(--primary-soft) 55%, var(--panel))}}.school-app--admin .mobile-menu{border-color:var(--primary)}@supports (color:color-mix(in lab, red, red)){.school-app--admin .mobile-menu{border-color:color-mix(in srgb, var(--primary) 18%, var(--line))}}.school-app--admin .nav-toggle:checked~.workspace .mobile-menu{background:linear-gradient(135deg, var(--primary) 0%, var(--primary) 100%)}@supports (color:color-mix(in lab, red, red)){.school-app--admin .nav-toggle:checked~.workspace .mobile-menu{background:linear-gradient(135deg, var(--primary) 0%, color-mix(in srgb, var(--primary) 70%, #130c44) 100%)}}.school-app--admin .mobile-bar{background:var(--panel)}@supports (color:color-mix(in lab, red, red)){.school-app--admin .mobile-bar{background:color-mix(in srgb, var(--panel) 92%, var(--field))}}.school-app--admin .mobile-bar{-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border-bottom:1px solid var(--line-strong);box-shadow:0 10px 30px #0f172a0f}.school-app--admin .nav-backdrop{-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);background:#0f172a6b}.school-app--admin .nav-toggle:checked~.side-rail{box-shadow:24px 0 60px #0f172a29}.pupil-btn-primary,.pupil-btn-ghost{border-radius:10px;justify-content:center;align-items:center;gap:8px;min-height:42px;padding:0 16px;font-size:.88rem;font-weight:700;text-decoration:none;transition:background-color .15s,border-color .15s,box-shadow .15s,color .15s;display:inline-flex}.pupil-btn-primary{border:1px solid var(--primary);background:linear-gradient(135deg, var(--primary) 0%, var(--primary-strong) 100%);color:#fff;box-shadow:0 10px 24px var(--primary)}@supports (color:color-mix(in lab, red, red)){.pupil-btn-primary{box-shadow:0 10px 24px color-mix(in srgb, var(--primary) 24%, transparent)}}.pupil-btn-primary{cursor:pointer}.pupil-btn-primary:hover{filter:brightness(1.03);color:#fff}.pupil-btn-primary svg{fill:none;stroke:currentColor;stroke-width:2px;stroke-linecap:round;stroke-linejoin:round;width:16px;height:16px}.pupil-btn-ghost{border:1px solid var(--line-strong);background:var(--panel);color:var(--ink)}.pupil-btn-ghost:hover{background:var(--field);border-color:var(--primary)}@supports (color:color-mix(in lab, red, red)){.pupil-btn-ghost:hover{border-color:color-mix(in srgb, var(--primary) 22%, var(--line))}}.pupil-btn-ghost:hover{color:var(--primary-strong)}.pupil-reports-page{gap:20px;width:100%;display:grid;max-width:none!important;margin:0!important}.pupil-reports-hero{border-radius:var(--radius-lg);background:linear-gradient(135deg, var(--primary-strong) 0%, var(--primary-strong) 46%, var(--primary-strong) 100%);color:var(--primary-soft);border:1px solid #ffffff1f;grid-template-columns:minmax(0,1.2fr) minmax(280px,1fr);align-items:stretch;gap:20px;padding:28px 30px;display:grid;box-shadow:0 24px 60px #130c4438}.pupil-reports-hero-copy h2{letter-spacing:-.03em;color:#fff;margin:6px 0 0;font-size:clamp(1.7rem,3vw,2.35rem);font-weight:850}.pupil-reports-hero-copy p{max-width:520px;color:var(--primary-soft);margin:10px 0 0}@supports (color:color-mix(in lab, red, red)){.pupil-reports-hero-copy p{color:color-mix(in srgb, var(--primary-soft) 75%, var(--primary) 25%)}}.pupil-reports-hero-copy p{line-height:1.55}.pupil-reports-hero-copy .section-kicker{color:var(--primary)}@supports (color:color-mix(in lab, red, red)){.pupil-reports-hero-copy .section-kicker{color:color-mix(in srgb, var(--primary) 38%, var(--line-strong))}}.pupil-reports-hero-stats{grid-template-columns:repeat(3,minmax(0,1fr));align-content:center;gap:10px;display:grid}.pupil-reports-hero-stats article{text-align:center;background:#0000002e;border:1px solid #ffffff1f;border-radius:12px;gap:4px;padding:14px 16px;display:grid}.pupil-reports-hero-stats span{color:var(--primary-soft)}@supports (color:color-mix(in lab, red, red)){.pupil-reports-hero-stats span{color:color-mix(in srgb, var(--primary-soft) 75%, var(--primary) 25%)}}.pupil-reports-hero-stats span{text-transform:uppercase;letter-spacing:.08em;font-size:.68rem;font-weight:700}.pupil-reports-hero-stats strong{color:#fff;letter-spacing:-.03em;font-size:1.45rem;font-weight:900;line-height:1}.pupil-reports-hero-stats small{color:var(--primary)}@supports (color:color-mix(in lab, red, red)){.pupil-reports-hero-stats small{color:color-mix(in srgb, var(--primary) 38%, var(--line-strong))}}.pupil-reports-hero-stats small{font-size:.74rem}.pupil-reports-panel{border:1px solid var(--line-strong);border-radius:var(--radius-lg);background:var(--panel);box-shadow:var(--shadow-sm);padding:0;overflow:hidden}.pupil-reports-panel-head{border-bottom:1px solid var(--line);background:var(--field);justify-content:space-between;align-items:flex-end;gap:16px;padding:20px 24px;display:flex}@supports (color:color-mix(in lab, red, red)){.pupil-reports-panel-head{background:color-mix(in srgb, var(--field) 70%, var(--panel))}}.pupil-reports-panel-head h3{color:var(--ink);margin:0;font-size:1.12rem;font-weight:800}.pupil-reports-panel-head p{color:var(--muted);margin:4px 0 0;font-size:.86rem}.pupil-reports-toolbar{border-bottom:1px solid var(--line);background:var(--field);grid-template-columns:minmax(0,1.4fr) minmax(180px,.5fr) auto;align-items:end;gap:12px;padding:18px 24px;display:grid}.pupil-reports-search{border:1px solid var(--line-strong);background:var(--panel);border-radius:10px;grid-template-columns:20px minmax(0,1fr);align-items:center;gap:10px;min-height:44px;padding:0 14px;display:grid;box-shadow:inset 0 1px 2px #0f172a08}.pupil-reports-search svg{fill:none;width:18px;height:18px;stroke:var(--muted);stroke-width:2px;stroke-linecap:round}.pupil-reports-search input{width:100%;min-height:42px;box-shadow:none;background:0 0;border:0;padding:0}.pupil-reports-search input:focus{outline:none}.pupil-reports-filter-field{gap:6px;display:grid}.pupil-reports-filter-field>span{color:var(--muted);text-transform:uppercase;letter-spacing:.06em;font-size:.72rem;font-weight:700}.pupil-reports-filter-field select{border-color:var(--line-strong);background:var(--panel);border-radius:10px;min-height:44px}.pupil-reports-toolbar-actions{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.pupil-report-list{gap:12px;padding:20px 24px 12px;display:grid}.pupil-report-list-card{border:1px solid var(--line-strong);background:var(--panel);color:var(--ink);box-shadow:var(--shadow-xs);border-radius:14px;grid-template-columns:108px minmax(0,1fr) auto;align-items:center;gap:18px;padding:18px 20px;text-decoration:none;transition:border-color .15s,box-shadow .15s,transform .15s;display:grid}.pupil-report-list-card:hover{border-color:var(--primary-strong)}@supports (color:color-mix(in lab, red, red)){.pupil-report-list-card:hover{border-color:color-mix(in srgb, var(--primary-strong) 32%, var(--line))}}.pupil-report-list-card:hover{transform:translateY(-2px);box-shadow:0 14px 34px #130c441a}.pupil-report-list-score{text-align:center;border-radius:12px;align-content:center;justify-items:center;gap:4px;min-height:96px;padding:12px;display:grid}.pupil-report-list-score.is-high{color:#130c44;background:linear-gradient(#eff6ff 0%,#dbeafe 100%)}.pupil-report-list-score.is-mid{color:#b45309;background:linear-gradient(#fffbeb 0%,#fef3c7 100%)}.pupil-report-list-score.is-low{color:#b91c1c;background:linear-gradient(#fef2f2 0%,#fee2e2 100%)}.pupil-report-list-score.is-empty{background:var(--field);color:var(--muted)}.pupil-report-list-score strong{letter-spacing:-.04em;font-size:1.65rem;font-weight:900;line-height:1}.pupil-report-list-score strong small{font-size:.95rem;font-weight:800}.pupil-report-list-score>span:last-child,.pupil-report-list-score.is-empty span{text-transform:uppercase;letter-spacing:.06em;font-size:.68rem;font-weight:800}.pupil-report-list-score svg{fill:none;stroke:currentColor;stroke-width:1.8px;stroke-linecap:round;stroke-linejoin:round;width:28px;height:28px}.pupil-report-list-top{justify-content:space-between;align-items:flex-start;gap:12px;display:flex}.pupil-report-list-year{background:var(--primary-soft);color:var(--primary-strong);letter-spacing:.04em;border-radius:999px;margin-bottom:6px;padding:3px 8px;font-size:.72rem;font-weight:800;display:inline-flex}.pupil-report-list-body h4{color:var(--ink);letter-spacing:-.02em;margin:0;font-size:1.2rem;font-weight:850}.pupil-report-list-status{color:#130c44;background:#eff6ff;border-radius:999px;flex:none;padding:5px 10px;font-size:.74rem;font-weight:800}.pupil-report-list-meta{color:var(--muted);margin:8px 0 0;font-size:.88rem;line-height:1.45}.pupil-report-list-remarks{border-left:3px solid var(--primary);margin:10px 0 0;padding:10px 12px}@supports (color:color-mix(in lab, red, red)){.pupil-report-list-remarks{border-left:3px solid color-mix(in srgb, var(--primary) 38%, var(--line-strong))}}.pupil-report-list-remarks{background:var(--primary-soft);border-radius:0 8px 8px 0}@supports (color:color-mix(in lab, red, red)){.pupil-report-list-remarks{background:color-mix(in srgb, var(--primary-soft) 55%, #fff)}}.pupil-report-list-remarks{color:var(--ink);font-size:.88rem;font-style:italic;line-height:1.5}.pupil-report-list-action{color:var(--primary-strong);white-space:nowrap;justify-items:end;gap:8px;font-size:.84rem;font-weight:800;display:grid}.pupil-report-list-action svg{fill:none;stroke:currentColor;stroke-width:2px;stroke-linecap:round;stroke-linejoin:round;width:22px;height:22px}.pupil-report-list-empty{text-align:center;border:1px dashed var(--line-strong);background:var(--field);border-radius:14px;justify-items:center;gap:10px;padding:48px 24px;display:grid}.pupil-report-list-empty strong{color:var(--ink);font-size:1.05rem}.pupil-report-list-empty p{max-width:420px;color:var(--muted);margin:0;line-height:1.55}.pupil-reports-pagination{padding:0 24px 22px}.pupil-report-document-page{gap:16px;width:100%;display:grid;max-width:none!important;margin:0!important}.pupil-report-document-toolbar{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;display:flex}.pupil-report-document-back{color:var(--muted);align-items:center;gap:6px;font-size:.9rem;font-weight:650;text-decoration:none;display:inline-flex}.pupil-report-document-back:hover{color:var(--primary-strong)}.pupil-report-document-back svg{fill:none;stroke:currentColor;stroke-width:2px;stroke-linecap:round;stroke-linejoin:round;width:18px;height:18px}.pupil-report-sheet{border:1px solid var(--primary-strong);overflow:hidden}@supports (color:color-mix(in lab, red, red)){.pupil-report-sheet{border:1px solid color-mix(in srgb, var(--primary-strong) 18%, var(--line-strong))}}.pupil-report-sheet{background:#fff;border-radius:18px;box-shadow:0 28px 70px #130c441f}.pupil-report-sheet-masthead{border-bottom:3px solid var(--primary-strong);background:linear-gradient(180deg, var(--primary-soft) 0%, #fff 100%);grid-template-columns:minmax(0,1fr) auto;align-items:end;gap:20px;padding:28px 32px 24px;display:grid}@supports (color:color-mix(in lab, red, red)){.pupil-report-sheet-masthead{background:linear-gradient(180deg, color-mix(in srgb, var(--primary-soft) 55%, #fff) 0%, #fff 100%)}}.pupil-report-sheet-brand{grid-template-columns:56px minmax(0,1fr);align-items:center;gap:12px;display:grid}.pupil-report-sheet-brand img{object-fit:contain;border-radius:10px;width:56px;height:56px}.pupil-report-sheet-seal{background:linear-gradient(145deg, var(--primary-strong) 0%, var(--primary-strong) 100%);color:#fff;border-radius:12px;place-items:center;width:56px;height:56px;font-size:1.4rem;font-weight:900;display:grid}.pupil-report-sheet-brand strong{color:var(--ink);font-size:1.1rem;font-weight:900;display:block}.pupil-report-sheet-brand small{color:var(--muted);font-size:.82rem}.pupil-report-sheet-title-block{text-align:right}.pupil-report-sheet-label{color:var(--primary-strong);text-transform:uppercase;letter-spacing:.12em;font-size:.72rem;font-weight:800;display:block}.pupil-report-sheet-title-block h1{color:var(--ink);letter-spacing:-.03em;margin:4px 0 0;font-size:clamp(1.6rem,3vw,2.2rem);font-weight:900;line-height:1.05}.pupil-report-sheet-title-block p{color:var(--muted);margin:6px 0 0;font-size:.92rem}.pupil-report-sheet-band{border-bottom:1px solid var(--line);background:var(--field);grid-template-columns:minmax(0,1.4fr) minmax(220px,.6fr);gap:16px;padding:22px 32px;display:grid}.pupil-report-sheet-pupil{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px 20px;display:grid}.pupil-report-sheet-pupil>div{gap:4px;display:grid}.pupil-report-sheet-pupil span{color:var(--muted);text-transform:uppercase;letter-spacing:.06em;font-size:.72rem;font-weight:700}.pupil-report-sheet-pupil strong{color:var(--ink);font-size:.98rem;font-weight:800}.pupil-report-sheet-highlight{background:linear-gradient(180deg, var(--primary-soft) 0%, var(--primary-soft) 100%);border-radius:14px;align-content:center;justify-items:center;gap:4px;padding:18px;display:grid}@supports (color:color-mix(in lab, red, red)){.pupil-report-sheet-highlight{background:linear-gradient(180deg, var(--primary-soft) 0%, color-mix(in srgb, var(--primary-soft) 75%, var(--primary) 25%) 100%)}}.pupil-report-sheet-highlight{border:1px solid var(--primary)}@supports (color:color-mix(in lab, red, red)){.pupil-report-sheet-highlight{border:1px solid color-mix(in srgb, var(--primary) 38%, var(--line-strong))}}.pupil-report-sheet-highlight{text-align:center}.pupil-report-sheet-highlight span{color:var(--primary-strong);text-transform:uppercase;letter-spacing:.08em;font-size:.72rem;font-weight:800}.pupil-report-sheet-highlight strong{color:var(--primary-strong);letter-spacing:-.04em;font-size:2.2rem;font-weight:900;line-height:1}.pupil-report-sheet-highlight small{color:var(--primary-strong);font-size:.8rem;font-weight:700}.pupil-report-sheet-summary-row{border-bottom:1px solid var(--line);grid-template-columns:repeat(4,minmax(0,1fr));gap:0;display:grid}.pupil-report-sheet-summary-row article{border-right:1px solid var(--line);gap:4px;padding:16px 20px;display:grid}.pupil-report-sheet-summary-row article:last-child{border-right:0}.pupil-report-sheet-summary-row span{color:var(--muted);text-transform:uppercase;letter-spacing:.05em;font-size:.72rem;font-weight:700}.pupil-report-sheet-summary-row strong{color:var(--ink);font-size:1.05rem;font-weight:850}.pupil-report-sheet-summary-row small{color:var(--muted-light);font-size:.78rem}.pupil-report-sheet-section-head{justify-content:space-between;align-items:center;gap:12px;margin-bottom:14px;display:flex}.pupil-report-sheet-section-head h2{color:var(--ink);letter-spacing:-.01em;margin:0;font-size:1rem;font-weight:850}.pupil-report-sheet-section-head span{color:var(--muted);font-size:.82rem;font-weight:700}.pupil-report-sheet-grades,.pupil-report-sheet-remarks{padding:24px 32px}.pupil-report-sheet-remarks{border-top:1px solid var(--line);background:var(--primary-soft)}@supports (color:color-mix(in lab, red, red)){.pupil-report-sheet-remarks{background:color-mix(in srgb, var(--primary-soft) 24%, #fff)}}.pupil-report-sheet-table-wrap{border:1px solid var(--line-strong);border-radius:12px;overflow-x:auto}.pupil-report-sheet-table{border-collapse:collapse;width:100%;font-size:.92rem}.pupil-report-sheet-table thead{background:linear-gradient(180deg, var(--primary-soft) 0%, var(--primary-soft) 100%)}.pupil-report-sheet-table th,.pupil-report-sheet-table td{border-bottom:1px solid var(--line);text-align:left;vertical-align:top;padding:14px 16px}.pupil-report-sheet-table th{color:var(--primary-strong);text-transform:uppercase;letter-spacing:.06em;font-size:.74rem;font-weight:800}.pupil-report-sheet-table tbody tr:hover{background:var(--primary-soft)}@supports (color:color-mix(in lab, red, red)){.pupil-report-sheet-table tbody tr:hover{background:color-mix(in srgb, var(--primary-soft) 55%, #fff)}}.pupil-report-sheet-table tbody th[scope=row]{color:var(--ink);white-space:nowrap;font-weight:800}.pupil-report-sheet-table td{color:var(--muted);line-height:1.45}.pupil-report-sheet-score{background:var(--primary-soft);min-width:54px;color:var(--primary-strong);border-radius:999px;justify-content:center;padding:4px 10px;font-weight:900;display:inline-flex}.pupil-report-sheet-table tfoot th,.pupil-report-sheet-table tfoot td{background:var(--primary-soft);color:var(--ink);border-bottom:0;font-weight:800}.pupil-report-sheet-empty{border:1px dashed var(--line-strong);background:var(--field);color:var(--muted);text-align:center;border-radius:12px;padding:28px}.pupil-report-sheet-remarks blockquote{border-left:4px solid var(--primary);background:var(--primary-soft);color:var(--ink);border-radius:0 12px 12px 0;margin:0;padding:18px 20px;font-size:1rem;font-style:italic;line-height:1.65}.pupil-report-sheet-footer{border-top:1px solid var(--line);background:var(--field);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:10px;padding:16px 32px 22px;display:flex}.pupil-report-sheet-footer p{color:var(--muted);margin:0;font-size:.84rem}.pupil-report-sheet-footer span{color:var(--muted-light);font-size:.78rem;font-weight:700}@media (width<=1180px){.pupil-dashboard-primary{grid-template-columns:1fr}.pupil-profile-summary{grid-template-columns:1fr 1fr}}@media (width<=900px){.pupil-reports-layout{grid-template-columns:1fr}.pupil-report-preview{order:-1}.pupil-report-card-grid,.pupil-dashboard .admin-welcome-hero{grid-template-columns:1fr}.pupil-invoice-table .admin-table-head{display:none}.pupil-invoice-row{grid-template-columns:1fr;gap:8px}.pupil-invoice-row .primary-action{justify-self:start}.pupil-resource-grid{grid-template-columns:1fr}.pupil-catalog-hero{grid-template-columns:1fr;align-items:stretch}.pupil-catalog-summary{width:100%}.pupil-detail-hero{grid-template-columns:1fr}.pupil-detail-stats{grid-template-columns:repeat(2,minmax(0,1fr))}:is(.pupil-detail-grid,.pupil-detail-grid:has(.pupil-detail-card--wide),.pupil-reports-hero,.pupil-reports-hero-stats,.pupil-reports-toolbar){grid-template-columns:1fr}.pupil-report-list-card{grid-template-columns:88px minmax(0,1fr)}.pupil-report-list-action{border-top:1px solid var(--line);grid-column:1/-1;grid-template-columns:auto auto;place-items:center start;padding-top:4px}.pupil-report-sheet-masthead,.pupil-report-sheet-band{grid-template-columns:1fr}.pupil-report-sheet-title-block{text-align:left}.pupil-report-sheet-summary-row{grid-template-columns:repeat(2,minmax(0,1fr))}.pupil-report-sheet-summary-row article:nth-child(2n){border-right:0}.pupil-report-sheet-pupil{grid-template-columns:1fr}}.pupil-catalog-page,.pupil-detail-page{gap:22px;width:100%;display:grid;max-width:none!important;margin:0!important}.pupil-catalog-hero{align-items:flex-end}.pupil-catalog-summary{border-radius:var(--radius-md);background:var(--field);flex-wrap:wrap;gap:18px;padding:14px 18px;display:flex}@supports (color:color-mix(in lab, red, red)){.pupil-catalog-summary{background:color-mix(in srgb, var(--field) 70%, var(--panel))}}.pupil-catalog-summary{border:1px solid var(--line)}.pupil-catalog-summary>div{gap:4px;min-width:100px;display:grid}.pupil-catalog-summary span{color:var(--muted);text-transform:uppercase;letter-spacing:.04em;font-size:.82rem;font-weight:700}.pupil-catalog-summary strong{color:var(--ink);letter-spacing:-.02em;overflow-wrap:anywhere;font-size:1.35rem;font-weight:900}.pupil-catalog-panel{padding:0;overflow:hidden}.pupil-catalog-panel .admin-card-head{border-bottom:1px solid var(--line);background:var(--field);margin-bottom:0;padding:18px 24px}@supports (color:color-mix(in lab, red, red)){.pupil-catalog-panel .admin-card-head{background:color-mix(in srgb, var(--field) 65%, var(--panel))}}.pupil-catalog-panel .pupil-filter-bar{border-bottom:1px solid var(--line);padding:0 24px 16px}.pupil-catalog-panel .profile-pagination{padding:0 24px 22px}.pupil-resource-grid{grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:14px;padding:20px 24px 8px;display:grid}.pupil-resource-grid-empty{grid-column:1/-1;padding:24px 0}.pupil-resource-card{border:1px solid var(--line-strong);border-radius:var(--radius-md);background:var(--panel);color:var(--ink);box-shadow:var(--shadow-xs);grid-template-columns:52px minmax(0,1fr) auto;align-items:center;gap:14px;padding:16px 18px;text-decoration:none;transition:border-color .15s,box-shadow .15s,transform .15s;display:grid}.pupil-resource-card:hover{border-color:#0284c7}@supports (color:color-mix(in lab, red, red)){.pupil-resource-card:hover{border-color:color-mix(in srgb, #0284c7 35%, var(--line))}}.pupil-resource-card:hover{box-shadow:var(--shadow-md);transform:translateY(-3px)}.pupil-resource-card--assignment:hover{border-color:var(--primary)}@supports (color:color-mix(in lab, red, red)){.pupil-resource-card--assignment:hover{border-color:color-mix(in srgb, var(--primary) 35%, var(--line))}}.pupil-resource-card-icon{color:#0369a1;background:linear-gradient(145deg,#e0f2fe 0%,#bae6fd 100%);border-radius:14px;place-items:center;width:52px;height:52px;display:grid}.pupil-resource-card--assignment .pupil-resource-card-icon{background:linear-gradient(145deg, var(--primary-soft) 0%, #dbeafe 100%);color:var(--primary-strong)}.pupil-resource-card-icon svg{fill:none;stroke:currentColor;stroke-width:1.85px;stroke-linecap:round;stroke-linejoin:round;width:24px;height:24px}.pupil-resource-card-body{gap:8px;min-width:0;display:grid}.pupil-resource-card-top{justify-content:space-between;align-items:flex-start;gap:10px;display:flex}.pupil-resource-card-top strong{color:var(--ink);font-size:1rem;font-weight:800;line-height:1.3}.pupil-resource-card-meta{color:var(--muted);margin:0;font-size:.86rem;line-height:1.45}.pupil-resource-card-foot{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.pupil-resource-date{color:var(--muted);font-size:.82rem;font-weight:700}.pupil-resource-date.is-overdue{color:#b91c1c}.pupil-resource-chip{background:var(--field);border:1px solid var(--line);min-height:26px;color:var(--muted);border-radius:999px;align-items:center;padding:0 10px;font-size:.76rem;font-weight:700;display:inline-flex}.pupil-resource-type{color:#0369a1;white-space:nowrap;background:#e0f2fe;border-radius:999px;align-items:center;min-height:26px;padding:0 10px;font-size:.76rem;font-weight:800;display:inline-flex}.pupil-resource-type--hero{color:#f0f9ff;background:#fff3;border:1px solid #ffffff40}.pupil-resource-card-arrow{color:var(--muted-light);opacity:0;font-size:1.2rem;font-weight:700;transition:opacity .15s,transform .15s,color .15s;transform:translate(-4px)}.pupil-resource-card:hover .pupil-resource-card-arrow{opacity:1;color:#0284c7;transform:translate(0)}.pupil-resource-card--assignment:hover .pupil-resource-card-arrow{color:var(--primary-strong)}.pupil-detail-page{gap:20px}.pupil-detail-hero{border-radius:var(--radius-lg);color:#f8fafc;grid-template-columns:minmax(0,1.35fr) minmax(220px,1fr);align-items:stretch;gap:24px;padding:clamp(24px,4vw,36px);display:grid;overflow:hidden;box-shadow:0 22px 56px #08263a2e}.pupil-detail-hero--assignment{background:linear-gradient(135deg,#130c44 0% 52%,#130c44 100%);border:1px solid #ffffff1f}.pupil-detail-hero--material{background:linear-gradient(135deg,#0c3d5c 0%,#155e8a 52%,#1d7fb8 100%);border:1px solid #ffffff1f}.pupil-detail-hero-copy{align-content:center;gap:8px;min-width:0;display:grid}.pupil-detail-hero-copy h2{letter-spacing:-.03em;color:#f8fafc;margin:0;font-size:clamp(1.6rem,3vw,2.4rem);font-weight:850;line-height:1.08}.pupil-detail-hero-copy p{color:#e2e8f0;max-width:640px;margin:0;line-height:1.55}.pupil-detail-hero-copy .section-kicker{color:#bae6fd}.pupil-detail-hero--assignment .pupil-detail-hero-copy .section-kicker{color:#bfdbfe}.pupil-detail-back{color:#f8fafc;opacity:.92;align-items:center;gap:6px;width:fit-content;margin-bottom:4px;font-size:.88rem;font-weight:650;text-decoration:none;display:inline-flex}.pupil-detail-back:hover{opacity:1;text-decoration:underline}.pupil-detail-back svg{fill:none;stroke:currentColor;stroke-width:2px;stroke-linecap:round;stroke-linejoin:round;width:18px;height:18px}.pupil-detail-chips{flex-wrap:wrap;gap:8px;margin-top:8px;display:flex}.pupil-detail-chip{color:#f8fafc;background:#ffffff24;border:1px solid #ffffff38;border-radius:999px;align-items:center;min-height:30px;padding:0 12px;font-size:.82rem;font-weight:700;display:inline-flex}.pupil-detail-chip--warn{background:#ef444447;border-color:#fecaca73}.pupil-detail-hero-aside{border-radius:var(--radius-md);text-align:center;background:#0000002e;border:1px solid #ffffff29;align-content:center;justify-items:center;gap:8px;padding:22px;display:grid}.pupil-detail-hero-aside .section-kicker{color:#bae6fd;margin-bottom:0}.pupil-detail-hero-stat{letter-spacing:-.04em;color:#fff;font-size:clamp(2rem,4vw,2.6rem);font-weight:900;line-height:1}.pupil-detail-hero-aside small{color:#e2e8f0;font-size:.84rem;line-height:1.45}.pupil-detail-hero-link{color:#fff;border-bottom:1px solid #ffffff73;font-size:.88rem;font-weight:650;text-decoration:none}.pupil-detail-stats{grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;display:grid}.pupil-detail-stats article{border:1px solid var(--line-strong);border-radius:var(--radius-md);background:var(--panel);box-shadow:var(--shadow-xs);gap:4px;padding:16px 18px;display:grid}.pupil-detail-stats span{color:var(--muted);text-transform:uppercase;letter-spacing:.04em;font-size:.78rem;font-weight:700}.pupil-detail-stats strong{color:var(--ink);letter-spacing:-.02em;overflow-wrap:anywhere;font-size:1.2rem;font-weight:850}.pupil-detail-stats small{color:var(--muted-light);font-size:.8rem}.pupil-detail-grid{grid-template-columns:minmax(0,1.2fr) minmax(320px,.8fr);align-items:start;gap:20px;display:grid}.pupil-detail-card{padding:0;overflow:hidden}.pupil-detail-card--wide{grid-column:1/-1}.pupil-detail-card .admin-card-head{border-bottom:1px solid var(--line);background:var(--field);margin-bottom:0;padding:18px 24px}@supports (color:color-mix(in lab, red, red)){.pupil-detail-card .admin-card-head{background:color-mix(in srgb, var(--field) 65%, var(--panel))}}.pupil-detail-card-body{padding:20px 24px 24px}.pupil-info-list{gap:0;display:grid}.pupil-info-list>div{border-bottom:1px solid var(--line);justify-content:space-between;gap:12px;padding:12px 0;display:flex}.pupil-info-list>div:last-child{border-bottom:0;padding-bottom:0}.pupil-info-list span{color:var(--muted);font-size:.86rem;font-weight:600}.pupil-info-list strong{color:var(--ink);text-align:right;font-weight:800}.pupil-feedback-box{border-left:4px solid var(--primary);border-radius:var(--radius-md);background:var(--primary-soft);margin-bottom:16px;padding:14px 16px}.pupil-feedback-box p{color:var(--ink);margin:6px 0 0;line-height:1.55}.pupil-locked-notice{border-radius:var(--radius-md);background:#fffbeb;border:1px solid #fde68a;gap:6px;padding:16px 18px;display:grid}.pupil-locked-notice strong{color:#92400e}.pupil-locked-notice p{color:#a16207;margin:0;font-size:.9rem;line-height:1.5}.pupil-submission-form{gap:14px;display:grid}.pupil-submission-form label{gap:6px;display:grid}.pupil-submission-form label>span{color:var(--muted);font-size:.84rem;font-weight:700}.pupil-drop-upload{margin-top:4px}.pupil-file-grid{grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:12px;display:grid}.pupil-file-card{border:1px solid var(--line-strong);border-radius:var(--radius-md);background:var(--field);grid-template-columns:48px minmax(0,1fr) auto;align-items:center;gap:12px;padding:14px 16px;display:grid}.pupil-file-card-icon{color:#334155;letter-spacing:.02em;background:#e2e8f0;border-radius:12px;place-items:center;width:48px;height:48px;font-size:.72rem;font-weight:900;display:grid}.pupil-file-card--pdf .pupil-file-card-icon{color:#b91c1c;background:#fee2e2}.pupil-file-card--image .pupil-file-card-icon{color:#130c44;background:#dbeafe}.pupil-file-card--video .pupil-file-card-icon{background:var(--primary-soft);color:var(--primary-strong)}.pupil-file-card--audio .pupil-file-card-icon{color:#be185d;background:#fce7f3}.pupil-file-card--doc .pupil-file-card-icon{color:#0369a1;background:#e0f2fe}.pupil-file-card-copy{min-width:0}.pupil-file-card-copy strong{color:var(--ink);text-overflow:ellipsis;white-space:nowrap;font-weight:800;display:block;overflow:hidden}.pupil-file-card-copy small{color:var(--muted);margin-top:2px;font-size:.8rem;display:block}.pupil-file-card-actions{gap:6px;display:flex}.pupil-file-action{background:var(--panel);border:1px solid var(--line);width:36px;height:36px;color:var(--ink);border-radius:10px;place-items:center;text-decoration:none;transition:background-color .15s,border-color .15s;display:grid}.pupil-file-action:hover{background:var(--primary-soft);border-color:var(--primary)}@supports (color:color-mix(in lab, red, red)){.pupil-file-action:hover{border-color:color-mix(in srgb, var(--primary) 30%, var(--line))}}.pupil-file-action:hover{color:var(--primary-strong)}.pupil-file-action svg{fill:none;stroke:currentColor;stroke-width:2px;stroke-linecap:round;stroke-linejoin:round;width:16px;height:16px}.pupil-file-empty{padding:8px 0}@media (width<=640px){.pupil-resource-grid,.pupil-catalog-panel .pupil-filter-bar,.pupil-catalog-panel .admin-card-head,.pupil-detail-card .admin-card-head,.pupil-detail-card-body{padding-inline:16px}.pupil-detail-stats,.pupil-file-grid{grid-template-columns:1fr}}.admin-dashboard .admin-card--calendar{background:linear-gradient(#fff 0%,#f7faff 100%);padding:0}.admin-calendar-toolbar{border-bottom:1px solid var(--dash-border);background:#fff;justify-content:space-between;align-items:center;gap:16px;min-height:88px;padding:22px 24px;display:flex}.admin-calendar-toolbar h3{color:var(--dash-ink);margin:2px 0 0;font-size:1.35rem;font-weight:950;line-height:1}.admin-calendar-toolbar-meta{justify-items:end;gap:4px;min-width:170px;display:grid}.admin-calendar-toolbar-meta span{color:var(--dash-muted);font-size:.78rem;font-weight:800}.admin-calendar-toolbar-meta strong{color:var(--dash-ink);font-size:.95rem;font-weight:950}.admin-calendar-shell{grid-template-columns:minmax(0,1fr) 260px;gap:18px;padding:22px 24px 24px;display:grid}.admin-calendar-board{border:1px solid var(--dash-border);background:#fff;border-radius:18px;min-width:0;padding:14px}.admin-dashboard .admin-dashboard-calendar-grid{gap:7px;padding:0}.admin-dashboard .admin-dashboard-calendar-dayname{color:var(--dash-label);letter-spacing:.04em;padding:0 2px 8px;font-size:.72rem;font-weight:950}.admin-dashboard .admin-dashboard-calendar-cell{min-height:92px;box-shadow:none;text-align:left;background:#f7faff;border:1px solid #dbe7f7;border-radius:14px;align-content:start;gap:7px;padding:10px;display:grid}.admin-dashboard .admin-dashboard-calendar-cell:not(.is-outside):hover{border-color:var(--dash-accent);background:#fff;transform:translateY(-2px)}@supports (color:color-mix(in lab, red, red)){.admin-dashboard .admin-dashboard-calendar-cell:not(.is-outside):hover{border-color:color-mix(in srgb, var(--dash-accent) 28%, var(--dash-border))}}.admin-dashboard .admin-dashboard-calendar-cell:not(.is-outside):hover{box-shadow:0 10px 20px #0f21470f}.admin-dashboard .admin-dashboard-calendar-cell.is-outside{opacity:1;color:#8aa0c0;background:#f7faff;border-color:#0000}.admin-dashboard .admin-dashboard-calendar-cell.is-today{border-color:var(--dash-accent);box-shadow:inset 0 0 0 1px var(--dash-accent);background:linear-gradient(#eff6ff 0%,#fff 100%)}@supports (color:color-mix(in lab, red, red)){.admin-dashboard .admin-dashboard-calendar-cell.is-today{box-shadow:inset 0 0 0 1px color-mix(in srgb, var(--dash-accent) 20%, transparent)}}.admin-dashboard .admin-dashboard-calendar-cell.has-holiday{background:#fffbeb;border-color:#f3c26a}.admin-dashboard .admin-dashboard-calendar-cell.tone-finance,.admin-dashboard .admin-dashboard-calendar-cell.tone-session,.admin-dashboard .admin-dashboard-calendar-cell.tone-notice{border-color:var(--dash-accent)}@supports (color:color-mix(in lab, red, red)){.admin-dashboard .admin-dashboard-calendar-cell.tone-finance,.admin-dashboard .admin-dashboard-calendar-cell.tone-session,.admin-dashboard .admin-dashboard-calendar-cell.tone-notice{border-color:color-mix(in srgb, var(--dash-accent) 28%, #dbe7f7)}}.admin-dashboard .calendar-date-row strong{font-size:.9rem;font-weight:950}.admin-dashboard .calendar-date-row span{background:var(--dash-accent);min-width:24px;height:24px;font-size:.72rem}.admin-dashboard .admin-dashboard-calendar-cell small{min-height:auto;color:var(--dash-muted);-webkit-line-clamp:2;-webkit-box-orient:vertical;margin-top:0;font-size:.72rem;font-weight:800;line-height:1.25;display:-webkit-box}.admin-dashboard .calendar-event-dots{margin-top:auto}.admin-calendar-side{align-content:start;gap:12px;min-width:0;display:grid}.admin-dashboard .admin-calendar-summary{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;padding:0;display:grid}.admin-dashboard .admin-calendar-summary div{border:1px solid var(--dash-border);background:#fff;border-radius:14px;align-content:center;min-height:78px;padding:14px}.admin-dashboard .admin-calendar-summary strong{font-size:1.45rem;line-height:1}.admin-dashboard .admin-calendar-agenda{border:1px solid var(--dash-border);background:#fff;border-radius:16px;gap:0;margin:0;padding:16px}.admin-calendar-agenda-head{justify-content:space-between;align-items:center;gap:10px;margin-bottom:8px;display:flex}.admin-calendar-agenda-head h4{color:var(--dash-ink);font-size:.98rem;font-weight:950}.admin-calendar-agenda-head span{color:var(--dash-muted);font-size:.76rem;font-weight:850}.admin-dashboard .agenda-item{grid-template-columns:48px minmax(0,1fr);gap:11px;padding:12px 0}.admin-dashboard .agenda-item time{background:#f7faff;border-radius:12px;gap:1px;min-height:48px;display:grid}.admin-dashboard .agenda-item time strong{color:inherit;font-size:1rem;line-height:1}.admin-dashboard .agenda-item time span{color:inherit;text-transform:uppercase;font-size:.68rem;font-weight:900}.admin-dashboard .agenda-item strong{font-size:.9rem}.admin-dashboard .admin-calendar-legend{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;padding:0;display:grid}.admin-dashboard .admin-calendar-legend span{border-color:var(--dash-border);background:#fff;border-radius:10px;justify-content:flex-start;min-height:34px;padding:0 10px}@media (width<=900px){.app-shell,.welcome-page,.login-page,.panel-grid.two,.metric-grid,.form-grid.two,.form-grid.three,.admin-hero,.ops-heading,.ops-layout,.ops-kpis,.finance-line,.console-head,.console-strip,.office-grid,.ledger-summary,.desk-masthead,.desk-register,.desk-grid,.cashbook-strip,.dash-hero,.admin-page-head,.pupil-home-hero,.dash-stat-grid,.admin-stat-grid,.pupil-portal-head,.pupil-metric-grid,.pupil-dashboard-grid,.account-profile-hero,.account-form-hero,.register-controls,.register-control-form,.register-table-head,.register-row,.theme-settings-layout,.theme-color-grid,.settings-split,.settings-overview-grid,.settings-overview-list,.website-studio,.media-picker-grid,.upload-grid,.profile-filter-bar,.profile-filter-bar--wide,.admin-calendar-summary,.report-draft-tool-grid,.report-inline-grade-row{grid-template-columns:1fr}.app-shell{display:block}.mobile-bar{z-index:25;background:var(--navbar-bg,var(--panel));grid-template-columns:44px minmax(0,1fr);align-items:center;gap:10px;min-height:60px;margin:-12px -14px 10px;padding:10px 12px;display:grid;position:sticky;top:0}@supports (color:color-mix(in lab, red, red)){.mobile-bar{background:color-mix(in srgb, var(--navbar-bg,var(--panel)) 92%, var(--field))}}.mobile-bar{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-bottom:1px solid var(--navbar-border,var(--line-strong));box-shadow:0 8px 24px #0f172a0d}.mobile-bar--pupil,.mobile-bar--with-actions{grid-template-columns:44px minmax(0,1fr) auto}.mobile-notification-menu .notification-panel{z-index:70;border-radius:16px;width:auto;max-height:calc(100dvh - 84px);padding:16px;position:fixed;top:68px;left:10px;right:10px;overflow-y:auto}.mobile-notification-menu .notification-list{max-height:none}.mobile-notification-menu .notification-item{grid-template-columns:1fr;gap:10px}.mobile-notification-menu .notification-open{justify-content:center;width:100%}.mobile-menu{display:inline-flex}.side-rail{z-index:40;border-right:1px solid var(--line);width:min(84vw,292px);height:100dvh;box-shadow:var(--shadow-lg);transition:transform .2s;position:fixed;inset:0 auto 0 0;transform:translate(-104%)}.nav-toggle:checked~.side-rail{transform:translate(0)}.nav-backdrop{z-index:35;opacity:0;pointer-events:none;background:#0f172a73;transition:opacity .2s;display:block;position:fixed;inset:0}.nav-toggle:checked~.nav-backdrop{opacity:1;pointer-events:auto}.rail-close{background:var(--sidebar-ink);border-radius:10px;justify-content:center;align-items:center;width:40px;height:40px;display:inline-flex}@supports (color:color-mix(in lab, red, red)){.rail-close{background:color-mix(in srgb, var(--sidebar-ink) 8%, transparent)}}.rail-close{border:1px solid var(--sidebar-ink)}@supports (color:color-mix(in lab, red, red)){.rail-close{border:1px solid color-mix(in srgb, var(--sidebar-ink) 10%, transparent)}}.rail-close{color:var(--sidebar-ink);cursor:pointer;font-size:0;transition:background-color .15s,transform .15s}.rail-close:hover{background:var(--sidebar-ink)}@supports (color:color-mix(in lab, red, red)){.rail-close:hover{background:color-mix(in srgb, var(--sidebar-ink) 12%, transparent)}}.rail-close:hover{transform:scale(1.04)}.rail-close svg{stroke:currentColor;stroke-width:2.2px;stroke-linecap:round;width:18px;height:18px}.workspace{gap:16px;padding:12px 14px 28px}.topbar{background:var(--navbar-bg);border-bottom:1px solid var(--navbar-border,var(--line));-webkit-backdrop-filter:none;backdrop-filter:none;grid-template-columns:1fr;margin:0 -14px;padding:14px;position:static}.topbar h1{font-size:1.5rem}.topbar-meta{grid-template-columns:repeat(2,auto);justify-content:space-between}.topbar-actions{justify-content:space-between;align-items:center}.user-name{min-width:0;max-width:none}.table-like div,.attendance-row{flex-direction:column;align-items:stretch}.panel,.desk-panel,.office-panel{padding:14px}.panel-head,.desk-panel-head,.office-panel-head{flex-direction:column;align-items:stretch}.filter-bar,.inline-pay,.settings-form{grid-template-columns:1fr;display:grid}.inline-pay input{width:100%}.side-rail nav{grid-template-columns:1fr}.ops-kpis div,.finance-line div{border-right:0;border-bottom:1px solid var(--line)}.ops-kpis div:last-child,.finance-line div:last-child{border-bottom:0}.compact-table a,.compact-table .empty-line{grid-template-columns:1fr}.console-strip a,.console-strip div,.ledger-summary div{border-bottom:1px solid #dbe7f7;border-right:0}.console-strip a:last-child,.console-strip div:last-child,.ledger-summary div:last-child{border-bottom:0}.ledger-row{grid-template-columns:1fr}.ledger-row b{justify-self:start}.console-stamp{text-align:left}.desk-register a,.desk-register div,.cashbook-strip div{border-bottom:1px solid #dbe7f7;border-right:0}.desk-register a:last-child,.desk-register div:last-child,.cashbook-strip div:last-child{border-bottom:0}.cashbook-row,.map-rows a{grid-template-columns:1fr}.cashbook-row b{justify-self:start}.desk-date{border-top:4px solid #130c44;border-left:0}.desk-seal{width:58px;height:58px}.desk-title h2{font-size:1.85rem}.auth-card{padding:18px}.login-page{min-height:100vh;padding:14px}.login-showcase{border-radius:8px 8px 0 0;min-height:auto;padding:22px}.login-showcase-copy h1{font-size:2.1rem;line-height:1.02}.login-panel{border:1px solid #ffffff8c;border-radius:8px;min-height:auto;padding:22px}.login-card{padding:0}.website-studio-preview,.website-studio-save{position:static}.website-preview-hero{min-height:260px}.website-section-card>:not(.admin-card-head){margin-inline:16px}.tab-list{flex-wrap:nowrap;overflow-x:auto}.tab-list label{white-space:nowrap}.slide-over{grid-template-columns:minmax(0,1fr)}.slide-over-panel{grid-column:1;justify-self:end;width:min(100vw,560px)}.slide-over-panel-full{width:100vw}.dash-hero,.admin-page-head,.pupil-home-hero,.document-hero,.work-detail-hero,.report-preview-summary,.report-grade-grid{grid-template-columns:1fr;align-items:stretch;padding:16px}.admin-page-head .primary-action{justify-self:start}.pupil-balance-card{min-width:0}.pupil-detail-panel{position:static}.pupil-record-list>a,.pupil-record-list>article{grid-template-columns:1fr;gap:9px}.pupil-record-list .primary-action{justify-self:start}.pupil-work-list a,.pupil-year-list a{grid-template-columns:1fr}.pupil-work-list a>span,.pupil-year-list a>span{text-align:left;justify-self:start}.account-profile-avatar{width:60px;height:60px}.account-profile-balance{max-width:360px}.account-selection-card{position:static}.document-actions,.work-detail-actions,.admin-action-row{justify-content:flex-start}.role-insight-grid,.report-grade-row{grid-template-columns:1fr}.admin-tabs{margin-inline:-2px}.admin-tabs a{white-space:nowrap}.settings-hero,.settings-hero-brand,.admin-profile-hero{grid-template-columns:1fr;display:grid}.settings-hero-actions,.admin-profile-hero .admin-profile-badges{justify-content:flex-start;align-items:flex-start}.admin-dashboard-calendar-grid,.admin-calendar-summary,.admin-calendar-legend{padding-inline:16px}.admin-calendar-agenda{margin-inline:16px}.admin-dashboard-calendar-cell small{display:none}.admin-calendar-toolbar,.admin-calendar-shell{grid-template-columns:1fr}.admin-calendar-toolbar{padding:18px;display:grid}.admin-calendar-toolbar-meta{justify-items:start;min-width:0}.admin-calendar-shell{padding:18px}.admin-calendar-side{grid-template-columns:1fr}.admin-dashboard .admin-calendar-summary,.admin-dashboard .admin-calendar-legend{padding-inline:0}.admin-dashboard .admin-dashboard-calendar-cell{min-height:58px}.pupil-attendance-filter-form{grid-template-columns:1fr;padding:16px}.pupil-attendance-filter-actions{justify-content:stretch}.pupil-attendance-filter-actions .button,.pupil-attendance-filter-actions .button--ghost{flex:1 1 0}.admin-table-head{display:none}.admin-table article,.admin-record-row,.admin-table.compact article,.admin-table.compact .admin-record-row,.admin-table.backup-table article{grid-template-columns:1fr;gap:8px;padding:14px 0}.admin-table article form{justify-self:start}.detail-list div{grid-template-columns:1fr;gap:4px}.report-archive-strip{grid-template-columns:1fr}.report-archive-head-row{display:none}.report-detail-banner{flex-direction:column}.register-head-actions{grid-template-columns:1fr}.register-date-card{border-top:4px solid #130c44;border-left:0}.register-control-form{border-bottom:1px solid #dbe7f7;border-right:0;padding:14px}.register-export-card{padding:14px}.register-table-head{display:none}.guardian-register-log .guardian-register-row{grid-template-columns:1fr;gap:10px}.register-row{align-items:stretch;gap:12px}.register-options{grid-template-columns:repeat(2,minmax(0,1fr))}.register-footer{flex-direction:column;align-items:stretch}.register-footer .primary-action{width:100%}}@media (width<=640px){body{background:#f7faff}.workspace{gap:12px;padding:10px 10px 24px}.mobile-bar{margin:-10px -10px 8px;padding:10px}.mobile-menu{min-height:36px;padding:0 11px;font-size:.88rem}.topbar{gap:10px;margin:0 -10px;padding:12px 10px}.topbar h1{font-size:1.32rem;line-height:1.1}.page-kicker{margin-bottom:3px;font-size:.75rem}.topbar-context{min-width:0;padding:8px 10px}.topbar-actions{grid-template-columns:auto 34px minmax(0,1fr) auto;gap:8px;width:100%;display:grid}.user-avatar{width:34px;height:34px}.user-name strong{font-size:.84rem}.user-name small{font-size:.72rem}.topbar-actions button{padding:8px 9px;font-size:.84rem}.notification-trigger{min-height:34px;padding:0 9px}.notification-trigger span{display:none}.notification-panel{width:min(360px,100vw - 20px);right:-2px}.login-page{padding:10px}.login-showcase{gap:20px;padding:18px}.login-showcase-copy h1{font-size:1.75rem}.login-showcase-copy p{margin-top:9px;font-size:.92rem}.login-showcase-grid{grid-template-columns:1fr}.login-showcase-grid div{min-height:82px;padding:13px}.login-panel{padding:22px}.auth-card-head h2{font-size:1.6rem}.login-type-switch{grid-template-columns:1fr}.login-type-switch__item{min-height:58px}.auth-field input,.auth-submit{min-height:44px}.school-desk,.desk-panel,.panel{border-radius:8px;box-shadow:0 10px 24px #0f172a0a}.desk-masthead{gap:12px;padding:14px}.desk-seal{width:50px;height:50px;box-shadow:inset 0 0 0 5px #1e3a8a,inset 0 0 0 6px #ffffff2e}.desk-seal span{font-size:.95rem}.desk-title h2{font-size:1.45rem;line-height:1.08}.desk-title p{margin-top:6px;font-size:.86rem}.desk-date{padding:10px 12px}.desk-date strong{font-size:1.02rem}.desk-register{background:#fff;border-top:1px solid #dbe7f7;grid-template-columns:repeat(2,minmax(0,1fr))}.desk-register a,.desk-register div{border-bottom:1px solid #dbe7f7;border-right:1px solid #dbe7f7;min-height:92px;padding:12px}.desk-register a:nth-child(2n),.desk-register div:nth-child(2n){border-right:0}.desk-register a:last-child{border-bottom:0;grid-column:1/-1}.desk-register strong{font-size:1.28rem}.desk-register span{font-size:.84rem}.desk-register small{font-size:.76rem}.desk-grid,.desk-left,.desk-right{gap:12px}.desk-panel{padding:13px}.desk-panel-head{gap:8px;margin-bottom:12px}.desk-panel-head h2{font-size:1rem}.section-kicker{margin-bottom:5px;font-size:.7rem}.cashbook-strip{grid-template-columns:repeat(2,minmax(0,1fr))}.cashbook-strip div{border-bottom:1px solid #dbe7f7;padding:11px}.cashbook-strip div:nth-child(2n){border-right:0}.cashbook-strip div:nth-last-child(-n+2){border-bottom:0}.cashbook-strip strong{font-size:1rem}.cashbook-head{display:none}.cashbook-row{grid-template-columns:minmax(0,1fr) auto;gap:8px 12px;padding:12px 0;display:grid;position:relative}.cashbook-row>span:first-child{grid-column:1/-1}.cashbook-row b{justify-self:end}.status-pill{align-self:center}.map-rows a{grid-template-columns:34px minmax(0,1fr);gap:10px;padding:12px 0}.map-rows span{width:28px;height:28px}.map-rows strong{display:block}.map-rows small{grid-column:2;margin-top:-4px;display:block}.registrar-stack div,.office-checks div{padding:10px 0}.side-rail{width:min(88vw,300px);padding:18px 14px}.rail-nav a{min-height:42px}.rail-foot{margin-top:16px}.admin-page-head,.pupil-home-hero,.pupil-portal-head{padding:14px}.pupil-identity h2{font-size:1.42rem;line-height:1.08}.pupil-identity p{font-size:.9rem}.pupil-section-tabs{gap:6px;padding:5px}.pupil-section-tabs a{min-height:38px;padding:0 11px;font-size:.86rem}.pupil-metric-grid{gap:10px}.pupil-metric-grid>a,.pupil-metric-grid>div{min-height:88px;padding:13px}.pupil-panel{padding:14px}.pupil-panel-head{flex-direction:column;align-items:stretch}.pupil-panel-head>span,.pupil-panel-head>strong{align-self:start}.pupil-profile-list div{grid-template-columns:1fr;gap:4px}.pupil-home-hero h2{font-size:1.42rem;line-height:1.08}.pupil-home-hero p{font-size:.9rem}.admin-page-head h2{font-size:1.42rem;line-height:1.08}.admin-page-head p{font-size:.9rem}.work-grid{grid-template-columns:1fr}.work-card{min-height:0;padding:14px}.work-detail-hero h2{font-size:1.42rem;line-height:1.08}.work-detail-hero p{font-size:.9rem}.admin-tabs{gap:6px;padding:5px}.admin-tabs a{padding:9px 11px;font-size:.86rem}.admin-stat-grid{gap:10px}.admin-stat-grid div{min-height:88px;padding:13px}.admin-stat-grid strong{font-size:1.28rem}.register-date-card{padding:11px 12px}.register-date-card strong{font-size:1.08rem}.register-control-form{padding:12px}.register-control-form h2{font-size:.96rem}.register-export-card{padding:12px}.register-export-dialog{width:min(100%,520px)}.register-export-head,.register-export-form{padding:16px}.register-export-actions{flex-direction:column;align-items:stretch}.register-export-actions .primary-action,.register-export-actions .secondary-action{width:100%}.register-summary-grid div{min-height:84px}.register-row{padding-inline:14px}.register-pupil>span{width:36px;height:36px}.register-options{gap:7px}.register-choice span{min-height:36px;padding:0 8px;font-size:.82rem}.register-excuse input{min-height:40px}.admin-table article{font-size:.92rem}.submission-card-head,.grading-form-head{flex-direction:column}.submission-statuses{justify-content:flex-start}}@media (width>=901px){.side-rail::-webkit-scrollbar{width:8px}.side-rail::-webkit-scrollbar-thumb{background:#ffffff29;border-radius:999px}}@media (width<=1100px){.admin-module-strip{grid-template-columns:repeat(3,minmax(0,1fr))}}@media (width<=900px){.admin-dashboard-grid,.admin-welcome-hero{grid-template-columns:1fr}.admin-welcome-highlight{max-width:280px}.admin-module-strip{grid-template-columns:repeat(2,minmax(0,1fr))}.admin-contact-grid,.admin-finance-footer{grid-template-columns:1fr}.admin-dashboard-calendar-grid{gap:6px}.school-app--admin .app-shell{display:block}}@media (width<=640px){.admin-dashboard-stat-grid,.admin-stat-grid{grid-template-columns:1fr}.admin-metric-card{min-height:96px;padding:16px}.admin-metric-arrow{display:none}.admin-card{padding:16px 18px}.admin-welcome-hero{padding:20px}.admin-welcome-hero h2{font-size:1.45rem}.admin-module-strip{grid-template-columns:1fr}.admin-module-text small{white-space:normal}.admin-dashboard-calendar-grid{gap:4px}.admin-dashboard-calendar-cell{min-height:44px;padding:5px 2px}.noticeboard-item-head{grid-template-columns:1fr}.noticeboard-item-actions{align-items:stretch}.noticeboard-item-actions button{width:100%;margin-left:0}}.pupil-balance-card,.dash-focus-card--dark,.desk-seal,.admin-welcome-hero,.admin-dashboard .admin-welcome-hero,.admin-profile-avatar,.pupil-focus-card,.guardian-child-avatar,.account-profile-balance,.account-balance-tile,.guardian-report-card-avatar,.pupil-report-card-avatar,.pupil-hero-badge,.pupil-btn-primary,.pupil-reports-hero,.pupil-record-hero,.pupil-resource-hero,.document-hero{background:#130c44}.console-head,.desk-masthead,.pupil-home-hero,.admin-insight-card,.report-draft-tool-card,.teacher-dashboard-shell,.teacher-dashboard-card,.admin-dashboard-shell,.people-hub-card,.people-filter-card,.guardian-family-card,.account-form-hero,.account-form-hero.invoice,.settings-hero,.website-section-card>.admin-card-head,.website-publish-card,.media-picker,.admin-profile-hero,.admin-finance-bar-row,.pupil-report-summary,.pupil-report-sheet,.pupil-resource-card-icon,.pupil-file-preview,.pupil-file-card-icon,.pupil-report-list-score.is-high,.pupil-report-list-score.is-mid,.pupil-report-list-score.is-low{background:#fff}.admin-page-head:before,.admin-welcome-hero:before,.admin-welcome-hero:after,.role-ledger i,.role-bars i,.website-preview-nav span{background:#130c44}.website-preview-hero{background-image:var(--website-preview-image,url(/images/hero-poster.jpg))}.website-preview-hero:before{content:"";pointer-events:none;background:#130c44b8;position:absolute;inset:0}.school-app .website-preview-hero{background-image:var(--website-preview-image,url(/images/hero-poster.jpg));position:relative}.school-app .website-preview-hero>*{z-index:1;position:relative}.pupil-dashboard,.guardian-dashboard,.accountant-dashboard{--role-dash-brand:#130c44;--role-dash-border:#d8def0;--role-dash-soft:#f5f6fb;--role-dash-ink:#121832;--role-dash-muted:#5d6684}.pupil-dashboard .admin-welcome-hero,.guardian-dashboard .admin-welcome-hero,.accountant-dashboard .admin-welcome-hero{border:1px solid var(--role-dash-brand);grid-template-columns:minmax(0,1fr) minmax(260px,340px);align-items:stretch;gap:22px;padding:clamp(22px,3vw,34px);display:grid}@supports (color:color-mix(in lab, red, red)){.pupil-dashboard .admin-welcome-hero,.guardian-dashboard .admin-welcome-hero,.accountant-dashboard .admin-welcome-hero{border:1px solid color-mix(in srgb, var(--role-dash-brand) 24%, #fff)}}.pupil-dashboard .admin-welcome-hero,.guardian-dashboard .admin-welcome-hero,.accountant-dashboard .admin-welcome-hero{background:var(--role-dash-brand);color:#fff;border-radius:8px;box-shadow:0 22px 54px #130c4433}.pupil-dashboard .admin-welcome-copy,.guardian-dashboard .admin-welcome-copy,.accountant-dashboard .admin-welcome-copy{align-content:center;gap:12px;min-width:0;display:grid}.pupil-dashboard .admin-welcome-copy h2,.guardian-dashboard .admin-welcome-copy h2,.accountant-dashboard .admin-welcome-copy h2{color:#fff;letter-spacing:0;font-size:clamp(1.9rem,4vw,3.3rem);font-weight:950;line-height:1}.pupil-dashboard .admin-welcome-copy p,.guardian-dashboard .admin-welcome-copy p,.accountant-dashboard .admin-welcome-copy p{color:#e8e6f3;max-width:720px;text-shadow:none;margin:0;line-height:1.65}.pupil-dashboard .admin-welcome-greeting,.guardian-dashboard .admin-welcome-greeting,.accountant-dashboard .admin-welcome-greeting,.pupil-dashboard .admin-welcome-highlight .section-kicker,.guardian-dashboard .admin-welcome-highlight .section-kicker,.accountant-dashboard .admin-welcome-highlight .section-kicker{color:#fff}.pupil-dashboard .admin-welcome-chips,.guardian-dashboard .admin-welcome-chips,.accountant-dashboard .admin-welcome-chips{flex-wrap:wrap;gap:8px;display:flex}.pupil-dashboard .admin-chip,.guardian-dashboard .admin-chip,.accountant-dashboard .admin-chip{color:#fff;background:#ffffff1a;border:1px solid #ffffff38;border-radius:8px;align-items:center;min-height:32px;padding:0 12px;font-weight:850;display:inline-flex}.pupil-dashboard .admin-welcome-highlight,.guardian-dashboard .admin-welcome-highlight,.accountant-dashboard .admin-welcome-highlight{min-height:220px;box-shadow:none;background:#ffffff14;border:1px solid #ffffff38;border-radius:8px;align-content:center;justify-items:center;gap:10px;padding:20px;display:grid}.pupil-dashboard .admin-welcome-highlight small,.guardian-dashboard .admin-welcome-highlight small,.accountant-dashboard .admin-welcome-highlight small{color:#e8e6f3;text-align:center;text-shadow:none}.pupil-dashboard .admin-welcome-highlight a,.guardian-dashboard .admin-welcome-highlight a,.accountant-dashboard .admin-welcome-highlight a{color:#fff;border:1px solid #ffffff47;border-radius:8px;align-items:center;min-height:38px;padding:0 12px;font-weight:900;text-decoration:none;display:inline-flex}.pupil-dashboard .admin-collection-ring-track,.guardian-dashboard .admin-collection-ring-track,.accountant-dashboard .admin-collection-ring-track{stroke:#ffffff38}.pupil-dashboard .admin-collection-ring-fill,.guardian-dashboard .admin-collection-ring-fill,.accountant-dashboard .admin-collection-ring-fill{stroke:#fff;filter:none}.pupil-dashboard .admin-stat-grid,.guardian-dashboard .admin-stat-grid,.accountant-dashboard .admin-stat-grid{gap:16px}.pupil-dashboard .admin-card,.guardian-dashboard .admin-card,.accountant-dashboard .admin-card,.pupil-dashboard .admin-module-link,.guardian-dashboard .admin-module-link,.accountant-dashboard .admin-module-link,.pupil-dashboard .admin-metric-card,.guardian-dashboard .admin-metric-card,.accountant-dashboard .admin-metric-card,.pupil-dashboard .admin-contact-card,.guardian-dashboard .admin-contact-card,.accountant-dashboard .admin-contact-card{border:1px solid var(--role-dash-border);background:#fff;border-radius:8px;box-shadow:0 12px 28px #1218320e}.pupil-dashboard .admin-card:hover,.guardian-dashboard .admin-card:hover,.accountant-dashboard .admin-card:hover,.pupil-dashboard .admin-module-link:hover,.guardian-dashboard .admin-module-link:hover,.accountant-dashboard .admin-module-link:hover,.pupil-dashboard .admin-metric-card:hover,.guardian-dashboard .admin-metric-card:hover,.accountant-dashboard .admin-metric-card:hover,.pupil-dashboard .admin-contact-card:hover,.guardian-dashboard .admin-contact-card:hover,.accountant-dashboard .admin-contact-card:hover{border-color:var(--role-dash-brand);transform:translateY(-1px)}@supports (color:color-mix(in lab, red, red)){.pupil-dashboard .admin-card:hover,.guardian-dashboard .admin-card:hover,.accountant-dashboard .admin-card:hover,.pupil-dashboard .admin-module-link:hover,.guardian-dashboard .admin-module-link:hover,.accountant-dashboard .admin-module-link:hover,.pupil-dashboard .admin-metric-card:hover,.guardian-dashboard .admin-metric-card:hover,.accountant-dashboard .admin-metric-card:hover,.pupil-dashboard .admin-contact-card:hover,.guardian-dashboard .admin-contact-card:hover,.accountant-dashboard .admin-contact-card:hover{border-color:color-mix(in srgb, var(--role-dash-brand) 32%, var(--role-dash-border))}}.pupil-dashboard .admin-card:hover,.guardian-dashboard .admin-card:hover,.accountant-dashboard .admin-card:hover,.pupil-dashboard .admin-module-link:hover,.guardian-dashboard .admin-module-link:hover,.accountant-dashboard .admin-module-link:hover,.pupil-dashboard .admin-metric-card:hover,.guardian-dashboard .admin-metric-card:hover,.accountant-dashboard .admin-metric-card:hover,.pupil-dashboard .admin-contact-card:hover,.guardian-dashboard .admin-contact-card:hover,.accountant-dashboard .admin-contact-card:hover{box-shadow:0 16px 34px #12183214}.pupil-dashboard .admin-metric-card,.guardian-dashboard .admin-metric-card,.accountant-dashboard .admin-metric-card{grid-template-columns:46px minmax(0,1fr);align-items:center;gap:14px;min-height:118px;padding:18px}.pupil-dashboard .admin-module-icon,.guardian-dashboard .admin-module-icon,.accountant-dashboard .admin-module-icon,.pupil-dashboard .admin-metric-icon,.guardian-dashboard .admin-metric-icon,.accountant-dashboard .admin-metric-icon,.pupil-dashboard .admin-contact-icon,.guardian-dashboard .admin-contact-icon,.accountant-dashboard .admin-contact-icon,.pupil-dashboard .admin-section-icon,.guardian-dashboard .admin-section-icon,.accountant-dashboard .admin-section-icon{background:var(--role-dash-soft);width:46px;height:46px;color:var(--role-dash-brand);border-radius:8px}.pupil-dashboard .admin-metric-body strong,.guardian-dashboard .admin-metric-body strong,.accountant-dashboard .admin-metric-body strong,.pupil-dashboard .admin-finance-footer strong,.guardian-dashboard .admin-finance-footer strong,.accountant-dashboard .admin-finance-footer strong{color:var(--role-dash-ink);font-weight:950}.pupil-dashboard .admin-metric-body small,.guardian-dashboard .admin-metric-body small,.accountant-dashboard .admin-metric-body small,.pupil-dashboard .section-kicker,.guardian-dashboard .section-kicker,.accountant-dashboard .section-kicker,.pupil-dashboard .admin-contact-copy small,.guardian-dashboard .admin-contact-copy small,.accountant-dashboard .admin-contact-copy small{color:var(--role-dash-brand);font-weight:950}.pupil-dashboard .admin-metric-hint,.guardian-dashboard .admin-metric-hint,.accountant-dashboard .admin-metric-hint,.pupil-dashboard .admin-module-text small,.guardian-dashboard .admin-module-text small,.accountant-dashboard .admin-module-text small,.pupil-dashboard .admin-feed-item p,.guardian-dashboard .admin-feed-item p,.accountant-dashboard .admin-feed-item p,.pupil-dashboard .admin-feed-item small,.guardian-dashboard .admin-feed-item small,.accountant-dashboard .admin-feed-item small{color:var(--role-dash-muted)}.pupil-dashboard .admin-card-head,.guardian-dashboard .admin-card-head,.accountant-dashboard .admin-card-head{border-bottom:1px solid var(--role-dash-border);background:#fff;min-height:78px;padding:18px 20px}.pupil-dashboard .admin-card-link,.guardian-dashboard .admin-card-link,.accountant-dashboard .admin-card-link{background:var(--role-dash-soft);color:var(--role-dash-brand);border-color:var(--role-dash-border);border-radius:8px}.pupil-dashboard .admin-card-link:hover,.guardian-dashboard .admin-card-link:hover,.accountant-dashboard .admin-card-link:hover{background:var(--role-dash-brand);color:#fff;border-color:var(--role-dash-brand)}.pupil-dashboard .admin-feed-item,.guardian-dashboard .admin-feed-item,.accountant-dashboard .admin-feed-item,.guardian-dashboard .guardian-child-card,.pupil-dashboard .pupil-assignment-row,.accountant-dashboard .admin-record-row,.accountant-dashboard .admin-finance-footer div{border-color:var(--role-dash-border);background:#fff;border-radius:8px}.pupil-dashboard .admin-feed-marker,.guardian-dashboard .admin-feed-marker,.accountant-dashboard .admin-feed-marker{background:var(--role-dash-brand);box-shadow:0 0 0 5px var(--role-dash-soft)}.guardian-dashboard .guardian-child-avatar{background:var(--role-dash-brand);color:#fff;border-radius:8px}.accountant-dashboard .admin-module-strip{gap:16px}.accountant-dashboard .admin-finance-footer{background:var(--role-dash-soft)}@media (width<=900px){.pupil-dashboard .admin-welcome-hero,.guardian-dashboard .admin-welcome-hero,.accountant-dashboard .admin-welcome-hero{grid-template-columns:1fr}}.school-app .app-shell{grid-template-columns:284px minmax(0,1fr)}.school-app .side-rail{color:#fff;background:#130c44;border-right:1px solid #ffffff1a;gap:20px;padding:22px 16px;box-shadow:10px 0 34px #130c4429}.school-app .rail-head{padding:0}.school-app .brand-mark{background:#ffffff14;border:1px solid #ffffff1f;border-radius:8px;width:100%;min-height:58px;padding:8px}.school-app .brand-mark img,.school-app .brand-mark>span{border-radius:8px;width:42px;height:42px}.school-app .brand-mark>span{color:#130c44;box-shadow:none;background:#fff}.school-app .brand-mark strong{color:#fff;letter-spacing:0;font-size:1rem;font-weight:900}.school-app .rail-nav{gap:6px;display:grid}.school-app .rail-label{color:#ffffff9e;letter-spacing:.12em;text-transform:uppercase;margin:12px 8px 6px;font-size:.68rem;font-weight:900}.school-app .rail-nav a{color:#ffffffe6;min-height:48px;box-shadow:none;border:1px solid #0000;border-radius:8px;grid-template-columns:36px minmax(0,1fr);gap:10px;padding:0 12px;font-size:.92rem;font-weight:800;text-decoration:none}.school-app .rail-nav a span:not(.nav-icon){text-overflow:ellipsis;white-space:nowrap;font-weight:800;overflow:hidden}.school-app .nav-icon{color:#ffffffd1;background:#ffffff1a;border-radius:8px;width:32px;height:32px}.school-app .rail-nav a:hover{color:#fff;background:#ffffff1a;border-color:#ffffff1a;transform:translate(2px)}.school-app .rail-nav a:hover .nav-icon{color:#fff;background:#ffffff29}.school-app .rail-nav a.active{color:#130c44;background:#fff;border-color:#fff;transform:none;box-shadow:0 12px 26px #00000029}.school-app .rail-nav a.active .nav-icon{color:#130c44;background:#eeeef6}.school-app .rail-nav a.active:after{display:none}.school-app .rail-foot{background:#ffffff14;border:1px solid #ffffff1f;border-radius:8px;gap:5px;margin-top:auto;padding:14px}.school-app .rail-foot span{color:#ffffffa8}.school-app .rail-foot strong{color:#fff}.school-app .rail-close{color:#fff;background:#ffffff1a;border-color:#ffffff24}.school-app .rail-close svg{fill:none;stroke:currentColor;stroke-width:2px;stroke-linecap:round;width:20px;height:20px}@media (width<=900px){.school-app .app-shell{display:block}.school-app .side-rail{z-index:50;width:min(88vw,320px);height:100dvh;transition:transform .2s;position:fixed;inset:0 auto 0 0;transform:translate(-104%);box-shadow:24px 0 60px #0f172a38}.school-app .nav-toggle:checked~.side-rail{transform:translate(0)}}.school-app .admin-tabs,.school-app .dash-tabs,.school-app .pupil-section-tabs,.school-app .tab-list,.school-app .settings-tabs{background:#fff;border:1px solid #d8def0;border-radius:8px;flex-wrap:wrap;gap:8px;padding:6px;display:flex;box-shadow:0 8px 22px #1218320b}.school-app .settings-tabs{grid-template-columns:repeat(auto-fit,minmax(150px,1fr));display:grid}.school-app .admin-tabs a,.school-app .dash-tabs a,.school-app .pupil-section-tabs a,.school-app .tab-list label,.school-app .settings-tabs a{color:#121832;white-space:nowrap;min-height:42px;box-shadow:none;background:#f5f6fb;border:1px solid #d8def0;border-radius:8px;justify-content:center;align-items:center;gap:8px;padding:0 14px;font-size:.88rem;font-weight:900;line-height:1.15;text-decoration:none;display:inline-flex}.school-app .admin-tabs a strong,.school-app .dash-tabs a strong,.school-app .pupil-section-tabs a strong,.school-app .settings-tabs a strong{color:#130c44;background:#fff;border:1px solid #d8def0}.school-app .admin-tabs a:hover,.school-app .dash-tabs a:hover,.school-app .pupil-section-tabs a:hover,.school-app .tab-list label:hover,.school-app .settings-tabs a:hover{color:#130c44;background:#eeeef6;border-color:#130c44;transform:none}.school-app .admin-tabs a.active,.school-app .dash-tabs a.active,.school-app .pupil-section-tabs a.active,.school-app .settings-tabs a.active,.school-app #tab-school:checked~.tab-list label[for=tab-school],.school-app #tab-brand:checked~.tab-list label[for=tab-brand],.school-app #tab-gateways:checked~.tab-list label[for=tab-gateways],.school-app #tab-security:checked~.tab-list label[for=tab-security]{color:#fff;background:#130c44;border-color:#130c44;box-shadow:0 10px 24px #130c442e}.school-app .admin-tabs a.active *,.school-app .dash-tabs a.active *,.school-app .pupil-section-tabs a.active *,.school-app .settings-tabs a.active *,.school-app #tab-school:checked~.tab-list label[for=tab-school] *,.school-app #tab-brand:checked~.tab-list label[for=tab-brand] *,.school-app #tab-gateways:checked~.tab-list label[for=tab-gateways] *,.school-app #tab-security:checked~.tab-list label[for=tab-security] *{color:#fff}.school-app .admin-tabs a.active strong,.school-app .dash-tabs a.active strong,.school-app .pupil-section-tabs a.active strong,.school-app .settings-tabs a.active strong{color:#fff;background:#ffffff29;border-color:#ffffff47}@media (width<=640px){.school-app .admin-tabs,.school-app .dash-tabs,.school-app .pupil-section-tabs,.school-app .tab-list{flex-wrap:nowrap;overflow-x:auto}}}:root{--ui-brand:var(--primary,#130c44);--ui-brand-strong:var(--primary-strong,#130c44);--ui-brand-hover:var(--ui-brand)}@supports (color:color-mix(in lab, red, red)){:root{--ui-brand-hover:color-mix(in srgb, var(--ui-brand) 86%, #fff)}}:root{--ui-brand-soft:var(--ui-brand)}@supports (color:color-mix(in lab, red, red)){:root{--ui-brand-soft:color-mix(in srgb, var(--ui-brand) 6%, #fff)}}:root{--ui-brand-tint:var(--ui-brand)}@supports (color:color-mix(in lab, red, red)){:root{--ui-brand-tint:color-mix(in srgb, var(--ui-brand) 11%, #fff)}}:root{--ui-brand-ring:var(--ui-brand)}@supports (color:color-mix(in lab, red, red)){:root{--ui-brand-ring:color-mix(in srgb, var(--ui-brand) 22%, transparent)}}:root{--ui-bg:#f5f6fa;--ui-surface:#fff;--ui-surface-2:#f8f9fc;--ui-surface-3:#f1f3f8;--ui-border:#e4e7ef;--ui-border-strong:#d0d5e1;--ui-text:#101631;--ui-text-2:#454d66;--ui-text-3:#6b7390;--ui-success:#0e7a4d;--ui-success-bg:#ecfaf2;--ui-success-border:#b7e8cd;--ui-warning:#a35200;--ui-warning-bg:#fff7e8;--ui-warning-border:#f8d9a6;--ui-danger:#b42318;--ui-danger-bg:#fef3f2;--ui-danger-border:#fbcac5;--ui-info:#1d5fc4;--ui-info-bg:#eff5ff;--ui-info-border:#c3d7fb;--ui-sidebar-bg:var(--bg-sidebar,#130c44);--ui-sidebar-text:#ffffffb8;--ui-sidebar-text-strong:#fff;--ui-sidebar-muted:#ffffff73;--ui-sidebar-hover:#ffffff12;--ui-sidebar-active:#ffffff1f;--ui-sidebar-border:#ffffff17;--ui-radius-sm:6px;--ui-radius:8px;--ui-radius-lg:12px;--ui-radius-xl:16px;--ui-shadow-xs:0 1px 2px #1016310d;--ui-shadow-sm:0 1px 3px #10163112, 0 1px 2px #1016310a;--ui-shadow-md:0 6px 16px -4px #1016311a, 0 2px 6px -2px #1016310d;--ui-shadow-lg:0 20px 40px -12px #10163138, 0 4px 12px -4px #10163114;--ui-sidebar-width:260px;--ui-topbar-height:64px;--ui-gutter:clamp(16px, 2.4vw, 32px);--ui-ease:cubic-bezier(.2, .7, .3, 1);--ink:var(--ui-text);--muted:var(--ui-text-3);--muted-light:#8b92aa;--panel:var(--ui-surface);--field:var(--ui-surface);--line:var(--ui-border);--line-strong:var(--ui-border-strong);--radius-md:var(--ui-radius-lg);--radius-lg:var(--ui-radius-lg);--shadow-xs:var(--ui-shadow-xs);--shadow-sm:var(--ui-shadow-xs);--shadow-md:var(--ui-shadow-sm);--shadow-lg:var(--ui-shadow-md)}.school-app{background:var(--ui-bg);color:var(--ui-text);font-family:var(--font-sans);-webkit-font-smoothing:antialiased;text-rendering:optimizelegibility;font-feature-settings:"tnum" 0;margin:0;font-size:15px;line-height:1.5}.school-app :focus-visible{outline:2px solid var(--ui-brand);outline-offset:2px}.school-app h1,.school-app h2,.school-app h3,.school-app h4{letter-spacing:-.012em}.ui-skip-link{z-index:100;border-radius:var(--ui-radius);background:var(--ui-surface);color:var(--ui-text);box-shadow:var(--ui-shadow-md);padding:8px 14px;transition:transform .15s;position:fixed;top:8px;left:8px;transform:translateY(-160%)}.ui-skip-link:focus{transform:none}.ui-icon{flex:none;display:block}kbd{border:1px solid var(--ui-border);background:var(--ui-surface);min-height:20px;color:var(--ui-text-3);font:500 .7rem/1 var(--font-sans);border-bottom-width:2px;border-radius:5px;align-items:center;padding:0 6px;display:inline-flex}.ui-shell{grid-template-columns:var(--ui-sidebar-width) minmax(0, 1fr);min-height:100vh;display:grid}.ui-sidebar{z-index:40;background:var(--ui-sidebar-bg);height:100vh;color:var(--ui-sidebar-text);flex-direction:column;gap:14px;padding:16px 12px 12px;display:flex;position:sticky;top:0;overflow:hidden}.ui-sidebar-head{justify-content:space-between;align-items:center;gap:8px;padding:0 4px;display:flex}.ui-brand{border-radius:var(--ui-radius);min-width:0;color:var(--ui-sidebar-text-strong);align-items:center;gap:11px;padding:4px;text-decoration:none;display:flex}.ui-brand img,.ui-brand-mark{object-fit:contain;border-radius:9px;flex:none;width:36px;height:36px}.ui-brand img{background:#fff;padding:3px}.ui-brand-mark{color:var(--ui-sidebar-bg);letter-spacing:.02em;background:#fff;place-items:center;font-size:.82rem;font-weight:700;display:grid}.ui-brand-text{min-width:0;line-height:1.25;display:grid}.ui-brand-text strong{-webkit-line-clamp:2;-webkit-box-orient:vertical;font-size:.88rem;font-weight:600;line-height:1.25;display:-webkit-box;overflow:hidden}.ui-brand-text small{color:var(--ui-sidebar-muted);font-size:.74rem;font-weight:500}.ui-sidebar-search{border:1px solid var(--ui-sidebar-border);border-radius:var(--ui-radius);min-height:36px;box-shadow:none;color:var(--ui-sidebar-muted);font:500 .84rem var(--font-sans);text-align:left;cursor:pointer;background:#ffffff0d;align-items:center;gap:9px;margin:0;padding:0 8px 0 11px;transition:background .15s,border-color .15s;display:flex}.ui-sidebar-search span{flex:1}.ui-sidebar-search kbd{border-color:var(--ui-sidebar-border);color:var(--ui-sidebar-muted);background:0 0}.ui-sidebar-search:hover{box-shadow:none;color:var(--ui-sidebar-text);background:#ffffff14;border-color:#ffffff2e;transform:none}.ui-nav{scrollbar-width:thin;scrollbar-color:#ffffff29 transparent;flex:1;align-content:start;gap:14px;min-height:0;margin:0 -4px;padding:2px 4px;display:grid;overflow-y:auto}.ui-nav-group{gap:1px;display:grid}.ui-nav-label{color:var(--ui-sidebar-muted);letter-spacing:.07em;text-transform:uppercase;padding:0 10px 5px;font-size:.68rem;font-weight:600}.ui-nav-link{border-radius:var(--ui-radius);min-height:36px;color:var(--ui-sidebar-text);align-items:center;gap:11px;padding:0 10px;font-size:.875rem;font-weight:500;text-decoration:none;transition:background .12s,color .12s;display:flex;position:relative}.ui-nav-link .ui-icon{opacity:.8}.ui-nav-link span{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.ui-nav-link:hover{background:var(--ui-sidebar-hover);color:var(--ui-sidebar-text-strong)}.ui-nav-link.is-active{background:var(--ui-sidebar-active);color:var(--ui-sidebar-text-strong);font-weight:600}.ui-nav-link.is-active .ui-icon{opacity:1}.ui-nav-link.is-active:before{content:"";background:#fff;border-radius:0 3px 3px 0;width:3px;position:absolute;top:9px;bottom:9px;left:-4px}.ui-sidebar-foot{border-top:1px solid var(--ui-sidebar-border);padding-top:10px}.ui-account{border-radius:var(--ui-radius);color:var(--ui-sidebar-text-strong);cursor:pointer;align-items:center;gap:10px;padding:6px;list-style:none;display:flex}.ui-account::-webkit-details-marker{display:none}.ui-account:hover{background:var(--ui-sidebar-hover)}.ui-account .ui-avatar{color:#fff;background:#ffffff24}.ui-account-text{flex:1;min-width:0;line-height:1.25;display:grid}.ui-account-text strong{text-overflow:ellipsis;white-space:nowrap;font-size:.84rem;font-weight:600;overflow:hidden}.ui-account-text small{color:var(--ui-sidebar-muted);font-size:.74rem}.ui-account>.ui-icon{color:var(--ui-sidebar-muted)}.ui-sidebar .ui-sidebar-close,.ui-sidebar-backdrop{display:none}.ui-main{flex-direction:column;min-width:0;display:flex}.ui-topbar{z-index:30;min-height:var(--ui-topbar-height);padding:0 var(--ui-gutter);border-bottom:1px solid var(--ui-border);background:var(--ui-surface);align-items:center;gap:14px;display:flex;position:sticky;top:0}@supports (color:color-mix(in lab, red, red)){.ui-topbar{background:color-mix(in srgb, var(--ui-surface) 88%, transparent)}}.ui-topbar{-webkit-backdrop-filter:saturate(1.6)blur(10px)}.ui-topbar .ui-menu-toggle{display:none}.ui-page-title{flex:1;gap:1px;min-width:0;display:grid}.ui-page-title h1{color:var(--ui-text);text-overflow:ellipsis;white-space:nowrap;margin:0;font-size:1.06rem;font-weight:600;line-height:1.3;overflow:hidden}.ui-breadcrumb{min-width:0;color:var(--ui-text-3);white-space:nowrap;align-items:center;gap:4px;font-size:.76rem;font-weight:500;display:flex;overflow:hidden}.ui-breadcrumb a{color:inherit;text-decoration:none}.ui-breadcrumb a:hover{color:var(--ui-text)}.ui-breadcrumb .ui-icon{opacity:.6}.ui-topbar-actions{align-items:center;gap:8px;display:flex}.ui-topbar-search{border:1px solid var(--ui-border);border-radius:var(--ui-radius);background:var(--ui-surface-2);width:clamp(200px,22vw,300px);min-height:36px;box-shadow:none;color:var(--ui-text-3);font:400 .84rem var(--font-sans);text-align:left;cursor:pointer;align-items:center;gap:8px;margin:0;padding:0 6px 0 11px;transition:border-color .15s,background .15s;display:flex}.ui-topbar-search span{text-overflow:ellipsis;white-space:nowrap;flex:1;overflow:hidden}.ui-topbar-search:hover{border-color:var(--ui-border-strong);background:var(--ui-surface);box-shadow:none;color:var(--ui-text-2);transform:none}.ui-icon-button{border-radius:var(--ui-radius);width:36px;height:36px;min-height:36px;box-shadow:none;color:var(--ui-text-2);cursor:pointer;background:0 0;border:1px solid #0000;place-items:center;margin:0;padding:0;list-style:none;transition:background .12s,color .12s;display:inline-grid;position:relative}.ui-icon-button::-webkit-details-marker{display:none}.ui-icon-button:hover{background:var(--ui-surface-3);box-shadow:none;color:var(--ui-text);border-color:#0000;transform:none}.ui-avatar{background:var(--ui-brand-tint);width:32px;height:32px;color:var(--ui-brand);letter-spacing:.02em;border-radius:999px;flex:none;place-items:center;font-size:.74rem;font-weight:600;display:inline-grid}.ui-avatar--button{cursor:pointer;box-shadow:0 0 0 1px var(--ui-border);list-style:none;transition:box-shadow .15s}.ui-avatar--button::-webkit-details-marker{display:none}.ui-avatar--button:hover{box-shadow:0 0 0 3px var(--ui-brand-ring)}.ui-content{width:100%;max-width:1480px;padding:24px var(--ui-gutter) 48px;outline:none;align-content:start;gap:20px;margin:0 auto;display:grid}.ui-button,.school-app .ui-content .primary-action,.school-app .ui-content .secondary-action,.school-app .ui-content .danger-button,.school-app .slide-over .primary-action,.school-app .slide-over .secondary-action,.school-app .slide-over .danger-button{border:1px solid var(--ui-border-strong);border-radius:var(--ui-radius);background:var(--ui-surface);min-height:38px;box-shadow:var(--ui-shadow-xs);color:var(--ui-text);font:500 .86rem/1 var(--font-sans);white-space:nowrap;cursor:pointer;justify-content:center;align-items:center;gap:7px;padding:0 14px;text-decoration:none;list-style:none;transition:background .12s,border-color .12s,box-shadow .12s,color .12s;display:inline-flex;transform:none}.ui-button::-webkit-details-marker{display:none}.ui-button:hover,.school-app .ui-content .secondary-action:hover,.school-app .slide-over .secondary-action:hover{border-color:var(--ui-border-strong);background:var(--ui-surface-2);box-shadow:var(--ui-shadow-xs);color:var(--ui-text);transform:none}.ui-button--primary,.school-app .ui-content .primary-action,.school-app .slide-over .primary-action{border-color:var(--ui-brand);background:var(--ui-brand);color:#fff;box-shadow:var(--ui-shadow-xs), inset 0 1px 0 #ffffff14}.ui-button--primary:hover,.school-app .ui-content .primary-action:hover,.school-app .slide-over .primary-action:hover{border-color:var(--ui-brand-hover);background:var(--ui-brand-hover);color:#fff;box-shadow:var(--ui-shadow-sm)}.school-app .ui-content .danger-button,.school-app .slide-over .danger-button{border-color:var(--ui-danger-border);background:var(--ui-surface);color:var(--ui-danger)}.school-app .ui-content .danger-button:hover,.school-app .slide-over .danger-button:hover{background:var(--ui-danger-bg);border-color:var(--ui-danger);color:var(--ui-danger);transform:none}.school-app .secondary-action:before{content:none;display:none}.school-app .ui-content button:not([class]),.school-app .slide-over button:not([class]),.school-app .ui-content button[type=submit]:not([class]){border:1px solid var(--ui-brand);border-radius:var(--ui-radius);background:var(--ui-brand);min-height:38px;box-shadow:var(--ui-shadow-xs);color:#fff;font:500 .86rem/1 var(--font-sans);padding:0 14px;transform:none}.school-app .ui-content button:not([class]):hover,.school-app .slide-over button:not([class]):hover{background:var(--ui-brand-hover);border-color:var(--ui-brand-hover);box-shadow:var(--ui-shadow-sm);transform:none}.school-app button:disabled,.school-app .primary-action[disabled],.school-app .secondary-action[disabled]{opacity:.5;cursor:not-allowed;box-shadow:none;transform:none}.ui-link-button{border-radius:var(--ui-radius-sm);min-height:0;box-shadow:none;color:var(--ui-brand);font:500 .8rem var(--font-sans);cursor:pointer;background:0 0;border:0;margin:0;padding:4px 6px}.ui-link-button:hover{background:var(--ui-brand-soft);color:var(--ui-brand);box-shadow:none;transform:none}.ui-alert{border:1px solid var(--ui-info-border);border-radius:var(--ui-radius-lg);background:var(--ui-info-bg);color:var(--ui-info);align-items:flex-start;gap:12px;padding:12px 16px;font-size:.88rem;display:flex}.ui-alert>.ui-icon{margin-top:1px}.ui-alert div{gap:2px;display:grid}.ui-alert strong{font-weight:600}.ui-alert span,.ui-alert li{color:var(--ui-text-2)}.ui-alert ul{margin:2px 0 0;padding-left:18px}.ui-alert--error{border-color:var(--ui-danger-border);background:var(--ui-danger-bg);color:var(--ui-danger)}.ui-alert--warning{border-color:var(--ui-warning-border);background:var(--ui-warning-bg);color:var(--ui-warning)}.ui-alert--info{border-color:var(--ui-info-border);background:var(--ui-info-bg);color:var(--ui-info)}.ui-toasts{z-index:90;pointer-events:none;gap:10px;width:min(400px,100vw - 32px);display:grid;position:fixed;bottom:20px;right:20px}.ui-toast{border:1px solid var(--ui-border);border-radius:var(--ui-radius-lg);background:var(--ui-surface);box-shadow:var(--ui-shadow-lg);color:var(--ui-text);pointer-events:auto;animation:ui-toast-in .28s var(--ui-ease);align-items:flex-start;gap:10px;padding:12px 12px 12px 14px;font-size:.875rem;font-weight:500;display:flex}.ui-toast>.ui-icon{color:var(--ui-success);margin-top:1px}.ui-toast>span{flex:1}.ui-toast.is-leaving{opacity:0;transition:opacity .2s,transform .2s;transform:translateY(6px)}.ui-toast-close{border-radius:var(--ui-radius-sm);width:24px;height:24px;min-height:24px;box-shadow:none;color:var(--ui-text-3);cursor:pointer;background:0 0;border:0;place-items:center;margin:-2px 0 0;padding:0;display:grid}.ui-toast-close:hover{background:var(--ui-surface-3);color:var(--ui-text);box-shadow:none;transform:none}@keyframes ui-toast-in{0%{opacity:0;transform:translateY(10px)scale(.98)}}.ui-menu{position:relative}.ui-menu>summary{list-style:none}.ui-menu>summary::-webkit-details-marker{display:none}.ui-menu-panel{z-index:50;border:1px solid var(--ui-border);border-radius:var(--ui-radius-lg);background:var(--ui-surface);min-width:230px;box-shadow:var(--ui-shadow-lg);animation:ui-pop .14s var(--ui-ease);gap:1px;padding:5px;display:grid;position:absolute;top:calc(100% + 8px);right:0}.ui-menu-panel--up{inset:auto 0 calc(100% + 8px)}@keyframes ui-pop{0%{opacity:0;transform:translateY(-4px)scale(.98)}}.ui-menu-header{border-bottom:1px solid var(--ui-border);color:var(--ui-text);gap:1px;margin-bottom:4px;padding:8px 10px 10px;display:grid}.ui-menu-header strong{font-size:.85rem;font-weight:600}.ui-menu-header small{color:var(--ui-text-3);text-overflow:ellipsis;font-size:.77rem;overflow:hidden}.ui-menu-item{border-radius:var(--ui-radius-sm);width:100%;min-height:34px;box-shadow:none;color:var(--ui-text-2);font:500 .85rem var(--font-sans);text-align:left;white-space:nowrap;cursor:pointer;background:0 0;border:0;justify-content:flex-start;align-items:center;gap:10px;margin:0;padding:0 10px;text-decoration:none;display:flex}.ui-menu-item .ui-icon{color:var(--ui-text-3)}.ui-menu-item:hover{background:var(--ui-surface-3);box-shadow:none;color:var(--ui-text);transform:none}.ui-menu-item--danger:hover{background:var(--ui-danger-bg);color:var(--ui-danger)}.ui-menu-item--danger:hover .ui-icon{color:var(--ui-danger)}.ui-notifications-count{border:2px solid var(--ui-surface);background:var(--ui-danger);color:#fff;border-radius:999px;place-items:center;min-width:17px;height:17px;padding:0 4px;font-size:.62rem;font-weight:700;line-height:1;display:grid;position:absolute;top:3px;right:2px}.ui-notifications-panel{width:min(380px,100vw - 24px);padding:0;overflow:hidden}.ui-notifications-head{border-bottom:1px solid var(--ui-border);justify-content:space-between;align-items:center;gap:12px;padding:12px 12px 12px 16px;display:flex}.ui-notifications-head div{display:grid}.ui-notifications-head strong{font-size:.9rem;font-weight:600}.ui-notifications-head small{color:var(--ui-text-3);font-size:.77rem}.ui-notifications-list{max-height:min(440px,64vh);overflow-y:auto}.ui-notification button{border:0;border-bottom:1px solid var(--ui-border);width:100%;min-height:0;box-shadow:none;color:inherit;font:inherit;text-align:left;cursor:pointer;background:0 0;border-radius:0;align-items:flex-start;gap:10px;margin:0;padding:12px 16px;display:flex}.ui-notification:last-child button{border-bottom:0}.ui-notification button:hover{background:var(--ui-surface-2);box-shadow:none;transform:none}.ui-notification-dot{background:0 0;border-radius:999px;flex:none;width:7px;height:7px;margin-top:7px}.ui-notification.is-unread .ui-notification-dot{background:var(--ui-info)}.ui-notification-body{gap:2px;min-width:0;display:grid}.ui-notification-type{color:var(--ui-text-3);letter-spacing:.05em;text-transform:uppercase;font-size:.68rem;font-weight:600}.ui-notification-body strong{color:var(--ui-text);font-size:.86rem;font-weight:600}.ui-notification-text{color:var(--ui-text-2);-webkit-line-clamp:2;-webkit-box-orient:vertical;font-size:.82rem;display:-webkit-box;overflow:hidden}.ui-notification-body small{color:var(--ui-text-3);font-size:.74rem}.ui-notifications-empty{color:var(--ui-text-3);justify-items:center;gap:8px;padding:32px 16px;font-size:.85rem;display:grid}.ui-palette{z-index:80;justify-content:center;padding:12vh 16px 16px;display:flex;position:fixed;inset:0}.ui-palette[hidden]{display:none}.ui-palette-backdrop{-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);background:#1016316b;animation:.15s ui-fade;position:absolute;inset:0}@keyframes ui-fade{0%{opacity:0}}.ui-palette-dialog{border:1px solid var(--ui-border);border-radius:var(--ui-radius-xl);background:var(--ui-surface);width:min(640px,100%);max-height:min(560px,76vh);animation:ui-pop .16s var(--ui-ease);flex-direction:column;display:flex;position:relative;overflow:hidden;box-shadow:0 32px 80px -16px #10163166}.ui-palette-input{border-bottom:1px solid var(--ui-border);color:var(--ui-text-3);align-items:center;gap:12px;padding:0 16px;display:flex}.ui-palette-input input{min-width:0;height:56px;box-shadow:none;color:var(--ui-text);font:400 1rem var(--font-sans);background:0 0;border:0;outline:0;flex:1;padding:0}.ui-palette-input input:focus,.ui-palette-input input:focus-visible{box-shadow:none;border:0;outline:none}.ui-palette-results{flex:1;padding:6px;overflow-y:auto}.ui-palette-group{color:var(--ui-text-3);letter-spacing:.06em;text-transform:uppercase;padding:10px 10px 4px;font-size:.7rem;font-weight:600}.ui-palette-item{border-radius:var(--ui-radius);color:var(--ui-text);align-items:center;gap:12px;padding:8px 10px;text-decoration:none;display:flex}.ui-palette-item.is-active{background:var(--ui-surface-3)}.ui-palette-item-icon{border:1px solid var(--ui-border);border-radius:var(--ui-radius);background:var(--ui-surface);width:32px;height:32px;color:var(--ui-text-2);flex:none;place-items:center;display:grid}.ui-palette-item-icon svg{width:16px;height:16px}.ui-palette-item-text{flex:1;min-width:0;display:grid}.ui-palette-item-text strong{text-overflow:ellipsis;white-space:nowrap;font-size:.88rem;font-weight:500;overflow:hidden}.ui-palette-item-text small{color:var(--ui-text-3);text-overflow:ellipsis;white-space:nowrap;font-size:.78rem;overflow:hidden}.ui-palette-item-enter{color:var(--ui-text-3);opacity:0;font-size:.85rem}.ui-palette-item.is-active .ui-palette-item-enter{opacity:1}.ui-palette-empty,.ui-palette-loading{color:var(--ui-text-3);text-align:center;padding:28px 16px;font-size:.88rem}.ui-palette-loading{padding:10px;font-size:.8rem}.ui-palette-foot{border-top:1px solid var(--ui-border);background:var(--ui-surface-2);color:var(--ui-text-3);gap:16px;padding:9px 16px;font-size:.74rem;display:flex}.ui-palette-foot span{align-items:center;gap:4px;display:inline-flex}.ui-palette-open{overflow:hidden}.school-app .ui-content .section-kicker,.school-app .slide-over .section-kicker{color:var(--ui-text-3);letter-spacing:.07em;text-transform:uppercase;font-size:.7rem;font-weight:600}.school-app .ui-content :is(strong,b,h2,h3,h4){font-weight:600}.school-app .ui-content .muted-copy{color:var(--ui-text-3)}.school-app .ui-content .admin-page-head,.school-app .ui-content .document-hero{border:0;border-radius:0;flex-wrap:wrap;justify-content:space-between;align-items:flex-end;gap:16px 24px;padding:4px 0;display:flex;box-shadow:none!important;background:0 0!important}.school-app .ui-content .admin-page-head:before,.school-app .ui-content .admin-page-head:after{content:none;display:none}.school-app .ui-content .admin-page-head>div:first-child{flex:360px;gap:4px;min-width:0;padding-left:0;display:grid}.school-app .ui-content .admin-page-head h2,.school-app .ui-content .document-hero h2{max-width:none;color:var(--ui-text);letter-spacing:-.02em;margin:0;font-size:clamp(1.35rem,2vw,1.6rem);font-weight:600;line-height:1.2}.school-app .ui-content .admin-page-head p,.school-app .ui-content .document-hero p{max-width:70ch;margin:0;font-size:.9rem;line-height:1.55;color:var(--ui-text-3)!important}.school-app .ui-content .admin-action-row,.school-app .ui-content .document-actions{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.school-app .ui-content .admin-action-row form{display:contents}.school-app .ui-content :is(.admin-card,.panel,.admin-form-panel,.settings-panel,.pupil-detail-card,.website-section-card){border:1px solid var(--ui-border);border-radius:var(--ui-radius-lg);background:var(--ui-surface);box-shadow:var(--ui-shadow-xs);transform:none}.school-app .ui-content .admin-card:hover{box-shadow:var(--ui-shadow-xs);border-color:var(--ui-border);transform:none}.school-app .ui-content .admin-card{padding:20px}.school-app .ui-content .admin-card.admin-table-panel{padding:0;overflow:hidden}:where(.school-app .ui-content .admin-card:not(.admin-table-panel))>:where(:not(.admin-card-head)),:where(.school-app :is(.ui-content,.slide-over) .panel)>:where(:not(.panel-head)){padding:0}.school-app .ui-content .panel{padding:20px}.school-app .ui-content :is(.admin-workspace,.admin-dashboard){gap:20px;width:100%;max-width:none;margin:0;padding:0}.school-app .ui-content :is(.admin-stat-grid,.admin-dashboard-stat-grid){box-shadow:none;background:0 0;border:0;margin:0;padding:0}.school-app .ui-content .admin-card-head,.school-app .ui-content .panel-head:not(.compact){background:0 0;border:0;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:10px 14px;margin:0 0 16px;padding:0;display:flex}.school-app .ui-content .admin-table-panel>.admin-card-head,.school-app .ui-content .admin-card.admin-table-panel>header{border-bottom:1px solid var(--ui-border);margin:0;padding:14px 20px}.school-app .ui-content .admin-card-head>div:not(.admin-section-title,.ui-legend){gap:2px;min-width:0;display:grid}.school-app .ui-content .admin-section-title{align-items:center;gap:12px;min-width:0;display:flex}.school-app .ui-content .admin-section-title>div{gap:2px;min-width:0;display:grid}.school-app .ui-content .admin-section-icon{border:1px solid var(--ui-border);background:var(--ui-surface-2);width:36px;height:36px;color:var(--ui-text-2);box-shadow:none;border-radius:10px;flex:none;place-items:center;display:grid}.school-app .ui-content .admin-section-icon svg{fill:none;stroke:currentColor;stroke-width:1.8px;stroke-linecap:round;stroke-linejoin:round;width:18px;height:18px}.school-app .ui-content .admin-module-strip{box-shadow:none;background:0 0;border:0;grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:12px;padding:0;display:grid}.school-app .ui-content .admin-module-link{border:1px solid var(--ui-border);border-radius:var(--ui-radius-lg);min-width:0;min-height:0;box-shadow:var(--ui-shadow-xs);color:var(--ui-text);align-items:center;gap:12px;padding:12px 14px;text-decoration:none;transition:border-color .15s,box-shadow .15s;display:flex;transform:none;background:var(--ui-surface)!important}.school-app .ui-content .admin-module-link:hover{border-color:var(--ui-border-strong);box-shadow:var(--ui-shadow-sm);transform:none}.school-app .ui-content .admin-module-icon{width:34px;height:34px;box-shadow:none;border-radius:9px;flex:none;place-items:center;display:grid;background:var(--ui-brand-soft)!important;color:var(--ui-brand)!important}.school-app .ui-content .admin-module-icon svg{fill:none;stroke:currentColor;stroke-width:1.8px;stroke-linecap:round;stroke-linejoin:round;width:17px;height:17px}.school-app .ui-content .admin-module-text{gap:1px;min-width:0;display:grid}.school-app .ui-content .admin-module-text strong{color:var(--ui-text);font-size:.875rem;font-weight:600}.school-app .ui-content .admin-module-text small{color:var(--ui-text-3);font-size:.78rem;font-weight:400}.school-app .ui-content .admin-finance-footer{background:0 0;border:0;grid-template-columns:repeat(auto-fit,minmax(120px,1fr));gap:10px;margin:0;padding:0;display:grid}.school-app .ui-content .admin-finance-footer>div{border:1px solid var(--ui-border);border-radius:var(--ui-radius);background:var(--ui-surface-2);min-width:0;box-shadow:none;gap:4px;padding:12px 14px;display:grid}.school-app .ui-content .admin-finance-footer span{color:var(--ui-text-3);letter-spacing:0;text-transform:none;font-size:.76rem;font-weight:500}.school-app .ui-content .admin-finance-footer strong{color:var(--ui-text);font-variant-numeric:tabular-nums;white-space:nowrap;font-size:1.1rem;font-weight:600}.school-app .ui-content .admin-card-head h3,.school-app .ui-content .panel-head h2,.school-app .ui-content .panel-head h3{color:var(--ui-text);letter-spacing:-.01em;margin:0;font-size:.98rem;font-weight:600;line-height:1.35}.school-app .ui-content .admin-card-meta{background:var(--ui-surface-3);min-height:22px;color:var(--ui-text-3);white-space:nowrap;border-radius:999px;align-items:center;padding:0 8px;font-size:.74rem;font-weight:500;display:inline-flex}.school-app .ui-content .admin-card-actions{flex-wrap:wrap;gap:8px;display:flex}.school-app .ui-content :is(.admin-card-link,.admin-card-head>a,.panel-head>a,.admin-card-head>div>a:not(.primary-action)){border:1px solid var(--ui-border);border-radius:var(--ui-radius);background:var(--ui-surface);min-height:30px;box-shadow:none;color:var(--ui-text-2);align-items:center;gap:4px;padding:0 10px;font-size:.8rem;font-weight:500;text-decoration:none;display:inline-flex;transform:none}.school-app .ui-content :is(.admin-card-link,.admin-card-head>a,.panel-head>a):hover{background:var(--ui-surface-2);color:var(--ui-text);box-shadow:none;transform:none}.school-app .ui-content :is(.admin-stat-grid,.admin-dashboard-stat-grid,.pupil-metric-grid,.register-summary-grid){grid-template-columns:repeat(auto-fit,minmax(190px,1fr));gap:12px;display:grid}.school-app .ui-content :is(.admin-stat-tile,.admin-metric-card,.dash-stat-card,.dashboard-stat-card){border:1px solid var(--ui-border);border-radius:var(--ui-radius-lg);min-height:0;box-shadow:var(--ui-shadow-xs);color:var(--ui-text);align-items:flex-start;gap:14px;padding:16px 18px;text-decoration:none;transition:border-color .15s,box-shadow .15s;display:flex;position:relative;transform:none;background:var(--ui-surface)!important}.school-app .ui-content :is(.admin-stat-tile,.dash-stat-card,.dashboard-stat-card){flex-direction:column;gap:4px}.school-app .ui-content :is(.admin-stat-tile,.admin-metric-card):before,.school-app .ui-content :is(.admin-stat-tile,.admin-metric-card):after{content:none;display:none}.school-app .ui-content a:is(.admin-metric-card,.admin-stat-tile):hover{border-color:var(--ui-border-strong);box-shadow:var(--ui-shadow-sm);transform:none}.school-app .ui-content .admin-stat-tile:hover{transform:none}.school-app .ui-content :is(.admin-stat-tile>span,.admin-metric-body>small,.dash-stat-label){color:var(--ui-text-3);letter-spacing:0;text-transform:none;font-size:.8rem;font-weight:500}.school-app .ui-content :is(.admin-stat-tile>strong,.admin-metric-body>strong,.dash-stat-value){color:var(--ui-text);letter-spacing:-.02em;font-variant-numeric:tabular-nums;overflow-wrap:normal;word-break:normal;font-size:clamp(1.3rem,1.7vw,1.55rem);font-weight:600;line-height:1.2}.school-app .ui-content :is(.admin-stat-tile>small,.admin-metric-hint,.dash-stat-hint){color:var(--ui-text-3);font-size:.78rem;font-weight:400;line-height:1.4}.school-app .ui-content .admin-metric-body{gap:3px;min-width:0;display:grid}.school-app .ui-content .admin-metric-icon{width:36px;height:36px;box-shadow:none;border:0;border-radius:10px;flex:none;place-items:center;display:grid;background:var(--ui-brand-soft)!important;color:var(--ui-brand)!important}.school-app .ui-content .admin-metric-icon svg{fill:none;stroke:currentColor;stroke-width:1.8px;stroke-linecap:round;stroke-linejoin:round;width:18px;height:18px}.school-app .ui-content .admin-metric-arrow{display:none}.school-app .ui-content .admin-metric-card--emerald .admin-metric-icon{background:var(--ui-success-bg)!important;color:var(--ui-success)!important}.school-app .ui-content .admin-metric-card--gold .admin-metric-icon,.school-app .ui-content .admin-metric-card--amber .admin-metric-icon{background:var(--ui-warning-bg)!important;color:var(--ui-warning)!important}.school-app .ui-content .admin-metric-card--cyan .admin-metric-icon,.school-app .ui-content .admin-metric-card--blue .admin-metric-icon{background:var(--ui-info-bg)!important;color:var(--ui-info)!important}.school-app .ui-content .admin-metric-card--rose .admin-metric-icon,.school-app .ui-content .admin-metric-card--red .admin-metric-icon{background:var(--ui-danger-bg)!important;color:var(--ui-danger)!important}.school-app .ui-content .admin-welcome-hero{color:#fff;grid-template-columns:minmax(0,1fr) minmax(240px,300px);align-items:center;gap:24px;min-height:0;display:grid;position:relative;overflow:hidden;border-radius:var(--ui-radius-xl)!important;background:var(--ui-brand)!important;box-shadow:var(--ui-shadow-sm)!important;background-image:radial-gradient(circle at 100% 0,#ffffff1a,#0000 42%),radial-gradient(circle at 0 100%,#ffffff0d,#0000 40%)!important;border:0!important;padding:24px 28px!important}.school-app .ui-content .admin-welcome-copy{gap:8px;min-width:0;display:grid}.school-app .ui-content .admin-welcome-greeting{font-size:.86rem;font-weight:500;color:#ffffffb3!important}.school-app .ui-content .admin-welcome-hero h2{letter-spacing:-.02em;margin:0;line-height:1.2;color:#fff!important;font-size:clamp(1.45rem,2.4vw,1.9rem)!important;font-weight:600!important}.school-app .ui-content .admin-welcome-hero p{max-width:62ch;margin:0;font-size:.9rem;font-weight:400;line-height:1.55;color:#ffffffbd!important}.school-app .ui-content .admin-welcome-chips{flex-wrap:wrap;gap:6px;margin-top:4px;display:flex}.school-app .ui-content .admin-chip{color:#ffffffeb;background:#ffffff14;border:1px solid #ffffff29;border-radius:999px;align-items:center;gap:6px;min-height:26px;padding:0 10px;font-size:.76rem;font-weight:500;display:inline-flex}.school-app .ui-content .admin-chip--warn{color:#fde68a;background:#fbbf2424;border-color:#fbbf2466}.school-app .ui-content .admin-chip--live{color:#bbf7d0;background:#4ade801f;border-color:#4ade8059}.school-app .ui-content .admin-chip--live:before,.school-app .ui-content .admin-chip--warn:before{content:"";background:currentColor;border-radius:99px;width:6px;height:6px}.school-app .ui-content .admin-welcome-highlight{border-radius:var(--ui-radius-lg);color:#fff;text-align:center;justify-items:center;gap:6px;min-height:0;padding:18px;display:grid;background:#ffffff0f!important;border:1px solid #ffffff1f!important}.school-app .ui-content .admin-welcome-highlight .section-kicker{color:#ffffff9e}.school-app .ui-content .admin-welcome-highlight>strong{color:#fff;font-size:2rem;font-weight:600;line-height:1.1}.school-app .ui-content .admin-welcome-highlight small{color:#ffffffb8;font-size:.8rem;line-height:1.4}.school-app .ui-content .admin-welcome-highlight a{border-radius:var(--ui-radius);color:#fff;background:#ffffff14;border:1px solid #fff3;align-items:center;min-height:32px;margin-top:4px;padding:0 12px;font-size:.8rem;font-weight:500;text-decoration:none;display:inline-flex}.school-app .ui-content .admin-welcome-highlight a:hover{background:#ffffff29}.school-app .ui-content .admin-collection-ring{width:96px;height:96px}.school-app .ui-content .admin-collection-ring strong{font-size:1.4rem;font-weight:600}.school-app .ui-content .admin-table{border-top:0}.school-app .ui-content .admin-table-head{border-bottom:1px solid var(--ui-border);background:var(--ui-surface-2);color:var(--ui-text-3);letter-spacing:.06em;border-radius:0;margin:0;padding:10px 20px;font-size:.7rem;font-weight:600}.school-app .ui-content :is(.admin-table article,.admin-record-row){border:0;border-bottom:1px solid var(--ui-border);border-radius:0;padding:12px 20px;font-size:.875rem;transition:background .1s;box-shadow:none!important;transform:none!important}.school-app .ui-content :is(.admin-table article,.admin-record-row):last-child{border-bottom:0}.school-app .ui-content .admin-record-row:hover{background:var(--ui-surface-2)}.school-app .ui-content .admin-record-row:hover strong{color:var(--ui-brand)}.school-app .ui-content :is(.admin-table article,.admin-record-row) strong{font-weight:500}.school-app .ui-content .account-ledger-body,.school-app .ui-content .admin-table-panel>.admin-table{padding:0}.school-app .ui-content .account-ledger-body .admin-table{border:0;border-radius:0;margin:0}.school-app .ui-content table{border-collapse:collapse;width:100%;font-size:.875rem}.school-app .ui-content table th{border-bottom:1px solid var(--ui-border);background:var(--ui-surface-2);color:var(--ui-text-3);letter-spacing:.06em;text-align:left;text-transform:uppercase;padding:10px 14px;font-size:.7rem;font-weight:600}.school-app .ui-content table td{border-bottom:1px solid var(--ui-border);color:var(--ui-text-2);padding:11px 14px}.school-app .ui-content table tbody tr:hover td{background:var(--ui-surface-2)}.school-app :is(.status-pill,.role-badge){border:1px solid var(--ui-border);background:var(--ui-surface-3);min-height:22px;color:var(--ui-text-2);white-space:nowrap;border-radius:999px;align-items:center;gap:5px;padding:0 8px;font-size:.74rem;font-weight:500;line-height:1;display:inline-flex}.school-app .status-pill:before{content:"";opacity:.8;background:currentColor;border-radius:99px;width:6px;height:6px}.school-app .status-pill:is(.paid,.approved,.active,.published,.present,.success){border-color:var(--ui-success-border);background:var(--ui-success-bg);color:var(--ui-success)}.school-app .status-pill:is(.partial,.pending,.draft,.late,.warning){border-color:var(--ui-warning-border);background:var(--ui-warning-bg);color:var(--ui-warning)}.school-app .status-pill:is(.unpaid,.rejected,.overdue,.absent,.inactive,.danger){border-color:var(--ui-danger-border);background:var(--ui-danger-bg);color:var(--ui-danger)}.school-app .role-badge{border-color:var(--ui-brand-tint);background:var(--ui-brand-soft);color:var(--ui-brand)}.school-app .ui-content :is(.empty-state,.admin-feed-empty){border:1px dashed var(--ui-border-strong);border-radius:var(--ui-radius);background:var(--ui-surface-2);color:var(--ui-text-3);text-align:center;place-items:center;gap:6px;margin:0;padding:28px 16px;font-size:.86rem;font-weight:400;display:grid}.school-app .ui-content .admin-table .empty-state{margin:16px 20px}.school-app :is(.ui-content,.slide-over) :is(input:not([type=checkbox],[type=radio],[type=color],[type=file],[type=range],[type=hidden]),select,textarea){border:1px solid var(--ui-border-strong);border-radius:var(--ui-radius);background-color:var(--ui-surface);width:100%;min-height:38px;box-shadow:var(--ui-shadow-xs);color:var(--ui-text);font:400 .875rem var(--font-sans);padding:0 11px;transition:border-color .12s,box-shadow .12s}.school-app :is(.ui-content,.slide-over) textarea{min-height:96px;padding:9px 11px;line-height:1.5}.school-app :is(.ui-content,.slide-over) select{padding-right:32px}.school-app :is(.ui-content,.slide-over) :is(input,select,textarea)::placeholder{color:#9aa1b8}.school-app :is(.ui-content,.slide-over) :is(input,select,textarea):hover{border-color:#b9c0d1}.school-app :is(.ui-content,.slide-over) :is(input,select,textarea):focus{border-color:var(--ui-brand);box-shadow:0 0 0 3px var(--ui-brand-ring);outline:none}.school-app :is(.ui-content,.slide-over) :is(input[type=checkbox],input[type=radio]){width:16px;height:16px;accent-color:var(--ui-brand)}.school-app :is(.ui-content,.slide-over) :is(.form-grid,.field-stack) label,.school-app :is(.ui-content,.slide-over) label>span:first-child:not(.check-line span){color:var(--ui-text-2);font-size:.8rem;font-weight:500}.school-app :is(.ui-content,.slide-over) .form-grid{gap:14px}.school-app :is(.ui-content,.slide-over) .field-stack{gap:6px}.school-app :is(.ui-content,.slide-over) .check-line{color:var(--ui-text-2);align-items:center;gap:8px;font-size:.86rem;font-weight:500;display:inline-flex}.school-app .ui-content .profile-filter-bar{border:0;border-bottom:1px solid var(--ui-border);background:var(--ui-surface);box-shadow:none;border-radius:0;flex-wrap:wrap;align-items:center;gap:8px;padding:12px 20px;display:flex!important}.school-app .ui-content .profile-filter-bar>:is(input,select){flex:160px;width:auto}.school-app .ui-content .profile-filter-bar>input[type=search]{flex:3 260px}.school-app .ui-content .profile-filter-bar>input[type=date]{flex:150px}.school-app .ui-content .profile-filter-bar>button{flex:none;width:auto!important}.school-app .ui-content .profile-filter-bar label{flex:160px;gap:5px;display:grid}.school-app .ui-content .admin-card:not(.admin-table-panel)>.profile-filter-bar{border:0;margin:0;padding:0}.school-app .ui-content .profile-pagination{border-top:1px solid var(--ui-border);color:var(--ui-text-3);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:10px;padding:12px 20px;font-size:.82rem;display:flex}.school-app .ui-content .profile-pagination a,.school-app .ui-content .profile-pagination span[aria-disabled]{border:1px solid var(--ui-border);border-radius:var(--ui-radius);background:var(--ui-surface);min-height:32px;color:var(--ui-text-2);align-items:center;padding:0 12px;font-size:.82rem;font-weight:500;text-decoration:none;display:inline-flex}.school-app .ui-content :is(.admin-tabs,.dash-tabs,.pupil-section-tabs,.tab-list,.settings-tabs){border-radius:10px;flex-wrap:wrap;justify-self:start;gap:2px;padding:3px;border:1px solid var(--ui-border)!important;background:var(--ui-surface-3)!important;box-shadow:none!important;display:inline-flex!important}.school-app .ui-content :is(.admin-tabs a,.dash-tabs a,.pupil-section-tabs a,.tab-list label,.settings-tabs a){white-space:nowrap;cursor:pointer;border-radius:7px;align-items:center;gap:6px;min-height:32px;padding:0 12px;font-size:.84rem;font-weight:500;text-decoration:none;display:inline-flex;box-shadow:none!important;color:var(--ui-text-2)!important;background:0 0!important;border:1px solid #0000!important;transform:none!important}.school-app .ui-content :is(.admin-tabs a,.dash-tabs a,.pupil-section-tabs a,.tab-list label,.settings-tabs a):hover{color:var(--ui-text)!important;background:#fff9!important}.school-app .ui-content :is(.admin-tabs a.active,.dash-tabs a.active,.pupil-section-tabs a.active,.settings-tabs a.active),.school-app .ui-content :is(#tab-school:checked~.tab-list label[for=tab-school],#tab-brand:checked~.tab-list label[for=tab-brand],#tab-gateways:checked~.tab-list label[for=tab-gateways],#tab-security:checked~.tab-list label[for=tab-security]){font-weight:600;border-color:var(--ui-border)!important;background:var(--ui-surface)!important;box-shadow:var(--ui-shadow-xs)!important;color:var(--ui-text)!important}.school-app .ui-content :is(.admin-tabs,.dash-tabs,.pupil-section-tabs,.settings-tabs) a.active *{color:inherit!important}.school-app .ui-content :is(.admin-tabs,.dash-tabs,.pupil-section-tabs,.settings-tabs) a strong{border-radius:99px;place-items:center;min-width:20px;height:18px;padding:0 5px;font-size:.7rem;font-weight:600;display:inline-grid;background:var(--ui-border)!important;color:var(--ui-text-2)!important;border:0!important}.school-app .ui-content .admin-feed{gap:0;display:grid}.school-app .ui-content .admin-feed-item{border:0;border-bottom:1px solid var(--ui-border);box-shadow:none;background:0 0;border-radius:0;align-items:flex-start;gap:12px;padding:12px 0;display:flex}.school-app .ui-content .admin-feed-item:last-child{border-bottom:0;padding-bottom:0}.school-app .ui-content .admin-feed-item:first-child{padding-top:0}.school-app .ui-content .admin-feed-marker{background:var(--ui-brand);width:8px;height:8px;box-shadow:0 0 0 3px var(--ui-brand-soft);border-radius:99px;flex:none;margin-top:7px}.school-app .ui-content .admin-feed-item strong{color:var(--ui-text);font-size:.875rem;font-weight:600}.school-app .ui-content .admin-feed-item :is(p,span,small){color:var(--ui-text-3);font-size:.82rem;font-weight:400}.school-app .ui-content .admin-contact-grid{grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:12px;display:grid}.school-app .ui-content .admin-contact-card{border:1px solid var(--ui-border);border-radius:var(--ui-radius-lg);background:var(--ui-surface);min-width:0;box-shadow:var(--ui-shadow-xs);color:var(--ui-text);align-items:center;gap:12px;padding:14px 16px;text-decoration:none;display:flex;transform:none}.school-app .ui-content a.admin-contact-card:hover{border-color:var(--ui-border-strong);box-shadow:var(--ui-shadow-sm)}.school-app .ui-content .admin-contact-icon{background:var(--ui-brand-soft);width:36px;height:36px;color:var(--ui-brand);border-radius:10px;flex:none;place-items:center;display:grid}.school-app .ui-content .admin-contact-icon svg{fill:none;stroke:currentColor;stroke-width:1.8px;stroke-linecap:round;stroke-linejoin:round;width:18px;height:18px}.school-app .ui-content .admin-contact-copy{gap:1px;min-width:0;display:grid}.school-app .ui-content .admin-contact-copy>:first-child{color:var(--ui-text-3);letter-spacing:0;text-transform:none;font-size:.74rem;font-weight:500}.school-app .ui-content .admin-contact-copy :is(strong,b){color:var(--ui-text);text-overflow:clip;white-space:normal;font-size:.875rem;font-weight:600;line-height:1.35;overflow:visible}.school-app .ui-content .detail-list{gap:0;display:grid}.school-app .ui-content .detail-list>div{border-bottom:1px solid var(--ui-border);justify-content:space-between;gap:16px;padding:10px 0;display:flex}.school-app .ui-content .detail-list>div:last-child{border-bottom:0}.school-app .ui-content .detail-list :is(dt,span:first-child){color:var(--ui-text-3);font-size:.84rem}.school-app .ui-content .detail-list :is(dd,strong){color:var(--ui-text);text-align:right;margin:0;font-size:.875rem;font-weight:500}.school-app .ui-content .copy-chip{border:1px solid var(--ui-border);border-radius:var(--ui-radius-sm);background:var(--ui-surface-2);min-height:26px;box-shadow:none;color:var(--ui-text-2);font:500 .78rem var(--font-sans);padding:0 9px}.school-app .slide-over-backdrop{-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);background:#1016316b}.school-app .slide-over-panel{background:var(--ui-surface);box-shadow:-24px 0 60px -12px #1016314d}.school-app .slide-over-head{border-bottom:1px solid var(--ui-border);background:var(--ui-surface);padding:18px 22px}.school-app .slide-over-head h3{color:var(--ui-text);font-size:1.05rem;font-weight:600}.school-app .slide-over-head p{color:var(--ui-text-3);margin-top:2px;font-size:.84rem}.school-app .slide-over-close{border:1px solid var(--ui-border);border-radius:var(--ui-radius);background:var(--ui-surface);width:34px;height:34px;min-height:34px;box-shadow:none;color:var(--ui-text-2);padding:0;font-size:1.3rem}.school-app .slide-over-close:hover{background:var(--ui-surface-3);color:var(--ui-text);box-shadow:none;transform:none}.school-app .slide-over-content{padding:22px}.school-app .slide-over-content .admin-card,.school-app .slide-over-content .admin-form-panel{box-shadow:none;background:0 0;border:0;padding:0}.school-app .ui-content .admin-quick-grid,.school-app .ui-content .admin-shortcut-grid{grid-template-columns:repeat(auto-fit,minmax(170px,1fr));gap:12px;display:grid}.school-app .ui-content .guardian-dashboard-children-grid{grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:10px;display:grid}.school-app .ui-content .guardian-child-card{border:1px solid var(--ui-border);border-radius:var(--ui-radius-lg);background:var(--ui-surface);min-width:0;box-shadow:none;color:var(--ui-text);align-items:center;gap:12px;padding:12px 14px;text-decoration:none;display:flex;transform:none}.school-app .ui-content .guardian-child-card:hover{border-color:var(--ui-border-strong);background:var(--ui-surface-2);transform:none}.school-app .ui-content .guardian-child-avatar{background:var(--ui-brand-tint);width:40px;height:40px;color:var(--ui-brand);border-radius:999px;flex:none;place-items:center;padding:0;font-size:.95rem;font-weight:600;line-height:1;display:grid}.school-app .ui-content .guardian-child-card>div{gap:1px;min-width:0;display:grid}.school-app .ui-content .guardian-child-card strong{color:var(--ui-text);font-size:.9rem;font-weight:600}.school-app .ui-content .guardian-child-card span{color:var(--ui-text-2);font-size:.8rem}.school-app .ui-content .guardian-child-card small{color:var(--ui-text-3);font:500 .75rem var(--font-sans);letter-spacing:.02em}.school-app .ui-content .ui-profile-head{gap:14px;display:grid}.ui-back-link{color:var(--ui-text-3);justify-self:start;align-items:center;gap:4px;font-size:.82rem;font-weight:500;text-decoration:none;display:inline-flex}.ui-back-link:hover{color:var(--ui-text)}.ui-back-link .ui-back-icon{transform:rotate(180deg)}.ui-profile-main{flex-wrap:wrap;align-items:center;gap:16px 20px;display:flex}.ui-profile-avatar{background:var(--ui-brand);color:#fff;letter-spacing:.02em;border-radius:16px;flex:none;place-items:center;width:60px;height:60px;font-size:1.2rem;font-weight:600;display:grid}.ui-profile-copy{flex:360px;gap:6px;min-width:0;display:grid}.ui-profile-title{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.school-app .ui-content .ui-profile-title h2{color:var(--ui-text);letter-spacing:-.02em;margin:0;font-size:clamp(1.35rem,2vw,1.65rem);font-weight:600;line-height:1.2}.ui-profile-meta{flex-wrap:wrap;gap:6px 18px;margin:0;padding:0;list-style:none;display:flex}.ui-profile-meta li{color:var(--ui-text-3);align-items:center;gap:6px;font-size:.84rem;display:inline-flex}.ui-profile-meta .ui-icon{color:#9aa1b8}.ui-profile-actions{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.school-app .ui-content .secondary-action.is-current{border-color:var(--ui-brand);color:var(--ui-brand)}.school-app .ui-content .ui-profile-layout{grid-template-columns:minmax(0,1fr) minmax(280px,340px);align-items:start;gap:20px;display:grid}.school-app .ui-content .ui-profile-col{gap:20px;min-width:0;display:grid}.school-app .ui-content .ui-definition-grid{grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:18px 24px;margin:0;display:grid}.ui-definition-grid>div{align-content:start;gap:3px;min-width:0;display:grid}.ui-definition-grid>div.is-wide{grid-column:1/-1}.ui-definition-grid dt{color:var(--ui-text-3);font-size:.78rem;font-weight:500}.ui-definition-grid dd{overflow-wrap:anywhere;color:var(--ui-text);margin:0;font-size:.9rem;font-weight:500}.ui-chip-list{flex-wrap:wrap;gap:6px;display:flex}.school-app .ui-content .ui-subsection{border-top:1px solid var(--ui-border);margin-top:20px;padding-top:16px}.school-app .ui-content .ui-subsection h4{color:var(--ui-text-3);letter-spacing:.06em;text-transform:uppercase;margin:0 0 12px;font-size:.74rem;font-weight:600}.ui-timeline-item{gap:12px;padding-bottom:14px;display:flex;position:relative}.ui-timeline-item:not(:last-child):before{content:"";background:var(--ui-border);width:1px;position:absolute;top:14px;bottom:0;left:4px}.ui-timeline-dot{background:var(--ui-brand);width:9px;height:9px;box-shadow:0 0 0 3px var(--ui-brand-soft);border-radius:99px;flex:none;margin-top:5px}.ui-timeline-item>div{gap:1px;display:grid}.school-app .ui-content .ui-timeline-item strong{font-size:.875rem}.ui-timeline-item span{color:var(--ui-text-2);font-size:.84rem}.ui-timeline-item small{color:var(--ui-text-3);font-size:.76rem}.school-app .ui-content .ui-side-card{gap:8px;display:grid}.school-app .ui-content a.ui-side-card{color:var(--ui-text);gap:8px;text-decoration:none;transition:border-color .15s,box-shadow .15s;display:grid}.school-app .ui-content a.ui-side-card:hover{border-color:var(--ui-border-strong);box-shadow:var(--ui-shadow-sm)}.school-app .ui-content .ui-side-figure{color:var(--ui-text);letter-spacing:-.02em;font-variant-numeric:tabular-nums;font-size:1.6rem;font-weight:600}.school-app .ui-content .ui-side-figure.is-due{color:var(--ui-danger)}.ui-side-card small{color:var(--ui-text-3);font-size:.8rem}.ui-side-link{color:var(--ui-brand);align-items:center;gap:6px;margin-top:4px;font-size:.84rem;font-weight:500;display:inline-flex}.ui-person-list{gap:4px;display:grid}.ui-person{border-radius:var(--ui-radius);color:var(--ui-text);align-items:center;gap:10px;margin:0 -8px;padding:8px;text-decoration:none;display:flex}.ui-person:hover{background:var(--ui-surface-2)}.ui-person>span:not(.ui-avatar,.ui-person-amount,.ui-select-icon,.status-pill){min-width:0;display:grid}.school-app .ui-content .ui-person strong{font-size:.875rem;font-weight:600}.ui-person small{color:var(--ui-text-3);text-overflow:ellipsis;white-space:nowrap;font-size:.78rem;overflow:hidden}.ui-count-list{display:grid}.ui-count-list a{border-radius:var(--ui-radius);color:var(--ui-text-2);align-items:center;gap:10px;margin:0 -8px;padding:9px 8px;font-size:.86rem;text-decoration:none;display:flex}.ui-count-list a:hover{background:var(--ui-surface-2);color:var(--ui-text)}.ui-count-list .ui-icon{color:var(--ui-text-3)}.ui-count-list span{flex:1}.school-app .ui-content .ui-count-list strong{background:var(--ui-surface-3);min-width:28px;color:var(--ui-text);text-align:center;border-radius:99px;padding:1px 8px;font-size:.78rem;font-weight:600}@media (width<=1100px){.school-app .ui-content .ui-profile-layout{grid-template-columns:1fr}}.school-app .ui-content .ui-form-sheet{border:1px solid var(--ui-border);border-radius:var(--ui-radius-lg);background:var(--ui-surface);box-shadow:var(--ui-shadow-xs);display:grid}.ui-form-section{border-bottom:1px solid var(--ui-border);grid-template-columns:minmax(200px,280px) minmax(0,1fr);gap:16px 32px;padding:24px;display:grid}.school-app .ui-content .ui-form-section h3{margin:0 0 4px;font-size:.95rem;font-weight:600}.ui-form-section header p{color:var(--ui-text-3);margin:0;font-size:.84rem;line-height:1.5}.ui-form-fields{grid-template-columns:repeat(2,minmax(0,1fr));align-items:start;gap:16px;display:grid}.ui-form-fields>.ui-field--wide,.ui-form-fields>.class-subject-preview{grid-column:1/-1}.ui-field>span em{color:var(--ui-text-3);font-size:.76rem;font-style:normal;font-weight:400}.ui-field>span em:before{content:"· "}.school-app .ui-content .ui-field select[multiple]{min-height:132px;padding:6px}.ui-permission-grid{border:1px solid var(--ui-border);border-radius:var(--ui-radius);grid-template-columns:repeat(auto-fill,minmax(190px,1fr));gap:10px;margin:0;padding:14px;display:grid}.ui-permission-grid legend{color:var(--ui-text-2);padding:0 6px;font-size:.8rem;font-weight:500}.ui-form-footer{border-radius:0 0 var(--ui-radius-lg) var(--ui-radius-lg);background:var(--ui-surface-2);justify-content:flex-end;gap:8px;padding:14px 24px;display:flex;position:sticky;bottom:0}@supports (color:color-mix(in lab, red, red)){.ui-form-footer{background:color-mix(in srgb, var(--ui-surface-2) 92%, transparent)}}.ui-form-footer{-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px)}.school-app .ui-content .ui-danger-zone{border:1px solid var(--ui-danger-border);border-radius:var(--ui-radius-lg);background:var(--ui-surface);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:16px 32px;padding:20px 24px;display:flex}.school-app .ui-content .ui-danger-zone h3{color:var(--ui-danger);margin:0 0 4px;font-size:1rem;font-weight:600}.ui-danger-zone p{max-width:70ch;color:var(--ui-text-2);margin:0;font-size:.88rem;line-height:1.55}.ui-danger-zone a:not([class]){color:var(--ui-brand)}.ui-danger-actions{gap:8px;display:flex}@media (width<=900px){.ui-form-section{grid-template-columns:1fr;padding:18px}}@media (width<=640px){.ui-form-fields{grid-template-columns:1fr}.ui-form-footer{padding:12px 16px}.ui-form-footer>*{flex:1}}.school-app .ui-content .ui-dash-head{flex-wrap:wrap;justify-content:space-between;align-items:flex-end;gap:16px 24px;display:flex}.ui-dash-head>div:first-child{gap:4px;display:grid}.school-app .ui-content .ui-dash-head h2{color:var(--ui-text);letter-spacing:-.02em;margin:0;font-size:clamp(1.4rem,2.2vw,1.75rem);font-weight:600}.ui-dash-head p{color:var(--ui-text-3);margin:0;font-size:.92rem}.school-app .ui-content .ui-kpi-grid{grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:12px;display:grid}.school-app .ui-content .ui-kpi{border:1px solid var(--ui-border);border-radius:var(--ui-radius-lg);background:var(--ui-surface);box-shadow:var(--ui-shadow-xs);color:var(--ui-text);grid-template-columns:auto 1fr;align-items:center;gap:2px 12px;padding:16px 18px;text-decoration:none;transition:border-color .15s,box-shadow .15s;display:grid}.school-app .ui-content .ui-kpi:hover{border-color:var(--ui-border-strong);box-shadow:var(--ui-shadow-sm)}.ui-kpi-icon{background:var(--ui-brand-soft);width:36px;height:36px;color:var(--ui-brand);border-radius:10px;grid-row:span 3;align-self:start;place-items:center;display:grid}.ui-kpi-icon--danger{background:var(--ui-danger-bg);color:var(--ui-danger)}.ui-kpi-label{color:var(--ui-text-3);font-size:.8rem;font-weight:500}.school-app .ui-content .ui-kpi strong{color:var(--ui-text);letter-spacing:-.02em;font-variant-numeric:tabular-nums;text-overflow:ellipsis;white-space:nowrap;font-size:1.35rem;font-weight:600;overflow:hidden}.ui-kpi small{color:var(--ui-text-3);text-overflow:ellipsis;white-space:nowrap;font-size:.76rem;overflow:hidden}.school-app .ui-content .ui-dash-grid{grid-template-columns:minmax(0,1fr) minmax(300px,360px);align-items:start;gap:20px;display:grid}.ui-attention-list{gap:8px;display:grid}.ui-attention-item{border:1px solid var(--ui-border);border-radius:var(--ui-radius);color:var(--ui-text);align-items:center;gap:12px;padding:12px 14px;text-decoration:none;transition:border-color .12s,background .12s;display:flex}.ui-attention-item:hover{border-color:var(--ui-border-strong);background:var(--ui-surface-2)}.ui-attention-icon{background:var(--ui-info-bg);width:34px;height:34px;color:var(--ui-info);border-radius:9px;flex:none;place-items:center;display:grid}.ui-attention-item--warning .ui-attention-icon{background:var(--ui-warning-bg);color:var(--ui-warning)}.ui-attention-item--danger .ui-attention-icon{background:var(--ui-danger-bg);color:var(--ui-danger)}.ui-attention-copy{flex:1;gap:1px;min-width:0;display:grid}.school-app .ui-content .ui-attention-copy strong{font-size:.88rem;font-weight:600}.ui-attention-copy small{color:var(--ui-text-3);font-size:.8rem}.ui-attention-go{color:var(--ui-text-3)}.ui-all-clear{border-radius:var(--ui-radius);background:var(--ui-success-bg);color:var(--ui-success);align-items:center;gap:10px;padding:14px 16px;font-size:.88rem;display:flex}.ui-collection{grid-template-columns:minmax(220px,1fr) minmax(0,1.4fr);align-items:end;gap:24px;display:grid}.ui-collection-figures{gap:10px;display:grid}.ui-collection-rate{align-items:baseline;gap:8px;display:flex}.school-app .ui-content .ui-collection-rate strong{letter-spacing:-.03em;font-size:2rem;font-weight:600;line-height:1}.ui-collection-rate span{color:var(--ui-text-3);font-size:.84rem}.ui-collection dl{grid-template-columns:1fr 1fr;gap:10px 16px;margin:6px 0 0;display:grid}.ui-collection dl>div{gap:1px;display:grid}.ui-collection dt{color:var(--ui-text-3);font-size:.76rem}.ui-collection dd{color:var(--ui-text);font-variant-numeric:tabular-nums;margin:0;font-size:.92rem;font-weight:600}.ui-bar-chart{grid-template-columns:repeat(6,1fr);align-items:end;gap:10px;height:170px;padding-top:18px;display:grid}.ui-bar{grid-template-rows:auto 1fr auto;justify-items:center;gap:4px;height:100%;display:grid}.ui-bar-value{min-height:14px;color:var(--ui-text-3);font-variant-numeric:tabular-nums;text-overflow:ellipsis;white-space:nowrap;max-width:100%;font-size:.64rem;overflow:hidden}.ui-bar-track{background:var(--ui-surface-3);border-radius:6px 6px 2px 2px;width:100%;max-width:44px;height:100%;position:relative}.ui-bar-track>span{border-radius:inherit;background:var(--ui-brand);position:absolute;inset:auto 0 0}@supports (color:color-mix(in lab, red, red)){.ui-bar-track>span{background:color-mix(in srgb, var(--ui-brand) 55%, #fff)}}.ui-bar.is-current .ui-bar-track>span{background:var(--ui-brand)}.ui-bar-label{color:var(--ui-text-3);font-size:.74rem;font-weight:500}.ui-bar.is-current .ui-bar-label{color:var(--ui-text);font-weight:600}.ui-checklist{gap:2px;margin:12px 0 0;padding:0;list-style:none;display:grid}.ui-checklist li{align-items:center;gap:10px;padding:7px 0;font-size:.86rem;display:flex}.ui-checklist a{color:var(--ui-text);font-weight:500;text-decoration:none}.ui-checklist a:hover{color:var(--ui-brand);text-underline-offset:2px;text-decoration:underline}.ui-checklist li.is-done span:last-child{color:var(--ui-text-3);text-decoration:line-through}.ui-check-mark{border:1.5px solid var(--ui-border-strong);color:#fff;border-radius:99px;flex:none;place-items:center;width:18px;height:18px;display:grid}.ui-checklist li.is-done .ui-check-mark{border-color:var(--ui-success);background:var(--ui-success)}.ui-agenda{gap:4px;display:grid}.ui-agenda-item{align-items:center;gap:12px;padding:6px 0;display:flex}.ui-agenda-date{border:1px solid var(--ui-border);border-radius:var(--ui-radius);flex:none;justify-items:center;width:44px;padding:5px 0;line-height:1.1;display:grid}.school-app .ui-content .ui-agenda-date strong{font-size:1rem;font-weight:600}.ui-agenda-date small{color:var(--ui-text-3);text-transform:uppercase;font-size:.66rem;font-weight:600}.ui-agenda-item--holiday .ui-agenda-date{border-color:var(--ui-warning-border);background:var(--ui-warning-bg);color:var(--ui-warning)}.ui-agenda-item--finance .ui-agenda-date{border-color:var(--ui-danger-border);background:var(--ui-danger-bg);color:var(--ui-danger)}.ui-agenda-item--session .ui-agenda-date{border-color:var(--ui-info-border);background:var(--ui-info-bg);color:var(--ui-info)}.ui-agenda-copy{gap:1px;min-width:0;display:grid}.school-app .ui-content .ui-agenda-copy strong{text-overflow:ellipsis;white-space:nowrap;font-size:.86rem;font-weight:600;overflow:hidden}.ui-agenda-copy small{color:var(--ui-text-3);font-size:.76rem}.ui-notice-list{display:grid}.ui-notice{border-bottom:1px solid var(--ui-border);gap:4px;padding:12px 0;display:grid}.ui-notice:first-child{padding-top:0}.ui-notice:last-child{border-bottom:0;padding-bottom:0}.ui-notice-meta{color:var(--ui-text-3);flex-wrap:wrap;align-items:center;gap:6px;font-size:.74rem;display:flex}.school-app .ui-content .ui-notice strong{font-size:.88rem;font-weight:600}.ui-notice p{color:var(--ui-text-2);margin:0;font-size:.82rem;line-height:1.5}@media (width<=1180px){.school-app .ui-content .ui-dash-grid{grid-template-columns:1fr}}@media (width<=760px){.ui-collection{grid-template-columns:1fr}.ui-bar-chart{height:140px}}@media (width<=640px){.school-app .ui-content .ui-kpi-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.school-app .ui-content .ui-kpi{grid-template-columns:1fr;padding:14px}.ui-kpi-icon{grid-row:auto;margin-bottom:6px}.school-app .ui-content .ui-kpi:last-child:nth-child(odd){grid-column:1/-1}.school-app .ui-content .ui-kpi strong{font-size:1.1rem}.ui-dash-head .admin-action-row{width:100%}.ui-dash-head .admin-action-row>*{flex:auto}}.school-app .ui-content .ui-up-next{border-radius:var(--ui-radius-xl);background:var(--ui-brand);box-shadow:var(--ui-shadow-sm);color:#fff;background-image:radial-gradient(circle at 100% 0,#ffffff1f,#0000 45%);flex-wrap:wrap;align-items:center;gap:14px 18px;padding:18px 22px;text-decoration:none;display:flex}.ui-up-next-icon{background:#ffffff1f;border-radius:12px;flex:none;place-items:center;width:46px;height:46px;display:grid}.ui-up-next-copy{flex:260px;gap:2px;min-width:0;display:grid}.ui-up-next .ui-eyebrow{color:#ffffffa6}.school-app .ui-content .ui-up-next-copy strong{color:#fff;font-size:1.1rem;font-weight:600}.ui-up-next-copy small{color:#ffffffc7;font-size:.86rem}.ui-up-next-copy small .is-danger{color:#fecaca;font-weight:600}.ui-up-next-copy small .is-warning{color:#fde68a;font-weight:600}.ui-up-next--clear{background:var(--ui-success)}.school-app .ui-content .ui-button--light{color:var(--ui-brand);background:#fff;border-color:#ffffff4d}.school-app .ui-content .ui-up-next:hover .ui-button--light{background:#ffffffe6}.ui-trend.is-up{color:var(--ui-success);font-weight:600}.ui-trend.is-down{color:var(--ui-danger);font-weight:600}.ui-select-copy small .is-danger{color:var(--ui-danger);font-weight:500}.ui-select-copy small .is-warning{color:var(--ui-warning);font-weight:500}.ui-select-icon.is-danger{background:var(--ui-danger-bg);color:var(--ui-danger)}.ui-select-item.is-muted .ui-select-icon{background:var(--ui-success-bg);color:var(--ui-success)}.ui-select-item.is-muted .ui-select-copy strong{color:var(--ui-text-2)}.ui-result-list{gap:2px;padding:10px 20px;display:grid}.ui-result{border-bottom:1px solid var(--ui-border);grid-template-columns:minmax(120px,1.2fr) minmax(80px,2fr) 42px minmax(64px,auto);align-items:center;gap:14px;padding:8px 0;display:grid}.ui-result:last-child{border-bottom:0}.ui-result-subject{color:var(--ui-text);text-overflow:ellipsis;white-space:nowrap;font-size:.875rem;font-weight:500;overflow:hidden}.school-app .ui-content .ui-result strong{color:var(--ui-text);text-align:right;font-variant-numeric:tabular-nums;font-size:.9rem;font-weight:600}.ui-result-grade{color:var(--ui-text-3);font-size:.8rem}.ui-attendance-dots{flex-wrap:wrap;gap:5px;margin:2px 0;display:flex}.ui-dot{background:var(--ui-surface-3);border-radius:4px;width:14px;height:14px}.ui-dot--present{background:var(--ui-success)}.ui-dot--late{background:#f0b14a}.ui-dot--excused{background:#8fb2ee}.ui-dot--absent{background:var(--ui-danger)}@media (width<=640px){.ui-result{grid-template-columns:minmax(0,1fr) auto auto}.ui-result .ui-progress{grid-area:2/1/auto/-1}.ui-up-next .ui-button--light{width:100%}}.school-app .ui-content .ui-button--sm{min-height:30px;padding:0 12px;font-size:.8rem}.ui-line-items{margin:0;display:grid}.ui-line-items>div{border-bottom:1px solid var(--ui-border);justify-content:space-between;gap:12px;padding:8px 0;font-size:.86rem;display:flex}.ui-line-items dt{color:var(--ui-text-2)}.ui-line-items dd{color:var(--ui-text);font-variant-numeric:tabular-nums;margin:0;font-weight:500}.ui-line-items>.is-total{border-bottom:0;font-weight:600}.ui-line-items>.is-total dt,.ui-line-items>.is-total dd{color:var(--ui-text);font-weight:600}.ui-callout{border-radius:var(--ui-radius);background:var(--ui-surface-2);color:var(--ui-text-2);margin:14px 0 0;padding:10px 12px;font-size:.84rem;line-height:1.5}.school-app .ui-content .ui-score-card{background:var(--ui-success-bg);border-color:var(--ui-success-border);gap:8px;display:grid}.school-app .ui-content .ui-score-card>strong{color:var(--ui-text);letter-spacing:-.02em;font-size:2rem;font-weight:600;line-height:1.1}.ui-score-card>strong small{color:var(--ui-text-3);font-size:1rem;font-weight:500}.ui-score-card>small{color:var(--ui-text-2);font-size:.8rem}.school-app .ui-content .ui-legend{color:var(--ui-text-3);flex-wrap:wrap;gap:6px 14px;font-size:.76rem;display:flex}.ui-legend span{align-items:center;gap:6px;display:inline-flex}.ui-legend .ui-dot{border-radius:3px;width:10px;height:10px}.ui-month-strips{gap:12px;display:grid}.ui-month-strip{grid-template-columns:120px minmax(0,1fr);align-items:center;gap:12px;display:grid}.ui-month-strip>span{color:var(--ui-text-2);font-size:.82rem;font-weight:500}.ui-subject-chip{border:1px solid var(--ui-border);background:var(--ui-surface-2);min-height:30px;color:var(--ui-text);border-radius:99px;align-items:center;gap:6px;padding:0 12px;font-size:.84rem;font-weight:500;display:inline-flex}.ui-subject-chip small{color:var(--ui-text-3);font-size:.72rem}.ui-new-badge{border-color:var(--ui-success-border);background:var(--ui-success-bg);color:var(--ui-success);margin-left:6px}.ui-profile-meta li.danger-text,.ui-profile-meta li.danger-text .ui-icon{color:var(--ui-danger)}.school-app .ui-content .ui-profile-col .pupil-file-grid{grid-template-columns:repeat(auto-fill,minmax(220px,1fr))}@media (width<=640px){.ui-month-strip{grid-template-columns:1fr;gap:6px}}.school-app :is(.ui-content,.slide-over) .field-stack>small.muted-copy{margin-left:4px;font-size:.76rem;font-weight:400;display:inline}.school-app .ui-content .work-rich-text>:first-child{margin-top:0}.school-app .ui-content .work-rich-text>:last-child{margin-bottom:0}.ui-progress-cell{align-items:center;gap:10px;min-width:140px;display:flex}.ui-progress-cell .ui-progress{flex:1;height:6px}.ui-progress-cell>span:last-child{color:var(--ui-text-2);font-variant-numeric:tabular-nums;white-space:nowrap;font-size:.8rem}.ui-of{color:var(--ui-text-3);letter-spacing:0;font-size:.55em;font-weight:500}.school-app .status-pill.late{border-color:var(--ui-warning-border);background:var(--ui-warning-bg);color:var(--ui-warning);margin-left:4px}.school-app .ui-content .ui-table tr.is-clickable{cursor:pointer}.ui-field-hint{color:var(--ui-text-3);font-size:.76rem}.ui-field--editor{gap:8px}.school-app .ui-content textarea.ui-rich-editor{min-height:240px}.school-app .ui-content .tox-tinymce{border:1px solid var(--ui-border-strong);border-radius:var(--ui-radius);box-shadow:var(--ui-shadow-xs)}.school-app .ui-content .tox .tox-toolbar__primary{background:var(--ui-surface-2);border-bottom:1px solid var(--ui-border)}.ui-quick-chips{flex-wrap:wrap;gap:6px;margin-top:4px;display:flex}.school-app .ui-content .ui-quick-chips button{border:1px solid var(--ui-border);background:var(--ui-surface);min-height:26px;box-shadow:none;color:var(--ui-text-2);font:500 .76rem var(--font-sans);cursor:pointer;border-radius:99px;padding:0 10px}.school-app .ui-content .ui-quick-chips button:hover{border-color:var(--ui-brand);background:var(--ui-brand-soft);color:var(--ui-brand);transform:none}.ui-choice-group{flex-wrap:wrap;gap:6px;display:flex}.ui-choice{cursor:pointer;position:relative}.ui-choice input{opacity:0;pointer-events:none;position:absolute}.ui-choice span{border:1px solid var(--ui-border-strong);background:var(--ui-surface);min-height:32px;color:var(--ui-text-2);border-radius:99px;align-items:center;padding:0 12px;font-size:.82rem;font-weight:500;transition:all .12s;display:inline-flex}.ui-choice:hover span{border-color:var(--ui-brand);color:var(--ui-brand)}.ui-choice input:checked+span{border-color:var(--ui-brand);background:var(--ui-brand);color:#fff}.ui-choice input:focus-visible+span{outline:2px solid var(--ui-brand);outline-offset:2px}.ui-file-drop{gap:10px;display:grid}.ui-drop-zone{border:1.5px dashed var(--ui-border-strong);border-radius:var(--ui-radius-lg);background:var(--ui-surface-2);color:var(--ui-text-3);text-align:center;cursor:pointer;justify-items:center;gap:4px;padding:26px 16px;transition:border-color .15s,background .15s;display:grid;position:relative}.ui-drop-zone:hover,.ui-drop-zone.is-dragging{border-color:var(--ui-brand);background:var(--ui-brand-soft);color:var(--ui-brand)}.ui-drop-zone input{opacity:0;cursor:pointer;width:100%;height:100%;position:absolute;inset:0}.ui-drop-zone strong{color:var(--ui-text);font-size:.88rem;font-weight:600}.ui-drop-zone small{font-size:.76rem}.ui-existing-files,.ui-new-files{gap:6px;margin:0;padding:0;list-style:none;display:grid}.ui-existing-files li,.ui-new-files li{border:1px solid var(--ui-border);border-radius:var(--ui-radius);background:var(--ui-surface);align-items:center;gap:10px;padding:8px 10px;display:flex}.ui-existing-files a{min-width:0;color:var(--ui-text);flex:1;align-items:center;gap:8px;font-size:.85rem;text-decoration:none;display:flex}.ui-existing-files a span{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.ui-remove-file{color:var(--ui-danger);cursor:pointer;align-items:center;gap:5px;font-size:.78rem;display:inline-flex}.ui-new-files img,.ui-file-ext{object-fit:cover;border-radius:6px;flex:none;width:36px;height:36px}.ui-file-ext{background:var(--ui-brand-soft);color:var(--ui-brand);place-items:center;font-size:.62rem;font-weight:700;display:grid}.ui-new-files li>span:last-child{min-width:0;display:grid}.ui-new-files strong{color:var(--ui-text);text-overflow:ellipsis;white-space:nowrap;font-size:.84rem;font-weight:500;overflow:hidden}.ui-new-files small{color:var(--ui-success);font-size:.74rem}.school-app .ui-content .ui-sticky-actions{z-index:20;margin:0 calc(var(--ui-gutter) * -1) -48px;padding:12px var(--ui-gutter);border-top:1px solid var(--ui-border);background:var(--ui-surface);justify-content:flex-end;gap:8px;display:flex;position:sticky;bottom:0}@supports (color:color-mix(in lab, red, red)){.school-app .ui-content .ui-sticky-actions{background:color-mix(in srgb, var(--ui-surface) 92%, transparent)}}.school-app .ui-content .ui-sticky-actions{-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.school-app .ui-content .ui-resource-grid{grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:12px;padding:16px 20px 20px;display:grid}.school-app .ui-content .ui-resource-card{border:1px solid var(--ui-border);border-radius:var(--ui-radius-lg);background:var(--ui-surface);min-width:0;color:var(--ui-text);grid-template-columns:auto minmax(0,1fr);gap:12px;padding:14px;text-decoration:none;transition:border-color .15s,box-shadow .15s,transform .15s;display:grid}.school-app .ui-content .ui-resource-card:hover{border-color:var(--ui-border-strong);box-shadow:var(--ui-shadow-md);transform:translateY(-1px)}.ui-resource-type{background:var(--ui-brand-soft);width:40px;height:40px;color:var(--ui-brand);border-radius:10px;place-items:center;display:grid}.ui-resource-type--video{color:#c2185b;background:#fdecef}.ui-resource-type--slides{background:var(--ui-warning-bg);color:var(--ui-warning)}.ui-resource-type--worksheet{background:var(--ui-success-bg);color:var(--ui-success)}.ui-resource-type--link{background:var(--ui-info-bg);color:var(--ui-info)}.ui-resource-type--past-paper{color:#6b3fc8;background:#f3edfd}.ui-resource-body{gap:2px;min-width:0;display:grid}.ui-resource-kicker{color:var(--ui-text-3);letter-spacing:.03em;text-overflow:ellipsis;text-transform:uppercase;white-space:nowrap;font-size:.72rem;font-weight:600;overflow:hidden}.school-app .ui-content .ui-resource-body strong{-webkit-line-clamp:2;-webkit-box-orient:vertical;font-size:.92rem;font-weight:600;line-height:1.35;display:-webkit-box;overflow:hidden}.ui-resource-body small{color:var(--ui-text-3);font-size:.78rem}.ui-resource-foot{border-top:1px solid var(--ui-border);grid-column:1/-1;justify-content:space-between;align-items:center;gap:10px;padding-top:10px;display:flex}.ui-resource-meta{color:var(--ui-text-3);gap:10px;font-size:.76rem;display:flex}.ui-resource-meta span{align-items:center;gap:4px;display:inline-flex}.ui-reach{color:var(--ui-text-2);font-variant-numeric:tabular-nums;align-items:center;gap:8px;font-size:.76rem;display:inline-flex}.ui-reach .ui-progress--sm{width:60px;margin:0}.ui-link-card{border:1px solid var(--ui-info-border);border-radius:var(--ui-radius);background:var(--ui-info-bg);color:var(--ui-info);align-items:center;gap:12px;margin-bottom:12px;padding:12px 14px;text-decoration:none;display:flex}.ui-link-card:hover{border-color:var(--ui-info)}.ui-link-card>span{min-width:0;display:grid}.ui-link-card strong{color:var(--ui-text);font-size:.88rem;font-weight:600}.ui-link-card small{color:var(--ui-text-3);text-overflow:ellipsis;white-space:nowrap;font-size:.76rem;overflow:hidden}.ui-person-inline{align-items:center;gap:10px;display:inline-flex}.ui-person-inline>span:last-child{display:grid}.ui-person-inline small{color:var(--ui-text-3);font-size:.74rem}.ui-person.is-muted strong{color:var(--ui-text-3);font-weight:500}.ui-person-check{color:var(--ui-success);margin-left:auto}.school-app .ui-content .ui-collapsible>summary{cursor:pointer;justify-content:space-between;align-items:center;list-style:none;display:flex}.school-app .ui-content .ui-collapsible>summary::-webkit-details-marker{display:none}.school-app .ui-content .ui-collapsible>summary h3{margin:0;font-size:.98rem;font-weight:600}.school-app .ui-content .ui-collapsible[open]>summary{margin-bottom:14px}.school-app .ui-content .ui-collapsible[open]>summary .ui-icon{transform:rotate(180deg)}.ui-score-input{align-items:center;gap:10px;display:flex}.school-app .slide-over .ui-score-input input{width:120px;font-size:1.1rem;font-weight:600}.ui-score-input>span{color:var(--ui-text-3);font-size:.95rem}.ui-form-actions{justify-content:flex-end;gap:8px;display:flex}.school-app .slide-over .ui-mark-panel .ui-remark{margin:12px 0 0}@media (width<=640px){.school-app .ui-content .ui-resource-grid{grid-template-columns:1fr;padding:12px}.school-app .ui-content .ui-sticky-actions>*{flex:1}}.school-app .slide-over .ui-remark{border-left:3px solid var(--ui-brand);border-radius:0 var(--ui-radius) var(--ui-radius) 0;background:var(--ui-surface-2);color:var(--ui-text);gap:4px;margin:14px 0 0;padding:12px 16px;font-size:.9rem;line-height:1.55;display:grid}.school-app .slide-over .ui-subsection{border-top:1px solid var(--ui-border);margin-top:18px;padding-top:14px}.school-app .slide-over .ui-subsection h4{color:var(--ui-text-3);letter-spacing:.06em;text-transform:uppercase;margin:0 0 10px;font-size:.72rem;font-weight:600}.school-app .slide-over .ui-mark-panel>.panel-head{display:none}.school-app .slide-over .ui-mark-panel>.muted-copy{color:var(--ui-text-2);flex-wrap:wrap;align-items:center;gap:6px;margin:0;font-size:.86rem;display:flex}.ui-person-amount{color:var(--ui-text);font-variant-numeric:tabular-nums;white-space:nowrap;margin-left:auto;font-size:.84rem;font-weight:600}a.ui-agenda-item{color:inherit;border-radius:var(--ui-radius);text-decoration:none}a.ui-agenda-item:hover .ui-agenda-copy strong{color:var(--ui-brand)}.school-app .ui-content .ui-table td small.is-warning{color:var(--ui-warning)}.school-app .ui-content .ui-table td small.is-danger{color:var(--ui-danger)}.ui-row-actions{justify-content:flex-end;gap:6px;display:inline-flex}.school-app .ui-content .ui-profile-layout--even{grid-template-columns:minmax(0,1.2fr) minmax(0,1fr)}.ui-step{color:var(--ui-text);align-items:center;gap:10px;font-size:.9rem;font-weight:600;display:flex}.ui-step:not(:first-of-type){border-top:1px solid var(--ui-border);margin-top:8px;padding-top:16px}.ui-step>span{background:var(--ui-brand);color:#fff;border-radius:99px;place-items:center;width:24px;height:24px;font-size:.74rem;display:grid}.ui-pupil-results{gap:4px;display:grid}.school-app .ui-content .ui-pupil-option{border:1px solid var(--ui-border);border-radius:var(--ui-radius);background:var(--ui-surface);width:100%;min-height:0;box-shadow:none;color:var(--ui-text);font:inherit;text-align:left;cursor:pointer;align-items:center;gap:12px;padding:9px 12px;display:flex;transform:none}.school-app .ui-content .ui-pupil-option:hover{border-color:var(--ui-brand);background:var(--ui-brand-soft);transform:none}.ui-pupil-option>span{flex:1;display:grid}.ui-pupil-option strong{font-size:.875rem;font-weight:600}.ui-pupil-option small{color:var(--ui-text-3);font-size:.76rem}.ui-pupil-option b{font-variant-numeric:tabular-nums;font-size:.84rem;font-weight:600}.ui-pupil-option b.is-due{color:var(--ui-danger)}.ui-allocation [data-allocation-body]:not([hidden]){gap:6px;display:grid}.school-app .ui-content .ui-field .ui-search-input input{width:100%}.school-app .ui-content .ui-allocation{top:calc(var(--ui-topbar-height) + 16px);gap:6px;display:grid;position:sticky}.ui-allocation-list{gap:6px;margin:0;padding:0;list-style:none;display:grid}.ui-allocation-list li{border:1px solid var(--ui-border);border-radius:var(--ui-radius);justify-content:space-between;align-items:center;gap:12px;padding:10px 12px;font-size:.84rem;display:flex}.ui-allocation-list li>span{display:grid}.ui-allocation-list small{color:var(--ui-text-3);font-size:.74rem}.ui-allocation-list li.is-applied{border-color:var(--ui-success-border);background:var(--ui-success-bg)}.ui-allocation-list li.is-applied b{color:var(--ui-success)}@media (width<=1100px){.school-app .ui-content .ui-profile-layout--even{grid-template-columns:1fr}.school-app .ui-content .ui-allocation{position:static}}.ui-card-actions{border-top:1px solid var(--ui-border);flex-wrap:wrap;gap:6px;padding-top:12px;display:flex}.ui-person .status-pill{flex:none;margin-left:auto}.ui-select-icon.is-done{background:var(--ui-success-bg);color:var(--ui-success)}.school-app .ui-content .ui-profile-col>.ui-kpi-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.school-app .ui-content .ui-child-grid{grid-template-columns:repeat(auto-fit,minmax(340px,1fr));gap:16px;display:grid}.school-app .ui-content .ui-child-card{gap:16px;display:grid}.school-app .ui-content a.ui-child-card--link{color:inherit;text-decoration:none;transition:border-color .15s,box-shadow .15s}.school-app .ui-content a.ui-child-card--link:hover{border-color:var(--ui-border-strong);box-shadow:var(--ui-shadow-md)}.ui-child-head{align-items:center;gap:14px;display:flex}.ui-child-head .ui-profile-avatar{border-radius:14px;width:48px;height:48px;font-size:1rem}.ui-child-head>div{flex:1;min-width:0;display:grid}.school-app .ui-content .ui-child-head h3{margin:0;font-size:1.05rem;font-weight:600}.ui-child-head small{color:var(--ui-text-3);font-size:.8rem}.ui-child-stats{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin:0;display:grid}.ui-child-stats>a{border:1px solid var(--ui-border);border-radius:var(--ui-radius);background:var(--ui-surface-2);color:inherit;gap:2px;padding:12px 14px;text-decoration:none;transition:border-color .12s,background .12s;display:grid}.ui-child-stats>a:hover{border-color:var(--ui-border-strong);background:var(--ui-surface)}.ui-child-stats dt{color:var(--ui-text-3);font-size:.76rem;font-weight:500}.ui-child-stats dd{color:var(--ui-text);font-variant-numeric:tabular-nums;margin:0;font-size:1.15rem;font-weight:600}.ui-child-stats small{color:var(--ui-text-3);font-size:.74rem}.ui-child-stats>a.is-danger dd,.ui-child-stats>a.is-danger small{color:var(--ui-danger)}.ui-timeline{display:grid}.ui-timeline .ui-timeline-item{padding-bottom:14px}.ui-timeline-icon{background:var(--ui-brand-soft);width:28px;height:28px;color:var(--ui-brand);border-radius:99px;flex:none;place-items:center;display:grid}.ui-timeline .ui-timeline-item:not(:last-child):before{top:30px;left:13px}@media (width<=640px){.school-app .ui-content .ui-child-grid{grid-template-columns:1fr}}.ui-profile-avatar--icon{background:var(--ui-brand-soft);color:var(--ui-brand)}.ui-profile-meta a{color:var(--ui-text-2);text-decoration:none}.ui-profile-meta a:hover{color:var(--ui-brand);text-underline-offset:2px;text-decoration:underline}.school-app .ui-content .ui-definition-grid--stack{grid-template-columns:1fr;gap:14px}.ui-definition-grid dd small{color:var(--ui-text-3);margin-top:1px;font-size:.76rem;font-weight:400;display:block}.ui-definition-grid dd.danger-text{color:var(--ui-danger)}.school-app .ui-content a.ui-side-card .ui-definition-grid{border-top:1px solid var(--ui-border);margin-top:8px;padding-top:12px}.school-app .ui-content .ui-hint-card{background:var(--ui-surface-2);box-shadow:none;align-items:flex-start;gap:10px;display:flex}.ui-hint-card>.ui-icon{color:var(--ui-text-3);margin-top:1px}.ui-hint-card p{color:var(--ui-text-2);margin:0;font-size:.84rem;line-height:1.55}.school-app .ui-content .ui-account-summary{border:1px solid var(--ui-border);border-radius:var(--ui-radius-lg);background:var(--ui-surface);box-shadow:var(--ui-shadow-xs);grid-template-columns:minmax(240px,1fr) minmax(0,2.2fr) auto;align-items:stretch;display:grid;overflow:hidden}.ui-account-balance{border-right:1px solid var(--ui-border);align-content:center;gap:6px;padding:20px 22px;display:grid}.ui-eyebrow{color:var(--ui-text-3);letter-spacing:.06em;text-transform:uppercase;font-size:.74rem;font-weight:600}.school-app .ui-content .ui-account-balance>strong{color:var(--ui-text);letter-spacing:-.025em;font-variant-numeric:tabular-nums;font-size:1.9rem;font-weight:600;line-height:1.15}.school-app .ui-content .ui-account-balance>strong.is-due{color:var(--ui-danger)}.ui-account-balance small{color:var(--ui-text-3);font-size:.8rem}.ui-progress{background:var(--ui-surface-3);border-radius:99px;height:8px;display:block;position:relative;overflow:hidden}.ui-progress>span{border-radius:inherit;background:var(--ui-success);position:absolute;inset:0 auto 0 0}.ui-progress--sm{width:72px;height:4px;margin:6px 0 0 auto}.ui-account-figures{grid-template-columns:repeat(auto-fit,minmax(140px,1fr));margin:0;display:grid}.ui-account-figures>div{border-right:1px solid var(--ui-border);align-content:center;gap:3px;min-width:0;padding:18px 20px;display:grid}.ui-account-figures dt{color:var(--ui-text-3);font-size:.8rem;font-weight:500}.ui-account-figures dd{color:var(--ui-text);font-variant-numeric:tabular-nums;white-space:nowrap;margin:0;font-size:1.12rem;font-weight:600}.ui-account-figures small{color:var(--ui-text-3);font-size:.76rem}.ui-account-figures .is-warning dd{color:var(--ui-warning)}.ui-account-figures .is-danger dd{color:var(--ui-danger)}.ui-account-actions{background:var(--ui-surface-2);align-content:center;gap:8px;padding:18px 20px;display:grid}.school-app .ui-content .ui-summary-strip{border:1px solid var(--ui-border);border-radius:var(--ui-radius-lg);background:var(--ui-surface);box-shadow:var(--ui-shadow-xs);grid-template-columns:repeat(auto-fit,minmax(160px,1fr));margin:0;display:grid;overflow:hidden}.ui-summary-strip>div{border-right:1px solid var(--ui-border);gap:3px;min-width:0;padding:16px 20px;display:grid}.ui-summary-strip>div:last-child{border-right:0}.ui-summary-strip dt{color:var(--ui-text-3);font-size:.8rem;font-weight:500}.ui-summary-strip dd{color:var(--ui-text);letter-spacing:-.015em;font-variant-numeric:tabular-nums;text-overflow:ellipsis;white-space:nowrap;margin:0;font-size:1.25rem;font-weight:600;overflow:hidden}.ui-summary-strip small{color:var(--ui-text-3);font-size:.76rem}.ui-summary-strip .is-success dd{color:var(--ui-success)}.ui-summary-strip .is-warning dd{color:var(--ui-warning)}.ui-summary-strip .is-danger dd{color:var(--ui-danger)}.school-app .ui-content .ui-master-detail{grid-template-columns:minmax(300px,2fr) minmax(0,3fr);align-items:start;gap:20px;display:grid}.ui-select-list{padding:6px;display:grid}.school-app .ui-content .ui-select-list>.empty-state{margin:10px}.ui-select-item{border-radius:var(--ui-radius);color:var(--ui-text);border:1px solid #0000;align-items:center;gap:12px;padding:10px 12px;text-decoration:none;display:flex}.ui-select-item:hover{background:var(--ui-surface-2)}.ui-select-item.is-selected{border-color:var(--ui-brand-tint);background:var(--ui-brand-soft)}.ui-select-copy{flex:1;gap:1px;min-width:0;display:grid}.school-app .ui-content .ui-select-copy strong{text-overflow:ellipsis;white-space:nowrap;font-size:.875rem;font-weight:600;overflow:hidden}.ui-select-copy small{color:var(--ui-text-3);text-overflow:ellipsis;white-space:nowrap;font-size:.78rem;overflow:hidden}.ui-score-badge,.ui-select-icon{background:var(--ui-surface-3);width:38px;height:38px;color:var(--ui-text);font-variant-numeric:tabular-nums;border-radius:10px;flex:none;place-items:center;font-size:.9rem;font-weight:600;display:grid}.ui-select-icon{color:var(--ui-text-2)}.ui-select-item.is-selected :is(.ui-score-badge,.ui-select-icon){background:var(--ui-brand);color:#fff}.ui-average{color:var(--ui-text-3);font-size:.82rem}.school-app .ui-content .ui-average strong{color:var(--ui-text);margin-left:4px;font-size:1.1rem;font-weight:600}.school-app .ui-content .ui-remark{border-left:3px solid var(--ui-brand);border-radius:0 var(--ui-radius) var(--ui-radius) 0;background:var(--ui-surface-2);color:var(--ui-text);gap:4px;margin:16px 20px 20px;padding:12px 16px;font-size:.9rem;line-height:1.55;display:grid}.school-app .ui-content .admin-card:not(.admin-table-panel) .ui-remark{margin:16px 0 0}.ui-remark span{color:var(--ui-text-3);letter-spacing:.05em;text-transform:uppercase;font-size:.74rem;font-weight:600}.ui-detail-empty{color:var(--ui-text-3);text-align:center;justify-items:center;gap:10px;padding:48px 20px;font-size:.88rem;display:grid}.ui-detail-empty>.ui-icon{background:var(--ui-surface-3);width:44px;height:44px;color:var(--ui-text-2);border-radius:12px;padding:11px}.ui-prose{color:var(--ui-text-2);white-space:pre-line;margin:0;font-size:.9rem;line-height:1.6}.ui-file-list{gap:6px;margin:0;padding:0;list-style:none;display:grid}.ui-file-list a{border:1px solid var(--ui-border);border-radius:var(--ui-radius);color:var(--ui-text);align-items:center;gap:10px;padding:10px 12px;text-decoration:none;display:flex}.ui-file-list a:hover{border-color:var(--ui-border-strong);background:var(--ui-surface-2)}.ui-file-list span{text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0;font-size:.86rem;font-weight:500;overflow:hidden}.ui-file-list small{color:var(--ui-text-3);font-size:.76rem}.ui-file-chip{border:1px solid var(--ui-border);border-radius:var(--ui-radius-sm);min-height:26px;color:var(--ui-text-2);align-items:center;gap:4px;margin:0 4px 4px 0;padding:0 8px;font-size:.74rem;font-weight:600;text-decoration:none;display:inline-flex}.ui-file-chip:hover{border-color:var(--ui-brand);color:var(--ui-brand)}.ui-progress.is-low>span{background:var(--ui-danger)}.school-app .ui-content .ui-table td.is-wrap{white-space:normal;min-width:200px}@media (width<=1100px){.school-app .ui-content .ui-master-detail{grid-template-columns:1fr}}@media (width<=640px){.ui-summary-strip>div{border-bottom:1px solid var(--ui-border);padding:12px 14px}.school-app .ui-content .ui-summary-strip{grid-template-columns:repeat(2,minmax(0,1fr))}.school-app .ui-content .ui-table td.is-wrap{min-width:0}}.school-app .ui-content .ui-table-head{border-bottom:1px solid var(--ui-border);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px 16px;padding:14px 20px;display:flex}.ui-table-head>div{gap:1px;display:grid}.school-app .ui-content .ui-table-head h3{margin:0;font-size:.98rem;font-weight:600}.ui-table-head small{color:var(--ui-text-3);font-size:.78rem}.ui-inline-filter{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.school-app .ui-content .ui-inline-filter select{width:auto;min-width:140px;min-height:34px}.school-app .ui-content .ui-inline-filter input[type=date]{width:150px;min-height:34px}.ui-search-input{display:block;position:relative}.ui-search-input .ui-icon{color:#9aa1b8;pointer-events:none;position:absolute;top:50%;left:10px;transform:translateY(-50%)}.school-app .ui-content .ui-search-input input{width:240px;min-height:34px;padding-left:32px}.school-app .ui-content .ui-table-wrap{margin:0;padding:0;overflow-x:auto}.school-app .ui-content .ui-table{border-collapse:collapse;width:100%;min-width:640px}.school-app .ui-content .ui-table th{white-space:nowrap;padding:9px 20px}.school-app .ui-content .ui-table td{color:var(--ui-text-2);vertical-align:top;white-space:nowrap;padding:12px 20px}.school-app .ui-content .ui-table td small{color:var(--ui-text-3);margin-top:2px;font-size:.76rem;display:block}.school-app .ui-content .ui-table td strong{color:var(--ui-text);font-weight:600}.school-app .ui-content .ui-table tr:last-child td{border-bottom:0}.school-app .ui-content .ui-table :is(th,td).is-num{text-align:right;font-variant-numeric:tabular-nums}.school-app .ui-content .ui-table td.is-danger{color:var(--ui-danger)}.school-app .ui-content .ui-table td.is-danger small{color:var(--ui-danger);opacity:.8}.school-app .ui-content .ui-table tr[data-href]{cursor:pointer}.school-app .ui-content .ui-table tr.is-empty:hover td{background:0 0}.school-app .ui-content .ui-table tr.is-empty td{white-space:normal;padding:16px 20px}.ui-table-link{color:var(--ui-text);font-weight:600;text-decoration:none}.ui-table-link:hover{color:var(--ui-brand);text-underline-offset:2px;text-decoration:underline}@media (width<=1180px){.school-app .ui-content .ui-account-summary{grid-template-columns:1fr}.ui-account-balance{border-right:0;border-bottom:1px solid var(--ui-border)}.ui-account-actions{border-top:1px solid var(--ui-border);flex-wrap:wrap;display:flex}}@media (width<=640px){.ui-account-figures{grid-template-columns:repeat(2,minmax(0,1fr))}.ui-account-figures>div:nth-child(2n){border-right:0}.ui-account-figures>div:nth-child(-n+2){border-bottom:1px solid var(--ui-border)}.ui-account-figures>div{padding:14px 16px}.ui-inline-filter,.ui-search-input,.school-app .ui-content .ui-search-input input{width:100%}.school-app .ui-content .ui-inline-filter :is(select,input[type=date]){flex:140px;width:auto}.ui-profile-actions{width:100%}.school-app .ui-content .ui-table{min-width:0}.school-app .ui-content .ui-table thead{display:none}.school-app .ui-content .ui-table tbody,.school-app .ui-content .ui-table tr{display:block}.school-app .ui-content .ui-table tr{border-bottom:1px solid var(--ui-border);padding:12px 16px}.school-app .ui-content .ui-table tr:last-child{border-bottom:0}.school-app .ui-content .ui-table td{white-space:normal;text-align:right;border:0;justify-content:space-between;align-items:baseline;gap:12px;padding:4px 0;display:flex}.school-app .ui-content .ui-table td:before{content:attr(data-label);color:var(--ui-text-3);text-align:left;font-size:.78rem;font-weight:500}.school-app .ui-content .ui-table td:first-child{text-align:left;padding-bottom:6px;display:block}.school-app .ui-content .ui-table td:first-child:before{content:none}.school-app .ui-content .ui-table td small{margin:0 0 0 6px;display:inline}.school-app .ui-content .ui-table td:first-child small{margin:2px 0 0;display:block}.school-app .ui-content .ui-table tbody tr:hover td{background:0 0}.school-app .ui-content .ui-table .ui-progress--sm{display:none}.school-app .ui-content .ui-table tr.is-empty td{display:block}.school-app .ui-content .ui-table tr.is-empty td:before{content:none}}@media print{.ui-account-actions,.ui-inline-filter,.ui-back-link,.ui-profile-actions,.school-app .ui-content .admin-tabs{display:none!important}.school-app .ui-content .ui-account-summary{grid-template-columns:1fr 2fr}.ui-table-wrap{overflow:visible}}.ui-auth{background:var(--ui-surface);min-height:100vh;color:var(--ui-text);font-family:var(--font-sans);-webkit-font-smoothing:antialiased;margin:0}.ui-auth-shell{grid-template-columns:minmax(0,1.05fr) minmax(0,1fr);min-height:100vh;display:grid}.ui-auth-aside{background:var(--ui-brand) var(--auth-image,url(https://images.pexels.com/photos/5676672/pexels-photo-5676672.jpeg?auto=compress&cs=tinysrgb&w=1600)) center / cover no-repeat;color:#fff;isolation:isolate;flex-direction:column;justify-content:space-between;gap:32px;padding:40px clamp(32px,4vw,56px);display:flex;position:relative;overflow:hidden}.ui-auth-aside:before{content:"";z-index:-1;background:linear-gradient(180deg, var(--ui-brand) 0%, var(--ui-brand) 70%);position:absolute;inset:0}@supports (color:color-mix(in lab, red, red)){.ui-auth-aside:before{background:linear-gradient(180deg, color-mix(in srgb, var(--ui-brand) 78%, transparent) 0%, color-mix(in srgb, var(--ui-brand) 92%, transparent) 70%)}}.ui-auth-brand{color:#fff;align-items:center;gap:12px;text-decoration:none;display:inline-flex}.ui-auth-brand img,.ui-auth-brand span{object-fit:contain;background:#fff;border-radius:10px;width:40px;height:40px}.ui-auth-brand span{color:var(--ui-brand);place-items:center;font-size:.85rem;font-weight:700;display:grid}.ui-auth-brand strong{font-size:1rem;font-weight:600}.ui-auth-pitch{gap:14px;max-width:460px;display:grid}.ui-auth-pitch h2{letter-spacing:-.025em;margin:0;font-size:clamp(1.7rem,2.6vw,2.3rem);font-weight:600;line-height:1.15}.ui-auth-pitch p{color:#ffffffc7;margin:0;font-size:1rem;line-height:1.6}.ui-auth-pitch ul{gap:10px;margin:10px 0 0;padding:0;list-style:none;display:grid}.ui-auth-pitch li{color:#ffffffe6;align-items:center;gap:10px;font-size:.9rem;display:flex}.ui-auth-pitch li .ui-icon{background:#ffffff1f;border-radius:8px;width:28px;height:28px;padding:6px}.ui-auth-foot{color:#ffffff8c;font-size:.78rem}.ui-auth-main{background:var(--ui-surface);place-items:center;padding:40px 24px;display:grid}.ui-auth-card{gap:22px;width:min(400px,100%);display:grid}.ui-auth-head{gap:6px;display:grid}.ui-auth-head h1{letter-spacing:-.02em;margin:0;font-size:1.6rem;font-weight:600}.ui-auth-head p{color:var(--ui-text-3);margin:0;font-size:.92rem;line-height:1.55}.ui-auth-head p strong{color:var(--ui-text-2);font-weight:600}.ui-auth-switch{border:1px solid var(--ui-border);background:var(--ui-surface-3);border-radius:10px;grid-template-columns:1fr 1fr;gap:3px;padding:3px;display:grid}.ui-auth-switch a{min-height:36px;color:var(--ui-text-2);border:1px solid #0000;border-radius:7px;justify-content:center;align-items:center;gap:7px;font-size:.85rem;font-weight:500;text-decoration:none;display:inline-flex}.ui-auth-switch a:hover{color:var(--ui-text)}.ui-auth-switch a.is-active{border-color:var(--ui-border);background:var(--ui-surface);box-shadow:var(--ui-shadow-xs);color:var(--ui-text);font-weight:600}.ui-auth-form{gap:16px;display:grid}.ui-field{gap:6px;display:grid}.ui-field>span:first-child{color:var(--ui-text-2);font-size:.82rem;font-weight:500}.ui-field input{border:1px solid var(--ui-border-strong);border-radius:var(--ui-radius);background:var(--ui-surface);width:100%;min-height:42px;box-shadow:var(--ui-shadow-xs);color:var(--ui-text);font:400 .92rem var(--font-sans);padding:0 12px;transition:border-color .12s,box-shadow .12s}.ui-field input::placeholder{color:#9aa1b8}.ui-field input:focus{border-color:var(--ui-brand);box-shadow:0 0 0 3px var(--ui-brand-ring);outline:none}.ui-password{display:block;position:relative}.ui-password input{padding-right:64px}.ui-password-toggle{border-radius:var(--ui-radius-sm);min-height:30px;box-shadow:none;color:var(--ui-text-2);font:500 .8rem var(--font-sans);cursor:pointer;background:0 0;border:0;padding:0 10px;position:absolute;top:50%;right:6px;transform:translateY(-50%)}.ui-password-toggle:hover{background:var(--ui-surface-3);box-shadow:none;transform:translateY(-50%)}.ui-check{color:var(--ui-text-2);cursor:pointer;align-items:center;gap:9px;font-size:.86rem;display:inline-flex}.ui-check input{width:16px;height:16px;accent-color:var(--ui-brand)}.ui-auth-submit{width:100%;min-height:44px;font-size:.92rem}.ui-auth-setup{color:var(--ui-brand);text-align:center;font-size:.86rem;font-weight:500}.ui-auth-help{border-top:1px solid var(--ui-border);color:var(--ui-text-3);text-align:center;margin:0;padding-top:18px;font-size:.82rem}.ui-auth .ui-alert span{color:inherit}@media (width<=860px){.ui-auth-shell{grid-template-rows:auto 1fr;grid-template-columns:1fr}.ui-auth-aside{gap:18px;padding:20px 20px 24px}.ui-auth-pitch ul,.ui-auth-foot{display:none}.ui-auth-pitch h2{font-size:1.3rem}.ui-auth-pitch p{font-size:.88rem}.ui-auth-main{place-items:start center;padding:28px 20px 40px}}@media (width<=1100px){.ui-topbar-search{background:0 0;border-color:#0000;justify-content:center;width:36px;padding:0}.ui-topbar-search :is(span,kbd){display:none}.school-app .ui-content .admin-welcome-hero{grid-template-columns:minmax(0,1fr)}.school-app .ui-content .admin-welcome-highlight{text-align:left;grid-template-columns:auto minmax(0,1fr);justify-items:start;column-gap:16px}.school-app .ui-content .admin-welcome-highlight>*{grid-column:2}.school-app .ui-content .admin-welcome-highlight>:is(.admin-collection-ring,strong){grid-area:1/1/span 4;align-self:center}}@media (width<=900px){.ui-shell{display:block}.ui-sidebar{z-index:70;width:min(300px,86vw);height:100dvh;transition:transform .24s var(--ui-ease);box-shadow:none;position:fixed;inset:0 auto 0 0;transform:translate(-102%)}.ui-sidebar-open .ui-sidebar{transform:none;box-shadow:24px 0 60px #1016314d}.ui-sidebar .ui-sidebar-close{color:var(--ui-sidebar-text);display:inline-grid}.ui-sidebar .ui-sidebar-close:hover{background:var(--ui-sidebar-hover);color:#fff}.ui-sidebar-backdrop{z-index:65;opacity:0;pointer-events:none;background:#10163173;transition:opacity .2s;display:block;position:fixed;inset:0}.ui-sidebar-open .ui-sidebar-backdrop{opacity:1;pointer-events:auto}.ui-sidebar-open{overflow:hidden}.ui-topbar .ui-menu-toggle{margin-left:-6px;display:inline-grid}.ui-topbar{gap:8px;min-height:56px}.ui-new-button span{display:none}.ui-new-button{width:36px;padding:0}}.ui-bottom-bar{display:none}@media (width<=900px){.ui-bottom-bar{z-index:45;padding:6px 6px calc(6px + env(safe-area-inset-bottom));border-top:1px solid var(--ui-border);background:var(--ui-surface);grid-auto-columns:minmax(0,1fr);grid-auto-flow:column;display:grid;position:fixed;inset:auto 0 0}@supports (color:color-mix(in lab, red, red)){.ui-bottom-bar{background:color-mix(in srgb, var(--ui-surface) 94%, transparent)}}.ui-bottom-bar{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);box-shadow:0 -8px 24px -16px #10163140}.school-app .ui-bottom-tab{border-radius:var(--ui-radius);min-width:0;min-height:50px;box-shadow:none;color:var(--ui-text-3);font:500 .7rem var(--font-sans);cursor:pointer;-webkit-tap-highlight-color:transparent;background:0 0;border:0;align-content:center;justify-items:center;gap:3px;padding:4px 2px;text-decoration:none;display:grid;position:relative;transform:none}.ui-bottom-tab span{text-overflow:ellipsis;white-space:nowrap;max-width:100%;overflow:hidden}.school-app .ui-bottom-tab:hover{color:var(--ui-text);background:0 0;transform:none}.school-app .ui-bottom-tab:active{background:var(--ui-surface-3)}.school-app .ui-bottom-tab.is-active{color:var(--ui-brand);font-weight:600}.ui-bottom-tab.is-active:before{content:"";background:var(--ui-brand);border-radius:0 0 3px 3px;height:3px;position:absolute;top:-6px;left:30%;right:30%}.ui-bottom-tab:focus-visible{outline:2px solid var(--ui-brand);outline-offset:-2px}.ui-content{padding-bottom:calc(84px + env(safe-area-inset-bottom))}.ui-toasts{bottom:calc(76px + env(safe-area-inset-bottom))}.ui-sidebar-open .ui-bottom-bar,.slide-over-open .ui-bottom-bar{visibility:hidden}}@media (width<=640px){.ui-content{gap:16px;padding-top:16px}.ui-breadcrumb{display:none}.ui-topbar-actions{gap:2px}.ui-menu-panel{width:auto;min-width:0;position:fixed;top:60px;left:12px;right:12px}.ui-menu-panel.ui-menu-panel--up{position:absolute;inset:auto 0 calc(100% + 8px)}.ui-notifications-panel{width:auto}.ui-toasts{right:16px}.ui-palette{padding:12px}.ui-palette-foot{display:none}.school-app .ui-content :is(.admin-stat-grid,.admin-dashboard-stat-grid,.pupil-metric-grid,.register-summary-grid){grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.school-app .ui-content :is(.admin-stat-tile,.admin-metric-card,.dash-stat-card,.dashboard-stat-card){padding:14px}.school-app .ui-content .admin-metric-card{flex-direction:column;gap:10px}.school-app .ui-content :is(.admin-stat-tile>strong,.admin-metric-body>strong,.dash-stat-value){font-size:1.15rem}.school-app .ui-content .admin-welcome-hero{padding:20px!important}.school-app .ui-content .admin-welcome-highlight{display:none}.school-app .ui-content .admin-page-head .admin-action-row{width:100%}.school-app .ui-content .admin-page-head .admin-action-row>*{flex:auto}.school-app .ui-content .admin-card{padding:16px}.school-app .ui-content .admin-table-head{display:none}.school-app .ui-content .profile-filter-bar{padding:12px 16px}.school-app .ui-content .profile-filter-bar>*{flex:100%!important;width:100%!important}.school-app .slide-over{grid-template-columns:minmax(0,1fr)}.school-app .slide-over-panel{grid-column:1}.school-app .slide-over-content{padding:16px}}@media (prefers-reduced-motion:reduce){.school-app *,.school-app :before,.school-app :after{transition:none!important;animation:none!important}}@media print{.ui-sidebar,.ui-sidebar-backdrop,.ui-topbar,.ui-toasts,.ui-palette,.slide-over,.school-app .ui-content :is(.admin-action-row,.document-actions,.profile-filter-bar,.profile-pagination){display:none!important}.ui-shell{display:block}.school-app,.ui-content{background:#fff;padding:0}.school-app .ui-content :is(.admin-card,.panel){box-shadow:none;break-inside:avoid}}.school-app .register-excuse:not(.is-visible){visibility:hidden}@media (width<=760px){.school-app .register-excuse:not(.is-visible){display:none}}.ui-person .status-pill{white-space:nowrap}.lms-ring{width:var(--ring-size);height:var(--ring-size);flex:none;place-items:center;display:inline-grid;position:relative}.lms-ring svg{position:absolute;inset:0;transform:rotate(-90deg)}.lms-ring circle{fill:none}.lms-ring-track{stroke:var(--ui-surface-3)}.lms-ring-value{stroke:var(--cover-accent,var(--ui-brand));stroke-linecap:round;transition:stroke-dashoffset .6s var(--ui-ease)}.lms-ring.is-complete .lms-ring-value{stroke:var(--ui-success)}.lms-ring-label{color:var(--ui-text);justify-items:center;line-height:1;display:grid;position:relative}.school-app .ui-content .lms-ring-label strong{font-size:calc(var(--ring-size) * .26);letter-spacing:-.03em;font-variant-numeric:tabular-nums;font-weight:650}.lms-ring-label strong small{opacity:.7;font-size:.55em;font-weight:600}.lms-ring-label>small{color:var(--ui-text-3);font-size:max(.6rem, calc(var(--ring-size) * .12));white-space:nowrap;margin-top:3px;font-weight:500}.lms-ring.is-complete .lms-ring-label{color:var(--ui-success)}.lms-ring--light .lms-ring-track{stroke:#ffffff38}.lms-ring--light .lms-ring-value,.lms-ring--light.is-complete .lms-ring-value{stroke:#fff}.lms-ring--light .lms-ring-label,.school-app .ui-content .lms-ring--light .lms-ring-label strong,.lms-ring--light.is-complete .lms-ring-label{color:#fff}.lms-ring--light .lms-ring-label>small{color:#ffffffbf}.lms-type{background:var(--ui-brand-soft);width:34px;height:34px;color:var(--ui-brand);border-radius:10px;flex:none;place-items:center;display:inline-grid}.lms-type--lesson{color:#4338ca;background:#eef2ff}.lms-type--quiz{color:#a21caf;background:#fdf4ff}.lms-type--assignment{background:var(--ui-warning-bg);color:var(--ui-warning)}.lms-type--material{background:var(--ui-info-bg);color:var(--ui-info)}.lms-type--discussion{color:#0e7490;background:#ecfeff}.lms-type.is-done{background:var(--ui-success);color:#fff}.lms-type.is-locked,.lms-type.is-scheduled{background:var(--ui-surface-3);color:var(--ui-text-3)}.lms-type--lg{border-radius:14px;width:48px;height:48px}.lms-matrix .lms-type,.lms-type-tally .lms-type,.lms-outline-link .lms-type{border-radius:6px;width:22px;height:22px}.lms-chip{background:var(--ui-surface-3);min-height:22px;color:var(--ui-text-2);white-space:nowrap;border-radius:999px;align-items:center;gap:4px;padding:0 8px;font-size:.72rem;font-weight:500;display:inline-flex}.lms-chip--muted{background:var(--ui-surface-3);color:var(--ui-text-3)}.lms-chip--info{background:var(--ui-info-bg);color:var(--ui-info)}.lms-chip--brand{background:var(--ui-brand-tint);color:var(--ui-brand)}.lms-inline-progress{align-items:center;gap:8px;min-width:0;display:inline-flex}.lms-inline-progress .ui-progress--sm{width:84px;margin:0}.lms-inline-progress small{color:var(--ui-text-3);font-variant-numeric:tabular-nums;white-space:nowrap;font-size:.76rem}.lms-icon-link{width:26px;height:26px;min-height:0;box-shadow:none;color:var(--ui-text-3);cursor:pointer;background:0 0;border:0;border-radius:6px;place-items:center;padding:0;display:inline-grid}.lms-icon-link:hover{background:var(--ui-danger-bg);color:var(--ui-danger);box-shadow:none;transform:none}.lms-grade{background:var(--ui-surface-3);min-width:46px;min-height:24px;color:var(--ui-text-2);font-variant-numeric:tabular-nums;border-radius:6px;justify-content:center;align-items:center;padding:0 8px;font-size:.8rem;font-weight:600;text-decoration:none;display:inline-flex}.lms-grade.is-high{background:var(--ui-success-bg);color:var(--ui-success)}.lms-grade.is-mid{background:var(--ui-warning-bg);color:var(--ui-warning)}.lms-grade.is-low{background:var(--ui-danger-bg);color:var(--ui-danger)}.lms-grade.is-pending{background:var(--ui-warning-bg);color:var(--ui-warning)}.lms-grade.is-pending:hover{background:var(--ui-warning-border)}.lms-grade.is-missing{color:var(--ui-danger);background:0 0;font-weight:500}.lms-toolbar{flex-wrap:wrap;justify-content:space-between;align-items:flex-end;gap:10px 16px;display:flex}.lms-toolbar>div:first-child{gap:2px;display:grid}.school-app .ui-content .lms-toolbar h3{color:var(--ui-text);margin:0;font-size:1.02rem;font-weight:600}.lms-toolbar small{color:var(--ui-text-3);font-size:.82rem}.lms-tabs .ui-icon{opacity:.75}.lms-form-title{align-items:center;gap:14px;display:flex!important}.lms-form-title>div{gap:4px;display:grid}.school-app .ui-content .lms-cover{border-radius:var(--ui-radius-xl);background:var(--cover,var(--ui-brand));box-shadow:var(--ui-shadow-sm);color:#fff;isolation:isolate;flex-wrap:wrap;justify-content:space-between;align-items:flex-end;gap:20px 28px;padding:24px 28px;display:flex;position:relative;overflow:hidden}.lms-cover:before,.lms-cover:after{content:"";z-index:-1;background:#ffffff14;border-radius:50%;position:absolute}.lms-cover:before{width:340px;height:340px;top:-170px;right:-90px}.lms-cover:after{background:#ffffff0d;width:180px;height:180px;bottom:-120px;right:220px}.lms-cover-main{flex:380px;gap:6px;min-width:0;display:grid}.lms-cover-back{color:#ffffffc7;justify-self:start;align-items:center;gap:4px;margin-bottom:6px;font-size:.8rem;font-weight:500;text-decoration:none;display:inline-flex}.lms-cover-back:hover{color:#fff}.lms-cover-kicker{color:#ffffffb8;letter-spacing:.07em;text-transform:uppercase;font-size:.74rem;font-weight:600}.school-app .ui-content .lms-cover h2{color:#fff;letter-spacing:-.025em;margin:0;font-size:clamp(1.5rem,2.6vw,2rem);font-weight:650;line-height:1.15}.lms-cover p{color:#ffffffd1;max-width:68ch;margin:0;font-size:.92rem;line-height:1.55}.lms-cover-meta{flex-wrap:wrap;gap:6px;margin-top:8px;display:flex}.lms-cover-meta>span{color:#fffffff2;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#ffffff1a;border:1px solid #ffffff2e;border-radius:999px;align-items:center;gap:6px;min-height:26px;padding:0 10px;font-size:.78rem;font-weight:500;display:inline-flex}.lms-cover-aside{flex-wrap:wrap;align-items:center;gap:16px;display:flex}.lms-cover-actions{gap:8px;display:flex}.lms-cover-done{border-radius:var(--ui-radius);background:#ffffff29;align-items:center;gap:6px;padding:8px 12px;font-size:.86rem;font-weight:600;display:inline-flex}.school-app .ui-content .lms-cover .ui-button--light{color:var(--cover-accent,var(--ui-brand));border:0;font-weight:600}.lms-course-grid{grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:16px;display:grid}.school-app .ui-content .lms-course-card{border:1px solid var(--ui-border);border-radius:var(--ui-radius-xl);background:var(--ui-surface);min-width:0;box-shadow:var(--ui-shadow-xs);color:var(--ui-text);transition:transform .18s var(--ui-ease), box-shadow .18s, border-color .18s;flex-direction:column;text-decoration:none;display:flex;overflow:hidden}.school-app .ui-content .lms-course-card:hover{border-color:var(--ui-border-strong);box-shadow:var(--ui-shadow-md);transform:translateY(-2px)}.lms-course-card-cover{background:var(--cover);justify-content:space-between;align-items:flex-start;height:104px;padding:14px;display:flex;position:relative;overflow:hidden}.lms-course-card-cover:after{content:"";background:#ffffff1a;border-radius:50%;width:160px;height:160px;position:absolute;bottom:-90px;right:-40px}.lms-course-card-badge{z-index:1;color:#fff;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#fff3;border-radius:999px;align-items:center;min-height:24px;padding:0 9px;font-size:.74rem;font-weight:600;display:inline-flex;position:relative}.lms-course-card-mark{z-index:1;color:#ffffffe6;letter-spacing:-.04em;font-size:2.4rem;font-weight:700;line-height:1;position:absolute;bottom:6px;right:16px}.lms-course-card-ring{z-index:1;position:absolute;bottom:12px;right:14px}.lms-course-card-body{flex:1;align-content:start;gap:4px;padding:14px 16px 10px;display:grid}.school-app .ui-content .lms-course-card-body strong{color:var(--ui-text);font-size:1rem;font-weight:600;line-height:1.3}.lms-course-card-body>small{color:var(--ui-text-3);font-size:.8rem}.lms-course-card-empty{color:var(--cover-accent,var(--ui-brand));align-items:center;gap:6px;margin-top:6px;font-size:.8rem;font-weight:500;display:inline-flex}.lms-type-tally{flex-wrap:wrap;gap:8px;margin-top:8px;display:flex}.lms-type-tally>span{color:var(--ui-text-2);font-variant-numeric:tabular-nums;align-items:center;gap:5px;font-size:.78rem;font-weight:600;display:inline-flex}.lms-course-card-foot{border-top:1px solid var(--ui-border);justify-content:space-between;align-items:center;gap:10px;padding:10px 16px 14px;display:flex}.lms-course-card-foot>small{color:var(--ui-text-3);font-size:.8rem}.lms-course-card-go{color:var(--cover-accent,var(--ui-brand));align-items:center;gap:4px;font-size:.82rem;font-weight:600;display:inline-flex}.lms-course-card.is-empty{opacity:.78}.lms-overall{border:1px solid var(--ui-border);background:var(--ui-surface);box-shadow:var(--ui-shadow-xs);border-radius:999px;align-items:center;gap:12px;padding:10px 16px 10px 10px;display:flex}.lms-overall>span{line-height:1.25;display:grid}.school-app .ui-content .lms-overall strong{font-size:.95rem}.lms-overall small{color:var(--ui-text-3);font-size:.78rem}.school-app .ui-content .lms-resume{border-radius:var(--ui-radius-xl);background:var(--cover);box-shadow:var(--ui-shadow-sm);color:#fff;transition:transform .18s var(--ui-ease), box-shadow .18s;flex-wrap:wrap;align-items:center;gap:14px 18px;padding:18px 22px;text-decoration:none;display:flex}.school-app .ui-content .lms-resume:hover{box-shadow:var(--ui-shadow-md);transform:translateY(-1px)}.lms-resume-icon{background:#ffffff29;border-radius:14px;flex:none;place-items:center;width:52px;height:52px;display:grid}.lms-resume-copy{flex:260px;gap:2px;min-width:0;display:grid}.lms-resume-kicker{color:#ffffffb8;letter-spacing:.05em;text-transform:uppercase;font-size:.74rem;font-weight:600}.school-app .ui-content .lms-resume-copy strong{color:#fff;font-size:1.15rem;font-weight:600}.lms-resume-copy small{color:#ffffffd1;font-size:.86rem}.school-app .ui-content .lms-resume .ui-button--light{color:var(--ui-text);border:0;font-weight:600}.lms-mini-courses{gap:4px;display:grid}.lms-mini-courses--padded{padding:12px 20px 16px}.lms-mini-course{border-radius:var(--ui-radius);color:var(--ui-text);align-items:center;gap:12px;margin:0 -8px;padding:8px;text-decoration:none;display:flex}a.lms-mini-course:hover{background:var(--ui-surface-2)}.lms-mini-course-mark{background:var(--cover);color:#fff;letter-spacing:.02em;border-radius:10px;flex:none;place-items:center;width:38px;height:38px;font-size:.72rem;font-weight:700;display:grid}.lms-mini-course-copy{flex:1;gap:4px;min-width:0;display:grid}.school-app .ui-content .lms-mini-course-copy strong{text-overflow:ellipsis;white-space:nowrap;font-size:.875rem;font-weight:600;overflow:hidden}.lms-mini-course-copy .lms-inline-progress .ui-progress--sm{flex:1;width:auto}.school-app .ui-content .lms-course-link{border-radius:var(--ui-radius-lg);background:var(--cover);color:#fff;flex-wrap:wrap;align-items:center;gap:12px;padding:12px 16px;text-decoration:none;display:flex}.lms-course-link>span:not(.lms-course-link-go){flex:220px;display:grid}.lms-course-link small{color:#ffffffbf;letter-spacing:.05em;text-transform:uppercase;font-size:.74rem;font-weight:600}.school-app .ui-content .lms-course-link strong{color:#fff;font-size:.95rem}.lms-course-link-go{border-radius:var(--ui-radius);background:#ffffff2e;align-items:center;gap:6px;padding:6px 12px;font-size:.82rem;font-weight:600;display:inline-flex}.lms-builder-layout{align-items:start}.lms-builder{gap:14px;display:grid}.school-app .ui-content .lms-unit{border:1px solid var(--ui-border);border-radius:var(--ui-radius-lg);background:var(--ui-surface);box-shadow:var(--ui-shadow-xs);transition:box-shadow .15s,opacity .15s}.lms-unit.is-hidden{background:repeating-linear-gradient(-45deg, var(--ui-surface), var(--ui-surface) 10px, var(--ui-surface-2) 10px, var(--ui-surface-2) 20px)}.lms-unit.is-dragging,.lms-item.is-dragging{opacity:.45}.lms-unit.is-drop-target{box-shadow:0 0 0 2px var(--ui-brand-ring)}.lms-unit-head{cursor:default;align-items:center;gap:10px;padding:12px 12px 12px 8px;list-style:none;display:flex}.lms-unit-head::-webkit-details-marker{display:none}.lms-unit-toggle{min-width:0;min-height:0;box-shadow:none;color:inherit;font:inherit;text-align:left;cursor:pointer;background:0 0;border:0;flex:1;justify-content:start;justify-items:start;gap:1px;padding:0;display:grid}.lms-unit-toggle:hover{box-shadow:none;background:0 0;transform:none}.lms-unit-kicker{color:var(--ui-text-3);letter-spacing:.07em;text-transform:uppercase;font-size:.7rem;font-weight:600}.school-app .ui-content .lms-unit-toggle strong{max-width:100%;color:var(--ui-text);text-overflow:ellipsis;white-space:nowrap;font-size:1rem;font-weight:600;overflow:hidden}.lms-unit-chips{flex-wrap:wrap;justify-content:flex-end;gap:6px;display:flex}.lms-unit-body{padding:0 16px 14px 44px}.lms-unit.is-collapsed .lms-unit-body{display:none}.lms-unit-summary{color:var(--ui-text-3);margin:-4px 0 10px;font-size:.86rem;line-height:1.5}.lms-grip{width:28px;height:28px;min-height:0;box-shadow:none;color:var(--ui-text-3);cursor:grab;touch-action:none;background:0 0;border:0;border-radius:6px;flex:none;place-items:center;padding:0;display:grid}.lms-grip:hover{background:var(--ui-surface-3);color:var(--ui-text);box-shadow:none;transform:none}.lms-grip:active{cursor:grabbing}.lms-item-list{gap:6px;min-height:8px;margin:0;padding:0;list-style:none;display:grid}.lms-item{border:1px solid var(--ui-border);border-radius:var(--ui-radius);background:var(--ui-surface);align-items:center;gap:10px;padding:8px 8px 8px 4px;transition:border-color .12s,background .12s;display:flex}.lms-item:hover{border-color:var(--ui-border-strong)}.lms-item.is-hidden{background:var(--ui-surface-2);border-style:dashed}.lms-item.is-hidden .lms-item-body strong{color:var(--ui-text-3)}.lms-item-body{min-width:0;color:inherit;flex:1;gap:1px;text-decoration:none;display:grid}.school-app .ui-content .lms-item-body strong{color:var(--ui-text);text-overflow:ellipsis;white-space:nowrap;font-size:.9rem;font-weight:600;overflow:hidden}.lms-item-body:hover strong{color:var(--ui-brand)!important}.lms-item-body small{color:var(--ui-text-3);text-overflow:ellipsis;white-space:nowrap;font-size:.78rem;overflow:hidden}.lms-item-body .is-danger{color:var(--ui-danger)}.lms-item-chips{gap:6px;display:flex}.lms-item-chips .status-pill{text-decoration:none}.lms-item-reach{align-items:center;gap:6px;display:inline-flex}.lms-item-reach .ui-progress--sm{width:54px;margin:0}.lms-item-reach small{min-width:34px;color:var(--ui-text-3);font-variant-numeric:tabular-nums;font-size:.74rem}.lms-visibility{width:30px;height:30px;min-height:30px}.lms-item .lms-eye-off,.lms-item:not(.is-hidden) .lms-draft-chip,.lms-item.is-hidden .lms-eye-on{display:none}.lms-item.is-hidden .lms-eye-off{display:block}.lms-item.is-hidden .lms-visibility{color:var(--ui-warning)}.lms-item .ui-menu .ui-icon-button,.lms-unit-head .ui-menu .ui-icon-button{width:30px;height:30px;min-height:30px}.lms-drop-hint{border:1px dashed var(--ui-border-strong);border-radius:var(--ui-radius);color:var(--ui-text-3);text-align:center;margin:0;padding:14px;font-size:.84rem}.lms-add-button{border:1px dashed var(--ui-border-strong);border-radius:var(--ui-radius);width:100%;min-height:36px;box-shadow:none;color:var(--ui-text-2);font:500 .84rem var(--font-sans);cursor:pointer;background:0 0;justify-content:center;align-items:center;gap:6px;margin-top:8px;display:inline-flex}.lms-add-button:hover{border-color:var(--ui-brand);background:var(--ui-brand-soft);color:var(--ui-brand);box-shadow:none;transform:none}.lms-add-unit{border:2px dashed var(--ui-border-strong);border-radius:var(--ui-radius-lg);width:100%;min-height:56px;box-shadow:none;color:var(--ui-text-2);font:600 .9rem var(--font-sans);cursor:pointer;background:0 0;justify-content:center;align-items:center;gap:8px;display:inline-flex}.lms-add-unit:hover{border-color:var(--ui-brand);background:var(--ui-brand-soft);color:var(--ui-brand);box-shadow:none;transform:none}.lms-save-state{color:var(--ui-text-3);text-align:right;margin:0;font-size:.8rem}.lms-save-state.is-error{color:var(--ui-danger)}.lms-empty-hero{border:2px dashed var(--ui-border-strong);border-radius:var(--ui-radius-xl);background:var(--ui-surface);text-align:center;justify-items:center;gap:12px;padding:36px 24px;display:grid}.lms-empty-hero-icon{background:var(--ui-brand-soft);width:60px;height:60px;color:var(--ui-brand);border-radius:18px;place-items:center;display:grid}.school-app .ui-content .lms-empty-hero h3{margin:0;font-size:1.15rem}.lms-steps{counter-reset:step;text-align:left;grid-template-columns:repeat(auto-fit,minmax(170px,1fr));gap:12px;width:100%;max-width:680px;margin:4px 0 8px;padding:0;list-style:none;display:grid}.lms-steps li{border-radius:var(--ui-radius);background:var(--ui-surface-2);counter-increment:step;gap:2px;padding:12px 12px 12px 44px;display:grid;position:relative}.lms-steps li:before{content:counter(step);background:var(--ui-brand);color:#fff;border-radius:999px;place-items:center;width:22px;height:22px;font-size:.74rem;font-weight:700;display:grid;position:absolute;top:12px;left:12px}.lms-steps strong{font-size:.875rem}.lms-steps span{color:var(--ui-text-3);font-size:.8rem;line-height:1.4}.lms-glance{grid-template-columns:1fr 1fr;gap:8px;margin:0 0 12px;display:grid}.lms-glance>div{border-radius:var(--ui-radius);background:var(--ui-surface-2);gap:2px;padding:10px 12px;display:grid}.lms-glance dt{color:var(--ui-text-3);font-size:.74rem;font-weight:500}.lms-glance dd{color:var(--ui-text);font-variant-numeric:tabular-nums;margin:0;font-size:1.15rem;font-weight:600}.lms-glance dd small{color:var(--ui-text-3);font-size:.78rem;font-weight:500}.lms-glance .is-warning dd{color:var(--ui-warning)}.lms-side-link{border-radius:var(--ui-radius);color:var(--ui-text-2);align-items:center;gap:10px;margin:0 -8px;padding:8px;font-size:.86rem;font-weight:500;text-decoration:none;display:flex}.lms-side-link span{flex:1}.lms-side-link:hover{background:var(--ui-surface-2);color:var(--ui-brand)}.lms-announcements{gap:10px;display:grid}.lms-announcement{border-left:3px solid var(--ui-border-strong);border-radius:0 var(--ui-radius) var(--ui-radius) 0;background:var(--ui-surface-2);gap:4px;padding:10px 12px;display:grid}.lms-announcement.is-pinned{border-left-color:var(--ui-warning);background:var(--ui-warning-bg)}.lms-announcement header{justify-content:space-between;align-items:flex-start;gap:8px;display:flex}.school-app .ui-content .lms-announcement strong{align-items:center;gap:5px;font-size:.875rem;display:inline-flex}.lms-announcement p{color:var(--ui-text-2);margin:0;font-size:.84rem;line-height:1.5}.lms-announcement small{color:var(--ui-text-3);font-size:.74rem}.school-app .ui-content .lms-tip{background:var(--ui-brand-soft);border-color:var(--ui-brand-tint);color:var(--ui-brand);gap:12px;display:flex}.lms-tip>div{color:var(--ui-text-2);gap:4px;font-size:.84rem;display:grid}.school-app .ui-content .lms-tip strong{color:var(--ui-text)}.lms-tip ul{gap:4px;margin:0;padding-left:16px;display:grid}.lms-tip p{margin:0}.lms-tip .ui-icon{vertical-align:-1px;display:inline}.lms-add-grid{gap:8px;display:grid}.school-app .lms-add-tile{border:1px solid var(--ui-border);border-radius:var(--ui-radius-lg);background:var(--ui-surface);color:var(--ui-text);align-items:center;gap:14px;padding:12px 14px;text-decoration:none;transition:border-color .12s,background .12s,transform .12s;display:flex}.school-app .lms-add-tile:hover{border-color:var(--ui-brand);background:var(--ui-brand-soft);transform:translate(2px)}.lms-add-tile>span:last-child{gap:1px;display:grid}.school-app .lms-add-tile strong{font-size:.92rem;font-weight:600}.lms-add-tile small{color:var(--ui-text-3);font-size:.8rem}.lms-add-tile .lms-type{border-radius:12px;width:42px;height:42px}.lms-attach-row{gap:8px;margin-top:8px;display:flex}.lms-attach-row select{flex:1}.lms-swatches{border:0;flex-wrap:wrap;gap:8px;margin:0;padding:0;display:flex}.lms-swatches legend{width:100%;color:var(--ui-text-2);margin-bottom:6px;font-size:.8rem;font-weight:500}.lms-swatch{cursor:pointer;position:relative}.lms-swatch input{opacity:0;position:absolute}.lms-swatch span{background:var(--swatch);border-radius:10px;width:36px;height:36px;transition:transform .12s;display:block;box-shadow:inset 0 0 0 1px #0000000f}.lms-swatch input:checked+span{box-shadow:0 0 0 2px var(--ui-surface), 0 0 0 4px var(--ui-text)}.lms-swatch input:focus-visible+span{outline:2px solid var(--ui-brand);outline-offset:4px}.lms-swatch:hover span{transform:scale(1.06)}.lms-toggle-row{border:1px solid var(--ui-border);border-radius:var(--ui-radius);cursor:pointer;align-items:flex-start;gap:10px;padding:12px;display:flex}.lms-toggle-row input{margin-top:3px}.lms-toggle-row>span{gap:2px;display:grid}.lms-toggle-row strong{font-size:.875rem}.lms-toggle-row small{color:var(--ui-text-3);font-size:.8rem}.school-app .slide-over-panel.slide-over-panel--wide{grid-column:1/-1;justify-self:end;width:min(100vw,760px)}.lms-video{aspect-ratio:16/9;border-radius:var(--ui-radius-lg);background:#0b0f1f;margin:0 0 18px;position:relative;overflow:hidden}.lms-video iframe{border:0;width:100%;height:100%;position:absolute;inset:0}.lms-video-preview{max-width:420px}.lms-prose{font-size:1rem;line-height:1.7}.lms-prose img{border-radius:var(--ui-radius);max-width:100%;height:auto}.lms-prose figure{margin:1em 0}.lms-prose figcaption{color:var(--ui-text-3);text-align:center;font-size:.84rem}.lms-completion-head{align-items:center;gap:14px;margin-bottom:12px;display:flex}.lms-completion-head>div{display:grid}.lms-completion-head small{color:var(--ui-text-3);font-size:.8rem}.lms-person-scroll{max-height:420px;overflow-y:auto}.lms-field-pair{grid-template-columns:1fr 1fr;gap:12px;display:grid}.lms-card-split{border-top:1px solid var(--ui-border)!important;margin-top:20px!important;padding-top:16px!important}.lms-sticky-card{top:calc(var(--ui-topbar-height) + 16px);position:sticky}.lms-sort{color:var(--ui-text-3);align-items:center;gap:4px;font-size:.8rem;display:inline-flex}.lms-sort a{color:var(--ui-text-2);border-radius:6px;padding:4px 8px;font-weight:500;text-decoration:none}.lms-sort a:hover{background:var(--ui-surface-3)}.lms-sort a.is-active{background:var(--ui-brand-soft);color:var(--ui-brand)}.lms-matrix-wrap{max-height:70vh;padding:0;overflow:auto}.school-app .ui-content .lms-matrix{border-collapse:separate;border-spacing:0;width:max-content;min-width:100%}.school-app .ui-content .lms-matrix :is(th,td){border-bottom:1px solid var(--ui-border);background:var(--ui-surface);white-space:nowrap;padding:8px 10px}.school-app .ui-content .lms-matrix thead th{z-index:2;background:var(--ui-surface-2);vertical-align:bottom;position:sticky;top:0}.school-app .ui-content .lms-matrix tfoot :is(th,td){z-index:2;border-top:1px solid var(--ui-border-strong);background:var(--ui-surface-2);color:var(--ui-text-2);font-size:.78rem;font-weight:600;position:sticky;bottom:0}.school-app .ui-content .lms-matrix .lms-matrix-name{z-index:3;border-right:1px solid var(--ui-border);text-align:left;min-width:220px;position:sticky;left:0}.school-app .ui-content .lms-matrix :is(tbody,tfoot) .lms-matrix-name{text-transform:none;letter-spacing:0;font-weight:400}.school-app .ui-content .lms-matrix thead .lms-matrix-name,.school-app .ui-content .lms-matrix tfoot .lms-matrix-name{z-index:4;font-weight:600}.school-app .ui-content .lms-matrix tbody tr:hover :is(td,th){background:var(--ui-surface-2)}.lms-matrix-col{min-width:72px;max-width:120px;text-align:center!important}.lms-matrix-col a{color:var(--ui-text-2);letter-spacing:0;text-transform:none;white-space:normal;justify-items:center;gap:4px;font-size:.7rem;font-weight:500;text-decoration:none;display:grid}.lms-matrix-col a span:last-child{max-width:110px;line-height:1.25}.lms-matrix-col a:hover{color:var(--ui-brand)}.lms-matrix-col>small{color:var(--ui-text-3);text-transform:none;letter-spacing:0;margin-top:2px;font-size:.68rem;font-weight:500;display:block}.lms-matrix-total{min-width:120px}.lms-cell,.lms-cell-total,.lms-grade-cell{text-align:center}.lms-cell .ui-icon{display:inline-block}.lms-cell.is-done{color:var(--ui-success)}.school-app .ui-content .lms-matrix .lms-cell.is-done{background:var(--ui-success-bg)}@supports (color:color-mix(in lab, red, red)){.school-app .ui-content .lms-matrix .lms-cell.is-done{background:color-mix(in srgb, var(--ui-success-bg) 70%, var(--ui-surface))}}.lms-cell.is-overdue{color:var(--ui-danger)}.lms-cell-dot{background:var(--ui-border-strong);border-radius:99px;width:6px;height:6px;display:inline-block}.lms-matrix-last{color:var(--ui-text-3);font-size:.8rem}.lms-matrix-last .is-danger{color:var(--ui-danger)}.lms-unit--pupil{overflow:hidden}.lms-unit--pupil>summary{cursor:pointer;padding:14px 16px}.lms-unit--pupil>summary:hover{background:var(--ui-surface-2)}.lms-unit--pupil .lms-unit-body{padding:0 16px 16px}.lms-unit-badge{background:var(--ui-surface-3);width:36px;height:36px;color:var(--ui-text-2);border-radius:12px;flex:none;place-items:center;font-size:.9rem;font-weight:700;display:grid}.lms-unit-badge.is-done{background:var(--ui-success);color:#fff}.lms-unit-chevron{color:var(--ui-text-3);transition:transform .18s}.lms-unit--pupil[open] .lms-unit-chevron{transform:rotate(180deg)}.lms-unit--pupil .lms-unit-toggle{cursor:pointer}.lms-path{gap:4px;margin:0;padding:0;list-style:none;display:grid;position:relative}.lms-path:before{content:"";background:var(--ui-border);width:2px;position:absolute;top:18px;bottom:18px;left:25px}.lms-path-item{position:relative}.school-app .ui-content .lms-path-link{border-radius:var(--ui-radius);color:inherit;align-items:center;gap:12px;padding:8px;text-decoration:none;display:flex}.school-app .ui-content a.lms-path-link:hover{background:var(--ui-surface-2)}.lms-path-link .lms-type{z-index:1;box-shadow:0 0 0 4px var(--ui-surface);position:relative}.lms-path-copy{flex:1;gap:1px;min-width:0;display:grid}.school-app .ui-content .lms-path-copy strong{color:var(--ui-text);font-size:.9rem;font-weight:600}.lms-path-copy small{color:var(--ui-text-3);font-size:.78rem}.lms-path-copy .is-danger{color:var(--ui-danger);font-weight:500}.lms-path-copy .is-warning{color:var(--ui-warning);font-weight:500}.lms-path-state{color:var(--ui-text-3);font-size:.76rem;font-weight:500}.lms-path-item.is-done .lms-path-state{color:var(--ui-success)}.lms-path-item.is-done .lms-path-copy strong{color:var(--ui-text-2)}.lms-path-item:is(.is-locked,.is-scheduled) .lms-path-link{opacity:.6;cursor:not-allowed}.school-app .ui-content .lms-path-item.is-next .lms-path-link{border:1px solid var(--ui-brand-tint);background:var(--ui-brand-soft)}.lms-path-cta{border-radius:var(--ui-radius);background:var(--ui-brand);color:#fff;white-space:nowrap;align-items:center;gap:4px;padding:6px 12px;font-size:.8rem;font-weight:600;display:inline-flex}.lms-row-title{align-items:center;gap:8px;display:inline-flex}.lms-row-title .lms-type{border-radius:7px;width:26px;height:26px}.lms-player{grid-template-columns:300px minmax(0,1fr);align-items:start;gap:20px;display:grid}.lms-outline{top:calc(var(--ui-topbar-height) + 16px);max-height:calc(100dvh - var(--ui-topbar-height) - 32px);border:1px solid var(--ui-border);border-radius:var(--ui-radius-lg);background:var(--ui-surface);box-shadow:var(--ui-shadow-xs);flex-direction:column;display:flex;position:sticky;overflow:hidden}.school-app .ui-content .lms-outline-course{border-bottom:1px solid var(--ui-border);color:var(--ui-text);align-items:center;gap:12px;padding:14px;text-decoration:none;display:flex}.lms-outline-course:hover{background:var(--ui-surface-2)}.lms-outline-course>span:last-child{min-width:0;display:grid}.school-app .ui-content .lms-outline-course strong{text-overflow:ellipsis;white-space:nowrap;font-size:.9rem;overflow:hidden}.lms-outline-course small{color:var(--ui-text-3);font-size:.76rem}.lms-outline-nav{grid-template-columns:minmax(0,1fr);gap:10px;min-width:0;padding:12px 8px 14px;display:grid;overflow-y:auto}.lms-outline-unit,.lms-outline-unit li{min-width:0}.lms-outline-unit-title{color:var(--ui-text-3);letter-spacing:.06em;text-transform:uppercase;padding:0 8px 4px;font-size:.7rem;font-weight:600;display:block}.lms-outline-unit ol{gap:1px;margin:0;padding:0;list-style:none;display:grid}.school-app .ui-content .lms-outline-link{min-width:0;color:var(--ui-text-2);border-radius:7px;align-items:center;gap:8px;padding:6px 8px;font-size:.84rem;line-height:1.3;text-decoration:none;display:flex;overflow:hidden}.lms-outline-link>span:last-child{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.school-app .ui-content a.lms-outline-link:hover{background:var(--ui-surface-2);color:var(--ui-text)}.school-app .ui-content .lms-outline-link.is-current{background:var(--ui-brand-soft);color:var(--ui-brand);font-weight:600}.lms-outline-link.is-done>span:last-child{color:var(--ui-text-3)}.lms-outline-link:is(.is-locked,.is-scheduled){opacity:.55;cursor:not-allowed}.lms-stage{gap:14px;min-width:0;display:grid}.lms-stage-head{align-items:center;gap:12px;display:flex}.lms-outline-toggle{display:none!important}.lms-crumbs{min-width:0;color:var(--ui-text-3);flex:1;align-items:center;gap:6px;font-size:.82rem;display:flex}.lms-crumbs a{color:var(--ui-text-2);font-weight:500;text-decoration:none}.lms-crumbs a:hover{color:var(--ui-brand)}.lms-crumbs span{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.lms-stage-count{color:var(--ui-text-3);font-variant-numeric:tabular-nums;font-size:.8rem}.school-app .ui-content .lms-sheet{border:1px solid var(--ui-border);border-top:4px solid var(--cover-accent,var(--ui-brand));border-radius:var(--ui-radius-lg);background:var(--ui-surface);box-shadow:var(--ui-shadow-xs);padding:clamp(18px,3vw,36px)}.lms-sheet-head{align-items:center;gap:14px;margin-bottom:20px;display:flex}.lms-sheet-head>div{flex:1;gap:2px;min-width:0;display:grid}.lms-sheet-kicker{color:var(--ui-text-3);letter-spacing:.06em;text-transform:uppercase;font-size:.74rem;font-weight:600}.school-app .ui-content .lms-sheet-head h2{color:var(--ui-text);letter-spacing:-.02em;margin:0;font-size:clamp(1.3rem,2.2vw,1.7rem);font-weight:650;line-height:1.2}.lms-stage-foot{z-index:5;background:linear-gradient(to top, var(--ui-bg) 70%, transparent);grid-template-columns:auto 1fr auto;align-items:center;gap:12px;padding:12px 0;display:grid;position:sticky;bottom:0}.lms-stage-primary{text-align:center;justify-content:center;display:flex}.lms-complete{background:var(--ui-success)!important;border-color:var(--ui-success)!important;min-height:42px!important;padding:0 20px!important}.lms-complete:hover{filter:brightness(1.05)}.secondary-action.is-disabled{opacity:.5;cursor:not-allowed}.lms-facts{flex-wrap:wrap;gap:8px;margin:0 0 18px;padding:0;list-style:none;display:flex}.lms-facts li{border-radius:var(--ui-radius);background:var(--ui-surface-2);color:var(--ui-text-2);align-items:center;gap:6px;padding:6px 10px;font-size:.84rem;display:inline-flex}.lms-handin{border:1px solid var(--ui-border);border-radius:var(--ui-radius-lg);background:var(--ui-surface-2);gap:12px;margin-top:24px;padding:18px;display:grid}.school-app .ui-content .lms-handin h3{margin:0;font-size:1rem}.lms-score-banner{border-radius:var(--ui-radius-lg);background:var(--ui-brand-soft);flex-wrap:wrap;align-items:baseline;gap:6px 14px;padding:14px 18px;display:flex}.lms-score-banner>span{color:var(--ui-text-2);font-size:.84rem;font-weight:500}.school-app .ui-content .lms-score-banner strong{color:var(--ui-text);letter-spacing:-.02em;font-variant-numeric:tabular-nums;font-size:1.8rem;font-weight:650}.lms-score-banner strong small{color:var(--ui-text-3);font-size:.55em}.school-app .ui-content .lms-score-banner a{color:var(--ui-brand);text-underline-offset:3px;margin-left:auto;font-size:.84rem;font-weight:600;text-decoration:underline}.lms-score-banner.is-pass{background:var(--ui-success-bg)}.lms-score-banner.is-fail{background:var(--ui-warning-bg)}.lms-prompt{border-left:4px solid var(--cover-accent,var(--ui-brand));border-radius:0 var(--ui-radius) var(--ui-radius) 0;background:var(--ui-surface-2);padding:16px 18px}.lms-quiz-facts{grid-template-columns:repeat(auto-fit,minmax(130px,1fr));gap:10px;margin:0 0 18px;display:grid}.lms-quiz-facts>div{border:1px solid var(--ui-border);border-radius:var(--ui-radius);gap:2px;padding:12px 14px;display:grid}.lms-quiz-facts dt{color:var(--ui-text-3);font-size:.76rem;font-weight:500}.lms-quiz-facts dd{color:var(--ui-text);margin:0;font-size:1.05rem;font-weight:600}.lms-quiz-start{flex-wrap:wrap;align-items:center;gap:12px;margin:18px 0;display:flex}.lms-quiz-start .primary-action{min-height:44px;padding:0 22px;font-size:.95rem}.lms-attempts{gap:6px;margin:0;padding:0;list-style:none;display:grid}.lms-attempts a{border:1px solid var(--ui-border);border-radius:var(--ui-radius);color:var(--ui-text);align-items:center;gap:12px;padding:10px 12px;text-decoration:none;display:flex}.lms-attempts a:hover{border-color:var(--ui-border-strong);background:var(--ui-surface-2)}.lms-attempts a span{font-size:.875rem;font-weight:600}.lms-attempts a small{color:var(--ui-text-3);flex:1;font-size:.8rem}.lms-quiz{gap:16px;width:100%;max-width:860px;margin:0 auto;display:grid}.lms-quiz-bar{top:calc(var(--ui-topbar-height) + 8px);z-index:10;border:1px solid var(--ui-border);border-radius:var(--ui-radius-lg);background:var(--ui-surface);flex-wrap:wrap;align-items:center;gap:10px 18px;padding:12px 16px;display:flex;position:sticky}@supports (color:color-mix(in lab, red, red)){.lms-quiz-bar{background:color-mix(in srgb, var(--ui-surface) 94%, transparent)}}.lms-quiz-bar{box-shadow:var(--ui-shadow-md);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.lms-quiz-bar-title{flex:220px;min-width:0;display:grid}.school-app .ui-content .lms-quiz-bar-title strong{text-overflow:ellipsis;white-space:nowrap;font-size:.95rem;overflow:hidden}.lms-quiz-bar-progress{flex:160px;gap:4px;display:grid}.lms-quiz-bar-progress small{color:var(--ui-text-3);font-size:.76rem}.lms-quiz-bar-progress .ui-progress>span{background:var(--ui-brand);transition:width .3s var(--ui-ease)}.lms-save-pill{color:var(--ui-text-3);font-size:.76rem}.lms-save-pill.is-saving{color:var(--ui-info)}.lms-save-pill.is-error{color:var(--ui-danger)}.lms-timer{background:var(--ui-surface-3);color:var(--ui-text);font-variant-numeric:tabular-nums;border-radius:999px;align-items:center;gap:6px;padding:6px 12px;font-size:.92rem;font-weight:650;display:inline-flex}.lms-timer.is-low{background:var(--ui-warning-bg);color:var(--ui-warning)}.lms-timer.is-critical{background:var(--ui-danger);color:#fff;animation:1s ease-in-out infinite lms-pulse}@keyframes lms-pulse{50%{opacity:.75}}.lms-quiz-dots{flex-wrap:wrap;gap:6px;display:flex}.lms-quiz-dots a{border:1px solid var(--ui-border);background:var(--ui-surface);width:32px;height:32px;color:var(--ui-text-2);border-radius:8px;place-items:center;font-size:.8rem;font-weight:600;text-decoration:none;display:grid}.lms-quiz-dots a:hover{border-color:var(--ui-brand)}.lms-quiz-dots a.is-answered{border-color:var(--ui-brand);background:var(--ui-brand);color:#fff}.lms-questions{gap:14px;margin:0;padding:0;list-style:none;display:grid}.school-app .ui-content .lms-question{border:1px solid var(--ui-border);border-radius:var(--ui-radius-lg);background:var(--ui-surface);box-shadow:var(--ui-shadow-xs);scroll-margin-top:calc(var(--ui-topbar-height) + 90px);gap:14px;padding:20px;display:grid}.lms-question>header{align-items:flex-start;gap:12px;display:flex}.lms-question>header>div{flex:1;gap:4px;min-width:0;display:grid}.lms-question>header small{color:var(--ui-text-3);font-size:.78rem}.lms-q-number{background:var(--ui-brand-soft);width:30px;height:30px;color:var(--ui-brand);border-radius:9px;flex:none;place-items:center;font-size:.82rem;font-weight:700;display:grid}.lms-q-prompt{color:var(--ui-text);margin:0;font-size:1.02rem;font-weight:500;line-height:1.5}.lms-choices{gap:8px;display:grid}.lms-choices--tf{grid-template-columns:1fr 1fr}.school-app .ui-content .lms-choice{border:1.5px solid var(--ui-border);border-radius:var(--ui-radius-lg);background:var(--ui-surface);color:var(--ui-text);cursor:pointer;align-items:center;gap:12px;padding:12px 14px;transition:border-color .12s,background .12s;display:flex;position:relative}.school-app .ui-content label.lms-choice:hover{border-color:var(--ui-border-strong);background:var(--ui-surface-2)}.lms-choice input{opacity:0;pointer-events:none;position:absolute}.lms-choice-key{border:1.5px solid var(--ui-border-strong);width:28px;height:28px;color:var(--ui-text-2);border-radius:8px;flex:none;place-items:center;font-size:.8rem;font-weight:700;display:grid}.lms-choices--tf .lms-choice-key{border-radius:999px}.lms-choice-text{flex:1;font-size:.95rem;line-height:1.45}.lms-choice>small{color:var(--ui-text-3);font-size:.74rem;font-weight:500}.lms-choice.is-right:not(.is-picked)>small{color:var(--ui-success)}.school-app .ui-content .lms-choice:has(input:checked){border-color:var(--ui-brand);background:var(--ui-brand-soft)}.lms-choice:has(input:checked) .lms-choice-key{border-color:var(--ui-brand);background:var(--ui-brand);color:#fff}.lms-choice:has(input:focus-visible){outline:2px solid var(--ui-brand);outline-offset:2px}.lms-choices.is-review .lms-choice{cursor:default}.school-app .ui-content .lms-choices.is-review .lms-choice.is-picked{border-color:var(--ui-brand)}.school-app .ui-content .lms-choices.is-review .lms-choice.is-right{border-color:var(--ui-success);background:var(--ui-success-bg)}.lms-choices.is-review .lms-choice.is-right .lms-choice-key{border-color:var(--ui-success);background:var(--ui-success);color:#fff}.school-app .ui-content .lms-choices.is-review .lms-choice.is-wrong{border-color:var(--ui-danger);background:var(--ui-danger-bg)}.lms-choices.is-review .lms-choice.is-wrong .lms-choice-key{border-color:var(--ui-danger);background:var(--ui-danger);color:#fff}.school-app .ui-content .lms-short{min-height:46px;font-size:1rem}.lms-quiz-foot{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;padding:16px 0 8px;display:flex}.lms-quiz-foot p{align-items:center;gap:6px;margin:0;font-size:.84rem;display:inline-flex}.lms-quiz-foot .primary-action{min-height:46px;padding:0 24px;font-size:.95rem}.lms-question.is-correct{border-left:4px solid var(--ui-success)}.lms-question.is-partial{border-left:4px solid var(--ui-warning)}.lms-question.is-wrong{border-left:4px solid var(--ui-danger)}.lms-q-verdict{white-space:nowrap;border-radius:999px;align-items:center;gap:4px;padding:4px 10px;font-size:.78rem;font-weight:600;display:inline-flex}.is-correct .lms-q-verdict{background:var(--ui-success-bg);color:var(--ui-success)}.is-partial .lms-q-verdict{background:var(--ui-warning-bg);color:var(--ui-warning)}.is-wrong .lms-q-verdict{background:var(--ui-danger-bg);color:var(--ui-danger)}.lms-short-answer{color:var(--ui-text-2);margin:0}.lms-accepted{color:var(--ui-success);align-items:center;gap:6px;margin:0;font-size:.86rem;font-weight:500;display:flex}.lms-explanation{border-radius:var(--ui-radius);background:var(--ui-info-bg);color:var(--ui-text-2);align-items:flex-start;gap:8px;margin:0;padding:10px 12px;font-size:.86rem;line-height:1.5;display:flex}.lms-explanation .ui-icon{color:var(--ui-info);margin-top:3px}.lms-result-page{width:100%;max-width:860px;margin:0 auto}.school-app .ui-content .lms-result{border-radius:var(--ui-radius-xl);background:var(--cover);box-shadow:var(--ui-shadow-md);color:#fff;flex-wrap:wrap;align-items:center;gap:24px 32px;padding:28px 32px;display:flex}.lms-result-copy{flex:320px;gap:8px;display:grid}.lms-result-copy .lms-sheet-kicker{color:#ffffffbf}.school-app .ui-content .lms-result h2{color:#fff;letter-spacing:-.025em;margin:0;font-size:clamp(1.6rem,3vw,2.1rem);font-weight:700}.lms-result p{color:#ffffffe6;margin:0;font-size:.95rem;line-height:1.55}.school-app .ui-content .lms-result p strong{color:#fff}.lms-result-actions{flex-wrap:wrap;gap:8px;margin-top:8px;display:flex}.lms-ghost-button{border-radius:var(--ui-radius);min-height:38px;box-shadow:none;color:#fff;font:600 .875rem var(--font-sans);cursor:pointer;background:0 0;border:1px solid #fff6;align-items:center;gap:6px;padding:0 14px;display:inline-flex}.lms-ghost-button:hover{box-shadow:none;background:#ffffff1f;transform:none}.lms-review{gap:14px;display:grid}.lms-qb{gap:12px;display:grid}.lms-qb-list{counter-reset:qb;gap:12px;margin:0;padding:0;list-style:none;display:grid}.school-app .ui-content .lms-qb-card{border:1px solid var(--ui-border);border-radius:var(--ui-radius-lg);background:var(--ui-surface);box-shadow:var(--ui-shadow-xs);counter-increment:qb;gap:12px;padding:16px;display:grid}.lms-qb-card:focus-within{border-color:var(--ui-brand-tint);box-shadow:0 0 0 3px var(--ui-brand-soft)}.lms-qb-head{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.lms-qb-head .lms-q-number:before{content:counter(qb)}.lms-qb-head select{min-width:190px;width:auto!important}.lms-qb-points{color:var(--ui-text-3);align-items:center;gap:6px;margin-left:auto;font-size:.8rem;display:inline-flex}.school-app .ui-content .lms-qb-points input{width:74px}.lms-qb-tools{gap:2px;display:inline-flex}.lms-qb-tools button{width:30px;height:30px;min-height:30px}.lms-qb-options{gap:6px;margin:0;padding:0;list-style:none;display:grid}.lms-qb-option{align-items:center;gap:8px;display:flex}.lms-qb-option label{border:1px solid var(--ui-border);border-radius:var(--ui-radius);min-height:38px;color:var(--ui-text-3);cursor:pointer;white-space:nowrap;align-items:center;gap:6px;padding:0 10px;font-size:.78rem;display:inline-flex}.lms-qb-option label:has(input:checked){border-color:var(--ui-success-border);background:var(--ui-success-bg);color:var(--ui-success);font-weight:600}.lms-qb-option input[type=text]{flex:1}.lms-qb-add-option{justify-self:start}.lms-qb-tf{gap:8px;display:flex}.lms-qb-tf label{border:1.5px solid var(--ui-border);border-radius:var(--ui-radius);cursor:pointer;flex:1;justify-content:center;align-items:center;gap:8px;min-height:42px;font-weight:600;display:flex}.lms-qb-tf label:has(input:checked){border-color:var(--ui-success);background:var(--ui-success-bg);color:var(--ui-success)}.lms-qb-hint{color:var(--ui-text-3);margin:0;font-size:.78rem}.lms-qb-more summary{color:var(--ui-text-2);cursor:pointer;font-size:.82rem;font-weight:500}.lms-qb-more[open] summary{margin-bottom:8px}.lms-qb-empty{border:2px dashed var(--ui-border-strong);border-radius:var(--ui-radius-lg);color:var(--ui-text-3);text-align:center;justify-items:center;gap:4px;padding:28px;display:grid}.lms-qb-empty .ui-icon{color:var(--ui-brand)}.school-app .ui-content .lms-qb-empty strong{color:var(--ui-text)}.lms-qb-add{z-index:5;border:1px solid var(--ui-border);border-radius:var(--ui-radius-lg);background:var(--ui-surface);flex-wrap:wrap;align-items:center;gap:8px;padding:10px 12px;display:flex;position:sticky;bottom:70px}@supports (color:color-mix(in lab, red, red)){.lms-qb-add{background:color-mix(in srgb, var(--ui-surface) 94%, transparent)}}.lms-qb-add{box-shadow:var(--ui-shadow-md);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.lms-qb-add>span{color:var(--ui-text-3);margin-right:4px;font-size:.8rem;font-weight:600}.lms-qb-total{color:var(--ui-text-3);align-self:center;margin-right:auto;font-size:.84rem}.lms-qb-card.is-invalid{border-color:var(--ui-danger)}.lms-qb-error{color:var(--ui-danger);margin:0;font-size:.8rem;font-weight:500}.lms-analysis,.lms-analysis-card{gap:12px;display:grid}.lms-analysis-card>header{align-items:flex-start;gap:12px;display:flex}.lms-analysis-card>header>div{flex:1;gap:2px;display:grid}.lms-analysis-card>header small{color:var(--ui-text-3);font-size:.78rem}.lms-rate{color:var(--ui-text);font-variant-numeric:tabular-nums;justify-items:end;font-size:1.3rem;font-weight:700;line-height:1;display:grid}.lms-rate small{color:var(--ui-text-3);font-size:.7rem;font-weight:500}.lms-rate.is-low{color:var(--ui-danger)}.lms-rate.is-high{color:var(--ui-success)}.lms-distribution{gap:6px;margin:0;padding:0;list-style:none;display:grid}.lms-distribution li{grid-template-columns:minmax(120px,1.2fr) 2fr 30px;align-items:center;gap:12px;font-size:.86rem;display:grid}.lms-distribution-label{color:var(--ui-text-2);align-items:center;gap:6px;display:inline-flex}.lms-distribution li.is-correct .lms-distribution-label{color:var(--ui-success);font-weight:600}.lms-distribution-bar{background:var(--ui-surface-3);border-radius:99px;height:10px;overflow:hidden}.lms-distribution-bar span{border-radius:inherit;background:var(--ui-text-3);height:100%;display:block}.lms-distribution li.is-correct .lms-distribution-bar span{background:var(--ui-success)}.lms-distribution small{color:var(--ui-text-3);text-align:right;font-variant-numeric:tabular-nums}.lms-attempt-review{border-bottom:1px solid var(--ui-border);gap:12px;margin-bottom:20px;padding-bottom:20px;display:grid}.lms-attempt-review:last-child{border-bottom:0}.lms-attempt-review>header{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.lms-attempt-review>header span:not(.lms-grade){color:var(--ui-text-3);flex:1;font-size:.82rem}.lms-answer-list{gap:6px;margin:0;padding:0;list-style:none;display:grid}.lms-answer-list li{border-radius:var(--ui-radius);background:var(--ui-surface-2);align-items:flex-start;gap:10px;padding:8px 10px;display:flex}.lms-answer-list li>div{gap:2px;display:grid}.lms-answer-list strong{font-size:.86rem;font-weight:500}.lms-answer-list small{color:var(--ui-text-3);font-size:.78rem}.lms-answer-mark{border-radius:999px;flex:none;place-items:center;width:22px;height:22px;display:grid}.is-correct>.lms-answer-mark{background:var(--ui-success);color:#fff}.is-partial>.lms-answer-mark{background:var(--ui-warning);color:#fff}.is-wrong>.lms-answer-mark{background:var(--ui-danger);color:#fff}.lms-attempt-reset{justify-content:flex-end;display:flex}.lms-thread{gap:14px;margin-top:20px;display:grid}.lms-compose{border:1px solid var(--ui-border);border-radius:var(--ui-radius-lg);background:var(--ui-surface-2);gap:12px;padding:14px;display:flex}.lms-compose>div{flex:1;gap:8px;display:grid}.lms-compose-foot{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:8px;display:flex}.lms-compose-foot small{font-size:.76rem}.lms-thread-head h3{margin:0;font-size:.95rem}.lms-post{gap:12px;display:flex}.lms-post .ui-avatar.is-teacher{background:var(--ui-brand);color:#fff}.lms-post-main{border-bottom:1px solid var(--ui-border);flex:1;gap:6px;min-width:0;padding-bottom:14px;display:grid}.lms-post--reply .lms-post-main{border-bottom:0;padding-bottom:0}.lms-post-main>header{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.school-app .ui-content .lms-post-main>header strong{font-size:.875rem}.lms-post-main time{color:var(--ui-text-3);font-size:.76rem}.lms-post-main>header form{margin-left:auto}.lms-post-main>p{color:var(--ui-text-2);overflow-wrap:anywhere;margin:0;font-size:.92rem;line-height:1.6}.lms-post--reply{border-radius:var(--ui-radius);background:var(--ui-surface-2);margin-top:6px;padding:10px 12px}.lms-post--reply .ui-avatar{width:26px;height:26px;font-size:.66rem}.lms-reply summary{color:var(--ui-brand);cursor:pointer;justify-self:start;font-size:.8rem;font-weight:600;list-style:none}.lms-reply summary::-webkit-details-marker{display:none}.lms-reply form{gap:8px;margin-top:8px;display:grid}.lms-reply form button{justify-self:end}@media (width<=1100px){.lms-player{grid-template-columns:minmax(0,1fr)}.lms-outline{z-index:70;width:min(86vw,320px);max-height:none;transition:transform .22s var(--ui-ease);border-radius:0;position:fixed;top:0;bottom:0;left:0;transform:translate(-105%)}.lms-player.is-outline-open .lms-outline{box-shadow:var(--ui-shadow-lg);transform:none}.lms-outline-toggle{display:inline-flex!important}}@media (width<=760px){.school-app .ui-content .lms-cover{padding:20px}.lms-cover:after{display:none}.lms-unit-body{padding:0 10px 12px}.lms-unit-head{flex-wrap:wrap}.lms-unit-chips{order:3;justify-content:flex-start;width:100%;padding-left:38px}.lms-item{flex-wrap:wrap}.lms-item-body{flex-basis:calc(100% - 80px)}.lms-item-chips,.lms-item-reach{margin-left:70px}.lms-stage-foot{grid-template-columns:1fr 1fr}.lms-stage-primary{grid-area:1/1/auto/-1}.lms-stage-foot>a:last-child,.lms-stage-foot>span:last-child{justify-self:end}.lms-choices--tf{grid-template-columns:1fr}.lms-distribution li{grid-template-columns:1fr 70px 24px}.lms-field-pair{grid-template-columns:1fr}.lms-qb-points{margin-left:0}.lms-quiz-bar{top:calc(var(--ui-topbar-height) + 4px)}.lms-sticky-card{position:static}.school-app .ui-content .lms-result{text-align:center;justify-content:center;padding:22px}.lms-result-actions{justify-content:center}.lms-matrix .lms-matrix-name{min-width:160px!important}}@media print{.lms-outline,.lms-stage-foot,.lms-quiz-bar,.lms-quiz-dots{display:none!important}.lms-player{display:block}}.ui-toast--warning{border-left:3px solid var(--ui-warning)}.ui-toast--error{border-left:3px solid var(--ui-danger)}.rc-journey .ui-bar{color:inherit;text-decoration:none}.rc-journey .ui-bar-label{justify-items:center;line-height:1.25;display:grid}.rc-journey .ui-bar-label small{color:var(--ui-text-3);font-size:.66rem;font-weight:400}.rc-jump{flex-wrap:wrap;align-items:center;gap:6px;display:flex}.rc-order{border:1px solid var(--ui-border);background:var(--ui-surface-3);border-radius:10px;gap:2px;margin-right:12px;padding:3px;display:inline-flex}.school-app .ui-content .rc-jump .rc-order a{background:0 0;border:0;border-radius:7px;min-height:26px}.school-app .ui-content .rc-jump .rc-order a.is-active{background:var(--ui-surface);box-shadow:var(--ui-shadow-xs);color:var(--ui-text);font-weight:600}.rc-jump>span:not(.rc-order){color:var(--ui-text-3);margin-right:4px;font-size:.8rem;font-weight:500}.school-app .ui-content .rc-jump a{border:1px solid var(--ui-border);background:var(--ui-surface);min-height:30px;color:var(--ui-text-2);border-radius:999px;align-items:center;padding:0 12px;font-size:.8rem;font-weight:500;text-decoration:none;display:inline-flex}.school-app .ui-content .rc-jump a:hover{border-color:var(--ui-brand);background:var(--ui-brand-soft);color:var(--ui-brand)}.rc-band{background:var(--ui-surface-3);min-height:20px;color:var(--ui-text-2);white-space:nowrap;border-radius:999px;align-items:center;padding:0 7px;font-size:.7rem;font-weight:600;display:inline-flex}.rc-band.is-distinction{background:var(--ui-success-bg);color:var(--ui-success)}.rc-band.is-merit{background:var(--ui-info-bg);color:var(--ui-info)}.rc-band.is-credit{color:#6d28d9;background:#f3f0ff}.rc-band.is-pass{background:var(--ui-warning-bg);color:var(--ui-warning)}.rc-band.is-fail{background:var(--ui-danger-bg);color:var(--ui-danger)}.school-app .ui-content .rc-grade{border:1px solid var(--ui-border);border-radius:var(--ui-radius-lg);background:var(--ui-surface);box-shadow:var(--ui-shadow-xs);scroll-margin-top:calc(var(--ui-topbar-height) + 16px);overflow:hidden}.rc-grade[open]{box-shadow:var(--ui-shadow-sm)}.rc-grade-head{cursor:pointer;flex-wrap:wrap;align-items:center;gap:12px 16px;padding:14px 18px;list-style:none;display:flex}.rc-grade-head::-webkit-details-marker{display:none}.rc-grade-head:hover{background:var(--ui-surface-2)}.rc-grade-badge{background:var(--ui-brand);color:#fff;border-radius:14px;flex:none;place-content:center;justify-items:center;width:52px;height:52px;font-size:1.35rem;font-weight:700;line-height:1;display:grid}.rc-grade-badge small{color:#ffffffb3;letter-spacing:.08em;text-transform:uppercase;margin-bottom:2px;font-size:.58rem;font-weight:600}.rc-grade:not([open]) .rc-grade-badge{background:var(--ui-brand-tint);color:var(--ui-brand)}.rc-grade:not([open]) .rc-grade-badge small{color:var(--ui-brand);opacity:.7}.rc-grade-title{flex:220px;gap:2px;min-width:0;display:grid}.school-app .ui-content .rc-grade-title strong{color:var(--ui-text);font-size:1.08rem;font-weight:600}.rc-grade-title small{color:var(--ui-text-3);font-size:.82rem}.rc-grade-stats{align-items:center;gap:14px;margin-left:auto;display:flex}.rc-grade-average{justify-items:end;gap:3px;display:grid}.school-app .ui-content .rc-grade-average strong{color:var(--ui-text);letter-spacing:-.02em;font-variant-numeric:tabular-nums;font-size:1.35rem;font-weight:650;line-height:1}.rc-change{color:var(--ui-text-3);white-space:nowrap;font-size:.78rem;font-weight:600}.rc-change.is-up{color:var(--ui-success)}.rc-change.is-down{color:var(--ui-danger)}.rc-chevron{color:var(--ui-text-3);transition:transform .18s}.rc-grade[open] .rc-chevron{transform:rotate(180deg)}.rc-grade-body{border-top:1px solid var(--ui-border);gap:18px;padding:18px 18px 20px;display:grid}.rc-table-wrap{border:1px solid var(--ui-border);border-radius:var(--ui-radius-lg);overflow-x:auto}.school-app .ui-content .rc-table{border-collapse:collapse;width:100%;min-width:520px}.school-app .ui-content .rc-table :is(th,td){border-bottom:1px solid var(--ui-border);padding:10px 14px}.school-app .ui-content .rc-table thead th{background:var(--ui-surface-2)}.school-app .ui-content .rc-table thead th small{color:var(--ui-text-3);letter-spacing:0;margin-top:2px;font-size:.64rem;font-weight:500;display:block}.school-app .ui-content .rc-table tbody :is(th,td){background:var(--ui-surface)}.school-app .ui-content .rc-table tbody tr:hover :is(th,td){background:var(--ui-surface-2)}.school-app .ui-content .rc-table tbody th{color:var(--ui-text);letter-spacing:0;text-align:left;text-transform:none;font-size:.875rem;font-weight:500}.school-app .ui-content .rc-table thead a{color:inherit;text-decoration:none}.school-app .ui-content .rc-table thead a:hover{color:var(--ui-brand);text-decoration:underline}.rc-table tbody th small{color:var(--ui-text-3);margin-left:6px;font-size:.72rem;font-weight:500}.school-app .ui-content .rc-table .is-num{text-align:right;white-space:nowrap;font-variant-numeric:tabular-nums}.rc-table td.is-num strong{color:var(--ui-text);margin-right:8px}.school-app .ui-content .rc-table tfoot :is(th,td){background:var(--ui-surface-2);color:var(--ui-text);text-align:right;border-bottom:0;font-size:.84rem;font-weight:600}.school-app .ui-content .rc-table tfoot th{text-align:left}.rc-score{border-radius:6px;justify-content:center;min-width:40px;padding:3px 8px;font-size:.84rem;font-weight:600;display:inline-flex}.rc-score.is-distinction{background:var(--ui-success-bg);color:var(--ui-success)}.rc-score.is-merit{background:var(--ui-info-bg);color:var(--ui-info)}.rc-score.is-credit{color:#6d28d9;background:#f3f0ff}.rc-score.is-pass{background:var(--ui-warning-bg);color:var(--ui-warning)}.rc-score.is-fail{background:var(--ui-danger-bg);color:var(--ui-danger)}.rc-highlights{grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:10px;display:grid}.rc-highlights p{border-radius:var(--ui-radius);align-items:center;gap:10px;margin:0;padding:10px 12px;font-size:.86rem;display:flex}.rc-highlights .is-good{background:var(--ui-success-bg);color:var(--ui-success)}.rc-highlights .is-focus{background:var(--ui-warning-bg);color:var(--ui-warning)}.rc-highlights span{color:var(--ui-text-2)}@media (width<=640px){.rc-grade-head{padding:12px}.rc-grade-stats{justify-content:space-between;width:100%}.rc-grade-body{padding:14px 12px 16px}}.school-app .ui-content .ms-picker{flex-wrap:wrap;align-items:flex-end;gap:12px;display:flex}.ms-picker .ui-field{flex:150px;gap:5px;display:grid}.ms-picker .ui-field:first-child{flex:2 260px}.ms-picker>button{flex:none}.school-app .ui-content .ms-table td{vertical-align:top}.school-app .ui-content .ms-table th small{color:var(--ui-text-3);letter-spacing:0;text-transform:none;margin-top:2px;font-size:.64rem;font-weight:500;display:block}.school-app .ui-content .ms-table input[type=number]{text-align:right;font-variant-numeric:tabular-nums;width:84px;min-height:34px}.school-app .ui-content .ms-table input[name$="[comment]"]{min-width:180px;min-height:34px}.ms-foot{border-top:1px solid var(--ui-border);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;padding:14px 20px;display:flex}.ms-legend{color:var(--ui-text-3);flex-wrap:wrap;gap:6px 14px;font-size:.78rem;display:flex}.ms-legend strong{color:var(--ui-text-2)}.ms-steps{color:var(--ui-text-2);gap:10px;margin:0 0 16px;padding-left:20px;font-size:.88rem;line-height:1.5;list-style:decimal;display:grid}.auto-grade{border-radius:var(--ui-radius);background:var(--ui-surface-2);min-height:34px;color:var(--ui-text);white-space:nowrap;align-items:center;padding:0 10px;font-size:.84rem;font-weight:600;display:inline-flex}.gs-table{gap:6px;max-width:640px;display:grid}.gs-row{grid-template-columns:90px 90px 110px minmax(0,1fr);gap:8px;display:grid}.gs-row--head span{color:var(--ui-text-3);letter-spacing:.05em;text-transform:uppercase;font-size:.74rem;font-weight:600}.school-app .slide-over-panel.slide-over-panel--xwide{grid-column:1/-1;justify-self:end;width:min(100vw,1040px)}.school-app .status-pill.info{border-color:var(--ui-info-border);background:var(--ui-info-bg);color:var(--ui-info)}.csv-import{gap:14px;display:grid}.csv-import-form{gap:14px;margin-top:4px;display:grid}.school-app .csv-drop{border:2px dashed var(--ui-border-strong);border-radius:var(--ui-radius-lg);background:var(--ui-surface-2);color:var(--ui-text-2);text-align:center;cursor:pointer;justify-items:center;gap:6px;padding:26px 16px;transition:border-color .15s,background .15s;display:grid;position:relative}.csv-drop input{opacity:0;cursor:pointer;position:absolute;inset:0}.csv-drop .ui-icon{color:var(--ui-brand)}.school-app .csv-drop strong{color:var(--ui-text);font-size:.95rem}.csv-drop small{color:var(--ui-text-3);font-size:.8rem}.csv-drop:hover,.csv-drop.is-dragging{border-color:var(--ui-brand);background:var(--ui-brand-soft)}.csv-drop.has-file{border-style:solid;border-color:var(--ui-brand-tint);background:var(--ui-brand-soft);padding:14px 16px}.csv-preview{animation:csv-in .2s var(--ui-ease);gap:12px;display:grid}@keyframes csv-in{0%{opacity:0;transform:translateY(4px)}}.csv-summary{border:1px solid var(--ui-border);border-radius:var(--ui-radius-lg);background:var(--ui-surface);grid-template-columns:repeat(5,minmax(0,1fr));display:grid;overflow:hidden}.csv-summary>div{border-right:1px solid var(--ui-border);gap:2px;padding:10px 14px;display:grid}.csv-summary>div:last-child{border-right:0}.csv-summary span{color:var(--ui-text-3);font-size:.74rem;font-weight:500}.school-app .csv-summary strong{color:var(--ui-text);font-variant-numeric:tabular-nums;font-size:1.3rem;font-weight:650}.school-app .csv-summary .is-new strong{color:var(--ui-success)}.school-app .csv-summary .is-update strong{color:var(--ui-warning)}.school-app .csv-summary .is-error strong{color:var(--ui-danger)}.csv-notice{border-radius:var(--ui-radius);padding:10px 14px;font-size:.86rem;font-weight:500}.csv-notice.is-error{border:1px solid var(--ui-danger-border);background:var(--ui-danger-bg);color:var(--ui-danger)}.csv-notice.is-info{border:1px solid var(--ui-info-border);background:var(--ui-info-bg);color:var(--ui-info)}.csv-table-wrap{border:1px solid var(--ui-border);border-radius:var(--ui-radius-lg);max-height:46vh;overflow:auto}.school-app .csv-table{border-collapse:separate;border-spacing:0;width:100%;font-size:.84rem}.school-app .csv-table th{z-index:1;border-bottom:1px solid var(--ui-border);background:var(--ui-surface-2);color:var(--ui-text-3);letter-spacing:.06em;text-align:left;text-transform:uppercase;padding:9px 12px;font-size:.68rem;font-weight:600;position:sticky;top:0}.school-app .csv-table td{border-bottom:1px solid var(--ui-border);color:var(--ui-text-2);vertical-align:middle;padding:8px 12px}.school-app .csv-table tr:last-child td{border-bottom:0}.school-app .csv-table .is-num{text-align:right;font-variant-numeric:tabular-nums}.school-app .csv-table td strong{color:var(--ui-text);font-weight:600;display:block}.csv-table td small{color:var(--ui-text-3);font-size:.74rem}.csv-table td s{color:var(--ui-text-3)}.csv-table .auto-grade{min-height:26px;padding:0 8px;font-size:.78rem}.csv-table code{background:var(--ui-danger-bg);color:var(--ui-danger);border-radius:5px;padding:2px 6px;font-size:.8rem}.school-app .csv-table tr.is-error td{background:var(--ui-danger-bg)}@supports (color:color-mix(in lab, red, red)){.school-app .csv-table tr.is-error td{background:color-mix(in srgb, var(--ui-danger-bg) 70%, var(--ui-surface))}}.school-app .csv-table tr.is-muted td{color:var(--ui-text-3)}.csv-message{color:var(--ui-text-2)}tr.is-error .csv-message{color:var(--ui-danger);font-weight:500}.csv-comment{text-overflow:ellipsis;white-space:nowrap;max-width:240px;overflow:hidden}.csv-missing{margin:0;font-size:.82rem}.csv-actions{border-top:1px solid var(--ui-border);background:var(--ui-surface);flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:12px;padding:12px 0 2px;display:flex;position:sticky;bottom:0}.csv-actions>span{margin-right:auto;font-size:.84rem}.csv-actions .primary-action[disabled]{cursor:not-allowed}@media (width<=640px){.csv-summary{grid-template-columns:repeat(2,minmax(0,1fr))}.csv-summary>div{border-bottom:1px solid var(--ui-border)}}.ms-autosave{background:var(--ui-success-bg);color:var(--ui-success);white-space:nowrap;border-radius:999px;align-items:center;gap:6px;padding:5px 10px;font-size:.8rem;font-weight:600;transition:background .2s,color .2s;display:inline-flex}.ms-autosave.is-saving{background:var(--ui-info-bg);color:var(--ui-info)}.ms-autosave.is-error{background:var(--ui-danger-bg);color:var(--ui-danger)}.ms-row-state{white-space:nowrap;min-height:16px;margin-top:4px;font-size:.74rem;font-weight:500;display:block}.ms-row-state.is-saving{color:var(--ui-info)}.ms-row-state.is-saved{color:var(--ui-success)}.ms-row-state.is-saved:before{content:"✓ "}.ms-row-state.is-error{color:var(--ui-danger);white-space:normal}.ms-row-state .ui-link-button{min-height:0;padding:0 4px;font-size:.74rem}.school-app .ui-content .ms-table tr.is-error td{background:var(--ui-danger-bg)}@supports (color:color-mix(in lab, red, red)){.school-app .ui-content .ms-table tr.is-error td{background:color-mix(in srgb, var(--ui-danger-bg) 60%, var(--ui-surface))}}.audit-feed{gap:0;margin:14px 0 0;padding:0;list-style:none;display:grid;position:relative}.audit-feed:before{content:"";background:var(--ui-border);width:2px;position:absolute;top:8px;bottom:8px;left:6px}.audit-entry{gap:14px;padding:8px 0;display:flex;position:relative}.audit-dot{z-index:1;border:3px solid var(--ui-surface);background:var(--ui-text-3);width:14px;height:14px;box-shadow:0 0 0 1px var(--ui-border);border-radius:999px;flex:none;margin-top:3px;position:relative}.audit-entry--score_saved .audit-dot,.audit-entry--import_completed .audit-dot,.audit-entry--saved_all .audit-dot{background:var(--ui-success)}.audit-entry--score_cleared .audit-dot{background:var(--ui-warning)}.audit-entry--rejected .audit-dot,.audit-entry--import_rejected .audit-dot,.audit-entry--access_denied .audit-dot{background:var(--ui-danger)}.audit-entry--import_previewed .audit-dot,.audit-entry--template_downloaded .audit-dot{background:var(--ui-info)}.audit-entry>div{gap:2px;min-width:0;display:grid}.audit-entry header{color:var(--ui-text-2);flex-wrap:wrap;align-items:center;gap:6px;font-size:.86rem;display:flex}.school-app .audit-entry header strong{color:var(--ui-text)}.audit-entry p{color:var(--ui-text);overflow-wrap:anywhere;margin:0;font-size:.86rem}.audit-entry time{color:var(--ui-text-3);font-size:.74rem}.audit-tag{background:var(--ui-surface-3);color:var(--ui-text-3);border-radius:999px;padding:1px 7px;font-size:.68rem;font-weight:600}.school-app .ui-content .audit-table td{vertical-align:top}.audit-table .audit-summary{max-width:420px;color:var(--ui-text);overflow-wrap:anywhere}.audit-table code{color:var(--ui-text-3);font-size:.72rem}.school-app .ui-content .pending-panel{border:1px solid var(--ui-warning-border);border-radius:var(--ui-radius-lg);background:var(--ui-surface);box-shadow:var(--ui-shadow-sm);overflow:hidden}.pending-head{background:linear-gradient(90deg, var(--ui-warning-bg), var(--ui-surface));border-bottom:1px solid var(--ui-warning-border);flex-wrap:wrap;align-items:center;gap:12px 16px;padding:16px 18px;display:flex}.pending-icon{background:var(--ui-warning);color:#fff;border-radius:12px;flex:none;place-items:center;width:42px;height:42px;display:grid}.pending-head>div{flex:280px;gap:2px;display:grid}.school-app .ui-content .pending-head strong{color:var(--ui-text);font-size:1.02rem}.pending-head small{color:var(--ui-text-2);font-size:.84rem}.pending-list{margin:0;padding:0;list-style:none;display:grid}.pending-item{border-bottom:1px solid var(--ui-border);align-items:flex-start;gap:14px;padding:14px 18px;display:flex}.pending-item:last-child{border-bottom:0}.pending-item-main{flex:1;gap:6px;min-width:0;display:grid}.pending-item-title{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.school-app .ui-content .pending-item-title strong{color:var(--ui-text);font-size:.92rem}.pending-progress{gap:4px;max-width:520px;display:grid}.pending-progress .ui-progress>span{background:var(--ui-warning)}.pending-item.is-ready .pending-progress .ui-progress>span{background:var(--ui-success)}.pending-progress small{color:var(--ui-text-3);font-size:.78rem}.pending-gaps{gap:3px;margin:2px 0 0;padding:0;list-style:none;display:grid}.pending-gaps li{color:var(--ui-warning);align-items:center;gap:6px;font-size:.8rem;font-weight:500;display:flex}.pending-gaps li span{color:var(--ui-text-3);font-weight:400}.publish-dialog{gap:16px;display:grid}.publish-warning{border:1px solid var(--ui-warning-border);border-radius:var(--ui-radius-lg);background:var(--ui-warning-bg);color:var(--ui-warning);gap:12px;padding:14px 16px;display:flex}.publish-warning>div{gap:4px;display:grid}.school-app .publish-warning strong{color:var(--ui-text)}.publish-warning p{color:var(--ui-text-2);margin:0;font-size:.86rem;line-height:1.5}.publish-choices{border:0;gap:8px;margin:0;padding:0;display:grid}.publish-choices legend{color:var(--ui-text-2);letter-spacing:.05em;text-transform:uppercase;margin-bottom:8px;font-size:.8rem;font-weight:600}.school-app .publish-choice{border:1.5px solid var(--ui-border);border-radius:var(--ui-radius-lg);background:var(--ui-surface);cursor:pointer;align-items:flex-start;gap:12px;padding:12px 14px;transition:border-color .12s,background .12s;display:flex}.publish-choice input[type=checkbox]{margin-top:3px}.publish-choice:hover{border-color:var(--ui-border-strong)}.publish-choice.is-selected{border-color:var(--ui-success-border);background:var(--ui-success-bg)}@supports (color:color-mix(in lab, red, red)){.publish-choice.is-selected{background:color-mix(in srgb, var(--ui-success-bg) 55%, var(--ui-surface))}}.publish-choice.is-incomplete.is-selected{border-color:var(--ui-warning);background:var(--ui-warning-bg)}.publish-choice-body{flex:1;gap:2px;min-width:0;display:grid}.school-app .publish-choice-body strong{color:var(--ui-text);font-size:.92rem}.publish-choice-body small{color:var(--ui-text-3);font-size:.8rem}.publish-choice-body em{color:var(--ui-warning);align-items:flex-start;gap:6px;margin-top:4px;font-size:.8rem;font-style:normal;font-weight:500;line-height:1.4;display:flex}.publish-choice-body em .ui-icon{margin-top:2px}.publish-incomplete-alert{border-radius:var(--ui-radius);background:var(--ui-warning-bg);color:var(--ui-warning);align-items:center;gap:8px;padding:10px 14px;font-size:.84rem;font-weight:600;display:flex}.school-app .publish-ack{border:1px dashed var(--ui-border-strong);border-radius:var(--ui-radius);color:var(--ui-text);cursor:pointer;align-items:flex-start;gap:10px;padding:12px 14px;font-size:.9rem;font-weight:500;display:flex}.publish-ack input{margin-top:3px}.publish-actions{border-top:1px solid var(--ui-border);background:var(--ui-surface);justify-content:flex-end;gap:10px;padding:12px 0 2px;display:flex;position:sticky;bottom:0}.school-app .publish-confirm.is-warning:not([disabled]){border-color:var(--ui-warning);background:var(--ui-warning)}.rp-sheets{grid-template-columns:repeat(auto-fill,minmax(320px,1fr));gap:10px;padding:16px 20px 20px;display:grid}.school-app .ui-content .rp-sheet{border:1px solid var(--ui-border);border-radius:var(--ui-radius-lg);background:var(--ui-surface);color:var(--ui-text);align-items:center;gap:12px;padding:12px 14px;text-decoration:none;transition:border-color .15s,box-shadow .15s;display:flex}.school-app .ui-content .rp-sheet:hover{border-color:var(--ui-border-strong);box-shadow:var(--ui-shadow-sm)}.rp-sheet-icon{background:var(--ui-brand-soft);width:38px;height:38px;color:var(--ui-brand);border-radius:10px;flex:none;place-items:center;display:grid}.rp-sheet-body{flex:1;gap:3px;min-width:0;display:grid}.school-app .ui-content .rp-sheet-body strong{text-overflow:ellipsis;white-space:nowrap;font-size:.9rem;overflow:hidden}.rp-sheet-body>small{color:var(--ui-text-3);font-size:.78rem}.rp-sheet-body .lms-inline-progress .ui-progress--sm{flex:1;width:auto}.rp-sheet-go{color:var(--ui-brand);white-space:nowrap;align-items:center;gap:4px;font-size:.8rem;font-weight:600;display:inline-flex}.ui-table-head .admin-tabs{margin-left:auto}.school-app .ui-content .rp-table tr.rp-year th{background:var(--ui-surface-3);color:var(--ui-text-2);letter-spacing:.06em;text-transform:uppercase;padding:8px 14px;font-size:.74rem;font-weight:700}.school-app .ui-content .rp-table tbody tr.rp-year:hover th{background:var(--ui-surface-3)}.rp-table .lms-inline-progress .ui-progress--sm{width:110px}.rp-matrix .lms-matrix-col a,.rp-matrix .lms-matrix-col>span{color:var(--ui-text-2);letter-spacing:.02em;text-transform:uppercase;align-items:center;gap:3px;font-size:.74rem;font-weight:700;text-decoration:none;display:inline-flex}.rp-matrix .lms-matrix-col a{color:var(--ui-brand)}.rp-matrix .lms-matrix-col a:hover{text-decoration:underline}.rp-matrix .lms-matrix-col>small.is-incomplete{color:var(--ui-warning);font-weight:600}.rp-matrix .lms-grade-cell strong{color:var(--ui-text);font-variant-numeric:tabular-nums}.rp-missing,.rp-legend-missing{min-width:40px;color:var(--ui-warning);opacity:.7;border-radius:6px;justify-content:center;align-items:center;padding:3px 8px;font-weight:700;display:inline-flex}.rp-legend-missing{opacity:1;background:var(--ui-warning-bg);min-width:0;padding:0 6px}.rp-card-grades{gap:4px;margin:0 0 14px;padding:0;list-style:none;display:grid}.rp-card-grades li{border-radius:var(--ui-radius);background:var(--ui-surface-2);align-items:center;gap:10px;padding:8px 10px;display:flex}.rp-card-grades li>span:first-child{flex:1;min-width:0;display:grid}.school-app .rp-card-grades strong{font-size:.875rem}.rp-card-grades small{color:var(--ui-text-3);font-size:.76rem}.fin-form{gap:0;margin:-22px -22px 0;display:grid}.fin-section{border-bottom:1px solid var(--ui-border);gap:14px;padding:20px 22px;display:grid}.fin-section .ui-step{border:0;margin:0;padding:0}.fin-optional{color:var(--ui-text-3);margin-left:2px;font-size:.78rem;font-style:normal;font-weight:500}.fin-help{color:var(--ui-text-3);margin:-4px 0 0;font-size:.84rem;line-height:1.5}.fin-grid{grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:14px;display:grid}.fin-form .ui-field>span:first-child em{color:var(--ui-text-3);font-size:.76rem;font-style:normal;font-weight:400}.fin-form .ui-field>span:first-child em:before{content:"· "}.fin-target-grid{grid-template-columns:repeat(5,minmax(0,1fr));gap:8px;display:grid}.fin-target-grid--3{grid-template-columns:repeat(3,minmax(0,1fr))}.fin-target{cursor:pointer;position:relative}.fin-target input{opacity:0;pointer-events:none;position:absolute}.fin-target-card{border:1px solid var(--ui-border-strong);border-radius:var(--ui-radius-lg);background:var(--ui-surface);align-content:start;gap:3px;height:100%;padding:12px;transition:border-color .12s,background .12s,box-shadow .12s;display:grid}.fin-target-card .ui-icon{color:var(--ui-text-3);margin-bottom:6px}.school-app .fin-target-card strong{color:var(--ui-text);font-size:.86rem;font-weight:600}.fin-target-card small{color:var(--ui-text-3);font-size:.74rem;line-height:1.35}.fin-target:hover .fin-target-card{border-color:var(--ui-brand)}.fin-target input:focus-visible+.fin-target-card{outline:2px solid var(--ui-brand);outline-offset:2px}.fin-target input:checked+.fin-target-card{border-color:var(--ui-brand);background:var(--ui-brand-soft);box-shadow:0 0 0 1px var(--ui-brand)}.fin-target input:checked+.fin-target-card .ui-icon{color:var(--ui-brand)}.fin-target-field{gap:10px;display:grid}.fin-target-field[hidden],.fin-note[hidden]{display:none}.school-app .slide-over .fin-search input{width:100%;padding-left:32px}.fin-results{border:1px solid var(--ui-border);border-radius:var(--ui-radius-lg);background:var(--ui-surface);box-shadow:var(--ui-shadow-md);gap:4px;padding:4px;display:grid}.fin-results[hidden]{display:none}.school-app .slide-over .fin-option{border-radius:var(--ui-radius);width:100%;min-height:0;box-shadow:none;color:var(--ui-text);font:inherit;text-align:left;cursor:pointer;background:0 0;border:0;align-items:center;gap:10px;padding:8px 10px;display:flex;transform:none}.school-app .slide-over .fin-option:hover,.school-app .slide-over .fin-option.is-active{background:var(--ui-brand-soft);transform:none}.fin-option>span,.fin-person>span{flex:1;min-width:0;display:grid}.fin-option strong,.fin-person strong{text-overflow:ellipsis;white-space:nowrap;font-size:.86rem;font-weight:600;overflow:hidden}.fin-option small,.fin-person small{color:var(--ui-text-3);text-overflow:ellipsis;white-space:nowrap;font-size:.76rem;overflow:hidden}.fin-option b{color:var(--ui-success);font-variant-numeric:tabular-nums;white-space:nowrap;font-size:.8rem;font-weight:600}.fin-option b.is-due{color:var(--ui-danger)}.fin-option i,.fin-person i{background:var(--ui-brand-tint,var(--ui-brand-soft));width:30px;height:30px;color:var(--ui-brand);border-radius:99px;flex:none;place-items:center;font-size:.72rem;font-style:normal;font-weight:700;display:grid}.fin-selected{grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:8px;display:grid}.fin-person{border:1px solid var(--ui-border);border-radius:var(--ui-radius-lg);background:var(--ui-surface-2);align-items:center;gap:10px;padding:8px 8px 8px 10px;display:flex}.school-app .slide-over .fin-person button{width:26px;height:26px;min-height:0;box-shadow:none;color:var(--ui-text-3);cursor:pointer;background:0 0;border:0;border-radius:99px;flex:none;padding:0;font-size:1.1rem;line-height:1;transform:none}.school-app .slide-over .fin-person button:hover{background:var(--ui-danger-bg);color:var(--ui-danger);transform:none}.fin-empty{border:1px dashed var(--ui-border-strong);border-radius:var(--ui-radius);color:var(--ui-text-3);text-align:center;grid-column:1/-1;margin:0;padding:12px 14px;font-size:.84rem}.fin-results .fin-empty{border:0}.fin-note{border:1px solid var(--ui-info-border);border-radius:var(--ui-radius);background:var(--ui-info-bg);color:var(--ui-text-2);align-items:flex-start;gap:10px;padding:12px 14px;font-size:.86rem;line-height:1.5;display:flex}.fin-note .ui-icon{color:var(--ui-info);flex:none;margin-top:2px}.fin-money,.fin-suffix{border:1px solid var(--ui-border-strong);border-radius:var(--ui-radius);background:var(--ui-surface);align-items:stretch;transition:border-color .12s,box-shadow .12s;display:flex;overflow:hidden}.fin-money:focus-within,.fin-suffix:focus-within{border-color:var(--ui-brand);box-shadow:0 0 0 3px var(--ui-brand-ring)}.fin-money b,.fin-suffix b{background:var(--ui-surface-2);color:var(--ui-text-3);white-space:nowrap;place-items:center;padding:0 10px;font-size:.78rem;font-weight:600;display:grid}.fin-money b{border-right:1px solid var(--ui-border)}.fin-suffix b{border-left:1px solid var(--ui-border);font-weight:500}.school-app .slide-over .fin-money input,.school-app .slide-over .fin-suffix input{min-width:0;box-shadow:none;font-variant-numeric:tabular-nums;border:0;border-radius:0;flex:1}.school-app .slide-over .fin-money input:focus,.school-app .slide-over .fin-suffix input:focus{box-shadow:none}.fin-chip-group{gap:6px;display:grid}.fin-chip-group>small{color:var(--ui-text-3);letter-spacing:.05em;text-transform:uppercase;font-size:.72rem;font-weight:600}.fin-chips{flex-wrap:wrap;gap:6px;display:flex}.fin-chip{cursor:pointer;position:relative}.fin-chip input{opacity:0;pointer-events:none;position:absolute}.fin-chip span{border:1px solid var(--ui-border-strong);background:var(--ui-surface);min-height:34px;color:var(--ui-text-2);border-radius:99px;align-items:center;gap:8px;padding:0 6px 0 12px;font-size:.84rem;font-weight:500;transition:all .12s;display:inline-flex}.fin-chip small{background:var(--ui-surface-3,var(--ui-surface-2));min-width:22px;color:var(--ui-text-3);text-align:center;border-radius:99px;padding:1px 7px;font-size:.72rem;font-weight:600}.fin-chip:hover span{border-color:var(--ui-brand);color:var(--ui-brand)}.fin-chip input:checked+span{border-color:var(--ui-brand);background:var(--ui-brand);color:#fff}.fin-chip input:checked+span small{color:#fff;background:#ffffff38}.fin-chip input:focus-visible+span{outline:2px solid var(--ui-brand);outline-offset:2px}.fin-quick{flex-wrap:wrap;align-items:center;gap:6px;display:flex}.fin-quick>small{color:var(--ui-text-3);margin-right:2px;font-size:.78rem}.school-app .slide-over .fin-quick-chip{border:1px dashed var(--ui-border-strong);background:var(--ui-surface);min-height:28px;box-shadow:none;color:var(--ui-text-2);cursor:pointer;border-radius:99px;align-items:center;gap:4px;padding:0 10px;font-size:.78rem;font-weight:500;display:inline-flex;transform:none}.school-app .slide-over .fin-quick-chip:hover{border-color:var(--ui-brand);background:var(--ui-brand-soft);color:var(--ui-brand);transform:none}.fin-lines,.fin-milestones{gap:8px;display:grid}.fin-milestones:empty{display:none}.fin-line{grid-template-columns:minmax(0,1fr) 190px 34px;align-items:center;gap:8px;display:grid}.fin-milestone{border:1px solid var(--ui-border);border-radius:var(--ui-radius-lg);background:var(--ui-surface-2);grid-template-columns:minmax(0,1.3fr) minmax(0,1fr) 110px 150px 34px;align-items:end;gap:8px;padding:12px;display:grid}.fin-milestone .ui-field>span:first-child{font-size:.76rem}.school-app .slide-over .fin-icon-button{border-radius:var(--ui-radius);width:34px;height:34px;min-height:0;box-shadow:none;color:var(--ui-text-3);cursor:pointer;background:0 0;border:1px solid #0000;place-items:center;padding:0;display:grid;transform:none}.school-app .slide-over .fin-icon-button:hover{border-color:var(--ui-danger-border);background:var(--ui-danger-bg);color:var(--ui-danger);transform:none}.fin-lines>.fin-line:only-child .fin-icon-button{visibility:hidden}.fin-lines-foot{border-top:1px dashed var(--ui-border);justify-content:space-between;align-items:center;gap:12px;padding-top:10px;display:flex}.fin-lines-foot>span{color:var(--ui-text-3);font-size:.84rem}.fin-lines-foot strong{color:var(--ui-text);font-variant-numeric:tabular-nums;margin-left:6px;font-size:1.05rem}.school-app .slide-over .fin-add{border-radius:var(--ui-radius);min-height:32px;box-shadow:none;color:var(--ui-brand);cursor:pointer;background:0 0;border:0;justify-self:start;align-items:center;gap:6px;padding:0 10px;font-size:.84rem;font-weight:600;display:inline-flex;transform:none}.school-app .slide-over .fin-add:hover{background:var(--ui-brand-soft);transform:none}.fin-footer{z-index:2;border-top:1px solid var(--ui-border);background:var(--ui-surface);align-items:center;gap:10px;margin-bottom:-22px;padding:14px 22px;display:flex;position:sticky;bottom:0}@supports (color:color-mix(in lab, red, red)){.fin-footer{background:color-mix(in srgb, var(--ui-surface) 94%, transparent)}}.fin-footer{-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px)}.fin-total{flex:1;min-width:0;display:grid}.fin-total small{color:var(--ui-text-3);text-overflow:ellipsis;white-space:nowrap;font-size:.78rem;overflow:hidden}.school-app .fin-total strong{color:var(--ui-text);font-variant-numeric:tabular-nums;letter-spacing:-.01em;font-size:1.2rem;font-weight:700}.school-app .slide-over .fin-footer .primary-action:disabled{opacity:.5;cursor:not-allowed}@media (width<=760px){.fin-form{margin:-16px -16px 0}.fin-section{padding:16px}.fin-target-grid,.fin-target-grid--3{grid-template-columns:repeat(2,minmax(0,1fr))}.fin-line{grid-template-columns:minmax(0,1fr) 34px}.fin-line .fin-money{grid-area:2/1}.fin-line .fin-icon-button{grid-area:1/2/span 2}.fin-milestone{grid-template-columns:1fr 1fr}.fin-milestone .fin-icon-button{grid-column:2;justify-self:end}.fin-footer{flex-wrap:wrap;margin-bottom:-16px;padding:12px 16px}.fin-total{flex-basis:100%}.fin-footer>button{flex:1}}.users-import-sample{border-radius:var(--ui-radius);background:var(--ui-surface-2);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:10px;padding:10px 12px;display:flex}.users-import-sample>span{color:var(--ui-text-2);align-items:flex-start;gap:8px;font-size:.82rem;line-height:1.5;display:flex}.users-import-sample>span .ui-icon{color:var(--ui-text-3);flex:none;margin-top:2px}.users-import-sample code{color:var(--ui-text);font-size:.78rem}.users-import-sample [hidden],.users-import-reference[hidden]{display:none}.users-import-summary{grid-template-columns:repeat(4,minmax(0,1fr))}.users-import-filter{flex-wrap:wrap;gap:6px;display:flex}.users-import-filter[hidden]{display:none}.users-import-table td:nth-last-child(2){min-width:220px}.users-import-table td:nth-child(n+2):not(:nth-last-child(-n+2)) strong,.users-import-missing{white-space:nowrap}.users-import-missing{background:var(--ui-danger-bg);color:var(--ui-danger);border-radius:5px;padding:1px 7px;font-size:.8rem;font-weight:500;display:inline-block}.users-import-notes{gap:2px;margin:6px 0 0;padding:0;font-size:.78rem;list-style:none;display:grid}.users-import-notes li{color:var(--ui-warning);padding-left:14px;position:relative}.users-import-notes li:before{content:"•";position:absolute;left:3px}.users-import-notes li.is-error{color:var(--ui-danger);font-weight:500}.users-import-table tr[hidden],.fin-section[hidden]{display:none}@media (width<=640px){.users-import-summary{grid-template-columns:repeat(2,minmax(0,1fr))}}.fin-period{border-radius:var(--ui-radius);margin:-2px 0 0;padding:10px 12px;font-size:.84rem;line-height:1.5}.fin-period:empty{display:none}.fin-period.is-current{background:var(--ui-success-bg);color:var(--ui-success)}.fin-period.is-upcoming{background:var(--ui-info-bg);color:var(--ui-info)}.fin-period.is-past{background:var(--ui-warning-bg);color:var(--ui-warning)}.fin-overlap{background:var(--ui-warning-bg)}@supports (color:color-mix(in lab, red, red)){.fin-overlap{background:color-mix(in srgb, var(--ui-warning-bg) 55%, var(--ui-surface))}}.fin-overlap-head{color:var(--ui-warning);gap:10px;display:flex}.fin-overlap-head .ui-icon{flex:none;margin-top:2px}.school-app .fin-overlap-head strong{color:var(--ui-text);font-size:.9rem}.fin-overlap-head ul{color:var(--ui-text-2);margin:4px 0 0;padding-left:18px;font-size:.84rem}.fin-overlap-choices{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;display:grid}.fin-overlap-choice{border:1px solid var(--ui-border-strong);border-radius:var(--ui-radius-lg);background:var(--ui-surface);cursor:pointer;align-items:flex-start;gap:10px;padding:12px;display:flex}.fin-overlap-choice:has(input:checked){border-color:var(--ui-brand);box-shadow:0 0 0 1px var(--ui-brand);background:var(--ui-brand-soft)}.fin-overlap-choice input{margin-top:3px}.fin-overlap-choice span{gap:3px;display:grid}.school-app .fin-overlap-choice strong{color:var(--ui-text);font-size:.88rem}.fin-overlap-choice small{color:var(--ui-text-3);font-size:.78rem;line-height:1.45}@media (width<=640px){.fin-overlap-choices{grid-template-columns:1fr}}.fin-schedule-state{color:var(--ui-text-2);flex-wrap:wrap;align-items:center;gap:8px;margin-top:8px;font-size:.86rem;display:flex}.cal-form{gap:18px;display:grid}.cal-now{grid-template-columns:minmax(200px,280px) minmax(0,1fr);align-items:start;gap:16px;display:grid}.cal-terms{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;display:grid}.cal-term{cursor:pointer;position:relative}.cal-term input{opacity:0;pointer-events:none;position:absolute}.cal-term>span{border:1px solid var(--ui-border-strong);border-radius:var(--ui-radius-lg);background:var(--ui-surface);gap:2px;padding:10px 12px;transition:border-color .12s,background .12s;display:grid}.school-app .cal-term strong{color:var(--ui-text);font-size:.9rem}.cal-term small{color:var(--ui-text-3);font-size:.76rem}.cal-term:hover>span{border-color:var(--ui-brand)}.cal-term input:checked+span{border-color:var(--ui-brand);background:var(--ui-brand-soft);box-shadow:0 0 0 1px var(--ui-brand)}.cal-term input:focus-visible+span{outline:2px solid var(--ui-brand);outline-offset:2px}.cal-effects{border:1px solid var(--ui-info-border);border-radius:var(--ui-radius);background:var(--ui-info-bg);color:var(--ui-info);gap:10px;padding:12px 14px;display:flex}.cal-effects .ui-icon{flex:none;margin-top:2px}.cal-effects ul{color:var(--ui-text-2);gap:4px;margin:0;padding-left:16px;font-size:.84rem;line-height:1.5;display:grid}.cal-dates{border-top:1px solid var(--ui-border);gap:12px;padding-top:16px;display:grid}.cal-dates>header{flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:10px;display:flex}.school-app .cal-dates h4{color:var(--ui-text);margin:0;font-size:.95rem}.cal-dates header p{color:var(--ui-text-3);margin:2px 0 0;font-size:.82rem}.cal-dates-grid{gap:10px;display:grid}.cal-date-row{grid-template-columns:80px repeat(2,minmax(0,1fr));align-items:end;gap:12px;display:grid}.school-app .cal-date-row>strong{color:var(--ui-text);padding-bottom:10px;font-size:.88rem}@media (width<=760px){.cal-now,.cal-terms{grid-template-columns:1fr}.cal-date-row{grid-template-columns:1fr 1fr}.cal-date-row>strong{grid-column:1/-1;padding:0}}.fin-oneoff{color:var(--ui-text-3);align-items:flex-start;gap:8px;margin:0;font-size:.8rem;line-height:1.5;display:flex}.fin-oneoff .ui-icon{flex:none;margin-top:3px}.fin-oneoff a{color:var(--ui-brand);font-weight:600}.register-fieldset{border:0;min-width:0;margin:0;padding:0}.register-fieldset:disabled{opacity:.6}.register-fieldset:disabled .primary-action{cursor:not-allowed}@property --tw-border-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-leading{syntax:"*";inherits:false}@property --tw-font-weight{syntax:"*";inherits:false}@property --tw-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-shadow-color{syntax:"*";inherits:false}@property --tw-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-inset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-shadow-color{syntax:"*";inherits:false}@property --tw-inset-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-ring-color{syntax:"*";inherits:false}@property --tw-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-ring-color{syntax:"*";inherits:false}@property --tw-inset-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-ring-inset{syntax:"*";inherits:false}@property --tw-ring-offset-width{syntax:"<length>";inherits:false;initial-value:0}@property --tw-ring-offset-color{syntax:"*";inherits:false;initial-value:#fff}@property --tw-ring-offset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-outline-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-blur{syntax:"*";inherits:false}@property --tw-brightness{syntax:"*";inherits:false}@property --tw-contrast{syntax:"*";inherits:false}@property --tw-grayscale{syntax:"*";inherits:false}@property --tw-hue-rotate{syntax:"*";inherits:false}@property --tw-invert{syntax:"*";inherits:false}@property --tw-opacity{syntax:"*";inherits:false}@property --tw-saturate{syntax:"*";inherits:false}@property --tw-sepia{syntax:"*";inherits:false}@property --tw-drop-shadow{syntax:"*";inherits:false}@property --tw-drop-shadow-color{syntax:"*";inherits:false}@property --tw-drop-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-drop-shadow-size{syntax:"*";inherits:false}@property --tw-duration{syntax:"*";inherits:false}@property --tw-ease{syntax:"*";inherits:false}
