@import "https://fonts.googleapis.com/css2?family=Montserrat:wght@400;500;600;700;800&display=swap";@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-scale-x:1;--tw-scale-y:1;--tw-scale-z:1;--tw-rotate-x:initial;--tw-rotate-y:initial;--tw-rotate-z:initial;--tw-skew-x:initial;--tw-skew-y:initial;--tw-space-y-reverse:0;--tw-space-x-reverse:0;--tw-divide-y-reverse:0;--tw-border-style:solid;--tw-gradient-position:initial;--tw-gradient-from:#0000;--tw-gradient-via:#0000;--tw-gradient-to:#0000;--tw-gradient-stops:initial;--tw-gradient-via-stops:initial;--tw-gradient-from-position:0%;--tw-gradient-via-position:50%;--tw-gradient-to-position:100%;--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-outline-style:solid;--tw-blur:initial;--tw-brightness:initial;--tw-contrast:initial;--tw-grayscale:initial;--tw-hue-rotate:initial;--tw-invert:initial;--tw-opacity:initial;--tw-saturate:initial;--tw-sepia:initial;--tw-drop-shadow:initial;--tw-drop-shadow-color:initial;--tw-drop-shadow-alpha:100%;--tw-drop-shadow-size:initial;--tw-backdrop-blur:initial;--tw-backdrop-brightness:initial;--tw-backdrop-contrast:initial;--tw-backdrop-grayscale:initial;--tw-backdrop-hue-rotate:initial;--tw-backdrop-invert:initial;--tw-backdrop-opacity:initial;--tw-backdrop-saturate:initial;--tw-backdrop-sepia:initial;--tw-duration:initial;--tw-ease:initial;--tw-text-shadow-color:initial;--tw-text-shadow-alpha:100%;--tw-translate-x:0;--tw-translate-y:0;--tw-translate-z:0}}}@layer theme{:root,:host{--font-sans:ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";--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-red-500:oklch(63.7% .237 25.331);--color-red-600:oklch(57.7% .245 27.325);--color-red-700:oklch(50.5% .213 27.518);--color-yellow-500:oklch(79.5% .184 86.047);--color-yellow-600:oklch(68.1% .162 75.834);--color-green-500:oklch(72.3% .219 149.579);--color-green-600:oklch(62.7% .194 149.214);--color-blue-50:oklch(97% .014 254.604);--color-blue-100:oklch(93.2% .032 255.585);--color-blue-200:oklch(88.2% .059 254.128);--color-blue-300:oklch(80.9% .105 251.813);--color-blue-400:oklch(70.7% .165 254.624);--color-blue-500:oklch(62.3% .214 259.815);--color-blue-600:oklch(54.6% .245 262.881);--color-blue-700:oklch(48.8% .243 264.376);--color-blue-800:oklch(42.4% .199 265.638);--color-blue-900:oklch(37.9% .146 265.522);--color-purple-500:oklch(62.7% .265 303.9);--color-purple-600:oklch(55.8% .288 302.321);--color-pink-500:oklch(65.6% .241 354.308);--color-gray-50:oklch(98.5% .002 247.839);--color-gray-100:oklch(96.7% .003 264.542);--color-gray-200:oklch(92.8% .006 264.531);--color-gray-300:oklch(87.2% .01 258.338);--color-gray-400:oklch(70.7% .022 261.325);--color-gray-500:oklch(55.1% .027 264.364);--color-gray-600:oklch(44.6% .03 256.802);--color-gray-700:oklch(37.3% .034 259.733);--color-gray-800:oklch(27.8% .033 256.848);--color-gray-900:oklch(21% .034 264.665);--color-gray-950:oklch(13% .028 261.692);--color-black:#000;--color-white:#fff;--spacing:.25rem;--breakpoint-xl:80rem;--container-sm:24rem;--container-md:28rem;--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-5xl:3rem;--text-5xl--line-height:1;--text-6xl:3.75rem;--text-6xl--line-height:1;--font-weight-thin:100;--font-weight-light:300;--font-weight-normal:400;--font-weight-medium:500;--font-weight-semibold:600;--font-weight-bold:700;--font-weight-black:900;--tracking-tighter:-.05em;--tracking-tight:-.025em;--tracking-normal:0em;--tracking-wide:.025em;--tracking-wider:.05em;--tracking-widest:.1em;--leading-tight:1.25;--leading-snug:1.375;--leading-normal:1.5;--leading-relaxed:1.625;--leading-loose:2;--radius-sm:.25rem;--radius-md:.375rem;--radius-lg:.5rem;--radius-xl:.75rem;--radius-2xl:1rem;--radius-3xl:1.5rem;--shadow-sm:0 1px 3px 0 #0000001a, 0 1px 2px -1px #0000001a;--shadow-md:0 4px 6px -1px #0000001a, 0 2px 4px -2px #0000001a;--shadow-lg:0 10px 15px -3px #0000001a, 0 4px 6px -4px #0000001a;--shadow-xl:0 20px 25px -5px #0000001a, 0 8px 10px -6px #0000001a;--shadow-2xl:0 25px 50px -12px #00000040;--ease-in:cubic-bezier(.4, 0, 1, 1);--ease-out:cubic-bezier(0, 0, .2, 1);--ease-in-out:cubic-bezier(.4, 0, .2, 1);--animate-spin:spin 1s linear infinite;--animate-pulse:pulse 2s cubic-bezier(.4, 0, .6, 1) infinite;--animate-bounce:bounce 1s infinite;--aspect-video:16 / 9;--default-transition-duration:.15s;--default-transition-timing-function:cubic-bezier(.4, 0, .2, 1);--default-font-family:var(--font-sans);--default-mono-font-family:var(--font-mono)}}@layer base{*,:after,:before,::backdrop{box-sizing:border-box;border:0 solid;margin:0;padding:0}::file-selector-button{box-sizing:border-box;border:0 solid;margin:0;padding:0}html,:host{-webkit-text-size-adjust:100%;tab-size:4;line-height:1.5;font-family:var(--default-font-family,ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji");font-feature-settings:var(--default-font-feature-settings,normal);font-variation-settings:var(--default-font-variation-settings,normal);-webkit-tap-highlight-color:transparent}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:var(--default-mono-font-family,ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace);font-feature-settings:var(--default-mono-font-feature-settings,normal);font-variation-settings:var(--default-mono-font-variation-settings,normal);font-size:1em}small{font-size:80%}sub,sup{vertical-align:baseline;font-size:75%;line-height:0;position:relative}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}:-moz-focusring{outline:auto}progress{vertical-align:baseline}summary{display:list-item}ol,ul,menu{list-style:none}img,svg,video,canvas,audio,iframe,embed,object{vertical-align:middle;display:block}img,video{max-width:100%;height:auto}button,input,select,optgroup,textarea{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}::file-selector-button{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}:where(select:is([multiple],[size])) optgroup{font-weight:bolder}:where(select:is([multiple],[size])) optgroup option{padding-inline-start:20px}::file-selector-button{margin-inline-end:4px}::placeholder{opacity:1}@supports (not ((-webkit-appearance:-apple-pay-button))) or (contain-intrinsic-size:1px){::placeholder{color:currentColor}@supports (color:color-mix(in lab, red, red)){::placeholder{color:color-mix(in oklab, currentcolor 50%, transparent)}}}textarea{resize:vertical}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-date-and-time-value{min-height:1lh;text-align:inherit}::-webkit-datetime-edit{display:inline-flex}::-webkit-datetime-edit-fields-wrapper{padding:0}::-webkit-datetime-edit{padding-block:0}::-webkit-datetime-edit-year-field{padding-block:0}::-webkit-datetime-edit-month-field{padding-block:0}::-webkit-datetime-edit-day-field{padding-block:0}::-webkit-datetime-edit-hour-field{padding-block:0}::-webkit-datetime-edit-minute-field{padding-block:0}::-webkit-datetime-edit-second-field{padding-block:0}::-webkit-datetime-edit-millisecond-field{padding-block:0}::-webkit-datetime-edit-meridiem-field{padding-block:0}::-webkit-calendar-picker-indicator{line-height:1}:-moz-ui-invalid{box-shadow:none}button,input:where([type=button],[type=reset],[type=submit]){appearance:button}::file-selector-button{appearance:button}::-webkit-inner-spin-button{height:auto}::-webkit-outer-spin-button{height:auto}[hidden]:where(:not([hidden=until-found])){display:none!important}}@layer components;@layer utilities{.\@container{container-type:inline-size}.collapse{visibility:collapse}.invisible{visibility:hidden}.visible{visibility:visible}.sr-only{clip-path:inset(50%);white-space:nowrap;border-width:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.absolute{position:absolute}.fixed{position:fixed}.relative{position:relative}.static{position:static}.sticky{position:sticky}.inset-0{inset:calc(var(--spacing) * 0)}.inset-x-4{inset-inline:calc(var(--spacing) * 4)}.inset-y-8{inset-block:calc(var(--spacing) * 8)}.start{inset-inline-start:var(--spacing)}.end{inset-inline-end:var(--spacing)}.top-0{top:calc(var(--spacing) * 0)}.top-\[117px\]{top:117px}.right-0{right:calc(var(--spacing) * 0)}.isolate{isolation:isolate}.z-0{z-index:0}.z-10{z-index:10}.z-20{z-index:20}.z-30{z-index:30}.z-40{z-index:40}.z-50{z-index:50}.order-1{order:1}.order-2{order:2}.col-span-2{grid-column:span 2/span 2}.row-span-3{grid-row:span 3/span 3}.container{width:100%}@media (width>=40rem){.container{max-width:40rem}}@media (width>=48rem){.container{max-width:48rem}}@media (width>=64rem){.container{max-width:64rem}}@media (width>=80rem){.container{max-width:80rem}}@media (width>=96rem){.container{max-width:96rem}}.m-4{margin:calc(var(--spacing) * 4)}.m-6{margin:calc(var(--spacing) * 6)}.mx-auto{margin-inline:auto}.my-6{margin-block:calc(var(--spacing) * 6)}.-mt-4{margin-top:calc(var(--spacing) * -4)}.mt-8{margin-top:calc(var(--spacing) * 8)}.mt-auto{margin-top:auto}.mr-2{margin-right:calc(var(--spacing) * 2)}.mb-2{margin-bottom:calc(var(--spacing) * 2)}.mb-4{margin-bottom:calc(var(--spacing) * 4)}.mb-6{margin-bottom:calc(var(--spacing) * 6)}.mb-8{margin-bottom:calc(var(--spacing) * 8)}.ml-auto{margin-left:auto}.line-clamp-3{-webkit-line-clamp:3;-webkit-box-orient:vertical;display:-webkit-box;overflow:hidden}.block{display:block}.contents{display:contents}.flex{display:flex}.grid{display:grid}.hidden{display:none}.inline{display:inline}.inline-block{display:inline-block}.inline-flex{display:inline-flex}.inline-grid{display:inline-grid}.list-item{display:list-item}.table{display:table}.aspect-\[4\/3\]{aspect-ratio:4/3}.aspect-square{aspect-ratio:1}.aspect-video{aspect-ratio:var(--aspect-video)}.size-6{width:calc(var(--spacing) * 6);height:calc(var(--spacing) * 6)}.size-8{width:calc(var(--spacing) * 8);height:calc(var(--spacing) * 8)}.h-4{height:calc(var(--spacing) * 4)}.h-6{height:calc(var(--spacing) * 6)}.h-8{height:calc(var(--spacing) * 8)}.h-9{height:calc(var(--spacing) * 9)}.h-10{height:calc(var(--spacing) * 10)}.h-11{height:calc(var(--spacing) * 11)}.h-12{height:calc(var(--spacing) * 12)}.h-14{height:calc(var(--spacing) * 14)}.h-16{height:calc(var(--spacing) * 16)}.h-48{height:calc(var(--spacing) * 48)}.h-64{height:calc(var(--spacing) * 64)}.h-\[1\.2rem\]{height:1.2rem}.h-\[500px\]{height:500px}.h-full{height:100%}.h-screen{height:100vh}.max-h-96{max-height:calc(var(--spacing) * 96)}.min-h-dvh{min-height:100dvh}.min-h-screen{min-height:100vh}.w-1\/2{width:50%}.w-1\/3{width:33.3333%}.w-4{width:calc(var(--spacing) * 4)}.w-6{width:calc(var(--spacing) * 6)}.w-8{width:calc(var(--spacing) * 8)}.w-12{width:calc(var(--spacing) * 12)}.w-32{width:calc(var(--spacing) * 32)}.w-64{width:calc(var(--spacing) * 64)}.w-\[1\.2rem\]{width:1.2rem}.w-\[180px\]{width:180px}.w-\[200px\]{width:200px}.w-\[250px\]{width:250px}.w-\[500px\]{width:500px}.w-auto{width:auto}.w-full{width:100%}.w-screen{width:100vw}.max-w-7xl{max-width:var(--container-7xl)}.max-w-md{max-width:var(--container-md)}.max-w-screen-xl{max-width:var(--breakpoint-xl)}.max-w-sm{max-width:var(--container-sm)}.min-w-0{min-width:calc(var(--spacing) * 0)}.flex-1{flex:1}.flex-shrink,.shrink{flex-shrink:1}.shrink-0{flex-shrink:0}.grow{flex-grow:1}.scale-0{--tw-scale-x:0%;--tw-scale-y:0%;--tw-scale-z:0%;scale:var(--tw-scale-x) var(--tw-scale-y)}.scale-100{--tw-scale-x:100%;--tw-scale-y:100%;--tw-scale-z:100%;scale:var(--tw-scale-x) var(--tw-scale-y)}.rotate-0{rotate:none}.rotate-90{rotate:90deg}.transform{transform:var(--tw-rotate-x,) var(--tw-rotate-y,) var(--tw-rotate-z,) var(--tw-skew-x,) var(--tw-skew-y,)}.animate-bounce{animation:var(--animate-bounce)}.animate-pulse{animation:var(--animate-pulse)}.animate-spin{animation:var(--animate-spin)}.cursor-default{cursor:default}.cursor-not-allowed{cursor:not-allowed}.cursor-pointer{cursor:pointer}.cursor-wait{cursor:wait}.resize{resize:both}.grid-cols-1{grid-template-columns:repeat(1,minmax(0,1fr))}.grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.grid-cols-4{grid-template-columns:repeat(4,minmax(0,1fr))}.grid-cols-12{grid-template-columns:repeat(12,minmax(0,1fr))}.grid-cols-\[1fr_500px_2fr\]{grid-template-columns:1fr 500px 2fr}.grid-rows-3{grid-template-rows:repeat(3,minmax(0,1fr))}.grid-rows-\[auto_1fr_auto\]{grid-template-rows:auto 1fr auto}.flex-col{flex-direction:column}.flex-col-reverse{flex-direction:column-reverse}.flex-row{flex-direction:row}.flex-row-reverse{flex-direction:row-reverse}.flex-nowrap{flex-wrap:nowrap}.flex-wrap{flex-wrap:wrap}.items-baseline{align-items:baseline}.items-center{align-items:center}.items-end{align-items:flex-end}.items-start{align-items:flex-start}.items-stretch{align-items:stretch}.justify-around{justify-content:space-around}.justify-between{justify-content:space-between}.justify-center{justify-content:center}.justify-end{justify-content:flex-end}.justify-evenly{justify-content:space-evenly}.justify-start{justify-content:flex-start}.gap-2{gap:calc(var(--spacing) * 2)}.gap-4{gap:calc(var(--spacing) * 4)}.gap-6{gap:calc(var(--spacing) * 6)}.gap-8{gap:calc(var(--spacing) * 8)}: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-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(.space-y-8>:not(:last-child)){--tw-space-y-reverse:0;margin-block-start:calc(calc(var(--spacing) * 8) * var(--tw-space-y-reverse));margin-block-end:calc(calc(var(--spacing) * 8) * calc(1 - var(--tw-space-y-reverse)))}.gap-x-6{column-gap:calc(var(--spacing) * 6)}.gap-x-8{column-gap:calc(var(--spacing) * 8)}:where(.space-x-2>:not(:last-child)){--tw-space-x-reverse:0;margin-inline-start:calc(calc(var(--spacing) * 2) * var(--tw-space-x-reverse));margin-inline-end:calc(calc(var(--spacing) * 2) * calc(1 - var(--tw-space-x-reverse)))}:where(.space-x-4>:not(:last-child)){--tw-space-x-reverse:0;margin-inline-start:calc(calc(var(--spacing) * 4) * var(--tw-space-x-reverse));margin-inline-end:calc(calc(var(--spacing) * 4) * calc(1 - var(--tw-space-x-reverse)))}.gap-y-2{row-gap:calc(var(--spacing) * 2)}.gap-y-4{row-gap:calc(var(--spacing) * 4)}: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-black>:not(:last-child)){border-color:var(--color-black)}.truncate{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.overflow-auto{overflow:auto}.overflow-hidden{overflow:hidden}.overflow-scroll{overflow:scroll}.overflow-x-auto{overflow-x:auto}.overflow-y-hidden{overflow-y:hidden}.\!rounded-full{border-radius:3.40282e38px!important}.rounded{border-radius:.25rem}.rounded-2xl{border-radius:var(--radius-2xl)}.rounded-full{border-radius:3.40282e38px}.rounded-lg{border-radius:var(--radius-lg)}.rounded-md{border-radius:var(--radius-md)}.rounded-xl{border-radius:var(--radius-xl)}.rounded-t-lg{border-top-left-radius:var(--radius-lg);border-top-right-radius:var(--radius-lg)}.rounded-br-xl{border-bottom-right-radius:var(--radius-xl)}.border{border-style:var(--tw-border-style);border-width:1px}.border-0{border-style:var(--tw-border-style);border-width:0}.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-r{border-right-style:var(--tw-border-style);border-right-width:1px}.border-r-4{border-right-style:var(--tw-border-style);border-right-width:4px}.border-b{border-bottom-style:var(--tw-border-style);border-bottom-width:1px}.border-b-2{border-bottom-style:var(--tw-border-style);border-bottom-width:2px}.border-b-4{border-bottom-style:var(--tw-border-style);border-bottom-width:4px}.border-l{border-left-style:var(--tw-border-style);border-left-width:1px}.border-dashed{--tw-border-style:dashed;border-style:dashed}.border-dotted{--tw-border-style:dotted;border-style:dotted}.border-solid{--tw-border-style:solid;border-style:solid}.border-black{border-color:var(--color-black)}.border-blue-500{border-color:var(--color-blue-500)}.border-gray-200{border-color:var(--color-gray-200)}.border-gray-300{border-color:var(--color-gray-300)}.border-purple-500{border-color:var(--color-purple-500)}.border-red-600\/50{border-color:#e4001480}@supports (color:color-mix(in lab, red, red)){.border-red-600\/50{border-color:color-mix(in oklab, var(--color-red-600) 50%, transparent)}}.bg-\[\#bada55\]{background-color:#bada55}.bg-\[var\(--brand-color\)\]{background-color:var(--brand-color)}.bg-black{background-color:var(--color-black)}.bg-black\/75{background-color:#000000bf}@supports (color:color-mix(in lab, red, red)){.bg-black\/75{background-color:color-mix(in oklab, var(--color-black) 75%, transparent)}}.bg-blue-500{background-color:var(--color-blue-500)}.bg-blue-600{background-color:var(--color-blue-600)}.bg-gray-100{background-color:var(--color-gray-100)}.bg-gray-200{background-color:var(--color-gray-200)}.bg-green-500{background-color:var(--color-green-500)}.bg-purple-500\/\[0\.87\]{background-color:#ac4bffde}@supports (color:color-mix(in lab, red, red)){.bg-purple-500\/\[0\.87\]{background-color:color-mix(in oklab, var(--color-purple-500) 87%, transparent)}}.bg-red-500{background-color:var(--color-red-500)}.bg-red-600{background-color:var(--color-red-600)}.bg-transparent{background-color:#0000}.bg-white{background-color:var(--color-white)}.bg-gradient-to-br{--tw-gradient-position:to bottom right in oklab;background-image:linear-gradient(var(--tw-gradient-stops))}.bg-gradient-to-r{--tw-gradient-position:to right in oklab;background-image:linear-gradient(var(--tw-gradient-stops))}.from-blue-500{--tw-gradient-from:var(--color-blue-500);--tw-gradient-stops:var(--tw-gradient-via-stops,var(--tw-gradient-position), var(--tw-gradient-from) var(--tw-gradient-from-position), var(--tw-gradient-to) var(--tw-gradient-to-position))}.from-pink-500{--tw-gradient-from:var(--color-pink-500);--tw-gradient-stops:var(--tw-gradient-via-stops,var(--tw-gradient-position), var(--tw-gradient-from) var(--tw-gradient-from-position), var(--tw-gradient-to) var(--tw-gradient-to-position))}.from-purple-500{--tw-gradient-from:var(--color-purple-500);--tw-gradient-stops:var(--tw-gradient-via-stops,var(--tw-gradient-position), var(--tw-gradient-from) var(--tw-gradient-from-position), var(--tw-gradient-to) var(--tw-gradient-to-position))}.via-red-500{--tw-gradient-via:var(--color-red-500);--tw-gradient-via-stops:var(--tw-gradient-position), var(--tw-gradient-from) var(--tw-gradient-from-position), var(--tw-gradient-via) var(--tw-gradient-via-position), var(--tw-gradient-to) var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-via-stops)}.to-pink-500{--tw-gradient-to:var(--color-pink-500);--tw-gradient-stops:var(--tw-gradient-via-stops,var(--tw-gradient-position), var(--tw-gradient-from) var(--tw-gradient-from-position), var(--tw-gradient-to) var(--tw-gradient-to-position))}.to-purple-600{--tw-gradient-to:var(--color-purple-600);--tw-gradient-stops:var(--tw-gradient-via-stops,var(--tw-gradient-position), var(--tw-gradient-from) var(--tw-gradient-from-position), var(--tw-gradient-to) var(--tw-gradient-to-position))}.to-yellow-500{--tw-gradient-to:var(--color-yellow-500);--tw-gradient-stops:var(--tw-gradient-via-stops,var(--tw-gradient-position), var(--tw-gradient-from) var(--tw-gradient-from-position), var(--tw-gradient-to) var(--tw-gradient-to-position))}.object-cover{object-fit:cover}.p-0{padding:calc(var(--spacing) * 0)}.p-4{padding:calc(var(--spacing) * 4)}.p-6{padding:calc(var(--spacing) * 6)}.p-18{padding:calc(var(--spacing) * 18)}.p-\[17px\]{padding:17px}.px-3{padding-inline:calc(var(--spacing) * 3)}.px-4{padding-inline:calc(var(--spacing) * 4)}.px-6{padding-inline:calc(var(--spacing) * 6)}.px-8{padding-inline:calc(var(--spacing) * 8)}.px-10{padding-inline:calc(var(--spacing) * 10)}.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-8{padding-block:calc(var(--spacing) * 8)}.py-12{padding-block:calc(var(--spacing) * 12)}.pt-8{padding-top:calc(var(--spacing) * 8)}.pr-4{padding-right:calc(var(--spacing) * 4)}.pb-2{padding-bottom:calc(var(--spacing) * 2)}.pl-6{padding-left:calc(var(--spacing) * 6)}.text-center{text-align:center}.text-justify{text-align:justify}.text-left{text-align:left}.text-right{text-align:right}.font-mono{font-family:var(--font-mono)}.font-sans{font-family:var(--font-sans)}.text-2xl{font-size:var(--text-2xl);line-height:var(--tw-leading,var(--text-2xl--line-height))}.text-3xl{font-size:var(--text-3xl);line-height:var(--tw-leading,var(--text-3xl--line-height))}.text-4xl{font-size:var(--text-4xl);line-height:var(--tw-leading,var(--text-4xl--line-height))}.text-4xl\/tight{font-size:var(--text-4xl);line-height:var(--leading-tight)}.text-5xl{font-size:var(--text-5xl);line-height:var(--tw-leading,var(--text-5xl--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-\[22px\]{font-size:22px}.leading-\[0\.9\]{--tw-leading:.9;line-height:.9}.leading-loose{--tw-leading:var(--leading-loose);line-height:var(--leading-loose)}.leading-none{--tw-leading:1;line-height:1}.leading-normal{--tw-leading:var(--leading-normal);line-height:var(--leading-normal)}.leading-relaxed{--tw-leading:var(--leading-relaxed);line-height:var(--leading-relaxed)}.leading-tight{--tw-leading:var(--leading-tight);line-height:var(--leading-tight)}.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-light{--tw-font-weight:var(--font-weight-light);font-weight:var(--font-weight-light)}.font-medium{--tw-font-weight:var(--font-weight-medium);font-weight:var(--font-weight-medium)}.font-normal{--tw-font-weight:var(--font-weight-normal);font-weight:var(--font-weight-normal)}.font-semibold{--tw-font-weight:var(--font-weight-semibold);font-weight:var(--font-weight-semibold)}.font-thin{--tw-font-weight:var(--font-weight-thin);font-weight:var(--font-weight-thin)}.tracking-\[1\.5\]{--tw-tracking:1.5;letter-spacing:1.5px}.tracking-tighter{--tw-tracking:var(--tracking-tighter);letter-spacing:var(--tracking-tighter)}.tracking-widest{--tw-tracking:var(--tracking-widest);letter-spacing:var(--tracking-widest)}.text-balance{text-wrap:balance}.text-wrap{text-wrap:wrap}.text-ellipsis{text-overflow:ellipsis}.text-\[rgb\(123\,45\,67\)\]{color:#7b2d43}.text-black{color:var(--color-black)}.text-blue-500{color:var(--color-blue-500)}.text-blue-500\/30{color:#3080ff4d}@supports (color:color-mix(in lab, red, red)){.text-blue-500\/30{color:color-mix(in oklab, var(--color-blue-500) 30%, transparent)}}.text-blue-600{color:var(--color-blue-600)}.text-gray-400{color:var(--color-gray-400)}.text-gray-500{color:var(--color-gray-500)}.text-gray-900{color:var(--color-gray-900)}.text-green-600{color:var(--color-green-600)}.text-red-500{color:var(--color-red-500)}.text-red-600{color:var(--color-red-600)}.text-white{color:var(--color-white)}.capitalize{text-transform:capitalize}.lowercase{text-transform:lowercase}.normal-case{text-transform:none}.uppercase{text-transform:uppercase}.italic{font-style:italic}.line-through{text-decoration-line:line-through}.no-underline{text-decoration-line:none}.underline{text-decoration-line:underline}.underline-offset-4{text-underline-offset:4px}.opacity-0{opacity:0}.opacity-50{opacity:.5}.opacity-75{opacity:.75}.opacity-100{opacity:1}.opacity-\[0\.03\]{opacity:.03}.shadow{--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)}.shadow-2xl{--tw-shadow:0 25px 50px -12px var(--tw-shadow-color,#00000040);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_4px_20px_rgba\(0\,0\,0\,0\.1\)\]{--tw-shadow:0 4px 20px 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)}.shadow-lg{--tw-shadow:0 10px 15px -3px var(--tw-shadow-color,#0000001a), 0 4px 6px -4px 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)}.shadow-md{--tw-shadow:0 4px 6px -1px var(--tw-shadow-color,#0000001a), 0 2px 4px -2px 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)}.shadow-none{--tw-shadow:0 0 #0000;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)}.shadow-xl{--tw-shadow:0 20px 25px -5px var(--tw-shadow-color,#0000001a), 0 8px 10px -6px 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)}.shadow\/elevation{--tw-shadow:0 1px 3px 0 var(--tw-shadow-color,#0000001a), 0 1px 2px -1px var(--tw-shadow-color,#0000001a);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.ring{--tw-ring-shadow:var(--tw-ring-inset,) 0 0 0 calc(1px + var(--tw-ring-offset-width)) var(--tw-ring-color,currentcolor);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.shadow-blue-500\/50{--tw-shadow-color:#3080ff80}@supports (color:color-mix(in lab, red, red)){.shadow-blue-500\/50{--tw-shadow-color:color-mix(in oklab, color-mix(in oklab, var(--color-blue-500) 50%, transparent) var(--tw-shadow-alpha), transparent)}}.outline{outline-style:var(--tw-outline-style);outline-width:1px}.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,)}.drop-shadow{--tw-drop-shadow-size:drop-shadow(0 1px 2px var(--tw-drop-shadow-color,#0000001a)) drop-shadow(0 1px 1px var(--tw-drop-shadow-color,#0000000f));--tw-drop-shadow:drop-shadow(0 1px 2px #0000001a) drop-shadow(0 1px 1px #0000000f);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,)}.grayscale{--tw-grayscale:grayscale(100%);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,)}.invert{--tw-invert:invert(100%);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,)}.sepia{--tw-sepia:sepia(100%);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,)}.backdrop-filter{-webkit-backdrop-filter:var(--tw-backdrop-blur,) var(--tw-backdrop-brightness,) var(--tw-backdrop-contrast,) var(--tw-backdrop-grayscale,) var(--tw-backdrop-hue-rotate,) var(--tw-backdrop-invert,) var(--tw-backdrop-opacity,) var(--tw-backdrop-saturate,) var(--tw-backdrop-sepia,);backdrop-filter:var(--tw-backdrop-blur,) var(--tw-backdrop-brightness,) var(--tw-backdrop-contrast,) var(--tw-backdrop-grayscale,) var(--tw-backdrop-hue-rotate,) var(--tw-backdrop-invert,) var(--tw-backdrop-opacity,) var(--tw-backdrop-saturate,) var(--tw-backdrop-sepia,)}.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-all{transition-property:all;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-shadow{transition-property:box-shadow;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-200{--tw-duration:.2s;transition-duration:.2s}.duration-300{--tw-duration:.3s;transition-duration:.3s}.ease-in{--tw-ease:var(--ease-in);transition-timing-function:var(--ease-in)}.ease-in-out{--tw-ease:var(--ease-in-out);transition-timing-function:var(--ease-in-out)}.ease-out{--tw-ease:var(--ease-out);transition-timing-function:var(--ease-out)}.select-all{-webkit-user-select:all;user-select:all}.select-none{-webkit-user-select:none;user-select:none}.select-text{-webkit-user-select:text;user-select:text}.text-shadow-lg{text-shadow:0px 1px 2px var(--tw-text-shadow-color,#0000001a), 0px 3px 2px var(--tw-text-shadow-color,#0000001a), 0px 4px 8px var(--tw-text-shadow-color,#0000001a)}.required\:border-red-500:required{border-color:var(--color-red-500)}@media (hover:hover){.hover\:scale-105:hover{--tw-scale-x:105%;--tw-scale-y:105%;--tw-scale-z:105%;scale:var(--tw-scale-x) var(--tw-scale-y)}.hover\:bg-blue-700:hover{background-color:var(--color-blue-700)}.hover\:text-blue-600:hover{color:var(--color-blue-600)}.hover\:text-blue-700:hover{color:var(--color-blue-700)}.hover\:shadow-lg:hover{--tw-shadow:0 10px 15px -3px var(--tw-shadow-color,#0000001a), 0 4px 6px -4px 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)}}.focus\:not-sr-only:focus{clip-path:none;white-space:normal;width:auto;height:auto;margin:0;padding:0;position:static;overflow:visible}.focus\:absolute:focus{position:absolute}.focus\:top-4:focus{top:calc(var(--spacing) * 4)}.focus\:left-4:focus{left:calc(var(--spacing) * 4)}.focus\:z-50:focus{z-index:50}.focus\:border-transparent:focus{border-color:#0000}.focus\:px-4:focus{padding-inline:calc(var(--spacing) * 4)}.focus\:py-2:focus{padding-block:calc(var(--spacing) * 2)}.focus\:ring-2:focus{--tw-ring-shadow:var(--tw-ring-inset,) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color,currentcolor);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.focus\:ring-4:focus{--tw-ring-shadow:var(--tw-ring-inset,) 0 0 0 calc(4px + var(--tw-ring-offset-width)) var(--tw-ring-color,currentcolor);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.focus\:ring-blue-500:focus{--tw-ring-color:var(--color-blue-500)}.focus\:outline-none:focus{--tw-outline-style:none;outline-style:none}.focus-visible\:underline:focus-visible{text-decoration-line:underline}.focus-visible\:ring-2:focus-visible{--tw-ring-shadow:var(--tw-ring-inset,) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color,currentcolor);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.focus-visible\:ring-offset-2:focus-visible{--tw-ring-offset-width:2px;--tw-ring-offset-shadow:var(--tw-ring-inset,) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color)}.focus-visible\:outline-none:focus-visible{--tw-outline-style:none;outline-style:none}.active\:translate-x-\[2px\]:active{--tw-translate-x:2px;translate:var(--tw-translate-x) var(--tw-translate-y)}.active\:translate-y-\[2px\]:active{--tw-translate-y:2px;translate:var(--tw-translate-x) var(--tw-translate-y)}.active\:bg-black:active{background-color:var(--color-black)}.active\:bg-blue-800:active{background-color:var(--color-blue-800)}.active\:text-white:active{color:var(--color-white)}.disabled\:pointer-events-none:disabled{pointer-events:none}.disabled\:bg-gray-100:disabled{background-color:var(--color-gray-100)}@media (prefers-reduced-motion:reduce){.motion-reduce\:transition-none{transition-property:none}}@media not all and (width>=64rem){.max-lg\:text-center{text-align:center}}@media not all and (width>=40rem){.max-sm\:hidden{display:none}}@media (width>=40rem){.sm\:grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.sm\:px-6{padding-inline:calc(var(--spacing) * 6)}}@media (width>=48rem){.md\:block{display:block}.md\:flex{display:flex}.md\:hidden{display:none}.md\:max-w-2xl{max-width:var(--container-2xl)}.md\:grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.md\:grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.md\:gap-4{gap:calc(var(--spacing) * 4)}.md\:gap-6{gap:calc(var(--spacing) * 6)}.md\:p-6{padding:calc(var(--spacing) * 6)}.md\:p-8{padding:calc(var(--spacing) * 8)}.md\:px-6{padding-inline:calc(var(--spacing) * 6)}.md\:px-8{padding-inline:calc(var(--spacing) * 8)}.md\:py-4{padding-block:calc(var(--spacing) * 4)}.md\:py-20{padding-block:calc(var(--spacing) * 20)}.md\:text-4xl{font-size:var(--text-4xl);line-height:var(--tw-leading,var(--text-4xl--line-height))}.md\:text-5xl{font-size:var(--text-5xl);line-height:var(--tw-leading,var(--text-5xl--line-height))}.md\:text-base{font-size:var(--text-base);line-height:var(--tw-leading,var(--text-base--line-height))}.md\:text-lg{font-size:var(--text-lg);line-height:var(--tw-leading,var(--text-lg--line-height))}.md\:text-xl{font-size:var(--text-xl);line-height:var(--tw-leading,var(--text-xl--line-height))}}@media (width>=64rem){.lg\:absolute{position:absolute}.lg\:order-1{order:1}.lg\:order-2{order:2}.lg\:block{display:block}.lg\:flex{display:flex}.lg\:grid{display:grid}.lg\:hidden{display:none}.lg\:w-1\/2{width:50%}.lg\:w-64{width:calc(var(--spacing) * 64)}.lg\:max-w-4xl{max-width:var(--container-4xl)}.lg\:grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.lg\:grid-cols-4{grid-template-columns:repeat(4,minmax(0,1fr))}.lg\:flex-row{flex-direction:row}.lg\:gap-6{gap:calc(var(--spacing) * 6)}.lg\:gap-8{gap:calc(var(--spacing) * 8)}.lg\:gap-12{gap:calc(var(--spacing) * 12)}.lg\:overflow-visible{overflow:visible}.lg\:p-8{padding:calc(var(--spacing) * 8)}.lg\:px-8{padding-inline:calc(var(--spacing) * 8)}.lg\:py-32{padding-block:calc(var(--spacing) * 32)}.lg\:text-left{text-align:left}.lg\:text-6xl{font-size:var(--text-6xl);line-height:var(--tw-leading,var(--text-6xl--line-height))}.lg\:text-base{font-size:var(--text-base);line-height:var(--tw-leading,var(--text-base--line-height))}.lg\:text-lg{font-size:var(--text-lg);line-height:var(--tw-leading,var(--text-lg--line-height))}.lg\:text-xl{font-size:var(--text-xl);line-height:var(--tw-leading,var(--text-xl--line-height))}@media (hover:hover){.lg\:hover\:scale-105:hover{--tw-scale-x:105%;--tw-scale-y:105%;--tw-scale-z:105%;scale:var(--tw-scale-x) var(--tw-scale-y)}.lg\:hover\:text-purple-600:hover{color:var(--color-purple-600)}}}@media (width>=80rem){.xl\:w-1\/3{width:33.3333%}.xl\:grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.xl\:grid-cols-4{grid-template-columns:repeat(4,minmax(0,1fr))}.xl\:grid-cols-5{grid-template-columns:repeat(5,minmax(0,1fr))}}@media (width>=96rem){.\32 xl\:grid-cols-6{grid-template-columns:repeat(6,minmax(0,1fr))}}@container (width>=28rem){.\@md\:grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}}@container (width>=32rem){.\@lg\:grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}}@media (prefers-color-scheme:dark){.dark\:scale-0{--tw-scale-x:0%;--tw-scale-y:0%;--tw-scale-z:0%;scale:var(--tw-scale-x) var(--tw-scale-y)}.dark\:scale-100{--tw-scale-x:100%;--tw-scale-y:100%;--tw-scale-z:100%;scale:var(--tw-scale-x) var(--tw-scale-y)}.dark\:-rotate-90{rotate:-90deg}.dark\:rotate-0{rotate:none}.dark\:border-gray-700{border-color:var(--color-gray-700)}.dark\:bg-gray-800{background-color:var(--color-gray-800)}.dark\:bg-gray-900{background-color:var(--color-gray-900)}.dark\:text-gray-100{color:var(--color-gray-100)}.dark\:text-gray-600{color:var(--color-gray-600)}.dark\:text-white{color:var(--color-white)}}}:root{--navy-950:#071827;--navy-900:#0b2238;--navy-800:#153550;--blue-600:#1769d2;--blue-50:#edf5ff;--red-600:#c81e37;--red-50:#fff1f3;--green-700:#167052;--green-50:#eaf7f1;--amber-700:#986018;--amber-50:#fff6e8;--ink:#132638;--muted:#657586;--line:#dbe3e8;--line-strong:#c8d3db;--surface:#fff;--canvas:#f6f4ef;--canvas-cool:#f3f6f8;--shadow-sm:0 1px 2px #0718270d, 0 8px 24px #0718270d;--shadow-md:0 18px 50px #0718271c;--radius-sm:6px;--radius-md:12px;--radius-lg:20px;--font-display:"Iowan Old Style", "Palatino Linotype", "Book Antiqua", Georgia, serif;--font-body:"Segoe UI", "Noto Sans", Arial, sans-serif}html[data-theme=dark]{--navy-950:#06111d;--navy-900:#153b5b;--navy-800:#1c4a70;--blue-600:#55a4ff;--blue-50:#102b43;--red-50:#371924;--green-700:#68d5aa;--green-50:#12372f;--amber-700:#efb45f;--amber-50:#3a2a17;--ink:#e8f0f7;--muted:#9aabba;--line:#263b4c;--line-strong:#385064;--surface:#101e2b;--canvas:#07131e;--canvas-cool:#091725;--shadow-sm:0 1px 2px #0000002e, 0 10px 28px #00000029;--shadow-md:0 20px 54px #0000004d;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}*{box-sizing:border-box}html{background:var(--canvas);--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}body{color:var(--ink);background:var(--canvas);font-family:var(--font-body);-webkit-font-smoothing:antialiased;text-rendering:optimizelegibility;margin:0;font-size:15px;line-height:1.55}button,input,textarea{font:inherit}button,summary{touch-action:manipulation}button:disabled{cursor:not-allowed}:where(button,input,textarea,summary):focus-visible{outline-offset:3px;outline:3px solid #1769d247}.loading{min-height:100dvh;color:var(--muted);text-align:center;background:radial-gradient(circle at 50% 42%, #1769d214, transparent 280px), var(--canvas);place-content:center;gap:18px;display:grid}.loading:before{content:"IS";color:#fff;background:var(--red-600);border-radius:var(--radius-sm);width:52px;height:52px;font-family:var(--font-display);box-shadow:var(--shadow-sm);place-items:center;margin:0 auto;font-size:20px;font-weight:700;display:grid}.loading:after{content:"";background:linear-gradient(90deg, transparent, var(--blue-600), transparent);border-radius:999px;width:120px;height:3px;margin:-6px auto 0;animation:1.25s ease-in-out infinite loading-pulse}@keyframes loading-pulse{0%,to{opacity:.25;transform:scaleX(.55)}50%{opacity:1;transform:scaleX(1)}}.login-page{background:var(--surface);grid-template-columns:minmax(0,1fr) minmax(560px,1fr);min-height:100dvh;display:grid}.brand-panel{isolation:isolate;color:#fff;background:linear-gradient(135deg,#020b18 0%,#071d38 46%,#0b3f73 100%);flex-direction:column;justify-content:center;align-items:center;min-height:100dvh;padding:clamp(36px,5vw,72px) clamp(36px,7vw,108px);display:flex;position:relative;overflow:hidden}.brand-panel:before{content:"";z-index:-1;border:1px solid #ffffff1c;border-radius:50%;width:620px;height:620px;position:absolute;bottom:-210px;right:-180px;box-shadow:0 0 0 70px #ffffff06,0 0 0 140px #ffffff05}.brand{letter-spacing:.19em;text-transform:uppercase;align-items:center;gap:15px;font-size:12px;font-weight:800;display:flex}.brand-logo{background:#fff;border-radius:4px;width:clamp(180px,17vw,230px);height:auto;display:block;box-shadow:0 8px 22px #0000001f}.brand-title{color:inherit;white-space:nowrap;line-height:1.25}.eyebrow{color:var(--blue-600);letter-spacing:.16em;text-transform:uppercase;margin:0;font-size:11px;font-weight:800}.brand-panel .brand{z-index:1;text-align:center;flex-direction:column;gap:24px;position:relative}.brand-panel .brand-logo{border-radius:8px;width:min(420px,78%);box-shadow:0 22px 60px #0000003d}.brand-panel .brand-title{color:#d7e4ee;letter-spacing:.28em;font-size:13px}.login-panel{background:linear-gradient(#ffffffeb,#ffffffeb),repeating-linear-gradient(90deg,#0000 0 31px,#07182708 31px 32px);place-items:center;padding:clamp(38px,4vw,64px);display:grid}.login-card{width:min(540px,100%);padding-top:54px;position:relative}.mini-mark{color:#fff;background:var(--red-600);border-radius:var(--radius-sm);width:46px;height:46px;font-family:var(--font-display);place-items:center;margin-bottom:34px;font-size:18px;font-weight:700;display:grid;box-shadow:0 10px 24px #c81e372b}.login-card h2,.modal h2,.welcome h1,.section-title h2,.slot h3,.confirmed-card h2,.student-import-card h2,.student-directory h2{font-family:var(--font-display);letter-spacing:-.025em}.login-card h2{white-space:nowrap;margin:9px 0 12px;font-size:clamp(32px,3vw,42px);font-weight:600;line-height:1.12}.muted{color:var(--muted);margin:0;line-height:1.7}.login-card>label{color:#2d4052;letter-spacing:.02em;margin:30px 0 9px;font-size:12px;font-weight:800;display:block}.login-card>input,.form-grid input,.student-import-card textarea,.directory-head input{border:1px solid var(--line-strong);border-radius:var(--radius-sm);width:100%;min-height:50px;color:var(--ink);background:#fff;transition:border-color .18s,box-shadow .18s}.login-card>input{letter-spacing:.06em;min-height:58px;padding:0 17px;font-weight:700}.login-card>input:focus,.form-grid input:focus,.student-import-card textarea:focus,.directory-head input:focus{border-color:var(--blue-600);outline:0;box-shadow:0 0 0 4px #1769d21f}.primary,.book{border-radius:var(--radius-sm);color:#fff;background:var(--navy-900);cursor:pointer;border:0;justify-content:space-between;align-items:center;gap:18px;min-height:50px;font-weight:800;transition:background-color .18s,box-shadow .18s,transform .18s;display:flex;box-shadow:0 9px 22px #07182721}.primary{width:100%;margin-top:15px;padding:0 19px}.primary:hover:not(:disabled),.book:hover:not(:disabled){background:var(--blue-600);transform:translateY(-1px);box-shadow:0 12px 28px #1769d233}.primary:active:not(:disabled),.book:active:not(:disabled){transform:translateY(0)}.primary:disabled{opacity:.5}.text-button{color:#546b7f;border-radius:var(--radius-sm);cursor:pointer;background:0 0;border:0;width:100%;min-height:44px;padding:12px 16px;font-weight:700;transition:color .18s,background-color .18s}.text-button:hover{color:var(--blue-600);background:var(--blue-50)}.error{border-radius:var(--radius-sm);color:#a9162c;background:var(--red-50);border:1px solid #f2c8cf;margin:12px 0 0;padding:11px 13px;font-size:13px}.language-switch{border:1px solid var(--line-strong);background:#fff;border-radius:999px;display:inline-flex;overflow:hidden;box-shadow:0 2px 8px #0718270d}.language-switch button{color:#71808e;cursor:pointer;background:#fff;border:0;min-width:44px;min-height:40px;padding:0 11px;font-size:10px;font-weight:900}.language-switch button.active{color:#fff;background:var(--navy-900)}.login-preferences{align-items:center;gap:8px;display:flex;position:absolute;top:0;right:0}.theme-toggle{border:1px solid var(--line-strong);min-height:40px;color:var(--muted);background:var(--surface);cursor:pointer;border-radius:999px;justify-content:center;align-items:center;gap:7px;padding:0 12px;font-size:11px;transition:color .18s,border-color .18s,background-color .18s;display:inline-flex;box-shadow:0 2px 8px #0718270d}.theme-toggle:hover{border-color:var(--blue-600);color:var(--blue-600)}.theme-toggle>span{font-size:17px;line-height:1}.theme-toggle>b{font-size:10px;font-weight:900}.app-shell{background:radial-gradient(circle at 0 0, #1769d20d, transparent 430px), var(--canvas-cool);min-height:100dvh}.app-shell>header{z-index:8;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);background:#ffffffeb;border-bottom:1px solid #c8d3dbd1;justify-content:space-between;align-items:center;gap:20px;min-height:72px;padding:0 max(24px,50vw - 640px);display:flex;position:sticky;top:0}.brand.dark{color:var(--navy-900)}.brand.dark .brand-logo{width:150px;box-shadow:none}.user-chip{align-items:center;gap:10px;min-width:0;display:flex}.user-chip>div:not(.language-switch),.avatar{color:#174f83;background:#e6f0f9;border-radius:50%;flex:none;place-items:center;width:38px;height:38px;font-weight:800;display:grid}.user-chip>span{min-width:0;line-height:1.25;display:grid}.user-chip small{color:#81909e;letter-spacing:.1em;text-transform:uppercase;font-size:9px;font-weight:800}.user-chip b{text-overflow:ellipsis;white-space:nowrap;max-width:180px;font-size:13px;overflow:hidden}.user-chip>button:not(.theme-toggle){border:0;border-left:1px solid var(--line);min-height:44px;color:var(--muted);cursor:pointer;background:0 0;margin-left:8px;padding:0 0 0 18px;font-size:12px;font-weight:700}.content{width:min(1280px,100% - 274px);margin:0 24px 0 auto;padding:clamp(30px,4.5vw,58px) clamp(18px,3vw,32px) 84px}.portal-layout{display:block}.portal-sidebar{z-index:7;border:1px solid var(--line);border-radius:var(--radius-md);width:214px;box-shadow:var(--shadow-sm);background:#ffffffdb;gap:7px;padding:12px;display:grid;position:fixed;top:94px;left:24px}.portal-sidebar>p{color:#7d91a0;letter-spacing:.12em;text-transform:uppercase;margin:4px 8px 7px;font-size:9px;font-weight:900}.portal-sidebar button{color:#627887;text-align:left;cursor:pointer;background:0 0;border:1px solid #0000;border-radius:9px;grid-template-rows:auto auto;grid-template-columns:34px minmax(0,1fr);align-items:center;column-gap:10px;min-height:68px;padding:10px;transition:background-color .18s,color .18s,border-color .18s;display:grid}.portal-sidebar button:hover:not(.active){border-color:var(--line);background:#f6f9fb}.portal-sidebar button>span{color:#2b6b99;width:34px;height:34px;font-family:var(--font-display);background:#e4f1fa;border-radius:8px;grid-row:1/span 2;place-items:center;font-size:16px;font-weight:700;display:grid}.portal-sidebar button b{color:var(--ink);font-size:12px;font-weight:900}.portal-sidebar button small{color:#8b9ba7;text-overflow:ellipsis;white-space:nowrap;font-size:9px;font-weight:700;overflow:hidden}.portal-sidebar button.active{color:#fff;background:var(--navy-900);border-color:#214c6c;box-shadow:0 8px 20px #07182726}.portal-sidebar button.active>span{color:#fff;background:#ffffff21}.portal-sidebar button.active b{color:#fff}.portal-sidebar button.active small{color:#bfd2df}.portal-main{min-width:0}.welcome{display:none}.student-admin-tabs{border:1px solid var(--line);background:var(--surface);border-radius:9px;gap:5px;width:max-content;max-width:100%;margin:0 0 18px;padding:5px;display:flex}.student-admin-tabs button{min-height:38px;color:var(--muted);cursor:pointer;background:0 0;border:0;border-radius:6px;padding:0 13px;font-size:11px;font-weight:900}.student-admin-tabs button.active{color:#fff;background:var(--navy-900)}.mobile-portal-toggle{display:none}.welcome{border-radius:var(--radius-lg);color:#fff;background:radial-gradient(circle at 85% 20%, #ffffff1a, transparent 180px), linear-gradient(125deg, var(--navy-950), var(--navy-800));min-height:170px;box-shadow:var(--shadow-md);justify-content:space-between;align-items:center;gap:32px;margin-bottom:28px;padding:clamp(28px,4vw,48px);display:flex;position:relative;overflow:hidden}.welcome:after{content:"";border:52px solid #ffffff0a;border-radius:50%;width:330px;height:330px;position:absolute;bottom:-120px;right:-70px}.welcome>div:first-child{z-index:1;position:relative}.welcome .eyebrow{color:#9fcdf6}.welcome h1{margin:7px 0 8px;font-size:clamp(34px,4vw,50px);font-weight:600;line-height:1.06}.welcome p:not(.eyebrow){color:#ccd8e2;max-width:680px;margin:0}.availability{color:var(--green-700);background:var(--green-50);border-radius:999px;font-size:11px;font-weight:800}.admin-nav{border:1px solid var(--line);background:#ffffffb3;border-radius:10px;gap:6px;width:max-content;max-width:100%;margin:0 0 24px;padding:5px;display:flex}.admin-nav button{color:#687988;cursor:pointer;background:0 0;border:0;border-radius:7px;min-height:42px;padding:0 17px;font-size:13px;font-weight:800}.admin-nav button.active{color:#fff;background:var(--navy-900);box-shadow:0 6px 16px #07182724}.admin-nav button span{min-width:22px;height:22px;color:inherit;background:#ffffff21;border-radius:999px;place-items:center;margin-left:5px;padding:0 6px;font-size:10px;display:inline-grid}.registration-controls{border:1px solid var(--line);border-radius:var(--radius-md);box-shadow:var(--shadow-sm);background:#fff;grid-template-columns:minmax(220px,.65fr) minmax(520px,1.35fr);align-items:center;gap:34px;margin-bottom:18px;padding:clamp(22px,3vw,32px);display:grid}.registration-controls-copy h2{font-family:var(--font-display);letter-spacing:-.025em;margin:5px 0 6px;font-size:27px;font-weight:600}.registration-controls-copy>p:last-child{color:var(--muted);margin:0;font-size:12px;line-height:1.6}.registration-buttons{grid-template-columns:1fr 1fr;gap:12px;display:grid}.registration-toggle{text-align:left;cursor:pointer;border:1px solid;border-radius:10px;grid-template-columns:42px minmax(0,1fr) auto;align-items:center;gap:12px;min-width:0;min-height:92px;padding:15px;transition:transform .18s,border-color .18s,box-shadow .18s;display:grid}.registration-toggle:hover:not(:disabled){transform:translateY(-1px);box-shadow:0 10px 24px #07182717}.registration-toggle.open{color:#125f46;background:#eff9f5;border-color:#b5dfcf}.registration-toggle.locked{color:#7d4919;background:#fff8ee;border-color:#e6c5a2}.registration-toggle .lock-icon{background:#ffffffb8;border-radius:9px;place-items:center;width:42px;height:42px;font-size:19px;display:grid}.registration-toggle>span:nth-child(2){gap:2px;min-width:0;display:grid}.registration-toggle b{color:var(--ink);text-overflow:ellipsis;font-size:12px;overflow:hidden}.registration-toggle small{font-size:10px;font-weight:700}.registration-toggle strong{letter-spacing:.08em;border:1px solid;border-radius:5px;padding:6px 8px;font-size:9px}.exam-tabs{border:1px solid var(--line);border-radius:var(--radius-md);box-shadow:var(--shadow-sm);background:#ffffffc7;grid-template-columns:repeat(2,minmax(0,1fr));gap:6px;margin:0 0 20px;padding:6px;display:grid}.exam-tabs button{color:#607384;text-align:left;cursor:pointer;background:0 0;border:0;border-radius:8px;align-items:center;gap:13px;min-width:0;min-height:72px;padding:11px 15px;transition:color .18s,background-color .18s,box-shadow .18s;display:flex}.exam-tabs button>span:first-child{color:#466179;width:42px;height:42px;font-family:var(--font-display);background:#fff;border:1px solid #cbd6de;border-radius:9px;flex:none;place-items:center;font-size:18px;font-weight:700;display:grid}.exam-tabs button>span:last-child{min-width:0;display:grid}.exam-tabs button b{color:var(--ink);text-overflow:ellipsis;white-space:nowrap;font-size:13px;overflow:hidden}.exam-tabs button small{margin-top:2px;font-size:10px;font-weight:700}.exam-tabs button.active{color:#c7d5e0;background:var(--navy-900);box-shadow:0 8px 20px #07182726}.exam-tabs button.active b{color:#fff}.exam-tabs button.active>span:first-child{color:#fff;background:#ffffff1a;border-color:#ffffff29}.registration-notice{color:#754516;background:#fff8ee;border:1px solid #e9cda9;border-radius:10px;align-items:center;gap:13px;margin-bottom:18px;padding:16px 18px;display:flex}.registration-notice>span{background:#fff;border-radius:9px;flex:none;place-items:center;width:40px;height:40px;display:grid}.registration-notice b{font-size:13px}.registration-notice p{color:#8c6541;margin:2px 0 0;font-size:11px;line-height:1.55}.date-tabs{border:1px solid var(--line);border-radius:var(--radius-md);max-width:100%;box-shadow:var(--shadow-sm);scrollbar-width:thin;background:#ffffffdb;gap:8px;padding:8px;display:flex;overflow-x:auto}.date-tabs button{color:#687988;cursor:pointer;background:0 0;border:1px solid #0000;border-radius:8px;flex:none;place-items:center;gap:0;min-width:92px;min-height:98px;padding:8px 13px;transition:color .18s,background-color .18s,border-color .18s;display:grid}.date-tabs button:hover:not(.active){border-color:var(--line);background:#fff}.date-tabs button small{letter-spacing:.1em;text-transform:uppercase;font-size:10px;font-weight:900}.date-tabs button b{color:var(--ink);font-family:var(--font-display);font-size:26px;font-weight:600;line-height:1.1}.date-tabs button span{font-variant-numeric:tabular-nums;font-size:10px}.date-tabs button em{border-top:1px solid var(--line);width:100%;color:var(--muted);white-space:nowrap;margin-top:5px;padding-top:5px;font-size:9px;font-style:normal;font-weight:800;line-height:1.2}.date-tabs button.active{color:#c8d5df;background:var(--navy-900);box-shadow:0 8px 18px #07182726}.date-tabs button.active b{color:#fff}.date-tabs button.active em{color:#d5e0e8;border-top-color:#ffffff29}.section-title{justify-content:space-between;align-items:end;gap:20px;margin:34px 0 15px;display:flex}.section-title h2{margin:0;font-size:28px;font-weight:600}.section-title p{color:var(--muted);margin:4px 0 0;font-size:12px}.day-capacity{border-radius:var(--radius-sm);min-width:178px;color:var(--navy-900);background:#f2f8fc;border:1px solid #cbdbe7;grid-template-columns:1fr auto;align-items:center;column-gap:14px;margin-left:auto;padding:10px 14px;display:grid}.day-capacity span,.day-capacity small{font-size:10px;font-weight:800}.day-capacity span{letter-spacing:.05em;text-transform:uppercase}.day-capacity small{color:var(--muted);grid-column:1;font-weight:600}.day-capacity b{font-family:var(--font-display);font-variant-numeric:tabular-nums;grid-area:1/2/span 2;font-size:25px;line-height:1}.day-capacity b i{color:#8298aa;margin:0 3px;font-size:15px;font-style:normal}.admin-actions{flex-wrap:wrap;justify-content:end;gap:10px;display:flex}.outline,.delete-day,.delete-session,.delete-student{border-radius:var(--radius-sm);cursor:pointer;background:#fff;min-height:44px;padding:0 15px;font-size:12px;font-weight:800;transition:color .18s,background-color .18s,border-color .18s}.outline{border:1px solid var(--navy-800);color:var(--navy-900)}.outline:hover{color:#fff;background:var(--navy-900)}.delete-day,.delete-session,.delete-student{color:#aa1a30;border:1px solid #edc1c8}.delete-day:hover,.delete-session:hover,.delete-student:hover{border-color:var(--red-600);color:#fff;background:var(--red-600)}.delete-day:disabled{opacity:.42}.slot-grid{gap:12px;display:grid}.slot{border:1px solid var(--line);border-radius:var(--radius-md);min-width:0;box-shadow:var(--shadow-sm);background:#fff;transition:border-color .18s,box-shadow .18s,transform .18s;position:relative;overflow:hidden}.slot:hover{border-color:#c4d1db;transform:translateY(-1px);box-shadow:0 14px 36px #07182714}.location-strip{width:5px;position:absolute;inset:0 auto 0 0}.slot.hoa-thanh .location-strip{background:var(--blue-600)}.slot.tan-ninh .location-strip{background:#d88a25}.slot-top{min-width:0}.slot-top small,.summary small,.ticket small{color:#788896;letter-spacing:.12em;font-size:10px;font-weight:900}.slot h3{font-variant-numeric:tabular-nums;margin:5px 0 0;font-size:25px;font-weight:600}.slot h3 span{color:#71818f;font-size:16px;font-weight:500}.location-badge{border-radius:999px;align-items:center;width:max-content;margin-top:7px;padding:5px 9px;font-size:11px;font-weight:800;display:inline-flex}.location-badge.hoa-thanh{color:#145da8;background:var(--blue-50)}.location-badge.tan-ninh{color:var(--amber-700);background:var(--amber-50)}.availability{text-align:center;white-space:nowrap;min-width:150px;padding:9px 14px}.slot.full{background:#fafbfb}.slot.registration-locked{background:#fcfbf8}.slot.full .availability{color:#75818c;background:#edf0f2}.availability.locked{color:#82501f;background:#fff1dd}.capacity{background:#e8edf0;border-radius:999px;height:6px;margin:0;position:relative}.capacity>div{border-radius:inherit;background:linear-gradient(90deg, var(--blue-600), #4a91e7);height:100%}.capacity span{color:#748493;font-variant-numeric:tabular-nums;font-size:10px;font-weight:700;position:absolute;top:11px;right:0}.capacity-wrap{min-width:0}.admin-capacity-wrap{gap:26px;display:grid}.capacity-editor{grid-template-columns:auto 62px auto;align-items:center;gap:7px;display:grid}.capacity-editor label{color:var(--muted);font-size:10px;font-weight:800}.capacity-editor input{border:1px solid var(--line-strong);width:62px;min-width:0;height:34px;color:var(--ink);background:var(--surface);text-align:center;border-radius:6px;padding:0 7px;font-size:12px;font-weight:800}.capacity-editor button,.admin-booking-form button,.quick-student-form button{color:#155b95;cursor:pointer;background:#edf6fc;border:1px solid #b9cfdf;border-radius:6px;min-height:34px;padding:0 10px;font-size:10px;font-weight:900}.capacity-editor button:hover:not(:disabled),.admin-booking-form button:hover:not(:disabled),.quick-student-form button:hover:not(:disabled){border-color:var(--blue-600);color:#fff;background:var(--blue-600)}.book{white-space:nowrap;width:100%;margin:0;padding:0 16px;font-size:12px}.book:disabled{color:#8996a1;box-shadow:none;background:#e9edef}.client-list .slot{grid-template-columns:minmax(310px,1.5fr) minmax(210px,.85fr) minmax(210px,.62fr);align-items:center;gap:34px;min-height:134px;padding:22px 24px 22px 30px;display:grid}.client-list .slot-top{grid-template-columns:1fr auto;align-items:center;gap:22px;display:grid}.admin-grid .slot{grid-template-columns:minmax(250px,.9fr) minmax(180px,.65fr) 140px;align-items:center;gap:24px;padding:20px 22px 14px 29px;display:grid}.admin-grid .slot-top{grid-template-columns:1fr;gap:10px;display:grid}.admin-grid .availability{width:max-content}.admin-grid .delete-session{width:140px}.student-details{background:#f7f9fa;border:1px solid #d5dfe6;border-radius:8px;grid-column:1/-1;min-width:0}.student-details summary{color:#334b60;cursor:pointer;align-items:center;gap:10px;min-height:48px;padding:8px 14px;font-size:12px;font-weight:800;list-style:none;display:flex}.student-details summary::-webkit-details-marker{display:none}.student-details summary span{flex:1}.student-details summary b{color:#145b9e;background:#e3eef8;border-radius:999px;place-items:center;min-width:28px;height:28px;padding:0 7px;font-size:11px;display:grid}.student-details summary i{place-items:center;width:28px;height:28px;display:grid}.student-details summary i:before{content:"";border-bottom:2px solid #5d7183;border-right:2px solid #5d7183;width:8px;height:8px;transition:transform .18s;display:block;transform:rotate(45deg)translate(-1px,-1px)}.student-details[open]{box-shadow:inset 4px 0 0 var(--blue-600);background:#fff}.student-details[open] summary{background:var(--blue-50)}.student-details[open] summary i:before{transform:rotate(225deg)translate(-1px,-1px)}.student-list{border-top:1px solid var(--line);max-height:280px;padding:4px 15px 10px;overflow:auto}.student-list>div{border-bottom:1px solid #e8edf0;align-items:center;gap:11px;min-height:54px;display:flex}.student-list>div:last-child{border-bottom:0}.avatar{width:32px;height:32px;font-size:11px}.student-list p{flex:1;margin:0;display:grid}.student-list p b{font-size:12px}.student-list p small{color:#7d8b98;font-size:10px}.attendance-toggle{color:#667988;cursor:pointer;-webkit-user-select:none;user-select:none;background:#f5f7f8;border:1px solid #d6dfe5;border-radius:999px;flex:none;align-items:center;gap:7px;min-height:34px;padding:0 10px;font-size:10px;font-weight:800;display:inline-flex}.attendance-toggle.attended{color:var(--green-700);background:var(--green-50);border-color:#addac9}.score-entry{color:#1b608e;cursor:pointer;background:#eef7fd;border:1px solid #bfd5e5;border-radius:999px;flex:none;min-height:34px;padding:0 10px;font-size:10px;font-weight:800}.score-entry:hover:not(:disabled),.score-entry.has-score{color:#104d79;background:#dceef9;border-color:#78a9ca}.attendance-toggle input,.selection-cell input{width:16px;height:16px;accent-color:var(--green-700);cursor:pointer;margin:0}.attendance-toggle input:disabled{cursor:wait}.student-list .remove-booking{color:#b11d33;background:var(--red-50);cursor:pointer;border:0;border-radius:50%;width:38px;height:38px;font-size:19px}.admin-booking-form{border-top:1px solid var(--line);background:#fffffff5;grid-template-columns:minmax(170px,.8fr) minmax(220px,1.4fr) auto;align-items:center;gap:10px;margin:8px -15px 0;padding:13px 15px;display:grid;box-shadow:0 -8px 18px #0718270d}.admin-booking-form label{gap:2px;display:grid}.admin-booking-form label b{font-size:11px}.admin-booking-form label small{color:var(--muted);font-size:9px;line-height:1.35}.admin-booking-form select{border:1px solid var(--line-strong);width:100%;min-width:0;height:38px;color:var(--ink);background:var(--surface);border-radius:7px;padding:0 34px 0 10px;font-size:11px}.admin-booking-form button{white-space:nowrap;min-height:38px}.quick-student-form{border-top:1px solid var(--line);background:#f4f8fb;grid-template-columns:minmax(170px,.8fr) minmax(150px,1fr) minmax(170px,1fr) auto;align-items:center;gap:10px;margin:0 -15px -10px;padding:13px 15px;display:grid}.quick-student-form label{gap:2px;display:grid}.quick-student-form label b{color:var(--ink);font-size:11px}.quick-student-form label small{color:var(--muted);font-size:9px;line-height:1.35}.quick-student-form input{border:1px solid var(--line-strong);width:100%;min-width:0;height:38px;color:var(--ink);background:var(--surface);border-radius:7px;padding:0 10px;font-size:11px}.quick-student-form button{white-space:nowrap;min-height:38px}.empty{border:1px dashed var(--line-strong);border-radius:var(--radius-sm);color:#8996a1;text-align:center;margin:8px 0 0;padding:18px;font-size:12px}.class-portal,.class-management{gap:16px;display:grid}.class-portal-head,.class-admin-head,.create-class-form,.class-admin-card{border:1px solid var(--line);border-radius:var(--radius-md);box-shadow:var(--shadow-sm);background:#fff}.class-portal-head,.class-admin-head{justify-content:space-between;align-items:center;gap:20px;padding:24px 26px;display:flex}.class-portal-head h2,.class-admin-head h2{font-family:var(--font-display);margin:5px 0 6px;font-size:28px;font-weight:600}.class-portal-head p:last-child,.class-admin-head p:last-child{max-width:700px;color:var(--muted);margin:0;font-size:12px;line-height:1.6}.class-recommendation,.class-level,.class-seats,.enrollment-status{border-radius:999px;align-items:center;width:max-content;font-size:10px;font-weight:900;display:inline-flex}.class-recommendation{color:#155a94;background:var(--blue-50);padding:9px 12px}.class-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;display:grid}.class-card{border:1px solid var(--line);border-radius:var(--radius-md);min-width:0;box-shadow:var(--shadow-sm);background:#fff;flex-direction:column;padding:19px;display:flex}.class-card.recommended{border-color:#60a9d8;box-shadow:0 12px 30px #2073b524}.class-card-top,.class-admin-card>header,.class-admin-card>header>div:last-child,.class-enrollment-list>div,.enrollment-actions{justify-content:space-between;align-items:center;gap:10px;display:flex}.class-level{color:#135d91;background:#e1f2fc;padding:5px 8px}.class-seats{color:#677b8a;background:#f1f5f7;padding:5px 7px}.class-card-status{justify-content:end;align-items:center;gap:6px;display:inline-flex}.class-open,.class-locked,.class-registration-toggle{border-radius:5px;padding:5px 7px;font-size:9px;font-weight:900}.class-open,.class-registration-toggle.open{color:#18734e;background:#ddf7eb}.class-locked,.class-registration-toggle.locked{color:#8a5718;background:#fff1dc}.class-card h3,.class-admin-card h3{color:var(--navy-900);font-family:var(--font-display);margin:15px 0;font-size:23px;font-weight:600}.class-card dl{gap:9px;margin:0 0 18px;display:grid}.class-card dl div{grid-template-columns:78px minmax(0,1fr);gap:8px;display:grid}.class-card dt{color:#78909f;letter-spacing:.06em;text-transform:uppercase;font-size:9px;font-weight:900}.class-card dd{color:var(--ink);margin:0;font-size:11px;font-weight:700;line-height:1.4}.class-card .primary{width:100%;margin-top:auto}.enrollment-status{padding:6px 9px}.enrollment-status.pending{color:#8a5718;background:#fff1dc}.enrollment-status.confirmed{color:#18734e;background:#ddf7eb}.enrollment-status.declined{color:#a1293d;background:#fde5e9}.create-class-form{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;padding:18px;display:grid}.create-class-form label{gap:6px;display:grid}.create-class-form label span{color:#607787;font-size:10px;font-weight:900}.create-class-form input,.create-class-form select,.class-add-student input{border:1px solid var(--line-strong);min-width:0;min-height:42px;color:var(--ink);background:var(--surface);border-radius:7px;padding:0 10px;font-size:12px}.create-class-form .primary{align-self:end;min-height:42px}.class-admin-list{gap:14px;display:grid}.class-admin-card{position:relative;overflow:visible}.class-admin-card:focus-within{z-index:20}.class-admin-card>header{border-bottom:1px solid var(--line);padding:17px 62px 17px 18px;position:relative}.class-admin-card>header>div:first-child{min-width:240px}.class-admin-card>header>div:last-child{flex-wrap:wrap;justify-content:flex-end}.class-admin-card h3{margin:9px 0 4px}.class-admin-card header p{color:var(--muted);margin:0;font-size:11px}.class-registration-toggle{cursor:pointer;border:1px solid #0000;min-height:31px}.class-registration-toggle.open{border-color:#b7e5ce}.class-registration-toggle.locked{border-color:#ecd3aa}.class-display-toggle{border:1px solid var(--line-strong);min-height:31px;color:var(--muted);background:var(--surface);cursor:pointer;border-radius:5px;padding:0 8px;font-size:9px;font-weight:900}.class-display-toggle.active{color:#175c8a;background:var(--blue-50);border-color:#c8dbea}.class-order-controls{gap:3px;display:inline-flex}.class-order-controls button{border:1px solid var(--line-strong);color:#175c8a;background:var(--surface);cursor:pointer;border-radius:5px;width:29px;min-height:31px;padding:0;font-size:14px;font-weight:900}.class-order-controls button:disabled{opacity:.38;cursor:not-allowed}.class-list-toggle{color:#175c8a;cursor:pointer;background:#f4f9fc;border:1px solid #c8dbe8;border-radius:5px;place-items:center;width:31px;min-height:31px;padding:0;font-size:9px;font-weight:900;display:grid}.class-admin-card>header .class-list-toggle{position:absolute;top:17px;right:18px}.class-list-toggle span{color:#0000;width:8px;height:8px;font-size:0;line-height:0;display:block}.class-list-toggle span:after{content:"";color:#175c8a;border-bottom:1.5px solid;border-right:1.5px solid;width:7px;height:7px;transition:transform .16s;display:block;transform:translateY(-2px)rotate(45deg)}.class-list-toggle[aria-expanded=true] span:after{transform:translateY(2px)rotate(225deg)}.class-list-toggle:disabled{cursor:not-allowed}.class-capacity-form{border:1px solid var(--line-strong);background:var(--surface);border-radius:7px;align-items:center;gap:6px;min-height:34px;padding:3px;display:inline-flex}.class-capacity-form span{color:var(--muted);white-space:nowrap;font-size:9px;font-weight:800}.class-capacity-form input{width:48px;min-height:26px;color:var(--navy-900);background:var(--blue-50);font:inherit;text-align:center;border:0;border-radius:4px;padding:0 5px;font-size:12px;font-weight:900}.class-capacity-form button{color:#fff;background:var(--navy-900);cursor:pointer;border:0;border-radius:4px;min-height:26px;padding:0 8px;font-size:9px;font-weight:900}.class-add-student{border-bottom:1px solid var(--line);background:#f8fafb;gap:9px;padding:11px 18px;display:flex}.class-student-search{flex:1;position:relative}.class-student-search input{width:100%}.class-student-suggestions{z-index:5;border:1px solid var(--line-strong);background:var(--surface);max-height:246px;box-shadow:var(--shadow-md);border-radius:7px;position:absolute;top:calc(100% + 5px);left:0;right:0;overflow-y:auto}.class-student-suggestions button{border:0;border-bottom:1px solid var(--line);width:100%;min-height:43px;color:var(--ink);background:var(--surface);text-align:left;cursor:pointer;gap:2px;padding:7px 10px;display:grid}.class-student-suggestions button:hover{background:var(--blue-50)}.class-student-suggestions b{font-size:11px}.class-student-suggestions small,.class-student-suggestions p{color:var(--muted);margin:0;font-size:10px}.class-student-suggestions p{padding:10px}.class-add-student button,.enrollment-actions button{color:#176291;cursor:pointer;background:#f1f9fd;border:1px solid #b8d8eb;border-radius:7px;min-height:34px;padding:0 10px;font-size:10px;font-weight:900}.class-enrollment-list>div{border-bottom:1px solid #edf1f4;min-height:56px;padding:9px 18px}.class-enrollment-list>div:last-child{border-bottom:0}.class-enrollment-list p{gap:2px;margin:0;display:grid}.class-enrollment-list p b{font-size:12px}.class-enrollment-list p small{color:var(--muted);font-size:10px}.enrollment-actions button:last-child{color:#a1293d;background:#fff5f6;border-color:#edc1c8}.student-results{border-radius:var(--radius-md);box-shadow:var(--shadow-sm);background:linear-gradient(135deg,#f7fbfe 0%,#edf6fc 100%);border:1px solid #c8dbe8;margin-bottom:22px;overflow:hidden}.student-results-head{justify-content:space-between;align-items:center;gap:22px;padding:23px 26px 18px;display:flex}.student-results-head h2{color:var(--navy-900);font-family:var(--font-display);margin:5px 0 6px;font-size:28px;font-weight:600}.student-results-head p:last-child{max-width:625px;color:var(--muted);margin:0;font-size:12px;line-height:1.6}.student-overall{color:#fff;background:var(--navy-900);border-radius:11px;place-items:center;min-width:112px;min-height:90px;padding:11px;display:grid}.student-overall small,.student-score-grid small,.placement-note span{letter-spacing:.09em;font-size:9px;font-weight:900}.student-overall small{color:#bcd2e2}.student-overall strong{font-family:var(--font-display);font-size:34px;font-weight:600;line-height:1}.student-score-grid{border-top:1px solid #d3e1ea;border-bottom:1px solid #d3e1ea;grid-template-columns:repeat(4,minmax(0,1fr));display:grid}.student-score-grid>div{border-right:1px solid #d3e1ea;align-content:center;gap:5px;min-height:76px;padding:12px 18px;display:grid}.student-score-grid>div:last-child{border-right:0}.student-score-grid small{color:#627d91}.student-score-grid b{color:var(--navy-900);font-family:var(--font-display);font-size:24px;font-weight:600;line-height:1}.placement-note{color:#1f648f;background:#d7eefab3;align-items:center;gap:10px;min-height:53px;padding:10px 18px;display:flex}.placement-note span{color:#5a778c}.placement-note b{color:#125885;background:#d8effb;border-radius:999px;padding:5px 9px;font-size:13px}.placement-note small{color:#6d7480;text-align:right;margin-left:auto;font-size:10px}.scores-page{gap:18px;display:grid}.score-entry-page{gap:14px;display:grid}.score-entry-head,.score-entry-table-wrap,.score-entry-savebar{border:1px solid var(--line);border-radius:var(--radius-md);box-shadow:var(--shadow-sm);background:#fff}.score-entry-head{justify-content:space-between;align-items:center;gap:24px;padding:24px 26px;display:flex}.score-entry-head h2{font-family:var(--font-display);margin:5px 0 6px;font-size:28px;font-weight:600}.score-entry-head p:last-child{color:var(--muted);margin:0;font-size:12px;line-height:1.6}.score-search{border:1px solid var(--line-strong);border-radius:var(--radius-sm);width:min(310px,100%);height:44px;color:var(--ink);background:var(--surface);padding:0 13px;font-size:12px}.score-entry-table-wrap{overflow:auto}.score-entry-table{border-collapse:collapse;width:100%;min-width:890px}.score-entry-table th{z-index:1;border-bottom:1px solid var(--line);color:#6d8190;letter-spacing:.08em;text-align:center;background:#f5f8fa;padding:12px 10px;font-size:9px;font-weight:900;position:sticky;top:0}.score-entry-table th:first-child,.score-entry-table th:nth-child(2){text-align:left}.score-entry-table td{vertical-align:middle;border-bottom:1px solid #edf1f4;padding:9px 10px}.score-entry-table tr:last-child td{border-bottom:0}.score-entry-table tr.changed td{background:#f0f8fd}.score-entry-table td:first-child{min-width:200px}.score-entry-table td:first-child b,.score-entry-table td:first-child small{display:block}.score-entry-table td:first-child b{font-size:12px}.score-entry-table td:first-child small{color:var(--muted);margin-top:2px;font-size:9px}.score-entry-table td:nth-child(2){min-width:122px}.score-entry-table td:not(:first-child):not(:nth-child(2)){text-align:center;width:78px}.score-entry-table input{border:1px solid var(--line-strong);width:58px;height:36px;color:var(--ink);background:var(--surface);text-align:center;border-radius:6px;padding:0 5px;font-size:12px;font-weight:800}.score-entry-table input:focus{border-color:var(--blue-600);outline:2px solid #2177bb38}.score-not-applicable{color:#a3b0ba}.score-entry-savebar{z-index:3;justify-content:space-between;align-items:center;gap:16px;padding:10px 12px 10px 18px;display:flex;position:sticky;bottom:14px;box-shadow:0 16px 34px #07182726}.score-entry-savebar span{color:var(--muted);font-size:11px;font-weight:800}.score-entry-savebar .primary{width:auto;min-height:42px;padding:0 16px}.scores-head,.score-group,.unscored-group{border:1px solid var(--line);border-radius:var(--radius-md);box-shadow:var(--shadow-sm);background:#fff}.scores-head{justify-content:space-between;align-items:center;gap:20px;padding:24px 26px;display:flex}.scores-head h2{font-family:var(--font-display);margin:5px 0 6px;font-size:28px;font-weight:600}.scores-head p:last-child{max-width:640px;color:var(--muted);margin:0;font-size:12px;line-height:1.6}.score-total,.score-group header span{color:#155a94;background:var(--blue-50);border-radius:999px;place-items:center;font-size:11px;font-weight:900;display:inline-grid}.score-total{text-align:center;min-width:104px;min-height:40px;padding:0 13px}.score-groups{grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;display:grid}.score-group{min-height:168px;overflow:hidden}.score-group header{border-bottom:1px solid var(--line);background:#f6f9fb;justify-content:space-between;align-items:center;min-height:50px;padding:10px 14px;display:flex}.score-group header b{color:var(--navy-900);font-family:var(--font-display);font-size:19px}.score-group header span{min-width:27px;height:27px}.score-student-list{display:grid}.score-student-list>div{border-bottom:1px solid #edf1f4;align-items:center;gap:9px;min-height:54px;padding:9px 12px;display:flex}.score-student-list>div:last-child{border-bottom:0}.score-student-list p{flex:1;min-width:0;margin:0;display:grid}.score-student-list p b{text-overflow:ellipsis;white-space:nowrap;font-size:11px;overflow:hidden}.score-student-list p small{color:var(--muted);font-size:9px}.score-student-list strong{color:#145b95;min-width:34px;font-family:var(--font-display);text-align:right;font-size:18px}.score-empty{color:var(--muted);text-align:center;margin:0;padding:20px 14px;font-size:11px}.unscored-group{color:#7a5a24;background:#fff9ef;justify-content:space-between;align-items:center;gap:12px;min-height:54px;padding:13px 16px;font-size:12px;display:flex}.unscored-group span{color:#986d24;font-weight:800}.score-modal{width:min(560px,100vw - 32px)}.score-form-grid{grid-template-columns:1fr 1fr;gap:13px;margin:23px 0 12px;display:grid}.score-form-grid label{gap:7px;display:grid}.score-form-grid .score-wide{grid-column:1/-1}.score-form-grid label span{color:#617789;font-size:11px;font-weight:800}.score-form-grid input{border:1px solid var(--line-strong);border-radius:var(--radius-sm);height:45px;color:var(--ink);background:var(--surface);padding:0 12px;font-size:14px;font-weight:800}.score-hint{color:var(--muted);margin:0 0 18px;font-size:11px;line-height:1.55}.students-page{gap:18px;display:grid}.student-import-card,.student-directory{border:1px solid var(--line);border-radius:var(--radius-md);box-shadow:var(--shadow-sm);background:#fff}.student-import-card{grid-template-columns:minmax(260px,.75fr) minmax(420px,1.25fr);gap:48px;padding:clamp(24px,3vw,38px);display:grid}.student-import-card h2,.student-directory h2{margin:5px 0 8px;font-size:28px;font-weight:600}.student-import-card p,.directory-head p{color:var(--muted);margin:0;font-size:13px;line-height:1.65}.student-import-card form{gap:9px;display:grid}.student-import-card label,.form-grid label span{color:#506477;letter-spacing:.1em;text-transform:uppercase;font-size:10px;font-weight:900}.student-import-card textarea{resize:vertical;min-height:148px;padding:14px;line-height:1.6}.import-help{justify-content:space-between;align-items:center;gap:16px;display:flex}.import-help>span{color:#748493;font-size:12px}.import-button{justify-content:center;width:max-content;min-width:190px;margin:0}.directory-head{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;gap:20px;padding:22px 25px;display:flex}.directory-head input{width:min(320px,40vw);min-height:44px;padding:0 13px}.directory-tools{justify-content:end;align-items:center;gap:10px;display:flex}.directory-tools>input{flex:260px}.bulk-delete{border-radius:var(--radius-sm);color:#a3182e;white-space:nowrap;cursor:pointer;background:#fff;border:1px solid #e1aeb7;justify-content:center;align-items:center;gap:7px;min-height:44px;padding:0 13px;font-size:11px;font-weight:800;display:inline-flex}.bulk-delete:hover:not(:disabled){border-color:var(--red-600);color:#fff;background:var(--red-600)}.bulk-delete:disabled{opacity:.42;cursor:not-allowed}.bulk-delete span{color:#fff;background:var(--red-600);border-radius:999px;place-items:center;min-width:21px;height:21px;padding:0 5px;font-size:9px;display:grid}.bulk-delete:hover:not(:disabled) span{color:var(--red-600);background:#fff}.student-table-wrap{overflow:auto}.student-directory table{border-collapse:collapse;text-align:left;width:100%}.student-directory th{color:#6f7f8d;letter-spacing:.12em;background:#f4f7f8;padding:13px 20px;font-size:9px}.student-directory td{border-top:1px solid #e8edf0;padding:15px 20px;font-size:13px}.student-status{border-radius:999px;max-width:154px;padding:5px 8px;font-size:9px;font-weight:900;line-height:1.25;display:inline-flex}.student-status.new{color:#275c82;background:#e3f1fa}.student-status.awaiting_scores{color:#88601d;background:#fff1d9}.student-status.awaiting_placement{color:#75561a;background:#fff4db}.student-status.studying{color:#16724f;background:#ddf7eb}.student-status.paused{color:#697681;background:#eef2f4}.student-status.completed{color:#5d5189;background:#eee9ff}.student-finance{gap:3px;display:grid}.student-finance b{font-size:11px}.student-finance small{color:var(--muted);white-space:nowrap;font-size:9px}.profile-button{min-height:34px;margin-right:7px;padding:0 9px}.student-profile-modal{width:min(570px,100% - 32px)}.profile-summary{border:1px solid var(--line);background:var(--surface);border-radius:8px;gap:4px;margin-top:16px;padding:11px;display:grid}.profile-summary b{font-size:10px}.profile-summary span{color:var(--muted);font-size:10px}.profile-form-grid{grid-template-columns:1fr 1fr;gap:14px;margin:22px 0;display:grid}.profile-form-grid label{gap:6px;display:grid}.profile-form-grid label span{color:var(--muted);font-size:10px;font-weight:900}.profile-form-grid input,.profile-form-grid select,.profile-form-grid textarea{border:1px solid var(--line-strong);min-width:0;color:var(--ink);background:var(--surface);font:inherit;border-radius:7px;padding:10px;font-size:12px}.profile-form-grid .profile-note{grid-column:1/-1}.timetable-page{gap:14px;display:grid}.timetable-toolbar{justify-content:space-between;align-items:end;gap:12px;display:flex}.timetable-week-nav{flex-wrap:wrap;gap:7px;display:flex}.timetable-week-nav .outline{min-height:36px;padding:0 11px}.timetable-jump{color:var(--muted);gap:5px;font-size:10px;font-weight:900;display:grid}.timetable-jump input{border:1px solid var(--line-strong);min-height:36px;color:var(--ink);background:var(--surface);border-radius:6px;padding:0 8px}.timetable-week{border:1px solid var(--line);background:var(--surface);border-radius:10px;overflow-x:auto}.timetable-week-title{border-bottom:1px solid var(--line);min-width:875px;color:var(--navy-900);font-family:var(--font-display);padding:12px 14px;font-size:17px;font-weight:600}.timetable-week-grid{grid-template-columns:repeat(7,minmax(125px,1fr));min-width:875px;display:grid}.timetable-day{border-right:1px solid var(--line);min-height:260px}.timetable-day:last-child{border-right:0}.timetable-day>header{border-bottom:1px solid var(--line);background:var(--surface);justify-content:space-between;align-items:center;min-height:52px;padding:9px 10px;display:flex}@supports (color:color-mix(in lab, red, red)){.timetable-day>header{background:color-mix(in srgb, var(--surface) 92%, var(--blue-50))}}.timetable-day>header span{color:var(--muted);text-transform:uppercase;font-size:10px;font-weight:900}.timetable-day>header b{width:28px;height:28px;color:var(--ink);border-radius:50%;place-items:center;font-size:13px;display:grid}.timetable-day.today>header{background:var(--blue-50)}.timetable-day.today>header b{color:#fff;background:var(--blue-600)}.timetable-day-sessions{align-content:start;gap:7px;padding:8px;display:grid}.timetable-day-sessions>p{color:var(--muted);margin:7px 2px;font-size:10px}.timetable-card{width:100%;color:var(--ink);text-align:left;cursor:pointer;background:#edf7ff;border:1px solid #bfd7e9;border-radius:7px;gap:3px;padding:9px;display:grid}.timetable-card:hover{border-color:var(--blue-600);box-shadow:0 2px 8px #1c5d8b1f}.timetable-card time{color:#1b5c89;font-size:10px;font-weight:900}.timetable-card b{font-size:11px;line-height:1.25}.timetable-card small,.timetable-card em{color:var(--muted);font-size:9px;font-style:normal;line-height:1.35}.timetable-card strong{color:#9d3d3d;font-size:9px}.timetable-card.cancelled{color:var(--muted);background:var(--surface);opacity:.7;border-style:dashed}@media (width<=620px){.timetable-toolbar{flex-direction:column;align-items:stretch}.timetable-jump,.timetable-jump input{width:100%}}.student-directory tr.selected td{background:#f2f7fb}.student-directory .selection-cell{text-align:center;width:48px;padding-right:8px}.student-directory .selection-cell input{accent-color:var(--blue-600)}.student-directory code{color:#155a9f;background:var(--blue-50);border-radius:5px;padding:6px 9px;font-weight:800;display:inline-block}.booked-status{color:var(--green-700);align-items:center;gap:9px;display:flex}.booked-status>strong{color:#155a9f;background:var(--blue-50);text-align:center;border-radius:5px;min-width:58px;padding:4px 7px;font-size:9px}.booked-status>span{gap:1px;display:grid}.booked-status small,.not-booked{color:#7b8996}.booking-stack{gap:7px;min-width:220px;display:grid}.booking-stack .not-booked{padding-left:67px;font-size:11px}.delete-student{min-height:38px;padding:0 12px;font-size:11px}.confirmed-card{border:1px solid var(--line);border-radius:var(--radius-lg);max-width:800px;box-shadow:var(--shadow-md);text-align:center;background:#fff;margin:22px auto;padding:clamp(26px,5vw,54px)}.confirmed-card .check{width:58px;height:58px;color:var(--green-700);background:var(--green-50);border-radius:50%;place-items:center;margin:0 auto 18px;font-size:25px;display:grid;box-shadow:0 0 0 8px #1670520f}.confirmed-card h2{margin:8px 0;font-size:34px;font-weight:600}.ticket,.summary{border:1px solid var(--line);border-radius:var(--radius-md);text-align:left;background:#f6f8f9;margin:26px 0;padding:10px 20px}.ticket>div,.summary>div{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;gap:24px;min-height:52px;padding:8px 0;display:flex}.ticket>div:last-child,.summary>div:last-child{border-bottom:0}.ticket b,.summary b{text-align:right}.lock{color:#738290;margin:0;font-size:12px}.no-sessions{border:1px dashed var(--line-strong);border-radius:var(--radius-md);min-height:280px;color:var(--muted);text-align:center;background:#ffffffa3;align-content:center;place-items:center;gap:7px;padding:38px 20px;display:grid}.no-sessions>span{font-size:28px}.no-sessions h2{color:var(--ink);font-family:var(--font-display);margin:3px 0 0;font-size:27px;font-weight:600}.no-sessions p{margin:0 0 12px}.modal-bg{z-index:50;-webkit-backdrop-filter:blur(7px);backdrop-filter:blur(7px);background:#04121fb8;place-items:center;padding:20px;display:grid;position:fixed;inset:0;overflow-y:auto}.modal{border-radius:var(--radius-lg);background:#fff;border:1px solid #ffffff80;width:min(520px,100%);max-height:calc(100dvh - 40px);padding:clamp(28px,4vw,42px);animation:.22s ease-out both modal-enter;position:relative;overflow-y:auto;box-shadow:0 28px 90px #0000004d}@keyframes modal-enter{0%{opacity:0;transform:translateY(12px)scale(.985)}to{opacity:1;transform:translateY(0)scale(1)}}.modal h2{margin:8px 0 10px;font-size:36px;font-weight:600;line-height:1.12}.modal-x{color:#52687b;cursor:pointer;background:#f0f3f5;border:0;border-radius:50%;width:44px;height:44px;font-size:23px;position:absolute;top:14px;right:14px}.confirm-button{justify-content:center;width:max-content;min-width:220px;margin:18px auto 0}.change-time-button{text-align:center;width:max-content;margin:6px auto 0;display:block}.add-session-panel{width:min(580px,100%)}.form-grid{grid-template-columns:1fr 1fr;gap:16px;margin-top:24px;display:grid}.form-grid label{gap:7px;display:grid}.form-grid input{min-height:50px;padding:0 13px}.form-grid input:disabled{color:#466077;background:#eef2f4;font-weight:700}.form-grid .full-field{grid-column:1/-1}.toast{z-index:70;color:#fff;background:var(--navy-900);max-width:min(390px,100vw - 32px);box-shadow:var(--shadow-md);border:1px solid #ffffff1f;border-radius:9px;align-items:center;gap:14px;padding:14px 18px;font-size:13px;display:flex;position:fixed;bottom:24px;right:24px}.toast>span{flex:1}.toast>button{color:#fff;cursor:pointer;background:#ffffff14;border:1px solid #fff3;border-radius:50%;width:26px;height:26px;padding:0;font-size:18px;line-height:1}.toast>button:hover{background:#ffffff2e}.browse-classes-button{width:100%;min-height:50px;color:var(--navy-900);cursor:pointer;background:#edf7fd;border:1px solid #b8d2e4;border-radius:8px;justify-content:center;align-items:center;gap:8px;margin-top:10px;font-weight:800;text-decoration:none;display:flex}.public-signin-link{align-items:center;min-height:42px;padding:0 16px;text-decoration:none;display:inline-flex}.browse-classes-button:hover{background:#e2f3fc;border-color:#6ca9d0}.public-classes-page{background:linear-gradient(#f4f9fc 0,#fff 480px);min-height:100dvh;padding-bottom:72px}.public-classes-page,.public-classes-page *{font-family:Montserrat,Segoe UI,Arial,sans-serif}.public-classes-header{-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#ffffffe0;border-bottom:1px solid #dce8ef;justify-content:space-between;align-items:center;gap:20px;min-height:76px;padding:12px clamp(20px,5vw,72px);display:flex}.public-header-actions{align-items:center;gap:12px;display:flex}.public-classes-hero{width:min(1180px,100% - 40px);margin:0 auto;padding:clamp(58px,9vw,110px) 0 clamp(38px,6vw,68px)}.public-classes-hero h1{max-width:850px;color:var(--navy-900);font-family:var(--font-display);letter-spacing:-.045em;margin:10px 0 18px;font-size:clamp(40px,6vw,72px);font-weight:600;line-height:1.02}.public-classes-hero>p:last-child{color:#587084;max-width:680px;margin:0;font-size:17px;line-height:1.7}.public-class-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:20px;width:min(1180px,100% - 40px);margin:0 auto;display:grid}.public-class-card{background:#fff;border:1px solid #d9e5ec;border-radius:14px;flex-direction:column;min-width:0;padding:26px;display:flex;box-shadow:0 14px 44px #14374e14}.public-class-card h2{color:var(--navy-900);font-family:var(--font-display);margin:22px 0 18px;font-size:27px;line-height:1.15}.public-class-card dl{gap:12px;margin:0 0 24px;display:grid}.public-class-card dl>div{border-bottom:1px solid #edf1f4;justify-content:space-between;gap:18px;padding-bottom:10px;display:flex}.public-class-card dt{color:#718493}.public-class-card dd{color:var(--navy-900);text-align:right;margin:0;font-weight:750}.public-class-card>.primary{justify-content:center;width:100%;margin-top:auto}.public-class-capacity{color:#687c8b;margin:-4px 0 20px}.public-class-capacity b{color:var(--navy-900)}.public-class-empty{text-align:center;background:#fff;border:1px dashed #bfd2df;border-radius:14px;grid-column:1/-1;padding:54px}.public-class-empty h2{color:var(--navy-900);margin:0 0 8px}.public-class-empty p{color:#718493;margin:0}.public-enrollment-modal{width:min(500px,100%)}.public-enrollment-modal h2{margin-top:8px}.public-enrollment-fields{gap:16px;margin-top:26px;display:grid}.public-enrollment-fields label{color:var(--navy-900);gap:7px;font-size:13px;font-weight:800;display:grid}.public-enrollment-fields input{width:100%;min-height:50px;font:inherit;border:1px solid #bdcdd7;border-radius:7px;padding:0 14px}.public-enrollment-fields input:focus{border-color:#338bc3;outline:3px solid #338bc329}.public-submit{justify-content:center;width:100%;margin-top:24px}.public-list-heading{width:min(760px,100% - 32px);margin:0 auto;padding:clamp(54px,10vw,96px) 0 26px;position:relative}.public-list-heading h1{color:var(--navy-900);font-family:var(--font-display);letter-spacing:-.035em;margin:0;font-size:clamp(30px,5vw,48px);font-weight:700}.public-list-heading p{color:#748695;margin:8px 0 0;font-size:15px}.public-classes-page .public-class-grid{grid-template-columns:1fr;gap:14px;width:min(760px,100% - 32px)}.public-classes-page .public-class-row{min-height:0;box-shadow:none;background:#e8f5ff;border:0;border-radius:15px;padding:0;overflow:hidden}.public-classes-page .public-class-row.row-0{background:#fff0d6}.public-classes-page .public-class-row.row-1{background:#e5f4ff}.public-classes-page .public-class-row.row-2{background:#e7f7ef}.public-classes-page .public-class-row.row-3{background:#fff0f3}.public-class-row-button{width:100%;min-height:116px;color:var(--navy-900);text-align:left;cursor:pointer;background:0 0;border:0;grid-template-columns:minmax(0,1fr) 28px;align-items:center;gap:16px;padding:20px 24px;display:grid}.public-class-row-button:disabled{cursor:not-allowed;opacity:.58}.public-class-row-button:not(:disabled):hover{background:#ffffff5c}.public-class-row-button:focus-visible{outline-offset:-3px;outline:3px solid #2786c0}.public-class-title{align-items:baseline;gap:12px;display:flex}.public-class-row .public-class-title h2{margin:0;font-size:22px;font-weight:750}.public-class-title>span{color:#415d70;background:#fff9;border-radius:5px;padding:3px 8px;font-size:12px;font-weight:800}.public-class-meta{flex-wrap:wrap;gap:8px 20px;margin-top:14px;display:flex}.public-class-meta>span{color:#445d6f;font-size:13px}.public-class-meta .public-class-schedule{color:#243f52;flex-basis:100%;font-weight:700}.public-class-meta b{color:#718592;letter-spacing:.04em;text-transform:uppercase;margin-right:5px;font-size:10px}.public-class-arrow{color:#49697d;font-size:34px;font-weight:300}html[data-theme=dark] .public-list-heading h1{color:var(--ink)}html[data-theme=dark] .public-classes-page .public-class-row{background:#102c40}html[data-theme=dark] .public-classes-page .public-class-row.row-0{background:#33291b}html[data-theme=dark] .public-classes-page .public-class-row.row-2{background:#173128}html[data-theme=dark] .public-classes-page .public-class-row.row-3{background:#35232a}html[data-theme=dark] .public-class-row-button,html[data-theme=dark] .public-class-row .public-class-title h2{color:var(--ink)}html[data-theme=dark] .public-class-meta>span{color:#b8cad6}html[data-theme=dark] .public-class-title>span{color:#c4d8e5;background:#ffffff14}.public-class-admin-list .class-admin-card{overflow:hidden}.class-registration-group{gap:14px;min-width:0;display:grid}.class-registration-group>h3{color:var(--text);align-items:center;gap:10px;margin:8px 0 0;font-size:16px;display:flex}.class-registration-group>h3>span{background:var(--surface);border:1px solid var(--line);border-radius:20px;padding:4px 9px;font-size:14px}.public-registration-list{display:grid}.public-registration-list>div{border-top:1px solid var(--line);grid-template-columns:28px minmax(0,1fr) auto auto;align-items:center;gap:12px;min-height:64px;padding:12px 22px;display:grid}.public-registration-list>div>span{color:#8193a1;font-size:12px;font-weight:800}.public-registration-list p{margin:0}.public-registration-list p b,.public-registration-list p small{display:block}.public-registration-list p small{color:#718493;margin-top:3px}.public-registration-list time{color:#8294a2;font-size:12px}.public-registration-actions{flex-flow:row;justify-content:flex-end;align-items:center;gap:8px;display:flex}.public-registration-actions button{white-space:nowrap;flex:none;justify-content:center;width:auto;min-height:34px;margin:0;padding:7px 12px}.prerequisite-bypass{background:var(--surface);width:100%;min-height:40px;color:var(--text);cursor:pointer;border:1px solid #cbd8e2;border-radius:8px;margin:12px 0 0;font-weight:800}.prerequisite-bypass.active{color:#1265c4;background:#edf6ff;border-color:#2f80ed}html[data-theme=dark] .prerequisite-bypass.active{color:#8fc4ff;background:#2f80ed24}@media (width<=680px){.public-registration-list>div{grid-template-columns:24px minmax(0,1fr)}.public-registration-list time,.public-registration-actions{grid-column:2;justify-content:flex-start}}.create-class-form .public-date-checkbox{border:1px solid var(--line);background:var(--surface);border-radius:7px;align-self:end;align-items:center;gap:10px;min-height:50px;padding:0 14px;display:flex}.create-class-form .public-date-checkbox input{width:18px;min-height:18px;margin:0}.public-schedule-builder{align-self:end;gap:8px;display:grid;position:relative}.public-schedule-builder>span{color:var(--muted);font-size:12px;font-weight:800}.public-schedule-builder>small{min-height:18px;color:var(--muted);font-size:11px}.public-weekday-row{grid-template-columns:repeat(7,minmax(38px,1fr));gap:5px;display:grid}.public-weekday-row button{border:1px solid var(--line-strong);min-height:44px;color:var(--ink);background:var(--surface);cursor:pointer;border-radius:7px;padding:0;font-size:12px;font-weight:800}.public-weekday-row button.configured{color:#0b6096;background:#e5f4ff;border-color:#2680b8}.public-time-popover{z-index:30;border:1px solid var(--line);background:var(--surface);width:min(340px,100vw - 48px);box-shadow:var(--shadow-md);border-radius:10px;grid-template-columns:1fr 1fr;gap:12px;padding:16px;display:grid;position:absolute;top:76px;left:0}.public-time-popover>b,.public-time-popover>button{grid-column:1/-1}.public-time-popover label{gap:5px;display:grid}.public-time-popover input{width:100%;min-height:44px;padding:0 8px}.quarter-time-select{grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);align-items:center;gap:5px;display:grid}.quarter-time-select select{border:1px solid var(--line-strong);width:100%;min-height:44px;color:var(--ink);background:var(--surface);border-radius:7px;padding:0 7px}.quarter-time-select i{color:var(--muted);font-style:normal;font-weight:900}.public-form-actions{align-items:end;gap:10px;display:flex}.public-form-actions>button{min-height:50px}.public-class-editor{transition:border-color .2s,box-shadow .2s,background .2s;position:relative}.public-class-editor.editing{background:linear-gradient(135deg, #f2faff 0%, var(--surface) 55%);box-shadow:0 0 0 5px #2183c11a, var(--shadow-md);border:2px solid #2183c1}.public-edit-banner{color:#0b527f;background:#dff2ff;border-radius:8px;grid-column:1/-1;justify-content:space-between;align-items:center;gap:18px;margin:-8px -8px 4px;padding:14px 16px;display:flex}.public-edit-banner b{font-size:14px}.public-edit-banner span{font-size:12px}.required-note{color:#d1223f;margin-left:5px;font-size:10px;font-style:normal;font-weight:800}.field-error{font-weight:750;color:#d1223f!important;font-size:11px!important}.public-class-editor [aria-invalid=true],.public-schedule-builder.has-error .public-weekday-row{border-color:#d1223f;box-shadow:0 0 0 3px #d1223f1f}.public-schedule-builder.has-error .public-weekday-row{border:1px solid #d1223f;border-radius:9px;padding:4px}html[data-theme=dark] .public-class-editor.editing{background:linear-gradient(135deg, #102f45 0%, var(--surface) 60%)}html[data-theme=dark] .public-edit-banner{color:#bde4fb;background:#123a53}html[data-theme=dark] .login-panel{background:linear-gradient(#07131ef0,#07131ef0),repeating-linear-gradient(90deg,#0000 0 31px,#ffffff08 31px 32px)}html[data-theme=dark] .public-classes-page{background:linear-gradient(#081927 0,#0a1722 480px)}html[data-theme=dark] .public-classes-header,html[data-theme=dark] .public-class-card,html[data-theme=dark] .public-class-empty{border-color:var(--line);background:var(--surface)}html[data-theme=dark] .public-classes-hero h1,html[data-theme=dark] .public-class-card h2,html[data-theme=dark] .public-class-card dd,html[data-theme=dark] .public-class-capacity b,html[data-theme=dark] .public-class-empty h2{color:var(--ink)}html[data-theme=dark] .public-classes-hero>p:last-child,html[data-theme=dark] .public-class-card dt,html[data-theme=dark] .public-class-capacity,html[data-theme=dark] .public-class-empty p{color:#9db0bf}html[data-theme=dark] .public-class-card dl>div{border-color:var(--line)}html[data-theme=dark] .login-card>label,html[data-theme=dark] .student-import-card label,html[data-theme=dark] .form-grid label span{color:#b8c8d5}html[data-theme=dark] .login-card>input,html[data-theme=dark] .form-grid input,html[data-theme=dark] .student-import-card textarea,html[data-theme=dark] .directory-head input,html[data-theme=dark] .language-switch,html[data-theme=dark] .language-switch button{color:var(--ink);background:#0c1925}html[data-theme=dark] .language-switch button.active{color:#fff;background:var(--navy-800)}html[data-theme=dark] .text-button{color:#a9bac8}html[data-theme=dark] .text-button:hover{color:#9bcaff;background:var(--blue-50)}html[data-theme=dark] .app-shell>header{background:#091724eb;border-bottom-color:#385064d1}html[data-theme=dark] .brand.dark{color:var(--ink)}html[data-theme=dark] .user-chip>div:not(.language-switch),html[data-theme=dark] .avatar{color:#9bcaff;background:#16344d}html[data-theme=dark] .user-chip small{color:#93a7b8}html[data-theme=dark] .admin-nav,html[data-theme=dark] .registration-controls,html[data-theme=dark] .exam-tabs,html[data-theme=dark] .date-tabs,html[data-theme=dark] .slot,html[data-theme=dark] .student-import-card,html[data-theme=dark] .student-directory,html[data-theme=dark] .confirmed-card,html[data-theme=dark] .modal,html[data-theme=dark] .portal-sidebar{background:var(--surface)}html[data-theme=dark] .portal-sidebar button:hover:not(.active){background:#142433}html[data-theme=dark] .portal-sidebar button>span{color:#b9ddf5;background:#12334a}html[data-theme=dark] .portal-sidebar button b{color:#d6e3ec}html[data-theme=dark] .portal-sidebar button small,html[data-theme=dark] .portal-sidebar>p{color:#8fa6b7}html[data-theme=dark] .mobile-portal-toggle{color:#c9e4f5;background:#102638;border-color:#35536b}html[data-theme=dark] .student-results{background:linear-gradient(135deg,#102638 0%,#0d1d2c 100%);border-color:#29475d}html[data-theme=dark] .class-portal-head,html[data-theme=dark] .class-admin-head,html[data-theme=dark] .create-class-form,html[data-theme=dark] .class-card,html[data-theme=dark] .class-admin-card{background:var(--surface)}html[data-theme=dark] .class-card.recommended{border-color:#3678a1}html[data-theme=dark] .class-level{color:#c8e9fb;background:#16455f}html[data-theme=dark] .class-seats{color:#b2c5d3;background:#1a2d3b}html[data-theme=dark] .class-card h3,html[data-theme=dark] .class-admin-card h3{color:#e5f3fc}html[data-theme=dark] .class-add-student{border-color:var(--line);background:#0c1925}html[data-theme=dark] .class-enrollment-list>div,html[data-theme=dark] .class-admin-card>header{border-color:var(--line)}html[data-theme=dark] .create-class-form input,html[data-theme=dark] .create-class-form select,html[data-theme=dark] .class-add-student select{color:var(--ink);background:#0c1925}html[data-theme=dark] .class-add-student button,html[data-theme=dark] .enrollment-actions button{color:#a9d6f6;background:#102b43;border-color:#355a76}html[data-theme=dark] .enrollment-actions button:last-child{color:#f2b9c3;background:#3b1c26;border-color:#763b49}html[data-theme=dark] .student-results-head h2,html[data-theme=dark] .student-score-grid b{color:#e5f3fc}html[data-theme=dark] .student-score-grid,html[data-theme=dark] .student-score-grid>div{border-color:#29475d}html[data-theme=dark] .student-score-grid small,html[data-theme=dark] .placement-note span{color:#98b3c7}html[data-theme=dark] .placement-note{color:#b8dcef;background:#102f45}html[data-theme=dark] .placement-note b{color:#d9f0fd;background:#164764}html[data-theme=dark] .placement-note small{color:#b4c6d4}html[data-theme=dark] .admin-nav button{color:#a1b2c0}html[data-theme=dark] .admin-nav button.active,html[data-theme=dark] .exam-tabs button.active,html[data-theme=dark] .date-tabs button.active{color:#fff;background:var(--navy-800)}html[data-theme=dark] .registration-toggle.open{color:#82dbb8;background:#102f29;border-color:#286452}html[data-theme=dark] .registration-toggle.locked{color:#efb45f;background:#302415;border-color:#72532e}html[data-theme=dark] .registration-toggle .lock-icon{background:#ffffff12}html[data-theme=dark] .exam-tabs button{color:#9bafbf}html[data-theme=dark] .exam-tabs button>span:first-child{border-color:var(--line-strong);color:#a9bdd0;background:#0c1925}html[data-theme=dark] .exam-tabs button.active>span:first-child{color:#fff;background:#ffffff17}html[data-theme=dark] .registration-notice{color:#f0bd73;background:#302415;border-color:#71532e}html[data-theme=dark] .registration-notice>span{background:#3b2d1b}html[data-theme=dark] .registration-notice p{color:#cda66e}html[data-theme=dark] .date-tabs button{color:#9cadbb}html[data-theme=dark] .date-tabs button:hover:not(.active){background:#142433}html[data-theme=dark] .date-tabs button em{border-top-color:var(--line)}html[data-theme=dark] .date-tabs button.active em{color:#d5e0e8;border-top-color:#ffffff29}html[data-theme=dark] .day-capacity{color:#e8f3fb;background:#10283a;border-color:#35536b}html[data-theme=dark] .day-capacity b i{color:#7893a7}html[data-theme=dark] .outline,html[data-theme=dark] .delete-day,html[data-theme=dark] .delete-session,html[data-theme=dark] .delete-student,html[data-theme=dark] .bulk-delete{background:0 0}html[data-theme=dark] .outline{color:#b9d5eb;border-color:#7199b9}html[data-theme=dark] .slot:hover{border-color:#496177}html[data-theme=dark] .slot.full,html[data-theme=dark] .slot.registration-locked{background:#0d1a26}html[data-theme=dark] .slot.full .availability,html[data-theme=dark] .book:disabled{color:#8fa0ae;background:#263542}html[data-theme=dark] .availability.locked{color:#efbd78;background:#3a2a17}html[data-theme=dark] .capacity{background:#2a3a48}html[data-theme=dark] .capacity-editor button,html[data-theme=dark] .admin-booking-form button,html[data-theme=dark] .quick-student-form button{color:#a9d6f6;background:#102b43;border-color:#355a76}html[data-theme=dark] .student-details{border-color:var(--line);background:#0d1a26}html[data-theme=dark] .student-details summary{color:#c4d2dd}html[data-theme=dark] .student-details[open]{background:#101e2b}html[data-theme=dark] .student-details[open] summary{background:var(--blue-50)}html[data-theme=dark] .student-list>div,html[data-theme=dark] .student-directory td{border-color:var(--line)}html[data-theme=dark] .admin-booking-form{background:#101e2bf7;box-shadow:0 -8px 18px #0000002e}html[data-theme=dark] .quick-student-form{background:#0d1a26}html[data-theme=dark] .attendance-toggle{color:#a9b8c4;background:#182936;border-color:#3c5265}html[data-theme=dark] .attendance-toggle.attended{color:var(--green-700);background:var(--green-50);border-color:#286452}html[data-theme=dark] .score-entry{color:#a9d6f6;background:#102b43;border-color:#355a76}html[data-theme=dark] .score-entry:hover:not(:disabled),html[data-theme=dark] .score-entry.has-score{color:#d9edfc;background:#163952;border-color:#4c7ea3}html[data-theme=dark] .scores-head,html[data-theme=dark] .score-group,html[data-theme=dark] .unscored-group,html[data-theme=dark] .score-entry-head,html[data-theme=dark] .score-entry-table-wrap,html[data-theme=dark] .score-entry-savebar{background:var(--surface)}html[data-theme=dark] .score-entry-table th{background:#0c1925}html[data-theme=dark] .score-entry-table td{border-color:var(--line)}html[data-theme=dark] .score-entry-table tr.changed td{background:#102b43}html[data-theme=dark] .score-group header{background:#0c1925}html[data-theme=dark] .score-student-list>div{border-color:var(--line)}html[data-theme=dark] .unscored-group{color:#e4b86f;background:#302415}html[data-theme=dark] .unscored-group span{color:#f0c77e}html[data-theme=dark] .student-directory th{color:#9eb0be;background:#0c1925}html[data-theme=dark] .student-directory tr.selected td{background:#122b40}html[data-theme=dark] .ticket,html[data-theme=dark] .summary{background:#0c1925}html[data-theme=dark] .no-sessions{background:#101e2bad}html[data-theme=dark] .modal-x,html[data-theme=dark] .form-grid input:disabled{color:#b8c8d5;background:#1b2c3a}@media (width<=1080px){.login-page{grid-template-columns:minmax(0,.8fr) minmax(540px,1.2fr)}.brand-panel{padding-inline:48px}.registration-controls{grid-template-columns:1fr;gap:22px}.client-list .slot{grid-template-columns:minmax(0,1fr) 220px;gap:22px}.client-list .capacity-wrap{grid-column:1/-1}.admin-grid .slot{grid-template-columns:minmax(220px,1fr) minmax(170px,.75fr) 130px}.public-class-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width<=820px){.content{width:min(1280px,100%);margin:0 auto}.portal-layout{display:block}.mobile-portal-toggle{border:1px solid var(--line-strong);min-height:42px;color:var(--navy-900);background:var(--surface);cursor:pointer;border-radius:8px;align-items:center;gap:8px;margin:0 0 14px;padding:0 13px;font-size:11px;font-weight:900;display:inline-flex}.portal-sidebar{grid-template-columns:repeat(2,minmax(0,1fr));width:auto;margin:0 0 16px;padding:7px;display:none;position:static}.portal-sidebar.open{display:grid}.portal-sidebar>p{display:none}.portal-sidebar button{min-height:58px}.login-page{grid-template-columns:1fr}.brand-panel{min-height:auto;padding:28px 28px 34px}.brand-panel:after{display:none}.hero-copy{margin:46px 0 24px}.hero-copy h1{max-width:560px;margin:14px 0 16px;font-size:clamp(44px,12vw,66px)}.hero-copy>p:last-child{font-size:15px}.trust-row{display:none}.login-panel{min-height:620px;padding:50px 24px}.app-shell>header{padding-inline:16px}.brand.dark{font-size:10px}.user-chip>span{display:none}.content{padding:24px 14px 70px}.welcome{align-items:start;min-height:auto;padding:28px 24px}.registration-buttons{grid-template-columns:1fr 1fr}.client-list .slot,.admin-grid .slot{grid-template-columns:1fr;gap:20px}.client-list .slot{padding:22px 20px 22px 26px}.client-list .slot-top{grid-template-columns:1fr auto}.client-list .capacity-wrap,.student-details{grid-column:1}.admin-grid .delete-session{width:100%}.admin-booking-form{grid-template-columns:1fr auto}.admin-booking-form label{grid-column:1/-1}.quick-student-form{grid-template-columns:1fr 1fr auto}.quick-student-form label{grid-column:1/-1}.student-import-card{grid-template-columns:1fr;gap:24px}.score-groups{grid-template-columns:repeat(2,minmax(0,1fr))}.score-entry-head{flex-direction:column;align-items:stretch}.score-search{width:100%}.class-grid,.create-class-form{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width<=620px){body{font-size:14px}.public-classes-header{padding-inline:16px}.public-classes-header .brand-title,.public-header-actions .language-switch{display:none}.public-classes-hero,.public-class-grid{width:min(100% - 28px,1180px)}.public-classes-hero{padding-top:50px}.public-classes-hero h1{font-size:42px}.public-class-grid{grid-template-columns:1fr}.brand-panel{padding:24px 20px 28px}.hero-copy{margin:34px 0 12px}.hero-copy h1{font-size:46px}.hero-copy>p:last-child{max-width:360px}.login-panel{min-height:auto;padding:40px 20px 56px}.login-card h2{white-space:normal;padding-right:54px;font-size:34px}.mini-mark{margin-bottom:28px}.app-shell>header{min-height:66px}.brand.dark{letter-spacing:.1em;gap:7px}.brand.dark .brand-logo{width:112px}.brand.dark .brand-title,.user-chip>div:not(.language-switch){display:none}.user-chip>button:not(.theme-toggle){margin-left:2px;padding-left:10px}.theme-toggle{width:40px;padding-inline:0}.theme-toggle>b{display:none}.language-switch button{min-width:40px}.welcome h1{font-size:35px}.registration-controls{padding:20px}.registration-buttons,.exam-tabs{grid-template-columns:1fr}.registration-toggle{min-height:82px}.exam-tabs button{min-height:66px}.registration-notice{align-items:flex-start}.date-tabs button{min-width:82px;min-height:94px}.section-title{flex-direction:column;align-items:stretch}.day-capacity{width:100%;margin-left:0}.admin-actions{justify-content:stretch}.admin-actions>button{flex:1}.client-list .slot-top{grid-template-columns:1fr;gap:12px}.availability{width:max-content;min-width:0}.admin-booking-form{grid-template-columns:1fr}.admin-booking-form label{grid-column:auto}.scores-head,.class-portal-head,.class-admin-head{flex-direction:column;align-items:flex-start}.class-grid,.create-class-form{grid-template-columns:1fr}.class-add-student,.class-admin-card>header,.class-enrollment-list>div{flex-direction:column;align-items:stretch}.class-admin-card>header>div:last-child,.enrollment-actions{justify-content:flex-start}.score-groups{grid-template-columns:1fr}.student-results-head{flex-direction:column;align-items:stretch}.student-overall{grid-template-columns:auto auto;justify-content:center;column-gap:11px;width:100%;min-height:72px}.student-overall strong{font-size:30px}.student-score-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.student-score-grid>div:nth-child(2){border-right:0}.student-score-grid>div:nth-child(-n+2){border-bottom:1px solid #d3e1ea}.placement-note{flex-wrap:wrap;align-items:flex-start}.placement-note small{text-align:left;width:100%;margin-left:0}.score-total{width:100%}.score-form-grid{grid-template-columns:1fr}.score-form-grid .score-wide{grid-column:auto}.score-entry-savebar{bottom:8px}.quick-student-form{grid-template-columns:1fr}.quick-student-form label{grid-column:auto}.ticket,.summary{padding:8px 14px}.ticket>div,.summary>div{flex-direction:column;align-items:flex-start;gap:2px}.ticket b,.summary b{text-align:left}.form-grid{grid-template-columns:1fr}.form-grid .full-field{grid-column:auto}.directory-head{flex-direction:column;align-items:stretch}.directory-head input{width:100%}.directory-tools{flex-direction:column;align-items:stretch}.directory-tools>input{flex:none}.bulk-delete{width:100%}.import-help{flex-direction:column;align-items:stretch}.import-button{width:100%}.toast{bottom:16px;right:16px}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}@property --tw-scale-x{syntax:"*";inherits:false;initial-value:1}@property --tw-scale-y{syntax:"*";inherits:false;initial-value:1}@property --tw-scale-z{syntax:"*";inherits:false;initial-value:1}@property --tw-rotate-x{syntax:"*";inherits:false}@property --tw-rotate-y{syntax:"*";inherits:false}@property --tw-rotate-z{syntax:"*";inherits:false}@property --tw-skew-x{syntax:"*";inherits:false}@property --tw-skew-y{syntax:"*";inherits:false}@property --tw-space-y-reverse{syntax:"*";inherits:false;initial-value:0}@property --tw-space-x-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-gradient-position{syntax:"*";inherits:false}@property --tw-gradient-from{syntax:"<color>";inherits:false;initial-value:#0000}@property --tw-gradient-via{syntax:"<color>";inherits:false;initial-value:#0000}@property --tw-gradient-to{syntax:"<color>";inherits:false;initial-value:#0000}@property --tw-gradient-stops{syntax:"*";inherits:false}@property --tw-gradient-via-stops{syntax:"*";inherits:false}@property --tw-gradient-from-position{syntax:"<length-percentage>";inherits:false;initial-value:0%}@property --tw-gradient-via-position{syntax:"<length-percentage>";inherits:false;initial-value:50%}@property --tw-gradient-to-position{syntax:"<length-percentage>";inherits:false;initial-value:100%}@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-outline-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-blur{syntax:"*";inherits:false}@property --tw-brightness{syntax:"*";inherits:false}@property --tw-contrast{syntax:"*";inherits:false}@property --tw-grayscale{syntax:"*";inherits:false}@property --tw-hue-rotate{syntax:"*";inherits:false}@property --tw-invert{syntax:"*";inherits:false}@property --tw-opacity{syntax:"*";inherits:false}@property --tw-saturate{syntax:"*";inherits:false}@property --tw-sepia{syntax:"*";inherits:false}@property --tw-drop-shadow{syntax:"*";inherits:false}@property --tw-drop-shadow-color{syntax:"*";inherits:false}@property --tw-drop-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-drop-shadow-size{syntax:"*";inherits:false}@property --tw-backdrop-blur{syntax:"*";inherits:false}@property --tw-backdrop-brightness{syntax:"*";inherits:false}@property --tw-backdrop-contrast{syntax:"*";inherits:false}@property --tw-backdrop-grayscale{syntax:"*";inherits:false}@property --tw-backdrop-hue-rotate{syntax:"*";inherits:false}@property --tw-backdrop-invert{syntax:"*";inherits:false}@property --tw-backdrop-opacity{syntax:"*";inherits:false}@property --tw-backdrop-saturate{syntax:"*";inherits:false}@property --tw-backdrop-sepia{syntax:"*";inherits:false}@property --tw-duration{syntax:"*";inherits:false}@property --tw-ease{syntax:"*";inherits:false}@property --tw-text-shadow-color{syntax:"*";inherits:false}@property --tw-text-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-translate-x{syntax:"*";inherits:false;initial-value:0}@property --tw-translate-y{syntax:"*";inherits:false;initial-value:0}@property --tw-translate-z{syntax:"*";inherits:false;initial-value:0}@keyframes spin{to{transform:rotate(360deg)}}@keyframes pulse{50%{opacity:.5}}@keyframes bounce{0%,to{animation-timing-function:cubic-bezier(.8,0,1,1);transform:translateY(-25%)}50%{animation-timing-function:cubic-bezier(0,0,.2,1);transform:none}}
