@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-space-y-reverse:0;--tw-divide-y-reverse:0;--tw-border-style:solid;--tw-leading:initial;--tw-font-weight:initial;--tw-tracking: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-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}}}@layer theme{:root,:host{--font-serif:ui-serif, Georgia, Cambria, "Times New Roman", Times, serif;--font-mono:ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;--color-white:#fff;--spacing:.25rem;--container-2xl:42rem;--container-4xl:56rem;--container-7xl:80rem;--text-xs:.75rem;--text-xs--line-height:calc(1 / .75);--text-sm:.875rem;--text-sm--line-height:calc(1.25 / .875);--text-base:1rem;--text-base--line-height:calc(1.5 / 1);--text-lg:1.125rem;--text-lg--line-height:calc(1.75 / 1.125);--text-xl:1.25rem;--text-xl--line-height:calc(1.75 / 1.25);--text-2xl:1.5rem;--text-2xl--line-height:calc(2 / 1.5);--text-3xl:1.875rem;--text-3xl--line-height:calc(2.25 / 1.875);--text-4xl:2.25rem;--text-4xl--line-height:calc(2.5 / 2.25);--text-6xl:3.75rem;--text-6xl--line-height:1;--font-weight-bold:700;--font-weight-extrabold:800;--font-weight-black:900;--tracking-normal:0em;--radius-sm:.25rem;--radius-md:.375rem;--radius-lg:.5rem;--radius-xl:.75rem;--radius-2xl:1rem;--radius-3xl:1.5rem;--default-transition-duration:.15s;--default-transition-timing-function:cubic-bezier(.4, 0, .2, 1)}}@layer base,components;@layer utilities{.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}.relative{position:relative}.static{position:static}.container{width:100%}@media (min-width:40rem){.container{max-width:40rem}}@media (min-width:48rem){.container{max-width:48rem}}@media (min-width:64rem){.container{max-width:64rem}}@media (min-width:80rem){.container{max-width:80rem}}@media (min-width:96rem){.container{max-width:96rem}}.mx-auto{margin-inline:auto}.mt-0\.5{margin-top:calc(var(--spacing) * .5)}.mt-1{margin-top:var(--spacing)}.mt-2{margin-top:calc(var(--spacing) * 2)}.mt-3{margin-top:calc(var(--spacing) * 3)}.mt-4{margin-top:calc(var(--spacing) * 4)}.mt-5{margin-top:calc(var(--spacing) * 5)}.mt-auto{margin-top:auto}.block{display:block}.flex{display:flex}.grid{display:grid}.hidden{display:none}.inline-flex{display:inline-flex}.table{display:table}.size-6{width:calc(var(--spacing) * 6);height:calc(var(--spacing) * 6)}.size-10{width:calc(var(--spacing) * 10);height:calc(var(--spacing) * 10)}.size-12{width:calc(var(--spacing) * 12);height:calc(var(--spacing) * 12)}.h-2{height:calc(var(--spacing) * 2)}.h-full{height:100%}.min-h-7{min-height:calc(var(--spacing) * 7)}.min-h-10{min-height:calc(var(--spacing) * 10)}.min-h-11{min-height:calc(var(--spacing) * 11)}.min-h-12{min-height:calc(var(--spacing) * 12)}.min-h-16{min-height:calc(var(--spacing) * 16)}.min-h-18{min-height:calc(var(--spacing) * 18)}.min-h-dvh{min-height:100dvh}.w-full{width:100%}.max-w-2xl{max-width:var(--container-2xl)}.max-w-4xl{max-width:var(--container-4xl)}.max-w-7xl{max-width:var(--container-7xl)}.min-w-0{min-width:0}.flex-1{flex:1}.shrink-0{flex-shrink:0}.cursor-pointer{cursor:pointer}.list-none{list-style-type:none}.grid-cols-1{grid-template-columns:repeat(1,minmax(0,1fr))}.grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.flex-col{flex-direction:column}.flex-wrap{flex-wrap:wrap}.place-items-center{place-items:center}.items-center{align-items:center}.items-end{align-items:flex-end}.items-start{align-items:flex-start}.justify-between{justify-content:space-between}.justify-center{justify-content:center}.gap-1{gap:var(--spacing)}.gap-2{gap:calc(var(--spacing) * 2)}.gap-3{gap:calc(var(--spacing) * 3)}.gap-4{gap:calc(var(--spacing) * 4)}.gap-5{gap:calc(var(--spacing) * 5)}:where(.space-y-2>:not(:last-child)){--tw-space-y-reverse:0;margin-block-start:calc(calc(var(--spacing) * 2) * var(--tw-space-y-reverse));margin-block-end:calc(calc(var(--spacing) * 2) * calc(1 - var(--tw-space-y-reverse)))}:where(.space-y-3>:not(:last-child)){--tw-space-y-reverse:0;margin-block-start:calc(calc(var(--spacing) * 3) * var(--tw-space-y-reverse));margin-block-end:calc(calc(var(--spacing) * 3) * calc(1 - var(--tw-space-y-reverse)))}:where(.space-y-4>:not(:last-child)){--tw-space-y-reverse:0;margin-block-start:calc(calc(var(--spacing) * 4) * var(--tw-space-y-reverse));margin-block-end:calc(calc(var(--spacing) * 4) * calc(1 - var(--tw-space-y-reverse)))}:where(.space-y-6>:not(:last-child)){--tw-space-y-reverse:0;margin-block-start:calc(calc(var(--spacing) * 6) * var(--tw-space-y-reverse));margin-block-end:calc(calc(var(--spacing) * 6) * calc(1 - var(--tw-space-y-reverse)))}:where(.divide-y>:not(:last-child)){--tw-divide-y-reverse:0;border-bottom-style:var(--tw-border-style);border-top-style:var(--tw-border-style);border-top-width:calc(1px * var(--tw-divide-y-reverse));border-bottom-width:calc(1px * calc(1 - var(--tw-divide-y-reverse)))}:where(.divide-\[\#ebe8e3\]>:not(:last-child)){border-color:#ebe8e3}.truncate{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.overflow-hidden{overflow:hidden}.rounded-2xl{border-radius:var(--radius-2xl)}.rounded-3xl{border-radius:var(--radius-3xl)}.rounded-full{border-radius:3.40282e38px}.rounded-xl{border-radius:var(--radius-xl)}.border{border-style:var(--tw-border-style);border-width:1px}.border-2{border-style:var(--tw-border-style);border-width:2px}.border-t{border-top-style:var(--tw-border-style);border-top-width:1px}.border-b{border-bottom-style:var(--tw-border-style);border-bottom-width:1px}.border-\[\#9d6d12\]{border-color:#9d6d12}.border-\[\#071d49\]{border-color:#071d49}.border-\[\#d7e7dc\]{border-color:#d7e7dc}.border-\[\#d8d4ce\]{border-color:#d8d4ce}.border-\[\#dedbd6\]{border-color:#dedbd6}.border-\[\#e7c574\]{border-color:#e7c574}.border-\[\#ebe8e3\]{border-color:#ebe8e3}.border-\[\#f2c75a\]{border-color:#f2c75a}.border-transparent{border-color:#0000}.bg-\[\#1f2a8c\]{background-color:#1f2a8c}.bg-\[\#071d49\]{background-color:#071d49}.bg-\[\#e8e5df\]{background-color:#e8e5df}.bg-\[\#e9f7ee\]{background-color:#e9f7ee}.bg-\[\#eef1ff\]{background-color:#eef1ff}.bg-\[\#eff9f2\]{background-color:#eff9f2}.bg-\[\#f2c75a\]{background-color:#f2c75a}.bg-\[\#f6f4f1\]{background-color:#f6f4f1}.bg-\[\#fff0b9\]{background-color:#fff0b9}.bg-\[\#fff0d0\]{background-color:#fff0d0}.bg-\[\#fff8e7\]{background-color:#fff8e7}.bg-transparent{background-color:#0000}.bg-white{background-color:var(--color-white)}.p-1{padding:var(--spacing)}.p-4{padding:calc(var(--spacing) * 4)}.p-5{padding:calc(var(--spacing) * 5)}.p-6{padding:calc(var(--spacing) * 6)}.px-3{padding-inline:calc(var(--spacing) * 3)}.px-4{padding-inline:calc(var(--spacing) * 4)}.px-5{padding-inline:calc(var(--spacing) * 5)}.px-6{padding-inline:calc(var(--spacing) * 6)}.py-1{padding-block:var(--spacing)}.py-2{padding-block:calc(var(--spacing) * 2)}.py-3{padding-block:calc(var(--spacing) * 3)}.py-4{padding-block:calc(var(--spacing) * 4)}.py-5{padding-block:calc(var(--spacing) * 5)}.py-8{padding-block:calc(var(--spacing) * 8)}.py-14{padding-block:calc(var(--spacing) * 14)}.pt-2{padding-top:calc(var(--spacing) * 2)}.pb-1{padding-bottom:var(--spacing)}.pb-6{padding-bottom:calc(var(--spacing) * 6)}.text-center{text-align:center}.font-mono{font-family:var(--font-mono)}.font-serif{font-family:var(--font-serif)}.text-2xl{font-size:var(--text-2xl);line-height:var(--tw-leading,var(--text-2xl--line-height))}.text-4xl{font-size:var(--text-4xl);line-height:var(--tw-leading,var(--text-4xl--line-height))}.text-base{font-size:var(--text-base);line-height:var(--tw-leading,var(--text-base--line-height))}.text-lg{font-size:var(--text-lg);line-height:var(--tw-leading,var(--text-lg--line-height))}.text-sm{font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height))}.text-xl{font-size:var(--text-xl);line-height:var(--tw-leading,var(--text-xl--line-height))}.text-xs{font-size:var(--text-xs);line-height:var(--tw-leading,var(--text-xs--line-height))}.text-\[11px\]{font-size:11px}.leading-6{--tw-leading:calc(var(--spacing) * 6);line-height:calc(var(--spacing) * 6)}.leading-7{--tw-leading:calc(var(--spacing) * 7);line-height:calc(var(--spacing) * 7)}.leading-\[1\.08\]{--tw-leading:1.08;line-height:1.08}.font-black{--tw-font-weight:var(--font-weight-black);font-weight:var(--font-weight-black)}.font-bold{--tw-font-weight:var(--font-weight-bold);font-weight:var(--font-weight-bold)}.font-extrabold{--tw-font-weight:var(--font-weight-extrabold);font-weight:var(--font-weight-extrabold)}.tracking-\[-0\.03em\]{--tw-tracking:-.03em;letter-spacing:-.03em}.tracking-\[-0\.05em\]{--tw-tracking:-.05em;letter-spacing:-.05em}.tracking-\[0\.2em\]{--tw-tracking:.2em;letter-spacing:.2em}.tracking-\[0\.12em\]{--tw-tracking:.12em;letter-spacing:.12em}.tracking-\[0\.18em\]{--tw-tracking:.18em;letter-spacing:.18em}.tracking-\[0\.22em\]{--tw-tracking:.22em;letter-spacing:.22em}.tracking-normal{--tw-tracking:var(--tracking-normal);letter-spacing:var(--tracking-normal)}.text-\[\#1f2a8c\]{color:#1f2a8c}.text-\[\#6d6e70\]{color:#6d6e70}.text-\[\#8a5700\]{color:#8a5700}.text-\[\#8b8985\]{color:#8b8985}.text-\[\#071d49\]{color:#071d49}.text-\[\#075f30\]{color:#075f30}.text-\[\#201e1d\]{color:#201e1d}.text-\[\#06803a\]{color:#06803a}.text-\[\#292827\]{color:#292827}.text-\[\#714600\]{color:#714600}.text-\[\#f2c75a\]{color:#f2c75a}.text-white{color:var(--color-white)}.italic{font-style:italic}.shadow-\[0_12px_36px_rgb\(7_29_73\/0\.06\)\]{--tw-shadow:0 12px 36px var(--tw-shadow-color,#071d490f);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.shadow-\[0_12px_36px_rgb\(7_29_73\/0\.08\)\]{--tw-shadow:0 12px 36px var(--tw-shadow-color,#071d4914);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.shadow-\[0_16px_45px_rgb\(7_29_73\/0\.08\)\]{--tw-shadow:0 16px 45px var(--tw-shadow-color,#071d4914);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.shadow-\[0_20px_55px_rgb\(7_29_73\/0\.14\)\]{--tw-shadow:0 20px 55px var(--tw-shadow-color,#071d4924);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.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)}.blur{--tw-blur:blur(8px);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,)}.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))}.transition-\[width\]{transition-property:width;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-colors{transition-property:color,background-color,border-color,outline-color,text-decoration-color,fill,stroke,--tw-gradient-from,--tw-gradient-via,--tw-gradient-to;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-transform{transition-property:transform,translate,scale,rotate;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.duration-300{--tw-duration:.3s;transition-duration:.3s}.group-open\:rotate-180:is(:where(.group):is([open],:popover-open,:open) *){rotate:180deg}.marker\:content-none ::marker{--tw-content:none;content:none}.marker\:content-none::marker{--tw-content:none;content:none}.marker\:content-none ::-webkit-details-marker{--tw-content:none;content:none}.marker\:content-none::-webkit-details-marker{--tw-content:none;content:none}.last\:border-0:last-child{border-style:var(--tw-border-style);border-width:0}@media (hover:hover){.hover\:bg-\[\#102e68\]:hover{background-color:#102e68}.hover\:bg-\[\#f0eee9\]:hover{background-color:#f0eee9}.hover\:bg-\[\#ffdc7b\]:hover{background-color:#ffdc7b}.hover\:bg-\[\#fff4ce\]:hover{background-color:#fff4ce}.hover\:text-\[\#071d49\]:hover{color:#071d49}}.disabled\:cursor-not-allowed:disabled{cursor:not-allowed}.disabled\:border-\[\#dedbd6\]:disabled{border-color:#dedbd6}.disabled\:bg-\[\#f0eee9\]:disabled{background-color:#f0eee9}.disabled\:text-\[\#8b8985\]:disabled{color:#8b8985}@media (min-width:40rem){.sm\:inline{display:inline}.sm\:grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.sm\:grid-cols-\[1fr_auto_auto\]{grid-template-columns:1fr auto auto}.sm\:flex-row{flex-direction:row}.sm\:items-center{align-items:center}.sm\:items-end{align-items:flex-end}.sm\:justify-between{justify-content:space-between}.sm\:p-5{padding:calc(var(--spacing) * 5)}.sm\:p-7{padding:calc(var(--spacing) * 7)}.sm\:p-8{padding:calc(var(--spacing) * 8)}.sm\:px-7{padding-inline:calc(var(--spacing) * 7)}.sm\:px-8{padding-inline:calc(var(--spacing) * 8)}.sm\:py-12{padding-block:calc(var(--spacing) * 12)}.sm\:py-20{padding-block:calc(var(--spacing) * 20)}.sm\:text-2xl{font-size:var(--text-2xl);line-height:var(--tw-leading,var(--text-2xl--line-height))}.sm\:text-3xl{font-size:var(--text-3xl);line-height:var(--tw-leading,var(--text-3xl--line-height))}.sm\:text-6xl{font-size:var(--text-6xl);line-height:var(--tw-leading,var(--text-6xl--line-height))}.sm\:text-base{font-size:var(--text-base);line-height:var(--tw-leading,var(--text-base--line-height))}.sm\:text-lg{font-size:var(--text-lg);line-height:var(--tw-leading,var(--text-lg--line-height))}}@media (min-width:64rem){.lg\:grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.lg\:grid-cols-\[minmax\(0\,1\.15fr\)_minmax\(16rem\,0\.85fr\)\]{grid-template-columns:minmax(0,1.15fr) minmax(16rem,.85fr)}.lg\:items-center{align-items:center}}}:root{--paper:#f6f4f1;--white:#fff;--ink:#201e1d;--muted:#6d6e70;--line:#dedbd6;--midnight:#071d49;--vispo:#1f2a8c;--gold:#f2c75a;--green:#06803a;--green-soft:#e9f7ee;--red:#b63535;--shadow:0 22px 60px #071d491a;--surface-muted:#f0eee9;--surface-raised:#fff;--radius-sm:10px;--radius-md:16px;--radius-lg:24px;--shadow-card:0 1px 2px #071d490a, 0 12px 34px #071d490f;--admin-mobile-nav-height:66px;--admin-mobile-nav-gap:8px;--admin-mobile-content-clearance:calc(var(--admin-mobile-nav-height) + var(--admin-mobile-nav-gap) + max(24px, env(safe-area-inset-bottom)))}*{box-sizing:border-box}html,body{min-height:100%}html{overflow-x:clip}body{color:var(--ink);background:var(--paper);-webkit-font-smoothing:antialiased;margin:0;font-family:Avenir Next,Noto Sans TC,PingFang TC,system-ui,sans-serif;font-size:16px;line-height:1.5;overflow-x:clip}button,input,select,textarea{font:inherit}button,a{touch-action:manipulation;-webkit-tap-highlight-color:#f2c75a3d}a{color:inherit;text-decoration:none}:focus-visible{outline:3px solid var(--gold);outline-offset:3px}.sr-only{clip:rect(0, 0, 0, 0);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.skip-link{z-index:1000;color:#fff;background:var(--midnight);padding:10px 14px;position:fixed;top:10px;left:10px;transform:translateY(-160%)}.skip-link:focus{transform:translateY(0)}.legal-page{background-color:#faf8f6;background-image:linear-gradient(#071d4908 1px,#0000 1px),linear-gradient(90deg,#071d4908 1px,#0000 1px),none;background-position:0 0,0 0,0 0;background-repeat:repeat,repeat,repeat;background-size:24px 24px;background-attachment:scroll,scroll,scroll;background-origin:padding-box,padding-box,padding-box;background-clip:border-box,border-box,border-box;min-height:100dvh;padding:0 clamp(20px,5vw,72px) 44px}.legal-masthead,.legal-document,.legal-footer{width:min(920px,100%);margin-inline:auto}.legal-masthead{border-bottom:1px solid var(--midnight);justify-content:space-between;align-items:center;min-height:82px;display:flex}.legal-code{color:var(--muted);letter-spacing:.12em;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:12px;font-weight:800}.legal-document{padding-top:28px}.legal-title-block{border:1px solid var(--midnight);box-shadow:8px 8px 0 var(--gold);background:#fff;padding:clamp(24px,5vw,46px);position:relative}.legal-title-block:before{background:var(--vispo);content:"";width:6px;position:absolute;inset:0 auto 0 0}.legal-title-block h1{color:var(--midnight);letter-spacing:-.055em;margin:0;font-family:Iowan Old Style,Songti TC,Georgia,serif;font-size:clamp(38px,7vw,62px);line-height:1.05}.legal-title-block>p:not(.admin-eyebrow){max-width:680px;color:var(--muted);margin:17px 0 24px;font-size:16px;line-height:1.8}.legal-title-block dl{background:var(--line);gap:1px;margin:0;display:grid}.legal-title-block dl>div{background:var(--paper);grid-template-columns:96px 1fr;gap:12px;padding:11px 13px;display:grid}.legal-title-block dt{color:var(--muted);font-size:14px;font-weight:700}.legal-title-block dd{color:var(--midnight);overflow-wrap:anywhere;margin:0;font-size:15px;font-weight:800}.legal-sections{padding-top:34px}.legal-sections section{border-bottom:1px solid var(--line);padding:28px 2px}.legal-sections h2{color:var(--midnight);letter-spacing:-.025em;align-items:baseline;gap:11px;margin:0 0 15px;font-size:21px;display:flex}.legal-sections h2 span{color:var(--vispo);letter-spacing:.08em;font-family:ui-monospace,monospace;font-size:11px}.legal-sections p,.legal-sections li{color:#4c4c4b;font-size:16px;line-height:1.85}.legal-sections p{margin:0}.legal-sections p+p{margin-top:12px}.legal-sections ul{margin:0;padding-left:22px}.legal-sections li+li{margin-top:8px}.legal-sections strong{color:var(--ink)}.legal-table{border:1px solid var(--line);background:#fff;margin:5px 0 16px}.legal-table-row{border-bottom:1px solid var(--line);grid-template-columns:170px minmax(0,1fr);display:grid}.legal-table-row:last-child{border-bottom:0}.legal-table-row>*{overflow-wrap:anywhere;min-width:0;padding:14px;font-size:15px;line-height:1.7}.legal-table-row>*+*{border-left:1px solid var(--line)}.legal-table-head{color:#fff;background:var(--midnight);font-weight:800}.legal-table-head>*+*{border-left-color:#ffffff38}.legal-footer{color:var(--muted);justify-content:center;align-items:center;gap:10px;padding-top:26px;font-size:14px;display:flex}.legal-footer a{color:var(--vispo);text-underline-offset:3px;font-weight:800;text-decoration:underline}@media (max-width:520px){.legal-page{padding-inline:18px}.legal-code{font-size:10px}.legal-title-block{padding:25px 22px}.legal-table-row{grid-template-columns:1fr}.legal-table-row>*+*{border-top:1px solid var(--line);border-left:0}.legal-table-head{display:none}}.admin-wordmark{min-height:44px;color:var(--midnight);letter-spacing:.16em;align-items:center;gap:10px;font-size:17px;font-weight:850;display:inline-flex}.admin-wordmark>span{color:#fff;background:var(--midnight);letter-spacing:0;place-items:center;width:34px;height:34px;font-family:Georgia,serif;font-size:19px;font-style:italic;display:grid}.admin-wordmark.inverse{color:#fff}.admin-wordmark.inverse>span{color:var(--midnight);background:var(--gold)}.admin-wordmark small{color:#ffffffad;letter-spacing:.1em;margin-left:2px;font-family:ui-monospace,monospace;font-size:13px}.admin-eyebrow,.kiosk-eyebrow{color:var(--vispo);letter-spacing:.12em;margin:0 0 7px;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:13px;font-weight:800}.admin-eyebrow{display:none}.kiosk-page{background:linear-gradient(#071d4908 1px, transparent 1px), linear-gradient(90deg, #071d4908 1px, transparent 1px), var(--paper);background-size:32px 32px;min-height:100dvh;padding:24px clamp(22px,5vw,72px) 46px}.kiosk-header{justify-content:space-between;align-items:center;min-height:64px;display:flex}.kiosk-header>div{text-align:right;gap:3px;display:grid}.kiosk-header>div strong{color:var(--midnight);font-size:16px}.kiosk-header>div small{color:var(--muted);align-items:center;gap:4px;font-size:13px;display:flex}.kiosk-grid{border:1px solid var(--midnight);width:min(1180px,100%);box-shadow:var(--shadow);background:#fff;grid-template-columns:minmax(0,1.45fr) minmax(320px,.75fr);margin:8vh auto 0;display:grid}.kiosk-hero{border-right:1px solid var(--midnight);padding:clamp(35px,5vw,72px)}.kiosk-hero h1{color:var(--midnight);letter-spacing:-.065em;margin:0;font-size:clamp(52px,7vw,88px);line-height:.95}.kiosk-hero>p:not(.kiosk-eyebrow,.privacy-note){color:var(--muted);margin:18px 0 0;font-size:16px}.kiosk-clock{color:var(--midnight);align-items:baseline;gap:12px;margin:38px 0 22px;display:flex}.kiosk-clock svg{align-self:center}.kiosk-clock strong{font-family:ui-monospace,monospace;font-size:30px;font-weight:550}.kiosk-clock span{color:var(--muted);font-size:14px}.checkin-form label{color:var(--muted);letter-spacing:.06em;margin-bottom:8px;font-size:14px;font-weight:750;display:block}.checkin-form>div{border:2px solid var(--midnight);background:#fff;grid-template-columns:auto minmax(180px,1fr) auto;align-items:center;min-height:68px;display:grid}.checkin-form svg{color:var(--vispo);margin:0 17px}.checkin-form input{min-width:0;height:100%;color:var(--midnight);background:0 0;border:0;outline:0;font-size:clamp(16px,2vw,20px);font-weight:650}.checkin-form #student-secret{border-left:0;padding-left:0}.checkin-form>div:focus-within{outline:3px solid var(--gold);outline-offset:3px}.checkin-form button{color:#fff;background:var(--vispo);cursor:pointer;border:0;align-self:stretch;min-width:138px;padding:0 24px;font-weight:800}.checkin-form button:disabled{cursor:not-allowed;opacity:.58}.spin{animation:.8s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}.kiosk-message{min-height:56px;color:var(--red);background:#fff0f0;align-items:center;gap:10px;margin-top:14px;padding:10px 15px;font-size:13px;font-weight:700;display:flex}.kiosk-message.is-success{color:var(--green);background:var(--green-soft)}.kiosk-message.is-warning{color:#7a4b00;background:#fff4cf}.privacy-note{color:var(--muted);align-items:center;gap:7px;margin:18px 0 0;font-size:13px;display:flex}.pending-panel{background:#fbfaf8;flex-direction:column;min-width:0;display:flex}.pending-heading{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;padding:32px;display:flex}.pending-heading h2{color:var(--midnight);letter-spacing:-.03em;margin:0;font-size:22px}.pending-heading>strong{color:var(--midnight);font-family:ui-monospace,monospace;font-size:30px}.pending-heading>strong small{color:var(--muted);font-size:13px}.pending-names{flex:1;grid-template-columns:1fr 1fr;align-content:start;gap:10px;padding:28px 32px;display:grid}.pending-names>span{border:1px solid var(--line);background:#fff;align-items:center;gap:11px;min-height:49px;font-size:15px;font-weight:750;display:flex}.pending-names i{color:#fff;background:var(--midnight);align-self:stretch;place-items:center;width:30px;font-family:ui-monospace,monospace;font-size:12px;font-style:normal;display:grid}.pending-names.privacy-copy{grid-template-columns:1fr;align-content:center;gap:16px}.pending-names.privacy-copy p{color:var(--muted);text-wrap:pretty;margin:0;font-size:15px;line-height:1.75}.kiosk-privacy-seal{border-top:1px solid var(--line);min-height:83px;color:var(--green);align-items:center;gap:10px;padding:18px 32px;font-size:13px;font-weight:750;display:flex}.admin-shell{background:#f4f3f0;min-height:100dvh;padding-left:242px}.admin-navigation-progress{z-index:60;opacity:0;pointer-events:none;height:3px;transition:opacity .12s;position:fixed;top:0;left:242px;right:0;overflow:hidden}.admin-navigation-progress:after{background:var(--gold);content:"";width:42%;position:absolute;inset:0;transform:translate(-120%)}.admin-navigation-progress.is-visible{opacity:1}.admin-navigation-progress.is-visible:after{animation:1s ease-in-out infinite admin-navigation-progress}@keyframes admin-navigation-progress{to{transform:translate(340%)}}.admin-sidebar{z-index:10;color:#fff;background:var(--midnight);flex-direction:column;width:242px;padding:28px 20px;display:flex;position:fixed;inset:0 auto 0 0;overflow-y:auto}.organization-chip{background:#ffffff0d;border:1px solid #ffffff21;align-items:center;gap:11px;margin:35px 0 26px;padding:13px;display:flex}.organization-chip>span{width:34px;height:34px;color:var(--midnight);background:var(--gold);place-items:center;font-size:13px;font-weight:850;display:grid}.organization-chip div{gap:2px;display:grid}.organization-chip strong{font-size:15px}.organization-chip small{color:#ffffffa3;font-size:13px}.organization-switcher{cursor:pointer;background:#ffffff0d;border:1px solid #ffffff29;grid-template-columns:38px minmax(0,1fr) auto;align-items:center;gap:10px;min-width:0;min-height:68px;margin:35px 0 23px;padding:10px 11px;display:grid;position:relative}.organization-switcher.is-switching{opacity:.64}.organization-mark{width:38px;height:38px;color:var(--midnight);background:var(--gold);place-items:center;font-size:12px;font-weight:900;display:grid}.organization-switcher-copy{gap:1px;min-width:0;display:grid}.organization-switcher-copy small{color:#ffffff94;font-size:11px}.organization-switcher-copy strong{color:#fff;text-overflow:ellipsis;white-space:nowrap;min-width:0;font-size:14px;overflow:hidden}.organization-switcher select{opacity:0;cursor:pointer;width:100%;height:100%;position:absolute;inset:0}.organization-switcher>svg{color:#ffffff9e;pointer-events:none}.organization-switch-status{color:#ffffffad;min-height:16px;margin:-16px 3px 12px;font-size:11px;line-height:1.4;display:block}.organization-switch-status:empty{display:none}.admin-sidebar nav{gap:16px;display:grid}.admin-nav-group{gap:4px;display:grid}.admin-nav-group>p{color:#ffffff6b;letter-spacing:.12em;margin:0 0 3px;padding:0 13px;font-family:ui-monospace,monospace;font-size:10px;font-weight:800}.admin-sidebar nav a,.logout-link{color:#ffffffb8;align-items:center;gap:12px;min-height:48px;padding:0 13px;font-size:15px;font-weight:650;display:flex}.admin-sidebar nav a[aria-current=page]{color:var(--midnight);background:var(--gold);font-weight:800}.logout-form{margin-top:auto}.logout-link{cursor:pointer;background:0 0;border:0;border-top:1px solid #ffffff1f;width:100%;margin:0}.admin-content{min-width:0}.admin-topbar{border-bottom:1px solid var(--line);background:#fff;justify-content:space-between;align-items:center;min-height:98px;padding:18px 38px;display:flex}.admin-topbar-actions{align-items:center;gap:18px;display:flex}.admin-topbar h1{color:var(--midnight);letter-spacing:-.04em;margin:0;font-size:27px;line-height:1}.admin-user{align-items:center;gap:10px;display:flex}.admin-user button{border:1px solid var(--line);cursor:pointer;background:#fff;place-items:center;width:42px;height:42px;display:grid}.admin-user>span{color:#fff;background:var(--vispo);place-items:center;width:42px;height:42px;font-size:14px;font-weight:800;display:grid}.admin-user>div{gap:3px;display:grid}.admin-user strong{color:var(--midnight);font-size:14px}.admin-user small{color:var(--muted);font-size:13px}.admin-main{padding:30px 38px 50px}.admin-metrics{grid-template-columns:repeat(3,1fr);gap:16px;margin-bottom:22px;display:grid}.admin-metrics article{border:1px solid var(--line);background:#fff;grid-template-columns:auto 1fr;align-items:center;gap:14px;min-height:112px;padding:20px;display:grid;position:relative}.admin-metrics article>span{color:#fff;background:var(--vispo);place-items:center;width:48px;height:48px;display:grid}.admin-metrics article>span.green{background:var(--green)}.admin-metrics article>span.gold{color:var(--midnight);background:var(--gold)}.admin-metrics article div{gap:3px;display:grid}.admin-metrics small{color:var(--muted);font-size:13px}.admin-metrics strong{color:var(--midnight);font-family:ui-monospace,monospace;font-size:30px}.admin-metrics em{color:var(--muted);font-family:ui-monospace,monospace;font-size:12px;font-style:normal;position:absolute;top:13px;right:13px}.dashboard-columns{grid-template-columns:minmax(0,1.3fr) minmax(300px,.7fr);gap:16px;display:grid}.dashboard-card,.directory-card,.form-card,.invite-card{border:1px solid var(--line);background:#fff}.dashboard-card{padding:22px}.dashboard-card-title{justify-content:space-between;align-items:center;gap:10px;margin-bottom:18px;display:flex}.dashboard-card-title h2,.form-card h2,.invite-card h2{color:var(--midnight);letter-spacing:-.03em;margin:0;font-size:19px}.dashboard-card-title a{min-height:44px;color:var(--vispo);align-items:center;gap:4px;font-size:14px;font-weight:750;display:flex}.pending-student-list article{border-top:1px solid var(--line);grid-template-columns:auto 1fr auto;align-items:center;gap:12px;min-height:71px;display:grid}.student-avatar{width:38px;height:38px;color:var(--midnight);background:#e8ebff;place-items:center;font-size:12px;font-weight:800;display:grid}.pending-student-list div{gap:3px;display:grid}.pending-student-list strong{color:var(--midnight);font-size:15px}.pending-student-list small{color:var(--muted);font-size:13px}.waiting-pill,.table-status,.source-pill,.delivery-pill{color:#7c5900;background:#fff5d5;padding:6px 9px;font-size:13px;font-weight:800}.pending-student-list button{border:1px solid var(--vispo);min-height:40px;color:var(--vispo);cursor:pointer;background:#fff;align-items:center;gap:6px;padding:0 12px;font-size:13px;font-weight:750;display:inline-flex}.admin-success{color:var(--green);background:var(--green-soft);align-items:center;gap:8px;margin:13px 0 0;padding:11px;font-size:14px;font-weight:700;display:flex}.live-indicator{color:var(--green);font-family:ui-monospace,monospace;font-size:12px}.live-indicator:before{background:var(--green);content:"";border-radius:50%;width:6px;height:6px;margin-right:5px;display:inline-block}.timeline article{grid-template-columns:42px 12px 1fr;gap:9px;min-height:74px;display:grid}.timeline time{color:var(--midnight);font-variant-numeric:tabular-nums;font-family:ui-monospace,monospace;font-size:13px}.timeline article>span{background:var(--green);border-radius:50%;width:8px;height:8px;position:relative}.timeline article>span:after{background:var(--line);content:"";width:1px;height:51px;position:absolute;top:12px;left:3px}.timeline article:last-child>span:after{display:none}.timeline article>span.muted{background:var(--vispo)}.timeline article div{align-content:start;gap:5px;display:grid}.timeline strong{color:var(--midnight);font-size:14px}.timeline small{color:var(--muted);font-size:13px;line-height:1.5}.admin-primary,.admin-secondary{border:1px solid var(--midnight);color:#fff;background:var(--midnight);cursor:pointer;justify-content:center;align-items:center;gap:8px;min-height:44px;padding:0 16px;font-size:14px;font-weight:800;display:inline-flex}.admin-secondary{color:var(--midnight);background:#fff}.full{width:100%}.directory-card{overflow:hidden}.directory-tools{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;gap:16px;padding:18px 20px;display:flex}.directory-tools>label,.history-search{border:1px solid var(--line);align-items:center;gap:10px;width:min(360px,50%);min-height:44px;padding:0 13px;display:flex}.directory-tools input,.history-search input{border:0;outline:0;width:100%;min-height:44px}.directory-tools>div{border:1px solid var(--line);min-width:0;display:flex}.directory-tools>div button{border:0;border-right:1px solid var(--line);cursor:pointer;background:#fff;min-height:44px;padding:0 14px;font-size:14px}.segmented-control button:last-child{border-right:0}.segmented-control button:focus-visible{outline-offset:-4px}.student-table-wrap{width:100%;overflow-x:auto}.student-table-wrap:focus-visible{outline:3px solid var(--gold);outline-offset:2px}.student-table{border-collapse:collapse;text-align:left;width:100%}.student-table th{color:var(--muted);letter-spacing:.03em;white-space:nowrap;background:#faf9f7;padding:13px 16px;font-size:14px}.student-table td{border-top:1px solid var(--line);min-height:69px;color:var(--muted);vertical-align:middle;padding:14px 16px;font-size:14px}.student-table td:first-child{align-items:center;gap:11px;display:flex}.student-table td div{gap:4px;display:grid}.student-table td strong{color:var(--midnight);font-size:14px}.student-table td small{color:var(--muted);margin-top:4px;font-size:13px;display:block}.table-avatar{color:#fff;background:var(--vispo);flex:none;place-items:center;width:34px;height:34px;font-family:ui-monospace,monospace;font-size:12px;display:grid}.table-status.arrived,.delivery-pill{color:var(--green);background:var(--green-soft)}.table-edit{border:1px solid var(--line);width:44px;height:44px;color:var(--vispo);cursor:pointer;background:#fff;place-items:center;display:grid}.modal-backdrop{z-index:50;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#071d49ad;place-items:center;padding:20px;display:grid;position:fixed;inset:0;overflow:hidden}.admin-modal{overscroll-behavior:contain;border:1px solid var(--midnight);width:min(640px,100%);max-height:calc(100dvh - 40px);box-shadow:var(--shadow);background:#fff;padding:30px;position:relative;overflow:hidden auto}.modal-close{border:1px solid var(--line);cursor:pointer;background:#fff;place-items:center;width:44px;height:44px;display:grid;position:absolute;top:16px;right:16px}.modal-icon{width:48px;height:48px;color:var(--midnight);background:var(--gold);place-items:center;margin-bottom:18px;display:grid}.admin-modal h2{color:var(--midnight);margin:0;font-size:24px}.admin-modal form>p:not(.admin-eyebrow,.admin-success){color:var(--muted);font-size:14px;line-height:1.7}.admin-modal label,.form-card label,.invite-card label,.login-card label{min-width:0;color:var(--muted);gap:7px;font-size:14px;font-weight:750;display:grid}.admin-modal input,.admin-modal select,.form-card input,.form-card select,.invite-card textarea,.login-card input{border:1px solid var(--line);width:100%;min-height:48px;color:var(--midnight);background:#fff;border-radius:0;outline:0;padding:0 12px;font-size:16px}.admin-modal input[readonly]{color:var(--muted);cursor:not-allowed;background:#f5f4f1}.admin-modal input:focus-visible,.admin-modal select:focus-visible,.form-card input:focus-visible,.form-card select:focus-visible,.invite-card textarea:focus-visible,.login-card input:focus-visible,.directory-tools input:focus-visible,.history-filters input:focus-visible,.history-filters select:focus-visible{outline:3px solid var(--gold);outline-offset:2px}.admin-modal form>label{margin:20px 0 14px}.line-state{font-weight:750;color:#9a6400!important}.line-state.enabled{color:var(--green)!important}.modal-invite-panel{background:#fbfaf7;border:1px solid #d8d4cb;gap:12px;min-width:0;margin:20px 0;padding:16px;display:grid}.modal-invite-panel.is-enabled{background:var(--green-soft);border-color:#b8dec5}.modal-invite-heading{align-items:center;gap:12px;min-width:0;display:flex}.modal-invite-heading>span{width:42px;height:42px;color:var(--midnight);background:var(--gold);flex:none;place-items:center;display:grid}.modal-invite-heading>div{min-width:0}.modal-invite-heading h3{color:var(--midnight);text-wrap:balance;margin:0;font-size:17px}.modal-invite-heading p,.modal-invite-result p,.invite-warning{color:var(--muted);text-wrap:pretty;margin:3px 0 0;font-size:13px;line-height:1.55}.line-enabled-note{color:var(--green);align-items:center;gap:7px;margin:0;font-size:14px;font-weight:750;display:flex}.line-reset-button{border:1px solid var(--red);min-height:46px;color:var(--red);cursor:pointer;background:#fff;justify-content:center;align-items:center;gap:8px;padding:0 15px;font-weight:800;display:inline-flex}.line-reset-button:disabled{cursor:wait;opacity:.6}.modal-invite-result{border-top:1px solid var(--line);text-align:center;justify-items:center;min-width:0;padding-top:4px;display:grid}.modal-invite-result .invite-qr{width:min(220px,100%);margin:14px auto 10px}.invite-feedback{color:var(--vispo);overflow-wrap:anywhere;background:#eef0ff;margin:0;padding:10px 12px;font-size:13px;font-weight:700}.invite-feedback a{text-decoration:underline}.form-layout{grid-template-columns:minmax(0,1fr) minmax(290px,360px);align-items:start;gap:20px;display:grid}.form-card,.invite-card{padding:26px}.form-section-title{align-items:center;gap:13px;margin-bottom:20px;display:flex}.form-section-title>span{color:#fff;background:var(--vispo);place-items:center;width:42px;height:42px;font-family:ui-monospace,monospace;font-size:12px;display:grid}.form-section-title div{gap:3px;display:grid}.form-section-title h2{color:var(--midnight);margin:0;font-size:18px}.form-section-title p{color:var(--muted);margin:0;font-size:14px}.top-rule{border-top:1px solid var(--line);margin-top:28px;padding-top:25px}.form-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:15px;display:grid}.form-grid>*{min-width:0}.form-grid>.full-field{grid-column:1/-1}.contact-field-error{color:var(--red);margin-top:-3px;font-size:13px;font-weight:750;line-height:1.45;display:block}.form-card input[aria-invalid=true]{border-color:var(--red);box-shadow:0 0 0 3px #c436361a}.new-student-submit-row{border-top:1px solid var(--line);justify-content:flex-end;margin-top:28px;padding-top:22px;display:flex}.student-create-button{border:1px solid var(--midnight);color:#fff;background:var(--midnight);cursor:pointer;min-width:min(100%,390px);min-height:62px;font:inherit;text-align:left;border-radius:14px;grid-template-columns:42px minmax(0,1fr) 20px;align-items:center;gap:13px;padding:8px 16px 8px 9px;font-size:15px;font-weight:850;transition:box-shadow .16s,transform .16s;display:grid;box-shadow:0 10px 22px #09255024}.student-create-icon{width:42px;height:42px;color:var(--midnight);background:var(--gold);border-radius:10px;place-items:center;display:grid}.student-create-button:focus-visible{outline-offset:3px;outline:3px solid #f6c6508c}.student-create-button:disabled{box-shadow:none;cursor:not-allowed;opacity:.58}.form-card label small,.admin-modal label small{color:var(--muted);text-wrap:pretty;font-size:13px;font-weight:500;line-height:1.5}.status-switch{border:1px solid var(--line);cursor:pointer;align-items:center;gap:12px;min-width:0;padding:14px;margin:18px 0!important;display:flex!important}.status-switch input{width:42px;min-width:42px;min-height:24px;accent-color:var(--red)}.status-switch span{gap:3px;min-width:0;display:grid}.status-switch strong{color:var(--midnight);font-size:15px}.status-switch small{color:var(--muted);text-wrap:pretty;font-size:13px;font-weight:500;line-height:1.5}.credential-reset-panel{border:1px solid var(--line);background:#fbfaf7;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:12px;min-width:0;margin:18px 0;padding:14px;display:grid}.credential-reset-panel>div:first-child{gap:4px;min-width:0;display:grid}.credential-reset-panel strong{color:var(--midnight);font-size:15px}.credential-reset-panel small{color:var(--muted);font-size:13px;line-height:1.5}.credential-reset-panel .one-time-code{grid-column:1/-1}.form-card fieldset{border:0;grid-template-columns:1fr 1fr;gap:12px;margin:20px 0;padding:0;display:grid}.form-card legend{color:var(--muted);margin-bottom:8px;font-size:13px;font-weight:750}.radio-card{border:1px solid var(--line);grid-template-columns:auto 1fr;align-items:center;padding:13px;display:grid!important}.radio-card input{width:auto;min-height:auto}.radio-card span{gap:3px;display:grid}.radio-card strong{color:var(--midnight);font-size:14px}.radio-card small{font-size:13px;font-weight:400}.full-field{margin:0 0 10px}.security-banner{color:var(--midnight);background:#f5f4f1;align-items:center;gap:8px;margin:20px 0;padding:12px;font-size:15px;line-height:1.5;display:flex}.generated-field{background:#fafafe;border:1px dashed #b8b7c8;align-content:center;gap:2px;min-height:48px;padding:10px 12px;display:grid}.generated-field>span{color:var(--muted);font-size:13px;font-weight:750}.generated-field strong{color:var(--midnight);font-size:15px}.generated-field small{color:var(--muted);font-size:13px}.invite-card{text-align:center;min-height:310px;position:sticky;top:20px}.invite-card>p:not(.admin-eyebrow){color:var(--muted);font-size:14px;line-height:1.65}.generated-student-number{color:var(--vispo);margin-top:12px;font-family:ui-monospace,monospace;font-size:16px;display:inline-block}.invite-step{width:52px;height:52px;color:var(--midnight);background:var(--gold);place-items:center;margin:0 auto 18px;display:grid}.invite-qr{border:1px solid var(--line);width:min(220px,100%);height:auto;margin:18px auto;display:block}.invite-card textarea{resize:vertical;overflow-wrap:anywhere;min-height:82px;padding:9px;font-family:ui-monospace,monospace;font-size:13px}.invite-card .admin-secondary,.invite-card .admin-primary{margin-top:10px}.one-time-code{border:1px solid var(--gold);text-align:left;background:#fff9e7;gap:9px;min-width:0;margin:16px 0;padding:14px;display:grid}.one-time-code small{color:#765100;letter-spacing:.04em;text-transform:uppercase;font-size:12px;font-weight:800}.one-time-code output{color:var(--midnight);letter-spacing:.18em;overflow-wrap:anywhere;font-family:ui-monospace,SFMono-Regular,Consolas,monospace;font-size:clamp(28px,4vw,38px);font-weight:900}.one-time-code p{color:var(--muted);text-wrap:pretty;margin:0;font-size:13px;line-height:1.5}.invite-expiry{color:var(--green);align-items:center;gap:5px;margin-top:15px;font-size:12px;display:inline-flex}.history-filters{border-bottom:1px solid var(--line);grid-template-columns:auto auto minmax(220px,1fr) auto;align-items:end;gap:12px;padding:20px;display:grid}.history-filters label{border:1px solid var(--line);min-height:48px;color:var(--muted);align-items:center;gap:7px;padding:0 11px;font-size:13px;display:flex}.history-filters input,.history-filters select{background:#fff;border:0;outline:0;min-height:44px}.notification-filters{border:0;grid-column:1/-2;min-width:0;margin:0;padding:0}.notification-filters legend{color:var(--muted);margin-bottom:7px;font-size:13px;font-weight:750}.notification-filters>div{flex-wrap:wrap;gap:8px;min-width:0;display:flex}.notification-filters button{border:1px solid var(--line);min-height:44px;color:var(--midnight);cursor:pointer;background:#fff;padding:0 13px;font-size:13px;font-weight:750}.notification-filters button[aria-pressed=true]{border-color:var(--midnight);color:#fff;background:var(--midnight)}.history-filters>.admin-primary{grid-column:-2/-1}.directory-tools button[aria-pressed=true]{color:#fff;background:var(--midnight)}.table-empty{color:var(--muted);text-align:center;font-size:14px;padding:28px!important}.admin-success a{color:var(--vispo);font-weight:800;text-decoration:underline}.history-search{width:100%}.history-summary{justify-content:space-between;align-items:center;padding:18px 20px;display:flex}.history-summary p{color:var(--muted);margin:0;font-family:ui-monospace,monospace;font-size:13px}.history-summary strong{color:var(--midnight);font-family:ui-monospace,monospace;font-size:22px}.history-summary small{color:var(--muted);font-size:13px}.history-table td:first-child{display:table-cell}.history-table time{color:var(--midnight);font-family:ui-monospace,monospace;font-size:13px}.delivery-pill{align-items:center;gap:5px;display:inline-flex}.delivery-pill i{background:var(--green);border-radius:50%;width:6px;height:6px}.narrow-admin{max-width:900px}.staff-clock-card{border:1px solid var(--midnight);color:#fff;background:var(--midnight);justify-content:space-between;align-items:center;gap:24px;min-width:0;margin-bottom:18px;padding:24px;display:flex}.staff-clock-card>div:first-child{min-width:0}.staff-clock-card .admin-eyebrow{color:var(--gold)}.staff-clock-card h2{color:#fff;text-wrap:balance;margin:0;font-size:26px}.staff-clock-card p:last-child{color:#ffffffad;margin:6px 0 0;font-size:14px}.staff-clock-actions{flex-wrap:wrap;flex:none;justify-content:flex-end;gap:10px;display:flex}.staff-clock-actions form{min-width:0;display:flex}.staff-clock-card .admin-secondary{border-color:#fff}.staff-clock-card .admin-primary{border-color:var(--gold);color:var(--midnight);background:var(--gold)}.staff-shared-launch>div:first-child{max-width:720px}.staff-launch-summary{flex-wrap:wrap;gap:8px 18px;margin-top:14px;display:flex!important}.staff-launch-summary span{color:#ffffffdb;align-items:center;gap:6px;font-size:13px;font-weight:700;display:inline-flex}.staff-month-toolbar{grid-template-columns:48px minmax(0,1fr) 48px;align-items:center;gap:14px;min-width:0;margin:24px 0 16px;display:grid}.staff-month-toolbar>div{text-align:center;min-width:0}.staff-month-toolbar h2{color:var(--midnight);text-wrap:balance;margin:0;font-size:23px}.staff-month-picker{margin-top:8px;display:inline-flex}.staff-month-picker input{border:1px solid var(--line);min-width:150px;min-height:44px;color:var(--midnight);font:inherit;font-variant-numeric:tabular-nums;background:#fff;padding:0 9px;font-size:14px}.staff-month-picker input:focus-visible{outline:3px solid var(--gold);outline-offset:2px}.month-link{border:1px solid var(--line);width:48px;height:48px;color:var(--midnight);background:#fff;place-items:center;font-size:20px;font-weight:800;display:grid}.staff-metrics{grid-template-columns:repeat(4,minmax(0,1fr))}.staff-metrics strong{font-size:clamp(20px,2vw,28px)}.staff-exception-card,.staff-report-card{margin-top:18px}.section-heading{border-bottom:1px solid var(--line);justify-content:space-between;align-items:end;gap:22px;min-width:0;padding:20px;display:flex}.section-heading>div{min-width:0}.section-heading h2{color:var(--midnight);text-wrap:balance;margin:0;font-size:20px}.section-heading>p{max-width:560px;color:var(--muted);text-align:right;text-wrap:pretty;margin:0;font-size:14px;line-height:1.6}.staff-exception-form{grid-template-columns:repeat(4,minmax(0,1fr));align-items:end;gap:12px;padding:20px;display:grid}.staff-exception-form label{min-width:0;color:var(--muted);gap:7px;font-size:14px;font-weight:750;display:grid}.staff-exception-form input,.staff-exception-form select{border:1px solid var(--line);width:100%;min-width:0;min-height:48px;color:var(--midnight);background:#fff;border-radius:0;outline:0;padding:0 11px}.staff-exception-form input:focus-visible,.staff-exception-form select:focus-visible{outline:3px solid var(--gold);outline-offset:-3px}.staff-note{grid-column:1/-2}.staff-exception-form>.admin-primary{grid-column:-2/-1}.staff-correction-form{grid-template-columns:repeat(4,minmax(0,1fr));align-items:end;gap:12px;padding:20px;display:grid}.staff-correction-form label{min-width:0;color:var(--muted);gap:7px;font-size:14px;font-weight:750;display:grid}.staff-correction-form input,.staff-correction-form select{border:1px solid var(--line);width:100%;min-width:0;min-height:48px;color:var(--midnight);background:#fff;border-radius:0;outline:0;padding:0 11px;font-size:16px}.staff-correction-form input:focus-visible,.staff-correction-form select:focus-visible{outline:3px solid var(--gold);outline-offset:-3px}.staff-session-picker{grid-column:1/-1}.staff-correction-reason{grid-column:1/-2}.staff-correction-form>.admin-primary{grid-column:-2/-1}.staff-report-card .student-table:not(.history-table) td:first-child{display:table-cell}.staff-report-card .student-table td{font-variant-numeric:tabular-nums}.staff-status-button,.staff-pin-button{border:1px solid var(--midnight);min-width:76px;min-height:44px;color:var(--midnight);cursor:pointer;white-space:nowrap;background:#fff;justify-content:center;align-items:center;gap:6px;padding:0 14px;font-size:14px;font-weight:800;display:inline-flex}.staff-status-button:disabled,.staff-pin-button:disabled{cursor:not-allowed;opacity:.55}.staff-pin-button{border-color:var(--vispo);color:var(--vispo)}.staff-status-button.danger{border-color:var(--red);color:var(--red)}.teacher-invite-form{grid-template-columns:minmax(180px,.8fr) minmax(260px,1.4fr) auto}.teacher-invite-form .staff-note,.teacher-invite-form>.admin-primary{grid-column:auto}.staff-pin-admin-modal{width:min(520px,100%)}.break-word{overflow-wrap:anywhere;white-space:normal;max-width:420px}.staff-workspace-tabs{border:1px solid var(--line);background:#fff;grid-template-columns:repeat(4,minmax(0,1fr));min-width:0;margin-bottom:18px;display:grid}.staff-workspace-tabs button{border:0;border-right:1px solid var(--line);min-width:0;min-height:54px;color:var(--muted);cursor:pointer;background:#fff;justify-content:center;align-items:center;gap:8px;padding:0 14px;font-size:15px;font-weight:800;display:inline-flex}.staff-workspace-tabs button:last-child{border-right:0}.staff-workspace-tabs button[aria-selected=true]{color:#fff;background:var(--midnight)}.staff-workspace-tabs button>span{min-width:24px;min-height:24px;color:var(--midnight);background:var(--gold);place-items:center;padding:0 6px;font-family:ui-monospace,monospace;font-size:12px;display:inline-grid}.staff-attention-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;display:grid}.staff-attention-grid article{border:1px solid var(--line);background:#fff;grid-template-columns:auto minmax(0,1fr);align-content:start;gap:12px;min-width:0;min-height:190px;padding:20px;display:grid}.attention-icon{color:#fff;background:var(--green);place-items:center;width:46px;height:46px;display:grid}.attention-icon.warning{color:var(--midnight);background:var(--gold)}.staff-attention-grid article>div{align-content:start;min-width:0;display:grid}.staff-attention-grid small{color:var(--muted);font-size:13px}.staff-attention-grid strong{color:var(--midnight);font-variant-numeric:tabular-nums;font-family:ui-monospace,monospace;font-size:25px}.staff-attention-grid p{color:var(--muted);text-wrap:pretty;grid-column:1/-1;margin:8px 0 0;font-size:13px;line-height:1.6}.staff-attention-grid button{border:1px solid var(--midnight);min-height:44px;color:var(--midnight);cursor:pointer;background:#fff;grid-column:1/-1;align-self:end;margin-top:auto;font-weight:800}.staff-directory-toolbar{justify-content:space-between;align-items:center;gap:14px;min-width:0;margin:18px 0;display:flex}.staff-query-toolbar{border:1px solid var(--line);background:#fff;grid-template-columns:minmax(260px,1.35fr) repeat(2,minmax(180px,.75fr)) auto;align-items:end;gap:12px;min-width:0;margin:0 0 18px;padding:18px;display:grid}.staff-query-heading{min-width:0;color:var(--midnight);grid-column:1/-1;align-items:center;gap:8px;font-size:14px;font-weight:850;display:flex}.staff-query-toolbar .staff-search-box{width:100%}.staff-query-field{min-width:0;color:var(--muted);gap:7px;font-size:13px;font-weight:800;display:grid}.staff-query-field select{border:1px solid var(--line);width:100%;min-width:0;min-height:52px;color:var(--midnight);font:inherit;background-color:#fff;border-radius:0;padding:0 38px 0 12px;font-size:15px}.staff-query-field select:focus-visible,.staff-query-reset:focus-visible{outline:3px solid var(--gold);outline-offset:2px}.staff-query-reset{border:1px solid var(--midnight);min-height:52px;color:var(--midnight);cursor:pointer;white-space:nowrap;background:#fff;justify-content:center;align-items:center;gap:7px;padding:0 16px;font-weight:800;display:inline-flex}.staff-search-box{border:1px solid var(--line);min-width:0;min-height:52px;color:var(--muted);background:#fff;align-items:center;gap:10px;margin:0;padding:0 14px;display:flex}.staff-search-box.compact{width:min(440px,100%)}.staff-search-box:focus-within{outline:3px solid var(--gold);outline-offset:-3px}.staff-search-box input{width:100%;min-width:0;color:var(--midnight);background:0 0;border:0;outline:0;font-size:16px}.staff-filter-group{border:1px solid var(--line);background:#fff;flex:none;min-width:0;display:flex;overflow-x:auto}.staff-filter-group button{border:0;border-right:1px solid var(--line);min-height:50px;color:var(--midnight);cursor:pointer;white-space:nowrap;background:#fff;padding:0 15px}.staff-filter-group button:last-child{border-right:0}.staff-filter-group button[aria-pressed=true]{color:#fff;background:var(--midnight);font-weight:800}.staff-picker{border:0;border-bottom:1px solid var(--line);grid-column:1/-1;gap:10px;min-width:0;margin:0;padding:0 0 18px;display:grid}.staff-picker legend{color:var(--muted);margin-bottom:8px;font-size:14px;font-weight:750}.staff-picker .staff-search-box{width:100%}.staff-picker-results{grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;display:grid}.staff-picker-results button{border:1px solid var(--line);min-width:0;min-height:58px;color:var(--midnight);cursor:pointer;text-align:left;background:#fff;align-content:center;gap:2px;padding:9px 12px;display:grid}.staff-picker-results button[aria-pressed=true]{border-color:var(--vispo);color:#fff;background:var(--vispo)}.staff-picker-results strong,.staff-picker-results small{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.staff-picker-results small{color:inherit;opacity:.72;font-family:ui-monospace,monospace}.staff-picker-results>p,.staff-picker-selection{color:var(--muted);margin:0;font-size:13px}.staff-picker-selection strong{color:var(--midnight)}.staff-pagination{border-top:1px solid var(--line);justify-content:space-between;align-items:center;gap:16px;min-width:0;min-height:62px;padding:10px 18px;display:flex}.staff-pagination p{color:var(--muted);font-variant-numeric:tabular-nums;margin:0;font-size:13px}.staff-pagination>div{align-items:center;gap:10px;display:flex}.staff-pagination span{color:var(--midnight);font-variant-numeric:tabular-nums;font-size:13px;font-weight:750}.staff-pagination button{border:1px solid var(--line);width:42px;height:42px;color:var(--midnight);cursor:pointer;background:#fff;place-items:center;display:grid}.staff-pagination button:disabled{cursor:not-allowed;opacity:.42}.staff-manage-actions{border-top:1px solid var(--line);gap:10px;margin-top:22px;padding-top:20px;display:grid}.staff-manage-actions button{justify-content:center;width:100%;min-height:48px}.staff-manage-note{color:var(--muted);text-wrap:pretty;margin:16px 0 0;font-size:13px;line-height:1.6}.staff-campus-assignment{border:1px solid var(--line);gap:12px;margin:20px 0 0;padding:18px;display:grid}.staff-campus-assignment legend{color:var(--midnight);padding:0 6px;font-weight:850}.staff-campus-assignment>p{color:var(--muted);margin:0;font-size:13px;line-height:1.55}.staff-campus-assignment>div{gap:8px;max-height:240px;display:grid;overflow-y:auto}.staff-campus-assignment label{border:1px solid var(--line);cursor:pointer;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:10px;min-width:0;min-height:54px;padding:9px 11px;display:grid}.staff-campus-assignment label:has(input[type=checkbox]:checked){border-color:var(--vispo);background:#f5f6ff}.staff-campus-assignment input{width:20px;height:20px;accent-color:var(--vispo)}.staff-campus-assignment label>span{min-width:0;display:grid}.staff-campus-assignment strong,.staff-campus-assignment small{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.staff-campus-assignment small{color:var(--muted);font-size:12px}.staff-campus-assignment>button{justify-content:center;min-height:48px}.organization-workspace,.class-workspace{gap:18px;min-width:0;display:grid}.organization-identity-card,.class-scope-banner{border:1px solid var(--midnight);color:#fff;background:var(--midnight);justify-content:space-between;align-items:center;gap:20px;min-width:0;padding:22px 24px;display:flex}.organization-identity-card>span,.class-scope-banner>div>span{width:52px;height:52px;color:var(--midnight);background:var(--gold);flex:none;place-items:center;display:grid}.organization-identity-card>div{min-width:0;margin-right:auto}.organization-identity-card .admin-eyebrow,.class-scope-banner .admin-eyebrow{color:var(--gold)}.organization-identity-card h2,.class-scope-banner h2{color:#fff;letter-spacing:-.035em;margin:0;font-size:clamp(22px,3vw,30px)}.organization-identity-card p:last-child,.class-scope-banner>p{color:#ffffffad;margin:5px 0 0;font-size:14px}.organization-identity-card>strong{white-space:nowrap;border:1px solid #ffffff47;padding:8px 11px;font-size:13px}.organization-workspace>.security-banner{margin:0;font-size:14px}.organization-workspace-grid{grid-template-columns:repeat(2,minmax(0,1fr));align-items:start;gap:18px;min-width:0;display:grid}.settings-panel{border:1px solid var(--line);background:#fff;min-width:0}.settings-panel .section-heading{align-items:start}.settings-panel .section-heading>p{max-width:300px;font-size:13px}.billing-workspace{gap:22px;display:grid}.pricing-page{background-color:#faf9f7;background-image:linear-gradient(#071d4908 1px,#0000 1px),linear-gradient(90deg,#071d4908 1px,#0000 1px),none;background-position:0 0,0 0,0 0;background-repeat:repeat,repeat,repeat;background-size:30px 30px;background-attachment:scroll,scroll,scroll;background-origin:padding-box,padding-box,padding-box;background-clip:border-box,border-box,border-box;min-height:100dvh;padding:0 clamp(18px,5vw,76px) 60px}.pricing-masthead{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;gap:18px;min-height:82px;display:flex}.pricing-masthead>a:last-child,.pricing-contact>a{align-items:center;gap:8px;font-weight:850;display:inline-flex}.pricing-wordmark{color:var(--midnight);letter-spacing:.13em;align-items:center;gap:11px;font-size:21px;font-weight:950;display:inline-flex}.pricing-wordmark span{color:#fff;background:var(--midnight);letter-spacing:0;place-items:center;width:42px;height:42px;font-family:Georgia,serif;font-size:25px;display:grid}.pricing-hero{max-width:900px;padding:clamp(58px,9vw,110px) 0 clamp(36px,6vw,68px)}.pricing-hero>p,.pricing-contact p{color:var(--vispo);letter-spacing:.16em;margin:0 0 10px;font-family:ui-monospace,monospace;font-size:12px;font-weight:900}.pricing-hero h1{color:var(--midnight);letter-spacing:-.065em;margin:0;font-size:clamp(38px,6vw,76px);line-height:1.03}.pricing-hero>span{max-width:670px;color:var(--muted);margin-top:22px;font-size:clamp(16px,2vw,19px);display:block}.pricing-sheet{border:1px solid var(--midnight);box-shadow:var(--shadow);background:#fff;overflow:hidden}.pricing-plan-row,.pricing-feature-row{grid-template-columns:minmax(180px,.8fr) repeat(3,minmax(190px,1fr));display:grid}.pricing-row-label,.pricing-plan-row article{border-right:1px solid var(--line);min-width:0;padding:24px}.pricing-row-label{color:#fff;background:var(--midnight);align-content:end;gap:5px;display:grid}.pricing-row-label span{color:#ffffff8f;font-size:12px}.pricing-plan-row article{border-bottom:1px solid var(--line);gap:12px;display:grid}.pricing-plan-row article:last-child,.pricing-feature-row>:last-child{border-right:0}.pricing-plan-row article.is-featured{box-shadow:inset 0 6px 0 var(--gold)}.pricing-plan-row article>p{color:var(--midnight);justify-content:space-between;align-items:center;margin:0;font-size:20px;font-weight:900;display:flex}.pricing-plan-row article>strong{color:var(--midnight);letter-spacing:-.06em;font-family:ui-monospace,monospace;font-size:38px}.pricing-plan-row article>strong small,.pricing-plan-row article>strong span,.pricing-plan-row article>em{color:var(--muted);letter-spacing:0;font-size:12px;font-style:normal}.pricing-plan-row article>div{color:var(--muted);font-size:13px}.pricing-plan-row article>div span{color:var(--midnight);font-family:ui-monospace,monospace;font-size:25px;font-weight:900}.pricing-plan-row article>a{border:1px solid var(--midnight);color:#fff;background:var(--midnight);justify-content:center;align-items:center;min-height:46px;margin-top:8px;font-weight:850;display:flex}.pricing-plan-row article.is-featured>a{color:var(--midnight);border-color:var(--gold);background:var(--gold)}.pricing-feature-row>*{border-right:1px solid var(--line);border-bottom:1px solid var(--line);justify-content:center;align-items:center;min-height:56px;padding:12px 18px;display:flex}.pricing-feature-row>strong{color:var(--midnight);justify-content:flex-start;font-size:13px}.pricing-feature-row>span{color:var(--green);font-weight:850}.pricing-feature-row>span svg[data-lucide=minus]{color:#bbb8b3}.pricing-feature-header{background:#f5f3ef}.pricing-feature-header>span{color:var(--midnight);font-size:11px;font-weight:900}.pricing-contact{color:#fff;background:var(--midnight);justify-content:space-between;align-items:center;gap:22px;margin-top:28px;padding:28px;display:flex}.pricing-contact p{color:var(--gold)}.pricing-contact h2{color:#fff;margin:0;font-size:clamp(24px,3vw,34px)}.pricing-contact>a{color:var(--midnight);background:var(--gold);padding:13px 17px}.login-pricing-link{color:var(--midnight);justify-content:center;align-items:center;gap:6px;margin-top:16px;font-size:13px;font-weight:800;display:inline-flex}@media (max-width:860px){.pricing-sheet{overflow-x:auto}.pricing-plan-row,.pricing-feature-row{min-width:790px}}@media (max-width:560px){.pricing-page{padding-inline:14px}.pricing-masthead{min-height:70px}.pricing-masthead>a:last-child{font-size:13px}.pricing-hero{padding-top:48px}.pricing-sheet{overflow:hidden}.pricing-plan-row{grid-template-columns:1fr;min-width:0}.pricing-row-label{display:none}.pricing-plan-row article{border-right:0;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:8px 14px;padding:22px}.pricing-plan-row article>p,.pricing-plan-row article>strong,.pricing-plan-row article>em,.pricing-plan-row article>div{grid-column:1}.pricing-plan-row article>a{grid-area:1/2/5;min-width:112px;margin:0;padding:0 12px}.pricing-feature-row{grid-template-columns:minmax(0,1fr) repeat(3,50px);min-width:0}.pricing-feature-row>*{min-height:52px;padding:9px 6px}.pricing-feature-row>strong{padding-left:14px}.pricing-feature-header>span{color:var(--midnight);writing-mode:vertical-rl;font-size:9px;line-height:1.1}.pricing-contact{flex-direction:column;align-items:stretch}.pricing-contact>a{justify-content:center}}.billing-current-card{border:1px solid var(--midnight);color:#fff;background:var(--midnight);grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:18px;padding:22px;display:grid}.billing-current-icon{width:54px;height:54px;color:var(--midnight);background:var(--gold);place-items:center;display:grid}.billing-current-card p,.billing-current-card h2,.billing-current-card span,.billing-current-card small,.billing-current-card strong{margin:0}.billing-current-card p,.billing-current-meta small{color:#ffffff94;letter-spacing:.08em;font-size:12px;font-weight:800}.billing-current-card h2{color:#fff;margin-top:3px;font-size:28px;line-height:1}.billing-current-card>div:nth-child(2)>span{color:var(--gold);margin-top:8px;font-size:13px;font-weight:800;display:inline-block}.billing-current-meta{text-align:right;justify-items:end;gap:3px;display:grid}.billing-current-meta span{color:#ffffffa8;font-size:12px}.billing-feedback{color:#086330;background:#ecf9f1;border:1px solid #93d2ac;margin:0;padding:14px 16px;font-weight:750}.billing-feedback.is-error{color:#9f1d27;background:#fff2f2;border-color:#e7a2a2}.billing-plan-heading{justify-content:space-between;align-items:end;gap:20px;padding-top:6px;display:flex}.billing-plan-heading h2,.billing-enterprise h2{color:var(--midnight);letter-spacing:-.035em;margin:4px 0 0;font-size:clamp(23px,2.6vw,32px)}.billing-cycle-switch{border:1px solid var(--line);background:#fff;padding:4px;display:flex}.billing-cycle-switch button{min-height:42px;color:var(--muted);cursor:pointer;background:0 0;border:0;padding:0 15px;font-weight:800}.billing-cycle-switch button[aria-pressed=true]{color:#fff;background:var(--midnight)}.billing-cycle-switch span{color:var(--gold);font-size:11px}.billing-plan-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;display:grid}.billing-plan-card{border-radius:var(--radius-md);min-width:0;box-shadow:var(--shadow-card);background:#fff;border:1px solid #d9d5cd;grid-template-rows:auto auto auto 1fr auto;gap:20px;padding:22px;display:grid;position:relative}.billing-plan-card.plan-standard{border-top:5px solid var(--gold);padding-top:18px}.billing-plan-card.plan-ai_pro{border-top:5px solid var(--vispo);padding-top:18px}.billing-plan-card.is-current:after{border:1px solid var(--midnight);pointer-events:none;content:"";position:absolute;inset:8px}.billing-plan-title{justify-content:space-between;align-items:start;gap:12px;display:flex}.billing-plan-title p{color:var(--vispo);letter-spacing:.12em;align-items:center;gap:5px;margin:0 0 5px;font-family:ui-monospace,monospace;font-size:10px;font-weight:900;display:flex}.billing-plan-title h3{color:var(--midnight);letter-spacing:-.04em;margin:0;font-size:27px}.billing-plan-title>span{color:var(--midnight);background:var(--gold);padding:5px 8px;font-size:11px;font-weight:900}.billing-price{color:var(--midnight);align-items:baseline;display:flex}.billing-price strong{letter-spacing:-.07em;font-family:ui-monospace,monospace;font-size:clamp(34px,4vw,48px)}.billing-price strong small{letter-spacing:0;margin-right:5px;font-size:13px}.billing-price>span{color:var(--muted);font-size:13px}.billing-capacity{background:#f5f3ef;gap:10px;padding:14px;display:grid}.billing-capacity>div:first-child{color:var(--midnight);align-items:center;gap:7px;display:flex}.billing-capacity strong{margin-left:auto;font-family:ui-monospace,monospace;font-size:21px}.billing-capacity span{color:var(--muted);font-size:12px}.billing-capacity-rail{background:#dedbd4;height:6px;overflow:hidden}.billing-capacity-rail i{background:var(--vispo);height:100%;display:block}.plan-standard .billing-capacity-rail i{background:#c9950b}.plan-ai_pro .billing-capacity-rail i{background:var(--midnight)}.billing-plan-card ul{align-content:start;gap:10px;margin:0;padding:0;list-style:none;display:grid}.billing-plan-card li{color:var(--midnight);align-items:center;gap:8px;font-size:14px;display:flex}.billing-plan-card li svg{color:var(--green);flex:none}.billing-plan-card>button{border:1px solid var(--midnight);color:#fff;background:var(--midnight);cursor:pointer;min-height:50px;font-weight:850}.billing-plan-card>button:disabled{color:#7c7c7c;cursor:not-allowed;background:#efede9;border-color:#d8d5ce}.billing-plan-card:not(.is-current)>button:not(:disabled):hover{color:var(--midnight);background:var(--gold)}.billing-trust-row{color:var(--green);background:#eef8f2;border:1px solid #b9d9c6;align-items:center;gap:12px;padding:16px 18px;display:flex}.billing-trust-row p{gap:2px;margin:0;display:grid}.billing-trust-row span{color:var(--muted);font-size:12px}.billing-enterprise{border:1px solid var(--midnight);background:#fff;justify-content:space-between;align-items:center;gap:20px;padding:24px;display:flex}.billing-enterprise a{color:#fff;background:var(--midnight);text-align:center;min-width:140px;padding:14px 18px;font-weight:850}.billing-orders{border-radius:var(--radius-md);box-shadow:var(--shadow-card);background:#fff;border:1px solid #d9d5cd;overflow:hidden}.billing-orders>div:last-child{display:grid}.billing-orders article{border-top:1px solid var(--line);grid-template-columns:minmax(0,1fr) auto auto;align-items:center;gap:22px;padding:15px 20px;display:grid}.billing-orders article>div{gap:3px;display:grid}.billing-orders article span{color:var(--muted);font-size:12px}.billing-order-status{text-align:center;min-width:68px;padding:6px 8px;font-weight:850}.billing-order-status.is-paid{color:#08713a;background:#e9f7ef}.billing-order-status.is-failed{color:#a32029;background:#fff0f0}.billing-order-status.is-pending{color:#805b00;background:#fff4ce}@media (max-width:980px){.billing-plan-grid{grid-template-columns:1fr}.billing-plan-card{grid-template-rows:auto auto auto;grid-template-columns:minmax(0,1.15fr) minmax(210px,.85fr)}.billing-plan-card .billing-plan-title,.billing-plan-card .billing-price,.billing-plan-card .billing-capacity{grid-column:1}.billing-plan-card ul{grid-area:1/2/3}.billing-plan-card>button{grid-area:3/2}}@media (max-width:680px){.billing-current-card{grid-template-columns:auto 1fr}.billing-current-meta{text-align:left;border-top:1px solid #ffffff29;grid-column:1/-1;justify-items:start;padding-top:14px}.billing-plan-heading,.billing-enterprise{flex-direction:column;align-items:stretch}.billing-cycle-switch,.billing-cycle-switch button{flex:1}.billing-plan-card{grid-template-rows:auto;grid-template-columns:1fr;padding:20px}.billing-plan-card .billing-plan-title,.billing-plan-card .billing-price,.billing-plan-card .billing-capacity,.billing-plan-card ul,.billing-plan-card>button{grid-area:auto/1}.billing-enterprise a{width:100%}.billing-orders article{grid-template-columns:1fr auto;gap:10px}.billing-order-status{grid-column:1/-1;justify-self:start}}.manager-invitation-panel{display:grid}.manager-invitation-form{grid-template-columns:minmax(260px,1fr) auto;align-items:end;gap:12px;min-width:0;padding:18px 20px 20px;display:grid}.manager-invitation-form label{min-width:0;color:var(--muted);gap:6px;font-size:13px;font-weight:750;display:grid}.manager-invitation-form input{border:1px solid var(--line);width:100%;min-width:0;min-height:48px;color:var(--midnight);background:#fff;border-radius:0;outline:0;padding:0 12px;font-size:16px}.manager-invitation-form input:focus-visible{outline:3px solid var(--gold);outline-offset:-3px}.manager-invitation-form .admin-primary{white-space:nowrap;min-height:48px}.manager-invitation-result{border:1px solid var(--vispo);background:#f4f5ff;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:10px;min-width:0;margin:0 20px 20px;padding:14px;display:grid}.manager-invitation-result code{overflow-wrap:anywhere;min-width:0;color:var(--midnight);font-size:12px;line-height:1.55}.manager-invitation-result small{color:var(--muted);grid-column:1/-1;font-size:12px;line-height:1.5}.manager-onboarding-page{background-color:var(--paper);background-image:linear-gradient(#071d490a 1px,#0000 1px),linear-gradient(90deg,#071d490a 1px,#0000 1px);background-size:34px 34px;place-items:center;min-height:100dvh;padding:24px;display:grid}.manager-onboarding-card{border:1px solid var(--midnight);background:#fff;width:min(680px,100%);padding:clamp(28px,5vw,52px);box-shadow:18px 18px #071d4914}.manager-onboarding-icon{width:58px;height:58px;color:var(--midnight);background:var(--gold);place-items:center;margin-bottom:26px;display:grid}.manager-onboarding-card h1{color:var(--midnight);letter-spacing:-.045em;margin:7px 0 14px;font-size:clamp(30px,5vw,48px);line-height:1.06}.manager-onboarding-card>p:not(.admin-eyebrow):not(.workspace-feedback){color:var(--muted);margin:0 0 24px;font-size:16px;line-height:1.7}.manager-onboarding-card form{gap:16px;display:grid}.manager-onboarding-card label{color:var(--midnight);gap:7px;font-size:14px;font-weight:800;display:grid}.manager-onboarding-card input{border:1px solid var(--line);width:100%;min-width:0;min-height:54px;color:var(--midnight);background:#fff;border-radius:0;outline:0;padding:0 14px;font-size:16px}.manager-onboarding-card input:focus-visible{outline:3px solid var(--gold);outline-offset:-3px}.manager-onboarding-card label small{color:var(--muted);font-size:12px;font-weight:500;line-height:1.5}.manager-onboarding-security{color:var(--green);background:var(--green-soft);align-items:flex-start;gap:8px;margin:2px 0;padding:12px;font-size:13px;line-height:1.55;display:flex}.manager-onboarding-security svg{flex:none}.manager-onboarding-card .admin-primary{justify-content:center;min-height:54px}.manager-onboarding-card .workspace-feedback{margin-top:16px;position:static}.organization-list,.campus-list{gap:9px;padding:18px 20px;display:grid}.organization-list article,.campus-list article{border:1px solid var(--line);background:#fbfaf7;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:12px;min-width:0;min-height:66px;padding:11px 12px;display:grid}.campus-list article{grid-template-columns:auto minmax(0,1fr) auto auto}.organization-list article.is-active{border-color:var(--vispo);background:#f1f2ff}.organization-list article>span,.campus-list article>span{color:#fff;background:var(--vispo);place-items:center;width:40px;height:40px;font-family:ui-monospace,monospace;font-size:11px;font-weight:850;display:grid}.campus-list article>span{color:var(--midnight);background:var(--gold)}.organization-list article>div,.campus-list article>div{gap:3px;min-width:0;display:grid}.organization-list strong,.campus-list strong{color:var(--midnight);overflow-wrap:anywhere;font-size:15px}.organization-list small,.campus-list small{color:var(--muted);overflow-wrap:anywhere;font-size:12px}.organization-list article>svg{color:var(--green)}.campus-list em{color:var(--muted);background:#eceae6;padding:5px 8px;font-size:12px;font-style:normal;font-weight:800}.campus-list em.is-active{color:var(--green);background:var(--green-soft)}.campus-list article>button{border:1px solid var(--line);min-height:44px;color:var(--midnight);cursor:pointer;background:#fff;justify-content:center;align-items:center;gap:6px;padding:0 10px;font-size:12px;font-weight:800;display:inline-flex}.campus-list article>button:focus-visible{outline:3px solid var(--gold);outline-offset:2px}.campus-list article>button:disabled{cursor:wait;opacity:.55}.compact-create-form{border:1px solid var(--line);background:#faf9f7;gap:13px;min-width:0;margin:0 20px 20px;padding:18px;display:grid}.compact-create-form h3{color:var(--midnight);align-items:center;gap:7px;margin:0 0 2px;font-size:16px;display:flex}.compact-create-form label{min-width:0;color:var(--muted);gap:6px;font-size:13px;font-weight:750;display:grid}.compact-create-form input{border:1px solid var(--line);width:100%;min-width:0;min-height:48px;color:var(--midnight);background:#fff;border-radius:0;outline:0;padding:0 11px;font-size:16px}.compact-create-form label small{font-size:12px;font-weight:500;line-height:1.5}.compact-create-form input:focus-visible{outline:3px solid var(--gold);outline-offset:-3px}.workspace-feedback{z-index:4;color:var(--green);background:var(--green-soft);border:1px solid #bfd8c7;margin:0;padding:13px 15px;font-size:14px;font-weight:750;position:sticky;bottom:18px;box-shadow:0 10px 28px #071d491a}.structured-empty{min-height:150px;color:var(--muted);text-align:center;align-content:center;place-items:center;gap:6px;padding:22px;display:grid}.structured-empty.prominent{border:1px solid var(--line);background:#fff;min-height:300px}.structured-empty strong{color:var(--midnight);font-size:17px}.structured-empty p{text-wrap:pretty;max-width:520px;margin:0;font-size:13px;line-height:1.6}.class-scope-banner>div{align-items:center;gap:14px;min-width:0;display:flex}.class-scope-banner>div>div{min-width:0}.class-create-form{border:1px solid var(--line);background:#fff;grid-template-columns:repeat(4,minmax(160px,1fr));align-items:end;gap:12px;min-width:0;padding:20px;display:grid}.class-create-form>.admin-primary{min-height:48px}.class-create-form label,.class-detail-form label{min-width:0;color:var(--muted);gap:6px;font-size:13px;font-weight:750;display:grid}.class-create-form input,.class-create-form select,.class-detail-form input,.class-detail-form select{border:1px solid var(--line);width:100%;min-width:0;min-height:48px;color:var(--midnight);background:#fff;border-radius:0;outline:0;padding:0 11px;font-size:16px}.class-create-form input:focus-visible,.class-create-form select:focus-visible,.class-detail-form input:focus-visible,.class-detail-form select:focus-visible{outline:3px solid var(--gold);outline-offset:-3px}.class-workspace-grid{grid-template-columns:minmax(280px,.72fr) minmax(0,1.6fr);align-items:start;gap:18px;min-width:0;display:grid}.class-directory,.class-detail-form,.class-detail-stack{min-width:0}.class-directory{border:1px solid var(--line);background:#fff}.class-directory-tools{border-bottom:1px solid var(--line);gap:10px;min-width:0;padding:14px;display:grid}.class-directory-tools label{border:1px solid var(--line);min-width:0;min-height:48px;color:var(--muted);grid-template-columns:auto minmax(0,1fr);align-items:center;gap:8px;padding:0 11px;display:grid}.class-directory-tools input,.class-directory-tools select{width:100%;min-width:0;min-height:46px;color:var(--midnight);background:#fff;border:0;outline:0;font-size:15px}.class-directory-tools>select{border:1px solid var(--line);padding:0 10px}.class-directory-tools label:focus-within,.class-directory-tools>select:focus-visible{outline:3px solid var(--gold);outline-offset:-3px}.class-card-list{max-height:calc(100dvh - 340px);display:grid;overflow-y:auto}.class-card-list>button{border:0;border-bottom:1px solid var(--line);min-width:0;min-height:92px;color:var(--midnight);cursor:pointer;text-align:left;background:#fff;grid-template-columns:44px minmax(0,1fr);align-items:center;gap:12px;padding:14px;display:grid}.class-card-list>button[aria-pressed=true]{color:#fff;background:var(--midnight)}.class-card-list>button>span{color:#fff;background:var(--vispo);place-items:center;width:44px;height:44px;font-family:ui-monospace,monospace;font-size:10px;font-weight:850;display:grid;overflow:hidden}.class-card-list>button[aria-pressed=true]>span{color:var(--midnight);background:var(--gold)}.class-card-list>button>div{gap:2px;min-width:0;display:grid}.class-card-list strong,.class-card-list small,.class-card-list em{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.class-card-list strong{font-size:15px}.class-card-list small{color:inherit;opacity:.7;font-size:12px}.class-card-list em{color:inherit;opacity:.82;margin-top:4px;font-size:12px;font-style:normal;font-weight:750}.class-detail-stack{gap:14px;display:grid}.class-detail-form{border:1px solid var(--line);background:#fff;padding:20px}.class-detail-form .section-heading{margin:-20px -20px 20px}.class-state{color:var(--muted);background:#eceae6;padding:6px 9px;font-size:12px;font-weight:850}.class-state.active{color:var(--green);background:var(--green-soft)}.class-state.archived{color:#fff;background:#6a6d73}.class-detail-form>.admin-secondary{margin-top:16px}.roster-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;min-width:0;display:grid}.roster-picker{border:1px solid var(--line);background:#fff;align-content:start;gap:11px;min-width:0;margin:0;padding:18px;display:grid}.roster-picker legend{color:var(--midnight);padding:0 7px;font-size:17px;font-weight:850}.roster-picker legend span{min-width:25px;min-height:25px;color:var(--midnight);background:var(--gold);place-items:center;margin-left:8px;padding:0 6px;font-family:ui-monospace,monospace;font-size:12px;display:inline-grid}.roster-picker>p{min-height:42px;color:var(--muted);text-wrap:pretty;margin:0;font-size:13px;line-height:1.55}.roster-picker>label{border:1px solid var(--line);min-height:46px;color:var(--muted);grid-template-columns:auto minmax(0,1fr);align-items:center;gap:8px;padding:0 10px;display:grid}.roster-picker>label:focus-within{outline:3px solid var(--gold);outline-offset:-3px}.roster-picker>label input{width:100%;min-width:0;color:var(--midnight);background:#fff;border:0;outline:0;font-size:15px}.roster-picker>div{border:1px solid var(--line);max-height:320px;display:grid;overflow-y:auto}.roster-option{border-bottom:1px solid var(--line);cursor:pointer;grid-template-columns:auto minmax(0,1fr);align-items:center;gap:10px;min-width:0;min-height:55px;padding:8px 10px;display:grid}.roster-option:last-child{border-bottom:0}.roster-option:has(input:checked){background:#f1f2ff}.roster-option input{width:20px;height:20px;accent-color:var(--vispo)}.roster-option span{gap:2px;min-width:0;display:grid}.roster-option strong,.roster-option small{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.roster-option strong{color:var(--midnight);font-size:14px}.roster-option small{color:var(--muted);font-family:ui-monospace,monospace;font-size:11px}.roster-picker>small,.roster-empty{color:var(--muted);margin:0;font-size:12px;line-height:1.5}.roster-empty{text-align:center;padding:18px}.staff-kiosk-page{min-height:100dvh;color:var(--ink);background:linear-gradient(#071d4908 1px, transparent 1px), linear-gradient(90deg, #071d4908 1px, transparent 1px), var(--paper);background-size:36px 36px;padding:22px clamp(20px,4vw,58px) 30px}.staff-kiosk-header{justify-content:space-between;align-items:center;width:min(1240px,100%);min-height:62px;margin:0 auto;display:flex}.staff-kiosk-header>div{text-align:right;gap:2px;min-width:0;display:grid}.staff-kiosk-header strong{color:var(--midnight);font-size:15px}.staff-kiosk-header time{color:var(--muted);font-variant-numeric:tabular-nums;font-family:ui-monospace,monospace;font-size:13px}.staff-kiosk-board{border:1px solid var(--midnight);width:min(1240px,100%);box-shadow:var(--shadow);background:#fff;margin:24px auto 0}.staff-kiosk-intro{color:#fff;background:var(--midnight);grid-template-columns:minmax(0,1fr) minmax(260px,410px);align-items:end;gap:10px 32px;min-width:0;padding:clamp(26px,4vw,48px);display:grid}.staff-kiosk-intro .kiosk-eyebrow{color:var(--gold);grid-column:1}.staff-kiosk-intro h1{color:#fff;letter-spacing:-.055em;text-wrap:balance;grid-column:1;margin:0;font-size:clamp(34px,5vw,58px);line-height:1.05}.staff-kiosk-intro>p:not(.kiosk-eyebrow){color:#ffffffb8;text-wrap:pretty;grid-column:1;max-width:680px;margin:4px 0 0;font-size:15px;line-height:1.7}.staff-kiosk-search{min-height:58px;color:var(--vispo);background:#fff;border:2px solid #fff;grid-area:1/2/span 3;grid-template-columns:auto minmax(0,1fr);align-items:center;gap:11px;padding:0 16px;display:grid}.staff-kiosk-search:focus-within{outline:4px solid var(--gold);outline-offset:3px}.staff-kiosk-search input{width:100%;min-width:0;color:var(--midnight);background:#fff;border:0;outline:0;font-size:17px;font-weight:700}.staff-kiosk-legend{border-top:1px solid #ffffff29;flex-wrap:wrap;grid-column:1/-1;gap:8px 18px;margin-top:15px;padding-top:16px;display:flex}.staff-kiosk-legend span{color:#ffffffb8;align-items:center;gap:7px;font-size:13px;display:inline-flex}.staff-kiosk-legend i{background:#8b94a8;border-radius:50%;width:9px;height:9px}.staff-kiosk-legend i.is-working{background:#2bc167}.staff-kiosk-legend i.is-break{background:var(--gold)}.staff-face-entry{border-bottom:1px solid var(--line);background:#f7f8fb;grid-template-columns:minmax(250px,.72fr) minmax(0,1.28fr);align-items:stretch;display:grid}.staff-face-action-heading{min-width:0;color:var(--gold);background:var(--midnight);align-items:center;gap:13px;padding:20px 24px;display:flex}.staff-face-action-heading>div{gap:3px;min-width:0;display:grid}.staff-face-action-heading span{color:#ffffffad;letter-spacing:.14em;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:10px;font-weight:900}.staff-face-action-heading strong{color:#fff;font-size:18px}.staff-face-actions{background:var(--line);grid-template-columns:repeat(4,minmax(0,1fr));gap:1px;padding:1px;display:grid}.staff-face-actions button{min-width:0;min-height:82px;color:var(--midnight);cursor:pointer;background:#fff;border:0;align-content:center;place-items:center;gap:7px;padding:10px 8px;display:grid}.staff-face-actions button:hover,.staff-face-actions button:focus-visible{z-index:1;color:var(--vispo);outline:4px solid var(--gold);outline-offset:-4px;position:relative}.staff-face-actions button:disabled{cursor:wait;opacity:.55}.staff-face-actions strong{font-size:14px}.staff-kiosk-toast{min-height:54px;color:var(--red);background:#fff0f0;border-bottom:1px solid #f0c1c1;align-items:center;gap:9px;margin:0;padding:13px clamp(22px,4vw,48px);font-weight:750;display:flex}.staff-kiosk-toast.is-success{color:var(--green);background:var(--green-soft);border-color:#b8dec5}.staff-kiosk-roster{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;padding:clamp(20px,3vw,34px);display:grid}.staff-person-card{border:1px solid var(--line);min-width:0;min-height:94px;color:var(--midnight);cursor:pointer;text-align:left;background:#fff;grid-template-rows:1fr auto;grid-template-columns:44px minmax(0,1fr);align-items:center;gap:2px 13px;padding:16px 17px 14px 22px;display:grid;position:relative;overflow:hidden}.staff-person-card:disabled{cursor:not-allowed;filter:grayscale(.35);opacity:.58}.staff-state-rail{background:#8b94a8;width:6px;position:absolute;inset:0 auto 0 0}.staff-state-rail.working{background:var(--green)}.staff-state-rail.break{background:var(--gold)}.staff-person-icon{width:44px;height:44px;color:var(--midnight);background:#eef0f6;grid-row:1/span 2;place-items:center;display:grid}.staff-person-copy{align-self:end;min-width:0;display:grid}.staff-person-copy strong{overflow-wrap:anywhere;min-width:0;font-size:17px;line-height:1.25}.staff-person-copy small{color:var(--muted);margin-top:3px;font-family:ui-monospace,monospace;font-size:12px}.staff-live-state{color:var(--muted);font-variant-numeric:tabular-nums;align-self:start;font-size:13px}.staff-live-state.working{color:var(--green);font-weight:750}.staff-live-state.break{color:#8a6200;font-weight:750}.staff-kiosk-empty{min-height:190px;color:var(--muted);text-align:center;grid-column:1/-1;align-content:center;place-items:center;gap:7px;display:grid}.staff-kiosk-empty strong{color:var(--midnight);font-size:18px}.staff-kiosk-empty p{margin:0;font-size:14px}.staff-kiosk-footer{width:min(1240px,100%);color:var(--muted);justify-content:space-between;align-items:center;gap:18px;margin:16px auto 0;font-size:13px;display:flex}.staff-kiosk-footer p{align-items:center;gap:6px;margin:0;display:flex}.staff-kiosk-footer a{min-height:44px;color:var(--midnight);padding:11px 4px;font-weight:800;text-decoration:underline}.staff-punch-dialog{overscroll-behavior:contain;border:1px solid var(--midnight);width:min(560px,100%);max-height:calc(100dvh - 40px);box-shadow:var(--shadow);background:#fff;padding:30px;position:relative;overflow-y:auto}.staff-punch-identity{align-items:center;gap:14px;min-width:0;padding-right:54px;display:flex}.staff-punch-identity>span{color:#fff;background:#8b94a8;flex:none;place-items:center;width:52px;height:52px;display:grid}.staff-punch-identity.working>span{background:var(--green)}.staff-punch-identity.break>span{color:var(--midnight);background:var(--gold)}.staff-punch-identity>div{min-width:0}.staff-punch-identity h2{color:var(--midnight);overflow-wrap:anywhere;text-wrap:balance;margin:0;font-size:26px}.staff-punch-identity p:last-child{color:var(--muted);margin:4px 0 0;font-size:13px}.staff-pin-form{border-top:1px solid var(--line);gap:12px;margin-top:24px;padding-top:20px;display:grid}.staff-pin-form>label{color:var(--muted);font-size:14px;font-weight:750}.staff-pin-field{border:2px solid var(--midnight);min-height:62px;color:var(--vispo);grid-template-columns:auto minmax(0,1fr);align-items:center;gap:11px;padding:0 15px;display:grid}.staff-pin-field:focus-within{outline:4px solid var(--gold);outline-offset:3px}.staff-pin-field input{width:100%;min-width:0;color:var(--midnight);letter-spacing:.2em;background:#fff;border:0;outline:0;font-family:ui-monospace,monospace;font-size:24px;font-weight:800}.staff-face-verified{min-height:68px;color:var(--green);background:var(--green-soft);border:1px solid #8ed4ac;grid-template-columns:auto minmax(0,1fr);align-items:center;gap:12px;padding:12px 14px;display:grid}.staff-face-verified>div{gap:2px;display:grid}.staff-face-verified strong{font-size:14px}.staff-face-verified span{color:#3d6950;font-size:12px}.staff-punch-buttons{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin-top:6px;display:grid}.staff-action-primary,.staff-action-secondary{border:1px solid var(--midnight);color:#fff;background:var(--midnight);cursor:pointer;justify-content:center;align-items:center;gap:8px;min-height:52px;padding:0 16px;font-weight:800;display:inline-flex}.staff-action-secondary{color:var(--midnight);background:#fff}.staff-action-primary:only-child{grid-column:1/-1}.staff-action-primary:disabled,.staff-action-secondary:disabled{cursor:wait;opacity:.6}.staff-pin-error{color:var(--red);background:#fff0f0;margin:0;padding:10px 12px;font-size:13px;font-weight:700}.journal-workspace{gap:18px;min-width:0;display:grid}.journal-publish-state{color:#835f08;background:#fff4cc;padding:8px 12px;font-size:13px;font-weight:850}.journal-publish-state.published{color:var(--green);background:var(--green-soft)}.journal-scope-card{border:1px solid var(--line);background:#fff;grid-template-columns:minmax(150px,.65fr) minmax(230px,1.2fr) minmax(220px,1fr) minmax(250px,1.2fr);gap:12px;min-width:0;padding:17px;display:grid}.journal-scope-card>label,.journal-meeting-grid label,.journal-shared-grid label,.student-journal-fields label,.student-message{min-width:0;color:var(--muted);gap:7px;font-size:13px;font-weight:760;display:grid}.journal-scope-card input,.journal-scope-card select,.journal-meeting-card input,.journal-meeting-card textarea,.student-journal-row input,.student-journal-row select,.student-journal-row textarea{border:1px solid var(--line);width:100%;min-width:0;min-height:48px;color:var(--midnight);font:inherit;background:#fff;border-radius:0;padding:11px 12px;font-size:15px}.journal-scope-card input:focus-visible,.journal-scope-card select:focus-visible,.journal-meeting-card input:focus-visible,.journal-meeting-card textarea:focus-visible,.student-journal-row input:focus-visible,.student-journal-row select:focus-visible,.student-journal-row textarea:focus-visible{outline:3px solid var(--gold);outline-offset:-3px}.journal-scope-summary{color:#fff;background:var(--midnight);grid-template-columns:auto minmax(0,1fr);align-items:center;gap:11px;min-width:0;min-height:70px;padding:12px 14px;display:grid}.journal-scope-summary>svg{color:var(--gold)}.journal-scope-summary>div{gap:3px;min-width:0;display:grid}.journal-scope-summary strong,.journal-scope-summary span{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.journal-scope-summary strong{font-size:15px}.journal-scope-summary span{color:#ffffffad;font-size:12px}.journal-meeting-card,.journal-roster-card{border:1px solid var(--line);background:#fff;min-width:0}.journal-meeting-card{padding:20px}.journal-meeting-card .section-heading{margin:-20px -20px 20px}.journal-meeting-card .section-heading>span{color:var(--muted);font-family:ui-monospace,monospace;font-size:13px;font-weight:780}.journal-meeting-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;min-width:0;display:grid}.journal-shared-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;min-width:0;margin-top:15px;display:grid}.journal-shared-grid textarea{resize:vertical;min-height:118px;line-height:1.65}.journal-roster-toolbar{border-bottom:1px solid var(--line);align-items:center;gap:10px;min-width:0;padding:17px 18px;display:flex}.journal-roster-toolbar>div{min-width:190px;margin-right:auto}.journal-roster-toolbar h2{color:var(--midnight);margin:2px 0 0;font-size:21px}.journal-search{width:min(240px,100%)}.journal-search input{border:1px solid var(--line);min-height:44px;color:var(--midnight);background:#fff;padding:0 12px;font-size:14px}.journal-filter{border:1px solid var(--line);min-width:150px;color:var(--muted);grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:7px;padding-left:10px;font-size:12px;display:grid;position:relative}.journal-filter select{appearance:none;min-width:0;min-height:44px;color:var(--midnight);background:#fff;border:0;outline:0;font-size:14px;font-weight:750}.journal-filter>svg{pointer-events:none;margin-right:9px}.journal-roster-list{min-width:0;display:grid}.student-journal-row{border-bottom:1px solid var(--line);border-left:6px solid var(--green);grid-template-columns:minmax(0,.95fr) minmax(260px,1.55fr);gap:14px 18px;min-width:0;padding:19px;display:grid}.student-journal-row:last-child{border-bottom:0}.student-journal-row.missing{border-left-color:var(--gold)}.student-journal-row.late,.student-journal-row.leave,.student-journal-row.excused{border-left-color:#d49313}.student-journal-row.absent{border-left-color:var(--red)}.student-journal-row>header{grid-column:1;grid-template-columns:42px minmax(0,1fr);align-items:center;gap:10px;min-width:0;display:grid}.student-journal-row>header>span{color:#fff;background:var(--vispo);place-items:center;width:42px;height:42px;font-family:ui-monospace,monospace;font-size:12px;display:grid}.student-journal-row>header>div:not(.student-journal-signals){gap:2px;min-width:0;display:grid}.student-journal-row>header strong{overflow-wrap:anywhere;color:var(--midnight);font-size:17px}.student-journal-row>header small{color:var(--muted);font-family:ui-monospace,monospace;font-size:11px}.student-journal-signals{flex-wrap:wrap;grid-column:1/-1;gap:6px;display:flex}.student-journal-signals em{color:#7b5700;background:#fff4cc;align-items:center;gap:5px;padding:5px 7px;font-size:11px;font-style:normal;font-weight:800;display:inline-flex}.student-journal-signals em.reply{color:var(--green);background:var(--green-soft)}.leave-review-actions{border-left:4px solid var(--gold);background:#fff7db;flex-wrap:wrap;align-items:center;gap:8px;min-width:0;margin:0 16px 14px;padding:11px 12px;display:flex}.leave-review-actions strong{color:var(--midnight);margin-right:auto;font-size:13px}.leave-review-actions button{border:1px solid var(--midnight);min-height:38px;color:var(--midnight);cursor:pointer;background:#fff;padding:0 12px;font-size:12px;font-weight:800}.leave-review-actions button:first-of-type{color:#fff;background:var(--midnight)}.leave-review-actions button:disabled{cursor:not-allowed;opacity:.5}.student-journal-row blockquote{border-left:3px solid var(--green);color:var(--ink);background:var(--green-soft);overflow-wrap:anywhere;grid-column:1;margin:0;padding:12px;font-size:13px;line-height:1.55}.student-journal-row blockquote strong{color:var(--green);margin-bottom:3px;font-size:11px;display:block}.student-journal-row blockquote.previous-guardian-reply{border-left-color:var(--vispo);background:var(--vispo-soft)}.student-journal-row blockquote.previous-guardian-reply strong{color:var(--vispo)}.student-journal-fields{grid-area:1/2;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;min-width:0;display:grid}.student-journal-fields .attendance-note{grid-column:1/-1}.journal-tag-picker{border:0;flex-wrap:wrap;grid-column:2;align-items:center;gap:6px;min-width:0;margin:0;padding:0;display:flex}.journal-tag-picker legend{width:100%;color:var(--muted);margin-bottom:2px;font-size:12px;font-weight:760}.journal-tag-picker label{cursor:pointer}.journal-tag-picker input{opacity:0;width:1px;height:1px;position:absolute}.journal-tag-picker span{border:1px solid var(--line);min-height:34px;color:var(--muted);background:#fff;align-items:center;padding:6px 9px;font-size:12px;font-weight:730;display:inline-flex}.journal-tag-picker input:checked+span{border-color:var(--vispo);color:var(--vispo);background:#f1f2ff}.journal-tag-picker input:focus-visible+span{outline:3px solid var(--gold);outline-offset:2px}.student-message{grid-column:2}.student-message textarea{resize:vertical;min-height:84px;line-height:1.55}.assisted-writing-field{gap:8px;min-width:0;display:grid}.assisted-writing-field>label{color:var(--muted);font-size:13px;font-weight:760}.assisted-writing-field textarea{resize:vertical;width:100%}.writing-tools{flex-wrap:wrap;align-items:stretch;gap:7px;display:flex}.writing-tools-minimal{grid-template-columns:repeat(2,minmax(0,1fr));width:min(440px,100%);display:grid}.writing-tools-minimal button{min-height:48px}.writing-tools button{border:1px solid var(--line);background:var(--white);min-height:42px;color:var(--ink);font:inherit;cursor:pointer;justify-content:center;align-items:center;gap:6px;padding:8px 11px;font-size:13px;font-weight:730;display:inline-flex}.writing-tools button:hover:not(:disabled){border-color:var(--vispo);color:var(--vispo)}.writing-tools button:disabled{opacity:.55;cursor:wait}.writing-tools button.recording{color:#a51111;background:#fff2f2;border-color:#c92a2a}.writing-tool-message{color:var(--muted);line-height:1.55;display:block}.writing-style-backdrop{z-index:100;isolation:isolate;background:#031a47ad;place-items:center;padding:16px;display:grid;position:fixed;inset:0}.writing-style-dialog{z-index:1;border:1px solid var(--midnight);width:min(672px,100%);max-height:min(736px,100dvh - 32px);color:var(--ink);background:var(--white);opacity:1;position:relative;overflow:auto;box-shadow:0 24px 64px #021f4d40}.writing-style-dialog>header{border-bottom:1px solid var(--line);justify-content:space-between;gap:16px;padding:22px;display:flex}.writing-style-dialog>header>div{gap:6px;display:grid}.writing-style-dialog h2,.writing-style-dialog p{margin:0}.writing-style-dialog header button{border:1px solid var(--line);width:44px;height:44px;color:var(--midnight);background:var(--white);cursor:pointer;align-self:start;place-items:center;display:grid}.writing-style-icon{width:44px;height:44px;color:var(--midnight);background:var(--gold);place-items:center;display:grid}.writing-style-form{border-bottom:1px solid var(--line);gap:16px;padding:22px;display:grid}.writing-style-form-heading{color:var(--ink);justify-content:space-between;align-items:center;gap:12px;display:flex}.writing-style-form-heading button{border:1px solid var(--line);min-height:38px;color:var(--vispo);background:var(--white);font:inherit;cursor:pointer;padding:7px 10px;font-weight:750}.writing-style-form label{color:var(--muted);gap:7px;font-weight:760;display:grid}.writing-style-form input,.writing-style-form textarea{border:1px solid var(--line);width:100%;font:inherit;padding:13px}.writing-style-form textarea{resize:vertical;min-height:112px}.writing-style-list{gap:12px;padding:22px;display:grid}.writing-style-list article{border:1px solid var(--line);justify-content:space-between;align-items:start;gap:16px;padding:16px;display:flex}.writing-style-list article.disabled{opacity:.78;background:#f7f7f5;border-style:dashed}.writing-style-name-row{flex-wrap:wrap;align-items:center;gap:7px;display:flex}.writing-style-name-row span{color:var(--vispo);background:#eef0ff;padding:3px 7px;font-size:11px;font-weight:800}.writing-style-list article p{color:var(--muted);margin-top:6px;line-height:1.5}.writing-style-actions{flex:none;gap:7px;display:flex}.writing-style-list article .writing-style-actions button{border:1px solid var(--line);width:40px;height:40px;color:var(--vispo);cursor:pointer;background:#fff;flex:none;place-items:center;display:grid}.writing-style-list article .writing-style-actions button.danger{color:#a51111;border-color:#e79b9b}.writing-style-status{padding:0 22px}.writing-style-picker{width:min(620px,100%)}.writing-style-picker-list{gap:10px;padding:22px;display:grid}.writing-style-picker-list>button{border:1px solid var(--line);text-align:left;width:100%;min-height:76px;color:var(--ink);background:var(--white);font:inherit;cursor:pointer;justify-content:space-between;align-items:center;gap:18px;padding:15px 17px;display:flex}.writing-style-picker-list>button:hover:not(:disabled),.writing-style-picker-list>button:focus-visible{border-color:var(--vispo);outline-offset:2px;outline:3px solid #f8c9548c}.writing-style-picker-list>button:disabled{cursor:wait;opacity:.55}.writing-style-picker-list>button span{gap:5px;display:grid}.writing-style-picker-list>button small{color:var(--muted);line-height:1.45}.writing-style-empty{border:1px dashed var(--line);gap:14px;padding:18px;display:grid}.writing-style-empty>button{min-height:44px;color:var(--white);background:var(--midnight);font:inherit;cursor:pointer;border:0;font-weight:800}.guardian-visibility{color:var(--muted);grid-column:2;align-items:center;gap:8px;font-size:12px;font-weight:700;display:flex}.guardian-visibility input{width:19px;min-height:19px;accent-color:var(--vispo)}.journal-actions{z-index:4;border:1px solid var(--midnight);min-width:0;color:var(--midnight);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#fffffff5;justify-content:flex-end;align-items:center;gap:9px;padding:12px 14px;display:flex;position:sticky;bottom:0;box-shadow:0 -8px 22px #071d4914}.journal-actions>div{min-width:0;color:var(--muted);align-items:center;gap:7px;margin-right:auto;font-size:12px;display:flex}.journal-actions button{flex:none}.payroll-workspace{gap:18px;min-width:0;display:grid}.payroll-period-state{color:var(--muted);background:#eceae6;padding:8px 12px;font-size:13px;font-weight:850}.payroll-period-state.draft{color:#7b5700;background:#fff4cc}.payroll-period-state.approved{color:var(--vispo);background:#eef0ff}.payroll-period-state.paid{color:var(--green);background:var(--green-soft)}.payroll-guardrail{min-width:0;color:var(--vispo);background:#f2f4ff;border:1px solid #cad2ee;grid-template-columns:auto minmax(0,1fr);align-items:start;gap:13px;padding:17px 18px;display:grid}.payroll-guardrail>svg{margin-top:2px}.payroll-guardrail strong{color:var(--midnight);font-size:15px;display:block}.payroll-guardrail p{color:var(--muted);text-wrap:pretty;margin:4px 0 0;font-size:13px;line-height:1.6}.payroll-tabs{border:1px solid var(--midnight);grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.payroll-tabs button{border:0;border-right:1px solid var(--midnight);min-height:52px;color:var(--midnight);cursor:pointer;background:#fff;justify-content:center;align-items:center;gap:8px;font-size:14px;font-weight:800;display:inline-flex}.payroll-tabs button:last-child{border-right:0}.payroll-tabs button[aria-pressed=true]{color:#fff;background:var(--midnight)}.payroll-month-toolbar{margin:0}.payroll-metrics{grid-template-columns:repeat(4,minmax(0,1fr));margin-bottom:0}.admin-metrics article>span.red{background:var(--red)}.payroll-toolbar{border:1px solid var(--line);background:#fff;justify-content:flex-end;align-items:center;gap:9px;min-width:0;padding:15px;display:flex}.payroll-toolbar>label{border:1px solid var(--line);width:min(340px,100%);min-height:45px;color:var(--muted);grid-template-columns:auto minmax(0,1fr);align-items:center;gap:9px;margin-right:auto;padding:0 12px;display:grid}.payroll-toolbar input{width:100%;min-width:0;color:var(--midnight);background:#fff;border:0;outline:0;font-size:14px}.payroll-table-card,.payroll-rule-card,.payroll-rule-list{border:1px solid var(--line);background:#fff;min-width:0}.responsive-table{width:100%;overflow-x:auto}.responsive-table:focus-visible{outline:3px solid var(--gold);outline-offset:2px}.payroll-table table{border-collapse:collapse;text-align:left;width:100%;min-width:1120px}.payroll-table th{color:var(--muted);white-space:nowrap;background:#faf9f7;padding:13px 14px;font-size:12px}.payroll-table td{border-top:1px solid var(--line);color:var(--muted);vertical-align:middle;white-space:nowrap;padding:14px;font-size:13px}.payroll-table td:first-child{min-width:170px}.payroll-table td strong{color:var(--midnight);font-size:14px;display:block}.payroll-table td small{color:var(--muted);margin-top:3px;font-family:ui-monospace,monospace;font-size:11px;display:block}.payroll-issue,.payroll-review,.payroll-ok{color:var(--red);background:#fff0f0;padding:6px 8px;font-size:11px;font-weight:850;display:inline-flex}.payroll-review{color:#7b5700;background:#fff4cc}.payroll-ok{color:var(--green);background:var(--green-soft)}.payroll-row-actions{gap:6px;display:flex}.payroll-row-actions button,.payroll-pagination button{border:1px solid var(--vispo);min-height:36px;color:var(--vispo);cursor:pointer;background:#fff;padding:0 10px;font-size:12px;font-weight:800}.payroll-row-actions button:disabled,.payroll-pagination button:disabled{cursor:not-allowed;opacity:.45}.payroll-pagination{border-top:1px solid var(--line);color:var(--muted);justify-content:flex-end;align-items:center;gap:10px;padding:12px 14px;font-size:12px;display:flex}.table-empty{color:var(--muted)!important;text-align:center!important;white-space:normal!important;padding:28px!important}.payroll-rule-card{padding:20px}.payroll-rule-card .section-heading{margin:-20px -20px 20px}.payroll-rule-form{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;min-width:0;display:grid}.payroll-rule-form label,.payroll-adjust-dialog label{min-width:0;color:var(--muted);gap:7px;font-size:13px;font-weight:750;display:grid}.payroll-rule-form input,.payroll-rule-form select,.payroll-adjust-dialog input,.payroll-adjust-dialog textarea{border:1px solid var(--line);width:100%;min-width:0;min-height:48px;color:var(--midnight);font:inherit;background:#fff;border-radius:0;padding:10px 12px;font-size:15px}.payroll-rule-form input:focus-visible,.payroll-rule-form select:focus-visible,.payroll-adjust-dialog input:focus-visible,.payroll-adjust-dialog textarea:focus-visible{outline:3px solid var(--gold);outline-offset:-3px}.payroll-rule-form>.admin-primary{align-self:end}.payroll-rule-list .section-heading{margin:0}.payroll-rule-list>article{border-top:1px solid var(--line);grid-template-columns:minmax(180px,1fr) minmax(250px,1.5fr) auto auto;align-items:center;gap:12px;min-width:0;padding:14px 18px;display:grid}.payroll-rule-list article>div{gap:3px;min-width:0;display:grid}.payroll-rule-list article strong,.payroll-rule-list article span{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.payroll-rule-list article strong{color:var(--midnight);font-size:14px}.payroll-rule-list article span{color:var(--muted);font-size:12px}.payroll-rule-list article em{color:var(--muted);background:#eceae6;padding:6px 8px;font-size:11px;font-style:normal;font-weight:850}.payroll-rule-list article em.active{color:var(--green);background:var(--green-soft)}.payroll-adjust-dialog{width:min(540px,100%)}.payroll-adjust-dialog>p:not(.admin-eyebrow){color:var(--muted);font-size:13px;line-height:1.6}.payroll-adjust-dialog form{gap:13px;margin-top:18px;display:grid}.payroll-adjust-dialog textarea{resize:vertical;min-height:110px}@media (hover:hover){.student-create-button:not(:disabled):hover{transform:translateY(-1px);box-shadow:0 14px 28px #09255033}.staff-status-button:hover,.staff-pin-button:hover,.staff-attention-grid button:hover{color:#fff;background:var(--midnight)}.staff-workspace-tabs button:not([aria-selected=true]):hover,.staff-filter-group button:not([aria-pressed=true]):hover,.staff-pagination button:not(:disabled):hover{background:#f6f4ee}.staff-person-card:hover{border-color:var(--midnight);background:#faf9f6}.staff-action-secondary:hover{background:#f6f4ee}.line-reset-button:hover{color:#fff;background:var(--red)}.admin-primary:hover{background:#0d2d6d}.admin-secondary:hover,.table-edit:hover,.month-link:hover{background:#f6f4ee}.admin-sidebar nav a:hover,.logout-link:hover{color:#fff;background:#ffffff17}.admin-sidebar nav a[aria-current=page]:hover{color:var(--midnight);background:var(--gold)}}.login-page{grid-template-columns:1.05fr .95fr;min-height:100dvh;display:grid}.login-brand{color:#fff;background:linear-gradient(#ffffff0a 1px, transparent 1px), linear-gradient(90deg, #ffffff0a 1px, transparent 1px), var(--midnight);background-size:42px 42px;flex-direction:column;justify-content:space-between;padding:clamp(35px,6vw,82px);display:flex}.login-brand .admin-eyebrow{color:var(--gold)}.login-brand h1{letter-spacing:-.055em;margin:0;font-size:clamp(40px,5vw,72px);line-height:1.08}.login-brand div>p:last-child{color:#ffffffad;max-width:480px;font-size:16px;line-height:1.8}.login-brand>small{color:#ffffff85;letter-spacing:.13em;font-family:ui-monospace,monospace;font-size:12px}.login-panel{background:var(--paper);place-items:center;padding:30px;display:grid}.login-card{border:1px solid var(--line);width:min(410px,100%);box-shadow:var(--shadow);background:#fff;padding:38px}.login-lock{width:52px;height:52px;color:var(--midnight);background:var(--gold);place-items:center;margin-bottom:22px;display:grid}.login-card h2{color:var(--midnight);letter-spacing:-.04em;margin:0;font-size:29px}.login-card>p:not(.admin-eyebrow,.login-message){color:var(--muted);font-size:14px}.google-button,.demo-login{border:1px solid var(--line);cursor:pointer;background:#fff;justify-content:center;align-items:center;gap:10px;width:100%;min-height:48px;margin-top:22px;font-size:15px;font-weight:750;display:flex}.google-button:disabled{cursor:wait;opacity:.7}.google-mark{flex:none;width:20px;height:20px}.login-divider{border-top:1px solid var(--line);text-align:center;margin:21px 0;position:relative}.login-divider span{color:var(--muted);background:#fff;padding:0 10px;font-size:13px;position:relative;top:-10px}.login-card form{gap:13px;display:grid}.demo-login{color:var(--vispo);margin-top:12px}.login-message{color:var(--vispo);background:#eef0ff;margin:12px 0 0;padding:10px;font-size:13px}.auth-completion-page{background:var(--surface);place-items:center;min-height:100svh;padding:24px;display:grid}.auth-completion-card{border:1px solid var(--line);background:#fff;width:min(100%,440px);padding:38px;box-shadow:0 18px 50px #0724521a}.auth-completion-card>span{width:64px;height:64px;color:var(--midnight);background:var(--gold);place-items:center;margin-bottom:28px;display:grid}.auth-completion-card h1{color:var(--midnight);margin:8px 0 10px;font-size:clamp(30px,6vw,42px)}.auth-completion-card>p:last-of-type{color:var(--muted);line-height:1.7}.auth-completion-progress{background:#e9e9e7;height:4px;margin-top:26px;overflow:hidden}.auth-completion-progress i{background:var(--vispo);width:45%;height:100%;animation:1.1s ease-in-out infinite alternate auth-progress;display:block}@keyframes auth-progress{to{transform:translate(122%)}}.admin-loading{background:#f4f3f0;min-height:calc(100dvh - 98px)}.admin-loading-content{padding:38px}.admin-loading-line,.admin-loading-grid>div,.admin-loading-card{background:linear-gradient(90deg,#e8e5e0 25%,#f7f5f2 50%,#e8e5e0 75%) 0 0/200% 100%;animation:1.2s linear infinite admin-shimmer}.admin-loading-line.heading{width:min(280px,45%);height:34px;margin:16px 0 50px}.admin-loading-grid{grid-template-columns:repeat(3,1fr);gap:16px;display:grid}.admin-loading-grid>div{height:112px}.admin-loading-card{height:320px;margin-top:22px}@keyframes admin-shimmer{to{background-position:-200% 0}}.tenant-switching{background:#f4f3f0;min-height:100dvh;padding:clamp(28px,4vw,54px)}.tenant-switching-heading{border-bottom:1px solid var(--line);align-items:center;gap:14px;padding-bottom:22px;display:flex}.tenant-switching-heading>div{gap:4px;display:grid}.tenant-switching-heading small{color:var(--vispo);letter-spacing:.13em;font-family:ui-monospace,monospace;font-size:11px;font-weight:850}.tenant-switching-heading strong{color:var(--midnight);font-size:clamp(22px,3vw,32px)}.tenant-switching>p{color:var(--muted);margin:18px 0 26px;font-size:14px}.tenant-switching-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;display:grid}.tenant-switching-grid i{background:linear-gradient(90deg,#e8e5e0 25%,#f7f5f2 50%,#e8e5e0 75%) 0 0/200% 100%;min-height:118px;animation:1.2s linear infinite admin-shimmer;display:block}.tenant-switching-grid i:nth-child(n+4){grid-column:span 2;min-height:310px}.tenant-switching-grid i:last-child{grid-column:span 1}@media (max-width:980px){.kiosk-grid{grid-template-columns:1fr;margin-top:4vh}.kiosk-hero{border-right:0;border-bottom:1px solid var(--midnight)}.admin-shell{padding-left:76px}.admin-navigation-progress{left:76px}.admin-sidebar{width:76px;padding:22px 12px}.admin-wordmark.inverse,.admin-wordmark small,.organization-chip div,.organization-switcher-copy,.organization-switcher>svg,.admin-nav-group>p,.admin-sidebar nav a:not([aria-current=page]){font-size:0}.organization-chip{padding:8px}.organization-switcher{grid-template-columns:38px;justify-content:center;min-height:54px;margin:28px 0 20px;padding:7px}.admin-sidebar>.organization-switch-status,.organization-switcher-copy,.organization-switcher>svg,.admin-nav-group>p{display:none}.admin-sidebar nav a,.logout-link{justify-content:center;padding:0;font-size:0}.admin-sidebar nav{gap:8px}.admin-nav-group{gap:4px}.dashboard-columns,.form-layout{grid-template-columns:1fr}.invite-card{position:static}.login-page{grid-template-columns:1fr}.login-brand{min-height:42vh}.staff-metrics,.staff-exception-form,.staff-correction-form{grid-template-columns:repeat(2,minmax(0,1fr))}.teacher-invite-form{grid-template-columns:1fr 1fr}.teacher-invite-form>.admin-primary,.staff-note,.staff-exception-form>.admin-primary,.staff-correction-reason,.staff-correction-form>.admin-primary{grid-column:1/-1}.staff-attention-grid{grid-template-columns:1fr}.staff-picker-results{grid-template-columns:repeat(2,minmax(0,1fr))}.staff-directory-toolbar{flex-direction:column;align-items:stretch}.staff-query-toolbar{grid-template-columns:repeat(2,minmax(0,1fr))}.staff-query-toolbar .staff-search-box,.staff-query-reset{grid-column:1/-1}.staff-search-box.compact,.staff-filter-group{width:100%}.staff-filter-group button{flex:1 0 auto}.organization-workspace-grid,.class-workspace-grid,.manager-invitation-form{grid-template-columns:1fr}.manager-invitation-form .admin-primary{justify-content:center;width:100%}.class-create-form{grid-template-columns:repeat(2,minmax(0,1fr))}.class-create-form>.admin-primary{grid-column:1/-1}.class-card-list{max-height:390px}.journal-scope-card{grid-template-columns:repeat(2,minmax(0,1fr))}.journal-scope-summary{min-height:68px}.student-journal-row{grid-template-columns:minmax(190px,.7fr) minmax(0,1.3fr)}.journal-roster-toolbar{flex-wrap:wrap;align-items:stretch}.journal-roster-toolbar>div{flex:100%}.payroll-metrics,.payroll-rule-form{grid-template-columns:repeat(2,minmax(0,1fr))}.payroll-rule-form>.admin-primary{grid-column:1/-1}.payroll-rule-list>article{grid-template-columns:minmax(0,1fr) minmax(0,1fr) auto}.payroll-rule-list article>button{grid-column:1/-1}}@media (max-width:680px){.kiosk-page{padding:16px}.kiosk-grid{margin-top:25px}.kiosk-hero{padding:30px 20px}.checkin-form>div{grid-template-columns:auto minmax(0,1fr)}.checkin-form #student-secret{border-left:0;padding-left:0}.checkin-form button{grid-column:1/-1;min-height:50px}.pending-names,.credential-reset-panel{grid-template-columns:1fr}.credential-reset-panel .admin-secondary{width:100%}.admin-shell{padding-bottom:70px;padding-left:0}.admin-navigation-progress{left:0}.admin-sidebar{flex-direction:row;width:auto;height:64px;padding:7px;inset:auto 0 0}.admin-sidebar>.admin-wordmark,.organization-chip,.organization-switcher,.logout-form{display:none}.admin-sidebar nav{overscroll-behavior-x:contain;scrollbar-width:none;gap:0;width:100%;display:flex;overflow-x:auto}.admin-sidebar nav::-webkit-scrollbar{display:none}.admin-nav-group{display:contents}.admin-nav-group>p{display:none}.admin-sidebar nav a,.admin-sidebar nav a:not([aria-current=page]){white-space:nowrap;flex-direction:column;flex:0 0 82px;justify-content:center;gap:2px;min-width:82px;min-height:50px;padding:3px 4px;font-size:11px;line-height:1.1}.admin-topbar,.admin-main{padding-left:18px;padding-right:18px}.admin-user>div{display:none}.admin-metrics,.form-grid,.form-card fieldset{grid-template-columns:1fr}.new-student-submit-row{padding-top:18px}.student-create-button{width:100%;min-width:0}.history-filters{grid-template-columns:1fr}.history-search,.directory-tools>label{width:100%}.directory-tools{flex-direction:column;align-items:stretch}.login-card{padding:25px}.admin-loading-content{padding:24px 18px}.admin-loading-grid,.tenant-switching-grid{grid-template-columns:1fr}.tenant-switching-grid i:nth-child(n){grid-column:1;min-height:96px}.staff-clock-card,.section-heading{flex-direction:column;align-items:stretch}.staff-clock-actions{justify-content:stretch}.staff-clock-actions>*{flex:170px}.staff-clock-actions form>button{width:100%}.staff-metrics,.staff-exception-form,.staff-correction-form,.teacher-invite-form{grid-template-columns:1fr}.staff-note,.staff-exception-form>.admin-primary,.staff-session-picker,.staff-correction-reason,.staff-correction-form>.admin-primary{grid-column:1}.section-heading>p{text-align:left}.staff-workspace-tabs{grid-template-columns:repeat(2,minmax(0,1fr))}.staff-query-toolbar{grid-template-columns:1fr;padding:14px}.staff-query-heading,.staff-query-toolbar .staff-search-box,.staff-query-reset{grid-column:1}.staff-workspace-tabs button:nth-child(2){border-right:0}.staff-workspace-tabs button:nth-child(-n+2){border-bottom:1px solid var(--line)}.staff-picker-results{grid-template-columns:1fr}.staff-pagination{flex-direction:column;align-items:stretch}.staff-pagination>div{justify-content:space-between}.organization-identity-card,.class-scope-banner{flex-direction:column;align-items:flex-start}.organization-identity-card>strong{white-space:normal}.organization-workspace-grid,.roster-grid,.class-create-form{grid-template-columns:1fr}.campus-list article{grid-template-columns:auto minmax(0,1fr) auto}.campus-list article>button{grid-column:2/-1}.settings-panel .section-heading>p{max-width:none}.manager-invitation-result{grid-template-columns:1fr}.manager-invitation-result .admin-secondary{justify-content:center;width:100%}.manager-invitation-result small{grid-column:1}.manager-onboarding-page{padding:14px}.manager-onboarding-card{box-shadow:8px 8px #071d4914}.class-create-form>.admin-primary{grid-column:1}.class-scope-banner>p{margin:0}.journal-publish-state{align-self:flex-start}.journal-scope-card,.journal-meeting-grid,.journal-shared-grid{grid-template-columns:1fr}.journal-scope-summary{grid-column:1}.journal-roster-toolbar{grid-template-columns:1fr;display:grid}.journal-roster-toolbar>.admin-secondary,.journal-search,.journal-filter{width:100%}.journal-filter{grid-template-columns:auto minmax(0,1fr) auto}.student-journal-row{grid-template-columns:minmax(0,1fr)}.student-journal-row>header,.student-journal-row blockquote,.student-journal-fields,.journal-tag-picker,.student-message,.guardian-visibility{grid-column:1}.student-journal-fields{grid-row:auto;grid-template-columns:1fr}.student-journal-fields .attendance-note{grid-column:1}.journal-actions{flex-direction:column;align-items:stretch;position:static}.journal-actions>div{margin:0 0 4px}.journal-actions button{width:100%}.payroll-period-state{align-self:flex-start}.payroll-tabs,.payroll-metrics,.payroll-rule-form{grid-template-columns:1fr}.payroll-tabs button{border-right:0;border-bottom:1px solid var(--midnight)}.payroll-tabs button:last-child{border-bottom:0}.payroll-toolbar{flex-direction:column;align-items:stretch}.payroll-toolbar>label,.payroll-toolbar>button{width:100%}.payroll-rule-form>.admin-primary{grid-column:1}.payroll-rule-list>article{grid-template-columns:minmax(0,1fr) auto}.payroll-rule-list>article>div:nth-child(2),.payroll-rule-list article>button{grid-column:1/-1}}.kiosk-launch-panel{margin-bottom:24px;overflow:visible}.kiosk-launch-heading{align-items:start}.kiosk-launch-heading>p{max-width:580px;color:var(--muted);text-align:right;margin:0;line-height:1.55}.kiosk-launch-controls{border-top:1px solid var(--line);grid-template-columns:minmax(260px,.85fr) minmax(380px,1.15fr);gap:18px;padding:22px 28px 28px;display:grid}.kiosk-campus-select,.staff-person-scope-fields>label{min-width:0;color:var(--ink);gap:8px;font-weight:750;display:grid}.kiosk-campus-select select,.staff-person-scope-fields select{border:1px solid var(--line);width:100%;min-width:0;min-height:54px;color:var(--ink);font:inherit;background:#fff;border-radius:12px;padding:0 16px}.kiosk-campus-bound{border:1px solid var(--line);background:var(--surface-muted);border-radius:14px;align-items:center;gap:13px;min-height:82px;padding:16px 18px;display:flex}.kiosk-campus-bound>div{gap:4px;display:grid}.kiosk-campus-bound span{color:var(--muted);font-size:.86rem}.kiosk-launch-actions{grid-template-columns:repeat(2,minmax(0,1fr));align-items:end;gap:12px;display:grid}.kiosk-launch-actions form,.kiosk-launch-actions button{width:100%}.kiosk-launch-actions button{min-height:54px}.staff-person-scope{border:1px solid var(--line);box-shadow:var(--shadow-card);background:#fff;border-radius:18px;grid-template-columns:minmax(280px,.8fr) minmax(420px,1.2fr);align-items:end;gap:28px;margin-bottom:22px;padding:24px 28px;display:grid}.staff-person-scope h2,.staff-person-scope p{margin:0}.staff-person-scope h2{margin-top:5px}.staff-person-scope p:not(.admin-eyebrow){color:var(--muted);margin-top:8px}.staff-person-scope-fields{grid-template-columns:minmax(180px,.75fr) minmax(240px,1.25fr);align-items:end;gap:12px;display:grid}.staff-person-scope-fields>.campus-filter{width:100%;min-width:0}.staff-scope-empty{margin-bottom:22px}@media (max-width:900px){.kiosk-launch-heading,.kiosk-launch-controls,.staff-person-scope{grid-template-columns:1fr}.kiosk-launch-heading>p{text-align:left}}@media (max-width:680px){.kiosk-launch-controls,.staff-person-scope{padding:20px}.kiosk-launch-actions,.staff-person-scope-fields{grid-template-columns:1fr}}.face-enrollment-launch{min-width:0}.face-enrollment-trigger{border:1px solid var(--midnight);width:100%;min-height:66px;color:var(--midnight);cursor:pointer;text-align:left;background:#fff;align-items:center;gap:12px;padding:11px 14px;display:flex}.face-enrollment-trigger>svg{background:var(--gold);flex:none;width:42px;height:42px;padding:10px}.face-enrollment-trigger>span{gap:3px;min-width:0;display:grid}.face-enrollment-trigger strong{font-size:15px}.face-enrollment-trigger small{color:var(--muted);font-size:12px;line-height:1.45}.face-enrollment-trigger:focus-visible,.face-enrollment-dialog button:focus-visible{outline:3px solid var(--gold);outline-offset:3px}.face-enrollment-trigger:disabled{cursor:not-allowed;opacity:.48}.face-enrollment-dialog{border:1px solid var(--midnight);width:min(980px,100vw - 28px);max-width:none;max-height:calc(100dvh - 28px);color:var(--midnight);background:#fbfaf7;border-radius:26px;padding:0;overflow:auto;box-shadow:0 28px 80px #071d494d}.face-enrollment-dialog::backdrop{-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#071d49b8}.face-enrollment>header{border-bottom:1px solid var(--line);background:#fff;justify-content:space-between;align-items:center;gap:16px;min-height:92px;padding:18px 22px;display:flex}.face-enrollment>header p,.face-enrollment-console>p:first-child{color:var(--vispo);letter-spacing:.13em;margin:0 0 5px;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:11px;font-weight:850}.face-enrollment>header h2{letter-spacing:-.035em;margin:0;font-size:clamp(21px,3vw,30px)}.face-enrollment>header button{border:1px solid var(--line);width:46px;height:46px;color:var(--midnight);cursor:pointer;background:#fff;border-radius:50%;flex:none;place-items:center;display:grid}.face-enrollment-layout{grid-template-columns:minmax(0,1.25fr) minmax(270px,.75fr);min-height:520px;display:grid}.face-enrollment-stage{background:var(--midnight);min-width:0;min-height:520px;position:relative;overflow:hidden}.face-enrollment-stage video{object-fit:cover;width:100%;height:100%;min-height:520px;transform:scaleX(-1)}.face-enrollment-shade{pointer-events:none;background:#071d492e;position:absolute;inset:0}.face-enrollment-oval{aspect-ratio:.72;border:3px solid var(--gold);pointer-events:none;border-radius:48% 48% 44% 44%;width:min(49%,270px);position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);box-shadow:0 0 0 999px #071d494d}.face-enrollment-seal{aspect-ratio:1;pointer-events:none;border-radius:50%;width:min(64%,350px);position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.face-enrollment-seal i{--segment:0;width:27%;height:8px;transform:translate(-50%, -50%) rotate(calc(var(--segment) * 72deg)) translateY(-710%);background:#ffffff47;border-radius:999px;transition:background .18s,box-shadow .18s;position:absolute;top:50%;left:50%}.face-enrollment-seal i:nth-child(2){--segment:1}.face-enrollment-seal i:nth-child(3){--segment:2}.face-enrollment-seal i:nth-child(4){--segment:3}.face-enrollment-seal i:nth-child(5){--segment:4}.face-enrollment-seal i.is-active{background:var(--gold);animation:1s ease-in-out infinite face-enrollment-pulse;box-shadow:0 0 0 5px #f6c95433}.face-enrollment-seal i.is-complete{box-shadow:none;background:#57d78f;animation:none}.face-enrollment-stage-message,.face-enrollment-done{color:#fff;text-align:center;background:#071d49bd;place-content:center;justify-items:center;gap:9px;display:grid;position:absolute;inset:0}.face-enrollment-stage-message svg{width:36px;height:36px;color:var(--gold)}.face-enrollment-countdown{border:2px solid var(--gold);width:92px;height:92px;color:var(--midnight);background:var(--gold);border-radius:50%;place-items:center;font-size:48px;font-weight:900;display:grid;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);box-shadow:0 8px 30px #071d4959}.face-enrollment-rec{color:#fff;letter-spacing:.08em;background:#071d49b8;align-items:center;gap:7px;padding:7px 9px;font-family:ui-monospace,monospace;font-size:12px;font-weight:850;display:flex;position:absolute;top:18px;left:18px}.face-enrollment-rec i{background:#ff625c;border-radius:50%;width:9px;height:9px;animation:.8s ease-in-out infinite face-enrollment-pulse}.face-enrollment-done{color:var(--midnight);background:#dff5e8f0}.face-enrollment-done svg{color:#fff;background:var(--green);border-radius:50%;width:58px;height:58px;padding:12px}.face-enrollment-done strong{font-size:32px}.face-enrollment-console{border-left:1px solid var(--line);background:#fbfaf7;align-content:center;gap:10px;padding:30px;display:grid}.face-enrollment-console h3{letter-spacing:-.04em;margin:0;font-size:clamp(24px,3vw,34px);line-height:1.12}.face-enrollment-console>p:not(:first-child){min-height:66px;color:var(--muted);margin:0;font-size:14px;line-height:1.65}.face-enrollment-progress-copy{border-block:1px solid var(--line);align-items:baseline;gap:7px;margin:8px 0 10px;padding:13px 0;display:flex}.face-enrollment-progress-copy strong{color:var(--vispo);font-family:ui-monospace,monospace;font-size:25px}.face-enrollment-progress-copy span{color:var(--muted);font-size:12px}.face-enrollment-console button{justify-content:center;width:100%;min-height:50px}.face-enrollment>footer{border-top:1px solid var(--line);color:var(--green);background:var(--green-soft);align-items:flex-start;gap:9px;padding:14px 20px;font-size:12px;line-height:1.55;display:flex}.face-enrollment>footer svg{flex:none}.face-enrollment-admin-panel,.new-student-face-enrollment{border:1px solid var(--line);background:#f7f6f2;gap:12px;margin:18px 0;padding:16px;display:grid}.face-enrollment-admin-panel>div:first-child,.new-student-face-enrollment{min-width:0}.face-enrollment-admin-panel strong,.new-student-face-enrollment strong{color:var(--midnight);font-size:15px;display:block}.face-enrollment-admin-panel small,.new-student-face-enrollment small{color:var(--muted);margin-top:4px;font-size:12px;line-height:1.55;display:block}.new-student-face-enrollment>p{color:var(--muted);margin:0;font-size:12px;line-height:1.55}.face-enrollment-campus-controls{gap:12px;display:grid}.face-enrollment-campus-controls>label{color:var(--muted);gap:6px;font-size:12px;font-weight:800;display:grid}.face-enrollment-campus-controls select{border:1px solid var(--line);width:100%;min-height:46px;color:var(--midnight);font:inherit;background:#fff;border-radius:10px;padding:0 12px;font-size:14px}.face-enrollment-campus-controls select:focus-visible{outline:3px solid var(--gold);outline-offset:2px}@keyframes face-enrollment-pulse{50%{opacity:.48}}@media (max-width:760px){.face-enrollment{--mobile-face-guide-width:min(72vw, 340px);grid-template-rows:auto minmax(0,1fr);height:100dvh;min-height:0;display:grid}.face-enrollment-dialog{border:0;border-radius:0;width:100vw;height:100dvh;max-height:100dvh;margin:0;overflow:hidden}.face-enrollment>header{min-height:64px;padding:max(10px, env(safe-area-inset-top)) 14px 10px}.face-enrollment>header h2{text-overflow:ellipsis;white-space:nowrap;font-size:21px;overflow:hidden}.face-enrollment>header button{width:48px;height:48px}.face-enrollment-layout{grid-template-rows:minmax(0,1fr) auto;grid-template-columns:1fr;min-height:0;overflow:hidden}.face-enrollment-stage,.face-enrollment-stage video{min-height:0}.face-enrollment-stage video{object-fit:contain;object-position:center;position:absolute;inset:0}.face-enrollment-oval{width:var(--mobile-face-guide-width)}.face-enrollment-seal{width:min(86vw,410px)}.face-enrollment-console{padding:12px 16px max(14px, env(safe-area-inset-bottom));border-top:1px solid var(--line);border-left:0;gap:7px}.face-enrollment-console h3{font-size:22px}.face-enrollment-console>p:not(:first-child){min-height:0;font-size:13px;line-height:1.4}.face-enrollment-progress-copy{margin:2px 0 4px;padding:6px 0}.face-enrollment-progress-copy strong{font-size:19px}.face-enrollment-console button{min-height:56px}.face-enrollment-trigger small{display:none}}@media (prefers-reduced-motion:reduce){.face-enrollment-seal i,.face-enrollment-rec i{transition:none;animation:none}*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}.admin-mobile-header,.admin-mobile-nav{display:none}.admin-shell{background:#f3f1ed;padding-left:264px}.admin-sidebar{width:264px;padding:26px 18px 22px}.admin-sidebar .admin-wordmark>span,.organization-mark,.table-avatar,.admin-metrics article>span,.modal-icon{border-radius:var(--radius-sm)}.organization-switcher{border-radius:var(--radius-md)}.admin-sidebar nav a,.logout-link{border-radius:12px;transition:color .16s,background-color .16s,transform .16s}.admin-sidebar nav a[aria-current=page]{box-shadow:0 8px 22px #00000021}.admin-sidebar nav a[aria-current=page]:after{background:var(--midnight);content:"";border-radius:50%;width:5px;height:5px;margin-left:auto}.admin-content{min-height:100dvh}.admin-topbar{z-index:6;-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);background:#fffffff0;min-height:88px;padding-inline:clamp(22px,3vw,42px);position:sticky;top:0;box-shadow:0 1px #071d490d}.admin-topbar h1{font-size:clamp(24px,2.4vw,31px)}.admin-main{width:min(1510px,100%);margin-inline:auto;padding:clamp(22px,3vw,42px)}.dashboard-card,.directory-card,.form-card,.invite-card,.settings-panel,.class-create-form,.class-directory,.class-detail-form,.journal-scope-card,.journal-meeting-card,.journal-roster-card,.payroll-toolbar,.payroll-table-card,.payroll-rule-card,.payroll-rule-list,.staff-query-toolbar,.staff-attention-grid article,.admin-metrics article,.staff-clock-card{border-radius:var(--radius-md);box-shadow:var(--shadow-card);border-color:#d9d5cd}.directory-card,.settings-panel,.class-directory,.payroll-table-card,.payroll-rule-list{overflow:hidden}.dashboard-card,.admin-metrics article,.staff-attention-grid article{position:relative}.dashboard-card:before,.admin-metrics article:before,.staff-attention-grid article:before{background:var(--gold);content:"";border-radius:0 4px 4px 0;width:3px;position:absolute;top:16px;bottom:16px;left:0}.admin-metrics article{min-height:124px;padding:22px 22px 22px 25px}.admin-metrics article>span{width:50px;height:50px}.admin-primary,.admin-secondary,.table-edit,.staff-status-button,.staff-pin-button,.staff-query-reset,.staff-attention-grid button,.month-link,.payroll-row-actions button,.payroll-pagination button,.line-reset-button{border-radius:11px;transition:color .15s,background-color .15s,border-color .15s,transform .15s}.admin-primary:active,.admin-secondary:active,.table-edit:active,.staff-status-button:active{transform:translateY(1px)}.directory-tools,.staff-directory-toolbar,.staff-query-toolbar{gap:12px}.directory-tools>label,.history-search,.history-filters label,.staff-search-box,.staff-query-field select,.class-directory-tools label,.class-directory-tools>select,.payroll-toolbar>label{border-radius:12px}.directory-tools>div,.staff-filter-group,.staff-workspace-tabs,.payroll-tabs{border-radius:13px;overflow:hidden}:where(.admin-modal,.form-card,.invite-card,.login-card,.history-filters,.staff-exception-form,.staff-correction-form,.class-create-form,.class-detail-form,.journal-scope-card,.journal-meeting-card,.student-journal-row,.payroll-rule-form,.payroll-adjust-dialog,.manager-invitation-form,.organization-form) :where(input,select,textarea){border-radius:12px}.student-table-wrap,.responsive-table{overscroll-behavior-inline:contain;scrollbar-color:#a8adba transparent;scrollbar-width:thin;contain:layout inline-size paint;max-width:100%}.student-table tbody tr,.payroll-table tbody tr{transition:background-color .14s}.student-table th,.payroll-table th{background:#f7f5f1}.table-status,.source-pill,.delivery-pill,.waiting-pill,.payroll-issue,.payroll-review,.payroll-ok{white-space:nowrap;border-radius:999px}.admin-modal,.staff-punch-dialog{border-radius:var(--radius-lg)}.modal-close{border-radius:50%}.kiosk-grid{border-radius:var(--radius-lg);overflow:hidden;box-shadow:0 28px 80px #071d4921}.checkin-form>div,.staff-pin-field{border-radius:var(--radius-md);overflow:hidden}.checkin-form button{border-radius:10px 0 0 10px}.pending-names>span,.staff-person-card{border-radius:12px}.staff-kiosk-roster{gap:14px}.staff-person-card{box-shadow:0 7px 24px #071d490d}.admin-mobile-drawer-overlay{z-index:80;-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);background:#071d4994;position:fixed;inset:0}.admin-mobile-drawer{z-index:90;width:min(100%,640px);max-height:min(calc(100dvh - env(safe-area-inset-top) - 8px), 760px);background:#fbfaf8;border:1px solid #d9d5cd;border-bottom:0;border-radius:26px 26px 0 0;flex-direction:column;margin-inline:auto;padding:8px 0 0;display:flex;position:fixed;bottom:0;left:0;right:0;overflow:hidden;box-shadow:0 -18px 65px #071d493d}.admin-mobile-drawer-handle{background:#c8c5bf;border-radius:99px;width:42px;height:5px;margin:4px auto 18px}.admin-mobile-drawer-heading{justify-content:space-between;align-items:flex-start;gap:14px;min-width:0;padding:0 18px 16px;display:flex}.admin-mobile-drawer-heading h2{color:var(--midnight);letter-spacing:-.035em;margin:0;font-size:23px}.admin-mobile-drawer-heading p{color:var(--muted);margin:3px 0 0;font-size:13px}.admin-mobile-drawer-heading-actions{flex:none;align-items:center;gap:8px;display:flex}.admin-mobile-drawer-heading-actions>span{color:var(--green);background:var(--green-soft);border-radius:999px;align-items:center;gap:5px;padding:7px 9px;font-size:11px;font-weight:800;display:inline-flex}.admin-mobile-drawer-close{width:44px;height:44px;color:var(--midnight);cursor:pointer;background:#fff;border:1px solid #d9d5cd;border-radius:50%;flex:none;place-items:center;display:grid}.admin-mobile-organization{border-radius:var(--radius-md);background:#fff;border:1px solid #d9d5cd;grid-template-columns:42px minmax(0,1fr) auto;align-items:center;gap:11px;min-width:0;min-height:68px;padding:11px;display:grid;position:relative}.admin-mobile-organization.is-switching{opacity:.6}.admin-mobile-organization>span:nth-child(2){min-width:0;display:grid}.admin-mobile-organization small{color:var(--muted);font-size:11px}.admin-mobile-organization strong{color:var(--midnight);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.admin-mobile-organization select{opacity:0;cursor:pointer;width:100%;position:absolute;inset:0}.admin-mobile-drawer-scroll{overscroll-behavior:contain;scrollbar-gutter:stable;flex:auto;min-height:0;padding:0 18px 18px;overflow-y:auto}.admin-mobile-drawer-scroll>.organization-switch-status{color:var(--muted);margin:8px 2px 0}.admin-mobile-drawer-links{grid-template-columns:repeat(2,minmax(0,1fr));gap:9px;margin-top:14px;display:grid}.admin-mobile-drawer-links a{min-width:0;min-height:72px;color:var(--midnight);background:#fff;border:1px solid #d9d5cd;border-radius:14px;grid-template-columns:36px minmax(0,1fr);align-items:center;gap:9px;padding:12px;font-size:14px;font-weight:800;display:grid}.admin-mobile-drawer-links a svg{box-sizing:content-box;color:var(--vispo);background:#eef0ff;border-radius:10px;padding:7px}.admin-mobile-drawer-links a[aria-current=page]{border-color:var(--vispo);background:#f2f3ff}.admin-mobile-drawer-footer{padding:12px 18px max(16px, env(safe-area-inset-bottom));background:#fbfaf8;border-top:1px solid #d9d5cd;flex:none}.admin-mobile-logout{margin:0}.admin-mobile-logout button{width:100%;min-height:50px;color:var(--red);background:#fff;border:1px solid #d9d5cd;border-radius:13px;justify-content:center;align-items:center;gap:8px;font-weight:800;display:flex}@media (hover:hover){.student-table tbody tr:hover,.payroll-table tbody tr:hover{background:#fbfaf7}.admin-sidebar nav a:hover{transform:translate(2px)}}.login-card{border-radius:var(--radius-lg)}.login-lock{border-radius:14px}.google-button,.demo-login{border-radius:12px}@media (max-width:900px){.admin-shell{min-width:0;max-width:100%;padding:0}.admin-sidebar{display:none}.admin-mobile-header{z-index:20;-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);background:#fffffff0;border-bottom:1px solid #071d4917;justify-content:space-between;align-items:center;gap:12px;min-height:64px;padding:9px 16px;display:flex;position:sticky;top:0}.admin-mobile-brand{min-height:44px;color:var(--midnight);letter-spacing:.13em;align-items:center;gap:8px;display:inline-flex}.admin-mobile-brand>span{width:34px;height:34px;color:var(--midnight);background:var(--gold);border-radius:9px;place-items:center;font-family:Georgia,serif;font-size:18px;font-style:italic;display:grid}.admin-mobile-brand strong{font-size:14px}.admin-mobile-header>div{justify-items:end;min-width:0;max-width:50%;display:grid}.admin-mobile-header small{color:var(--muted);font-size:10px}.admin-mobile-header>div strong{color:var(--midnight);text-overflow:ellipsis;white-space:nowrap;font-size:13px;overflow:hidden}.admin-mobile-nav{z-index:40;right:10px;bottom:max(8px, env(safe-area-inset-bottom));min-height:var(--admin-mobile-nav-height);-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);background:#fffffff2;border:1px solid #071d491f;border-radius:20px;grid-template-columns:repeat(5,minmax(0,1fr));gap:2px;padding:6px;transition:opacity .16s,transform .16s;display:grid;position:fixed;left:10px;box-shadow:0 15px 44px #071d4933}.admin-mobile-nav a,.admin-mobile-nav button{color:#687084;background:0 0;border:0;border-radius:14px;align-content:center;place-items:center;gap:2px;min-width:0;min-height:52px;padding:4px 2px;font-size:10px;font-weight:750;display:grid}.admin-mobile-nav :is(a,button)[aria-current=page]{color:var(--midnight);background:#fff3c8}.admin-content{min-width:0;max-width:100%;min-height:auto;padding-bottom:var(--admin-mobile-content-clearance);scroll-padding-bottom:var(--admin-mobile-content-clearance)}.admin-topbar{min-height:76px;padding:16px;position:static}.admin-topbar h1{font-size:24px}.admin-topbar .admin-eyebrow{font-size:10px}.admin-topbar-actions{gap:8px}.admin-topbar-actions .admin-user>div{display:none}.admin-main{min-width:0;max-width:100%;padding:18px 16px 34px}.admin-metrics{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin-inline:0;padding:0;display:grid;overflow:visible}.admin-metrics article{gap:10px;min-height:108px;padding:16px}.admin-metrics article:last-child{grid-column:1/-1}.admin-metrics article>span{width:44px;height:44px}.admin-metrics strong{font-size:28px}.admin-metrics em{font-size:10px;top:12px;right:12px}.admin-content :where(input,select,textarea){min-width:0;max-width:100%;font-size:16px!important}.admin-content :where(input,select,textarea):focus{scroll-margin-bottom:var(--admin-mobile-content-clearance)}body:has(:is(input,textarea,select):focus) .admin-mobile-nav{opacity:0;pointer-events:none;transform:translateY(calc(100% + 24px + env(safe-area-inset-bottom)))}.dashboard-columns,.form-layout,.organization-workspace-grid,.class-workspace-grid{grid-template-columns:1fr}.section-heading{flex-direction:column;align-items:flex-start}.section-heading>p{text-align:left;max-width:none}.staff-workspace-tabs{scrollbar-width:none;background:0 0;border:0;border-radius:0;gap:8px;padding:0 0 5px;display:flex;overflow-x:auto}.staff-workspace-tabs::-webkit-scrollbar{display:none}.staff-workspace-tabs button,.staff-workspace-tabs button:nth-child(2),.staff-workspace-tabs button:nth-child(-n+2){background:#fff;border:1px solid #d9d5cd;border-radius:999px;flex:none;min-width:max-content;min-height:46px;padding-inline:16px}.staff-workspace-tabs button[aria-selected=true]{border-color:var(--midnight);background:var(--midnight)}.staff-clock-card{flex-direction:column;align-items:flex-start}.staff-clock-actions{justify-content:stretch;width:100%}.staff-clock-actions>*{flex:170px}.staff-query-toolbar,.staff-exception-form,.staff-correction-form,.teacher-invite-form,.class-create-form,.journal-scope-card,.journal-meeting-grid,.journal-shared-grid,.payroll-rule-form{grid-template-columns:1fr}.staff-query-heading,.staff-query-toolbar .staff-search-box,.staff-query-reset,.staff-note,.staff-exception-form>.admin-primary,.staff-session-picker,.staff-correction-reason,.staff-correction-form>.admin-primary,.teacher-invite-form>.admin-primary,.class-create-form>.admin-primary,.journal-scope-summary,.payroll-rule-form>.admin-primary{grid-column:1}.staff-attention-grid,.staff-picker-results,.roster-grid{grid-template-columns:1fr}.student-table{min-width:720px}.history-table{min-width:860px}.directory-tools,.staff-directory-toolbar,.payroll-toolbar{flex-direction:column;align-items:stretch}.history-search,.directory-tools>label,.staff-search-box.compact,.payroll-toolbar>label,.payroll-toolbar>button{width:100%}.directory-tools>div,.staff-filter-group{width:100%;overflow-x:auto}.directory-tools>div button,.staff-filter-group button{white-space:nowrap;flex:1 0 auto}.staff-pagination{flex-direction:column;align-items:stretch}.staff-pagination>div{justify-content:space-between}.modal-backdrop{place-items:end center;padding:0}.admin-modal,.staff-punch-dialog{width:100%;max-height:92dvh;padding:26px 18px calc(22px + env(safe-area-inset-bottom));border-bottom:0;border-left:0;border-right:0;border-radius:25px 25px 0 0}.modal-close{top:14px;right:14px}}@media (max-width:560px){.admin-topbar{align-items:flex-start}.admin-topbar-actions{flex-direction:column;align-items:flex-end}.admin-topbar-actions>:not(.admin-user){min-height:44px}.dashboard-card,.directory-card,.form-card,.invite-card,.settings-panel,.class-create-form,.class-directory,.class-detail-form,.journal-scope-card,.journal-meeting-card,.journal-roster-card,.payroll-toolbar,.payroll-table-card,.payroll-rule-card,.payroll-rule-list,.staff-query-toolbar,.staff-attention-grid article,.admin-metrics article,.staff-clock-card{border-radius:15px}.kiosk-page{padding:14px}.kiosk-header{min-height:58px}.kiosk-grid{border-radius:20px;margin-top:18px}.kiosk-hero{padding:30px 20px}.kiosk-hero h1{font-size:clamp(48px,18vw,70px)}.checkin-form>div{grid-template-columns:auto minmax(0,1fr)}.checkin-form button{border-radius:0;grid-column:1/-1;min-height:54px}.pending-heading,.pending-names,.kiosk-privacy-seal{padding-inline:20px}.staff-kiosk-roster{grid-template-columns:1fr;padding:16px}.admin-mobile-drawer-links{grid-template-columns:1fr}}.platform-shell{color:#102a43;background:#f3f5f7;min-height:100dvh}.platform-header{z-index:20;-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);background:#fffffff0;border-bottom:1px solid #cad2da;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:clamp(22px,4vw,56px);min-height:92px;padding:16px clamp(18px,4vw,64px);display:grid;position:sticky;top:0}.platform-brand{color:#071f4b;letter-spacing:.14em;align-items:center;gap:10px;min-height:48px;display:inline-flex}.platform-brand>span{color:#071f4b;letter-spacing:0;background:#f4c95d;place-items:center;width:42px;height:42px;font-family:Georgia,serif;font-size:23px;font-style:italic;font-weight:800;display:grid}.platform-brand strong{font-size:18px}.platform-brand small{color:#637485;font-family:ui-monospace,monospace;font-size:10px;font-weight:800}.platform-header>div:nth-child(2) p,.platform-section-heading p{color:#1f2a8c;letter-spacing:.14em;margin:0 0 3px;font-family:ui-monospace,monospace;font-size:12px;font-weight:850}.platform-header h1{color:#071f4b;letter-spacing:-.045em;margin:0;font-size:clamp(24px,3vw,34px)}.platform-security-mark{color:#0b8f55;grid-template-columns:auto auto;align-items:center;gap:0 9px;display:grid}.platform-security-mark svg{grid-row:1/3}.platform-security-mark span{color:#102a43;font-size:13px;font-weight:800}.platform-security-mark small{color:#637485;font-size:12px}.platform-main{width:min(1520px,100%);margin:0 auto;padding:clamp(20px,3vw,42px) clamp(16px,3vw,44px) 70px}.platform-command-strip{background:#fff;border:1px solid #cad2da;grid-template-columns:repeat(4,1fr);display:grid}.platform-command-strip article{border-right:1px solid #cad2da;align-items:center;gap:15px;min-height:96px;padding:18px 22px;display:flex}.platform-command-strip article:last-child{border-right:0}.platform-command-strip svg{color:#1f2a8c;width:26px;height:26px}.platform-command-strip article:nth-child(3) svg{color:#b42318}.platform-command-strip article:nth-child(4) svg{color:#9b6a00}.platform-command-strip span{color:#637485;font-size:13px;display:grid}.platform-command-strip strong{color:#071f4b;font-family:ui-monospace,monospace;font-size:28px;line-height:1.2}.platform-tabs{border-bottom:1px solid #cad2da;margin-top:22px;display:flex}.platform-tabs button{color:#637485;cursor:pointer;background:0 0;border:0;border-bottom:3px solid #0000;align-items:center;gap:8px;min-height:50px;padding:0 22px;font-weight:800;display:inline-flex}.platform-tabs button[aria-current=page]{color:#071f4b;border-bottom-color:#f4c95d}.platform-tabs button span{color:#071f4b;background:#f4c95d;place-items:center;min-width:21px;height:21px;font-family:ui-monospace,monospace;font-size:11px;display:grid}.platform-feedback,.platform-sync{color:#075f3a;background:#e9f7ee;border-left:4px solid #0b8f55;margin-top:16px;padding:13px 16px;font-size:14px;font-weight:700}.platform-sync{z-index:40;color:#071f4b;background:#fff;border:1px solid #cad2da;border-left:4px solid #f4c95d;margin:0;position:fixed;bottom:18px;right:18px;box-shadow:0 12px 32px #071f4b29}.platform-provision{background:#fff;border:1px solid #071f4b;margin-top:22px}.platform-provision>summary{cursor:pointer;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:15px;min-height:82px;padding:15px 20px;list-style:none;display:grid}.platform-provision>summary::-webkit-details-marker{display:none}.platform-tenant>summary::-webkit-details-marker{display:none}.platform-admin-list details>summary::-webkit-details-marker{display:none}.platform-provision>summary>span{color:#071f4b;background:#f4c95d;place-items:center;width:42px;height:42px;display:grid}.platform-provision>summary div{gap:3px;display:grid}.platform-provision>summary strong{color:#071f4b;font-size:17px}.platform-provision>summary small{color:#637485;font-size:13px}.platform-provision[open]>summary>svg{transform:rotate(90deg)}.platform-provision form{background:#f8fafb;border-top:1px solid #cad2da;grid-template-columns:1.25fr .85fr 1.25fr auto;align-items:end;gap:12px;padding:19px 20px 22px;display:grid}.platform-provision label,.platform-grant-form label,.platform-status-form label,.platform-admin-list details label{color:#4b5f72;gap:6px;min-width:0;font-size:12px;font-weight:800;display:grid}.platform-provision input,.platform-filterbar input,.platform-filterbar select,.platform-grant-form input,.platform-grant-form select,.platform-status-form input,.platform-admin-list details input{color:#071f4b;background:#fff;border:1px solid #aeb9c4;border-radius:0;outline:0;width:100%;min-width:0;min-height:46px;padding:0 12px;font-size:16px}.platform-provision button,.platform-grant-form button,.platform-status-form button,.platform-admin-list details button{color:#fff;cursor:pointer;white-space:nowrap;background:#071f4b;border:1px solid #071f4b;justify-content:center;align-items:center;gap:8px;min-height:46px;padding:0 16px;font-weight:850;display:inline-flex}.platform-provision button:disabled,.platform-grant-form button:disabled,.platform-status-form button:disabled,.platform-admin-list details button:disabled{cursor:wait;opacity:.58}.platform-customer-workspace,.platform-audit{background:#fff;border:1px solid #cad2da;margin-top:22px}.platform-section-heading{border-bottom:1px solid #cad2da;justify-content:space-between;align-items:center;gap:20px;min-height:92px;padding:18px 22px;display:flex}.platform-section-heading h2{color:#071f4b;letter-spacing:-.035em;margin:0;font-size:23px}.platform-section-heading>p{color:#637485;letter-spacing:0;text-align:right;max-width:560px;margin:0;font-family:inherit;font-size:13px;font-weight:500}.platform-filterbar{background:#f8fafb;border-bottom:1px solid #cad2da;grid-template-columns:minmax(260px,1fr) auto;gap:12px;padding:14px 18px;display:grid}.platform-filterbar>label:first-child{align-items:center;display:flex;position:relative}.platform-filterbar>label:first-child svg{color:#637485;position:absolute;left:13px}.platform-filterbar>label:first-child input{padding-left:42px}.platform-filterbar>label:last-child{color:#637485;grid-template-columns:auto 150px;align-items:center;gap:9px;font-size:12px;font-weight:800;display:grid}.platform-tenant-list{display:grid}.platform-tenant{border-bottom:1px solid #cad2da}.platform-tenant:last-child{border-bottom:0}.platform-tenant>summary{cursor:pointer;grid-template-columns:5px minmax(180px,1.35fr) auto minmax(280px,1.4fr) minmax(120px,.7fr) auto;align-items:center;gap:18px;min-height:86px;padding:0 20px 0 0;list-style:none;display:grid;position:relative}.platform-lifecycle-rail{background:#0b8f55;align-self:stretch}.platform-tenant.is-suspended .platform-lifecycle-rail{background:#b42318}.platform-tenant.is-pending .platform-lifecycle-rail{background:#f4c95d}.platform-tenant.is-archived .platform-lifecycle-rail{background:#8492a0}.platform-tenant-identity{gap:2px;min-width:0;display:grid}.platform-tenant-identity strong{color:#071f4b;text-overflow:ellipsis;white-space:nowrap;font-size:16px;overflow:hidden}.platform-tenant-identity small{color:#637485;text-overflow:ellipsis;white-space:nowrap;font-family:ui-monospace,monospace;font-size:12px;overflow:hidden}.platform-status{color:#075f3a;white-space:nowrap;background:#e9f7ee;padding:6px 9px;font-size:12px;font-weight:850}.platform-status.status-suspended{color:#8f1d15;background:#fff0ee}.platform-status.status-pending{color:#745100;background:#fff6d9}.platform-status.status-archived{color:#4b5f72;background:#edf0f2}.platform-tenant-metrics{grid-template-columns:repeat(3,1fr);gap:8px;display:grid}.platform-tenant-metrics span{color:#637485;white-space:nowrap;font-size:12px}.platform-tenant-metrics b{color:#071f4b;font-family:ui-monospace,monospace;font-size:15px}.platform-tenant-activity{gap:2px;display:grid}.platform-tenant-activity small{color:#637485;font-size:11px}.platform-tenant-activity strong{color:#102a43;font-size:12px}.platform-disclosure{transition:transform .18s}.platform-tenant[open] .platform-disclosure{transform:rotate(90deg)}.platform-tenant-detail{background:#f8fafb;border-top:1px solid #cad2da;grid-template-columns:minmax(0,1.4fr) minmax(280px,.6fr);display:grid}.platform-tenant-detail>section,.platform-tenant-detail>aside{min-width:0;padding:20px}.platform-tenant-detail>aside{background:#fff;border-left:1px solid #cad2da}.platform-detail-heading{justify-content:space-between;align-items:center;gap:12px;margin-bottom:13px;display:flex}.platform-detail-heading>div{color:#071f4b;align-items:center;gap:8px;display:flex}.platform-detail-heading small{color:#637485;font-size:11px}.platform-admin-list{background:#fff;border:1px solid #cad2da;display:grid}.platform-admin-list>article{border-bottom:1px solid #dfe5e9;grid-template-columns:minmax(0,1fr) auto auto;align-items:center;gap:12px;padding:12px 14px;display:grid}.platform-admin-list>article:last-child{border-bottom:0}.platform-admin-list article>div{min-width:0;display:grid}.platform-admin-list article strong{color:#102a43;text-overflow:ellipsis;font-size:13px;overflow:hidden}.platform-admin-list article small{color:#637485;font-size:11px}.platform-admin-list article>span{color:#745100;background:#fff6d9;padding:4px 7px;font-size:11px;font-weight:800}.platform-admin-list article>span.is-confirmed{color:#075f3a;background:#e9f7ee}.platform-admin-list details{position:relative}.platform-admin-list details>summary{color:#8f1d15;cursor:pointer;border:1px solid #b42318;min-height:34px;padding:7px 9px;font-size:11px;font-weight:850;list-style:none}.platform-admin-list details form{z-index:5;background:#fff;border:1px solid #071f4b;gap:10px;width:min(360px,80vw);padding:14px;display:grid;position:absolute;top:42px;right:0;box-shadow:0 16px 34px #071f4b2e}.platform-admin-list details button{background:#b42318;border-color:#b42318}.platform-inline-empty{color:#8f1d15;background:#fff0ee;margin:0;padding:15px;font-size:13px}.platform-inline-loading{color:#4b5f72;margin:0;padding:15px;font-size:13px}.platform-inline-retry{color:#8f1d15;cursor:pointer;background:#fff0ee;border:0;min-height:44px;font-weight:800}.platform-grant-form{grid-template-columns:minmax(0,1fr) 140px auto;align-items:end;gap:10px;margin-top:12px;display:grid}.platform-tenant-detail aside dl{background:#dfe5e9;gap:1px;margin:0 0 14px;display:grid}.platform-tenant-detail aside dl div{background:#f8fafb;justify-content:space-between;align-items:center;gap:12px;min-height:38px;padding:8px 10px;display:flex}.platform-tenant-detail aside dt{color:#637485;font-size:11px}.platform-tenant-detail aside dd{color:#102a43;text-align:right;margin:0;font-size:12px;font-weight:750}.platform-status-form{gap:9px;display:grid}.platform-status-form button.is-danger{background:#b42318;border-color:#b42318}.platform-status-form button.is-restore{background:#0b8f55;border-color:#0b8f55}.platform-audit ol{margin:0;padding:0;list-style:none}.platform-audit li{border-bottom:1px solid #dfe5e9;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:13px;min-height:76px;padding:13px 20px;display:grid}.platform-audit li:last-child{border-bottom:0}.platform-audit li>span{color:#1f2a8c;background:#eef0ff;place-items:center;width:36px;height:36px;display:grid}.platform-audit li>div{min-width:0}.platform-audit li strong{color:#071f4b}.platform-audit li p{color:#637485;margin:2px 0 0;font-size:12px}.platform-audit li blockquote{color:#4b5f72;border-left:2px solid #f4c95d;margin:7px 0 0;padding-left:9px;font-size:12px}.platform-audit li time{color:#102a43;font-family:ui-monospace,monospace;font-size:11px}.platform-audit li>small{color:#637485;text-align:right;grid-column:3;font-size:10px}.platform-empty{color:#637485;text-align:center;align-content:center;place-items:center;gap:7px;min-height:180px;padding:25px;display:grid}.platform-empty strong{color:#102a43}.platform-empty p{margin:0;font-size:13px}.platform-mfa-page{background:#f3f5f7;grid-template-columns:minmax(260px,.7fr) minmax(420px,1.3fr);min-height:100dvh;display:grid}.platform-mfa-brand{color:#fff;letter-spacing:.15em;background-color:#071f4b;background-image:linear-gradient(#ffffff0a 1px,#0000 1px),linear-gradient(90deg,#ffffff0a 1px,#0000 1px);background-size:42px 42px;flex-wrap:wrap;align-content:flex-start;align-items:center;gap:10px;padding:clamp(30px,6vw,80px);display:flex}.platform-mfa-brand span{color:#071f4b;letter-spacing:0;background:#f4c95d;place-items:center;width:46px;height:46px;font-family:Georgia,serif;font-size:25px;font-style:italic;font-weight:800;display:grid}.platform-mfa-brand strong{font-size:21px}.platform-mfa-brand small{color:#ffffffa8;width:100%;font-family:ui-monospace,monospace;font-size:12px}.platform-mfa-card{background:#fff;border:1px solid #071f4b;align-self:center;width:min(640px,100% - 40px);margin:40px auto;padding:clamp(28px,5vw,52px);box-shadow:16px 16px #071f4b14}.platform-mfa-icon{color:#071f4b;background:#f4c95d;place-items:center;width:56px;height:56px;display:grid}.platform-mfa-card>p{color:#1f2a8c;letter-spacing:.14em;margin:24px 0 5px;font-family:ui-monospace,monospace;font-size:12px;font-weight:850}.platform-mfa-card h1{color:#071f4b;letter-spacing:-.05em;margin:0;font-size:clamp(30px,5vw,46px);line-height:1.08}.platform-mfa-copy{color:#075f3a;background:#e9f7ee;align-items:flex-start;gap:10px;margin:22px 0;padding:13px;display:flex}.platform-mfa-copy svg{flex:none}.platform-mfa-copy p{margin:0;font-size:13px;line-height:1.65}.platform-mfa-enrollment{background:#f8fafb;border:1px solid #cad2da;place-items:center;gap:10px;margin-bottom:20px;padding:18px;display:grid}.platform-mfa-enrollment img{background:#fff;max-width:100%;height:auto}.platform-mfa-enrollment details{text-align:center;width:100%}.platform-mfa-enrollment summary{color:#1f2a8c;cursor:pointer;min-height:44px;padding:10px;font-size:12px;font-weight:800}.platform-mfa-enrollment code{overflow-wrap:anywhere;color:#071f4b;background:#fff;padding:10px;font-size:11px;display:block}.platform-mfa-card form{gap:10px;display:grid}.platform-mfa-card form label{color:#102a43;gap:7px;font-size:13px;font-weight:850;display:grid}.platform-mfa-card form input{color:#071f4b;letter-spacing:.25em;background:#fff;border:1px solid #aeb9c4;border-radius:0;min-height:58px;padding:0 15px;font-family:ui-monospace,monospace;font-size:26px;font-weight:800}.platform-mfa-card form small{color:#637485;font-size:11px;line-height:1.5}.platform-mfa-card form button{color:#fff;cursor:pointer;background:#071f4b;border:0;justify-content:center;align-items:center;gap:8px;min-height:54px;margin-top:5px;font-weight:850;display:inline-flex}.platform-mfa-card form button:disabled{cursor:wait;opacity:.58}@media (max-width:1000px){.platform-command-strip{grid-template-columns:1fr 1fr}.platform-command-strip article:nth-child(2){border-right:0}.platform-command-strip article:nth-child(-n+2){border-bottom:1px solid #cad2da}.platform-provision form{grid-template-columns:1fr 1fr}.platform-provision form button{min-height:46px}.platform-tenant>summary{grid-template-columns:5px minmax(160px,1fr) auto minmax(220px,1fr) auto}.platform-tenant-activity{display:none}}@media (max-width:760px){.writing-tools{grid-template-columns:1fr 1fr;display:grid}.writing-tools-minimal{grid-template-columns:1fr 1fr}.writing-tools button{width:100%}.writing-style-backdrop{place-items:end center;padding:8px}.writing-style-dialog{border-radius:18px 18px 0 0;width:100%;max-height:calc(100dvh - 16px)}.writing-style-dialog>header,.writing-style-form,.writing-style-list,.writing-style-picker-list{padding:18px}.platform-mfa-page{grid-template-columns:1fr}.platform-mfa-brand{min-height:100px;padding:22px}.platform-mfa-brand small{width:auto}.platform-mfa-card{width:calc(100% - 26px);margin:18px auto 36px;padding:27px 20px;box-shadow:7px 7px #071f4b14}.platform-header{grid-template-columns:1fr auto;gap:12px;min-height:auto;padding:14px 16px;position:relative}.platform-brand{grid-column:1}.platform-header>div:nth-child(2){grid-area:2/1/auto/-1}.platform-header>div:nth-child(2) p{font-size:10px}.platform-header h1{font-size:27px}.platform-security-mark{grid-area:1/2}.platform-security-mark span,.platform-security-mark small{display:none}.platform-main{padding:16px 13px 56px}.platform-command-strip article{min-height:76px;padding:13px}.platform-command-strip strong{font-size:23px}.platform-tabs{overflow-x:auto}.platform-tabs button{flex:1 0 auto;padding-inline:14px}.platform-provision>summary{padding-inline:14px}.platform-provision form{grid-template-columns:1fr;padding:15px}.platform-section-heading{flex-direction:column;align-items:flex-start}.platform-section-heading>p{text-align:left}.platform-filterbar{grid-template-columns:1fr}.platform-filterbar>label:last-child{grid-template-columns:1fr;gap:4px}.platform-filterbar>label:last-child select{width:100%}.platform-tenant>summary{grid-template-columns:4px minmax(0,1fr) auto;gap:11px;min-height:112px;padding-right:12px}.platform-lifecycle-rail{grid-row:1/3}.platform-tenant-identity{grid-column:2}.platform-status{grid-area:1/3}.platform-tenant-metrics{grid-area:2/2/auto/4}.platform-disclosure{position:absolute;top:46px;right:9px}.platform-tenant-detail{grid-template-columns:1fr}.platform-tenant-detail>aside{border-top:1px solid #cad2da;border-left:0}.platform-admin-list>article{grid-template-columns:minmax(0,1fr) auto}.platform-admin-list details{grid-column:1/-1}.platform-admin-list details>summary{text-align:center}.platform-admin-list details form{width:100%;box-shadow:none;margin-top:8px;position:static}.platform-grant-form{grid-template-columns:1fr}.platform-audit li{grid-template-columns:auto minmax(0,1fr)}.platform-audit li time,.platform-audit li>small{text-align:left;grid-column:2}}.camera-kiosk-page .kiosk-grid{grid-template-columns:minmax(0,1.7fr) minmax(300px,.6fr);width:min(1320px,100%);margin-top:clamp(18px,3vh,42px)}.camera-kiosk-page .kiosk-hero{padding:clamp(28px,3.5vw,52px)}.camera-kiosk-page .kiosk-hero h1{font-size:clamp(46px,5.4vw,74px)}.camera-kiosk-page .kiosk-clock{margin:22px 0 18px}.face-camera-launch{margin-top:20px}.face-camera-trigger{border:1px solid var(--midnight);color:#fff;background:var(--midnight);cursor:pointer;text-align:left;grid-template-columns:48px minmax(0,1fr) auto;align-items:center;gap:14px;width:100%;min-height:76px;padding:12px 18px;display:grid;box-shadow:7px 7px #071d491a}.face-camera-trigger:after{color:var(--gold);content:"START  →";letter-spacing:.12em;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:11px;font-weight:900}.face-camera-trigger>svg{width:48px;height:48px;color:var(--midnight);background:var(--gold);padding:12px}.face-camera-trigger>span{gap:2px;min-width:0;display:grid}.face-camera-trigger strong{letter-spacing:-.015em;font-size:17px}.face-camera-trigger small{color:#ffffff9e;font-size:12px}.face-camera-trigger.is-loading{cursor:wait}.face-camera-trigger.is-loading:after{content:"LOADING"}.face-camera-dialog{color:#fff;background:#061424;border:1px solid #ffffff38;width:min(920px,100vw - 34px);max-width:none;max-height:calc(100dvh - 34px);margin:auto;padding:0;overflow:auto;box-shadow:0 30px 100px #0108167a}.face-camera-dialog::backdrop{-webkit-backdrop-filter:blur(9px);backdrop-filter:blur(9px);background:#030c1fd1}.face-camera{background:#061424;overflow:hidden}.face-camera-dialog-header{border-bottom:1px solid #ffffff24;justify-content:space-between;align-items:center;gap:20px;min-height:78px;padding:14px 18px 14px 22px;display:flex}.face-camera-dialog-header>div{gap:2px;min-width:0;display:grid}.face-camera-dialog-header p{color:#59d8ff;letter-spacing:.16em;margin:0;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:10px;font-weight:900}.face-camera-dialog-header h2{color:#fff;letter-spacing:-.035em;margin:0;font-size:clamp(20px,3vw,28px)}.face-camera-close{color:#fff;cursor:pointer;background:0 0;border:1px solid #ffffff4d;flex:none;place-items:center;width:46px;height:46px;display:grid}.face-camera-stage{aspect-ratio:16/9;isolation:isolate;background:#061631;place-items:center;max-height:62dvh;display:grid;position:relative;overflow:hidden}.face-camera-stage video{z-index:0;object-fit:cover;width:100%;height:100%;position:absolute;inset:0;transform:scaleX(-1)}.face-camera-vignette{z-index:1;pointer-events:none;border:1px solid #ffffff2e;border-radius:48% 48% 44% 44%/40% 40% 54% 54%;width:clamp(180px,34%,300px);height:72%;position:absolute;box-shadow:0 0 0 999px #020c1d91}.face-camera-portal{z-index:2;border:3px solid var(--gold);filter:drop-shadow(0 0 8px #f2c75a6b);pointer-events:none;border-radius:48% 48% 44% 44%/40% 40% 54% 54%;width:clamp(180px,34%,300px);height:72%;transition:border-color .2s,transform .2s;position:absolute}.face-camera-portal:before,.face-camera-portal:after{border:2px solid var(--gold);content:"";width:16px;height:23%;position:absolute;top:49%}.face-camera-portal:before{border-right:0;border-radius:18px 0 0 18px;left:-12px}.face-camera-portal:after{border-left:0;border-radius:0 18px 18px 0;right:-12px}.face-camera-portal i{border-radius:inherit;position:absolute}.face-camera-portal i:first-child{border-top:2px solid #59d8ff;border-bottom:2px solid #59d8ff;animation:2.8s linear infinite face-orbit;inset:-10px}.face-camera-portal i:nth-child(2){border:1px dashed #ffffff73;animation:5s linear infinite reverse face-orbit;inset:9%}.face-camera-portal i:nth-child(3){border-top:1px solid #ffffff73;height:27%;top:16%;left:17%;right:17%}.face-camera.is-working .face-camera-portal{border-color:#59d8ff;transform:scale(.96)}.face-camera.is-working .face-camera-portal:before,.face-camera.is-working .face-camera-portal:after{border-color:#59d8ff}.face-camera.is-success .face-camera-portal{border-color:#5ae2a7}@keyframes face-orbit{to{transform:rotate(360deg)}}.face-camera-empty,.face-camera-success{z-index:3;color:#fff;text-align:center;place-items:center;gap:7px;max-width:390px;padding:24px;display:grid;position:relative}.face-camera-empty>svg{color:var(--gold)}.face-camera-empty strong,.face-camera-success strong{letter-spacing:-.025em;font-size:clamp(21px,3vw,31px)}.face-camera-empty span,.face-camera-success span{color:#ffffffad;font-size:12px;line-height:1.55}.face-camera-success{-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#033a28e0;align-content:center;max-width:none;position:absolute;inset:0}.face-camera-success>svg{color:#80e3ae}.face-camera-success.is-warning{background:#583600eb}.face-camera-success.is-warning>svg{color:var(--gold)}.face-camera-success span{color:#ffffffd1;font-size:15px;font-weight:750}.face-camera-console{color:#fff;border-top:1px solid #ffffff26;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:13px;min-height:84px;padding:13px 14px;display:grid}.face-camera-status-icon{width:42px;height:42px;color:var(--midnight);background:var(--gold);place-items:center;display:grid}.face-camera-status-icon svg{width:21px;height:21px}.face-camera-console>div{gap:2px;min-width:0;display:grid}.face-camera-console p{color:var(--gold);letter-spacing:.14em;margin:0;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:10px;font-weight:850}.face-camera-console strong{font-size:15px}.face-camera-console small{color:#ffffff9e;text-overflow:ellipsis;white-space:nowrap;font-size:11px;line-height:1.45;overflow:hidden}.face-camera-console button{border:1px solid var(--gold);min-height:44px;color:var(--midnight);background:var(--gold);cursor:pointer;justify-content:center;align-items:center;gap:7px;padding:0 15px;font-weight:850;display:inline-flex}.face-camera-console button:focus-visible{outline-offset:3px;outline:3px solid #fff}.face-camera-console button.face-camera-stop{color:#fff;background:0 0;border-color:#ffffff57;width:44px;padding:0}.face-camera.is-error .face-camera-status-icon,.face-camera.is-warning .face-camera-status-icon{color:#fff;background:var(--red)}.face-camera.is-success .face-camera-status-icon{color:#033a28;background:#80e3ae}.face-camera-privacy{color:#ffffff94;border-top:1px solid #ffffff1f;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:9px;min-height:52px;padding:8px 15px;font-size:11px;display:grid}.face-camera-privacy>svg{color:#5ae2a7}.face-camera-privacy button{color:#fff;cursor:pointer;text-underline-offset:3px;background:0 0;border:0;align-items:center;gap:6px;min-height:38px;padding:0 9px;font-size:11px;font-weight:800;text-decoration:underline;display:inline-flex}.pin-fallback{border:1px solid var(--line);background:#fbfaf8;margin-top:17px}.pin-fallback>summary{min-height:48px;color:var(--midnight);cursor:pointer;align-items:center;gap:8px;padding:10px 14px;font-size:13px;font-weight:800;list-style:none;display:flex}.pin-fallback>summary::-webkit-details-marker{display:none}.pin-fallback>summary:after{color:var(--muted);content:"+";margin-left:auto;font-family:ui-monospace,monospace;font-size:18px}.pin-fallback[open]>summary:after{content:"−"}.pin-fallback .checkin-form{padding:0 13px 13px}.pin-fallback .checkin-form>div{min-height:60px}.pin-fallback .checkin-code-input{font-variant-numeric:tabular-nums;letter-spacing:.14em;min-height:64px;padding-block:10px;font-size:24px}.pin-fallback .checkin-code-input::placeholder{letter-spacing:normal;font-size:18px}@media (max-width:1000px){.camera-kiosk-page .kiosk-grid{grid-template-columns:1fr}.camera-kiosk-page .kiosk-hero{border-right:0;border-bottom:1px solid var(--midnight)}.staff-kiosk-intro{grid-template-columns:1fr}.staff-kiosk-search{grid-area:auto/1;margin-top:8px}.staff-face-entry{grid-template-columns:1fr}}@media (max-width:620px){.staff-kiosk-page{padding:0 0 calc(18px + env(safe-area-inset-bottom))}.staff-kiosk-header{min-height:64px;padding:8px 14px}.staff-kiosk-header .admin-wordmark{font-size:16px}.staff-kiosk-header .admin-wordmark>span{width:38px;height:38px}.staff-kiosk-header strong{text-overflow:ellipsis;white-space:nowrap;max-width:190px;font-size:12px;overflow:hidden}.staff-kiosk-header time{font-size:11px}.staff-kiosk-board{box-shadow:none;border-left:0;border-right:0;margin-top:0}.staff-kiosk-intro{gap:8px;padding:24px 16px 18px}.staff-kiosk-intro h1{font-size:39px}.staff-kiosk-intro>p:not(.kiosk-eyebrow){font-size:14px;line-height:1.5}.staff-kiosk-search{min-height:52px;margin-top:5px}.staff-kiosk-legend{margin-top:7px;padding-top:12px}.staff-face-action-heading{min-height:70px;padding:14px 16px}.staff-face-action-heading strong{font-size:20px}.staff-face-actions{background:#f1f3f8;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;padding:10px}.staff-face-actions button{border:1px solid var(--line);min-height:76px;font-size:15px}.staff-kiosk-toast{padding:12px 16px;font-size:14px}.staff-kiosk-footer{flex-direction:column;align-items:flex-start;gap:2px;padding:0 16px}.camera-kiosk-page .kiosk-hero{padding:25px 16px}.camera-kiosk-page .kiosk-hero h1{font-size:clamp(45px,15vw,62px)}.face-camera-launch{margin-top:16px}.face-camera-trigger{grid-template-columns:44px minmax(0,1fr);padding:10px 12px}.face-camera-trigger:after{display:none}.face-camera-trigger>svg{width:44px;height:44px}.face-camera-dialog{border:0;width:100vw;height:100dvh;max-height:100dvh;margin:0;overflow:hidden}.face-camera{--mobile-face-guide-width:min(72vw, 340px);grid-template-rows:auto minmax(0,1fr) auto;height:100dvh;min-height:0;display:grid}.face-camera-dialog-header{min-height:64px;padding:max(10px, env(safe-area-inset-top)) 12px 10px 16px}.face-camera-dialog-header h2{font-size:22px}.face-camera-close{width:48px;height:48px}.face-camera-stage{aspect-ratio:auto;min-height:0;max-height:none}.face-camera-stage video{object-fit:contain}.face-camera-vignette,.face-camera-portal{width:var(--mobile-face-guide-width);aspect-ratio:.72;height:auto}.face-camera-console{min-height:0;padding:12px 16px max(14px, env(safe-area-inset-bottom));grid-template-columns:auto minmax(0,1fr);gap:10px}.face-camera-console button{grid-column:1/-1;width:100%}.face-camera-console button.face-camera-stop{grid-area:1/2;justify-self:end;width:42px}.face-camera-console small{white-space:normal;margin-top:2px;display:block}.face-camera-privacy{grid-template-columns:auto minmax(0,1fr)}.face-camera-privacy button{grid-column:1/-1;justify-self:start}}@media (prefers-reduced-motion:reduce){.face-camera-portal,.face-camera-portal i{transition:none;animation:none}.platform-disclosure,.platform-provision>summary>svg{transition:none}}.campus-filter{border:1px solid var(--line);min-width:190px;min-height:48px;color:var(--muted);background:#fff;border-radius:12px;align-items:center;gap:9px;padding:0 12px;display:flex}.campus-filter>svg{flex:none}.campus-filter select{width:100%;min-width:0;min-height:44px;color:var(--midnight);font:inherit;background-color:#0000;border:0;outline:0;padding:0 28px 0 0;font-size:14px;font-weight:800}.campus-filter:focus-within{outline:3px solid var(--gold);outline-offset:2px}.directory-search-group,.staff-directory-search-group,.payroll-search-group{align-items:stretch;gap:10px;min-width:0;display:flex}.directory-tools>.directory-search-group{border:0;flex:620px}.directory-search-group>label:first-child,.payroll-search-group>label:first-child{border:1px solid var(--line);min-width:240px;min-height:48px;color:var(--muted);background:#fff;border-radius:12px;flex:360px;align-items:center;gap:10px;padding:0 13px;display:flex}.directory-search-group input,.payroll-search-group input{width:100%;min-width:0;color:var(--midnight);background:0 0;border:0;outline:0;font-size:15px}.staff-directory-search-group{flex:680px}.staff-directory-search-group .staff-search-box{flex:420px}.history-filters{grid-template-columns:auto auto minmax(220px,1fr) minmax(190px,auto)}.history-filters>.campus-filter{width:100%}.staff-query-toolbar{grid-template-columns:minmax(240px,1.25fr) repeat(3,minmax(165px,.75fr)) auto}.staff-query-toolbar>.campus-filter{min-height:52px}.payroll-search-group{flex:620px;margin-right:auto}.payroll-toolbar .payroll-search-group>label:first-child{max-width:390px}.section-filter{justify-items:end;gap:7px;min-width:0;display:grid}.section-filter>p{margin:0}.class-directory-tools>.campus-filter{width:100%}@media (max-width:900px){.history-filters,.staff-query-toolbar{grid-template-columns:repeat(2,minmax(0,1fr))}.staff-query-heading,.staff-query-toolbar .staff-search-box,.staff-query-reset{grid-column:1/-1}.directory-search-group,.staff-directory-search-group,.payroll-search-group{width:100%}}@media (max-width:680px){.directory-tools>.directory-search-group{flex:0 auto}.directory-search-group,.staff-directory-search-group,.payroll-search-group{flex-direction:column}.staff-directory-search-group,.payroll-search-group{flex-basis:auto}.directory-search-group>label:first-child,.staff-directory-search-group .staff-search-box,.payroll-search-group>label:first-child,.campus-filter{flex-basis:auto;width:100%;min-width:0}.history-filters,.staff-query-toolbar{grid-template-columns:1fr}.history-filters>*,.staff-query-toolbar>*{grid-column:1}.section-filter{justify-items:stretch;width:100%}}@property --tw-space-y-reverse{syntax:"*";inherits:false;initial-value:0}@property --tw-divide-y-reverse{syntax:"*";inherits:false;initial-value:0}@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-tracking{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-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}
