/*! tailwindcss v4.3.3 | MIT License | https://tailwindcss.com */@layer properties{@supports (((-webkit-hyphens:none)) and (not (margin-trim:inline))) or ((-moz-orient:inline) and (not (color:rgb(from red r g b)))){*,::backdrop,:after,:before{--tw-space-y-reverse:0;--tw-divide-y-reverse:0;--tw-border-style:solid;--tw-leading:initial;--tw-font-weight:initial;--tw-tracking:initial;--tw-ordinal:initial;--tw-slashed-zero:initial;--tw-numeric-figure:initial;--tw-numeric-spacing:initial;--tw-numeric-fraction:initial;--tw-shadow:0 0 #0000;--tw-shadow-color:initial;--tw-shadow-alpha:100%;--tw-inset-shadow:0 0 #0000;--tw-inset-shadow-color:initial;--tw-inset-shadow-alpha:100%;--tw-ring-color:initial;--tw-ring-shadow:0 0 #0000;--tw-inset-ring-color:initial;--tw-inset-ring-shadow:0 0 #0000;--tw-ring-inset:initial;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-offset-shadow:0 0 #0000;--tw-blur:initial;--tw-brightness:initial;--tw-contrast:initial;--tw-grayscale:initial;--tw-hue-rotate:initial;--tw-invert:initial;--tw-opacity:initial;--tw-saturate:initial;--tw-sepia:initial;--tw-drop-shadow:initial;--tw-drop-shadow-color:initial;--tw-drop-shadow-alpha:100%;--tw-drop-shadow-size:initial}}}@layer theme{:host,:root{--color-red-50:#faeff1;--color-red-200:oklch(88.5% .062 18.334);--color-red-600:#955467;--color-red-700:#854859;--color-red-800:oklch(44.4% .177 26.899);--color-amber-50:#faf6ed;--color-amber-200:oklch(92.4% .12 95.746);--color-amber-300:oklch(87.9% .169 91.605);--color-amber-400:oklch(82.8% .189 84.429);--color-amber-500:oklch(76.9% .188 70.08);--color-amber-800:#705a36;--color-amber-900:oklch(41.4% .112 45.904);--color-amber-950:oklch(27.9% .077 45.635);--color-green-50:#edf6f3;--color-green-100:#ddefe9;--color-green-200:oklch(92.5% .084 155.995);--color-green-700:#286d63;--color-green-800:#20584f;--color-emerald-800:oklch(43.2% .095 166.913);--color-teal-50:oklch(98.4% .014 180.72);--color-teal-100:oklch(95.3% .051 180.801);--color-teal-200:oklch(91% .096 180.426);--color-teal-600:oklch(60% .118 184.704);--color-teal-700:oklch(51.1% .096 186.391);--color-teal-800:oklch(43.7% .078 188.216);--color-teal-900:oklch(38.6% .063 188.416);--color-teal-950:oklch(27.7% .046 192.524);--color-blue-50:#eef3f8;--color-blue-200:#c5d3e2;--color-blue-600:#334e68;--color-blue-700:#243b53;--color-blue-800:#1c3045;--color-slate-50:#f5f7fa;--color-slate-100:#f5f7fa;--color-slate-200:#dce4ed;--color-slate-300:#dce4ed;--color-slate-400:#6b7c8f;--color-slate-500:#596d82;--color-slate-600:#486078;--color-slate-700:#334e68;--color-slate-800:oklch(27.9% .041 260.031);--color-slate-900:#243b53;--color-slate-950:oklch(12.9% .042 264.695);--color-gray-200:oklch(92.8% .006 264.531);--color-gray-300:oklch(87.2% .01 258.338);--color-gray-800:oklch(27.8% .033 256.848);--color-white:#fff;--spacing:.25rem;--container-sm:24rem;--container-md:28rem;--container-lg:32rem;--container-xl:36rem;--container-2xl:42rem;--container-3xl:48rem;--container-5xl:64rem;--container-6xl:72rem;--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);--font-weight-normal:400;--font-weight-medium:500;--font-weight-semibold:600;--font-weight-bold:700;--tracking-wide:.025em;--tracking-wider:.05em;--tracking-widest:.1em;--radius-lg:.5rem;--radius-xl:.75rem;--radius-2xl:1rem;--radius-3xl:1.5rem;--default-transition-duration:.15s;--default-transition-timing-function:cubic-bezier(.4,0,.2,1);--default-font-family:var(--font-geist-sans);--default-mono-font-family:var(--font-geist-mono)}}@layer base{*,::backdrop,:after,:before{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}:host,html{-webkit-text-size-adjust:100%;tab-size:4;line-height:1.5;font-family:var(--default-font-family,-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,"Helvetica Neue","Noto Sans",Arial,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;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,pre,samp{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:where(:not(iframe)){outline:auto}progress{vertical-align:baseline}summary{display:list-item}menu,ol,ul{list-style:none}audio,canvas,embed,iframe,img,object,svg,video{vertical-align:middle;display:block}img,video{max-width:100%;height:auto}button,input,optgroup,select,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,::-webkit-datetime-edit-year-field{padding-block:0}::-webkit-datetime-edit-day-field,::-webkit-datetime-edit-month-field{padding-block:0}::-webkit-datetime-edit-hour-field,::-webkit-datetime-edit-minute-field{padding-block:0}::-webkit-datetime-edit-millisecond-field,::-webkit-datetime-edit-second-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,::-webkit-outer-spin-button{height:auto}[hidden]:where(:not([hidden=until-found])){display:none!important}}@layer components;@layer utilities{.visible{visibility:visible}.sr-only{clip-path:inset(50%);white-space:nowrap;border-width:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.\!fixed{position:fixed!important}.absolute{position:absolute}.fixed{position:fixed}.static{position:static}.sticky{position:sticky}.inset-0{inset:0}.top-0{top:0}.right-4{right:calc(var(--spacing) * 4)}.bottom-4{bottom:calc(var(--spacing) * 4)}.isolate{isolation:isolate}.z-20{z-index:20}.col-span-2{grid-column:span 2/span 2}.container{width:100%}@media (min-width:40rem){.container{max-width:40rem}}@media (min-width:48rem){.container{max-width:48rem}}@media (min-width:64rem){.container{max-width:64rem}}@media (min-width:80rem){.container{max-width:80rem}}@media (min-width:96rem){.container{max-width:96rem}}.m-auto{margin:auto}.mx-auto{margin-inline:auto}.my-2{margin-block:calc(var(--spacing) * 2)}.my-3{margin-block:calc(var(--spacing) * 3)}.my-4{margin-block:calc(var(--spacing) * 4)}.my-5{margin-block:calc(var(--spacing) * 5)}.my-6{margin-block:calc(var(--spacing) * 6)}.mt-1{margin-top:var(--spacing)}.mt-1\.5{margin-top:calc(var(--spacing) * 1.5)}.mt-2{margin-top:calc(var(--spacing) * 2)}.mt-3{margin-top:calc(var(--spacing) * 3)}.mt-4{margin-top:calc(var(--spacing) * 4)}.mt-5{margin-top:calc(var(--spacing) * 5)}.mt-6{margin-top:calc(var(--spacing) * 6)}.mt-8{margin-top:calc(var(--spacing) * 8)}.mt-10{margin-top:calc(var(--spacing) * 10)}.mr-2{margin-right:calc(var(--spacing) * 2)}.mb-2{margin-bottom:calc(var(--spacing) * 2)}.mb-3{margin-bottom:calc(var(--spacing) * 3)}.mb-4{margin-bottom:calc(var(--spacing) * 4)}.mb-5{margin-bottom:calc(var(--spacing) * 5)}.mb-6{margin-bottom:calc(var(--spacing) * 6)}.mb-8{margin-bottom:calc(var(--spacing) * 8)}.ml-2{margin-left:calc(var(--spacing) * 2)}.ml-3{margin-left:calc(var(--spacing) * 3)}.block{display:block}.contents{display:contents}.flex{display:flex}.grid{display:grid}.hidden{display:none}.hidden\!{display:none!important}.inline-block{display:inline-block}.inline-flex{display:inline-flex}.table{display:table}.h-2{height:calc(var(--spacing) * 2)}.h-4{height:calc(var(--spacing) * 4)}.h-9{height:calc(var(--spacing) * 9)}.h-28{height:calc(var(--spacing) * 28)}.h-40{height:calc(var(--spacing) * 40)}.h-\[55dvh\]{height:55dvh}.h-full{height:100%}.max-h-12{max-height:calc(var(--spacing) * 12)}.max-h-14{max-height:calc(var(--spacing) * 14)}.max-h-40{max-height:calc(var(--spacing) * 40)}.max-h-64{max-height:calc(var(--spacing) * 64)}.max-h-72{max-height:calc(var(--spacing) * 72)}.max-h-80{max-height:calc(var(--spacing) * 80)}.max-h-\[35dvh\]{max-height:35dvh}.max-h-\[40dvh\]{max-height:40dvh}.max-h-\[90dvh\]{max-height:90dvh}.min-h-0{min-height:0}.min-h-9{min-height:calc(var(--spacing) * 9)}.min-h-10{min-height:calc(var(--spacing) * 10)}.min-h-11{min-height:calc(var(--spacing) * 11)}.min-h-12{min-height:calc(var(--spacing) * 12)}.min-h-16{min-height:calc(var(--spacing) * 16)}.min-h-24{min-height:calc(var(--spacing) * 24)}.min-h-28{min-height:calc(var(--spacing) * 28)}.min-h-40{min-height:calc(var(--spacing) * 40)}.min-h-64{min-height:calc(var(--spacing) * 64)}.min-h-dvh{min-height:100dvh}.min-h-full{min-height:100%}.min-h-screen{min-height:100vh}.w-4{width:calc(var(--spacing) * 4)}.w-28{width:calc(var(--spacing) * 28)}.w-\[calc\(100\%-2rem\)\]{width:calc(100% - 2rem)}.w-full{width:100%}.max-w-2xl{max-width:var(--container-2xl)}.max-w-3xl{max-width:var(--container-3xl)}.max-w-5xl{max-width:var(--container-5xl)}.max-w-6xl{max-width:var(--container-6xl)}.max-w-\[calc\(100vw-2rem\)\]{max-width:calc(100vw - 2rem)}.max-w-full{max-width:100%}.max-w-lg{max-width:var(--container-lg)}.max-w-md{max-width:var(--container-md)}.max-w-sm{max-width:var(--container-sm)}.max-w-xl{max-width:var(--container-xl)}.min-w-0{min-width:0}.min-w-40{min-width:calc(var(--spacing) * 40)}.min-w-\[480px\]{min-width:480px}.flex-1{flex:1}.shrink{flex-shrink:1}.shrink-0{flex-shrink:0}.grow{flex-grow:1}.cursor-pointer{cursor:pointer}.resize{resize:both}.resize-none{resize:none}.list-inside{list-style-position:inside}.list-decimal{list-style-type:decimal}.list-disc{list-style-type:disc}.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-7{grid-template-columns:repeat(7,minmax(0,1fr))}.flex-col{flex-direction:column}.flex-wrap{flex-wrap:wrap}.items-center{align-items:center}.items-end{align-items:flex-end}.items-start{align-items:flex-start}.justify-between{justify-content:space-between}.justify-center{justify-content:center}.gap-1{gap:var(--spacing)}.gap-2{gap:calc(var(--spacing) * 2)}.gap-3{gap:calc(var(--spacing) * 3)}.gap-4{gap:calc(var(--spacing) * 4)}.gap-5{gap:calc(var(--spacing) * 5)}:where(.space-y-1>:not(:last-child)){--tw-space-y-reverse:0;margin-block-start:calc(var(--spacing) * var(--tw-space-y-reverse));margin-block-end:calc(var(--spacing) * calc(1 - var(--tw-space-y-reverse)))}:where(.space-y-2>:not(:last-child)){--tw-space-y-reverse:0;margin-block-start:calc(calc(var(--spacing) * 2) * var(--tw-space-y-reverse));margin-block-end:calc(calc(var(--spacing) * 2) * calc(1 - var(--tw-space-y-reverse)))}:where(.space-y-3>:not(:last-child)){--tw-space-y-reverse:0;margin-block-start:calc(calc(var(--spacing) * 3) * var(--tw-space-y-reverse));margin-block-end:calc(calc(var(--spacing) * 3) * calc(1 - var(--tw-space-y-reverse)))}:where(.space-y-4>:not(:last-child)){--tw-space-y-reverse:0;margin-block-start:calc(calc(var(--spacing) * 4) * var(--tw-space-y-reverse));margin-block-end:calc(calc(var(--spacing) * 4) * calc(1 - var(--tw-space-y-reverse)))}:where(.space-y-5>:not(:last-child)){--tw-space-y-reverse:0;margin-block-start:calc(calc(var(--spacing) * 5) * var(--tw-space-y-reverse));margin-block-end:calc(calc(var(--spacing) * 5) * 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)))}.gap-x-3{column-gap:calc(var(--spacing) * 3)}.gap-x-4{column-gap:calc(var(--spacing) * 4)}.gap-y-1{row-gap:var(--spacing)}.gap-y-2{row-gap:calc(var(--spacing) * 2)}: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)))}.truncate{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.overflow-auto{overflow:auto}.overflow-hidden{overflow:hidden}.overflow-x-auto{overflow-x:auto}.overflow-y-auto{overflow-y:auto}.overscroll-contain{overscroll-behavior:contain}.rounded{border-radius:.25rem}.rounded-2xl{border-radius:var(--radius-2xl)}.rounded-3xl{border-radius:var(--radius-3xl)}.rounded-full{border-radius:3.40282e+38px}.rounded-lg{border-radius:var(--radius-lg)}.rounded-xl{border-radius:var(--radius-xl)}.border{border-style:var(--tw-border-style);border-width:1px}.border-t{border-top-style:var(--tw-border-style);border-top-width:1px}.border-t-4{border-top-style:var(--tw-border-style);border-top-width:4px}.border-b{border-bottom-style:var(--tw-border-style);border-bottom-width:1px}.border-dashed{--tw-border-style:dashed;border-style:dashed}.border-amber-200{border-color:var(--color-amber-200)}.border-amber-300{border-color:var(--color-amber-300)}.border-amber-400{border-color:var(--color-amber-400)}.border-amber-500{border-color:var(--color-amber-500)}.border-blue-200{border-color:var(--color-blue-200)}.border-blue-700{border-color:var(--color-blue-700)}.border-gray-300{border-color:var(--color-gray-300)}.border-green-200{border-color:var(--color-green-200)}.border-green-700{border-color:var(--color-green-700)}.border-red-200{border-color:var(--color-red-200)}.border-slate-200{border-color:var(--color-slate-200)}.border-slate-300{border-color:var(--color-slate-300)}.border-slate-700{border-color:var(--color-slate-700)}.border-slate-900{border-color:var(--color-slate-900)}.border-teal-200{border-color:var(--color-teal-200)}.border-teal-600{border-color:var(--color-teal-600)}.border-teal-700{border-color:var(--color-teal-700)}.border-teal-800{border-color:var(--color-teal-800)}.\!bg-teal-700{background-color:var(--color-teal-700)!important}.bg-amber-50{background-color:var(--color-amber-50)}.bg-blue-50{background-color:var(--color-blue-50)}.bg-blue-600{background-color:var(--color-blue-600)}.bg-blue-700{background-color:var(--color-blue-700)}.bg-gray-200{background-color:var(--color-gray-200)}.bg-green-50{background-color:var(--color-green-50)}.bg-green-100{background-color:var(--color-green-100)}.bg-green-700{background-color:var(--color-green-700)}.bg-red-50{background-color:var(--color-red-50)}.bg-red-700{background-color:var(--color-red-700)}.bg-slate-50{background-color:var(--color-slate-50)}.bg-slate-100{background-color:var(--color-slate-100)}.bg-slate-200{background-color:var(--color-slate-200)}.bg-slate-700{background-color:var(--color-slate-700)}.bg-slate-800{background-color:var(--color-slate-800)}.bg-slate-900{background-color:var(--color-slate-900)}.bg-slate-950{background-color:var(--color-slate-950)}.bg-teal-50{background-color:var(--color-teal-50)}.bg-teal-100{background-color:var(--color-teal-100)}.bg-teal-700{background-color:var(--color-teal-700)}.bg-teal-800{background-color:var(--color-teal-800)}.bg-white{background-color:var(--color-white)}.p-1{padding:var(--spacing)}.p-2{padding:calc(var(--spacing) * 2)}.p-3{padding:calc(var(--spacing) * 3)}.p-4{padding:calc(var(--spacing) * 4)}.p-5{padding:calc(var(--spacing) * 5)}.p-6{padding:calc(var(--spacing) * 6)}.p-8{padding:calc(var(--spacing) * 8)}.px-1{padding-inline:var(--spacing)}.px-1\.5{padding-inline:calc(var(--spacing) * 1.5)}.px-2{padding-inline:calc(var(--spacing) * 2)}.px-3{padding-inline:calc(var(--spacing) * 3)}.px-4{padding-inline:calc(var(--spacing) * 4)}.px-5{padding-inline:calc(var(--spacing) * 5)}.py-0\.5{padding-block:calc(var(--spacing) * .5)}.py-1{padding-block:var(--spacing)}.py-2{padding-block:calc(var(--spacing) * 2)}.py-2\.5{padding-block:calc(var(--spacing) * 2.5)}.py-3{padding-block:calc(var(--spacing) * 3)}.py-5{padding-block:calc(var(--spacing) * 5)}.py-6{padding-block:calc(var(--spacing) * 6)}.py-8{padding-block:calc(var(--spacing) * 8)}.pt-1{padding-top:var(--spacing)}.pt-2{padding-top:calc(var(--spacing) * 2)}.pt-4{padding-top:calc(var(--spacing) * 4)}.pt-5{padding-top:calc(var(--spacing) * 5)}.pr-1{padding-right:var(--spacing)}.pb-2{padding-bottom:calc(var(--spacing) * 2)}.pl-5{padding-left:calc(var(--spacing) * 5)}.text-center{text-align:center}.text-left{text-align:left}.font-sans{font-family:var(--font-geist-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-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))}.leading-4{--tw-leading:calc(var(--spacing) * 4);line-height:calc(var(--spacing) * 4)}.leading-5{--tw-leading:calc(var(--spacing) * 5);line-height:calc(var(--spacing) * 5)}.leading-6{--tw-leading:calc(var(--spacing) * 6);line-height:calc(var(--spacing) * 6)}.leading-7{--tw-leading:calc(var(--spacing) * 7);line-height:calc(var(--spacing) * 7)}.font-bold{--tw-font-weight:var(--font-weight-bold);font-weight:var(--font-weight-bold)}.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)}.tracking-wide{--tw-tracking:var(--tracking-wide);letter-spacing:var(--tracking-wide)}.tracking-wider{--tw-tracking:var(--tracking-wider);letter-spacing:var(--tracking-wider)}.tracking-widest{--tw-tracking:var(--tracking-widest);letter-spacing:var(--tracking-widest)}.break-words{overflow-wrap:break-word}.break-all{word-break:break-all}.whitespace-nowrap{white-space:nowrap}.whitespace-pre-line{white-space:pre-line}.whitespace-pre-wrap{white-space:pre-wrap}.text-amber-800{color:var(--color-amber-800)}.text-amber-900{color:var(--color-amber-900)}.text-amber-950{color:var(--color-amber-950)}.text-blue-700{color:var(--color-blue-700)}.text-emerald-800{color:var(--color-emerald-800)}.text-gray-800{color:var(--color-gray-800)}.text-green-700{color:var(--color-green-700)}.text-green-800{color:var(--color-green-800)}.text-red-600{color:var(--color-red-600)}.text-red-700{color:var(--color-red-700)}.text-red-800{color:var(--color-red-800)}.text-slate-400{color:var(--color-slate-400)}.text-slate-500{color:var(--color-slate-500)}.text-slate-600{color:var(--color-slate-600)}.text-slate-700{color:var(--color-slate-700)}.text-slate-800{color:var(--color-slate-800)}.text-slate-900{color:var(--color-slate-900)}.text-slate-950{color:var(--color-slate-950)}.text-teal-800{color:var(--color-teal-800)}.text-teal-900{color:var(--color-teal-900)}.text-teal-950{color:var(--color-teal-950)}.text-white{color:var(--color-white)}.ordinal{--tw-ordinal:ordinal}.ordinal,.tabular-nums{font-variant-numeric:var(--tw-ordinal,) var(--tw-slashed-zero,) var(--tw-numeric-figure,) var(--tw-numeric-spacing,) var(--tw-numeric-fraction,)}.tabular-nums{--tw-numeric-spacing:tabular-nums}.underline{text-decoration-line:underline}.underline-offset-4{text-underline-offset:4px}.shadow-lg{--tw-shadow:0 10px 15px -3px var(--tw-shadow-color,#0000001a),0 4px 6px -4px var(--tw-shadow-color,#0000001a)}.shadow-lg,.shadow-sm{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)}.shadow-xl{--tw-shadow:0 20px 25px -5px var(--tw-shadow-color,#0000001a),0 8px 10px -6px var(--tw-shadow-color,#0000001a)}.ring-4,.shadow-xl{box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.ring-4{--tw-ring-shadow:var(--tw-ring-inset,) 0 0 0 calc(4px + var(--tw-ring-offset-width)) var(--tw-ring-color,currentcolor)}.ring-blue-600{--tw-ring-color:var(--color-blue-600)}.blur{--tw-blur:blur(8px)}.blur,.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,)}.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,)!important}.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))}.backdrop\:bg-slate-950\/50::backdrop{background-color:#02061880}@supports (color:color-mix(in lab,red,red)){.backdrop\:bg-slate-950\/50::backdrop{background-color:color-mix(in oklab,var(--color-slate-950) 50%,transparent)}}@media (hover:hover){.hover\:bg-blue-800:hover{background-color:var(--color-blue-800)}.hover\:bg-slate-50:hover{background-color:var(--color-slate-50)}.hover\:underline:hover{text-decoration-line:underline}}.focus\:border-teal-700:focus{border-color:var(--color-teal-700)}.disabled\:cursor-default:disabled{cursor:default}.disabled\:cursor-not-allowed:disabled{cursor:not-allowed}.disabled\:bg-slate-100:disabled{background-color:var(--color-slate-100)}.disabled\:opacity-30:disabled{opacity:.3}.disabled\:opacity-40:disabled{opacity:.4}.disabled\:opacity-50:disabled{opacity:.5}@media (min-width:40rem){.sm\:mt-0{margin-top:0}.sm\:ml-2{margin-left:calc(var(--spacing) * 2)}.sm\:w-auto{width:auto}.sm\:max-w-md{max-width:var(--container-md)}.sm\:grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.sm\:grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.sm\:grid-cols-4{grid-template-columns:repeat(4,minmax(0,1fr))}.sm\:grid-cols-5{grid-template-columns:repeat(5,minmax(0,1fr))}.sm\:p-4{padding:calc(var(--spacing) * 4)}.sm\:p-6{padding:calc(var(--spacing) * 6)}.sm\:p-7{padding:calc(var(--spacing) * 7)}.sm\:p-8{padding:calc(var(--spacing) * 8)}.sm\:px-6{padding-inline:calc(var(--spacing) * 6)}.sm\:text-3xl{font-size:var(--text-3xl);line-height:var(--tw-leading,var(--text-3xl--line-height))}.sm\:text-xl{font-size:var(--text-xl);line-height:var(--tw-leading,var(--text-xl--line-height))}}@media (min-width:48rem){.md\:col-span-1{grid-column:span 1/span 1}.md\:col-start-1{grid-column-start:1}.md\:col-start-2{grid-column-start:2}.md\:row-span-2{grid-row:span 2/span 2}.md\:row-start-1{grid-row-start:1}.md\:row-start-2{grid-row-start:2}.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\:grid-cols-4{grid-template-columns:repeat(4,minmax(0,1fr))}.md\:grid-cols-7{grid-template-columns:repeat(7,minmax(0,1fr))}.md\:grid-cols-\[minmax\(0\,2fr\)_repeat\(3\,minmax\(0\,1fr\)\)_auto\]{grid-template-columns:minmax(0,2fr) repeat(3,minmax(0,1fr)) auto}.md\:p-8{padding:calc(var(--spacing) * 8)}}@media (min-width:64rem){.lg\:grid-cols-4{grid-template-columns:repeat(4,minmax(0,1fr))}}}@media screen{.portal-viewport{height:100dvh;min-height:0;padding:8px 12px;overflow:hidden}.portal-shell{grid-template-rows:auto auto auto auto minmax(0,1fr);gap:6px;height:100%;min-height:0;display:grid}.portal-shell>aside{margin:0;padding:6px 10px;font-size:11px;line-height:15px}.portal-shell>header{padding:10px 16px}.portal-shell>header>p:last-child{display:none}.portal-shell>header h1{font-size:21px;line-height:28px}.portal-shell>header>div{margin-top:2px}.portal-shell>section[aria-label="미리보기 역할 선택"]{gap:6px;margin:0;padding:4px 8px}.portal-shell>section[aria-label="미리보기 역할 선택"] button{min-height:36px;padding:4px 12px}.portal-shell>nav{grid-template-columns:repeat(4,minmax(0,1fr));gap:6px;margin:0}.portal-shell>nav button{min-height:38px;padding:6px;font-size:13px}.portal-shell>footer{display:none}.portal-content{min-height:0;padding:10px;overflow:hidden}.portal-content>div:not([hidden]),.portal-content>section{height:100%;min-height:0}.portal-content>div[hidden]{display:none}.portal-records{flex-direction:column;height:100%;min-height:0;display:flex}.portal-records>*{margin-top:0!important}.portal-records>div:first-child{padding:8px 12px}.portal-records>div:first-child p{display:none}.portal-records>div:first-child h2{margin:0;font-size:17px;line-height:24px}.portal-records>div>button,.portal-records>nav button{min-height:34px;padding:4px 10px}.portal-records>section:last-child{flex:1;min-height:0}.portal-records>section[aria-label="개인 출결 조회"]{flex-direction:column;gap:6px;padding:10px;display:flex;overflow:hidden}.portal-records>section[aria-label="개인 출결 조회"]>*{margin-top:0}.portal-records>section[aria-label="개인 출결 조회"] ul{overscroll-behavior:contain;flex:1;min-height:0;overflow:auto}.portal-records>section[aria-label="개인 출결 조회"] label input,.portal-records>section[aria-label="개인 출결 조회"] label select{min-height:36px;padding:6px}.portal-records>section[aria-label="개인 출결 조회"] h3{font-size:17px}.portal-records>section[aria-label="개인 출결 조회"]>p{padding:8px}.portal-content [aria-label=학생·학부모\ 계정]{overscroll-behavior:contain;padding:12px 18px;overflow:auto}.portal-content [aria-label=학생·학부모\ 계정] form{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px 12px;display:grid}.portal-content [aria-label=학생·학부모\ 계정] form>*{margin-top:0}.portal-content [aria-label=학생·학부모\ 계정] form>button{grid-column:1/-1}.portal-content [aria-label=학생·학부모\ 계정] input{min-height:36px;padding:6px 8px}.portal-content [aria-label=학생·학부모\ 계정] nav{margin-top:8px;padding-top:6px}.portal-content textarea{resize:none;overscroll-behavior:contain;overflow:auto}.portal-content [role=alert],.portal-content [role=status]{flex-shrink:0;max-height:64px;overflow:auto}@media (max-width:639px){.portal-viewport{padding:4px}.portal-shell{gap:4px}.portal-shell>aside{max-height:30px;padding:3px 6px;font-size:10px;line-height:13px;overflow:auto}.portal-shell>header{padding:6px 10px}.portal-shell>header>p:first-child{font-size:11px}.portal-shell>header>div{gap:2px}.portal-shell>header h1{font-size:18px;line-height:24px}.portal-shell>header span{padding:2px 5px;font-size:10px}.portal-shell>section[aria-label="미리보기 역할 선택"]>span{display:none}.portal-shell>section[aria-label="미리보기 역할 선택"] button{min-height:34px;padding:3px 8px;font-size:12px}.portal-shell>nav button{min-height:40px;padding:3px;font-size:11px}.portal-content{padding:6px}.portal-records>section[aria-label="개인 출결 조회"]>div{grid-template-columns:1fr 1fr;gap:4px}.portal-content [aria-label=학생·학부모\ 계정]{padding:8px}.portal-content [aria-label=학생·학부모\ 계정] h2{font-size:18px}.portal-content [aria-label=학생·학부모\ 계정] p{margin-top:4px;font-size:11px;line-height:15px}.portal-content [aria-label=학생·학부모\ 계정] form{gap:4px 8px;margin-top:6px}}.portal-content [aria-label=학생·학부모\ 계정]{flex-direction:column;gap:4px;display:flex;overflow:hidden}.portal-content [aria-label=학생·학부모\ 계정]>*{flex-shrink:0}.portal-content [aria-label=학생·학부모\ 계정]>div:first-child{margin-bottom:4px}.portal-content [aria-label=학생·학부모\ 계정]>form{overscroll-behavior:contain;flex:auto;align-content:start;min-height:0;overflow:auto}.portal-content [aria-label=학생·학부모\ 계정]>h1{font-size:20px;line-height:28px}.portal-content [aria-label=학생·학부모\ 계정]>p{margin-top:2px;margin-bottom:2px;padding:4px;font-size:11px;line-height:16px}.portal-content [aria-label=학생·학부모\ 계정]>nav{gap:2px 12px}.portal-content [aria-label=학생·학부모\ 계정]>nav button{min-height:30px;font-size:12px}@media print{.portal-viewport{height:auto;overflow:visible}.portal-shell{height:auto;display:block}.portal-content{height:auto;overflow:visible}}.portal-counseling-workspace>p,.portal-life-workspace>p{max-height:45px;margin:0;padding:4px 8px;font-size:11px;line-height:15px;overflow:auto}.portal-records{grid-template-rows:auto minmax(0,1fr);grid-template-columns:minmax(0,1fr) auto;gap:6px;display:grid}.portal-records>div:first-child{display:none}.portal-records>nav{grid-area:1/1;align-self:center}.portal-records>div:nth-of-type(2){grid-area:1/2;margin:0!important}.portal-records>section:last-child{grid-area:2/1/auto/-1}.portal-records:has(>[role=alert]){grid-template-rows:auto auto minmax(0,1fr)}.portal-records>[role=alert]{grid-area:2/1/auto/-1}.portal-records:has(>[role=alert])>section:last-child{grid-row:3}.portal-records>*{margin-block:0!important}.exam-workspace form,.portal-content :is(.exam-workspace,.portal-life-workspace,.portal-counseling-workspace,.portal-admin-exams-workspace){flex-wrap:nowrap!important}.portal-content .flex-col{flex-wrap:nowrap}body:not(:has(.students-viewport,.academy-home)):has(:is(.admin-viewport,main>div>section[aria-label=보고서\ 작성],main:not(.portal-viewport) form input[autocomplete=username])){flex-direction:column;height:100dvh;min-height:0;display:flex}body:not(:has(.students-viewport,.academy-home)):has(.admin-viewport)>.trial-banner{flex:none;max-height:18dvh;overflow:auto}body:not(:has(.students-viewport,.academy-home)) .admin-viewport,body:not(:has(.students-viewport,.academy-home)) main:has(>div>section[aria-label=보고서\ 작성]),body:not(:has(.students-viewport,.academy-home)) main:not(.portal-viewport):has(form input[autocomplete=username]){box-sizing:border-box;flex:1 1 0;min-width:0;max-height:100dvh;height:auto!important;min-height:0!important;padding:12px!important}body:not(:has(.students-viewport,.academy-home)) .admin-shell{min-width:0;height:100%;min-height:0}body:not(:has(.students-viewport,.academy-home)) .admin-shell>header{margin:0;padding-bottom:8px}body:not(:has(.students-viewport,.academy-home)) .admin-shell>footer{margin:0;padding:4px}body:not(:has(.students-viewport,.academy-home)) .admin-shell>:is(header,nav,p,section[aria-label=데이터\ 최신성],.students-refresh){min-width:0}body:not(:has(.students-viewport,.academy-home)) .students-shell{grid-template-rows:auto auto auto minmax(0,1fr) auto;grid-template-columns:minmax(250px,.8fr) minmax(0,2fr);gap:8px;display:grid}body:not(:has(.students-viewport,.academy-home)) .students-shell>:is(header,section[aria-label=데이터\ 최신성],.students-refresh,p,footer){grid-column:1/-1;margin:0}body:not(:has(.students-viewport,.academy-home)) .student-counts{display:none}body:not(:has(.students-viewport,.academy-home)) .student-editor{overscroll-behavior:contain;grid-area:4/1;min-width:0;min-height:0;margin:0;padding:12px;overflow:auto}body:not(:has(.students-viewport,.academy-home)) .student-directory{flex-direction:column;grid-area:4/2;min-width:0;min-height:0;padding:12px;display:flex;overflow:auto}body:not(:has(.students-viewport,.academy-home)) .directory-scroll{overscroll-behavior:contain;flex:120px;min-height:80px;overflow:auto}body:not(:has(.students-viewport,.academy-home)) .student-history-overlay{z-index:20;width:min(520px,100vw - 32px);max-height:70dvh;position:fixed;inset:auto 16px 16px auto;overflow:auto}body:not(:has(.students-viewport,.academy-home)) .attendance-shell{grid-template-rows:auto auto auto auto minmax(0,1fr);grid-template-columns:minmax(0,2fr) minmax(240px,1fr);gap:8px;display:grid}body:not(:has(.students-viewport,.academy-home)) .attendance-shell>:is(a,h1,p,nav,div:first-of-type){grid-column:1/-1;margin:0}body:not(:has(.students-viewport,.academy-home)) .attendance-shell>p{display:none}body:not(:has(.students-viewport,.academy-home)) .attendance-shell>nav{grid-row:3}body:not(:has(.students-viewport,.academy-home)) .attendance-shell>div:first-of-type{grid-row:4}body:not(:has(.students-viewport,.academy-home)) .attendance-workspace{flex-direction:column;grid-area:5/1;min-width:0;min-height:0;margin:0;padding:12px;display:flex;overflow:auto}body:not(:has(.students-viewport,.academy-home)) .attendance-history{grid-area:5/2;min-width:0;min-height:0;margin:0;padding:12px;overflow:auto}body:not(:has(.students-viewport,.academy-home)) .attendance-scroll{overscroll-behavior:contain;min-height:140px;overflow:auto}body:not(:has(.students-viewport,.academy-home)) .attendance-shell>details[open]{z-index:20;background:#fff;width:min(760px,100vw - 24px);max-height:75dvh;position:fixed;inset:80px 12px auto auto;overflow:auto}body:not(:has(.students-viewport,.academy-home)) .seat-shell{flex-direction:column;gap:8px;display:flex}body:not(:has(.students-viewport,.academy-home)) .seat-shell>div.mt-6{margin-top:0}body:not(:has(.students-viewport,.academy-home)) .seat-workspace{flex:1;grid-template-columns:minmax(0,1fr) minmax(250px,300px);gap:12px;min-height:0;display:grid}body:not(:has(.students-viewport,.academy-home)) .physical-layout{min-width:0;min-height:0;margin:0;overflow:auto}body:not(:has(.students-viewport,.academy-home)) .seat-tools{overscroll-behavior:contain;min-width:0;min-height:0;overflow:auto}body:not(:has(.students-viewport,.academy-home)) .simple-shell{grid-template-rows:auto minmax(100px,1fr) auto minmax(110px,1fr) auto auto;gap:8px;display:grid;overflow:visible}body:not(:has(.students-viewport,.academy-home)) .simple-shell>header{padding-bottom:8px}body:not(:has(.students-viewport,.academy-home)) .simple-shell>footer,body:not(:has(.students-viewport,.academy-home)) .simple-shell>h2,body:not(:has(.students-viewport,.academy-home)) .simple-shell>p{margin:0}body:not(:has(.students-viewport,.academy-home)) .dashboard-summary{min-height:0;margin:0;padding:12px;overflow:auto}body:not(:has(.students-viewport,.academy-home)) .dashboard-grid{overscroll-behavior:contain;align-content:start;min-height:0;margin:0;overflow:auto}body:not(:has(.students-viewport,.academy-home)) .dashboard-grid>a{min-height:130px;padding:16px}body:not(:has(.students-viewport,.academy-home)) .dashboard-grid>a:before{margin-bottom:4px}body:not(:has(.students-viewport,.academy-home)) main:has(>div>section[aria-label=보고서\ 작성])>div{grid-template-rows:auto auto auto auto auto minmax(0,1fr);grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:8px;height:100%;min-height:0;display:grid}body:not(:has(.students-viewport,.academy-home)) main:has(>div>section[aria-label=보고서\ 작성])>div>:is(a,h1,p,button){grid-column:1/-1;margin:0}body:not(:has(.students-viewport,.academy-home)) main:has(>div>section[aria-label=보고서\ 작성])>div>h1{grid-row:2}body:not(:has(.students-viewport,.academy-home)) main:has(>div>section[aria-label=보고서\ 작성])>div>section[aria-label=보고서\ 작성]{grid-area:6/1;min-width:0;min-height:0;padding:12px;overflow:auto}body:not(:has(.students-viewport,.academy-home)) main:has(>div>section[aria-label=보고서\ 작성])>div>section[aria-label="문서 다운로드 및 인쇄"]{grid-area:5/2;max-height:22dvh;margin:0;padding:8px;overflow:auto}body:not(:has(.students-viewport,.academy-home)) main:has(>div>section[aria-label=보고서\ 작성])>div>section[aria-label="성적분석 보고서 미리보기"]{grid-area:6/2;min-width:0;min-height:0;margin:0;padding:12px;overflow:auto}body:not(:has(.students-viewport,.academy-home)) main:has(>div>section[aria-label=보고서\ 작성])>div>p[role=status]{grid-area:6/2;overflow:auto}body:not(:has(.students-viewport,.academy-home)) main:not(.portal-viewport):has(form input[autocomplete=username])>div{overscroll-behavior:contain;min-height:0;max-height:100%;overflow:auto}@media (max-width:767px){body:not(:has(.students-viewport,.academy-home)) .students-shell{grid-template-rows:auto auto auto minmax(110px,.8fr) minmax(160px,1.2fr) auto;grid-template-columns:minmax(0,1fr)}body:not(:has(.students-viewport,.academy-home)) .student-editor{grid-area:4/1}body:not(:has(.students-viewport,.academy-home)) .student-directory{grid-area:5/1}body:not(:has(.students-viewport,.academy-home)) .student-directory>div,body:not(:has(.students-viewport,.academy-home)) .student-directory>nav{flex:none}body:not(:has(.students-viewport,.academy-home)) .students-shell>footer{grid-row:6}body:not(:has(.students-viewport,.academy-home)) .attendance-shell{grid-template-rows:auto auto auto auto minmax(130px,1.3fr) minmax(100px,.7fr);grid-template-columns:minmax(0,1fr)}body:not(:has(.students-viewport,.academy-home)) .attendance-workspace{grid-area:5/1}body:not(:has(.students-viewport,.academy-home)) .attendance-history{grid-area:6/1}body:not(:has(.students-viewport,.academy-home)) .seat-workspace{grid-template-rows:minmax(120px,1fr) minmax(100px,.7fr);grid-template-columns:minmax(0,1fr)}body:not(:has(.students-viewport,.academy-home)) .physical-layout{grid-row:1}body:not(:has(.students-viewport,.academy-home)) .seat-tools{grid-row:2}body:not(:has(.students-viewport,.academy-home)) .simple-shell{grid-template-rows:auto minmax(100px,.8fr) auto minmax(110px,1.2fr) auto auto}body:not(:has(.students-viewport,.academy-home)) .simple-shell>header>div{gap:8px}body:not(:has(.students-viewport,.academy-home)) main:has(>div>section[aria-label=보고서\ 작성])>div{grid-template-rows:auto auto auto auto minmax(100px,1fr) auto minmax(80px,.6fr);grid-template-columns:minmax(0,1fr)}body:not(:has(.students-viewport,.academy-home)) main:has(>div>section[aria-label=보고서\ 작성])>div>section[aria-label=보고서\ 작성]{grid-area:5/1}body:not(:has(.students-viewport,.academy-home)) main:has(>div>section[aria-label=보고서\ 작성])>div>section[aria-label="문서 다운로드 및 인쇄"]{grid-area:6/1}body:not(:has(.students-viewport,.academy-home)) main:has(>div>section[aria-label=보고서\ 작성])>div>:is(section[aria-label="성적분석 보고서 미리보기"],p[role=status]){grid-area:7/1}}body:not(:has(.students-viewport,.academy-home)):has(:is(.kiosk-admin-shell,.kiosk-screen,main.max-w-md.space-y-5,main>section[aria-label="퇴원자 정정 조회와 복구"])){flex-direction:column;height:100dvh;min-height:0;display:flex}body:not(:has(.students-viewport,.academy-home)) .kiosk-admin-shell,body:not(:has(.students-viewport,.academy-home)) .kiosk-screen,body:not(:has(.students-viewport,.academy-home)) main.max-w-md.space-y-5,body:not(:has(.students-viewport,.academy-home)) main:has(>section[aria-label="퇴원자 정정 조회와 복구"]){box-sizing:border-box;flex:1 1 0;min-width:0;max-height:100dvh;min-height:0!important;padding:12px!important}body:not(:has(.students-viewport,.academy-home)) .kiosk-admin-shell{flex-direction:column;gap:8px;width:100%;display:flex}body:not(:has(.students-viewport,.academy-home)) .kiosk-admin-shell>*{flex-shrink:0;margin:0}body:not(:has(.students-viewport,.academy-home)) .kiosk-admin-shell>header{padding:4px 0}body:not(:has(.students-viewport,.academy-home)) .kiosk-admin-workspace{flex:1 1 0;align-items:stretch;min-height:0}body:not(:has(.students-viewport,.academy-home)) .kiosk-admin-workspace>div{overscroll-behavior:contain;min-height:0;overflow:auto}body:not(:has(.students-viewport,.academy-home)) .kiosk-admin-advanced[open]{z-index:30;width:min(680px,100vw - 24px);max-height:70dvh;position:fixed;inset:100px 12px auto auto;overflow:auto}body:not(:has(.students-viewport,.academy-home)) main:has(>section[aria-label="퇴원자 정정 조회와 복구"]){flex-direction:column;gap:8px;display:flex}body:not(:has(.students-viewport,.academy-home)) main:has(>section[aria-label="퇴원자 정정 조회와 복구"])>:is(h1,p,a){flex:none;margin:0}body:not(:has(.students-viewport,.academy-home)) main>section[aria-label="퇴원자 정정 조회와 복구"]{flex:1;grid-template-rows:auto auto auto minmax(100px,1fr) auto minmax(60px,.4fr);gap:8px;min-height:0;margin:0}body:not(:has(.students-viewport,.academy-home)) section[aria-label="퇴원자 정정 조회와 복구"]>fieldset,body:not(:has(.students-viewport,.academy-home)) section[aria-label="퇴원자 정정 조회와 복구"]>section{overscroll-behavior:contain;min-height:0;overflow:auto}body:not(:has(.students-viewport,.academy-home)) section[aria-label="퇴원자 정정 조회와 복구"]>fieldset{align-content:start}body:not(:has(.students-viewport,.academy-home)) .simple-shell:has(>pre[role=status]){grid-template-rows:auto auto auto auto minmax(80px,1fr) minmax(100px,1fr)}body:not(:has(.students-viewport,.academy-home)) .simple-shell:has(>pre[role=status])>section,body:not(:has(.students-viewport,.academy-home)) .simple-shell>pre[role=status]{overscroll-behavior:contain;min-height:0;margin:0;overflow:auto}body:not(:has(.students-viewport,.academy-home)) main.max-w-md.space-y-5{overscroll-behavior:contain;flex-direction:column;gap:12px;display:flex;overflow:auto}body:not(:has(.students-viewport,.academy-home)) main.max-w-md.space-y-5>*{flex-shrink:0;margin:0}body:not(:has(.students-viewport,.academy-home)) .kiosk-screen{flex-direction:column;display:flex}body:not(:has(.students-viewport,.academy-home)) .kiosk-screen .kiosk-workspace{overscroll-behavior:contain;width:100%;min-height:0;max-height:100%;overflow:auto}@media (max-width:767px){body:not(:has(.students-viewport,.academy-home)) .kiosk-admin-workspace{grid-template-rows:minmax(120px,1fr) minmax(90px,.6fr) minmax(80px,.5fr);grid-template-columns:minmax(0,1fr);gap:8px}body:not(:has(.students-viewport,.academy-home)) .kiosk-admin-connection,body:not(:has(.students-viewport,.academy-home)) .kiosk-admin-open,body:not(:has(.students-viewport,.academy-home)) .kiosk-admin-settings{grid-area:auto/1}}body:not(:has(.students-viewport,.academy-home)) .kiosk-screen .kiosk-workspace{flex-direction:column;gap:6px;display:flex;position:relative;overflow:visible}body:not(:has(.students-viewport,.academy-home)) .kiosk-workspace>*{flex-shrink:0;margin-block:0!important}body:not(:has(.students-viewport,.academy-home)) .kiosk-workspace>h1{font-size:24px;line-height:30px}body:not(:has(.students-viewport,.academy-home)) .kiosk-workspace .kiosk-keypad{flex:176px;grid-template-rows:repeat(4,minmax(40px,1fr));gap:6px;min-height:176px}body:not(:has(.students-viewport,.academy-home)) .kiosk-workspace .kiosk-keypad button{min-height:40px;padding:4px;font-size:23px}body:not(:has(.students-viewport,.academy-home)) .kiosk-workspace .kiosk-keypad button.text-base{font-size:14px}body:not(:has(.students-viewport,.academy-home)) .kiosk-workspace .kiosk-actions{gap:6px}body:not(:has(.students-viewport,.academy-home)) .kiosk-workspace .kiosk-actions button{min-height:48px;padding:4px}body:not(:has(.students-viewport,.academy-home)) .kiosk-workspace>output{min-height:44px}body:not(:has(.students-viewport,.academy-home)) .kiosk-workspace>button{min-height:44px;padding:6px}body:not(:has(.students-viewport,.academy-home)) .kiosk-workspace .kiosk-recovery-help,body:not(:has(.students-viewport,.academy-home)) .kiosk-workspace .kiosk-result{max-height:46px;overflow:auto}body:not(:has(.students-viewport,.academy-home)) .kiosk-workspace .kiosk-safety[open]{z-index:15;background:#fff;border:1px solid #cbd5e1;border-radius:8px;max-height:40%;padding:10px;position:absolute;inset:70px 0 auto;overflow:auto}body:not(:has(.students-viewport,.academy-home)) .kiosk-pairing-panel{z-index:10;background:#fff;border:2px solid #cbd5e1;border-radius:12px;padding:12px;position:absolute;inset:110px 0 auto;box-shadow:0 8px 24px #0f172a22}body:not(:has(.students-viewport,.academy-home)) .kiosk-pairing-panel[open]{overscroll-behavior:contain;max-height:65%;overflow:auto}body:not(:has(.students-viewport,.academy-home)) .kiosk-pairing-panel>summary{background:#fff;padding:8px 0;position:sticky;top:-12px}body:not(:has(.students-viewport,.academy-home)) main.max-w-md.space-y-5{gap:8px;overflow:visible}body:not(:has(.students-viewport,.academy-home)) main.max-w-md.space-y-5>p{max-height:15dvh;overflow:auto}@media (max-height:740px){body:not(:has(.students-viewport,.academy-home)) .kiosk-workspace .kiosk-keypad{min-height:160px}body:not(:has(.students-viewport,.academy-home)) .kiosk-workspace .kiosk-input-help,body:not(:has(.students-viewport,.academy-home)) .kiosk-workspace .kiosk-step{font-size:12px;line-height:18px}}body:not(:has(.students-viewport,.academy-home)) .kiosk-screen .kiosk-workspace{flex-wrap:nowrap}body:not(:has(.students-viewport,.academy-home)) .kiosk-workspace .kiosk-safety:not([open]){padding:4px}body:has(.admin-settings-layout .admin-viewport):not(:has(.academy-home)){height:100dvh;min-height:0}.admin-settings-layout:has(.admin-viewport):not(:has(.academy-home)){flex:1;grid-template-rows:minmax(0,1fr);height:100%;min-height:0}.admin-settings-layout:has(.admin-viewport):not(:has(.academy-home))>.admin-settings-nav{height:100%;min-height:0}.admin-settings-content:has(.admin-viewport){flex-direction:column;height:100%;min-height:0;display:flex}.admin-settings-content>main.admin-viewport{overscroll-behavior:contain;flex:1;overflow:auto;min-height:0!important}body:has(.students-viewport)>.trial-banner{flex:none;max-height:18dvh;overflow:auto}main.students-viewport{overscroll-behavior:contain;flex:1 1 0;min-width:0;height:auto;overflow:auto;min-height:0!important}}@media screen and (max-width:760px){.admin-settings-layout:has(.admin-viewport):not(:has(.academy-home)){flex-direction:column;display:flex}.admin-settings-layout:has(.admin-viewport):not(:has(.academy-home))>.admin-settings-nav{flex:none;height:auto;max-height:34dvh;overflow:auto}.admin-settings-content:has(.admin-viewport){flex:1;height:auto}}@media screen{body:not(:has(.students-viewport,.academy-home)) main{--ui-surface:#fff;--ui-primary:#243b53;--ui-primary-hover:#1c3045;background-color:var(--background);color:var(--foreground)}body:not(:has(.students-viewport,.academy-home)) main :is(input:not([type=checkbox]):not([type=radio]):not([type=hidden]),select,textarea){border-color:var(--ui-border);border-radius:var(--ui-control-radius);color:var(--foreground);background-color:var(--ui-surface);font-family:inherit;font-size:14px;line-height:20px}body:not(:has(.students-viewport,.academy-home)) main :is(input:not([type=checkbox]):not([type=radio]):not([type=hidden]),select){height:var(--ui-control-height);min-height:var(--ui-control-height)}body:not(:has(.students-viewport,.academy-home)) main :is(input:not([type=checkbox]):not([type=radio]):not([type=hidden]),select,textarea):disabled{color:#596d82;background-color:var(--background)}body:not(:has(.students-viewport,.academy-home)) main :is(button,a,input,select,textarea):focus-visible{outline:2px solid var(--ui-accent);outline-offset:3px}body:not(:has(.students-viewport,.academy-home)) main button:not(.physical-seats button){border-radius:var(--ui-control-radius);font-family:inherit}body:not(:has(.students-viewport,.academy-home)) main button:disabled{opacity:.5;cursor:not-allowed}body:not(:has(.students-viewport,.academy-home)) main button:is([type=submit],.bg-blue-600,.bg-blue-700,.bg-teal-700,.bg-teal-800,.bg-slate-900,.bg-slate-950),body:not(:has(.students-viewport,.academy-home)) main button[aria-pressed=true]:not(.physical-seats button){background-color:var(--ui-primary);color:#fff;border-color:var(--ui-primary)}body:not(:has(.students-viewport,.academy-home)) main button:is([type=submit],.bg-blue-600,.bg-blue-700,.bg-teal-700,.bg-teal-800,.bg-slate-900,.bg-slate-950):enabled:hover,body:not(:has(.students-viewport,.academy-home)) main button[aria-pressed=true]:not(.physical-seats button):enabled:hover{background-color:var(--ui-primary-hover)}body:not(:has(.students-viewport,.academy-home)) main button[role=tab][aria-selected=true]{color:var(--ui-primary);background-color:#e6edf5;border-color:#c5d3e2}body:not(:has(.students-viewport,.academy-home)) main :is(section.bg-white,.academy-login-card,.portal-content,.portal-shell>header,.portal-shell>section,[role=dialog],dialog){border:1px solid var(--ui-border);border-radius:var(--ui-card-radius);box-shadow:var(--ui-card-shadow)}body:not(:has(.students-viewport,.academy-home)) main :is(h1,h2,h3){color:var(--foreground)}body:not(:has(.students-viewport,.academy-home)) main .portal-shell>header h1,body:not(:has(.students-viewport,.academy-home)) main h1{letter-spacing:-.035em;font-size:26px;font-weight:700;line-height:34px}body:not(:has(.students-viewport,.academy-home)) main .portal-shell>header{background:var(--ui-surface);color:var(--foreground);border-top:3px solid var(--ui-accent)}body:not(:has(.students-viewport,.academy-home)) main .portal-shell>header span{color:var(--foreground);border-color:var(--ui-border);background:#eef3f8}body:not(:has(.students-viewport,.academy-home)) main [aria-label="상담 예약 달력"] button{min-height:44px;padding:4px;font-size:12px;line-height:18px}body:not(:has(.students-viewport,.academy-home)) main [aria-label="상담 예약 달력"] button span{white-space:nowrap}body:not(:has(.students-viewport,.academy-home)) main .student-editor form>div{grid-column:1/-1}body:not(:has(.students-viewport,.academy-home)) main :is(.directory-scroll,.attendance-scroll) table{min-width:860px}body:not(:has(.students-viewport,.academy-home)) main :is(.directory-scroll,.attendance-scroll) :is(th,td){word-break:keep-all}body:not(:has(.students-viewport,.academy-home)) main table th{background-color:var(--background);color:#486078}body:not(:has(.students-viewport,.academy-home)) main [role=alert]{color:#854859;background-color:#faeff1}body:not(:has(.students-viewport,.academy-home)) main :is([role=alert],[role=status]){border-radius:var(--ui-control-radius)}@media (max-width:639px){body:not(:has(.students-viewport,.academy-home)) main .portal-shell>header h1,body:not(:has(.students-viewport,.academy-home)) main h1{font-size:20px;line-height:28px}body:not(:has(.students-viewport,.academy-home)) main .portal-shell>nav{grid-template-columns:repeat(2,minmax(0,1fr))}body:not(:has(.students-viewport,.academy-home)) main .portal-shell>nav button{word-break:keep-all;min-height:40px;font-size:13px;line-height:18px}body:not(:has(.students-viewport,.academy-home)) main :is(input:not([type=checkbox]):not([type=radio]):not([type=hidden]),select,textarea){font-size:16px}}body:has(.admin-nav-admin-mode,.student-account-layout,.kiosk-admin-shell,main>section[aria-label="퇴원자 정정 조회와 복구"]){--admin-space-1:4px;--admin-space-2:8px;--admin-space-3:12px;--admin-space-4:16px;--admin-text:14px;--admin-text-small:13px;--admin-heading:26px;--ui-control-height:40px;--ui-control-radius:10px}body:has(.admin-nav-admin-mode,.student-account-layout,.kiosk-admin-shell,main>section[aria-label="퇴원자 정정 조회와 복구"]) main{font-size:var(--admin-text);color:var(--foreground);line-height:1.55}body:has(.admin-nav-admin-mode,.student-account-layout,.kiosk-admin-shell,main>section[aria-label="퇴원자 정정 조회와 복구"]) main :is(h1,h2,h3):not(:is(.weekly-paper *,.grade-sheet-viewer *,.workspace-help-dialog *)){color:var(--foreground);text-wrap:balance}body:has(.admin-nav-admin-mode,.student-account-layout,.kiosk-admin-shell,main>section[aria-label="퇴원자 정정 조회와 복구"]) main h1:not(:is(.weekly-paper *,.grade-sheet-viewer *,.workspace-help-dialog *)){font-size:var(--admin-heading);letter-spacing:-.03em;font-weight:750;line-height:1.3}body:has(.admin-nav-admin-mode,.student-account-layout,.kiosk-admin-shell,main>section[aria-label="퇴원자 정정 조회와 복구"]) main h2:not(:is(.physical-seats *,.weekly-paper *,.grade-sheet-viewer *,.workspace-help-dialog *)){font-size:18px;font-weight:700;line-height:1.4}body:has(.admin-nav-admin-mode,.student-account-layout,.kiosk-admin-shell,main>section[aria-label="퇴원자 정정 조회와 복구"]) main :is(button,input,select,textarea){font-family:inherit}body:has(.admin-nav-admin-mode,.student-account-layout,.kiosk-admin-shell,main>section[aria-label="퇴원자 정정 조회와 복구"]) main button:not(:is(.physical-seats *,.seat-tools *,.weekly-paper *,.workspace-help-dialog *)){border-radius:var(--ui-control-radius);min-height:40px;font-size:var(--admin-text);white-space:normal;overflow-wrap:anywhere;font-weight:600;line-height:1.4}body:has(.admin-nav-admin-mode,.student-account-layout,.kiosk-admin-shell,main>section[aria-label="퇴원자 정정 조회와 복구"]) main :is(input:not([type=checkbox]):not([type=radio]):not([type=hidden]),select):not(.weekly-paper *){min-height:var(--ui-control-height);border-radius:var(--ui-control-radius);font-size:var(--admin-text);line-height:20px}body:has(.admin-nav-admin-mode,.student-account-layout,.kiosk-admin-shell,main>section[aria-label="퇴원자 정정 조회와 복구"]) main :is(input,select,textarea):disabled{cursor:not-allowed}body:has(.admin-nav-admin-mode,.student-account-layout,.kiosk-admin-shell,main>section[aria-label="퇴원자 정정 조회와 복구"]) main :is(a,button,input,select,textarea,summary):focus-visible{outline:2px solid var(--ui-accent,#2d8c82);outline-offset:3px}body:has(.admin-nav-admin-mode,.student-account-layout,.kiosk-admin-shell,main>section[aria-label="퇴원자 정정 조회와 복구"]) main :is(.workspace-title-row,.grade-card>header,.message-heading,.academy-home-section-heading){gap:var(--admin-space-2) var(--admin-space-3);flex-wrap:wrap;min-width:0}body:has(.admin-nav-admin-mode,.student-account-layout,.kiosk-admin-shell,main>section[aria-label="퇴원자 정정 조회와 복구"]) main .workspace-title-row>:is(h1,h2,h3){margin:0}body:has(.admin-nav-admin-mode,.student-account-layout,.kiosk-admin-shell,main>section[aria-label="퇴원자 정정 조회와 복구"]) main :is(.grade-card,.message-card,.student-directory,.dashboard-work){border-color:var(--ui-border,#dce4ed);border-radius:var(--ui-card-radius,14px)}body:has(.admin-nav-admin-mode,.student-account-layout,.kiosk-admin-shell,main>section[aria-label="퇴원자 정정 조회와 복구"]) main :is(.grade-admin-table-scroll,.message-history,.directory-scroll,.notification-list){scrollbar-gutter:stable;overscroll-behavior:contain}body:has(.admin-nav-admin-mode,.student-account-layout,.kiosk-admin-shell,main>section[aria-label="퇴원자 정정 조회와 복구"]) main table:not(:is(.weekly-paper *,.grade-sheet-viewer *)){font-size:var(--admin-text-small);line-height:1.5}body:has(.admin-nav-admin-mode,.student-account-layout,.kiosk-admin-shell,main>section[aria-label="퇴원자 정정 조회와 복구"]) main table:not(:is(.weekly-paper *,.grade-sheet-viewer *)) th{text-align:left;font-weight:650}body:has(.admin-nav-admin-mode,.student-account-layout,.kiosk-admin-shell,main>section[aria-label="퇴원자 정정 조회와 복구"]) main :is([role=status],[role=alert]){overflow-wrap:anywhere;line-height:1.6}@media (max-width:767px){body:has(.admin-nav-admin-mode,.student-account-layout,.kiosk-admin-shell,main>section[aria-label="퇴원자 정정 조회와 복구"]){--admin-heading:22px}body:has(.admin-nav-admin-mode,.student-account-layout,.kiosk-admin-shell,main>section[aria-label="퇴원자 정정 조회와 복구"]) main :is(input:not([type=checkbox]):not([type=radio]):not([type=hidden]),select,textarea):not(.weekly-paper *){font-size:16px}body:has(.admin-nav-admin-mode,.student-account-layout,.kiosk-admin-shell,main>section[aria-label="퇴원자 정정 조회와 복구"]) main .workspace-title-row{align-items:flex-start}body:has(.admin-nav-admin-mode,.student-account-layout,.kiosk-admin-shell,main>section[aria-label="퇴원자 정정 조회와 복구"]) main .workspace-title-row>.workspace-help-button{margin-left:auto}}body:has(.admin-nav-admin-mode,.student-account-layout,.kiosk-admin-shell) main table:not(:is(.weekly-paper *,.grade-sheet-viewer *,.directory-scroll *,.attendance-scroll *,.attendance-history-table)) :is(th,td){vertical-align:top;border-bottom:1px solid var(--ui-border,#dce4ed);padding:8px 12px}}body .dashboard-heading{flex:none;grid-template-columns:minmax(0,1fr) auto;align-items:center;min-width:0;margin-bottom:12px;gap:6px 12px!important;display:grid!important}body .dashboard-heading>.dashboard-return{order:-1;grid-column:1/-1;justify-self:start}body .dashboard-heading h1{letter-spacing:-.03em;font-weight:750;font-size:var(--admin-heading,28px)!important;margin:0!important;line-height:1.3!important}body .dashboard-return{color:#243b53;white-space:nowrap;align-items:center;width:fit-content;min-height:36px;font-size:14px;font-weight:500;text-decoration:none;display:inline-flex}body .dashboard-heading>p{grid-column:1/-1}body .admin-dashboard-link{color:#243b53;background:#fff;border:1px solid #dce4ed;border-radius:8px;align-items:center;min-height:44px;margin-bottom:8px;padding:8px 12px;font-size:14px;font-weight:650;display:flex}body :is(.admin-nav-life-submenu,.admin-nav-student-management-submenu){border-left:2px solid #dce4ed;gap:2px;margin:4px 0 8px 14px;padding-left:16px;display:grid}body :is(.admin-nav-life-submenu,.admin-nav-student-management-submenu) a{min-height:40px;font-size:14px;padding:8px!important}body .life-management-tabs{flex-wrap:wrap;flex:none;gap:8px;display:flex}body .life-management-tabs :is(a,button){color:#243b53;background:#fff;border:1px solid #cbd5e1;border-radius:8px;align-items:center;min-height:44px;padding:8px 14px;font-size:14px;text-decoration:none;display:inline-flex}body .life-management-tabs :is([aria-current=page],[aria-pressed=true]){color:#fff;background:#243b53;border-color:#243b53;font-weight:700}body .consultation-context{color:#486078;flex:none;margin:0;font-size:13px}body .consultation-workspace>header{display:grid!important}body .dashboard-work-select{flex-wrap:wrap;align-items:center;gap:8px;font-size:14px;font-weight:650;display:flex}body .dashboard-work-select select{background:#fff;border:1px solid #cbd5e1;border-radius:8px;max-width:100%;min-height:44px;padding:8px 12px}body:has(.academy-home) .academy-home,body:has(.academy-home) .admin-settings-content{min-height:0;overflow:auto}body .academy-home-heading{flex-wrap:wrap}body .students-viewport .student-directory .student-actions-cell>div>button{border:0;border-radius:10px;min-height:44px;padding:8px 12px;font-size:14px;font-weight:650}body .students-viewport .student-directory .student-actions-cell .student-permanent-delete{color:#96435a!important;background:#fdf0f1!important;border:0!important}body .attendance-shell>.dashboard-heading{grid-area:1/1/auto/-1;margin:0}body .attendance-history-matches{gap:6px;margin-top:8px;display:grid}body .attendance-history-matches button{text-align:left;background:#fff;border:1px solid #cbd5e1;border-radius:8px;min-height:44px;padding:8px}body .attendance-history-matches button[aria-pressed=true]{background:#e1f3ec;border-color:#2d8c82}@media (min-width:768px){body .attendance-scroll .attendance-register{table-layout:fixed;width:100%;min-width:0!important}body .attendance-register :is(th,td){overflow-wrap:anywhere;font-size:12px;box-shadow:none!important;white-space:normal!important;padding:8px 5px!important;position:static!important}body .attendance-register th{text-align:left}body .attendance-register :is(th,td):nth-child(5),body .attendance-register :is(th,td):nth-child(6){text-align:center}body .attendance-register .attendance-time-cell{font-size:12px;white-space:nowrap!important;padding:8px 3px!important}body .attendance-col-name{width:9%}body .attendance-col-division{width:6%}body .attendance-col-school{width:8%}body .attendance-col-grade{width:5%}body .attendance-col-room,body .attendance-col-seat,body .attendance-col-status{width:6%}body .attendance-col-time{width:8%}body .attendance-col-notification{width:12%}body .attendance-col-action{width:26%}body .attendance-scroll .attendance-register button{overflow-wrap:anywhere;min-width:0;max-width:100%;min-height:44px;white-space:normal!important;padding:6px!important}body .attendance-register .attendance-row-actions,body .attendance-register .attendance-row-details>div{gap:4px}}@media (max-width:1000px){body .admin-menu-entry{min-width:0}body .dashboard-heading h1{font-size:24px!important}}@media (max-width:1000px) and (max-height:520px),(max-width:767px){body:has(.consultation-workspace) .admin-menu-entry{display:contents}body:has(.consultation-workspace) .admin-nav-life-submenu{display:none}}@media (max-width:600px){body .dashboard-heading{grid-template-columns:minmax(0,1fr)}body .dashboard-work-select{width:100%}body .dashboard-work-select select{flex:1;min-width:0}}body .admin-settings-content>:is(main,div>main):not(.academy-home),body main.consultation-workspace,body main.grades-page,body main.messages-page{padding:16px!important}body .admin-settings-content :is(.admin-shell,.settings-page-inner),body main.consultation-workspace{margin-left:0;margin-right:0;max-width:none!important}body:not(:has(.students-viewport,.academy-home)) .attendance-shell{grid-template-rows:auto auto auto minmax(0,1fr) auto}body:not(:has(.students-viewport,.academy-home)) .attendance-shell>nav[aria-label="학생·좌석 업무 이동"]{grid-row:2}body:not(:has(.students-viewport,.academy-home)) .attendance-shell>div:first-of-type{grid-row:3}body:not(:has(.students-viewport,.academy-home)) .attendance-shell>.attendance-history,body:not(:has(.students-viewport,.academy-home)) .attendance-shell>.attendance-workspace{grid-row:4}body:not(:has(.students-viewport,.academy-home)) .attendance-shell>nav[aria-label="출결 하단 이동"]{grid-area:5/1/auto/-1;margin:0;padding:4px 10px;position:static}@media (max-width:767px){body:not(:has(.students-viewport,.academy-home)) .attendance-shell{grid-template-rows:auto auto auto minmax(240px,1.5fr) minmax(180px,1fr) auto;grid-template-columns:minmax(0,1fr)}body:not(:has(.students-viewport,.academy-home)) .attendance-shell>.attendance-workspace{grid-area:4/1}body:not(:has(.students-viewport,.academy-home)) .attendance-shell>.attendance-history{grid-area:5/1}body:not(:has(.students-viewport,.academy-home)) .attendance-shell>nav[aria-label="출결 하단 이동"]{grid-row:6}}body .admin-settings-content>main.messages-page{align-self:start;width:100%;max-width:none!important;margin:0!important}.workspace-title-row{justify-content:space-between;align-items:center;gap:8px;display:flex}.dashboard-shortcuts-dialog,.workspace-help-dialog{color:#243b53;background:#fff;border:1px solid #cbd5e1;border-radius:14px;width:min(34rem,100vw - 24px);max-height:calc(100dvh - 24px);margin:auto;padding:20px;overflow:auto}.dashboard-shortcuts-dialog h2,.workspace-help-dialog h2{margin-bottom:12px;font-size:22px;font-weight:700}.workspace-help-dialog p{margin:10px 0;line-height:1.6}.dashboard-shortcuts-dialog::backdrop,.workspace-help-dialog::backdrop{background:#243b5355}.academy-home-section-heading>button,.dashboard-shortcuts-dialog button,.workspace-help-dialog>button{background:#fff;border:1px solid #94a3b8;border-radius:8px;min-height:40px;padding:8px 12px}.dashboard-shortcuts-options{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin:16px 0;display:grid}.dashboard-shortcuts-options label{align-items:center;gap:8px;min-height:40px;display:flex}.dashboard-shortcuts-dialog li{align-items:center;gap:8px;margin:8px 0;display:flex}.dashboard-shortcuts-dialog li>span{flex:1}.dashboard-shortcuts-dialog footer{gap:8px;margin-top:16px;display:flex}.seat-state-legend{gap:12px;margin:8px 0;font-size:13px;display:flex}.seat-state-legend span{border:2px solid #94a3b8;border-radius:6px;padding:4px 10px}.seat-state-legend .seat-legend-occupied{color:#fff;background:#175f58;border-color:#175f58}body .seats-viewport .physical-seats button[data-occupied=false],body .seats-viewport .seat-tools button[data-occupied=false]{opacity:1;color:#243b53!important;background:#fff!important;border:2px solid #94a3b8!important}body .seats-viewport .physical-seats button[data-occupied=true],body .seats-viewport .seat-tools button[data-occupied=true]{opacity:1;color:#fff!important;background:#175f58!important;border:2px solid #0e4944!important}body .seats-viewport .physical-seats button[aria-pressed=true]{outline-offset:2px;outline:3px solid #d28a13}body .seats-viewport .physical-seats button{grid-template-columns:minmax(28px,1fr) minmax(0,3fr);height:100%;min-height:48px}body .seats-viewport .physical-seats .seat-number{font-weight:750;font-size:18px!important;line-height:22px!important}body .seats-viewport .physical-seats .seat-student-name{font-weight:700;font-size:15px!important;line-height:19px!important}body .seats-viewport .physical-seats .seat-today{font-size:11px;line-height:14px;color:inherit!important}body .seats-viewport .seat-tools button[data-occupied]>span:first-child{font-size:19px}body .seats-viewport .seat-tools button[data-occupied]>span:nth-child(2){font-size:16px;font-weight:650}body .attendance-notification-summary{background:#f5f7fa;border:1px solid #dce4ed;border-radius:8px;margin:6px 0;padding:6px 10px;font-size:13px}.attendance-notification-summary>summary{cursor:pointer;min-height:28px;line-height:28px}@media (min-width:768px){body .attendance-scroll .attendance-register button{font-size:12px;line-height:18px;min-height:32px!important;padding:4px 6px!important}body .attendance-register .attendance-row-actions{gap:3px}body .attendance-register .attendance-row-details>summary{min-height:28px;line-height:28px}}body .seats-viewport .physical-seats .seat-today{white-space:nowrap;text-overflow:ellipsis;overflow:hidden}body .seats-viewport .physical-seats button[data-occupied=true],body .seats-viewport button[data-seat-state=occupied]{color:#243b53!important;box-shadow:none!important;background:#e6edf2!important;border:2px solid #8c9fad!important}body .seat-legend-occupied{color:#243b53!important;background:#e6edf2!important;border-color:#8c9fad!important}body .seats-viewport button[data-occupied=true] span{color:inherit!important}body .dashboard-heading{position:relative;padding-right:130px!important}body .dashboard-heading .workspace-refresh{color:#243b53;background:#fff;border:1px solid #cbd5df;border-radius:8px;min-height:40px;padding:8px 14px}body .attendance-delivery{color:#52616f;background:#f0f2f4;border-radius:5px;padding:3px 6px;display:inline-block}body .attendance-delivery[data-sent=true]{color:#28644c;background:#e0f0e7}body .academy-home-overview{min-height:130px;max-height:180px;margin:12px 0}body .academy-home-art{height:160px;min-height:0;overflow:hidden}body .academy-home-art img{object-fit:cover;height:100%}body .academy-home-workspaces{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}body .academy-home-workspace{-webkit-user-select:none;user-select:none;touch-action:pan-y;min-height:116px;padding:16px}body .academy-home-workspace[data-dragging=true]{opacity:.7;touch-action:none;outline:2px solid #8b9fb3;box-shadow:0 6px 18px #243b5320}body .academy-home-inner{gap:12px}@media (max-width:700px){body .academy-home-workspaces{grid-template-columns:repeat(2,minmax(0,1fr))}body .academy-home-art{display:none}body .academy-home-overview{max-height:120px}body .academy-home-workspace{min-height:105px;padding:12px}}body .seats-viewport button[data-occupied=true]{color:#243b53!important;background:#e6edf2!important;border:2px solid #8c9fad!important}body .seats-viewport .seat-attendance-badge{white-space:normal;overflow-wrap:anywhere;border:1px solid #d2dae1;border-radius:6px;justify-content:center;align-items:center;gap:4px;max-width:100%;min-height:28px;margin-top:5px;padding:4px 7px;line-height:1.25;color:#52616f!important;background:#f3f5f7!important;font-size:13px!important;font-weight:650!important;display:inline-flex!important}body .seat-legend-present,body .seats-viewport button[data-occupied=true] .seat-attendance-badge[data-state=present]{color:#164d37!important;background:#b4d5c2!important;border:1px solid #8cbaa0!important}body .seats-viewport button[data-occupied=true] .seat-attendance-badge[data-state=present] span{color:#164d37!important}body .seat-legend-present{border-radius:6px;align-items:center;padding:4px 8px;font-size:13px;font-weight:650;display:inline-flex}body .academy-home{padding:16px}body .academy-home-inner{width:100%;max-width:none}body .seats-viewport button[data-occupied=true] .seat-attendance-badge{color:#334155!important;background:#f3f5f7!important;border-color:#cbd5e1!important}body .seats-viewport button[data-occupied=true] .seat-attendance-badge[data-state=present]{color:#164d37!important;background:#b4d5c2!important;border-color:#8cbaa0!important}body .seats-viewport button[data-occupied=true] .seat-attendance-badge[data-state=outside]{color:#72562a!important;background:#fbf0da!important;border-color:#cdb78d!important}body .seats-viewport button[data-occupied=true] .seat-attendance-badge[data-state=left]{color:#fff!important;background:#354b65!important;border-color:#293c53!important}body .seats-viewport button[data-occupied=true] .seat-attendance-badge[data-state=early]{color:#fff!important;background:#72516d!important;border-color:#5b3f56!important}body .seats-viewport .seat-attendance-lamp{box-sizing:border-box;vertical-align:middle;border:1px solid #12562c;border-radius:50%;flex:none;width:10px;height:10px;box-shadow:0 0 0 1px #12562c55;color:#5dff63!important;background:#5dff63!important;min-width:0!important;min-height:0!important;margin:0!important;padding:0!important;font-size:0!important;line-height:0!important;display:inline-block!important}body .seats-viewport .seat-attendance-lamp[data-state=absent]{border-color:#64748b;box-shadow:0 0 0 1px #64748b33;color:#94a3b8!important;background:#94a3b8!important}body .seats-viewport .seat-attendance-lamp[data-state=outside]{border-color:#7a4d08;box-shadow:0 0 0 1px #7a4d0855;color:#ffad21!important;background:#ffad21!important}body .seats-viewport .seat-attendance-lamp[data-state=early]{border-color:#4e2947;box-shadow:0 0 0 1px #4e294755;color:#ffb4ee!important;background:#ffb4ee!important}body .seats-viewport .seat-attendance-lamp[data-state=left]{border-color:#173954;box-shadow:0 0 0 1px #17395466;color:#75d8ff!important;background:#75d8ff!important}body :is(.admin-nav-life-submenu,.admin-nav-student-management-submenu) .admin-nav-icon{flex:none;justify-content:center;align-items:center;width:22px;height:22px;display:inline-flex}body .unassigned-gender-filter{flex:none;gap:6px;display:flex}body .unassigned-gender-filter button{color:#334155;background:#fff;border:1px solid #cbd5e1;border-radius:8px;flex:1;min-height:36px;padding:6px 10px;font-size:13px}body .unassigned-gender-filter button[aria-pressed=true]{color:#214c3c;background:#e1eee8;border-color:#739d89;font-weight:700}@media (min-width:768px){body .attendance-register .attendance-room-cell{word-break:keep-all;overflow-wrap:normal;white-space:nowrap!important}body .attendance-register .attendance-col-room{width:76px}}body .attendance-history-table :is(th,td),body .attendance-register :is(th,td){vertical-align:middle;text-align:center!important}body .attendance-register .attendance-code-cell{font-variant-numeric:tabular-nums;white-space:nowrap}body .attendance-register .attendance-status-cell>span{margin-inline:auto}body .attendance-register .attendance-assessment-tags{justify-content:center}@media (min-width:768px){body .attendance-register :is(th,td){word-break:keep-all;overflow-wrap:normal;padding-inline:4px!important}body .attendance-register :is(th,.attendance-name-cell,.attendance-code-cell,.attendance-short-cell){white-space:nowrap!important}body .attendance-register .attendance-col-name{width:8%}body .attendance-register .attendance-col-code{width:7%}body .attendance-register .attendance-col-division{width:5%}body .attendance-register .attendance-col-school{width:7%}body .attendance-register .attendance-col-grade{width:4%}body .attendance-register .attendance-col-room{width:7%}body .attendance-register .attendance-col-seat{width:4%}body .attendance-register .attendance-col-status{width:6%}body .attendance-register .attendance-col-time{width:8%}body .attendance-register .attendance-col-notification{width:14%}body .attendance-register .attendance-col-action{width:22%}body .attendance-register .attendance-row-actions,body .attendance-register .attendance-row-details>div{justify-content:center}body .attendance-register .attendance-notification-cell{word-break:keep-all;overflow-wrap:normal}}@media (max-width:767px){body .attendance-scroll tbody .attendance-code-cell{display:block}}body .attendance-date-control{align-items:center;line-height:1.4;display:flex}body .attendance-date-control>span{align-self:stretch;align-items:center;display:inline-flex}body .attendance-register tbody .attendance-name-cell{background:inherit!important}body .attendance-date-control>input{align-self:center;margin-top:0}body .workspace-refresh{box-sizing:border-box;white-space:nowrap;color:#243b53;background:#fff;border:1px solid #cbd5df;border-radius:8px;justify-content:center;align-items:center;width:104px;min-width:104px;height:44px;min-height:44px;padding:8px 12px;font-size:14px;line-height:20px;display:inline-flex}body .dashboard-heading .workspace-refresh{position:absolute;top:28px;right:0}body .seat-shell>div:first-child>.seat-heading{width:100%}body .student-directory table :is(th,td){vertical-align:middle;text-align:center!important}body .student-directory .student-primary-cell button{text-align:center}body .directory-output-pdf-help{flex-wrap:nowrap;align-items:center;gap:8px;max-width:100%;display:inline-flex}body .attendance-history-heading{width:100%}body .workspace-help-feature-list{margin:0;padding-left:20px;list-style:outside}body .workspace-help-feature-list li{margin:8px 0;line-height:1.6}body .admin-nav-category{cursor:default;border-radius:9px;align-items:center;gap:12px;min-height:52px;padding:10px 12px;font-size:16px;font-weight:650;line-height:1.4;display:flex}body .admin-nav-category[data-active=true]{color:#155f57;background:#dff1e9;box-shadow:inset 4px 0 #2d8c82}@media (max-width:1000px){body .admin-nav-category{gap:8px;min-height:48px;padding:8px;font-size:13px}}body .attendance-live-state{white-space:nowrap;border-radius:7px;justify-content:center;align-items:center;min-height:28px;padding:4px 7px;font-weight:700;display:inline-flex}body .attendance-live-state[data-attendance-state=arrived]{color:#145638;background:#d9eddf}body .attendance-live-state[data-attendance-state=outside]{color:#72562a;background:#fbf0da}body .attendance-live-state[data-attendance-state=returned]{color:#21547e;background:#e0edf8}body .attendance-live-state[data-attendance-state=left]{color:#fff;background:#354b65}body .attendance-live-state[data-attendance-state=early]{color:#fff;background:#72516d}body .attendance-live-state[data-attendance-state=unknown]{color:#52616f;background:#f0f2f4}body .attendance-register .attendance-row-actions>button.attendance-arrival-action,body .attendance-register .attendance-row-actions>button.attendance-arrival-action:enabled:hover{color:#295777;background:#dbe8f3;border-color:#0000}body .attendance-register .attendance-row-actions>button.attendance-departure-action,body .attendance-register .attendance-row-actions>button.attendance-departure-action:enabled:hover{color:#893d53;background:#f1dce2;border-color:#0000}body .attendance-register .attendance-row-actions>button:is(.attendance-arrival-action,.attendance-departure-action):disabled{color:#526779;opacity:1;cursor:not-allowed;background:#e5ecf2}@media (pointer:coarse){body .attendance-scroll .attendance-register button{min-width:44px;min-height:44px!important}body .attendance-register .attendance-row-details>summary{min-height:44px;line-height:44px}}.seat-state-legend{flex-wrap:wrap;align-items:center;gap:6px}.seat-state-legend .seat-legend-status{align-items:center;gap:5px;font-size:13px;font-weight:650;display:inline-flex}.seat-legend-status[data-state=outside]{color:#72562a;background:#fbf0da;border-color:#cdb78d}.seat-legend-status[data-state=early]{color:#fff;background:#72516d;border-color:#5b3f56}.seat-legend-status[data-state=left]{color:#fff;background:#354b65;border-color:#293c53}body .workspace-action{border:1px solid var(--ui-border,#cbd5df);color:#243b53;white-space:nowrap;background:#fff;border-radius:8px;justify-content:center;align-items:center;gap:6px;min-height:44px;padding:8px 12px;font-weight:650;display:inline-flex}body .students-shell .dashboard-heading:has(.roster-import-trigger){padding-right:234px!important}body .students-shell .student-header-actions:has(.roster-import-trigger){align-items:center;gap:8px;display:flex;position:absolute;top:28px;right:0}body .students-shell .student-header-actions:has(.roster-import-trigger)>button{white-space:nowrap;flex:none;width:104px;height:44px;min-height:44px;padding-inline:8px;position:static}body .student-header-actions>p[role=alert]{z-index:1;background:#fff;position:absolute;inset:100% 0 auto auto}body button:is(.workspace-refresh,.refresh-with-icon){white-space:nowrap;justify-content:center;align-items:center;gap:5px;display:inline-flex}body button:is(.workspace-refresh,.refresh-with-icon):before{content:"";background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23243b53' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M20 10a8 8 0 1 0-.8 6M20 4v6h-6'/%3E%3C/svg%3E") 50%/contain no-repeat;flex:none;width:15px;height:15px}body .roster-import-dialog{width:min(830px,100vw - 24px);max-height:calc(100dvh - 24px);margin:auto;overflow:auto}body .file-type-icon{vertical-align:middle;flex:none;margin-right:5px;display:inline-block}body .workspace-action>.file-type-icon{margin-right:0}@media (max-width:600px){body .students-shell .dashboard-heading:has(.roster-import-trigger){grid-template-columns:minmax(0,1fr) auto auto;padding-right:0!important}body .students-shell .student-header-actions:has(.roster-import-trigger){grid-area:3/2/auto/-1;justify-self:end;position:static}}body .messages-heading .message-delivery-status{margin:0;font-size:13px}body .message-tabs{background:#fff;border:1px solid #dce4ed;border-radius:10px;flex-wrap:wrap;gap:8px;padding:8px;display:flex}body .message-tabs button{min-height:44px;padding:8px 14px}body .message-tabs button[aria-pressed=true]{color:#fff;background:#243b53;border-color:#243b53}body .message-completion{width:min(420px,100vw - 24px);margin:auto;padding:18px;inset:0}body .message-completion form{justify-content:flex-end;margin-top:12px;display:flex}body button.workspace-help-button{color:#334155;font:inherit;white-space:nowrap;cursor:pointer;background:#f8fafc;border:1px solid #cbd5e1;border-radius:10px;flex:none;justify-content:center;align-items:center;gap:6px;font-size:13px;font-weight:600;line-height:20px;display:inline-flex;width:44px!important;min-width:44px!important;max-width:44px!important;height:44px!important;min-height:44px!important;padding:0!important}body button.workspace-help-button>span{display:none!important}.workspace-help-button svg{color:#8a6700;flex:none}.workspace-help-button:hover{background:#fff8db;border-color:#d8c57d}.workspace-help-button:focus-visible,.workspace-help-dialog a:focus-visible,.workspace-help-dialog button:focus-visible{outline-offset:3px;outline:2px solid #2d8c82}.workspace-help-dialog{box-sizing:border-box;color:#243b53;background:#fff;border:1px solid #cbd5e1;border-radius:16px;width:min(560px,100vw - 32px);max-width:calc(100vw - 32px);max-height:calc(100dvh - 32px);margin:auto;padding:0;font-size:15px;line-height:1.7;position:fixed;inset:0;overflow:hidden;box-shadow:0 20px 64px #0f172a33}.workspace-help-dialog[open]{flex-direction:column;display:flex}.workspace-help-dialog::backdrop{background:#0f172a66}.workspace-help-dialog .workspace-help-heading{border-bottom:1px solid #e2e8f0;flex:none;margin:0;padding:18px 20px 14px}.workspace-help-dialog .workspace-help-heading h2{overflow-wrap:anywhere;margin:0;font-size:18px;font-weight:700;line-height:1.45}.workspace-help-dialog .workspace-help-content{overscroll-behavior:contain;overflow-wrap:anywhere;min-width:0;min-height:0;padding:16px 20px;overflow:auto}.workspace-help-content>:first-child{margin-top:0}.workspace-help-content>:last-child{margin-bottom:0}.workspace-help-content :is(p,ul,ol){margin-block:0 12px}.workspace-help-content :is(ul,ol){padding-left:22px}.workspace-help-content ul{list-style-type:disc}.workspace-help-content ol{list-style-type:decimal}.workspace-help-content :is(pre,table){max-width:100%}.workspace-help-content pre{white-space:pre-wrap}.workspace-help-dialog .workspace-help-actions{background:#f8fafc;border-top:1px solid #e2e8f0;flex:none;justify-content:flex-end;margin:0;padding:12px 20px;display:flex}.workspace-help-dialog .workspace-help-actions button{color:#fff;min-width:72px;min-height:40px;font:inherit;cursor:pointer;background:#243b53;border:1px solid #243b53;border-radius:8px;padding:7px 16px;font-size:14px;font-weight:600}@media (max-height:480px),(max-width:480px){.workspace-help-dialog{border-radius:12px;width:calc(100vw - 16px);max-width:calc(100vw - 16px);max-height:calc(100dvh - 16px)}.workspace-help-dialog .workspace-help-content,.workspace-help-dialog .workspace-help-heading{padding:12px 16px}.workspace-help-dialog .workspace-help-actions{padding:10px 16px}}@media print{.workspace-help-button,.workspace-help-dialog{display:none!important}}body:has(.admin-settings-layout) main:not(.students-viewport) :where(button):not(:where(.physical-seats *,.seat-tools *,.weekly-paper *,.kiosk-screen *,.kiosk-app *)){box-sizing:border-box;border-style:solid;border-width:1px;border-color:var(--ui-border,#c6d4e1);border-radius:var(--ui-control-radius,9px)}body:has(.admin-settings-layout) main :where(a[role=button],a.summary-processing-open,a.grade-action-button){box-sizing:border-box;border:1px solid var(--ui-border,#c6d4e1);border-radius:var(--ui-control-radius,9px);min-height:40px;color:var(--ui-primary,#243b53);background:#f4f7fa;justify-content:center;align-items:center;padding:6px 12px;font-weight:650;text-decoration:none;display:inline-flex}body{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Apple SD Gothic Neo,Noto Sans KR,sans-serif}:where(a,button,input,select,textarea,[tabindex]):focus-visible{outline-offset:3px;outline:2px solid #2d8c82}:where(input,select,textarea){min-width:0}@media (prefers-reduced-motion:reduce){*,:after,:before{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important}}@media (min-width:1024px) and (min-height:650px){.admin-viewport{height:100dvh;min-height:0;padding:16px;overflow:hidden}.admin-shell{max-width:1600px;height:100%;min-height:0}.admin-shell h1{margin-top:4px;font-size:24px;line-height:32px}.admin-shell h2{font-size:18px;line-height:26px}.admin-shell>header{margin-bottom:0}.admin-shell>header>p{margin-top:0}.admin-shell>footer{display:none}.admin-shell>section[aria-label=데이터\ 최신성]{margin:0;padding:8px 12px}.seat-shell{flex-direction:column;gap:8px;display:flex}.seat-shell>div.mt-6,.seat-shell>div.mt-6 p{margin-top:0}.seat-intro{display:none}.seat-workspace{flex:1;grid-template-columns:minmax(0,1fr) 300px;gap:12px;min-height:0;display:grid}.seat-tools{overscroll-behavior:contain;min-height:0;padding:0 4px 4px;overflow:auto}.seat-tools>:first-child{margin-top:0}.seat-tools section,.seat-tools>div{padding:12px}.seat-tools .grid{grid-template-columns:1fr}.physical-layout{flex-direction:column;min-height:0;margin:0;padding:12px;display:flex}.layout-notes{flex-shrink:0}.layout-notes[open]{max-height:150px;overflow:auto}.physical-zones{flex:1;grid-template-rows:minmax(0,5fr) minmax(0,3fr);gap:8px;min-height:0;margin-top:4px}.physical-zone{flex-direction:column;min-height:0;padding:8px;display:flex}.physical-zone>h3{font-size:14px;line-height:20px}.physical-zone>p{margin-top:4px;padding:4px;font-size:12px;line-height:16px}.physical-seats{flex:1;grid-template-columns:repeat(4,minmax(0,1fr));gap:4px;min-height:0;margin-top:4px}.zone-lower .physical-seats,.zone-second .physical-seats{grid-template-columns:repeat(3,minmax(0,1fr))}.physical-seats li{min-height:0}.physical-seats button{height:100%;min-height:44px;padding:4px 6px;overflow:hidden}.physical-seats button>span{margin:0;line-height:17px}.physical-seats button>span:nth-child(2){text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.physical-seats .seat-db-key{display:none}.students-shell{grid-template-rows:auto auto auto minmax(0,1fr) auto;grid-template-columns:320px minmax(0,1fr);gap:8px 12px;display:grid}.students-refresh,.students-shell>header,.students-shell>p,.students-shell>section[aria-label=데이터\ 최신성]{grid-column:1/-1;margin:0}.student-counts{display:none}.student-editor{grid-area:4/1;min-height:0;margin:0;padding:16px;overflow:auto}.student-editor form{grid-template-columns:1fr;gap:8px}.student-editor h2{margin-bottom:8px}.student-editor input,.student-editor select{min-height:44px;padding:8px}.student-directory{flex-direction:column;grid-area:4/2;min-height:0;padding:16px;display:flex}.student-directory>div:first-child,.student-directory>div:nth-child(2){margin-bottom:8px}.student-directory input,.student-directory select{margin-top:4px;padding:8px}.directory-scroll{overscroll-behavior:contain;flex:1;min-height:0;overflow:auto}.attendance-scroll thead,.directory-scroll thead{z-index:1;position:sticky;top:0}.student-history-overlay{z-index:10;border:2px solid #cbd5e1;width:min(520px,45vw);max-height:75dvh;position:fixed;bottom:24px;right:24px;overflow:auto;box-shadow:0 12px 36px #0f172a33}.attendance-shell{grid-template-rows:auto auto auto auto minmax(0,1fr);grid-template-columns:minmax(0,1fr) 300px;gap:4px 12px;display:grid}.attendance-shell>a,.attendance-shell>div:first-of-type,.attendance-shell>h1,.attendance-shell>p{grid-column:1/-1;margin:0}.attendance-shell>div:first-of-type>section{margin:0;padding:8px 12px}.attendance-workspace{flex-direction:column;grid-area:5/1;min-height:0;margin:4px 0 0;padding:12px;display:flex;overflow:auto}.attendance-workspace>button{align-self:flex-start;margin-top:4px}.attendance-workspace>section{margin-top:4px}.attendance-workspace dl{gap:4px;margin-top:4px}.attendance-workspace dl>div{padding:6px}.attendance-workspace dd{margin-top:0;font-size:20px;line-height:24px}.attendance-workspace section>div{margin-top:4px}.attendance-workspace input,.attendance-workspace select{margin-top:4px;padding:8px}.attendance-scroll{overscroll-behavior:contain;flex:1;min-height:100px;margin-top:8px;overflow:auto}.attendance-history{grid-area:5/2;min-height:0;margin:4px 0 0;padding:12px;overflow:auto}.attendance-history input,.attendance-history label,.attendance-history select{width:100%;margin-left:0}.simple-shell{overflow:auto}.simple-shell header{padding-bottom:12px}.simple-shell>footer{margin-top:24px;display:block}.physical-seats button>span:first-child{float:left;margin-right:6px}.physical-seats button>span:nth-child(3){clear:both;white-space:nowrap}.seat-tools>section[aria-label="전체 좌석 현황"]{grid-template-columns:repeat(2,minmax(0,1fr));gap:4px;margin-top:0;padding:0}.seat-tools>section[aria-label="전체 좌석 현황"]>div{padding:8px}.seat-tools>section[aria-label="전체 좌석 현황"] p{margin-top:0}.seat-tools>section[aria-label="전체 좌석 현황"] .text-2xl{font-size:20px;line-height:24px}.seat-tools>div{margin-top:8px}.seat-tools input,.seat-tools select{margin-top:4px;padding:8px}.student-editor form{grid-template-columns:repeat(2,minmax(0,1fr))}.student-editor form>div{grid-column:1/-1}.physical-layout{position:relative}.layout-notes[open]{z-index:4;background:#fff;border:1px solid #cbd5e1;border-radius:8px;max-height:60dvh;padding:12px;position:absolute;top:42px;left:12px;right:12px;box-shadow:0 8px 24px #0f172a22}.attendance-shell>p,.students-shell>header>p{display:none}.attendance-workspace{position:relative}.attendance-workspace>button{margin:0;position:absolute;top:12px;right:240px}.attendance-workspace>section>p:first-child{display:none}}.structure-columns{justify-content:space-between;gap:24px;max-width:320px;margin-inline:auto;display:flex}.structure-column{flex-direction:column;gap:6px;display:flex}.structure-marker{background:#fff;border:1px solid #94a3b8;border-radius:4px;width:44px;height:24px;display:block}.structure-lower{justify-content:center;gap:12px;margin-top:12px;display:flex}@media (min-width:1024px) and (min-height:650px){.physical-layout{container-type:inline-size}.physical-seats button{background:#f8fafc;border-color:#cbd5e1;width:calc(12.5cqw - 8.5px);height:44px;min-height:44px}.physical-seats button.border-blue-200{background:#eef2f6;border-color:#94a3b8}.physical-seats li{align-self:start}.physical-zone,.seat-tools>div,.seat-tools>section{border-color:#cbd5e1}}.physical-layout{--seat-card-width:96px;--seat-card-height:44px}.physical-seats,.physical-zone{position:relative}.physical-seats{height:340px;margin-top:4px;display:block}.zone-second .physical-seats{height:520px}.zone-lower .physical-seats{height:160px}.physical-seats li{position:absolute}.physical-seats button,.physical-seats li{width:var(--seat-card-width);height:var(--seat-card-height)}.physical-seats button{min-height:44px;padding:4px 6px;overflow:hidden}.physical-seats button>span{margin:0;line-height:17px}.physical-seats button>span:first-child{float:left;margin-right:6px}.physical-seats button>span:nth-child(2){white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.physical-seats button>span:nth-child(3){clear:both;white-space:nowrap}.physical-seats .seat-db-key{display:none}.seat-aisle-label,.seat-landmark{color:#475569;text-align:center;pointer-events:none;font-size:11px;line-height:14px;position:absolute}.first-front-door{bottom:10px;left:8px}.first-air-conditioner{right:8px;bottom:calc(8px + (100% - 42px - var(--seat-card-height)) / 6);width:var(--seat-card-width);background:#f1f5f9;border:1px solid #94a3b8;padding:4px 0}.first-aisle{top:40%;left:30%}.second-pillar{left:8px;top:calc(30px + (100% - 42px - var(--seat-card-height)) / 2);width:var(--seat-card-width);height:var(--seat-card-height);background:#e2e8f0;border:1px solid #64748b;place-items:center;display:grid}.second-back-door{width:var(--seat-card-width);top:28px;right:8px}.second-aisle{top:40%;left:45%}@media (min-width:1024px) and (min-height:650px){.physical-layout{--seat-card-width:calc((100cqw - 68px) / 8)}.physical-layout>h2{padding-right:200px}.physical-layout>.layout-notes{position:absolute;top:12px;right:12px}.physical-layout>.layout-notes[open]{top:42px;left:12px}.physical-zones{grid-template-rows:minmax(0,2fr) minmax(0,1fr)}.physical-seats,.zone-lower .physical-seats,.zone-second .physical-seats{flex:1;height:auto;min-height:0}.physical-seats button{width:var(--seat-card-width)}}.physical-seats>li[role=presentation]{height:auto}.physical-seats>.first-front-door{top:calc(100% - 20px);bottom:auto;left:0}.physical-seats>.first-air-conditioner{left:calc(100% - var(--seat-card-width));right:auto;top:calc((100% - var(--seat-card-height)) * 5 / 6);height:var(--seat-card-height);place-items:center;display:grid;bottom:auto}.physical-seats>.second-pillar{top:calc((100% - var(--seat-card-height)) / 2);height:var(--seat-card-height);left:0}.physical-seats>.second-back-door{left:calc(100% - var(--seat-card-width));top:0;right:auto}.physical-seats>.first-aisle{left:calc(var(--seat-card-width) + 12px);writing-mode:vertical-rl;width:14px}.physical-seats>.second-aisle{writing-mode:vertical-rl;width:14px;left:50%}.zone-lower [data-seat-number="37"]:before{content:"";width:4px;height:var(--seat-card-height);background:#94a3b8;position:absolute;top:0;left:-5px}.physical-seats>li.first-air-conditioner,.physical-seats>li.second-pillar{height:var(--seat-card-height)}.reference-design .physical-zones{grid-template-rows:minmax(0,2fr) minmax(0,1fr);grid-template-columns:minmax(0,.46fr) minmax(0,.54fr);align-items:stretch}.reference-design .zone-second{background:#d5f5fc;border:2px solid #1681ff;grid-area:1/1/3}.reference-design .zone-first{background:#dcfce7;border:2px solid #16c55e;grid-area:1/2}.reference-design .zone-lower{background:#fff4d8;border:2px solid #ee8900;grid-area:2/2}.reference-design .physical-zone{border-radius:8px;flex-direction:column;min-height:0;padding:6px;display:flex}.reference-design .room-heading{flex:none;grid-template-columns:1fr;align-items:start;display:grid;position:relative}.reference-design .room-heading h3{text-align:center;color:#071044;background:#abe7f5;border-radius:4px;font-size:22px;font-weight:800;line-height:30px}.reference-design .zone-lower .room-heading h3{color:#472900;background:#f1dfbc;padding-inline:60px}.reference-design .room-door{color:#854500;background:#fff4d8;border:2px solid #ee8900;border-radius:4px;height:30px;padding:2px 5px;font-size:13px;font-weight:700;position:absolute;top:0;left:0}.reference-design .physical-seats{grid-template-rows:repeat(7,minmax(0,1fr));grid-template-columns:repeat(3,minmax(0,1fr));gap:3px 7%;height:360px;margin-top:6px;display:grid}.reference-design .zone-second .physical-seats{grid-template-rows:repeat(12,minmax(0,1fr));grid-template-columns:minmax(0,1fr) minmax(0,1fr) minmax(0,1fr);gap:3px 0;height:550px}.reference-design .zone-lower .physical-seats{grid-template-rows:repeat(3,minmax(0,1fr));place-content:center;gap:6px 3%;height:160px}.reference-design .physical-seats>li{width:100%;min-width:0;height:100%;min-height:0;position:static}.reference-design .physical-seats button{text-align:center;color:#071044;background:#fff;border:1px solid #dce4ed;border-radius:4px;width:100%;height:100%;min-height:0;padding:2px 4px}.reference-design .physical-seats button>span:first-child{float:none;margin:0;font-size:16px;line-height:16px}.reference-design .physical-seats button>span:nth-child(3){font-size:10px;line-height:11px}.reference-design .physical-seats button.border-blue-200{background:#eef3f8;border-width:1px}.reference-design .physical-seats .seat-landmark{border-radius:4px;place-items:center;font-size:12px;font-weight:700;line-height:15px;display:grid}.reference-design .physical-seats .first-front-door{color:#104518;background:#d5facf;border:2px solid #27bc39;grid-area:7/1}.reference-design .physical-seats .second-pillar{color:#071044;background:#abbfc4;border:0;grid-area:7/1}.reference-design .physical-seats .second-back-door{color:#071044;border:2px solid #1681ff;grid-area:1/3}.reference-design .physical-seats .second-front-door{color:#071044;border:2px solid #1681ff;grid-area:12/3}.reference-design .zone-lower [data-seat-number]:before{content:none}@media (min-width:1024px) and (min-height:650px){.reference-design .physical-seats,.reference-design .zone-lower .physical-seats,.reference-design .zone-second .physical-seats{flex:1;height:auto}}@media (max-width:767px){.reference-design .physical-zones{flex-direction:column;display:flex}.reference-design .zone-second{order:1}.reference-design .zone-first{order:2}.reference-design .zone-lower{order:3}}.reference-design .physical-seats button>span:nth-child(2){font-size:12px;line-height:14px}.reference-design .physical-seats button>span:nth-child(3){clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.reference-design .zone-first [data-seat-number="26"],.reference-design .zone-first [data-seat-number="27"]{transform:translate(-50%)}:root{--background:#f5f7fa;--foreground:#243b53;color-scheme:light;--ui-border:#dce4ed;--ui-accent:#2d8c82;--ui-control-height:44px;--ui-control-radius:8px;--ui-card-radius:14px;--ui-card-shadow:0 2px 12px #243b5306}body{background:var(--background);color:var(--foreground)}main :is(input:not([type=checkbox]):not([type=radio]):not([type=hidden]),select,textarea){box-sizing:border-box;border:1px solid var(--ui-border);border-radius:var(--ui-control-radius);min-width:0;max-width:100%;font:inherit;color:var(--foreground);box-shadow:none;background:#fff;padding:10px 12px;font-size:14px;line-height:20px}main :is(input:not([type=checkbox]):not([type=radio]):not([type=hidden]),select){height:var(--ui-control-height);min-height:var(--ui-control-height);vertical-align:middle}main textarea{resize:vertical;min-height:88px}main select{padding-right:30px}main input::placeholder,main textarea::placeholder{color:#6b7c8f;opacity:1}main :is(input,select,textarea):disabled{color:#596d82;background:#f5f7fa}main :is(input,select,textarea):focus-visible{border-color:var(--ui-accent)}main button:not(.physical-seats button){border-radius:var(--ui-control-radius);min-height:40px;padding:8px 14px;font-size:14px;font-weight:500;line-height:20px}main:not(.kiosk-screen) :is(button.bg-blue-700,button[type=submit]){min-height:44px;font-weight:600}main:not(.kiosk-screen) :is(table,nav) button{min-height:36px;padding:6px 10px;font-size:13px}main button:disabled{cursor:not-allowed}main :is(section,dialog,[role=dialog],details){border-color:var(--ui-border)}main :is(section.bg-white,.dashboard-grid>a,.student-history-overlay,[role=dialog]){border:1px solid var(--ui-border);border-radius:var(--ui-card-radius);box-shadow:var(--ui-card-shadow)}main .shadow-sm{box-shadow:var(--ui-card-shadow)}main dialog{border-radius:var(--ui-card-radius);max-width:calc(100vw - 24px);max-height:90dvh;overflow:auto}.admin-shell h1{letter-spacing:-.035em;font-weight:700;line-height:34px}.admin-shell h2{letter-spacing:-.025em;font-weight:650;line-height:26px}.admin-shell h3{font-size:15px;font-weight:600;line-height:23px}main table{border-collapse:collapse}main table th{color:#486078;background:#f5f7fa;font-size:12px;font-weight:600}main table td{vertical-align:middle}main :is(label,h1,h2,h3,p){overflow-wrap:anywhere}.trial-banner{color:#493c29;background:#f1e6d0;padding:8px 16px;font-size:13px;font-weight:600;line-height:21px}.trial-banner a{color:#253e5b;text-underline-offset:3px;margin-inline:6px;text-decoration:underline;display:inline-block}.student-editor label{color:#486078;align-content:start;gap:6px;min-width:0;display:grid}.student-editor label>:is(input,select){margin:0}.student-editor form{gap:14px 12px}@media (min-width:1024px) and (min-height:650px){.student-editor form{row-gap:8px}.student-editor label{gap:4px}.attendance-shell>details[open]{z-index:20;overscroll-behavior:contain;background:#fff;width:min(760px,100vw - 48px);max-height:calc(100dvh - 120px);position:fixed;top:96px;right:24px;overflow:auto;box-shadow:0 12px 40px #243b531a}}.student-editor :is(input,select){width:100%}.attendance-workspace select{width:100%;min-width:0}.reference-design .zone-second{background:#f0f4f8;border:1px solid #c5d3e2}.reference-design .zone-first{background:#f0f7f4;border:1px solid #cadfd6}.reference-design .zone-lower{background:#faf7f0;border:1px solid #e5dccb}.reference-design .room-heading h3{color:#263f5a;background:#d9e7f3}.reference-design .zone-first .room-heading h3{color:#294d3c;background:#d7eade}.reference-design .zone-lower .room-heading h3{color:#51432c;background:#ede1c9}.reference-design :is(.room-door,.first-front-door,.second-front-door,.second-back-door){box-sizing:border-box;text-align:center;border-radius:4px;place-self:center;width:54px;height:30px;font-weight:700;color:#574329!important;background:#f8f1e4!important;border:1px solid #d6c9af!important;min-height:30px!important;padding:2px 5px!important;font-size:13px!important;line-height:22px!important}@media (min-width:1024px) and (min-height:650px){body:has(.trial-banner) .admin-viewport{height:calc(100dvh - 62px)}.seat-tools :is(input,select){width:100%;height:44px}.reference-design .physical-zones{grid-template-rows:minmax(0,2fr) minmax(0,1fr)}.reference-design .physical-zone{padding:5px}.reference-design .physical-seats{row-gap:2px;margin-top:4px}.reference-design .room-heading h3{font-size:18px;line-height:26px}.attendance-workspace{grid-template-columns:minmax(0,1fr) minmax(270px,320px)}.attendance-workspace label{min-width:0;display:block}.simple-shell{overflow:auto}}@media (max-width:1023px){main:not(.kiosk-screen){padding:16px!important}main .flex{flex-wrap:wrap}.trial-banner{padding:8px}.seat-tools :is(input,select){width:100%}}.reference-design .physical-seats>li.seat-landmark:not(.second-pillar){width:54px;height:30px}main.kiosk-screen button.min-h-16{min-height:64px;font-size:24px;font-weight:600}main.kiosk-screen button.min-h-16.text-base{font-size:16px;line-height:24px}.attendance-history select{width:100%;max-width:100%}@media (min-width:1024px) and (min-height:650px){.attendance-shell{grid-template-columns:minmax(0,1fr) 320px}.seats-viewport{padding:12px}.seat-heading{align-items:center;gap:16px;display:flex}.seat-heading>p{display:none}.reference-design .physical-seats button{padding:0 3px}.reference-design .physical-seats button>span:nth-child(2){line-height:12px}}.kiosk-admin-shell{max-width:1600px}.kiosk-admin-heading{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:16px;display:flex}.kiosk-admin-workspace{grid-template-columns:minmax(0,1fr);align-items:start;gap:16px;display:grid}.kiosk-admin-workspace>div{min-width:0}.kiosk-admin-workspace section{background:#fff;border-radius:12px}.kiosk-admin-connection{gap:12px;display:grid}.kiosk-admin-connection>p{margin:0}.kiosk-admin-workspace :is(input:not([type=checkbox]),select){width:100%}.kiosk-admin-workspace button{padding:9px 12px}.kiosk-admin-workspace ul{overscroll-behavior:contain;max-height:42dvh;overflow:auto}.kiosk-admin-workspace details{border:1px solid #d7e1eb;border-radius:8px;padding:8px}.kiosk-admin-workspace summary{color:#40536b;cursor:pointer;font-size:13px}.kiosk-admin-workspace label{margin-block:8px;display:block}.kiosk-admin-advanced[open]>div{max-height:60dvh;overflow:auto}@media (min-width:1024px){.kiosk-admin-shell{padding:16px}.kiosk-admin-workspace{grid-template-columns:repeat(2,minmax(0,1fr))}.kiosk-admin-connection{grid-row:1/3}.kiosk-admin-notification,.kiosk-admin-review{grid-column:2}.kiosk-admin-workspace>div>section{margin-top:0}}@media (min-width:1360px){.kiosk-admin-workspace{grid-template-columns:minmax(0,1.15fr) repeat(2,minmax(0,1fr))}.kiosk-admin-connection{grid-row:1}.kiosk-admin-review{grid-column:2}.kiosk-admin-notification{grid-column:3}}main :is(th,td){border:0;border-bottom:1px solid var(--ui-border)}main thead th{color:#486078;background:#f5f7fa}main tbody tr:nth-child(2n){background:#fafbfd}main tbody tr:nth-child(odd){background:#fff}main .attendance-present{color:#145638;background:#d9eddf}main .attendance-out{color:#293644;background:#e3e8ee}.dashboard-grid>a{border:1px solid var(--ui-border);flex-direction:column;justify-content:center;gap:8px;min-height:130px;display:flex}.reference-design .physical-seats>li.first-front-door{justify-self:start}.reference-design .physical-seats>li:is(.second-front-door,.second-back-door){justify-self:end}.kiosk-admin-open{min-width:0}@media (min-width:1024px){.kiosk-admin-open,.kiosk-admin-settings{grid-column:2}}@media (min-width:1360px){.kiosk-admin-open{grid-column:3}}@media (max-width:479px){.student-editor form{grid-template-columns:1fr}}.kiosk-screen{padding-bottom:max(16px,env(safe-area-inset-bottom))}.reference-design .physical-seats>li.first-front-door{transform:translate(-5px)}.reference-design .physical-seats>li:is(.second-front-door,.second-back-door){transform:translate(5px)}.dashboard-intro{border:1px solid var(--ui-border);background:#fff;border-radius:18px;max-width:1000px;padding:28px}.dashboard-intro h2{letter-spacing:-.04em;margin:10px 0;font-size:30px;line-height:1.35}.dashboard-intro>p{color:#596d82;max-width:560px}.dashboard-grid{counter-reset:work;gap:16px;max-width:1000px}.dashboard-grid>a{justify-content:flex-start;min-height:180px;padding:24px}.dashboard-grid>a:before{counter-increment:work;content:"0" counter(work);color:#2d8c82;letter-spacing:.1em;margin-bottom:16px;font-size:12px}.dashboard-grid>a h3{font-size:20px;line-height:28px}.unassigned-student{background:#f5f7fa;display:block}.unassigned-student:hover{background:#edf6f3;border-color:#2d8c82}.seat-choice-grid button{min-height:76px}.reference-design .physical-seats button[aria-pressed=true],.seat-choice-grid button[aria-pressed=true]{color:#164d37;background:#d5eee3;border:2px solid #287455;box-shadow:inset 0 0 0 1px #287455}.seat-tools>section[aria-label=미배정\ 학생]{border-top:3px solid #2d8c82}.kiosk-admin-connection>a{display:none}.kiosk-admin-shell>header{border-bottom:1px solid var(--ui-border);padding:20px 0}.kiosk-admin-workspace{gap:20px}.kiosk-admin-workspace h2{margin-bottom:12px;font-size:20px;line-height:28px}.kiosk-admin-workspace section{padding:24px}.kiosk-admin-workspace>.kiosk-admin-open section{color:#fff;background:#243b53}.kiosk-admin-open a{margin-top:20px;display:block}.kiosk-admin-open a.bg-blue-700{color:#243b53;text-align:center;background:#fff;font-weight:600}.kiosk-admin-open a.text-blue-700{color:#ddefe9}.kiosk-workspace{border:1px solid var(--ui-border);background:#fff;border-radius:24px;padding:32px;box-shadow:0 16px 64px #243b5308}.kiosk-workspace header h1{letter-spacing:-.05em;font-size:36px;line-height:44px}.kiosk-workspace .kiosk-lead{font-size:22px;font-weight:600}.kiosk-step{letter-spacing:.03em;color:#596d82;font-size:13px}.kiosk-keypad{width:100%;max-width:440px;margin-inline:auto}.kiosk-workspace>output{letter-spacing:.25em;background:#f5f7fa;border-radius:12px;padding:16px}.kiosk-workspace>button{width:100%;max-width:440px;margin-inline:auto}.kiosk-actions button{min-height:88px!important}.kiosk-actions button span.text-sm{color:#596d82;margin-top:4px;font-size:13px;line-height:20px}.kiosk-result:not(:empty){background:#eef3f8;border-radius:12px;padding:18px;font-size:18px;font-weight:600}.kiosk-safety{background:#f5f7fa;border-radius:8px;order:10;padding:12px}@media (min-width:1024px){.kiosk-admin-workspace{grid-template-columns:minmax(0,1.4fr) minmax(280px,1fr)}.kiosk-admin-connection{grid-area:1/1/3}.kiosk-admin-open{grid-area:1/2}.kiosk-admin-settings{grid-area:2/2}}@media (max-width:767px){.dashboard-intro{padding:22px}.dashboard-intro h2{font-size:25px}.kiosk-workspace{padding:20px}.kiosk-actions{gap:8px}}.seats-viewport dialog{width:min(680px,100vw - 32px);max-width:680px}.seat-room-choices{overscroll-behavior:contain;max-height:42dvh;padding-right:4px;overflow:auto}.seats-viewport .seat-choice-grid button{min-height:56px}.kiosk-workspace>button.bg-blue-700{color:#fff;background:#243b53}@media (min-width:700px){.kiosk-workspace{gap:12px;padding:24px}.kiosk-workspace header h1{margin-top:4px;font-size:30px;line-height:36px}}.reference-design .physical-seats button{grid-template-columns:minmax(0,1fr) minmax(0,5fr);align-items:stretch;padding:0;display:grid}.reference-design .physical-seats button>span.seat-number{float:none;border-right:1px solid #dce4ed;place-items:center;min-width:0;margin:0;font-size:12px;line-height:16px;display:grid}.reference-design .physical-seats button>span.seat-info{white-space:normal;text-align:left;flex-direction:column;justify-content:center;gap:1px;min-width:0;padding:2px 3px;display:flex;overflow:auto}.reference-design .seat-info .seat-student-name{overflow-wrap:anywhere;white-space:normal;font-size:11px;line-height:12px}.reference-design .seat-info .seat-today{color:#486078;white-space:normal;overflow-wrap:anywhere;font-size:10px;line-height:11px;display:block}body:has(.kiosk-screen) .trial-banner{display:none}@media (max-width:480px){.kiosk-workspace{gap:12px;padding:16px}.kiosk-workspace .kiosk-step{display:none}.kiosk-workspace .kiosk-safety{order:99}.kiosk-workspace .kiosk-actions button{padding:8px 4px;font-size:20px}}.kiosk-workspace .kiosk-actions button.kiosk-action-selected{color:#164d37;background:#d5eee3;border:2px solid #287455;box-shadow:inset 0 0 0 1px #287455}.directory-output-dialog,.students-viewport .directory-output-dialog{width:min(1100px,100vw - 24px);max-width:1100px;max-height:90dvh;overflow:auto}.directory-output-dialog::backdrop{background:#172b3a80}.kiosk-workspace .kiosk-result.kiosk-success{color:#164d37;background:#d5eee3;font-size:24px;font-weight:700}@media (max-width:480px){.kiosk-screen:has(.kiosk-compact){height:100dvh;min-height:100dvh;padding:8px max(8px,env(safe-area-inset-right)) max(8px,env(safe-area-inset-bottom)) max(8px,env(safe-area-inset-left));flex-direction:column;display:flex}.kiosk-workspace.kiosk-compact{--kiosk-touch:64px;--kiosk-gap:6px;gap:var(--kiosk-gap);flex:1 0 auto;width:100%;min-height:min-content;padding:clamp(44px,6dvh,56px) 10px 10px}.kiosk-compact>*{flex-shrink:0}.kiosk-compact .kiosk-keypad{flex:4 0 calc(4 * var(--kiosk-touch) + 3 * var(--kiosk-gap));grid-template-rows:repeat(4,minmax(var(--kiosk-touch),1fr))}.kiosk-compact .kiosk-actions,.kiosk-compact>button.bg-blue-700{flex:1 0 var(--kiosk-touch)}.kiosk-compact .kiosk-result:empty{min-height:0;padding:0}.kiosk-compact .kiosk-early-help,.kiosk-compact .kiosk-lead,.kiosk-compact .kiosk-step{display:none}.kiosk-compact output{min-height:48px;padding:4px;font-size:32px}.kiosk-compact .kiosk-actions,.kiosk-compact .kiosk-keypad{gap:6px}.kiosk-compact .kiosk-keypad button{min-height:64px;padding:4px}.kiosk-compact .kiosk-actions button{min-height:64px}.kiosk-compact .kiosk-result{min-height:48px;padding:8px;font-size:20px;line-height:1.3}}@media (max-width:480px) and (max-height:740px){.kiosk-workspace.kiosk-compact{--kiosk-touch:52px;--kiosk-gap:5px;padding:44px 8px 8px}.kiosk-compact .kiosk-brand{line-height:1.2}.kiosk-compact .kiosk-input-label{font-size:14px;line-height:20px}.kiosk-compact output{min-height:44px;padding:2px;font-size:30px;line-height:40px}.kiosk-compact .kiosk-actions,.kiosk-compact .kiosk-keypad{gap:5px}main.kiosk-screen .kiosk-compact button.min-h-16{min-height:52px;padding:4px}.kiosk-compact .kiosk-actions button span:first-child{line-height:24px}.kiosk-compact .kiosk-result{min-height:44px;padding:6px;font-size:20px;line-height:1.3}.kiosk-compact .kiosk-result:empty{min-height:0;padding:0}}.student-mobile-details,.student-mobile-value{display:none}.student-directory tr[data-selected=true]{outline-offset:-2px;background:#eef6f4;outline:2px solid #2d8c82}@media (max-width:767px){.student-directory{min-width:0;padding:16px}.student-directory .directory-scroll{overflow:visible}.student-directory table,.student-directory tbody{width:100%;display:block}.student-directory thead{display:none}.student-directory tbody{gap:12px;display:grid}.student-directory tbody tr{overflow-wrap:anywhere;border:1px solid #dce4ed;border-radius:12px;padding:8px;display:block}.student-directory tbody td{display:none}.student-directory tbody :is(.student-primary-cell,.student-code-cell,.student-actions-cell,.student-mobile-details){padding:8px;display:block}.student-directory .student-primary-cell{font-size:17px;font-weight:600}.student-directory .student-mobile-value{display:inline}.student-directory .student-desktop-value{display:none}.student-directory .student-actions-cell>div{flex-wrap:wrap}.student-directory .student-mobile-details dt{color:#486078;font-size:12px}}.attendance-mobile-label,.attendance-row-details>summary{display:none}.attendance-row-actions{flex-wrap:wrap}.attendance-scroll tr[data-selected=true]{outline-offset:-2px;outline:2px solid #2d8c82}@media (max-width:767px){.attendance-workspace{min-width:0;padding:16px}.attendance-scroll{overflow:visible}.attendance-scroll table,.attendance-scroll tbody{width:100%;display:block}.attendance-scroll thead{display:none}.attendance-scroll tbody{gap:12px;display:grid}.attendance-scroll tbody tr{overflow-wrap:anywhere;border:1px solid #dce4ed;border-radius:12px;padding:8px;display:block}.attendance-scroll tbody td{display:none}.attendance-scroll tbody :is(.attendance-name-cell,.attendance-status-cell,.attendance-time-cell,.attendance-action-cell){padding:8px;display:block}.attendance-scroll .attendance-name-cell{font-size:18px;font-weight:600}.attendance-mobile-label{display:block}.attendance-time-cell .attendance-mobile-label{display:inline}.attendance-row-actions{grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.attendance-row-details{order:2;grid-column:1/-1}.attendance-row-details>summary{cursor:pointer;min-height:44px;padding:12px 0;display:block}}@media (min-width:768px){.attendance-scroll{scroll-padding-top:72px}}.attendance-recovery-summary,.attendance-workspace>.attendance-recovery-summary{border:1px solid var(--ui-border,#dce4ed);overflow-wrap:anywhere;background:#fff;border-radius:12px;flex-shrink:0;margin:0 0 16px;padding:16px}.attendance-recovery-summary h2{color:#243b53;margin:0 0 12px;font-size:18px;font-weight:700}.attendance-recovery-summary h3{margin:0 0 8px;font-size:15px;font-weight:600}.attendance-recovery-summary>p{background:#f7f0df;border-radius:8px;padding:10px}.attendance-recovery-summary section{border:1px solid #dce4ed;border-radius:10px;margin-top:12px;padding:14px}.attendance-recovery-summary p{margin:8px 0;line-height:1.6}.attendance-recovery-summary button{color:#243b53;min-height:44px;font:inherit;cursor:pointer;background:#fff;border:1px solid #dce4ed;border-radius:8px;padding:10px 14px}.attendance-recovery-summary button:disabled{opacity:.5;cursor:not-allowed}.attendance-recovery-summary a:focus-visible,.attendance-recovery-summary button:focus-visible{outline-offset:2px;outline:2px solid #2d8c82}.attendance-recovery-summary a{color:#243b53;margin:8px 16px 0 0;display:inline-block}.attendance-recovery-summary [role=alert]{color:#9b3541;background:#fff2f3;padding:10px}.attendance-recovery-summary section>div{flex-wrap:wrap;gap:8px;display:flex}.attendance-recovery-summary section>div p{flex-basis:100%}.kiosk-workspace .kiosk-brand{font-size:45px;font-weight:700;line-height:1.3}@media (max-width:600px){.kiosk-workspace .kiosk-brand{font-size:clamp(39px,9.75vw,42px)}}.attendance-scroll .attendance-register th{white-space:nowrap;font-size:13px}.attendance-scroll .attendance-register td,.attendance-scroll .attendance-register th{vertical-align:middle;padding:12px 10px;line-height:1.5}.attendance-register .attendance-short-cell,.attendance-register .attendance-time-cell{white-space:nowrap}.attendance-register .attendance-time-cell{font-variant-numeric:tabular-nums}.attendance-register .attendance-name-cell{word-break:keep-all;overflow-wrap:break-word}.attendance-register .attendance-notification-cell{white-space:normal;overflow-wrap:anywhere}.attendance-scroll .attendance-register button{white-space:nowrap;min-height:40px;padding:8px 10px;font-size:13px;line-height:20px}@media (min-width:768px){.attendance-scroll .attendance-register{table-layout:fixed;min-width:1220px}.attendance-register :is(th,td):first-child{z-index:2;background:#fff;position:sticky;left:0;box-shadow:1px 0 #dce4ed}.attendance-register :is(th,td):last-child{z-index:2;background:#fff;position:sticky;right:0;box-shadow:-1px 0 #dce4ed}.attendance-register thead :is(th:first-child,th:last-child){z-index:3;background:#f5f7fa}.attendance-col-name{width:120px}.attendance-col-division{width:64px}.attendance-col-school{width:88px}.attendance-col-grade{width:56px}.attendance-col-room{width:88px}.attendance-col-seat,.attendance-col-status{width:64px}.attendance-col-time{width:96px}.attendance-col-notification{width:184px}.attendance-col-action{width:200px}.attendance-register .attendance-row-actions{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;display:grid}.attendance-register .attendance-row-details{grid-column:1/-1}.attendance-register .attendance-row-details>div{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;display:grid}}@media (max-width:767px){.attendance-register colgroup{display:none}.attendance-scroll .attendance-register button{min-height:44px}.attendance-scroll .attendance-register .attendance-name-cell{padding-bottom:10px}}@media (max-width:480px){.kiosk-compact .kiosk-input-label{margin-top:8px}}main.kiosk-screen{background:#eef8f5}.kiosk-screen .kiosk-workspace{color:#243b53;background:#fff;border-color:#c9e0d8}.kiosk-screen .kiosk-workspace>output{color:#243b53;background:#eaf6f2}.kiosk-screen .kiosk-keypad button{color:#243b53;background:#f8fdfb;border-color:#bcd8ce}.kiosk-screen .kiosk-keypad button:disabled{opacity:1;color:#596a70;cursor:not-allowed;background:#f1f6f4;border-color:#d0deda}.kiosk-screen .kiosk-actions button:first-child{color:#285748;background:#e9f5ef;border-color:#b5d7c8}.kiosk-screen .kiosk-actions button:nth-child(2){color:#354f6d;background:#edf3fa;border-color:#bfcdde}.kiosk-screen .kiosk-actions button:nth-child(3){color:#725b3a;background:#faf3e8;border-color:#ddd0bb}.kiosk-screen .kiosk-actions button:disabled{opacity:1;filter:saturate(.55);cursor:not-allowed;color:#5d696b}.kiosk-screen .kiosk-actions button.kiosk-action-selected{color:#164d37;background:#d5eee3;border-color:#287455}.kiosk-screen .kiosk-workspace>button.bg-blue-700{color:#fff;background:#1f6d63;border-color:#16554d;box-shadow:0 2px 6px #164d3720}.kiosk-screen .kiosk-workspace>button.bg-blue-700:disabled{opacity:1;color:#4e6257;box-shadow:none;cursor:not-allowed;background:#dde9e4;border-color:#b8cfc4}.kiosk-screen .kiosk-result:not(:empty){color:#304d61;background:#eaf3f8}.kiosk-screen .kiosk-result.kiosk-success{color:#164d37;background:#d5eee3}.kiosk-screen .kiosk-result.kiosk-warning{color:#853e34;background:#fff1ed}.attendance-movement-info{white-space:normal;overflow-wrap:break-word;line-height:1.6}.attendance-movement-info summary{cursor:pointer;color:#405e6b;align-items:center;min-height:32px;display:flex}.admin-settings-layout{grid-template-columns:200px minmax(0,1fr);width:100%;min-height:100dvh;display:grid}.admin-settings-content{min-width:0}.admin-settings-content>main{width:100%}.admin-settings-nav{color:#243b53;background:#fff;border-right:1px solid #dce4ed;flex-direction:column;gap:24px;min-width:0;height:100dvh;padding:24px 14px;display:flex;position:sticky;top:0;overflow-y:auto}.admin-nav-brand{letter-spacing:-.04em;padding:0 10px;font-size:34px;font-weight:800;line-height:1.25;display:block}.admin-nav-brand span{letter-spacing:-.04em;margin-top:8px;font-size:21px;font-weight:700;line-height:1.4;display:block}.admin-nav-primary{gap:6px;display:grid}.admin-nav-primary a{font-weight:550;line-height:1.4}.admin-nav-icon{color:#49677b;background:#f0f5f8;border-radius:9px;flex:0 0 32px;place-items:center;width:32px;height:32px;display:grid}.admin-nav-primary [aria-current=page] .admin-nav-icon{color:#146b68;background:#d2ebe3}.admin-settings-nav :is(.admin-nav-primary a,.admin-nav-settings a,summary){overflow-wrap:anywhere;border-radius:9px;align-items:center;gap:10px;min-height:44px;padding:10px 12px;text-decoration:none;display:flex}.admin-settings-nav [aria-current=page]{color:#146b68;background:#e7f5f1;font-weight:700}.admin-nav-settings{margin-top:auto}.admin-nav-settings summary{cursor:pointer;font-weight:700}.admin-nav-settings a{margin-top:4px;font-size:14px}.settings-page{color:#243b53;background:#f0f8f6;min-height:100dvh;padding:28px}.settings-page-inner{max-width:1180px;margin:auto}.settings-titlebar{margin-bottom:24px}.settings-titlebar>a{font-size:13px}.settings-titlebar h1{margin:10px 0 4px;font-size:30px;font-weight:800}.settings-titlebar p{color:#5a7084}.schedule-editor-standalone{border:0;padding:0}.schedule-hidden-summary{display:none}.schedule-rules{gap:18px;display:grid}.schedule-card{background:#fff;border:1px solid #dce4ed;border-radius:14px;min-width:0;padding:20px;box-shadow:0 2px 10px #243b5305}.schedule-card>header{justify-content:space-between;align-items:center;gap:12px;margin-bottom:14px;display:flex}.schedule-card h2{font-size:21px;font-weight:750}.schedule-rules,.schedule-rules :is(section,label,td,th){min-width:0}.schedule-rules :is(input:not([type=checkbox]),select){width:100%;max-width:100%;margin-top:4px;display:block}.schedule-rules input[type=checkbox]{min-width:18px;min-height:18px;margin-right:6px}.schedule-rules :is(button,summary){white-space:normal;min-height:44px}.schedule-table-toolbar{flex-wrap:wrap;justify-content:flex-end;gap:8px;margin-bottom:10px;display:flex}.schedule-add-day{align-items:end;gap:8px;display:flex}.schedule-time-table{border-collapse:separate;border-spacing:0;table-layout:fixed;border:1px solid #dce4ed;border-radius:9px;width:100%;overflow:hidden}.schedule-time-table th{background:#f6f8fa;padding:10px;font-size:14px}.schedule-time-table thead th:first-child{width:18%}.schedule-time-table :is(td,tbody th){border-top:1px solid #e5ebf0;padding:10px}.schedule-time-table tbody th{text-align:center;background:#fff}.schedule-time-pair{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;display:grid}.schedule-time-pair label>span{color:#5a7084;font-size:11px}.schedule-time-pair input{width:100%;font-size:14px;padding:6px!important}.schedule-input-note,.schedule-muted{color:#5a7084;font-size:13px;line-height:1.5}.schedule-input-note:empty{display:none}.schedule-vacation-card{border:1px solid #dce4ed;border-radius:10px;margin-top:12px}.schedule-vacation-card>summary{cursor:pointer;justify-content:space-between;align-items:center;gap:10px;padding:12px 14px;font-weight:650;display:flex}.schedule-vacation-card>summary span{color:#5a7084;font-size:13px;font-weight:400}.schedule-vacation-body{gap:14px;padding:4px 14px 14px;display:grid}.schedule-date-pair{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;display:grid}.schedule-holiday-tabs{gap:8px;margin-bottom:14px;display:flex}.schedule-holiday-tabs button{min-width:130px}.schedule-holiday-tabs [aria-pressed=true]{color:#176e67;background:#e5f5f0;border-color:#2d8c82}.schedule-holiday-form{flex-wrap:wrap;align-items:end;gap:12px;display:flex}.schedule-holiday-form label{max-width:100%}.schedule-regular-holiday{margin:14px 0;display:block}.schedule-holiday-list{gap:8px;margin-top:12px;display:grid}.schedule-holiday-list li{overflow-wrap:anywhere;flex-wrap:wrap;align-items:center;gap:8px;display:flex}.schedule-holiday-list li span{flex:1}.schedule-legacy{border-top:1px solid #e5ebf0;margin-top:16px;padding-top:10px}.schedule-legacy>summary{cursor:pointer;color:#5a7084}.schedule-legacy>label{margin-right:12px;display:inline-block}.schedule-change-review{background:#fff;border:1px solid #dce4ed;border-radius:10px;margin-top:16px;padding:12px}.admin-empty-page{background:#f5f7fa;min-height:100dvh}@media (max-width:760px){.admin-settings-layout{display:block}.admin-settings-nav{border-bottom:1px solid #dce4ed;border-right:0;gap:8px;height:auto;padding:10px 12px;position:static;overflow:visible}.admin-nav-brand{display:none}.admin-nav-primary{grid-template-columns:repeat(3,minmax(0,1fr));gap:3px}.admin-settings-nav :is(.admin-nav-primary a,.admin-nav-settings a,summary){padding:8px;font-size:13px}.admin-nav-settings{margin-top:4px}.settings-page{padding:16px}.settings-titlebar h1{font-size:25px}.schedule-card{padding:14px}.schedule-time-table thead{display:none}.schedule-time-table tbody{display:block}.schedule-time-table tr{grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.schedule-time-table tbody th{text-align:left;background:#f6f8fa;grid-column:1/-1}.schedule-time-table td:before{content:attr(data-division);font-size:13px;font-weight:650}.schedule-time-pair{grid-template-columns:minmax(0,1fr);gap:6px}.schedule-vacation-card>summary{flex-wrap:wrap}}@media (max-width:420px){.schedule-date-pair{grid-template-columns:minmax(0,1fr)}.schedule-card>header{flex-wrap:wrap}}.grades-page{color:#243b53;background:#f5f7fa;min-height:100dvh;padding:24px}.grade-card>header,.grade-room-controls,.grades-heading{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;display:flex}.grades-heading{margin-bottom:20px}.grades-heading h1{font-size:30px;font-weight:800}.grades-heading label{align-items:center;gap:8px;display:flex}.grades-heading input{width:110px}.grade-room-controls{justify-content:flex-start;margin-bottom:18px}.grade-room-controls strong{background:#edf8f5;border-radius:9px;padding:12px}.grades-page button[aria-pressed=true]{color:#176c65;background:#dff2eb;border-color:#2d8c82}.grade-card,.grade-record-detail{background:#fff;border:1px solid #dce4ed;border-radius:12px;min-width:0;margin-bottom:18px;padding:18px}.grade-card h2,.grade-chart-card h3{font-size:20px;font-weight:750}.grade-card summary{cursor:pointer;min-height:44px}.grade-muted{color:#5a7084;margin:10px 0;font-size:13px;line-height:1.6}.grade-warning{color:#635029;background:#fcf6e9;border:1px solid #d8c59a;border-radius:10px;padding:12px}.grade-subject-tabs{flex-wrap:wrap;gap:6px;margin:16px 0;display:flex}.grade-subject-tabs button{min-width:78px}.grade-exam-checks{flex-wrap:wrap;gap:14px;display:flex}.grade-exam-checks label{align-items:center;gap:5px;display:flex}.grade-exam-checks small{display:block}.grade-chart-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;display:grid}.grade-chart-card{background:#fff;border:1px solid #e4ebf1;border-radius:10px;min-width:0;padding:12px}.grade-chart-scroll{overflow-x:auto}.grade-chart-card svg{width:100%;min-width:700px;display:block}.grade-chart-small svg{min-width:360px}.grade-chart-card svg text{fill:#486078;font-size:14px}.grade-chart-card details{margin-top:8px;font-size:13px}.grade-chart-card table{text-align:left;width:100%}.grade-score-scroll{overflow-x:auto}.grade-score-scroll table{text-align:center;width:100%;min-width:510px}.grade-score-scroll th{background:#edf5f6;padding:10px}.grade-score-scroll td{padding:12px;font-size:22px;font-weight:700}.grade-catalog-inputs{grid-template-columns:repeat(5,minmax(0,1fr));gap:12px;margin:12px 0;display:grid}.grades-page :is(input:not([type=checkbox]):not([type=radio]),textarea,select){width:100%;min-width:0;max-width:100%}.grades-page label{min-width:0}.grades-page :is(button,input,select){min-height:44px}.grades-page :is(input[type=checkbox],input[type=radio]){min-width:18px;min-height:18px}.grade-form-selects{gap:14px;margin:14px 0;display:flex}.grade-form-selects label{flex:1}.grade-entry-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;margin:16px 0;display:grid}.grade-entry-grid>section{border:1px solid #dce4ed;border-radius:10px;padding:14px}.grade-entry-grid h3{font-size:19px;font-weight:700}.grade-entry-grid label{margin-top:10px;display:block}.grade-entry-grid textarea,.grades-page textarea{min-height:100px}.grade-written{white-space:pre-wrap;overflow-wrap:anywhere}.grade-record-detail h4{margin-top:12px;font-weight:700}.grade-student-dialog{color:#243b53;border:1px solid #dce4ed;border-radius:14px;width:min(760px,94vw);max-height:86dvh;padding:20px}.grade-student-dialog::backdrop{background:#243b5355}.grade-student-dialog>header{justify-content:space-between;align-items:center;gap:14px;margin-bottom:12px;display:flex}.grade-student-dialog h2{font-size:22px;font-weight:750}.grade-picker-scroll{max-height:50dvh;margin:16px 0;overflow:auto}.grade-picker-scroll table{text-align:left;width:100%}.grade-picker-scroll :is(th,td){padding:10px}.grade-picker-scroll th{background:#f5f7fa;position:sticky;top:0}.grade-picker-scroll [data-selected=true]{background:#e4f5ee}.grade-student-dialog footer{justify-content:flex-end;display:flex}@media (max-width:1100px){.grade-catalog-inputs,.grade-chart-grid,.grade-entry-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width:600px){.grades-page{padding:14px}.grade-card{padding:13px}.grade-chart-grid,.grade-entry-grid{grid-template-columns:minmax(0,1fr)}.grade-form-selects{flex-wrap:wrap}.grade-form-selects label{flex-basis:100%}.grade-room-controls{gap:6px}.grade-room-controls button{flex:1;font-size:13px}.grade-catalog-inputs{grid-template-columns:minmax(0,1fr)}.grade-student-dialog{padding:12px}.grade-picker-scroll{font-size:13px}.grade-picker-scroll :is(th,td){padding:6px}}.messages-page{color:#243b53;max-width:1400px;margin:auto;padding:24px}.message-active article,.message-sendbar,.messages-heading{justify-content:space-between;align-items:center;gap:16px;display:flex}.messages-heading h1{font-size:26px;font-weight:700}.message-groups p,.message-muted,.messages-heading p{color:#526577;font-size:14px}.messages-heading nav{gap:8px;display:flex}.messages-columns{grid-template-columns:minmax(190px,1fr) minmax(300px,2.4fr) minmax(240px,1.2fr);gap:20px;margin-top:22px;display:grid}.message-active article,.message-history article,.message-sendbar,.messages-columns>*{background:#fff;border:1px solid #dce4ed;border-radius:14px;padding:20px}.messages-page h2{margin-bottom:16px;font-size:18px;font-weight:700}.messages-page h3{margin:14px 0 8px;font-size:16px;font-weight:650}.messages-page button{color:#243b53;background:#fff;border:1px solid #dce4ed;border-radius:8px;min-height:40px;padding:8px 14px;font-weight:600}.messages-page button:hover:not(:disabled){border-color:#2d8c82}.messages-page button:disabled{opacity:.48;cursor:not-allowed}.messages-heading [aria-pressed=true]{color:#fff;background:#243b53}.messages-page input:not([type=checkbox]):not([type=radio]),.messages-page textarea{width:100%;min-height:44px;font:inherit;background:#fff;border:1px solid #dce4ed;border-radius:8px;padding:10px}.messages-page label{margin-bottom:12px;display:block}.messages-page input[type=checkbox],.messages-page input[type=radio]{vertical-align:middle;accent-color:#2d8c82;width:18px;height:18px;margin-right:8px}.message-body-scroll{resize:vertical;height:230px;overflow:auto}.message-preview-scroll{white-space:pre-wrap;overflow-wrap:anywhere;background:#f5f7fa;border:1px solid #dce4ed;border-radius:8px;height:180px;padding:16px;overflow:auto}.message-preview-scroll p{margin-top:8px}.message-templates article{border-bottom:1px solid #dce4ed;padding:8px 0}.message-templates article>div{gap:6px;display:flex}.message-templates .message-template-name{text-align:left;overflow-wrap:anywhere;border:0;padding-left:0}.message-templates>button{width:100%;margin-top:12px;display:block}.message-direct{margin-top:28px!important}.message-group{align-items:flex-start;min-height:44px;padding:8px 0;margin:0!important;display:flex!important}.message-group small{color:#607486;font-size:12px;display:block}.message-groups>button{width:100%;margin-top:12px}.message-sendbar{flex-wrap:wrap;margin-top:20px}.message-sendbar>div{align-items:center;gap:12px;display:flex}.message-sendbar label{margin:0}.messages-page .message-send{color:#3b2825;background:#ffa391;border-color:#ef9381;min-width:100px}.message-error{color:#7a3430;background:#fff1ef;border:1px solid #e4bbb5;border-radius:10px;margin:12px 0;padding:12px}.message-active article{flex-wrap:wrap;margin-top:12px}.message-history article{margin-top:16px}.message-dialog{color:#243b53;border:1px solid #dce4ed;border-radius:16px;width:min(600px,100% - 32px);max-height:85dvh;padding:24px;overflow:auto}.message-dialog::backdrop{background:#243b5366}.message-dialog header{justify-content:space-between;align-items:center;gap:16px;display:flex}.message-dialog textarea{min-height:180px}.message-confirm{margin-top:14px}.message-history p{margin-bottom:6px}@media (max-width:1000px){.messages-columns{grid-template-columns:180px minmax(260px,1fr)}.message-groups{grid-column:1/-1;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;display:grid}.message-groups h2,.message-groups>p{grid-column:1/-1}.message-sendbar{align-items:flex-start}}@media (max-width:640px){.messages-page{padding:16px}.messages-heading{flex-direction:column;align-items:flex-start}.messages-columns{flex-direction:column;display:flex}.message-templates{order:0}.message-composer{order:1}.message-groups{order:2}.message-sendbar>div{flex-wrap:wrap}.message-active article{flex-direction:column;align-items:flex-start}}.admin-nav-admin-mode h2,.admin-nav-user-mode h2{letter-spacing:-.03em;border-radius:7px;margin-bottom:12px;padding:14px 12px;font-size:22px;font-weight:750;line-height:1.35}.admin-nav-admin-mode h2{color:#294e78;background:#e6eef8}.admin-nav-user-mode h2{color:#236d60;background:#e1f3ec}.admin-nav-user-slots{gap:6px;display:grid}.admin-nav-user-slots button{cursor:not-allowed;background:#f4f9f6;border:1px solid #e2ebe7;border-radius:9px;height:44px}.admin-nav-admin-mode[hidden]{display:none}@media (max-width:1000px){.admin-nav-user-slots{grid-template-columns:repeat(4,minmax(0,1fr))}.admin-nav-admin-mode h2,.admin-nav-user-mode h2{margin-bottom:4px;padding:6px 10px}}.grade-student-dialog,.message-dialog{margin:auto;position:fixed;inset:0;overflow:auto}.grades-heading label{white-space:nowrap}.grades-page .grades-heading input{flex:0 0 110px;width:110px}.grade-picker-scroll table{table-layout:fixed}.grade-picker-scroll :is(th,td){overflow-wrap:anywhere}.grade-picker-scroll th:first-child{white-space:nowrap;width:44px}.grade-picker-scroll th:nth-child(3){width:72px}.grade-picker-scroll th:nth-child(4){width:54px}.grade-picker-scroll th:nth-child(5){width:62px}.grade-record-filters{grid-template-columns:minmax(120px,1fr) minmax(0,2fr);gap:14px;margin:14px 0;display:grid}.grade-record-filters label{gap:6px;display:grid}.grade-record-filters select{text-overflow:ellipsis;width:100%;min-width:0}@media (max-width:600px){.grade-record-filters{grid-template-columns:minmax(0,1fr)}}.attendance-assessment-tags{white-space:normal;flex-wrap:wrap;gap:4px;margin-top:5px;font-size:12px;font-weight:600;line-height:1.45;display:flex}.attendance-assessment-tags>span{color:#74512a;background:#fff0df;border-radius:5px;padding:2px 6px;display:inline-block}.schedule-action,.schedule-rules button{color:#285950;cursor:pointer;background:#fff;border:1px solid #bfd3cf;border-radius:8px;min-height:44px;padding:9px 14px;font-size:14px;font-weight:650;line-height:1.4}.schedule-action{margin-top:10px;margin-right:8px}.schedule-action-primary{color:#fff;background:#287d72;border-color:#287d72}.schedule-action-secondary{color:#344f5a;background:#f7faf9;border-color:#cedbdc}.schedule-action:disabled,.schedule-rules button:disabled{color:#7c8c87;cursor:not-allowed;opacity:1;background:#eef3f1;border-color:#d5dfda}.schedule-action-primary:disabled{color:#627a71;background:#dce9e5;border-color:#c7d8cf}.messages-page button:focus-visible,.schedule-action:focus-visible,.schedule-rules button:focus-visible{outline-offset:3px;outline:3px solid #65a79c}.schedule-time-legend{color:#637b86;margin-top:3px;font-size:11px;font-weight:400;display:block}.schedule-time-caption{display:none}.schedule-time-pair label{margin:0}.schedule-time-pair input{margin-top:0!important}.schedule-muted{margin-bottom:12px}.message-templates article[data-applied=true]{background:#e5f3ef;border:1px solid #85b9aa;border-radius:10px;margin:8px 0;padding:12px}.message-templates .message-template-name{justify-content:space-between;align-items:center;gap:8px;width:100%;min-height:44px;display:flex}.message-template-name[aria-pressed=true]{color:#1e6557;font-weight:750}.message-template-name small{white-space:nowrap;color:#1e6557;background:#d0e9df;border-radius:5px;padding:3px 6px;font-size:11px}.message-direct[aria-pressed=true]{background:#edf5f2;border-color:#a6c9be}.message-applied-format{color:#286757;overflow-wrap:anywhere;background:#edf6f2;border-radius:6px;margin:10px 0;padding:7px 10px;font-size:13px}.message-sendbar .message-wait-pill{color:#715625;background:#fff3d3;border:1px solid #ead39a;border-radius:999px;padding:7px 12px;font-size:12px;line-height:1.5}.message-sendbar button{min-height:44px}.messages-page .message-send:disabled{opacity:1;color:#82716c;background:#f3e1dc;border-color:#e4d0c9}@media (min-width:761px){.schedule-card:first-child{grid-template-columns:minmax(0,1fr) auto;column-gap:12px;display:grid}.schedule-card:first-child>header{grid-area:1/1;margin-bottom:12px}.schedule-card:first-child>.schedule-table-toolbar{grid-area:1/2;margin-bottom:12px}.schedule-card:first-child>.schedule-input-note,.schedule-card:first-child>.schedule-time-table{grid-column:1/-1}}@media (max-width:760px){.schedule-time-caption{color:#5a7084;font-size:11px;display:block}.schedule-time-pair input{margin-top:4px!important}.message-sendbar .message-wait-pill{border-radius:10px}.schedule-action{white-space:normal;max-width:100%}}.messages-page .message-sendbar button,.schedule-rules button[type=button],button.schedule-action[type=button]{min-height:44px}.academy-home{color:#243b53;background:#f5f7fa;min-width:0;min-height:100dvh;padding:32px clamp(20px,3.5vw,54px)}.academy-home-inner{max-width:1180px;margin:0 auto}.academy-home-heading{justify-content:space-between;align-items:center;gap:20px;margin-bottom:26px;display:flex}.academy-home-eyebrow{color:#6a7c87;letter-spacing:.03em;margin-bottom:6px;font-size:14px}.academy-home-heading h1{letter-spacing:-.04em;font-size:28px;font-weight:750;line-height:1.3}.academy-home-logout{color:#526777;background:#fff;border:1px solid #dce4ed;border-radius:12px;min-height:44px;padding:10px 16px;font-size:14px}.academy-home-overview{background:#f4f1e9;border:1px solid #e9e6dc;border-radius:24px;grid-template-columns:1fr 1fr;min-height:280px;margin-bottom:32px;display:grid;overflow:hidden}.academy-home-overview-copy{align-self:center;padding:32px 34px}.academy-home-overline{letter-spacing:.06em;color:#657b6e;font-size:12px;font-weight:650}.academy-home-overview h2{letter-spacing:-.035em;word-break:keep-all;overflow-wrap:break-word;margin:12px 0;font-family:Apple SD Gothic Neo,Malgun Gothic,sans-serif;font-size:clamp(32px,3.6vw,46px);font-weight:500;line-height:1.45}.academy-home-overview p{color:#60726e;font-size:15px;line-height:1.8}.academy-home-overview-copy>a{color:#fff;background:#2d756c;border-radius:12px;align-items:center;gap:20px;min-height:44px;margin-top:18px;padding:10px 17px;font-size:14px;font-weight:650;text-decoration:none;display:inline-flex}.academy-home-art{background:#eeeade;min-width:0;position:relative;overflow:hidden}.academy-home-art img{object-fit:cover;width:100%;height:100%;position:absolute;inset:0}.academy-home-section-heading{justify-content:space-between;align-items:baseline;gap:12px;margin-bottom:16px;display:flex}.academy-home-section-heading h2{letter-spacing:-.03em;font-size:20px;font-weight:700}.academy-home-section-heading>span{color:#788892;font-size:13px}.academy-home-workspaces{grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;display:grid}.academy-home-workspace{background:#fff;border:1px solid #e2e8ec;border-radius:18px;padding:22px;text-decoration:none;transition:border-color .15s,box-shadow .15s;display:block;position:relative;box-shadow:0 3px 12px #243b5303}.academy-home-workspace:hover{border-color:#9fbfb7;box-shadow:0 6px 18px #243b5309}.academy-home-work-icon{border-radius:15px;place-items:center;width:48px;height:48px;margin-bottom:16px;display:grid}.academy-home-work-icon.sage{color:#397667;background:#eaf3ed}.academy-home-work-icon.blue{color:#506f8b;background:#edf2f7}.academy-home-work-icon.sand{color:#9a7845;background:#f8f0e3}.academy-home-work-icon.rose{color:#a16e62;background:#f8ece8}.academy-home-workspace h3{letter-spacing:-.03em;margin-bottom:7px;font-size:17px;font-weight:700}.academy-home-workspace p{color:#6f808b;word-break:keep-all;padding-right:8px;font-size:13px;line-height:1.7}.academy-home-work-arrow{color:#8a9ba5;font-size:20px;position:absolute;top:25px;right:22px}.academy-home-footer{text-align:center;color:#8a979f;padding:28px 0 4px;font-size:12px}.academy-home a:focus-visible,.academy-home button:focus-visible{outline-offset:4px;outline:3px solid #2d8c82}@media (max-width:1100px){.academy-home-workspaces{grid-template-columns:repeat(2,minmax(0,1fr))}.academy-home-overview-copy{padding:26px}.academy-home{padding:24px}}@media (max-width:700px){.academy-home-heading h1{font-size:24px}.academy-home-overview{grid-template-columns:1fr}.academy-home-art{grid-row:1;height:160px}.academy-home-overview-copy{padding:24px}.academy-home-section-heading>span{display:none}.academy-home,.academy-home-workspace{padding:18px}.academy-home-workspaces{gap:12px}}@media (max-width:390px){.academy-home-workspaces{grid-template-columns:1fr}}.admin-nav-primary a{gap:12px;min-height:52px;font-size:16px;font-weight:650}.admin-nav-primary a:hover{color:#243b53;background:#f0f5f7}.admin-nav-primary a[aria-current=page]{color:#155f57;background:#dff1e9;font-weight:750;box-shadow:inset 4px 0 #2d8c82}.admin-shell h1{color:#243b53;font-size:26px;font-weight:750;line-height:1.35}.admin-shell h2{color:#243b53;font-size:18px;font-weight:750;line-height:1.4}.admin-shell section>div:first-child>h2,.admin-shell section>h2{background:#eef5f3;border-left:4px solid #2d8c82;border-radius:0 9px 9px 0;padding:9px 12px}.student-editor label{color:#3b5369;font-size:13px;font-weight:650}.admin-shell table th{color:#354f67;background:#eef3f7;font-size:12px;font-weight:700}@media (max-width:1000px){.admin-nav-primary a{gap:8px;min-height:48px;font-size:13px}.admin-shell h1{font-size:26px}.admin-shell h2{font-size:18px}}.student-directory label>.student-field-caption,.student-editor form>label>.student-field-caption{box-sizing:border-box;color:#294e6b;background:#edf3f8;border:1px solid #d8e5ee;border-radius:6px;justify-self:stretch;align-items:center;width:100%;min-width:0;min-height:32px;padding:6px 12px;font-size:13px;font-weight:700;line-height:19px;display:flex}.student-directory .student-directory-heading{gap:8px}.student-directory .student-directory-heading>h2{flex:120px;min-width:0;margin:0}.student-directory .student-directory-heading>div{flex-shrink:0;gap:8px}.student-directory table tr>:is(th,td)+:is(th,td){border-left:.5px solid #e5eaf0}.student-directory table :is(th,td){text-align:center;vertical-align:middle}.student-directory .student-actions-cell>div{justify-content:center;align-items:center;width:100%}.student-directory .student-actions-cell>div>button{white-space:nowrap;flex:1 1 0;min-width:0;min-height:40px;padding:8px 12px}.student-editor{--ui-control-height:40px}.student-editor form{row-gap:18px}.student-editor form>label{gap:7px}.student-editor form>label>:is(input,select){height:40px;min-height:40px;padding-top:8px;padding-bottom:8px}.dashboard-work{color:#294a44;background:#f6faf8;border:1px solid #dbe7e2;border-radius:18px;margin-top:24px;padding:18px}.dashboard-work>summary{cursor:pointer;min-height:44px;font-size:20px;font-weight:700}.dashboard-work>p{margin:8px 0 14px;font-size:13px;line-height:1.6}.dashboard-work-list{overscroll-behavior:contain;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;max-height:480px;display:grid;overflow:auto}.dashboard-work article{background:#fff;border:1px solid #dde7e2;border-radius:12px;min-width:0;padding:16px}.dashboard-work h3{font-size:16px;font-weight:700}.dashboard-work article p{overflow-wrap:anywhere;margin:8px 0;font-size:13px;line-height:1.6}.dashboard-work article .dashboard-work-status{font-size:17px;font-weight:700}.dashboard-work-time{color:#5f706c}.dashboard-work-actions{flex-wrap:wrap;gap:8px;margin-top:12px;display:flex}.dashboard-work-actions a,.dashboard-work-actions button,.dashboard-work-return{background:#edf6f1;border:1px solid #bfd5cc;border-radius:9px;justify-content:center;align-items:center;min-height:44px;padding:8px 12px;font-size:14px;display:inline-flex}@media (max-width:1100px){.dashboard-work-list{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width:600px){.dashboard-work-list{grid-template-columns:1fr;max-height:65dvh}.dashboard-work{padding:12px}.dashboard-work-actions a{flex:1}}@property --tw-space-y-reverse{syntax:"*";inherits:false;initial-value:0}@property --tw-divide-y-reverse{syntax:"*";inherits:false;initial-value:0}@property --tw-border-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-leading{syntax:"*";inherits:false}@property --tw-font-weight{syntax:"*";inherits:false}@property --tw-tracking{syntax:"*";inherits:false}@property --tw-ordinal{syntax:"*";inherits:false}@property --tw-slashed-zero{syntax:"*";inherits:false}@property --tw-numeric-figure{syntax:"*";inherits:false}@property --tw-numeric-spacing{syntax:"*";inherits:false}@property --tw-numeric-fraction{syntax:"*";inherits:false}@property --tw-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-shadow-color{syntax:"*";inherits:false}@property --tw-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-inset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-shadow-color{syntax:"*";inherits:false}@property --tw-inset-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-ring-color{syntax:"*";inherits:false}@property --tw-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-ring-color{syntax:"*";inherits:false}@property --tw-inset-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-ring-inset{syntax:"*";inherits:false}@property --tw-ring-offset-width{syntax:"<length>";inherits:false;initial-value:0}@property --tw-ring-offset-color{syntax:"*";inherits:false;initial-value:#fff}@property --tw-ring-offset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-blur{syntax:"*";inherits:false}@property --tw-brightness{syntax:"*";inherits:false}@property --tw-contrast{syntax:"*";inherits:false}@property --tw-grayscale{syntax:"*";inherits:false}@property --tw-hue-rotate{syntax:"*";inherits:false}@property --tw-invert{syntax:"*";inherits:false}@property --tw-opacity{syntax:"*";inherits:false}@property --tw-saturate{syntax:"*";inherits:false}@property --tw-sepia{syntax:"*";inherits:false}@property --tw-drop-shadow{syntax:"*";inherits:false}@property --tw-drop-shadow-color{syntax:"*";inherits:false}@property --tw-drop-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-drop-shadow-size{syntax:"*";inherits:false}