@import "https://fonts.googleapis.com/css2?family=Geist:wght@400;500;600;700&family=Instrument+Serif:ital@1&display=swap";@layer components;@layer properties{@supports (((-webkit-hyphens:none)) and (not (margin-trim:inline))) or ((-moz-orient:inline) and (not (color:rgb(from red r g b)))){*,:before,:after{--tw-translate-x:0;--tw-translate-y:0;--tw-translate-z:0;--tw-scale-x:1;--tw-scale-y:1;--tw-scale-z:1;--tw-rotate-x:initial;--tw-rotate-y:initial;--tw-rotate-z:initial;--tw-skew-x:initial;--tw-skew-y:initial;--tw-space-y-reverse:0;--tw-border-style:solid;--tw-font-weight:initial;--tw-tracking:initial;--tw-shadow:0 0 transparent;--tw-shadow-color:initial;--tw-shadow-alpha:100%;--tw-inset-shadow:0 0 transparent;--tw-inset-shadow-color:initial;--tw-inset-shadow-alpha:100%;--tw-ring-color:initial;--tw-ring-shadow:0 0 transparent;--tw-inset-ring-color:initial;--tw-inset-ring-shadow:0 0 transparent;--tw-ring-inset:initial;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-offset-shadow:0 0 transparent;--tw-outline-style:solid;--tw-blur:initial;--tw-brightness:initial;--tw-contrast:initial;--tw-grayscale:initial;--tw-hue-rotate:initial;--tw-invert:initial;--tw-opacity:initial;--tw-saturate:initial;--tw-sepia:initial;--tw-drop-shadow:initial;--tw-drop-shadow-color:initial;--tw-drop-shadow-alpha:100%;--tw-drop-shadow-size:initial;--tw-backdrop-blur:initial;--tw-backdrop-brightness:initial;--tw-backdrop-contrast:initial;--tw-backdrop-grayscale:initial;--tw-backdrop-hue-rotate:initial;--tw-backdrop-invert:initial;--tw-backdrop-opacity:initial;--tw-backdrop-saturate:initial;--tw-backdrop-sepia:initial;--tw-ease:initial}::backdrop{--tw-translate-x:0;--tw-translate-y:0;--tw-translate-z:0;--tw-scale-x:1;--tw-scale-y:1;--tw-scale-z:1;--tw-rotate-x:initial;--tw-rotate-y:initial;--tw-rotate-z:initial;--tw-skew-x:initial;--tw-skew-y:initial;--tw-space-y-reverse:0;--tw-border-style:solid;--tw-font-weight:initial;--tw-tracking:initial;--tw-shadow:0 0 transparent;--tw-shadow-color:initial;--tw-shadow-alpha:100%;--tw-inset-shadow:0 0 transparent;--tw-inset-shadow-color:initial;--tw-inset-shadow-alpha:100%;--tw-ring-color:initial;--tw-ring-shadow:0 0 transparent;--tw-inset-ring-color:initial;--tw-inset-ring-shadow:0 0 transparent;--tw-ring-inset:initial;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-offset-shadow:0 0 transparent;--tw-outline-style:solid;--tw-blur:initial;--tw-brightness:initial;--tw-contrast:initial;--tw-grayscale:initial;--tw-hue-rotate:initial;--tw-invert:initial;--tw-opacity:initial;--tw-saturate:initial;--tw-sepia:initial;--tw-drop-shadow:initial;--tw-drop-shadow-color:initial;--tw-drop-shadow-alpha:100%;--tw-drop-shadow-size:initial;--tw-backdrop-blur:initial;--tw-backdrop-brightness:initial;--tw-backdrop-contrast:initial;--tw-backdrop-grayscale:initial;--tw-backdrop-hue-rotate:initial;--tw-backdrop-invert:initial;--tw-backdrop-opacity:initial;--tw-backdrop-saturate:initial;--tw-backdrop-sepia:initial;--tw-ease:initial}}}@layer theme{:root{--font-sans:ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";--font-mono:ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;--color-white:#fff;--spacing:.25rem;--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-3xl:1.875rem;--text-3xl--line-height:calc(2.25 / 1.875);--font-weight-semibold:600;--font-weight-bold:700;--tracking-wide:.025em;--radius-lg:.5rem;--radius-xl:.75rem;--ease-in:cubic-bezier(.4, 0, 1, 1);--ease-out:cubic-bezier(0, 0, .2, 1);--ease-in-out:cubic-bezier(.4, 0, .2, 1);--default-transition-duration:.15s;--default-transition-timing-function:cubic-bezier(.4, 0, .2, 1);--default-font-family:var(--font-sans);--default-mono-font-family:var(--font-mono)}:host{--font-sans:ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";--font-mono:ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;--color-white:#fff;--spacing:.25rem;--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-3xl:1.875rem;--text-3xl--line-height:calc(2.25 / 1.875);--font-weight-semibold:600;--font-weight-bold:700;--tracking-wide:.025em;--radius-lg:.5rem;--radius-xl:.75rem;--ease-in:cubic-bezier(.4, 0, 1, 1);--ease-out:cubic-bezier(0, 0, .2, 1);--ease-in-out:cubic-bezier(.4, 0, .2, 1);--default-transition-duration:.15s;--default-transition-timing-function:cubic-bezier(.4, 0, .2, 1);--default-font-family:var(--font-sans);--default-mono-font-family:var(--font-mono)}}@layer base{*,:after,:before{box-sizing:border-box;border:0 solid;margin:0;padding:0}::backdrop{box-sizing:border-box;border:0 solid;margin:0;padding:0}::-webkit-file-upload-button{box-sizing:border-box;border:0 solid;margin:0;padding:0}::file-selector-button{box-sizing:border-box;border:0 solid;margin:0;padding:0}html{-webkit-text-size-adjust:100%;-moz-tab-size:4;tab-size:4;line-height:1.5;font-family:var(--default-font-family,ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji");font-feature-settings:var(--default-font-feature-settings,normal);font-variation-settings:var(--default-font-variation-settings,normal);-webkit-tap-highlight-color:transparent}:host{-webkit-text-size-adjust:100%;-moz-tab-size:4;tab-size:4;line-height:1.5;font-family:var(--default-font-family,ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji");font-feature-settings:var(--default-font-feature-settings,normal);font-variation-settings:var(--default-font-variation-settings,normal);-webkit-tap-highlight-color:transparent}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:var(--default-mono-font-family,ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace);font-feature-settings:var(--default-mono-font-feature-settings,normal);font-variation-settings:var(--default-mono-font-variation-settings,normal);font-size:1em}small{font-size:80%}sub,sup{vertical-align:baseline;font-size:75%;line-height:0;position:relative}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}:-moz-focusring{outline:auto}progress{vertical-align:baseline}summary{display:list-item}ol,ul,menu{list-style:none}img,svg,video,canvas,audio,iframe,embed,object{vertical-align:middle;display:block}img,video{max-width:100%;height:auto}button,input,select,optgroup,textarea{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:transparent;border-radius:0}::-webkit-file-upload-button{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:transparent;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:transparent;border-radius:0}:where(select:-webkit-any([multiple],[size])) optgroup{font-weight:bolder}:where(select:-moz-any([multiple],[size])) optgroup{font-weight:bolder}:where(select:is([multiple],[size])) optgroup{font-weight:bolder}:where(select:-webkit-any([multiple],[size])) optgroup option:not(:-webkit-any(:lang(ae),:lang(ar),:lang(arc),:lang(bcc),:lang(bqi),:lang(ckb),:lang(dv),:lang(fa),:lang(glk),:lang(he),:lang(ku),:lang(mzn),:lang(nqo),:lang(pnb),:lang(ps),:lang(sd),:lang(ug),:lang(ur),:lang(yi))){padding-left:20px}:where(select:-moz-any([multiple],[size])) optgroup option:not(:-moz-any(:lang(ae),:lang(ar),:lang(arc),:lang(bcc),:lang(bqi),:lang(ckb),:lang(dv),:lang(fa),:lang(glk),:lang(he),:lang(ku),:lang(mzn),:lang(nqo),:lang(pnb),:lang(ps),:lang(sd),:lang(ug),:lang(ur),:lang(yi))){padding-left:20px}:where(select:is([multiple],[size])) optgroup option:not(:is(:lang(ae),:lang(ar),:lang(arc),:lang(bcc),:lang(bqi),:lang(ckb),:lang(dv),:lang(fa),:lang(glk),:lang(he),:lang(ku),:lang(mzn),:lang(nqo),:lang(pnb),:lang(ps),:lang(sd),:lang(ug),:lang(ur),:lang(yi))){padding-left:20px}:where(select:-webkit-any([multiple],[size])) optgroup option:-webkit-any(:lang(ae),:lang(ar),:lang(arc),:lang(bcc),:lang(bqi),:lang(ckb),:lang(dv),:lang(fa),:lang(glk),:lang(he),:lang(ku),:lang(mzn),:lang(nqo),:lang(pnb),:lang(ps),:lang(sd),:lang(ug),:lang(ur),:lang(yi)){padding-right:20px}:where(select:-moz-any([multiple],[size])) optgroup option:-moz-any(:lang(ae),:lang(ar),:lang(arc),:lang(bcc),:lang(bqi),:lang(ckb),:lang(dv),:lang(fa),:lang(glk),:lang(he),:lang(ku),:lang(mzn),:lang(nqo),:lang(pnb),:lang(ps),:lang(sd),:lang(ug),:lang(ur),:lang(yi)){padding-right:20px}:where(select:is([multiple],[size])) optgroup option:is(:lang(ae),:lang(ar),:lang(arc),:lang(bcc),:lang(bqi),:lang(ckb),:lang(dv),:lang(fa),:lang(glk),:lang(he),:lang(ku),:lang(mzn),:lang(nqo),:lang(pnb),:lang(ps),:lang(sd),:lang(ug),:lang(ur),:lang(yi)){padding-right:20px}:not(:-webkit-any(:lang(ae),:lang(ar),:lang(arc),:lang(bcc),:lang(bqi),:lang(ckb),:lang(dv),:lang(fa),:lang(glk),:lang(he),:lang(ku),:lang(mzn),:lang(nqo),:lang(pnb),:lang(ps),:lang(sd),:lang(ug),:lang(ur),:lang(yi)))::-webkit-file-upload-button{margin-right:4px}:not(:-moz-any(:lang(ae),:lang(ar),:lang(arc),:lang(bcc),:lang(bqi),:lang(ckb),:lang(dv),:lang(fa),:lang(glk),:lang(he),:lang(ku),:lang(mzn),:lang(nqo),:lang(pnb),:lang(ps),:lang(sd),:lang(ug),:lang(ur),:lang(yi)))::file-selector-button{margin-right:4px}:not(:is(:lang(ae),:lang(ar),:lang(arc),:lang(bcc),:lang(bqi),:lang(ckb),:lang(dv),:lang(fa),:lang(glk),:lang(he),:lang(ku),:lang(mzn),:lang(nqo),:lang(pnb),:lang(ps),:lang(sd),:lang(ug),:lang(ur),:lang(yi)))::file-selector-button{margin-right:4px}:-webkit-any(:lang(ae),:lang(ar),:lang(arc),:lang(bcc),:lang(bqi),:lang(ckb),:lang(dv),:lang(fa),:lang(glk),:lang(he),:lang(ku),:lang(mzn),:lang(nqo),:lang(pnb),:lang(ps),:lang(sd),:lang(ug),:lang(ur),:lang(yi))::-webkit-file-upload-button{margin-left:4px}:-moz-any(:lang(ae),:lang(ar),:lang(arc),:lang(bcc),:lang(bqi),:lang(ckb),:lang(dv),:lang(fa),:lang(glk),:lang(he),:lang(ku),:lang(mzn),:lang(nqo),:lang(pnb),:lang(ps),:lang(sd),:lang(ug),:lang(ur),:lang(yi))::file-selector-button{margin-left:4px}:is(:lang(ae),:lang(ar),:lang(arc),:lang(bcc),:lang(bqi),:lang(ckb),:lang(dv),:lang(fa),:lang(glk),:lang(he),:lang(ku),:lang(mzn),:lang(nqo),:lang(pnb),:lang(ps),:lang(sd),:lang(ug),:lang(ur),:lang(yi))::file-selector-button{margin-left:4px}::placeholder{opacity:1}@supports (not ((-webkit-appearance:-apple-pay-button))) or (contain-intrinsic-size:1px){::placeholder{color:currentColor}@supports (color:color-mix(in lab, red, red)){::placeholder{color:color-mix(in oklab, currentcolor 50%, transparent)}}}textarea{resize:vertical}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-date-and-time-value{min-height:1lh;text-align:inherit}::-webkit-datetime-edit{display:inline-flex}::-webkit-datetime-edit-fields-wrapper{padding:0}::-webkit-datetime-edit{padding-top:0;padding-bottom:0}::-webkit-datetime-edit-year-field{padding-top:0;padding-bottom:0}::-webkit-datetime-edit-month-field{padding-top:0;padding-bottom:0}::-webkit-datetime-edit-day-field{padding-top:0;padding-bottom:0}::-webkit-datetime-edit-hour-field{padding-top:0;padding-bottom:0}::-webkit-datetime-edit-minute-field{padding-top:0;padding-bottom:0}::-webkit-datetime-edit-second-field{padding-top:0;padding-bottom:0}::-webkit-datetime-edit-millisecond-field{padding-top:0;padding-bottom:0}::-webkit-datetime-edit-meridiem-field{padding-top:0;padding-bottom:0}::-webkit-calendar-picker-indicator{line-height:1}:-moz-ui-invalid{box-shadow:none}button{-webkit-appearance:button;-moz-appearance:button;appearance:button}input:where([type=button],[type=reset],[type=submit]){-webkit-appearance:button;-moz-appearance:button;appearance:button}::-webkit-file-upload-button{-webkit-appearance:button;-moz-appearance:button;appearance:button}::file-selector-button{-webkit-appearance:button;-moz-appearance:button;appearance:button}::-webkit-inner-spin-button{height:auto}::-webkit-outer-spin-button{height:auto}[hidden]:where(:not([hidden=until-found])){display:none!important}}@layer utilities{.invisible{visibility:hidden}.visible{visibility:visible}.absolute{position:absolute}.fixed{position:fixed}.relative{position:relative}.static{position:static}.sticky{position:-webkit-sticky;position:sticky}.start:not(:-webkit-any(:lang(ae),:lang(ar),:lang(arc),:lang(bcc),:lang(bqi),:lang(ckb),:lang(dv),:lang(fa),:lang(glk),:lang(he),:lang(ku),:lang(mzn),:lang(nqo),:lang(pnb),:lang(ps),:lang(sd),:lang(ug),:lang(ur),:lang(yi))){left:var(--spacing)}.start:not(:-moz-any(:lang(ae),:lang(ar),:lang(arc),:lang(bcc),:lang(bqi),:lang(ckb),:lang(dv),:lang(fa),:lang(glk),:lang(he),:lang(ku),:lang(mzn),:lang(nqo),:lang(pnb),:lang(ps),:lang(sd),:lang(ug),:lang(ur),:lang(yi))){left:var(--spacing)}.start:not(:is(:lang(ae),:lang(ar),:lang(arc),:lang(bcc),:lang(bqi),:lang(ckb),:lang(dv),:lang(fa),:lang(glk),:lang(he),:lang(ku),:lang(mzn),:lang(nqo),:lang(pnb),:lang(ps),:lang(sd),:lang(ug),:lang(ur),:lang(yi))){left:var(--spacing)}.start:-webkit-any(:lang(ae),:lang(ar),:lang(arc),:lang(bcc),:lang(bqi),:lang(ckb),:lang(dv),:lang(fa),:lang(glk),:lang(he),:lang(ku),:lang(mzn),:lang(nqo),:lang(pnb),:lang(ps),:lang(sd),:lang(ug),:lang(ur),:lang(yi)){right:var(--spacing)}.start:-moz-any(:lang(ae),:lang(ar),:lang(arc),:lang(bcc),:lang(bqi),:lang(ckb),:lang(dv),:lang(fa),:lang(glk),:lang(he),:lang(ku),:lang(mzn),:lang(nqo),:lang(pnb),:lang(ps),:lang(sd),:lang(ug),:lang(ur),:lang(yi)){right:var(--spacing)}.start:is(:lang(ae),:lang(ar),:lang(arc),:lang(bcc),:lang(bqi),:lang(ckb),:lang(dv),:lang(fa),:lang(glk),:lang(he),:lang(ku),:lang(mzn),:lang(nqo),:lang(pnb),:lang(ps),:lang(sd),:lang(ug),:lang(ur),:lang(yi)){right:var(--spacing)}.end:not(:-webkit-any(:lang(ae),:lang(ar),:lang(arc),:lang(bcc),:lang(bqi),:lang(ckb),:lang(dv),:lang(fa),:lang(glk),:lang(he),:lang(ku),:lang(mzn),:lang(nqo),:lang(pnb),:lang(ps),:lang(sd),:lang(ug),:lang(ur),:lang(yi))){right:var(--spacing)}.end:not(:-moz-any(:lang(ae),:lang(ar),:lang(arc),:lang(bcc),:lang(bqi),:lang(ckb),:lang(dv),:lang(fa),:lang(glk),:lang(he),:lang(ku),:lang(mzn),:lang(nqo),:lang(pnb),:lang(ps),:lang(sd),:lang(ug),:lang(ur),:lang(yi))){right:var(--spacing)}.end:not(:is(:lang(ae),:lang(ar),:lang(arc),:lang(bcc),:lang(bqi),:lang(ckb),:lang(dv),:lang(fa),:lang(glk),:lang(he),:lang(ku),:lang(mzn),:lang(nqo),:lang(pnb),:lang(ps),:lang(sd),:lang(ug),:lang(ur),:lang(yi))){right:var(--spacing)}.end:-webkit-any(:lang(ae),:lang(ar),:lang(arc),:lang(bcc),:lang(bqi),:lang(ckb),:lang(dv),:lang(fa),:lang(glk),:lang(he),:lang(ku),:lang(mzn),:lang(nqo),:lang(pnb),:lang(ps),:lang(sd),:lang(ug),:lang(ur),:lang(yi)){left:var(--spacing)}.end:-moz-any(:lang(ae),:lang(ar),:lang(arc),:lang(bcc),:lang(bqi),:lang(ckb),:lang(dv),:lang(fa),:lang(glk),:lang(he),:lang(ku),:lang(mzn),:lang(nqo),:lang(pnb),:lang(ps),:lang(sd),:lang(ug),:lang(ur),:lang(yi)){left:var(--spacing)}.end:is(:lang(ae),:lang(ar),:lang(arc),:lang(bcc),:lang(bqi),:lang(ckb),:lang(dv),:lang(fa),:lang(glk),:lang(he),:lang(ku),:lang(mzn),:lang(nqo),:lang(pnb),:lang(ps),:lang(sd),:lang(ug),:lang(ur),:lang(yi)){left:var(--spacing)}.top-0{top:calc(var(--spacing) * 0)}.top-1{top:calc(var(--spacing) * 1)}.top-1\/2{top:50%}.top-12{top:calc(var(--spacing) * 12)}.right-0{right:calc(var(--spacing) * 0)}.left-0{left:calc(var(--spacing) * 0)}.left-3{left:calc(var(--spacing) * 3)}.z-20{z-index:20}.z-40{z-index:40}.z-50{z-index:50}.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-1{margin:calc(var(--spacing) * 1)}.m-2{margin:calc(var(--spacing) * 2)}.m-3{margin:calc(var(--spacing) * 3)}.mx-auto{margin-left:auto;margin-right:auto}.mt-1{margin-top:calc(var(--spacing) * 1)}.mt-2{margin-top:calc(var(--spacing) * 2)}.mt-4{margin-top:calc(var(--spacing) * 4)}.mt-5{margin-top:calc(var(--spacing) * 5)}.mb-2{margin-bottom:calc(var(--spacing) * 2)}.block{display:block}.contents{display:contents}.flex{display:flex}.grid{display:grid}.hidden{display:none}.inline{display:inline}.inline-block{display:inline-block}.inline-flex{display:inline-flex}.table{display:table}.h-16{height:calc(var(--spacing) * 16)}.min-h-screen{min-height:100vh}.w-\[248px\]{width:248px}.w-full{width:100%}.max-w-\[400px\]{max-width:400px}.max-w-\[1200px\]{max-width:1200px}.max-w-\[1440px\]{max-width:1440px}.min-w-\[220px\]{min-width:220px}.min-w-\[760px\]{min-width:760px}.min-w-\[900px\]{min-width:900px}.min-w-\[980px\]{min-width:980px}.flex-1{flex:1}.flex-shrink,.shrink{flex-shrink:1}.shrink-0{flex-shrink:0}.border-collapse{border-collapse:collapse}.-translate-y-1{--tw-translate-y:calc(var(--spacing) * -1);translate:var(--tw-translate-x) var(--tw-translate-y)}.-translate-y-1\/2{--tw-translate-y:calc(calc(1 / 2 * 100%) * -1);translate:var(--tw-translate-x) var(--tw-translate-y)}.scale-3d{scale:var(--tw-scale-x) var(--tw-scale-y) var(--tw-scale-z)}.transform{transform:var(--tw-rotate-x,) var(--tw-rotate-y,) var(--tw-rotate-z,) var(--tw-skew-x,) var(--tw-skew-y,)}.resize{resize:both}.columns-2{columns:2}.columns-3{columns:3}.columns-4{columns:4}.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-\[220px_1fr\]{grid-template-columns:220px 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:calc(var(--spacing) * 1)}.gap-2{gap:calc(var(--spacing) * 2)}.gap-3{gap:calc(var(--spacing) * 3)}.gap-4{gap:calc(var(--spacing) * 4)}:where(.space-y-2>:not(:last-child)){--tw-space-y-reverse:0;margin-top:calc(calc(var(--spacing) * 2) * var(--tw-space-y-reverse));margin-bottom: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-top:calc(calc(var(--spacing) * 3) * var(--tw-space-y-reverse));margin-bottom: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-top:calc(calc(var(--spacing) * 4) * var(--tw-space-y-reverse));margin-bottom: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-top:calc(calc(var(--spacing) * 5) * var(--tw-space-y-reverse));margin-bottom:calc(calc(var(--spacing) * 5) * calc(1 - var(--tw-space-y-reverse)))}.overflow-auto{overflow:auto}.overflow-hidden{overflow:hidden}.rounded{border-radius:.25rem}.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-b{border-bottom-style:var(--tw-border-style);border-bottom-width:1px}.border-\[\#d8deea\]{border-color:#d8deea}.border-\[\#dfe4ee\]{border-color:#dfe4ee}.border-\[\#e5e7eb\]{border-color:#e5e7eb}.border-\[\#e5eaf2\]{border-color:#e5eaf2}.border-\[\#eef0f4\]{border-color:#eef0f4}.bg-\[\#4c1d95\]{background-color:#4c1d95}.bg-\[\#f8fafc\]{background-color:#f8fafc}.bg-\[\#fbfcff\]{background-color:#fbfcff}.bg-white{background-color:var(--color-white)}.bg-white\/92{background-color:rgba(255,255,255,.92)}@supports (color:color-mix(in lab, red, red)){.bg-white\/92{background-color:color-mix(in oklab, var(--color-white) 92%, transparent)}}.p-3{padding:calc(var(--spacing) * 3)}.p-4{padding:calc(var(--spacing) * 4)}.p-5{padding:calc(var(--spacing) * 5)}.px-3{padding-inline:calc(var(--spacing) * 3)}.px-4{padding-inline:calc(var(--spacing) * 4)}.px-5{padding-inline:calc(var(--spacing) * 5)}.px-8{padding-inline:calc(var(--spacing) * 8)}.py-2{padding-block:calc(var(--spacing) * 2)}.py-3{padding-block:calc(var(--spacing) * 3)}.py-4{padding-block:calc(var(--spacing) * 4)}.py-6{padding-block:calc(var(--spacing) * 6)}.text-center{text-align:center}.text-left{text-align:left}.text-right{text-align:right}.text-3xl{font-size:var(--text-3xl);line-height:var(--tw-leading,var(--text-3xl--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-xs{font-size:var(--text-xs);line-height:var(--tw-leading,var(--text-xs--line-height))}.font-bold{--tw-font-weight:var(--font-weight-bold);font-weight:var(--font-weight-bold)}.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)}.text-wrap{text-wrap:wrap}.text-\[\#4b5563\]{color:#4b5563}.text-\[\#4b5565\]{color:#4b5565}.text-\[\#4c1d95\]{color:#4c1d95}.text-\[\#6b7280\]{color:#6b7280}.text-\[\#9ca3af\]{color:#9ca3af}.text-\[\#94a3b8\]{color:#94a3b8}.text-\[\#373a46\]{color:#373a46}.text-\[\#2563eb\]{color:#2563eb}.text-\[\#15803d\]{color:#15803d}.text-\[\#111827\]{color:#111827}.text-\[\#202330\]{color:#202330}.text-\[\#dc2626\]{color:#dc2626}.text-white{color:var(--color-white)}.text-white\/86{color:rgba(255,255,255,.86)}@supports (color:color-mix(in lab, red, red)){.text-white\/86{color:color-mix(in oklab, var(--color-white) 86%, transparent)}}.lowercase{text-transform:lowercase}.uppercase{text-transform:uppercase}.italic{font-style:italic}.underline{-webkit-text-decoration-line:underline;text-decoration-line:underline}.shadow{--tw-shadow:0 1px 3px 0 var(--tw-shadow-color,rgba(0,0,0,.1)), 0 1px 2px -1px var(--tw-shadow-color,rgba(0,0,0,.1));box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.shadow-lg{--tw-shadow:0 10px 15px -3px var(--tw-shadow-color,rgba(0,0,0,.1)), 0 4px 6px -4px var(--tw-shadow-color,rgba(0,0,0,.1));box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.shadow-xl{--tw-shadow:0 20px 25px -5px var(--tw-shadow-color,rgba(0,0,0,.1)), 0 8px 10px -6px var(--tw-shadow-color,rgba(0,0,0,.1));box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.outline{outline-style:var(--tw-outline-style);outline-width:1px}.blur{--tw-blur:blur(8px);filter:var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,) var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,) var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,)}.drop-shadow{--tw-drop-shadow-size:drop-shadow(0 1px 2px var(--tw-drop-shadow-color,rgba(0,0,0,.1))) drop-shadow(0 1px 1px var(--tw-drop-shadow-color,rgba(0,0,0,.06)));--tw-drop-shadow:drop-shadow(0 1px 2px rgba(0,0,0,.1)) drop-shadow(0 1px 1px rgba(0,0,0,.06));filter:var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,) var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,) var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,)}.invert{--tw-invert:invert(100%);filter:var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,) var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,) var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,)}.filter{filter:var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,) var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,) var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,)}.backdrop-blur{--tw-backdrop-blur:blur(8px);-webkit-backdrop-filter:var(--tw-backdrop-blur,) var(--tw-backdrop-brightness,) var(--tw-backdrop-contrast,) var(--tw-backdrop-grayscale,) var(--tw-backdrop-hue-rotate,) var(--tw-backdrop-invert,) var(--tw-backdrop-opacity,) var(--tw-backdrop-saturate,) var(--tw-backdrop-sepia,);backdrop-filter:var(--tw-backdrop-blur,) var(--tw-backdrop-brightness,) var(--tw-backdrop-contrast,) var(--tw-backdrop-grayscale,) var(--tw-backdrop-hue-rotate,) var(--tw-backdrop-invert,) var(--tw-backdrop-opacity,) var(--tw-backdrop-saturate,) var(--tw-backdrop-sepia,)}.backdrop-filter{-webkit-backdrop-filter:var(--tw-backdrop-blur,) var(--tw-backdrop-brightness,) var(--tw-backdrop-contrast,) var(--tw-backdrop-grayscale,) var(--tw-backdrop-hue-rotate,) var(--tw-backdrop-invert,) var(--tw-backdrop-opacity,) var(--tw-backdrop-saturate,) var(--tw-backdrop-sepia,);backdrop-filter:var(--tw-backdrop-blur,) var(--tw-backdrop-brightness,) var(--tw-backdrop-contrast,) var(--tw-backdrop-grayscale,) var(--tw-backdrop-hue-rotate,) var(--tw-backdrop-invert,) var(--tw-backdrop-opacity,) var(--tw-backdrop-saturate,) var(--tw-backdrop-sepia,)}.transition{transition-property:color,background-color,border-color,outline-color,-webkit-text-decoration-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))}.ease-in{--tw-ease:var(--ease-in);transition-timing-function:var(--ease-in)}.ease-in-out{--tw-ease:var(--ease-in-out);transition-timing-function:var(--ease-in-out)}.ease-out{--tw-ease:var(--ease-out);transition-timing-function:var(--ease-out)}@media (hover:hover){.hover\:border-\[\#2563eb\]:hover{border-color:#2563eb}.hover\:bg-\[\#f5f7fa\]:hover{background-color:#f5f7fa}.hover\:bg-white\/12:hover{background-color:rgba(255,255,255,.12)}@supports (color:color-mix(in lab, red, red)){.hover\:bg-white\/12:hover{background-color:color-mix(in oklab, var(--color-white) 12%, transparent)}}}@media (min-width:80rem){.xl\:flex{display:flex}}}:root{color:#202330;background:#f5f7fa;font-family:Geist,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Noto Sans,Ubuntu,Cantarell,Helvetica Neue,sans-serif}*{box-sizing:border-box}html,body{min-width:0;margin:0;overflow-x:hidden}button,input,select{font:inherit}button{cursor:pointer}.login-screen button,.login-screen input{-webkit-appearance:none;-moz-appearance:none;appearance:none}.theme-toggle-btn{color:#475569;background:#fff;border:1px solid #dbe2ef;border-radius:10px;justify-content:center;align-items:center;width:34px;height:34px;transition:background .15s,border-color .15s,color .15s;display:inline-flex}.theme-toggle-btn:hover{color:#1d4ed8;background:#f8fafc;border-color:#c7d2fe}.login-theme-toggle{z-index:30;position:absolute;top:18px;right:18px}.serif-italic{font-family:Instrument Serif,Georgia,serif;font-style:italic}.login-brand-switch{z-index:30;-webkit-backdrop-filter:blur(4px);isolation:isolate;background:rgba(255,255,255,.78);border:1px solid rgba(37,99,235,.22);border-radius:999px;gap:4px;min-width:184px;padding:4px;display:inline-flex;position:absolute;top:18px;left:18px;overflow:hidden;box-shadow:0 8px 24px rgba(15,36,86,.1)}.login-brand-switch:before{content:"";z-index:0;border-radius:999px;width:calc(50% - 4px);height:calc(100% - 8px);transition:transform .3s,background .3s,box-shadow .3s;position:absolute;top:4px;left:4px;transform:translate(0)}.login-brand-switch.theme-journal:before{background:linear-gradient(135deg,#ef4444 0%,#dc2626 100%);box-shadow:0 8px 16px rgba(220,38,38,.24)}.login-brand-switch.theme-omni:before{background:linear-gradient(135deg,#2563eb 0%,#4f46e5 100%);transform:translate(100%);box-shadow:0 8px 16px rgba(37,99,235,.24)}.login-brand-option{color:#1e3a8a;z-index:1;background:0 0;border:0;border-radius:999px;flex:1 1 0;padding:8px 14px;font-size:13px;font-weight:700;line-height:1;transition:color .25s;position:relative}.login-brand-option.active{color:#fff}.login-brand-switch.theme-journal .login-brand-option.active,.login-brand-switch.theme-omni .login-brand-option.active{box-shadow:none;background:0 0}.login-screen.brand-journal .login-static-bg{background:radial-gradient(circle at 18% 18%,rgba(220,38,38,.28),transparent 30%),radial-gradient(circle at 78% 20%,rgba(244,63,94,.22),transparent 34%),radial-gradient(circle at 86% 76%,rgba(249,115,22,.16),transparent 28%),linear-gradient(#fff7f7 0%,#fff 62%,#fff5f5 100%)}.login-screen.brand-journal .login-static-bg:after{background:linear-gradient(115deg,transparent 0,transparent 42%,rgba(244,63,94,.18) 42.2%,rgba(244,63,94,.18) 42.7%,transparent 43%,transparent 58%,rgba(220,38,38,.12) 58.2%,rgba(220,38,38,.12) 58.7%,transparent 59%),linear-gradient(rgba(255,255,255,.02),#fff 78%)}.login-screen.brand-journal .data-node{background:#ef4444;box-shadow:0 0 0 9px rgba(239,68,68,.14),0 0 34px rgba(239,68,68,.55)}.login-screen.brand-journal .data-node:before,.login-screen.brand-journal .data-node:after{background:linear-gradient(90deg,rgba(239,68,68,.5),transparent)}.login-screen.brand-journal .login-back-title{color:rgba(127,29,29,.32)}.login-screen.brand-journal .login-card{border-color:rgba(255,255,255,.4)}.login-screen.brand-journal .login-card h1{color:#7f1d1d;text-shadow:0 10px 28px rgba(220,38,38,.18)}.login-screen.brand-journal .login-role-badge{color:rgba(159,18,57,.82);border-color:rgba(220,38,38,.22)}.login-screen.brand-journal .login-field input{color:#7f1d1d;border-bottom-color:rgba(159,18,57,.32)}.login-screen.brand-journal .login-field label{color:rgba(127,29,29,.74)}.login-screen.brand-journal .login-field input:focus{border-bottom-color:#ef4444}.login-screen.brand-journal .login-field:focus-within svg,.login-screen.brand-journal .login-field input:focus~label,.login-screen.brand-journal .login-field input:valid~label{color:#b91c1c}.login-screen.brand-journal .input-group svg{color:rgba(159,18,57,.66)}.login-screen.brand-journal .login-btn{background:radial-gradient(circle at var(--mx) var(--my), rgba(255,255,255,.16), transparent 56%), linear-gradient(135deg, #dc2626 0%, #e11d48 58%, #f97316 100%)}.login-screen.brand-journal .login-btn:hover{background:radial-gradient(circle at var(--mx) var(--my), rgba(255,255,255,.2), transparent 60%), linear-gradient(135deg, #b91c1c 0%, #be123c 58%, #ea580c 100%);box-shadow:0 12px 24px rgba(220,38,38,.3)}.login-screen.brand-journal .signup-link{color:#7f1d1d}.login-screen.brand-journal .signup-link button{color:#b91c1c}.login-screen.brand-journal .signup-link button:hover{color:#7f1d1d}.login-static-bg{background:radial-gradient(circle at 18% 18%,rgba(37,99,235,.28),transparent 30%),radial-gradient(circle at 78% 20%,rgba(124,58,237,.2),transparent 34%),radial-gradient(circle at 86% 76%,rgba(14,165,233,.16),transparent 28%),linear-gradient(#f7fbff 0%,#fff 62%,#f8fbff 100%);position:absolute;top:0;bottom:0;left:0;right:0;overflow:hidden}.login-static-bg:before{content:"";background-image:linear-gradient(rgba(15,36,86,.08) 1px,transparent 1px),linear-gradient(90deg,rgba(15,36,86,.08) 1px,transparent 1px);background-size:76px 76px;position:absolute;top:0;bottom:0;left:0;right:0;-webkit-mask-image:linear-gradient(#000 0%,rgba(0,0,0,.58) 54%,transparent 92%);mask-image:linear-gradient(#000 0%,rgba(0,0,0,.58) 54%,transparent 92%)}.login-static-bg:after{content:"";background:linear-gradient(115deg,transparent 0,transparent 42%,rgba(14,165,233,.16) 42.2%,rgba(14,165,233,.16) 42.7%,transparent 43%,transparent 58%,rgba(124,58,237,.12) 58.2%,rgba(124,58,237,.12) 58.7%,transparent 59%),linear-gradient(rgba(255,255,255,.02),#fff 78%);position:absolute;top:0;bottom:0;left:0;right:0}.digital-panel{z-index:1;background:radial-gradient(130% 120% at 0 0,rgba(244,63,94,.12),transparent 46%),linear-gradient(150deg,#26242b 0%,#18171d 46%,#0d0c11 100%);border:1px solid rgba(244,63,94,.55);border-radius:22px;width:340px;height:212px;position:absolute;overflow:hidden;box-shadow:0 30px 64px rgba(8,6,12,.5),0 0 0 1px rgba(244,63,94,.22),0 0 42px rgba(244,63,94,.32)}.digital-panel:before{content:none}.itop-mark{z-index:2;align-items:flex-end;gap:8px;display:flex;position:absolute;top:50%;left:30px;transform:translateY(-54%)}.itop-it{color:#f4f5f7;letter-spacing:.14em;font-size:15px;font-weight:700;position:absolute;bottom:44px;left:1px}.itop-logo{color:#f7f8fa;letter-spacing:-.07em;font-size:58px;font-weight:800;line-height:.78}.itop-bracket{border-top:11px solid #f43f5e;border-right:11px solid #f43f5e;border-top-right-radius:4px;width:30px;height:52px;margin-bottom:4px}.itop-corner{z-index:2;border-top:2.5px solid rgba(244,63,94,.9);border-right:2.5px solid rgba(244,63,94,.9);border-top-right-radius:6px;width:28px;height:24px;position:absolute;top:18px;right:18px}.itop-sign{z-index:2;background:linear-gradient(90deg,#f43f5e 0%,rgba(244,63,94,.55) 46%,rgba(244,63,94,.05) 100%);border-radius:999px;height:2px;position:absolute;bottom:36px;left:30px;right:34px}:root[data-theme=light] .digital-panel{background:radial-gradient(130% 120% at 0 0,rgba(244,63,94,.08),transparent 46%),linear-gradient(150deg,#fff 0%,#f6f7f9 48%,#eceef2 100%);border-color:rgba(244,63,94,.42);box-shadow:0 26px 56px rgba(15,23,42,.16),0 0 0 1px rgba(244,63,94,.16),0 0 30px rgba(244,63,94,.18)}:root[data-theme=light] .itop-it{color:#1c1b22}:root[data-theme=light] .itop-logo{color:#15141a}.panel-left{animation:7.8s ease-in-out infinite panel-float-left;top:16vh;left:8vw;transform:rotate(-8deg)}.panel-right{animation:9.4s ease-in-out -2.6s infinite panel-float-right;bottom:17vh;right:7vw;transform:rotate(7deg)}@keyframes panel-float-left{0%,to{transform:translateY(0)rotate(-8deg)}50%{transform:translateY(-22px)rotate(-8deg)}}@keyframes panel-float-right{0%,to{transform:translateY(0)rotate(7deg)}45%{transform:translateY(18px)rotate(7deg)}72%{transform:translateY(-10px)rotate(7deg)}}.data-node{z-index:2;background:#0ea5e9;border-radius:50%;width:12px;height:12px;position:absolute;box-shadow:0 0 0 9px rgba(14,165,233,.12),0 0 34px rgba(14,165,233,.55)}.data-node:before,.data-node:after{content:"";transform-origin:0;background:linear-gradient(90deg,rgba(14,165,233,.5),transparent);height:1px;position:absolute;top:5px}.data-node:before{width:210px;left:12px}.data-node:after{width:150px;left:12px;transform:rotate(34deg)}.node-a{top:26vh;left:31vw}.node-b{top:20vh;right:28vw}.node-c{bottom:24vh;left:21vw}.login-back-title{z-index:1;color:rgba(15,36,86,.22);width:min(90vw,920px);max-width:920px;text-shadow:none;letter-spacing:-.055em;text-align:center;mix-blend-mode:multiply;pointer-events:none;-webkit-user-select:none;-moz-user-select:none;user-select:none;flex-direction:column;justify-content:center;align-items:center;font-size:max(26px,min(3.5vw,54px));font-weight:800;line-height:.94;display:flex;position:absolute;top:auto;bottom:max(28px,min(7vh,76px));left:50%;transform:translate(-50%)}.login-back-title>span{width:100%;display:block}.login-back-title-kicker{color:currentColor;letter-spacing:.34em;margin-bottom:11px;font-size:max(10px,min(1.1vw,14px));font-weight:750;line-height:1}.login-back-title-primary{font-weight:850}.login-back-title-detail{color:currentColor;letter-spacing:.26em;margin-top:13px;font-size:max(10px,min(1.25vw,16px));font-weight:700;line-height:1.15}.login-back-title .serif-italic{font-size:78px;font-weight:400}.itop-brand-logo{border-radius:9px;flex:none;justify-content:center;align-items:center;display:inline-flex;overflow:hidden;box-shadow:0 8px 20px rgba(15,23,42,.12)}.itop-brand-logo img{object-fit:cover;image-rendering:auto;width:100%;height:100%;display:none}:root:not([data-theme=dark]) .itop-brand-logo-light,:root[data-theme=dark] .itop-brand-logo-dark{display:block}.journal-sidebar-logo,.omni-sidebar-logo{width:184px;height:61px}.journal-sidebar.collapsed .journal-sidebar-logo,.omni-sidebar.collapsed .omni-sidebar-logo{border-radius:8px;width:36px;height:36px}.journal-sidebar.collapsed .journal-sidebar-logo img,.omni-sidebar.collapsed .omni-sidebar-logo img{object-position:31% center;width:108px;max-width:none}.glass-surface{justify-content:center;align-items:center;transition:opacity .26s ease-out;display:flex;position:relative;overflow:hidden}.glass-surface__filter{pointer-events:none;opacity:0;z-index:-1;width:100%;height:100%;position:absolute;top:0;bottom:0;left:0;right:0}.glass-surface__content{border-radius:inherit;z-index:1;flex-direction:column;justify-content:center;align-items:stretch;width:100%;height:100%;padding:46px 34px 36px;display:flex;position:relative}.glass-surface--svg{box-shadow:inset 0 0 2px 1px rgba(0,0,0,.15),inset 0 0 10px 4px rgba(0,0,0,.1),0 28px 70px rgba(29,78,216,.18),inset 0 4px 16px rgba(17,17,26,.05),inset 0 8px 24px rgba(17,17,26,.05),inset 0 16px 56px rgba(17,17,26,.05);box-shadow:inset 0 0 2px 1px color(display-p3 0 0 0/.15),inset 0 0 10px 4px color(display-p3 0 0 0/.1),0 28px 70px color(display-p3 .166583 .301661 .815807/.180392),inset 0 4px 16px color(display-p3 .0666667 .0666667 .0992517/.0509804),inset 0 8px 24px color(display-p3 .0666667 .0666667 .0992517/.0509804),inset 0 16px 56px color(display-p3 .0666667 .0666667 .0992517/.0509804);box-shadow:inset 0 0 2px 1px lab(0% 0 0/.15),inset 0 0 10px 4px lab(0% 0 0/.1),0 28px 70px lab(37.6581% 27.0182 -76.4974/.180392),inset 0 4px 16px lab(5.32203% 1.61424 -5.88284/.0509804),inset 0 8px 24px lab(5.32203% 1.61424 -5.88284/.0509804),inset 0 16px 56px lab(5.32203% 1.61424 -5.88284/.0509804)}.glass-surface--fallback,.glass-surface--webkit{border:1px solid rgba(255,255,255,.3);box-shadow:inset 0 0 2px 1px rgba(0,0,0,.15),inset 0 0 10px 4px rgba(0,0,0,.1),0 28px 70px rgba(29,78,216,.18),inset 0 4px 16px rgba(17,17,26,.05),inset 0 8px 24px rgba(17,17,26,.05),inset 0 16px 56px rgba(17,17,26,.05);box-shadow:inset 0 0 2px 1px color(display-p3 0 0 0/.15),inset 0 0 10px 4px color(display-p3 0 0 0/.1),0 28px 70px color(display-p3 .166583 .301661 .815807/.180392),inset 0 4px 16px color(display-p3 .0666667 .0666667 .0992517/.0509804),inset 0 8px 24px color(display-p3 .0666667 .0666667 .0992517/.0509804),inset 0 16px 56px color(display-p3 .0666667 .0666667 .0992517/.0509804);box-shadow:inset 0 0 2px 1px lab(0% 0 0/.15),inset 0 0 10px 4px lab(0% 0 0/.1),0 28px 70px lab(37.6581% 27.0182 -76.4974/.180392),inset 0 4px 16px lab(5.32203% 1.61424 -5.88284/.0509804),inset 0 8px 24px lab(5.32203% 1.61424 -5.88284/.0509804),inset 0 16px 56px lab(5.32203% 1.61424 -5.88284/.0509804)}.glass-surface--mobile-glass{-webkit-backdrop-filter:blur(5px)saturate(1.28)brightness(1.04);border:1px solid rgba(255,255,255,.62);box-shadow:0 20px 54px rgba(15,23,42,.14),inset 0 1px rgba(255,255,255,.62),inset 0 -24px 52px rgba(255,255,255,.12)}.login-card.glass-surface--fallback,.login-card.glass-surface--webkit{border-color:rgba(255,255,255,.42);background:hsla(0,0%,100%,var(--glass-frost))!important;-webkit-backdrop-filter:blur(12px) saturate(var(--glass-saturation)) brightness(1.1)!important}.login-card.glass-surface--fallback:before,.login-card.glass-surface--webkit:before{opacity:.4;background:radial-gradient(120% 90% at 26% 0,rgba(255,255,255,.2),transparent 42%),linear-gradient(rgba(255,255,255,.12),rgba(239,246,255,.06) 42%,rgba(37,99,235,.05))}.login-card.glass-surface--webkit{box-shadow:inset 0 0 2px 1px rgba(0,0,0,.15),inset 0 0 10px 4px rgba(0,0,0,.1),0 28px 70px rgba(29,78,216,.18),inset 0 4px 16px rgba(17,17,26,.05),inset 0 8px 24px rgba(17,17,26,.05),inset 0 16px 56px rgba(17,17,26,.05);box-shadow:inset 0 0 2px 1px color(display-p3 0 0 0/.15),inset 0 0 10px 4px color(display-p3 0 0 0/.1),0 28px 70px color(display-p3 .166583 .301661 .815807/.180392),inset 0 4px 16px color(display-p3 .0666667 .0666667 .0992517/.0509804),inset 0 8px 24px color(display-p3 .0666667 .0666667 .0992517/.0509804),inset 0 16px 56px color(display-p3 .0666667 .0666667 .0992517/.0509804);box-shadow:inset 0 0 2px 1px lab(0% 0 0/.15),inset 0 0 10px 4px lab(0% 0 0/.1),0 28px 70px lab(37.6581% 27.0182 -76.4974/.180392),inset 0 4px 16px lab(5.32203% 1.61424 -5.88284/.0509804),inset 0 8px 24px lab(5.32203% 1.61424 -5.88284/.0509804),inset 0 16px 56px lab(5.32203% 1.61424 -5.88284/.0509804);background:hsla(0,0%,100%,var(--glass-frost))!important;-webkit-backdrop-filter:blur(12px) saturate(var(--glass-saturation)) brightness(1.04)!important}.login-card{z-index:10;color:#172554;isolation:isolate;border:1px solid rgba(255,255,255,.42);width:100%;max-width:380px;min-height:370px;position:relative}.login-card.glass-surface--mobile-glass{background:linear-gradient(145deg,rgba(255,255,255,.72),rgba(255,255,255,.44) 48%,rgba(239,246,255,.38)),rgba(255,255,255,.5)!important}.login-card:before{content:"";border-radius:inherit;pointer-events:none;opacity:.4;z-index:0;background:radial-gradient(120% 90% at 26% 0,rgba(255,255,255,.2),transparent 42%),linear-gradient(rgba(255,255,255,.12),rgba(239,246,255,.06) 42%,rgba(37,99,235,.05));position:absolute;top:7px;bottom:7px;left:7px;right:7px}.login-card.glass-surface--mobile-glass:after{content:"";border-radius:inherit;pointer-events:none;opacity:.7;z-index:0;background:linear-gradient(135deg,rgba(255,255,255,.56),transparent 32%),radial-gradient(120% 80% at 18% 0,rgba(255,255,255,.42),transparent 46%);position:absolute;top:1px;bottom:1px;left:1px;right:1px}.login-card h1{color:#172554;text-align:center;letter-spacing:2px;text-shadow:0 10px 28px rgba(29,78,216,.15);margin:0 0 16px;font-size:21px;font-weight:600}.login-role-badge{color:rgba(30,64,175,.76);background:rgba(255,255,255,.16);border:1px solid rgba(37,99,235,.18);border-radius:999px;align-self:center;align-items:center;gap:8px;margin-bottom:34px;padding:8px 12px;font-size:14px;font-weight:600;display:inline-flex}.login-error-toast{color:#fff;text-align:left;background:linear-gradient(135deg,rgba(127,29,29,.96),rgba(76,5,25,.94));border:1px solid rgba(248,113,113,.34);border-radius:8px;align-items:flex-start;gap:12px;width:100%;margin:-14px 0 18px;padding:14px 16px;display:flex;box-shadow:0 16px 42px rgba(76,5,25,.28)}.login-error-toast svg{color:#fb7185;flex:none;margin-top:2px}.login-error-toast span{flex:1;min-width:0}.login-error-toast strong{font-size:14px;font-weight:700;line-height:1.25;display:block}.login-error-toast small{color:rgba(255,255,255,.82);margin-top:3px;font-size:12px;line-height:1.35;display:block}.login-error-toast button{color:rgba(255,255,255,.78);background:0 0;border:0;flex:none;padding:1px}.login-error-toast button:hover{color:#fff}.login-field{margin-bottom:35px;position:relative}.input-group svg{color:rgba(88,28,135,.62);transition:all .3s;position:absolute;top:13px;left:0}.login-field input{color:#3b0764;background:0 0;border:0;border-bottom:1.5px solid rgba(88,28,135,.3);border-radius:0;outline:none;width:100%;height:46px;padding:12px 12px 12px 30px;font-size:15px;transition:all .3s}.login-field label{color:rgba(59,7,100,.72);pointer-events:none;font-size:15px;font-weight:500;transition:all .3s;position:absolute;top:12px;left:30px}.login-field input:focus{border-bottom-color:#a855f7}.login-field:focus-within svg{color:#581c87}.login-field input:focus~label,.login-field input:valid~label{color:#581c87;font-size:12px;font-weight:600;top:-18px;left:0}.login-magnet-zone{width:calc(100% + 36px);margin:-6px -18px 0;padding:18px}.login-btn{--mx:50%;--my:50%;--tilt-x:0deg;--tilt-y:0deg;--drift-x:0px;--drift-y:0px;background:radial-gradient(circle at var(--mx) var(--my), rgba(255,255,255,.16), transparent 56%), linear-gradient(135deg, #2563eb 0%, #4f46e5 58%, #7c3aed 100%);color:#fff;letter-spacing:1.5px;text-transform:uppercase;width:100%;transform:perspective(640px) translate3d(var(--drift-x), var(--drift-y), 0) rotateX(var(--tilt-y)) rotateY(var(--tilt-x));transform-style:preserve-3d;isolation:isolate;will-change:transform, background;border:0;border-radius:8px;margin-top:0;padding:14px;font-size:14px;font-weight:600;transition:background .18s,box-shadow .18s,transform .28s cubic-bezier(.22,1,.36,1);display:block;position:relative;overflow:hidden}.login-btn>span{z-index:2;color:#fff;text-shadow:0 1px 3px rgba(15,23,42,.28);position:relative}.login-btn:before{content:"";left:calc(var(--mx) - 36%);border-radius:inherit;opacity:.18;pointer-events:none;z-index:1;background:linear-gradient(105deg,transparent 0%,rgba(255,255,255,.18) 45%,transparent 100%);width:72%;height:184%;transition:opacity .18s;position:absolute;top:-42%;transform:translate(-12%)rotate(8deg)}.login-btn:after{content:"";left:var(--mx);top:var(--my);opacity:0;pointer-events:none;z-index:1;background:radial-gradient(circle,rgba(255,255,255,.12),transparent 66%);border-radius:50%;width:110px;height:110px;transition:opacity .18s;position:absolute;transform:translate(-50%,-50%)}.login-btn:hover{background:radial-gradient(circle at var(--mx) var(--my), rgba(255,255,255,.2), transparent 60%), linear-gradient(135deg, #1d4ed8 0%, #4338ca 58%, #6d28d9 100%);box-shadow:0 12px 24px rgba(29,78,216,.28)}.login-btn:hover:before{opacity:.34}.login-btn:hover:after{opacity:.52}.login-btn:active{transform:perspective(640px) translate3d(var(--drift-x), var(--drift-y), 0) rotateX(var(--tilt-y)) rotateY(var(--tilt-x)) scale(.99)}.login-btn:disabled{cursor:wait;opacity:.78}@media (prefers-reduced-motion:reduce){.glass-surface--mobile-glass{-webkit-backdrop-filter:none}.login-magnet-zone{width:100%;margin:10px 0 0;padding:0}.login-btn{transition:background .18s,box-shadow .18s;transform:none}.login-btn:active{transform:none}}.signup-link{color:#3b0764;text-align:center;margin:28px 0 0;font-size:13px}.signup-link button{color:#6d28d9;background:0 0;border:0;margin-left:5px;padding:0;font-size:13px;font-weight:600}.signup-link button:hover{color:#3b0764;text-decoration:underline}.access-message{color:rgba(255,255,255,.82);text-align:center;background:rgba(76,29,149,.42);border-radius:8px;margin-top:14px;padding:10px 34px 10px 12px;font-size:12px;line-height:1.45;position:relative}.access-message span{display:block}.access-message button{color:rgba(255,255,255,.78);cursor:pointer;background:rgba(255,255,255,.14);border:0;border-radius:999px;justify-content:center;align-items:center;width:22px;height:22px;padding:0;display:inline-flex;position:absolute;top:7px;right:7px}.access-message button:hover{color:#fff;background:rgba(255,255,255,.22);outline:none}.access-message button:focus-visible{color:#fff;background:rgba(255,255,255,.22);outline:none}.app-shell{flex-direction:column;min-height:100vh;display:flex}.workspace-theme{background:radial-gradient(circle at 8% 10%,rgba(37,99,235,.07),transparent 20%),radial-gradient(circle at 92% 8%,rgba(124,58,237,.1),transparent 30%),linear-gradient(#f6f9ff 0%,#f8fbff 48%,#f5f7fa 100%);position:relative;overflow-x:hidden}.workspace-theme:before{content:"";z-index:0;pointer-events:none;background-image:linear-gradient(rgba(15,36,86,.055) 1px,transparent 1px),linear-gradient(90deg,rgba(15,36,86,.055) 1px,transparent 1px);background-size:72px 72px;position:fixed;top:0;bottom:0;left:0;right:0;-webkit-mask-image:linear-gradient(rgba(0,0,0,.72),transparent 86%);mask-image:linear-gradient(rgba(0,0,0,.72),transparent 86%)}.workspace-theme:after{content:"";z-index:0;pointer-events:none;background:linear-gradient(116deg,transparent 0,transparent 38%,rgba(14,165,233,.08) 38.15%,rgba(14,165,233,.08) 38.55%,transparent 38.7%,transparent 64%,rgba(124,58,237,.07) 64.15%,rgba(124,58,237,.07) 64.55%,transparent 64.7%),radial-gradient(circle at 72% 78%,rgba(14,165,233,.08),transparent 26%);position:fixed;top:0;bottom:0;left:0;right:0}.workspace-theme>header,.workspace-theme>main,.workspace-theme>footer{position:relative}.workspace-theme>main,.workspace-theme>footer{z-index:1}.workspace-theme{color:#14264b}.workspace-theme :where(h1,h2,h3,p,span,div,label,td,th,button,input,select){color:#14264b}.workspace-theme :where([class*="text-[#202330]"],[class*="text-[#373a46]"],[class*="text-[#4b5565]"],[class*="text-[#6b7280]"],[class*="text-[#4c1d95]"]){color:#14264b!important}.workspace-theme :where([class*="text-[#dc2626]"]){color:#dc2626!important}.workspace-theme :where([class*="text-[#15803d]"]){color:#15803d!important}.workspace-theme :where(.btn-primary,.btn-primary *,.btn-danger,.btn-danger *){color:#fff!important}.workspace-theme aside.no-print{isolation:isolate;-webkit-backdrop-filter:blur(3px)saturate(118%);border:1px solid rgba(37,99,235,.34);overflow:hidden;box-shadow:0 26px 64px rgba(29,78,216,.12),inset 0 1px rgba(255,255,255,.34);background:linear-gradient(155deg,rgba(37,99,235,.11),rgba(168,85,247,.055) 52%,rgba(255,255,255,.1)),rgba(255,255,255,.12)!important}.workspace-theme aside.no-print button{--mx:50%;--my:50%;--tilt-x:0deg;--tilt-y:0deg;--drift-x:0px;--drift-y:0px;text-shadow:0 1px 1px rgba(255,255,255,.62),0 0 12px rgba(255,255,255,.34);-webkit-backdrop-filter:blur(2px)saturate(116%);transform:perspective(640px) translate3d(var(--drift-x), var(--drift-y), 0) rotateX(var(--tilt-y)) rotateY(var(--tilt-x));transform-style:preserve-3d;will-change:transform, background;border:1px solid rgba(37,99,235,.12);font-size:13.5px;font-weight:700;transition:background .18s,border-color .18s,box-shadow .18s,transform .1s;position:relative;overflow:hidden;box-shadow:inset 0 1px rgba(255,255,255,.34),0 9px 20px rgba(29,78,216,.043);background:radial-gradient(circle at var(--mx) var(--my), rgba(255,255,255,.62), rgba(255,255,255,.2) 30%, transparent 62%), linear-gradient(135deg, rgba(255,255,255,.44), rgba(255,255,255,.18) 52%, rgba(37,99,235,.04)), rgba(255,255,255,.2)!important;color:#0f2452!important}.workspace-theme aside.no-print button:before{content:"";left:calc(var(--mx) - 36%);border-radius:inherit;opacity:.32;pointer-events:none;background:linear-gradient(105deg,transparent 0%,rgba(255,255,255,.46) 45%,transparent 100%);width:72%;height:176%;transition:opacity .18s;position:absolute;top:-38%;transform:translate(-12%)rotate(8deg)}.workspace-theme aside.no-print button:after{content:"";left:var(--mx);top:var(--my);opacity:0;pointer-events:none;background:radial-gradient(circle,rgba(96,165,250,.2),transparent 66%);border-radius:50%;width:86px;height:86px;transition:opacity .18s;position:absolute;transform:translate(-50%,-50%)}.workspace-theme aside.no-print button>*{z-index:1;position:relative}.workspace-theme aside.no-print button:not(.bg-white){color:#132a5b!important}.workspace-theme aside.no-print button svg{color:#4f46e5}.workspace-theme aside.no-print button:hover{border-color:rgba(37,99,235,.34);box-shadow:inset 0 1px rgba(255,255,255,.48),0 13px 28px rgba(29,78,216,.12);background:radial-gradient(circle at var(--mx) var(--my), rgba(255,255,255,.78), rgba(219,234,254,.28) 32%, transparent 66%), linear-gradient(135deg, rgba(255,255,255,.58), rgba(219,234,254,.26) 52%, rgba(99,102,241,.08)), rgba(255,255,255,.3)!important}.workspace-theme aside.no-print button:hover:before{opacity:.78}.workspace-theme aside.no-print button:hover:after{opacity:1}.workspace-theme aside.no-print button.bg-white{border:1px solid rgba(37,99,235,.42);box-shadow:inset 0 1px rgba(255,255,255,.56),0 14px 34px rgba(29,78,216,.14);background:radial-gradient(circle at var(--mx) var(--my), rgba(255,255,255,.82), rgba(191,219,254,.3) 32%, transparent 66%), linear-gradient(135deg, rgba(255,255,255,.7), rgba(191,219,254,.3) 52%, rgba(99,102,241,.09)), rgba(255,255,255,.44)!important;color:#0b2a62!important}.workspace-theme aside.no-print button.bg-white svg{color:#2563eb}.table-input{text-align:center;background:#fff;border:1px solid #d9deea;border-radius:6px;width:74px;padding:7px 8px}.table-input:focus,.field:focus{border-color:#2563eb;outline:2px solid rgba(37,99,235,.22)}.field{color:#202330;background:#fff;border:1px solid #d8deea;border-radius:8px;width:100%;padding:10px 12px}.header-search-input{padding-left:42px}.header-brand-logo{object-fit:cover;border-radius:7px;width:28px;height:28px;box-shadow:0 4px 10px rgba(76,29,149,.18)}.header-tools{flex:none;min-width:0;margin-left:auto}.header-pill,.header-icon-btn,.header-user-btn{color:#14264b;white-space:nowrap;background:linear-gradient(135deg,rgba(255,255,255,.78),rgba(239,246,255,.46)),rgba(255,255,255,.72);border:1px solid rgba(37,99,235,.14);border-radius:10px;justify-content:center;align-items:center;gap:8px;min-height:42px;padding:0 10px;font-size:13px;font-weight:700;display:inline-flex;box-shadow:inset 0 1px rgba(255,255,255,.64),0 8px 20px rgba(29,78,216,.05)}.header-tools .header-pill{text-overflow:ellipsis;max-width:142px;overflow:hidden}.header-date-pill{min-width:82px;padding:0 14px}.header-pill:hover,.header-icon-btn:hover,.header-user-btn:hover{background:linear-gradient(135deg,rgba(255,255,255,.92),rgba(219,234,254,.58)),rgba(255,255,255,.78);border-color:rgba(37,99,235,.28)}.header-status{color:#14532d}.status-dot{background:#22c55e;border-radius:50%;width:8px;height:8px;box-shadow:0 0 0 4px rgba(34,197,94,.14)}.header-icon-btn{width:38px;min-width:38px;padding:0}.header-user-btn{gap:3px;width:48px;min-width:48px;padding:0}.header-user-btn span{color:#14264b;font-size:12px;font-weight:800}.header-pill svg,.header-icon-btn svg,.header-user-btn svg{color:#2563eb;flex:none}.header-pill-icon-only{width:42px;padding:0}.btn-primary{color:#fff;background:linear-gradient(135deg,#1e40af 0%,#2563eb 56%,#0891b2 100%);border-radius:10px;padding:10px 14px;font-weight:600;box-shadow:inset -4px -6px 25px rgba(201,201,201,.08),inset 4px 4px 10px rgba(29,29,29,.24)}.btn-secondary{color:#373a46;background:#fff;border:1px solid #d8deea;border-radius:10px;padding:10px 14px;font-weight:600}.btn-danger{color:#fff;background:#dc2626;border-radius:10px;padding:10px 14px;font-weight:600}.rating-table th,.rating-table td{vertical-align:middle;border-bottom:1px solid #e2e7f0;padding:12px 14px}.rating-table th{color:#4b5565;letter-spacing:.04em;text-transform:uppercase;background:#f8fafc;font-size:12px;font-weight:700}.retakes-table th,.retakes-table td{text-align:left}.retakes-table{table-layout:fixed}.retakes-table .retakes-col-group,.retakes-table .retakes-cell-group,.retakes-table .retakes-col-total,.retakes-table .retakes-cell-total{text-align:center}.retakes-table .retakes-col-student{width:42%}.retakes-table .retakes-col-group{width:16%}.retakes-table .retakes-col-total{width:12%}.retakes-table .retakes-col-action{width:30%}.retakes-table .retakes-cell-action,.retakes-table .retakes-head-center{text-align:center}.retakes-table .retakes-head-student{text-align:left}.retakes-action-btn{justify-content:center;min-width:176px;display:inline-flex}.retakes-action-btn.is-selected{color:#b91c1c;background:#fff1f2;border-color:#fca5a5}.retakes-group-grid{grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:10px;display:grid}.retakes-group-card{background:#fff;border:1px solid #dfe4ee;border-radius:8px;grid-template-columns:1fr auto;align-items:center;gap:10px;padding:12px;display:grid}.retakes-group-card strong{color:#202330;font-size:15px;display:block}.retakes-group-card span{color:#6b7280;margin-top:3px;font-size:12px;display:block}.retakes-group-count{color:#475569;text-align:center;background:#f1f5f9;border-radius:8px;min-width:52px;padding:8px 6px;font-weight:800;line-height:1}.retakes-group-count.has-debtors{color:#b91c1c;background:#fee2e2}.retakes-group-count small{margin-top:4px;font-size:10px;font-weight:700;display:block}.retakes-group-main,.retakes-group-extra{grid-column:1/-1;justify-content:center;width:100%}.retakes-group-main:disabled,.retakes-group-extra:disabled{cursor:not-allowed;opacity:.55}.table-scroll{-webkit-overflow-scrolling:touch;scrollbar-width:thin;position:relative}@media (max-width:1200px){.header-bar{gap:12px}.header-search-wrap{max-width:none}.app-main{gap:16px;padding:18px 16px}.metric-grid,.quick-groups-grid,.form-grid,.directory-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.form-grid-rating{grid-template-columns:repeat(3,minmax(0,1fr))}}@media (max-width:900px){.workspace-theme{background:radial-gradient(circle at 0 4%,rgba(37,99,235,.06),transparent 18%),radial-gradient(circle at 100% 0,rgba(124,58,237,.08),transparent 26%),linear-gradient(#f7fbff 0%,#f8fbff 48%,#f5f7fa 100%)}.header-bar{flex-wrap:wrap;height:auto;min-height:64px;padding:10px 14px}.header-brand{flex:auto;min-width:0;font-size:15px}.header-brand svg{width:23px;height:23px}.header-search-wrap{flex:1 0 100%;order:3;min-width:0}.header-search-input{height:42px}.header-tools{display:none!important}.header-logout{flex:none;padding:9px 12px}.app-main{flex-direction:column;gap:14px;padding:14px}.side-nav{z-index:2;position:relative;width:100%!important;padding:10px!important}.side-nav nav{scroll-snap-type:x proximity;-webkit-overflow-scrolling:touch;flex-direction:row;gap:8px;padding-bottom:2px;overflow-x:auto}.side-nav nav button{scroll-snap-align:start;white-space:nowrap;flex:none;min-width:148px}.content-area{width:100%}.panel-header{flex-direction:column;align-items:stretch}.panel-header .btn-primary,.panel-header .btn-secondary,.panel-header .btn-danger,.action-row>button{justify-content:center}.panel-body{padding:16px}.form-grid-rating,.retakes-controls,.students-grid,.profile-grid{grid-template-columns:1fr}.action-row{flex-wrap:wrap}.log-row,.list-row{align-items:flex-start;gap:12px}.footer-bar{flex-direction:column;align-items:flex-start;gap:6px}}@media (max-width:640px){body{background:#f5f7fa}.workspace-theme:before,.workspace-theme:after{display:none}.login-screen{align-items:flex-start;min-height:100dvh;padding:28px 16px}.login-main{max-width:none}.login-card{width:100%;max-width:380px}.login-card.glass-surface--mobile-glass{border-color:rgba(255,255,255,.7);box-shadow:0 18px 42px rgba(15,23,42,.14),inset 0 1px rgba(255,255,255,.66),inset 0 -20px 44px rgba(255,255,255,.1)}.login-card.glass-surface--mobile-glass:before{opacity:.34}.login-card .glass-surface__content{padding:34px 22px 28px}.login-brand-switch{-webkit-backdrop-filter:none}.login-field input,.login-field label,.input-group svg{transition-duration:.16s}.login-magnet-zone{width:100%;margin:10px 0 0;padding:0}.login-btn{transform-style:flat;will-change:transform;transition:background .16s,box-shadow .16s,transform .12s;transform:translateZ(0)}.login-btn:active{transform:translateZ(0)scale(.99)}.login-btn:before,.login-btn:after{display:none}.digital-panel{animation:none}.login-back-title{width:calc(100vw - 32px);font-size:max(22px,min(7vw,34px));line-height:.94;top:auto;bottom:26px}.login-back-title .serif-italic{font-size:max(42px,min(13vw,64px))}.digital-panel{opacity:.62;width:240px;height:158px}.panel-left{top:8vh;left:-92px}.panel-right{bottom:8vh;right:-98px}.data-node:before{width:110px}.data-node:after{width:82px}.header-bar{gap:8px;padding:9px 12px}.header-brand{flex:none;gap:0;font-size:0}.header-brand svg{width:28px;height:28px}.header-logout{min-width:42px;margin-left:auto;padding:9px 11px}.header-logout svg{width:15px;height:15px}.app-main{gap:10px;padding:10px 10px 76px}.side-nav{z-index:60;position:fixed;bottom:10px;left:10px;right:10px;box-shadow:0 18px 45px rgba(15,23,42,.22);border-radius:14px!important;padding:7px!important}.side-nav nav{gap:6px;padding-bottom:0}.side-nav nav button{min-width:112px;font-size:12px;border-radius:10px!important;padding:9px 10px!important}.metric-grid,.quick-groups-grid,.form-grid,.directory-grid{grid-template-columns:1fr}.metric-card{padding:16px}.metric-card .text-3xl{font-size:28px}.panel{border-radius:10px;overflow:hidden}.panel-header{padding:14px}.panel-header h2{font-size:17px}.panel-header p{font-size:13px}.panel-body{padding:12px}.inline-form{flex-direction:column}.inline-form button,.action-row button,.btn-primary,.btn-secondary,.btn-danger{justify-content:center;width:100%}.table-scroll{max-width:calc(100vw - 20px);margin-left:-6px;margin-right:-6px;border-radius:8px!important}.rating-table{font-size:12px;min-width:620px!important}.rating-table th,.rating-table td{padding:9px}.table-input{width:54px;min-height:38px;padding:7px 5px}.field,input.field,select.field{min-height:42px;font-size:15px}.retakes-action-btn{min-width:132px;padding-left:9px;padding-right:9px}.statement-header,.statement-header-exam,.statement-header-complex{max-width:100%;font-size:9px}.log-row,.list-row{flex-direction:column}.log-row>div:last-child{text-align:left}.footer-bar{font-size:13px}}.print-area{display:none}.official-statement{color:#000;font-family:Times New Roman,Times,serif}.official-statement-sheet{max-width:780px;margin:0 auto;padding:0 2px;font-size:14px;line-height:1.25}.statement-header{text-align:center;text-transform:uppercase;max-width:680px;margin:0 auto 22px;font-size:13px;line-height:1.2}.statement-header-exam{margin-bottom:18px}.statement-header-complex{text-transform:none;max-width:700px;margin-bottom:12px;font-size:10px}.official-statement h1{text-align:center;margin:0 0 12px;font-size:17px;line-height:1.2}.statement-study-form,.statement-retake-title{text-align:center;margin:0 0 12px}.statement-retake-title{text-align:left}.statement-meta{margin:0 0 18px}.statement-meta p{margin:2px 0}.statement-meta-exam{margin-left:54px}.statement-meta-complex{text-align:center;margin:0 0 12px;font-size:10px;font-weight:700;line-height:1.12}.statement-meta-complex p{margin:1px 0}.statement-selected{text-underline-offset:2px;text-decoration:underline}.statement-highlight{color:#d40000;font-weight:700}.statement-line{text-align:center;vertical-align:baseline;border-bottom:1px solid #000;min-width:210px;min-height:16px;padding:0 6px;display:inline-block}.statement-line-short{text-align:center;min-width:120px}.statement-line-long{min-width:205px}.official-table{border-collapse:collapse;table-layout:fixed;width:100%;font-size:13px}.official-table th,.official-table td{vertical-align:middle;color:#000;border:1px solid #000;padding:5px 6px}.official-table th{text-align:center;font-weight:700}.official-table td:first-child,.official-exam-table td:nth-child(3),.official-exam-table td:nth-child(4){text-align:center}.official-exam-table th:first-child{width:42px}.official-exam-table th:nth-child(2){width:268px}.official-exam-table th:nth-child(3){width:96px}.official-exam-table th:nth-child(6){width:108px}.official-retake-table th:first-child{width:38px}.official-retake-table th:nth-child(2){width:166px}.official-retake-table th:nth-child(3){width:184px}.official-retake-table th:nth-child(4){width:153px}.official-retake-table th:nth-child(5){width:106px}.official-retake-table td{text-align:center;height:46px}.official-retake-table td:nth-child(2){text-align:center}.official-complex-table{font-size:10px}.official-complex-table th,.official-complex-table td{text-align:center;padding:2px 3px}.official-complex-table thead th{vertical-align:bottom}.official-complex-table .statement-vertical{writing-mode:vertical-rl;white-space:nowrap;width:34px;height:128px;padding:5px 1px;line-height:1.05;transform:rotate(180deg)}.official-complex-table .statement-phase-one{background:#ead1dc}.official-complex-table .statement-phase-two{background:#d5a6bd}.official-complex-table .statement-phase-sum{background:#c27ba0}.official-complex-table .statement-total-head,.official-complex-table tbody td:last-child{color:#000;background:red;font-weight:700}.official-complex-table thead th:first-child,.official-complex-table td:first-child{width:24px}.official-complex-table thead th:nth-child(2),.official-complex-table td:nth-child(2){text-align:left;width:132px}.official-complex-table tbody td{height:18px;line-height:1.05}.statement-signatures{margin-top:38px;font-size:14px}.statement-signatures p{margin:28px 0 0}.statement-signatures-retake,.statement-signatures-retake p{margin-top:34px}@media print{body{background:#fff;min-width:0}.no-print{display:none!important}.print-area{color:#000;background:#fff;padding:16mm 12mm;display:block!important}.print-area table{border-collapse:collapse;width:100%;font-size:12px}.print-area th,.print-area td{text-align:left;border:1px solid #111827;padding:6px 8px}.official-statement-sheet{max-width:none;padding:0}.official-table th,.official-table td{border-color:#000;padding:5px 6px}.official-table th,.print-area .official-table td{text-align:center}.print-area .official-exam-table td:nth-child(2),.print-area .official-exam-table td:nth-child(5),.print-area .official-complex-table td:nth-child(2){text-align:left}.print-area .official-retake-table td:nth-child(2){text-align:center}.statement-page-break{break-before:page}}.journal-shell{color:#202330;background:#f7f8fb;grid-template-columns:240px 1fr;min-height:100vh;display:grid}.journal-shell.is-collapsed{grid-template-columns:64px 1fr}.journal-sidebar{background:#fff;border-right:1px solid #e5e7eb;flex-direction:column;gap:4px;padding:18px 14px;display:flex}.journal-sidebar.collapsed{padding:18px 8px}.journal-logo{padding:2px 0 20px}.journal-sidebar.collapsed .journal-logo{justify-content:center;padding:2px 0 16px;display:flex}.journal-nav{flex-direction:column;flex:1;gap:2px;display:flex}.journal-nav-item{color:#4b5563;text-align:left;background:0 0;border:0;border-radius:10px;align-items:center;gap:12px;padding:10px 12px;font-size:14px;font-weight:500;transition:all .15s;display:flex}.journal-nav-item-text,.journal-collapse-text{white-space:nowrap;opacity:1;will-change:max-width, opacity, transform;max-width:180px;transition:max-width .22s,opacity .2s,transform .2s;display:inline-block;overflow:hidden;transform:translate(0)}.journal-sidebar.collapsed .journal-nav-item{justify-content:center;gap:0;padding:10px 0}.journal-sidebar.collapsed .journal-nav-item-text,.journal-sidebar.collapsed .journal-collapse-text{opacity:0;max-width:0;transform:translate(-6px)}.journal-nav-item:hover{color:#111827;background:#f3f4f6}.journal-nav-item.active{color:#dc2626;background:#fff1f2;font-weight:600}.journal-nav-item.active svg{color:#dc2626}.journal-collapse{color:#6b7280;background:0 0;border:0;border-radius:10px;align-items:center;gap:12px;margin-top:auto;padding:10px 12px;font-size:14px;font-weight:500;display:flex}.journal-sidebar.collapsed .journal-collapse{justify-content:center;gap:0;padding:10px 0}.journal-collapse:hover{color:#dc2626;background:#fff1f2}.journal-collapse .rotated{transform:rotate(180deg)}.journal-content{flex-direction:column;min-width:0;display:flex}.journal-topbar{background:#f7f8fb;align-items:center;gap:12px;padding:22px 32px 14px;display:flex}.journal-topbar-burger{color:#4b5563;background:#fff;border:0;border-radius:10px;justify-content:center;align-items:center;width:36px;height:36px;display:flex}.journal-topbar-burger:hover{background:#f3f4f6}.journal-title{color:#111827;flex:1;margin:0;font-size:24px;font-weight:700}.journal-user-wrap{position:relative}.journal-user{background:#fff;border:1px solid #e5e7eb;border-radius:999px;align-items:center;gap:10px;padding:6px 14px 6px 6px;display:flex}.journal-user:hover{border-color:#fca5a5}.journal-avatar{color:#6b7280;background:#f3f4f6;border-radius:50%;justify-content:center;align-items:center;width:36px;height:36px;display:flex}.journal-user-info{flex-direction:column;line-height:1.15;display:flex}.journal-user-info strong{color:#111827;font-size:13px;font-weight:700}.journal-user-info span{color:#6b7280;font-size:12px}.journal-user-menu{z-index:30;background:#fff;border:1px solid #e5e7eb;border-radius:10px;min-width:140px;padding:6px;position:absolute;top:calc(100% + 6px);right:0;box-shadow:0 12px 24px rgba(15,23,42,.1)}.journal-user-menu button{color:#111827;text-align:left;background:0 0;border:0;border-radius:8px;align-items:center;gap:8px;width:100%;padding:8px 10px;font-size:13px;display:flex}.journal-user-menu button:hover{color:#dc2626;background:#fff1f2}.journal-main{isolation:isolate;flex:1;min-width:0;padding:8px 32px 32px;position:relative}.journal-main:before{content:"";z-index:0;pointer-events:none;background:radial-gradient(circle at 8% 10%,rgba(239,68,68,.12),transparent 28%),radial-gradient(circle at 88% 8%,rgba(249,115,22,.12),transparent 30%),radial-gradient(circle at 80% 82%,rgba(236,72,153,.08),transparent 32%),linear-gradient(#f8fafc 0%,#f7f8fb 45%,#f4f6fb 100%);position:absolute;top:0;bottom:0;left:0;right:0}.journal-main>*{z-index:1;position:relative}.journal-grid{grid-template-columns:minmax(0,1fr) 280px;grid-template-areas:"pill pill""schedule stats""attendance stats""recent stats""homework stats";gap:16px;width:100%;max-width:1280px;margin:0 auto;display:grid}.journal-week-pill{color:#111827;background:#fff;border:1px solid #e5e7eb;border-radius:999px;grid-area:pill;align-items:center;gap:10px;width:-webkit-fit-content;width:-moz-fit-content;width:fit-content;padding:8px 14px;font-size:13px;font-weight:600;display:inline-flex}.journal-week-pill svg{color:#dc2626}.journal-week-pill button{color:#4b5563;background:#f3f4f6;border:0;border-radius:6px;width:22px;height:22px;font-size:14px;line-height:1}.journal-week-pill button:hover{background:#e5e7eb}.journal-card{-webkit-backdrop-filter:blur(6px);background:rgba(255,255,255,.9);border:1px solid #e5e7eb;border-radius:14px;padding:18px 20px;box-shadow:0 10px 28px rgba(15,23,42,.05)}.journal-card>*{min-width:0}.journal-card-header{justify-content:space-between;align-items:center;gap:12px;margin-bottom:14px;display:flex}.journal-card-header h2{color:#111827;align-items:center;gap:7px;min-width:0;margin:0;font-size:15px;font-weight:700;display:inline-flex}.journal-toggle{background:#f3f4f6;border-radius:999px;padding:3px;display:inline-flex}.journal-toggle button{color:#6b7280;background:0 0;border:0;border-radius:999px;padding:6px 14px;font-size:12px;font-weight:600}.journal-toggle button.active{color:#dc2626;background:#fff1f2}.journal-schedule-card{grid-area:schedule}.journal-attendance-recent-card{grid-area:attendance}.journal-recent-card{grid-area:recent}.journal-homework-card{grid-area:homework}.journal-stats-col{flex-direction:column;grid-area:stats;gap:16px;display:flex}.journal-table-wrap{overflow-x:auto}.journal-table{border-collapse:collapse;width:100%;font-size:12px}.journal-table th,.journal-table td{text-align:center;vertical-align:top;border-bottom:1px solid #f3f4f6;padding:10px 8px}.journal-table th{color:#6b7280;padding-bottom:12px;font-weight:600}.journal-table th small{color:#9ca3af;margin-top:2px;font-size:11px;font-weight:500;display:block}.journal-th-num,.journal-td-num{color:#9ca3af;width:28px}.journal-table td{text-align:left;white-space:nowrap}.journal-cell-subject{font-size:12.5px;font-weight:600;display:block}.journal-cell-room{color:#9ca3af;margin-top:1px;font-size:11px;display:block}.journal-empty{color:#d1d5db;text-align:center!important}.journal-download{color:#dc2626;background:0 0;border:0;align-items:center;gap:6px;padding:12px 0 0;font-size:12px;font-weight:600;display:inline-flex}.journal-download:hover{text-decoration:underline}.journal-link{color:#6b7280;background:0 0;border:0;font-size:12px;font-weight:600}.journal-link:hover{color:#dc2626}.journal-empty-state{color:#9ca3af;font-size:13px;font-weight:500}.journal-shop-page{flex-direction:column;gap:16px;display:flex}.journal-shop-balance{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;display:grid}.journal-shop-balance div{background:#f8fafc;border:1px solid #eef2f7;border-radius:10px;min-height:92px;padding:14px}.journal-shop-balance span,.journal-shop-balance small,.journal-shop-item p,.journal-shop-history small{color:#6b7280;font-size:12px;font-weight:600}.journal-shop-balance strong{color:#111827;margin:4px 0;font-size:34px;line-height:1;display:block}.journal-shop-grid{grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:14px;display:grid}.journal-shop-item{flex-direction:column;gap:10px;min-height:210px;display:flex}.journal-shop-item-head{justify-content:space-between;align-items:center;gap:8px;display:flex}.journal-shop-price,.journal-shop-owned{border-radius:8px;align-items:center;min-height:26px;padding:4px 9px;font-size:12px;font-weight:800;display:inline-flex}.journal-shop-price{color:#dc2626;background:#fff1f2}.journal-shop-owned{color:#4f46e5;background:#eef2ff}.journal-shop-item h2{color:#111827;margin:0;font-size:17px;line-height:1.25}.journal-shop-item p{flex:1;margin:0;line-height:1.45}.journal-shop-item button{color:#fff;cursor:pointer;background:#dc2626;border:0;border-radius:9px;justify-content:center;align-items:center;gap:7px;width:100%;min-height:38px;font-weight:800;display:inline-flex}.journal-shop-item button:disabled{color:#9ca3af;cursor:not-allowed;background:#e5e7eb}.journal-shop-history ul{flex-direction:column;gap:8px;margin:0;padding:0;list-style:none;display:flex}.journal-shop-history li{border-bottom:1px solid #f3f4f6;grid-template-columns:minmax(0,1fr) auto 135px;align-items:center;gap:10px;padding:9px 0;font-size:13px;display:grid}.journal-shop-history li:last-child{border-bottom:0}.journal-shop-history li span{text-overflow:ellipsis;white-space:nowrap;color:#111827;min-width:0;font-weight:700;overflow:hidden}.journal-shop-history li strong{color:#dc2626}.journal-list{flex-direction:column;margin:0;padding:0;list-style:none;display:flex}.journal-list li{border-bottom:1px solid #f3f4f6;grid-template-columns:140px 130px 1fr 28px;align-items:center;gap:12px;padding:10px 0;font-size:13px;display:grid}.journal-list li>*,.journal-hw-list li>*{min-width:0}.journal-list li:last-child{border-bottom:0}.journal-list-date{color:#9ca3af;font-size:12px}.journal-list-subject{text-overflow:ellipsis;white-space:nowrap;font-weight:600;overflow:hidden}.journal-list-task{color:#4b5563;text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.journal-grade{color:#fff;border-radius:8px;justify-content:center;align-items:center;width:26px;height:26px;margin-left:auto;font-size:13px;font-weight:700;display:flex}.journal-grade.grade-5{background:#15803d}.journal-grade.grade-4{background:#2563eb}.journal-grade.grade-3{background:#ea580c}.journal-grade.grade-2{background:#dc2626}.journal-hw-list{margin:0;padding:0;list-style:none}.journal-hw-list li{border-bottom:1px solid #f3f4f6;justify-content:space-between;align-items:center;gap:16px;padding:12px 0;display:flex}.journal-hw-list li:last-child{border-bottom:0}.journal-hw-subject{font-size:13px;font-weight:700;display:block}.journal-hw-task{color:#4b5563;text-overflow:ellipsis;margin-top:2px;font-size:12.5px;display:block;overflow:hidden}.journal-hw-due{color:#9ca3af;white-space:nowrap;align-items:center;gap:8px;font-size:12px;display:flex}.journal-hw-dot{border-radius:50%;width:8px;height:8px}.journal-avg-card h3,.journal-week-card h3,.journal-attendance-week-card h3,.journal-events-card h3{color:#111827;margin:0 0 10px;font-size:13px;font-weight:700}.journal-avg-value{color:#dc2626;margin-bottom:8px;font-size:38px;font-weight:800;line-height:1}.journal-avg-meta{color:#6b7280;justify-content:space-between;align-items:center;font-size:12px;display:flex}.journal-avg-delta{color:#15803d;background:#dcfce7;border-radius:999px;padding:3px 10px;font-weight:700}.journal-week-card ul{flex-direction:column;gap:8px;margin:0;padding:0;list-style:none;display:flex}.journal-week-card li{grid-template-columns:14px 1fr 18px;align-items:center;gap:10px;font-size:12px;display:grid}.journal-week-num{font-weight:700}.journal-week-bar{background:#f3f4f6;border-radius:999px;height:6px;display:block;overflow:hidden}.journal-week-bar>span{border-radius:inherit;height:100%;display:block}.journal-week-count{text-align:right;color:#6b7280;font-weight:600}.journal-attendance-percent{justify-content:space-between;align-items:baseline;gap:10px;margin:2px 0 14px;display:flex}.journal-attendance-percent strong{color:#111827;font-size:34px;font-weight:800;line-height:1}.journal-attendance-percent span{color:#6b7280;text-transform:uppercase;font-size:12px;font-weight:700}.journal-attendance-summary{grid-template-columns:1fr 1fr;gap:8px;display:grid}.journal-attendance-summary div{color:#4b5563;background:#f8fafc;border:1px solid #eef2f7;border-radius:10px;grid-template-columns:auto 1fr auto;align-items:center;gap:7px;min-width:0;padding:9px 10px;font-size:12px;font-weight:700;display:grid}.journal-attendance-summary strong{color:#111827;font-size:14px}.journal-attendance-dot{border-radius:50%;width:8px;height:8px}.journal-attendance-dot.is-present{background:#16a34a}.journal-attendance-dot.is-absent{background:#ef4444}.journal-attendance-list li{grid-template-columns:140px 130px minmax(0,1fr) 78px}.journal-attendance-chip{white-space:nowrap;border-radius:999px;justify-content:center;justify-self:end;align-items:center;min-height:28px;padding:0 12px;font-size:12px;font-weight:800;display:inline-flex}.journal-attendance-list li.is-present .journal-attendance-chip{color:#166534;background:#dcfce7}.journal-attendance-list li.is-absent .journal-attendance-chip{color:#991b1b;background:#fee2e2}.journal-events-card ul{flex-direction:column;gap:14px;margin:0;padding:0;list-style:none;display:flex}.journal-events-card li{border-left:3px solid var(--accent,#dc2626);padding-left:14px;position:relative}.journal-event-date{color:#9ca3af;margin-bottom:4px;font-size:11px}.journal-event-title{color:#111827;font-size:13px;font-weight:700}.journal-event-meta{color:#6b7280;justify-content:space-between;margin-top:2px;font-size:11.5px;display:flex}.journal-events-all{color:#dc2626;background:0 0;border:0;justify-content:space-between;align-items:center;width:100%;margin-top:16px;padding:0;font-size:12px;font-weight:700;display:flex}.journal-schedule-list{flex-direction:column;gap:14px;display:flex}.journal-day-block{border-bottom:1px solid #f3f4f6;padding-bottom:12px}.journal-day-block:last-child{border-bottom:0}.journal-day-head{justify-content:space-between;margin-bottom:6px;display:flex}.journal-day-head strong{color:#111827;font-size:13px;font-weight:700}.journal-day-head span{color:#9ca3af;font-size:12px}.journal-day-block ol{flex-direction:column;gap:4px;margin:0;padding-left:18px;display:flex}.journal-day-block li{font-size:13px}.journal-day-block li small{color:#9ca3af;margin-left:8px}.journal-placeholder{text-align:center;grid-column:1/-1;padding:60px 20px}.journal-placeholder h2{color:#111827;margin:0 0 8px;font-size:22px}.journal-placeholder p{color:#6b7280;margin:0;font-size:14px}.journal-settings-card{flex-direction:column;gap:14px;display:flex}.journal-settings-hint{color:#9ca3af;font-size:12px}.journal-settings-form{grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:12px;display:grid}.journal-settings-wide{grid-column:1/-1}.journal-settings-form label,.journal-settings-notifications label{color:#374151;flex-direction:column;gap:6px;font-size:13px;font-weight:600;display:flex}.journal-settings-form input,.journal-settings-form select,.journal-settings-notifications select{font:inherit;color:#111827;background:#fff;border:1px solid #dbe2ef;border-radius:10px;padding:9px 10px}.journal-role-chip{color:#dc2626;background:#fff1f2;border:1px solid #fecaca;border-radius:999px;align-items:center;width:-webkit-fit-content;width:-moz-fit-content;width:fit-content;padding:6px 10px;font-size:12px;font-weight:700;display:inline-flex}.journal-settings-notifications{grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:10px;display:grid}.journal-check{color:#374151;background:#fff;border:1px solid #dbe2ef;border-radius:10px;justify-content:flex-start;align-items:center;gap:8px;padding:10px 12px;font-size:13px;font-weight:600;display:inline-flex}.journal-check.active{color:#dc2626;background:#fff1f2;border-color:#fca5a5}.journal-settings-actions{flex-wrap:wrap;grid-column:1/-1;justify-content:space-between;align-items:center;gap:12px;display:flex}.journal-settings-save-state{color:#6b7280;font-size:12px}.journal-settings-buttons{align-items:center;gap:8px;display:inline-flex}.journal-settings-reset,.journal-settings-save{border-radius:10px;align-items:center;gap:6px;padding:9px 12px;font-size:13px;font-weight:600;display:inline-flex}.journal-settings-reset{color:#374151;background:#fff;border:1px solid #dbe2ef}.journal-settings-save{color:#fff;background:#dc2626;border:1px solid #dc2626}.journal-moderation-table-wrap{overflow-x:auto}.journal-moderation-table{border-collapse:collapse;width:100%;font-size:13px}.journal-moderation-table th,.journal-moderation-table td{vertical-align:top;text-align:left;border-bottom:1px solid #f3f4f6;padding:10px 8px}.journal-moderation-table th:last-child,.journal-moderation-table td:last-child{text-align:right;width:46px}.journal-moderation-table th{color:#6b7280;font-weight:700}.journal-moderation-changes{flex-direction:column;gap:4px;margin:0;padding-left:18px;display:flex}.journal-moderation-changes li{color:#374151}.journal-status{border-radius:999px;align-items:center;padding:4px 10px;font-size:12px;font-weight:700;display:inline-flex}.journal-status-pending{color:#c2410c;background:#fff7ed;border:1px solid #fed7aa}.journal-status-ready{color:#15803d;background:#dcfce7;border:1px solid #86efac}.journal-status-draft{color:#b91c1c;background:#fef2f2;border:1px solid #fecaca}.journal-delete-btn{color:#94a3b8;background:#fff;border:1px solid #dbe2ef;border-radius:8px;justify-content:center;align-items:center;width:28px;height:28px;display:inline-flex}.journal-delete-btn:hover{color:#dc2626;background:#fef2f2;border-color:#fecaca}@media (max-width:1100px){.journal-grid{grid-template-columns:1fr;grid-template-areas:"pill""schedule""attendance""stats""recent""homework"}.journal-stats-col{flex-flow:wrap}.journal-stats-col>*{flex:240px}.journal-list li{grid-template-columns:100px 110px 1fr 28px}.journal-attendance-list li{grid-template-columns:100px 110px 1fr 74px}}@media (max-width:720px){.journal-shell{grid-template-columns:1fr;min-height:100dvh}.journal-sidebar{z-index:50;border-radius:0 0 16px 16px;flex-direction:row;padding:10px;position:-webkit-sticky;position:sticky;top:0;overflow-x:auto}.journal-logo{display:none}.journal-nav{-webkit-overflow-scrolling:touch;flex-direction:row;flex:auto;gap:8px;min-width:0;overflow-x:auto}.journal-nav-item span,.journal-collapse span,.journal-user-info{display:none}.journal-topbar{gap:10px;padding:12px 12px 8px}.journal-main{padding:4px 12px 22px}.journal-card{border-radius:14px}.journal-card-header{gap:10px}.journal-list li{grid-template-columns:1fr 1fr 32px;grid-template-areas:"date date grade""subject task grade";gap:6px 12px}.journal-list-date{grid-area:date}.journal-list-subject{grid-area:subject}.journal-list-task{grid-area:task}.journal-grade{grid-area:grade}.journal-attendance-list li{grid-template-columns:1fr auto;grid-template-areas:"date chip""subject chip""task chip";gap:5px 10px}.journal-attendance-chip{grid-area:chip}.journal-shop-balance{grid-template-columns:1fr}.journal-shop-history li{grid-template-columns:minmax(0,1fr) auto}.journal-shop-history li small{grid-column:1/-1}}.omni-shell{color:#111827;background:#f4f6fa;grid-template-columns:232px 1fr;min-height:100vh;transition:grid-template-columns .2s;display:grid}.omni-shell.is-collapsed{grid-template-columns:64px 1fr}.omni-sidebar{scrollbar-width:none;-ms-overflow-style:none;background:#fff;border-right:1px solid #e5e7eb;flex-direction:column;height:100vh;padding:18px 12px;display:flex;position:-webkit-sticky;position:sticky;top:0;overflow-y:auto}.omni-sidebar::-webkit-scrollbar{width:0;height:0;display:none}.omni-sidebar-brand{cursor:pointer;white-space:nowrap;background:0 0;border:0;justify-content:center;align-items:center;width:100%;padding:2px 0 20px;display:flex}.omni-sidebar-brand:hover{filter:brightness(1.04)}.omni-content>footer{flex:none}.omni-sidebar-brand-text,.omni-nav-item-text,.omni-collapse-text{white-space:nowrap;opacity:1;will-change:max-width, opacity, transform;max-width:190px;transition:max-width .22s,opacity .2s,transform .2s;display:inline-block;overflow:hidden;transform:translate(0)}.omni-sidebar.collapsed .omni-sidebar-brand{justify-content:center;padding:2px 0 16px}.omni-sidebar.collapsed .omni-sidebar-brand-text,.omni-sidebar.collapsed .omni-nav-item-text,.omni-sidebar.collapsed .omni-collapse-text{opacity:0;max-width:0;transform:translate(-6px)}.omni-nav{flex-direction:column;flex:1;gap:2px;display:flex}.omni-nav-item{color:#4b5563;text-align:left;white-space:nowrap;background:0 0;border:0;border-radius:10px;align-items:center;gap:12px;padding:10px 12px;font-size:13.5px;font-weight:500;transition:all .15s;display:flex}.omni-sidebar.collapsed .omni-nav-item{justify-content:center;gap:0;padding:10px 0}.omni-nav-item:hover{color:#111827;background:#f3f4f6}.omni-nav-item.active{color:#fff;background:#2563eb;font-weight:600}.omni-nav-item.active svg{color:#fff}.omni-collapse{color:#6b7280;background:0 0;border:0;border-radius:10px;align-items:center;gap:10px;margin-top:auto;padding:10px 12px;font-size:13px;font-weight:500;display:flex}.omni-sidebar.collapsed .omni-collapse{justify-content:center;gap:0;padding:10px 0}.omni-collapse:hover{color:#2563eb;background:#f3f4f6}.omni-collapse .rotated{transform:rotate(180deg)}.omni-content{flex-direction:column;min-width:0;display:flex}.omni-topbar{z-index:20;background:#fff;border-bottom:1px solid #e5e7eb;align-items:center;gap:16px;padding:12px 24px;display:flex;position:-webkit-sticky;position:sticky;top:0}.omni-topbar-burger{color:#4b5563;background:0 0;border:0;border-radius:8px;padding:6px}.omni-topbar-burger:hover{background:#f3f4f6}.omni-topbar-title{color:#111827;white-space:nowrap;margin:0;font-size:16px;font-weight:700}.omni-topbar-search{background:#f9fafb;border:1px solid #e5e7eb;border-radius:10px;flex:1;align-items:center;max-width:360px;padding:0 12px;display:flex;position:relative}.omni-topbar-search svg{color:#9ca3af}.omni-topbar-search input{color:#111827;background:0 0;border:0;outline:0;flex:1;padding:9px 8px;font-size:13px}.omni-topbar-search-results{z-index:30;background:#fff;border:1px solid #e5e7eb;border-radius:10px;position:absolute;top:calc(100% + 6px);left:0;right:0;overflow:hidden;box-shadow:0 12px 32px rgba(15,23,42,.1)}.omni-topbar-search-results button{text-align:left;color:#111827;background:0 0;border:0;justify-content:space-between;align-items:center;width:100%;padding:10px 14px;font-size:13px;display:flex}.omni-topbar-search-results button:hover{background:#f3f4f6}.omni-topbar-search-results small{color:#9ca3af;font-size:11px}.omni-topbar-tools{align-items:center;gap:10px;margin-left:auto;display:flex}.omni-pill{color:#4b5563;white-space:nowrap;background:#fff;border:1px solid #e5e7eb;border-radius:999px;align-items:center;gap:6px;padding:6px 12px;font-size:12px;font-weight:600;display:inline-flex}.omni-pill svg{color:#2563eb}.omni-icon-btn{color:#4b5563;background:#fff;border:1px solid #e5e7eb;border-radius:10px;justify-content:center;align-items:center;width:34px;height:34px;display:flex}.omni-icon-btn:hover{color:#2563eb;border-color:#c7d2fe}.omni-user-wrap{position:relative}.omni-user{color:#111827;background:#fff;border:1px solid #e5e7eb;border-radius:999px;align-items:center;gap:8px;padding:4px 10px 4px 4px;font-size:12.5px;font-weight:600;display:flex}.omni-user:hover{border-color:#c7d2fe}.omni-user-avatar{color:#4338ca;background:#eef2ff;border-radius:50%;justify-content:center;align-items:center;width:28px;height:28px;display:flex}.omni-user-name{white-space:nowrap;align-items:baseline;gap:4px;display:inline-flex}.omni-user-role{color:#6b7280;font-size:12px;font-weight:500}.teachers-form{grid-template-columns:repeat(2,minmax(180px,1fr));gap:14px;padding:16px 18px 20px;display:grid}.teachers-form label{color:#4b5563;flex-direction:column;gap:6px;font-size:13px;display:flex}.teachers-form input,.teachers-form textarea{border:1px solid #d1d5db;border-radius:8px;padding:8px 10px;font-size:14px}.teachers-form textarea,.teachers-notes-edit{resize:vertical;min-height:74px;font-family:inherit}.teachers-notes-field{grid-column:1/-1}.teachers-add-btn{color:#fff;cursor:pointer;background:#4f46e5;border:0;border-radius:10px;grid-column:1/-1;justify-content:center;align-items:center;gap:8px;padding:10px 14px;font-weight:600;transition:background .18s;display:inline-flex}.teachers-add-btn:hover{background:#4338ca}.teachers-empty{text-align:center;color:#6b7280;padding:20px}.teachers-table-wrap{overflow-x:auto}.teachers-table{border-collapse:collapse;width:100%}.teachers-table th,.teachers-table td{text-align:left;vertical-align:middle;border-bottom:1px solid #eef0f4;padding:10px 14px;font-size:13px}.teachers-table th{color:#475569;text-transform:uppercase;letter-spacing:.04em;background:#f8fafc;font-size:12px;font-weight:600}.teachers-table input,.teachers-table textarea{border:1px solid #cbd5f5;border-radius:6px;width:100%;padding:6px 8px;font-size:13px}.teachers-notes-text{color:#64748b;white-space:normal;max-width:220px;line-height:1.35;display:inline-block}.teachers-edit-grid{gap:6px;display:grid}.teachers-table code{color:#334155;background:#f1f5f9;border-radius:6px;padding:2px 6px;font-size:12px}.teachers-actions{flex-wrap:wrap;gap:6px;display:flex}.teachers-edit,.teachers-remove,.teachers-save,.teachers-cancel{cursor:pointer;border:0;border-radius:8px;align-items:center;gap:4px;padding:6px 10px;font-size:12px;font-weight:600;display:inline-flex}.teachers-edit{color:#1d4ed8;background:#eff6ff}.teachers-remove{color:#b91c1c;background:#fef2f2}.teachers-save{color:#fff;background:#16a34a}.teachers-cancel{color:#374151;background:#f3f4f6}.teachers-table tr.is-editing{background:#fffbeb}.dir-chip{letter-spacing:.04em;border-radius:6px;padding:2px 8px;font-size:11px;font-weight:700;display:inline-block}.dir-chip.dir-РПО{color:#1d4ed8;background:#dbeafe}.dir-chip.dir-КГИД{color:#065f46;background:#d1fae5}.avail-matrix{flex-direction:column;gap:3px;margin-top:8px;display:flex}.avail-matrix-row{grid-template-columns:18px repeat(6,26px);gap:2px;display:grid}.avail-matrix-header .avail-matrix-label{text-align:center;color:#64748b;font-size:10px;font-weight:700}.avail-matrix-label{text-align:center;color:#94a3b8;font-size:10px;font-weight:700;line-height:26px}.avail-cell{cursor:pointer;background:#f8fafc;border:1px solid #e2e8f0;border-radius:4px;width:26px;height:22px;transition:background .12s}.avail-cell:hover{background:#fef9c3}.avail-cell.blocked{background:#fca5a5;border-color:#f87171}.avail-cell.preferred{background:#86efac;border-color:#4ade80}.teachers-matrix-wrap{margin-bottom:8px}.teachers-matrix-label{color:#64748b;margin-bottom:4px;font-size:11px;display:block}.dir-group-form{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.dir-group-form .field{flex:1;min-width:120px}.dir-group-table-wrap{overflow-x:auto}.dir-group-table{border-collapse:collapse;width:100%;font-size:13px}.dir-group-table th,.dir-group-table td{text-align:left;border-bottom:1px solid #eef0f4;padding:8px 12px}.dir-group-table th{color:#475569;text-transform:uppercase;letter-spacing:.04em;background:#f8fafc;font-size:12px;font-weight:600}.dir-group-actions{gap:4px;display:flex}.field-sm{padding:4px 6px;font-size:12px}.btn-xs{padding:4px 8px;font-size:11px}.dir-discipline-form{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.dir-discipline-form .field{flex:1;min-width:120px}.dir-discipline-form input[type=number]{flex:0 0 120px;max-width:120px}.dir-teacher-pick{flex-wrap:wrap;align-items:center;gap:6px;margin-top:10px;display:flex}.dir-teacher-pick-inline{margin-top:0}.dir-teacher-pick-label{text-transform:uppercase;letter-spacing:.04em;color:#64748b;font-size:11px;font-weight:700}.dir-chip-toggle{color:#475569;cursor:pointer;background:#f8fafc;border:1px solid #d1d5db;transition:background .12s,border-color .12s,color .12s}.dir-chip-toggle:hover{border-color:#a5b4fc}.dir-chip-toggle.is-active{color:#fff;background:#4c1d95;border-color:#4c1d95}.dir-teacher-tags{flex-wrap:wrap;gap:4px;display:flex}.dir-teacher-tags .dir-chip{color:#5b21b6;background:#ede9fe}.dir-muted{color:#94a3b8}.group-roster-list{flex-direction:column;gap:8px;display:flex}.group-roster-item{border:1px solid #e2e8f0;border-radius:10px;overflow:hidden}.group-roster-head{cursor:pointer;text-align:left;background:#f8fafc;border:0;justify-content:space-between;align-items:center;gap:12px;width:100%;padding:10px 14px;display:flex}.group-roster-head:hover{background:#f1f5f9}.group-roster-title{align-items:baseline;gap:8px;min-width:0;display:flex}.group-roster-title strong{font-size:14px}.group-roster-meta{flex-shrink:0;align-items:center;gap:6px;display:flex}.group-roster-caret{transition:transform .15s}.group-roster-caret.is-open{transform:rotate(90deg)}.group-roster-body{padding:10px 14px}:root[data-theme=dark] .group-roster-item{border-color:var(--dt-border-soft)}:root[data-theme=dark] .group-roster-head{background:var(--dt-surface-soft);color:var(--dt-text)}:root[data-theme=dark] .group-roster-head:hover{background:var(--dt-hover)}:root[data-theme=dark] .group-roster-title strong{color:var(--dt-heading)}:root[data-theme=dark] .group-roster-caret{color:var(--dt-text-muted)}:root[data-theme=dark] .group-roster-body{background:var(--dt-surface)}:root[data-theme=dark] .group-roster-meta .dir-chip{background:var(--dt-hover);color:var(--dt-text)}:root[data-theme=dark] .dir-group-table th{background:var(--dt-surface-soft);color:var(--dt-text-muted)}:root[data-theme=dark] .dir-group-table td{color:var(--dt-text)}:root[data-theme=dark] .dir-group-table th,:root[data-theme=dark] .dir-group-table td{border-color:var(--dt-border-soft)}:root[data-theme=dark] .dir-group-table td strong{color:var(--dt-heading)}.teachers-form select{background:#fff;border:1px solid #d1d5db;border-radius:8px;padding:8px 10px;font-size:14px}.omni-user-menu{z-index:40;background:#fff;border:1px solid #e5e7eb;border-radius:10px;min-width:160px;padding:6px;position:absolute;top:calc(100% + 6px);right:0;box-shadow:0 12px 32px rgba(15,23,42,.1)}.omni-user-menu button{color:#111827;text-align:left;background:0 0;border:0;border-radius:8px;align-items:center;gap:8px;width:100%;padding:8px 10px;font-size:13px;font-weight:500;display:flex}.omni-user-menu button:hover{background:#f3f4f6}.omni-main{isolation:isolate;flex:1;min-width:0;padding:22px 24px;position:relative}.omni-main:before{content:"";z-index:0;pointer-events:none;background:radial-gradient(circle at 6% 8%,rgba(59,130,246,.16),transparent 26%),radial-gradient(circle at 92% 10%,rgba(99,102,241,.12),transparent 30%),radial-gradient(circle at 84% 88%,rgba(14,165,233,.09),transparent 34%),linear-gradient(#f5f8ff 0%,#f4f6fa 48%,#f1f5fb 100%);position:absolute;top:0;bottom:0;left:0;right:0}.omni-main>*{z-index:1;position:relative}.omni-page{flex-direction:column;gap:18px;width:100%;max-width:1280px;margin:0 auto;display:flex}.omni-metrics{grid-template-columns:repeat(5,minmax(0,1fr));gap:14px;display:grid}.omni-metric{-webkit-backdrop-filter:blur(6px);background:rgba(255,255,255,.9);border:1px solid #e5e7eb;border-radius:12px;padding:16px 18px;box-shadow:0 10px 26px rgba(15,23,42,.05)}.omni-metric-label{color:#6b7280;margin-bottom:8px;font-size:12px;font-weight:600}.omni-metric-value{color:#111827;margin-bottom:8px;font-size:32px;font-weight:800;line-height:1}.omni-metric-caption{color:#9ca3af;font-size:12px}.omni-metric.tone-danger .omni-metric-value{color:#dc2626}.omni-metric.tone-warning .omni-metric-value{color:#ea580c}.omni-row{gap:16px;display:grid}.omni-row.two{grid-template-columns:minmax(0,1.6fr) minmax(0,1fr)}.omni-card{-webkit-backdrop-filter:blur(6px);background:rgba(255,255,255,.9);border:1px solid #e5e7eb;border-radius:12px;flex-direction:column;min-width:0;display:flex;box-shadow:0 10px 26px rgba(15,23,42,.05)}.omni-card-head{border-bottom:1px solid #f3f4f6;justify-content:space-between;align-items:center;padding:14px 18px;display:flex}.omni-card-head h2{color:#111827;margin:0;font-size:14px;font-weight:700}.omni-card-body{padding:8px 14px 14px;overflow-x:auto}.omni-table{border-collapse:collapse;width:100%;font-size:13px}.omni-table th,.omni-table td{text-align:left;white-space:nowrap;padding:10px 8px}.omni-table th{color:#6b7280;text-transform:none;border-bottom:1px solid #e5e7eb;font-size:11.5px;font-weight:600}.omni-table tbody tr{border-bottom:1px solid #f3f4f6}.omni-table tbody tr:last-child{border-bottom:0}.omni-table tbody tr:hover{background:#f9fafb}.omni-table td.is-danger{color:#dc2626;font-weight:700}.omni-status{border-radius:999px;align-items:center;gap:6px;padding:3px 10px;font-size:11px;font-weight:600;display:inline-flex}.omni-status.ready{color:#15803d;background:#dcfce7}.omni-status.draft{color:#b45309;background:#fef3c7}.omni-status.pending{color:#c2410c;background:#fff7ed}.omni-quick-actions{flex-direction:column;gap:4px;margin:0;padding:0;list-style:none;display:flex}.omni-quick-actions button{color:#2563eb;text-align:left;background:0 0;border:0;border-radius:10px;align-items:center;gap:10px;width:100%;padding:10px 12px;font-size:13.5px;font-weight:600;display:flex}.omni-quick-actions button:hover{background:#eff6ff}.omni-toast{z-index:60;color:#fff;background:#111827;border-radius:10px;padding:12px 16px;font-size:13px;font-weight:600;position:fixed;bottom:20px;right:20px;box-shadow:0 16px 32px rgba(15,23,42,.2)}.omni-toolbar{gap:8px;margin:8px 4px 12px;display:flex}.omni-materials-upload{grid-template-columns:minmax(180px,1fr) minmax(220px,2fr) auto;gap:8px;margin:0 4px 12px;display:grid}.omni-materials-upload .omni-btn-primary{justify-content:center;height:38px;margin-top:0}.omni-materials-actions{align-items:center;gap:10px;display:inline-flex}.omni-students-create{grid-template-columns:minmax(220px,2fr) minmax(140px,1fr) minmax(140px,1fr) minmax(220px,2fr) 120px auto;gap:8px;margin:0 4px 14px;display:grid}.omni-students-create .omni-btn-primary{justify-content:center;height:38px;margin-top:0}.omni-input{color:#111827;background:#fff;border:1px solid #e5e7eb;border-radius:10px;outline:0;width:100%;padding:9px 12px;font-size:13px}.omni-input:focus{border-color:#2563eb;box-shadow:0 0 0 3px rgba(37,99,235,.16)}.file-picker{align-items:center;gap:8px;min-width:0;min-height:36px;display:inline-flex}.file-picker-input{opacity:0;pointer-events:none;width:1px;height:1px;position:absolute}.file-picker-button{color:#334155;white-space:nowrap;cursor:pointer;background:#fff;border:1px solid #dbe2ef;border-radius:10px;justify-content:center;align-items:center;height:36px;padding:0 12px;font-size:13px;font-weight:600;display:inline-flex}.file-picker-button:hover{color:#1d4ed8;border-color:#93c5fd}.file-picker-name{color:#64748b;white-space:nowrap;text-overflow:ellipsis;min-width:0;max-width:320px;font-size:13px;overflow:hidden}:root[data-theme=dark] .file-picker-button{color:#cbd5e1;background:#0b1220;border-color:#334155}:root[data-theme=dark] .file-picker-button:hover{color:#93c5fd;border-color:#60a5fa}:root[data-theme=dark] .file-picker-name{color:#94a3b8}.omni-textarea{resize:vertical;min-height:100px;margin-top:12px}.omni-link-btn{color:#2563eb;background:0 0;border:0;font-size:12.5px;font-weight:600}.omni-link-btn:hover{text-decoration:underline}.omni-link-btn.is-danger{color:#dc2626}.omni-link-btn:disabled{color:#9ca3af;cursor:not-allowed;text-decoration:none}.omni-moderation-changes{white-space:normal;flex-direction:column;gap:4px;max-width:560px;margin:0;padding-left:18px;display:flex}.omni-moderation-actions{align-items:center;gap:10px;display:inline-flex}.omni-delete-btn{color:#94a3b8;background:#fff;border:1px solid #e5e7eb;border-radius:8px;justify-content:center;align-items:center;width:26px;height:26px;display:inline-flex}.omni-delete-btn:hover{color:#dc2626;background:#fef2f2;border-color:#fecaca}.omni-btn-primary{color:#fff;background:#2563eb;border:0;border-radius:10px;align-items:center;gap:6px;margin-top:12px;padding:8px 14px;font-size:13px;font-weight:600;display:inline-flex}.omni-btn-primary:hover{background:#1d4ed8}.omni-messages{grid-template-columns:280px 1fr;gap:16px;min-height:360px;display:grid}.omni-message-list{border:1px solid #f3f4f6;border-radius:10px;max-height:460px;margin:0;padding:4px;list-style:none;overflow-y:auto}.omni-message-list li{cursor:pointer;border-radius:8px;flex-direction:column;gap:2px;padding:10px 12px;font-size:13px;display:flex}.omni-message-list li:hover{background:#f3f4f6}.omni-message-list li.active{color:#1d4ed8;background:#eff6ff}.omni-message-list li.unread strong:after{content:"•";color:#dc2626;margin-left:6px}.omni-message-list li small{color:#9ca3af;font-size:11px}.omni-message-detail{border:1px solid #f3f4f6;border-radius:10px;padding:16px}.omni-message-detail h3{color:#111827;margin:0 0 6px;font-size:15px}.omni-message-meta{color:#9ca3af;margin-bottom:12px;font-size:12px}.omni-muted{color:#9ca3af;font-size:13px}@media (max-width:1100px){.omni-shell{grid-template-columns:64px 1fr}.omni-sidebar .omni-nav-item span,.omni-sidebar .omni-collapse span,.omni-sidebar .omni-sidebar-brand span{display:none}.omni-sidebar .omni-nav-item,.omni-sidebar .omni-collapse{justify-content:center;padding:10px 0}.omni-sidebar .omni-sidebar-brand{justify-content:center;padding:4px 0 18px}.omni-metrics{grid-template-columns:repeat(2,minmax(0,1fr))}.omni-row.two,.omni-messages{grid-template-columns:1fr}.omni-students-create{grid-template-columns:repeat(2,minmax(0,1fr))}.omni-materials-upload{grid-template-columns:1fr 1fr}.omni-materials-upload .omni-btn-primary{grid-column:1/-1}}@media (max-width:720px){.omni-shell{grid-template-columns:1fr}.omni-sidebar{z-index:55;border-radius:0 0 16px 16px;flex-direction:row;align-items:center;gap:8px;width:100%;min-height:auto;padding:8px 10px;position:-webkit-sticky;position:sticky;top:0;overflow-x:auto}.omni-sidebar-brand{flex:none;padding:0 8px 0 0}.omni-sidebar-brand-text,.omni-nav-item-text,.omni-collapse-text{display:none}.omni-sidebar nav{-webkit-overflow-scrolling:touch;flex-direction:row;flex:auto;gap:6px;min-width:0;display:flex;overflow-x:auto}.omni-nav-item,.omni-collapse{justify-content:center;width:42px;min-width:42px;height:42px;padding:0}.omni-topbar{gap:8px;padding:10px 12px}.omni-topbar-search,.omni-topbar-tools .omni-pill{display:none}.omni-main{padding:12px}.omni-metrics,.omni-students-create{grid-template-columns:1fr}.omni-card{border-radius:14px}.omni-row,.omni-row.two,.omni-messages,.omni-materials-upload{grid-template-columns:1fr}}@media (max-width:430px){.header-search-input{padding-left:36px;font-size:14px}.side-nav nav button{min-width:96px}.side-nav nav button svg{width:15px;height:15px}.panel-header h2,.journal-card-header h2,.omni-card h2{font-size:16px}.metric-card,.omni-metric,.journal-card{padding:14px}.rating-table{min-width:560px!important}}@media (max-width:720px){:-webkit-any(.journal-shell,.omni-shell){min-width:0}:-moz-any(.journal-shell,.omni-shell){min-width:0}:is(.journal-shell,.omni-shell){min-width:0}:-webkit-any(.journal-sidebar,.omni-sidebar){scrollbar-width:none;-ms-overflow-style:none}:-moz-any(.journal-sidebar,.omni-sidebar){scrollbar-width:none;-ms-overflow-style:none}:is(.journal-sidebar,.omni-sidebar){scrollbar-width:none;-ms-overflow-style:none}:-webkit-any(.journal-sidebar,.omni-sidebar)::-webkit-scrollbar{width:0;height:0;display:none}:-moz-any(.journal-sidebar,.omni-sidebar)::-webkit-scrollbar{width:0;height:0;display:none}:is(.journal-sidebar,.omni-sidebar)::-webkit-scrollbar{width:0;height:0;display:none}:-webkit-any(.journal-nav,.omni-nav)::-webkit-scrollbar{width:0;height:0;display:none}:-moz-any(.journal-nav,.omni-nav)::-webkit-scrollbar{width:0;height:0;display:none}:is(.journal-nav,.omni-nav)::-webkit-scrollbar{width:0;height:0;display:none}:is(.side-nav nav)::-webkit-scrollbar{width:0;height:0;display:none}:-webkit-any(.journal-nav-item,.omni-nav-item,.journal-collapse,.omni-collapse){flex:0 0 44px;justify-content:center;width:44px;min-width:44px;height:44px;padding:0}:-moz-any(.journal-nav-item,.omni-nav-item,.journal-collapse,.omni-collapse){flex:0 0 44px;justify-content:center;width:44px;min-width:44px;height:44px;padding:0}:is(.journal-nav-item,.omni-nav-item,.journal-collapse,.omni-collapse){flex:0 0 44px;justify-content:center;width:44px;min-width:44px;height:44px;padding:0}.journal-shell,.omni-shell{transition:none}.journal-nav-item-text,.journal-collapse-text,.omni-sidebar-brand-text,.omni-nav-item-text,.omni-collapse-text{opacity:0;will-change:auto;max-width:0;transition:none;transform:none}:-webkit-any(.journal-nav-item,.omni-nav-item,.journal-collapse,.omni-collapse){transition:background .12s,color .12s}:-moz-any(.journal-nav-item,.omni-nav-item,.journal-collapse,.omni-collapse){transition:background .12s,color .12s}:is(.journal-nav-item,.omni-nav-item,.journal-collapse,.omni-collapse){transition:background .12s,color .12s}:-webkit-any(.journal-nav-item,.omni-nav-item,.journal-collapse,.omni-collapse) svg{flex:none}:-moz-any(.journal-nav-item,.omni-nav-item,.journal-collapse,.omni-collapse) svg{flex:none}:is(.journal-nav-item,.omni-nav-item,.journal-collapse,.omni-collapse) svg{flex:none}.journal-topbar,.omni-topbar{z-index:45;min-width:0;position:-webkit-sticky;position:sticky;top:0}.journal-title,.omni-topbar-title{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.journal-user{min-width:44px;padding:4px}.journal-user>svg,.omni-user>svg{flex:none}.journal-user-menu,.omni-user-menu{max-width:calc(100vw - 24px);position:fixed;top:102px;right:12px}.journal-main,.omni-main{min-width:0}.journal-grid,.omni-row,.omni-row.two,.omni-messages,.omni-materials-upload,.omni-students-create,.journal-settings-form,.journal-settings-notifications{grid-template-columns:minmax(0,1fr)!important}.journal-card,.omni-card,.panel,.metric-card,.omni-metric{min-width:0}.journal-card-header,.omni-card-head{align-items:flex-start;gap:10px}.journal-card-header{flex-wrap:wrap}.journal-toggle{width:100%;overflow-x:auto}.journal-toggle button{flex:1 0 auto;min-height:38px}.journal-table-wrap,.journal-moderation-table-wrap,.teachers-table-wrap,.dir-group-table-wrap,.table-scroll{-webkit-overflow-scrolling:touch;max-width:100%;overflow-x:auto}.journal-table,.journal-moderation-table{min-width:520px}.journal-settings-actions,.journal-settings-buttons,.omni-card-actions,.student-homework-actions{align-items:stretch;width:100%}.journal-settings-buttons,.student-homework-actions{flex-direction:column}.journal-settings-reset,.journal-settings-save,.student-homework-actions a,.student-homework-actions button{justify-content:center;width:100%;min-height:42px}.student-page-head,.student-homework-top,.student-submissions li{flex-direction:column;align-items:flex-start}.student-head-actions{width:100%}.student-nav-btn{flex:1;min-height:40px}}@media (max-width:430px){.login-screen{padding:76px 12px 22px}.login-brand-switch{min-width:0;left:12px;right:58px}.login-theme-toggle{top:18px;right:12px}.login-card{max-width:none}.login-card .glass-surface__content{padding:28px 18px 24px}.login-field{margin-bottom:28px}.journal-sidebar,.omni-sidebar{gap:6px;padding:8px 10px}.journal-topbar,.omni-topbar{gap:8px;padding:9px 10px}.journal-topbar-burger,.omni-topbar-burger,.theme-toggle-btn{flex:0 0 40px;width:40px;height:40px}.journal-title{font-size:20px}.omni-topbar-title{font-size:15px}.journal-avatar,.omni-avatar{width:32px;height:32px}.journal-main,.omni-main{padding:10px}.journal-card-header,.omni-card-head,.panel-header,.journal-card-body,.omni-card-body{padding:14px}.journal-shop-grid{grid-template-columns:minmax(0,1fr)}.journal-hw-list li{flex-direction:column;align-items:flex-start;gap:8px}.journal-hw-due{white-space:normal}.journal-attendance-summary{grid-template-columns:1fr}.journal-list-subject,.journal-list-task{white-space:normal;overflow-wrap:anywhere}.omni-topbar-tools{gap:6px}.omni-user{padding:4px}.omni-user-info{display:none}}.omni-shell button{border-radius:14px}.omni-shell .omni-btn-primary,.omni-shell .omni-pill,.omni-shell .omni-user{border-radius:999px}:root[data-theme=dark],:root[data-theme=dark] body{color:#e5e7eb;background:#0b1220}:root[data-theme=dark] .theme-toggle-btn{color:#cbd5e1;background:#0f172a;border-color:#334155}:root[data-theme=dark] .theme-toggle-btn:hover{color:#f8fafc;background:#1e293b;border-color:#475569}:root[data-theme=dark] .login-screen{background:#050914!important}:root[data-theme=dark] .login-static-bg{filter:none;background:radial-gradient(circle at 18% 18%,rgba(37,99,235,.28),transparent 32%),radial-gradient(circle at 78% 20%,rgba(14,165,233,.13),transparent 34%),radial-gradient(circle at 82% 76%,rgba(99,102,241,.16),transparent 30%),linear-gradient(#050914 0%,#08111f 58%,#0b1220 100%)}:root[data-theme=dark] .login-static-bg:before{background-image:linear-gradient(rgba(148,163,184,.055) 1px,transparent 1px),linear-gradient(90deg,rgba(148,163,184,.055) 1px,transparent 1px);-webkit-mask-image:linear-gradient(rgba(0,0,0,.88) 0%,rgba(0,0,0,.62) 56%,transparent 94%);mask-image:linear-gradient(rgba(0,0,0,.88) 0%,rgba(0,0,0,.62) 56%,transparent 94%)}:root[data-theme=dark] .login-static-bg:after{background:linear-gradient(115deg,transparent 0,transparent 42%,rgba(56,189,248,.18) 42.2%,rgba(56,189,248,.18) 42.7%,transparent 43%,transparent 58%,rgba(129,140,248,.14) 58.2%,rgba(129,140,248,.14) 58.7%,transparent 59%),linear-gradient(rgba(2,6,23,0),rgba(2,6,23,.36) 78%)}:root[data-theme=dark] .digital-panel{box-shadow:0 32px 70px rgba(0,0,0,.6),0 0 0 1px rgba(244,63,94,.24),0 0 46px rgba(244,63,94,.34)}:root[data-theme=dark] .data-node{background:#38bdf8;box-shadow:0 0 0 10px rgba(56,189,248,.1),0 0 34px rgba(56,189,248,.44)}:root[data-theme=dark] .data-node:before,:root[data-theme=dark] .data-node:after{background:linear-gradient(90deg,rgba(56,189,248,.42),transparent)}:root[data-theme=dark] .login-back-title{color:rgba(148,163,184,.18);mix-blend-mode:screen;text-shadow:none}:root[data-theme=dark] .login-brand-switch{-webkit-backdrop-filter:blur(16px)saturate(132%);background:rgba(15,23,42,.42);border-color:rgba(148,163,184,.28);box-shadow:0 14px 32px rgba(2,6,23,.24)}:root[data-theme=dark] .glass-surface--svg{box-shadow:inset 0 0 2px 1px rgba(255,255,255,.35),inset 0 0 10px 4px rgba(255,255,255,.15),0 34px 86px rgba(2,6,23,.6),inset 0 4px 16px rgba(17,17,26,.05),inset 0 8px 24px rgba(17,17,26,.05),inset 0 16px 56px rgba(17,17,26,.05);box-shadow:inset 0 0 2px 1px color(display-p3 1 1 1/.35),inset 0 0 10px 4px color(display-p3 1 1 1/.15),0 34px 86px color(display-p3 .010628 .0230087 .0856894/.6),inset 0 4px 16px color(display-p3 .0666667 .0666667 .0992517/.0509804),inset 0 8px 24px color(display-p3 .0666667 .0666667 .0992517/.0509804),inset 0 16px 56px color(display-p3 .0666667 .0666667 .0992517/.0509804);box-shadow:inset 0 0 2px 1px lab(100% 0 0/.35),inset 0 0 10px 4px lab(100% 0 0/.15),0 34px 86px lab(1.77049% 1.2194 -8.84593/.6),inset 0 4px 16px lab(5.32203% 1.61424 -5.88284/.0509804),inset 0 8px 24px lab(5.32203% 1.61424 -5.88284/.0509804),inset 0 16px 56px lab(5.32203% 1.61424 -5.88284/.0509804)}:root[data-theme=dark] .glass-surface--fallback,:root[data-theme=dark] .glass-surface--webkit{border-color:rgba(255,255,255,.2);box-shadow:inset 0 0 2px 1px rgba(255,255,255,.35),inset 0 0 10px 4px rgba(255,255,255,.15),0 34px 86px rgba(2,6,23,.6),inset 0 4px 16px rgba(17,17,26,.05),inset 0 8px 24px rgba(17,17,26,.05),inset 0 16px 56px rgba(17,17,26,.05);box-shadow:inset 0 0 2px 1px color(display-p3 1 1 1/.35),inset 0 0 10px 4px color(display-p3 1 1 1/.15),0 34px 86px color(display-p3 .010628 .0230087 .0856894/.6),inset 0 4px 16px color(display-p3 .0666667 .0666667 .0992517/.0509804),inset 0 8px 24px color(display-p3 .0666667 .0666667 .0992517/.0509804),inset 0 16px 56px color(display-p3 .0666667 .0666667 .0992517/.0509804);box-shadow:inset 0 0 2px 1px lab(100% 0 0/.35),inset 0 0 10px 4px lab(100% 0 0/.15),0 34px 86px lab(1.77049% 1.2194 -8.84593/.6),inset 0 4px 16px lab(5.32203% 1.61424 -5.88284/.0509804),inset 0 8px 24px lab(5.32203% 1.61424 -5.88284/.0509804),inset 0 16px 56px lab(5.32203% 1.61424 -5.88284/.0509804)}:root[data-theme=dark] .login-card{border-color:rgba(255,255,255,.26)}:root[data-theme=dark] .login-card.glass-surface--mobile-glass{-webkit-backdrop-filter:blur(5px)saturate(1.22)brightness(1.08);border-color:rgba(148,163,184,.28);box-shadow:0 22px 52px rgba(0,0,0,.42),inset 0 1px rgba(255,255,255,.12),inset 0 -24px 52px rgba(59,130,246,.08);background:linear-gradient(145deg,rgba(15,23,42,.68),rgba(8,13,25,.54) 50%,rgba(12,20,38,.64)),rgba(8,13,25,.56)!important}:root[data-theme=dark] .login-card.glass-surface--mobile-glass:after{opacity:.72;background:linear-gradient(135deg,rgba(255,255,255,.16),transparent 34%),radial-gradient(120% 80% at 18% 0,rgba(96,165,250,.16),transparent 48%)}:root[data-theme=dark] .login-card.glass-surface--webkit{background:hsla(0,0%,0%,var(--glass-frost))!important;-webkit-backdrop-filter:blur(12px) saturate(var(--glass-saturation)) brightness(1.12)!important}:root[data-theme=dark] .login-card:before{opacity:.62;background:radial-gradient(120% 90% at 28% 0,rgba(226,232,240,.14),transparent 42%),linear-gradient(rgba(15,23,42,.5),rgba(8,13,25,.4) 44%,rgba(12,20,38,.5))}:root[data-theme=dark] .login-card h1,:root[data-theme=dark] .login-role-badge,:root[data-theme=dark] .signup-link,:root[data-theme=dark] .login-field label,:root[data-theme=dark] .input-group svg{color:#f8fbff}:root[data-theme=dark] .login-card h1{text-shadow:0 10px 30px rgba(147,197,253,.28)}:root[data-theme=dark] .login-role-badge{background:rgba(226,232,240,.14);border-color:rgba(226,232,240,.26);box-shadow:inset 0 1px rgba(255,255,255,.08)}:root[data-theme=dark] .login-field input{color:#f1f5f9;border-bottom-color:rgba(226,232,240,.42)}:root[data-theme=dark] .login-field input:focus{border-bottom-color:#60a5fa}:root[data-theme=dark] .login-field:focus-within svg,:root[data-theme=dark] .login-field input:focus~label,:root[data-theme=dark] .login-field input:valid~label{color:#bfdbfe}:root[data-theme=dark] .signup-link button{color:#8b5cf6}:root[data-theme=dark] .signup-link button:hover{color:#c4b5fd}:root[data-theme=dark] .journal-shell,:root[data-theme=dark] .omni-shell{color:#e2e8f0;background:#0f172a}:root[data-theme=dark] .journal-sidebar,:root[data-theme=dark] .omni-sidebar{-webkit-backdrop-filter:blur(14px)saturate(1.2);background:rgba(11,18,32,.55);border-right-color:rgba(51,65,85,.35)}:root[data-theme=dark] .journal-topbar{-webkit-backdrop-filter:blur(14px)saturate(1.2);background:rgba(15,23,42,.55)}:root[data-theme=dark] .omni-topbar{-webkit-backdrop-filter:blur(14px)saturate(1.2);background:rgba(11,18,32,.55);border-bottom-color:rgba(51,65,85,.35)}:root[data-theme=dark] .journal-title,:root[data-theme=dark] .journal-logo,:root[data-theme=dark] .journal-user-info strong,:root[data-theme=dark] .omni-topbar-title,:root[data-theme=dark] .omni-user,:root[data-theme=dark] .omni-card-head h2,:root[data-theme=dark] .omni-message-detail h3{color:#f8fafc}:root[data-theme=dark] .journal-nav-item,:root[data-theme=dark] .journal-collapse,:root[data-theme=dark] .journal-user-info span,:root[data-theme=dark] .omni-nav-item,:root[data-theme=dark] .omni-collapse,:root[data-theme=dark] .omni-user-role,:root[data-theme=dark] .omni-muted,:root[data-theme=dark] .omni-message-meta,:root[data-theme=dark] .journal-empty-state{color:#94a3b8}:root[data-theme=dark] .journal-nav-item:hover,:root[data-theme=dark] .journal-collapse:hover,:root[data-theme=dark] .omni-nav-item:hover,:root[data-theme=dark] .omni-collapse:hover,:root[data-theme=dark] .omni-topbar-burger:hover,:root[data-theme=dark] .omni-user-menu button:hover,:root[data-theme=dark] .journal-user-menu button:hover{color:#e2e8f0;background:#1e293b}:root[data-theme=dark] .journal-nav-item.active{color:#fda4af;background:#3b0b14}:root[data-theme=dark] .journal-nav-item.active svg{color:#fda4af}:root[data-theme=dark] .journal-shop-balance div{background:rgba(15,23,42,.68);border-color:rgba(51,65,85,.52)}:root[data-theme=dark] .journal-shop-balance strong,:root[data-theme=dark] .journal-shop-item h2,:root[data-theme=dark] .journal-shop-history li span{color:#f8fafc}:root[data-theme=dark] .journal-shop-balance span,:root[data-theme=dark] .journal-shop-balance small,:root[data-theme=dark] .journal-shop-item p,:root[data-theme=dark] .journal-shop-history small{color:#94a3b8}:root[data-theme=dark] .journal-shop-price{color:#fca5a5;background:rgba(220,38,38,.16)}:root[data-theme=dark] .journal-shop-owned{color:#c4b5fd;background:rgba(79,70,229,.18)}:root[data-theme=dark] .journal-shop-item button:disabled{color:#64748b;background:#1e293b}:root[data-theme=dark] .omni-nav-item.active{color:#fff;background:#1d4ed8}:root[data-theme=dark] .journal-user,:root[data-theme=dark] .journal-user-menu,:root[data-theme=dark] .journal-topbar-burger,:root[data-theme=dark] .journal-week-pill,:root[data-theme=dark] .journal-card,:root[data-theme=dark] .journal-settings-form input,:root[data-theme=dark] .journal-settings-form select,:root[data-theme=dark] .journal-settings-notifications select,:root[data-theme=dark] .journal-check,:root[data-theme=dark] .journal-delete-btn,:root[data-theme=dark] .omni-pill,:root[data-theme=dark] .omni-icon-btn,:root[data-theme=dark] .omni-user,:root[data-theme=dark] .omni-user-menu,:root[data-theme=dark] .omni-topbar-search,:root[data-theme=dark] .omni-topbar-search-results,:root[data-theme=dark] .omni-card,:root[data-theme=dark] .omni-input,:root[data-theme=dark] .omni-textarea,:root[data-theme=dark] .omni-message-list li,:root[data-theme=dark] .omni-message-detail{color:#e2e8f0;background:#0f172a;border-color:#334155}:root[data-theme=dark] .journal-avatar,:root[data-theme=dark] .omni-user-avatar{color:#cbd5e1;background:#1e293b}:root[data-theme=dark] .journal-card-header h2,:root[data-theme=dark] .journal-day-head strong,:root[data-theme=dark] .journal-placeholder h2,:root[data-theme=dark] .journal-avg-card h3,:root[data-theme=dark] .journal-week-card h3,:root[data-theme=dark] .journal-attendance-week-card h3,:root[data-theme=dark] .journal-events-card h3,:root[data-theme=dark] .journal-event-title,:root[data-theme=dark] .journal-settings-form label,:root[data-theme=dark] .journal-settings-notifications label,:root[data-theme=dark] .omni-table th,:root[data-theme=dark] .omni-table td{color:#cbd5e1}:root[data-theme=dark] .journal-list-task,:root[data-theme=dark] .journal-hw-task,:root[data-theme=dark] .journal-moderation-changes li,:root[data-theme=dark] .omni-table td{color:#94a3b8}:root[data-theme=dark] .journal-week-bar,:root[data-theme=dark] .journal-toggle,:root[data-theme=dark] .omni-metric,:root[data-theme=dark] .omni-quick-actions button,:root[data-theme=dark] .omni-table th,:root[data-theme=dark] .teachers-table th{background:#111827}:root[data-theme=dark] .journal-list li,:root[data-theme=dark] .journal-attendance-summary div,:root[data-theme=dark] .journal-hw-list li,:root[data-theme=dark] .journal-day-block,:root[data-theme=dark] .journal-table th,:root[data-theme=dark] .journal-table td,:root[data-theme=dark] .journal-moderation-table th,:root[data-theme=dark] .journal-moderation-table td,:root[data-theme=dark] .omni-table th,:root[data-theme=dark] .omni-table td,:root[data-theme=dark] .omni-table tbody tr,:root[data-theme=dark] .teachers-table th,:root[data-theme=dark] .teachers-table td{border-color:#1e293b}:root[data-theme=dark] .omni-topbar-search input,:root[data-theme=dark] .omni-input,:root[data-theme=dark] .omni-textarea,:root[data-theme=dark] .teachers-form input,:root[data-theme=dark] .teachers-form textarea,:root[data-theme=dark] .teachers-table input,:root[data-theme=dark] .teachers-table textarea{color:#e2e8f0}:root{--ui-transition:background-color .18s ease, color .18s ease, border-color .18s ease, box-shadow .18s ease}:root[data-theme=dark]{--dt-bg:#0b1220;--dt-surface:#0f172a;--dt-surface-soft:#111827;--dt-border:#334155;--dt-border-soft:#1e293b;--dt-text:#e2e8f0;--dt-text-muted:#94a3b8;--dt-heading:#f8fafc;--dt-hover:#1e293b}:root[data-theme=dark] body,:root[data-theme=dark] .journal-shell,:root[data-theme=dark] .omni-shell{background:var(--dt-bg);color:var(--dt-text)}:root[data-theme=dark] :where(.theme-toggle-btn,.journal-user,.journal-user-menu,.journal-card,.journal-week-pill,.journal-topbar-burger,.journal-delete-btn,.omni-pill,.omni-icon-btn,.omni-user,.omni-user-menu,.omni-topbar-search,.omni-topbar-search-results,.omni-card,.omni-input,.omni-textarea,.omni-message-list li,.omni-message-detail,.teachers-form input,.teachers-form textarea,.teachers-table input,.teachers-table textarea){transition:var(--ui-transition)}:root[data-theme=dark] .omni-card,:root[data-theme=dark] .journal-card{box-shadow:0 1px rgba(148,163,184,.03)}:root[data-theme=dark] .omni-table tbody tr:hover,:root[data-theme=dark] .teachers-table tbody tr:hover{background:#111827}:root[data-theme=dark] .omni-message-list li:hover{background:var(--dt-hover)}:root[data-theme=dark] .omni-message-list li.active{color:#dbeafe;background:#1e3a8a}:root[data-theme=dark] .omni-link-btn{color:#93c5fd}:root[data-theme=dark] .omni-link-btn.is-danger{color:#fda4af}:root[data-theme=dark] .omni-status.ready{color:#86efac;background:#052e16;border-color:#14532d}:root[data-theme=dark] .omni-status.pending{color:#fcd34d;background:#3f2a04;border-color:#713f12}:root[data-theme=dark] .omni-status.draft{color:#fda4af;background:#3f0a13;border-color:#7f1d1d}:root[data-theme=dark] .journal-status-ready{color:#86efac;background:#052e16;border-color:#14532d}:root[data-theme=dark] .journal-status-pending{color:#fcd34d;background:#3f2a04;border-color:#713f12}:root[data-theme=dark] .journal-status-draft{color:#fda4af;background:#3f0a13;border-color:#7f1d1d}:root[data-theme=dark] .journal-role-chip{color:#fda4af;background:#3b0b14;border-color:#7f1d1d}:root[data-theme=dark] .journal-settings-reset{border-color:var(--dt-border);color:var(--dt-text);background:#0b1220}:root[data-theme=dark] .journal-settings-save{color:#fff;background:#b91c1c;border-color:#b91c1c}:root[data-theme=dark] .journal-settings-save:hover{background:#991b1b;border-color:#991b1b}:root[data-theme=dark] .journal-user-menu button,:root[data-theme=dark] .omni-user-menu button,:root[data-theme=dark] .omni-topbar-search-results button{color:var(--dt-text)}:root[data-theme=dark] .journal-user-menu button:hover,:root[data-theme=dark] .omni-user-menu button:hover,:root[data-theme=dark] .omni-topbar-search-results button:hover{background:var(--dt-hover)}:root[data-theme=dark] .journal-main:before{background:radial-gradient(circle at 10% 8%,rgba(225,29,72,.2),transparent 30%),radial-gradient(circle at 88% 10%,rgba(249,115,22,.16),transparent 34%),radial-gradient(circle at 82% 86%,rgba(239,68,68,.14),transparent 34%),linear-gradient(#060d1c 0%,#0b1220 48%,#0f172a 100%)}:root[data-theme=dark] .omni-main:before{background:radial-gradient(circle at 6% 8%,rgba(37,99,235,.26),transparent 28%),radial-gradient(circle at 94% 10%,rgba(14,165,233,.2),transparent 32%),radial-gradient(circle at 86% 88%,rgba(99,102,241,.18),transparent 34%),linear-gradient(#050b18 0%,#0a1222 48%,#0e1a2f 100%)}:root[data-theme=dark] .omni-main:after,:root[data-theme=dark] .journal-main:after{content:"";z-index:0;pointer-events:none;background-image:linear-gradient(rgba(148,163,184,.05) 1px,transparent 1px),linear-gradient(90deg,rgba(148,163,184,.05) 1px,transparent 1px);background-size:64px 64px;position:absolute;top:0;bottom:0;left:0;right:0;-webkit-mask-image:linear-gradient(rgba(0,0,0,.65),transparent 85%);mask-image:linear-gradient(rgba(0,0,0,.65),transparent 85%)}:root[data-theme=dark] .omni-card,:root[data-theme=dark] .omni-metric,:root[data-theme=dark] .journal-card{background:linear-gradient(rgba(15,23,42,.9),rgba(15,23,42,.84));border-color:rgba(71,85,105,.8);box-shadow:0 16px 36px rgba(2,6,23,.34)}:root[data-theme=dark] .omni-main :where(.bg-white,.bg-white\/92,.bg-white\/95,[class*=bg-white],[class*="bg-[#fbfcff]"],[class*="bg-[#f8fafc]"]){background:linear-gradient(rgba(15,23,42,.9),rgba(15,23,42,.84))!important}:root[data-theme=dark] .omni-main :where([class*="border-[#dfe4ee]"],[class*="border-[#d8deea]"],[class*="border-[#e5e7eb]"],[class*="border-[#eef0f4]"]){border-color:rgba(71,85,105,.8)!important}:root[data-theme=dark] .omni-main :where([class*="text-[#202330]"],[class*="text-[#373a46]"],[class*="text-[#4b5563]"],[class*="text-[#6b7280]"],[class*="text-[#111827]"]){color:var(--dt-text)!important}:root[data-theme=dark] .omni-main :where([class*="text-[#9ca3af]"],[class*="text-[#94a3b8]"]){color:var(--dt-text-muted)!important}:root[data-theme=dark] .omni-main :where(.shadow-sm,.shadow,.shadow-xl){box-shadow:0 16px 36px rgba(2,6,23,.32)!important}:root[data-theme=dark] .omni-main :where(input,select,textarea){color:var(--dt-text);background:#0b1220;border-color:rgba(71,85,105,.8)}:root[data-theme=dark] .omni-main :where(){color:var(--dt-text-muted)}:root[data-theme=dark] .omni-main :where(.rating-table,.rating-table th,.rating-table td){color:var(--dt-text)}:root[data-theme=dark] .omni-main .rating-table th{color:#cbd5e1;background:#111827;border-color:#334155}:root[data-theme=dark] .omni-main .rating-table td{border-color:#334155}:root[data-theme=dark] .retakes-action-btn.is-selected{color:#fda4af;background:#3f0a13;border-color:#7f1d1d}:root[data-theme=dark] .journal-main .journal-card,:root[data-theme=dark] .omni-main .omni-card,:root[data-theme=dark] .omni-main .omni-metric{background:radial-gradient(135% 95% at 0 0,rgba(148,163,184,.09),transparent 56%),linear-gradient(rgba(33,45,66,.66),rgba(12,19,36,.95));border:1px solid rgba(99,116,145,.42);border-radius:16px;transition:border-color .2s,box-shadow .25s,transform .2s;position:relative;overflow:hidden;box-shadow:0 24px 50px -20px rgba(2,6,23,.88),inset 0 1px rgba(203,213,225,.07)}:root[data-theme=dark] .journal-main .journal-card:before{content:"";pointer-events:none;opacity:.82;background:linear-gradient(90deg,transparent,rgba(248,113,113,.9),rgba(251,146,60,.55),transparent);height:2px;position:absolute;top:0;bottom:auto;left:0;right:0}:root[data-theme=dark] .omni-main .omni-card:before,:root[data-theme=dark] .omni-main .omni-metric:before{content:"";pointer-events:none;opacity:.85;background:linear-gradient(90deg,transparent,rgba(96,165,250,.92),rgba(129,140,248,.6),transparent);height:2px;position:absolute;top:0;bottom:auto;left:0;right:0}:root[data-theme=dark] .omni-main .omni-metric.tone-danger:before{background:linear-gradient(90deg,transparent,rgba(248,113,113,.9),rgba(251,113,133,.55),transparent)}:root[data-theme=dark] .omni-main .omni-metric.tone-warning:before{background:linear-gradient(90deg,transparent,rgba(251,146,60,.9),rgba(250,204,21,.5),transparent)}:root[data-theme=dark] .journal-main .journal-card:hover,:root[data-theme=dark] .omni-main .omni-card:hover,:root[data-theme=dark] .omni-main .omni-metric:hover{border-color:rgba(125,145,180,.62);transform:translateY(-1px);box-shadow:0 30px 60px -20px rgba(2,6,23,.92),inset 0 1px rgba(203,213,225,.11)}:root[data-theme=dark] .journal-main .journal-card-header,:root[data-theme=dark] .omni-main .omni-card-head{border-bottom-color:rgba(71,85,105,.42)}:root[data-theme=dark] .journal-main .journal-avg-value{color:#fca5a5;text-shadow:0 0 20px rgba(248,113,113,.42)}:root[data-theme=dark] .journal-main .journal-avg-delta{color:#86efac;background:rgba(34,197,94,.16)}:root[data-theme=dark] .omni-main .omni-metric-value{color:#f1f5f9;text-shadow:0 0 18px rgba(96,165,250,.28)}:root[data-theme=dark] .omni-main .omni-metric.tone-danger .omni-metric-value{color:#fca5a5;text-shadow:0 0 20px rgba(248,113,113,.42)}:root[data-theme=dark] .omni-main .omni-metric.tone-warning .omni-metric-value{color:#fdba74;text-shadow:0 0 20px rgba(251,146,60,.42)}:root[data-theme=dark] .omni-main .omni-metric-label,:root[data-theme=dark] .omni-main .omni-metric-caption{color:var(--dt-text-muted)}:root[data-theme=dark] .journal-main .journal-week-bar{background:rgba(148,163,184,.16)}:root[data-theme=dark] .journal-main .journal-attendance-percent strong,:root[data-theme=dark] .journal-main .journal-attendance-summary strong{color:#f8fafc}:root[data-theme=dark] .journal-main .journal-attendance-percent span,:root[data-theme=dark] .journal-main .journal-attendance-summary div{color:#94a3b8}:root[data-theme=dark] .journal-main .journal-attendance-summary div{background:rgba(15,23,42,.58);border-color:rgba(71,85,105,.72)}:root[data-theme=dark] .journal-main .journal-attendance-list li.is-present .journal-attendance-chip{color:#86efac;background:rgba(34,197,94,.16)}:root[data-theme=dark] .journal-main .journal-attendance-list li.is-absent .journal-attendance-chip{color:#fca5a5;background:rgba(248,113,113,.16)}@property --tw-translate-x{syntax:"*";inherits:false;initial-value:0}@property --tw-translate-y{syntax:"*";inherits:false;initial-value:0}@property --tw-translate-z{syntax:"*";inherits:false;initial-value:0}@property --tw-scale-x{syntax:"*";inherits:false;initial-value:1}@property --tw-scale-y{syntax:"*";inherits:false;initial-value:1}@property --tw-scale-z{syntax:"*";inherits:false;initial-value:1}@property --tw-rotate-x{syntax:"*";inherits:false}@property --tw-rotate-y{syntax:"*";inherits:false}@property --tw-rotate-z{syntax:"*";inherits:false}@property --tw-skew-x{syntax:"*";inherits:false}@property --tw-skew-y{syntax:"*";inherits:false}@property --tw-space-y-reverse{syntax:"*";inherits:false;initial-value:0}@property --tw-border-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-font-weight{syntax:"*";inherits:false}@property --tw-tracking{syntax:"*";inherits:false}@property --tw-shadow{syntax:"*";inherits:false;initial-value:0 0 transparent}@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 transparent}@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 transparent}@property --tw-inset-ring-color{syntax:"*";inherits:false}@property --tw-inset-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 transparent}@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 transparent}@property --tw-outline-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-blur{syntax:"*";inherits:false}@property --tw-brightness{syntax:"*";inherits:false}@property --tw-contrast{syntax:"*";inherits:false}@property --tw-grayscale{syntax:"*";inherits:false}@property --tw-hue-rotate{syntax:"*";inherits:false}@property --tw-invert{syntax:"*";inherits:false}@property --tw-opacity{syntax:"*";inherits:false}@property --tw-saturate{syntax:"*";inherits:false}@property --tw-sepia{syntax:"*";inherits:false}@property --tw-drop-shadow{syntax:"*";inherits:false}@property --tw-drop-shadow-color{syntax:"*";inherits:false}@property --tw-drop-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-drop-shadow-size{syntax:"*";inherits:false}@property --tw-backdrop-blur{syntax:"*";inherits:false}@property --tw-backdrop-brightness{syntax:"*";inherits:false}@property --tw-backdrop-contrast{syntax:"*";inherits:false}@property --tw-backdrop-grayscale{syntax:"*";inherits:false}@property --tw-backdrop-hue-rotate{syntax:"*";inherits:false}@property --tw-backdrop-invert{syntax:"*";inherits:false}@property --tw-backdrop-opacity{syntax:"*";inherits:false}@property --tw-backdrop-saturate{syntax:"*";inherits:false}@property --tw-backdrop-sepia{syntax:"*";inherits:false}@property --tw-ease{syntax:"*";inherits:false}.schedule-page,.grades-page,.homework-page{flex-direction:column;gap:16px;display:flex}.schedule-toolbar,.grades-toolbar,.homework-toolbar{-webkit-backdrop-filter:blur(6px);background:rgba(255,255,255,.88);border:1px solid #e5e7eb;border-radius:14px;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:10px;padding:12px 14px;display:flex;box-shadow:0 10px 24px rgba(15,23,42,.05)}.schedule-week,.schedule-actions{align-items:center;gap:8px;display:flex}.schedule-nav-btn,.schedule-today-btn,.schedule-toggle button,.homework-tabs button,.schedule-add-btn,.grades-add-btn,.homework-add-btn{color:#334155;cursor:pointer;font:inherit;background:#fff;border:1px solid #dbe2ef;border-radius:10px;padding:7px 12px}.schedule-nav-btn{justify-content:center;align-items:center;width:34px;height:34px;padding:0;display:inline-flex}.schedule-add-btn,.grades-add-btn,.homework-add-btn,.schedule-btn-primary{color:#fff;background:#2563eb;border-color:#2563eb}.schedule-add-btn,.grades-add-btn,.homework-add-btn,.schedule-today-btn,.schedule-btn-primary,.schedule-btn-ghost,.schedule-btn-danger{white-space:nowrap;flex-shrink:0;justify-content:center;align-items:center;gap:6px;transition:background .15s,border-color .15s,color .15s;display:inline-flex}.schedule-add-btn:hover,.grades-add-btn:hover,.homework-add-btn:hover,.schedule-btn-primary:hover{background:#1d4ed8;border-color:#1d4ed8}.schedule-add-btn svg,.grades-add-btn svg,.homework-add-btn svg,.schedule-btn-primary svg,.schedule-btn-ghost svg,.schedule-btn-danger svg{flex-shrink:0}.schedule-week-label{background:#f8fafc;border-radius:10px;align-items:center;gap:8px;padding:6px 10px;display:flex}.schedule-week-label strong{font-size:14px}.schedule-week-label small{color:#64748b;font-size:12px;display:block}.schedule-toggle,.homework-tabs{background:#f1f5f9;border-radius:10px;gap:6px;padding:3px;display:inline-flex}.schedule-toggle button.active,.homework-tabs button.active{color:#1d4ed8;background:#fff}.schedule-error{color:#b91c1c;background:#fef2f2;border:1px solid #fecaca;border-radius:10px;padding:10px 12px}.schedule-loading,.grades-empty{text-align:center;color:#64748b;-webkit-backdrop-filter:blur(5px);background:rgba(255,255,255,.86);border:1px dashed #dbe2ef;border-radius:14px;padding:24px}.schedule-table-wrap,.grades-table-wrap{-webkit-backdrop-filter:blur(6px);background:rgba(255,255,255,.9);border:1px solid #e5e7eb;border-radius:14px;overflow:auto;box-shadow:0 10px 24px rgba(15,23,42,.05)}.schedule-table{border-collapse:separate;border-spacing:6px;table-layout:fixed;width:100%}.schedule-table th{color:#64748b;font-size:12px}.schedule-cell{vertical-align:top}.schedule-lesson,.schedule-empty{border:1px solid #e5e7eb;border-radius:10px;width:100%;min-height:72px}.schedule-lesson{background:#f8fafc;border-left:4px solid;flex-direction:column;align-items:flex-start;gap:4px;padding:10px;display:flex;position:relative}.schedule-lesson span{color:#64748b;align-items:center;gap:4px;font-size:12px;display:inline-flex}.schedule-empty{background:0 0;border-style:dashed}.schedule-lesson.is-conflict{background:#fef2f2;border-left-color:#dc2626!important}.schedule-lesson.is-conflict strong{color:#dc2626!important}.schedule-conflict-badge{color:#dc2626;animation:1.5s ease-in-out infinite conflict-pulse;position:absolute;top:4px;right:4px}@keyframes conflict-pulse{0%,to{opacity:1}50%{opacity:.4}}.schedule-conflict-count{color:#dc2626;background:#fef2f2;border:1px solid #fca5a5;border-radius:8px;align-items:center;gap:4px;padding:4px 10px;font-size:12px;font-weight:700;display:inline-flex}.schedule-group-select{color:#334155;font:inherit;cursor:pointer;background:#fff;border:1px solid #dbe2ef;border-radius:10px;padding:7px 10px}.schedule-gen-btn{color:#6d28d9;font:inherit;cursor:pointer;white-space:nowrap;background:#f5f3ff;border:1px solid #c4b5fd;border-radius:10px;flex-shrink:0;align-items:center;gap:6px;padding:7px 12px;transition:background .15s,border-color .15s;display:inline-flex}.schedule-gen-btn:hover{background:#ede9fe;border-color:#a78bfa}.schedule-hint{color:#94a3b8;margin:0 0 4px;font-size:12px}.schedule-lesson{cursor:grab}.schedule-lesson.is-dragging{opacity:.4}.schedule-cell.is-drop-target{outline-offset:-4px;background:rgba(37,99,235,.06);border-radius:10px;outline:2px dashed #2563eb}.schedule-generator-modal{max-width:640px;max-height:90vh;overflow-x:hidden;overflow-y:auto}.schedule-generator-modal *{box-sizing:border-box}.schedule-generator-panel{background:#fff;border:1px solid #e5e7eb;border-radius:14px;flex-direction:column;gap:12px;width:100%;max-width:760px;padding:18px 20px;display:flex;box-shadow:0 2px 14px rgba(15,23,42,.05)}.schedule-generator-panel h2{align-items:center;gap:8px;margin:0;display:inline-flex}.schedule-generator-panel .schedule-gen-form,.schedule-generator-panel .schedule-gen-list,.schedule-generator-panel .schedule-gen-result,.schedule-generator-panel .schedule-gen-period{margin-top:0}.schedule-gen-run-history{background:#f8fafc;border:1px solid #e5e7eb;border-radius:10px;margin-top:8px;padding:12px 14px}.schedule-gen-run-history ul{flex-direction:column;gap:6px;margin:8px 0 0;padding:0;list-style:none;display:flex}.schedule-gen-run-history li{color:#475569;border-bottom:1px dashed #e2e8f0;justify-content:space-between;gap:8px;padding:4px 0;font-size:12px;display:flex}.schedule-gen-run-history li:last-child{border-bottom:0}.schedule-gen-run-history li .run-status-ok{color:#047857;font-weight:600}.schedule-gen-run-history li .run-status-warn{color:#b45309;font-weight:600}.schedule-generator-modal h2{align-items:center;gap:8px;display:inline-flex}.schedule-gen-form{background:#f8fafc;border:1px solid #e5e7eb;border-radius:12px;margin-top:8px;padding:14px}.schedule-gen-days{color:#475569;flex-direction:column;gap:6px;font-size:13px;display:flex}.schedule-gen-period{background:#f8fafc;border:1px solid #e5e7eb;border-radius:10px;flex-direction:column;gap:8px;margin-top:12px;padding:12px 14px;display:flex}.schedule-gen-period-row{flex-wrap:wrap;align-items:flex-end;gap:10px;display:flex}.schedule-gen-period-field{color:#64748b;flex-direction:column;gap:4px;font-size:12px;display:flex}.schedule-gen-period-field input{font:inherit;border:1px solid #dbe2ef;border-radius:8px;width:140px;padding:6px 8px;font-size:13px}.schedule-gen-period-field input[type=number]{width:70px}.schedule-gen-period-summary{color:#1d4ed8;padding-bottom:6px;font-weight:600}.cal-picker{display:inline-block;position:relative}.cal-picker-trigger{color:#334155;font:inherit;cursor:pointer;white-space:nowrap;background:#fff;border:1px solid #dbe2ef;border-radius:10px;justify-content:flex-start;align-items:center;gap:8px;min-width:200px;padding:9px 12px;font-size:14px;transition:background .15s,border-color .15s,box-shadow .15s;display:inline-flex}.cal-picker-trigger:hover{background:#f8fafc;border-color:#93c5fd}.cal-picker-trigger:focus-visible{border-color:#6d28d9;outline:none;box-shadow:0 0 0 3px rgba(109,40,217,.15)}.cal-picker-trigger svg{color:#6d28d9;flex-shrink:0}.cal-picker-overlay{z-index:89;-webkit-backdrop-filter:blur(4px);background:rgba(2,6,23,.35);transition:opacity .22s;position:fixed;top:0;bottom:0;left:0;right:0}.cal-picker-dropdown{z-index:90;opacity:0;pointer-events:none;background:#fff;border:1px solid rgba(109,40,217,.12);border-radius:18px;flex-direction:column;gap:0;width:340px;padding:0;transition:opacity .22s cubic-bezier(.22,1,.36,1),transform .22s cubic-bezier(.22,1,.36,1);display:flex;position:fixed;top:50%;left:50%;overflow:hidden;transform:translate(-50%,-50%)scale(.96);box-shadow:0 24px 60px rgba(15,23,42,.22),0 0 0 1px rgba(109,40,217,.06)}.cal-picker-dropdown.is-open{opacity:1;pointer-events:auto;transform:translate(-50%,-50%)scale(1)}.cal-picker-head{background:linear-gradient(135deg,#f5f3ff 0%,#ede9fe 100%);border-bottom:1px solid rgba(109,40,217,.08);justify-content:space-between;align-items:center;gap:4px;padding:16px 16px 12px;display:flex}.cal-picker-nav{-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);color:#6d28d9;cursor:pointer;background:rgba(255,255,255,.7);border:1px solid rgba(109,40,217,.16);border-radius:10px;justify-content:center;align-items:center;width:36px;height:36px;transition:background .15s,border-color .15s,box-shadow .15s;display:inline-flex}.cal-picker-nav:hover{background:#fff;border-color:#a78bfa;box-shadow:0 2px 8px rgba(109,40,217,.12)}.cal-picker-nav:active{transform:scale(.94)}.cal-picker-title{color:#4c1d95;letter-spacing:-.01em;font-size:16px;font-weight:800}.cal-picker-grid{text-align:center;grid-template-columns:repeat(7,1fr);gap:3px;padding:12px 14px 8px;display:grid}.cal-picker-wd{color:#a78bfa;text-transform:uppercase;letter-spacing:.04em;padding:6px 0 4px;font-size:11px;font-weight:700}.cal-picker-cell{aspect-ratio:1;color:#334155;width:100%;font:inherit;cursor:pointer;background:0 0;border:2px solid transparent;border-radius:12px;justify-content:center;align-items:center;font-size:14px;font-weight:500;transition:background .14s,color .14s,border-color .14s,transform .12s;display:inline-flex}@supports not (aspect-ratio:1){.cal-picker-cell{height:40px}}.cal-picker-cell:hover{background:#f5f3ff;border-color:rgba(109,40,217,.1)}.cal-picker-cell:active{transform:scale(.9)}.cal-picker-cell.is-outside{color:#c4b5fd;font-weight:400}.cal-picker-cell.is-outside:hover{background:#faf5ff}.cal-picker-cell.is-today{color:#7c3aed;background:rgba(124,58,237,.1);border-color:rgba(124,58,237,.2);font-weight:700}.cal-picker-cell.is-today:hover{background:rgba(124,58,237,.16);border-color:rgba(124,58,237,.3)}.cal-picker-cell.is-selected{color:#fff;background:linear-gradient(135deg,#7c3aed 0%,#6d28d9 100%);border-color:transparent;font-weight:700;box-shadow:0 4px 12px rgba(109,40,217,.35)}.cal-picker-cell.is-selected:hover{background:linear-gradient(135deg,#8b5cf6 0%,#7c3aed 100%);box-shadow:0 4px 16px rgba(109,40,217,.45)}.cal-picker-cell.is-selected.is-today{color:#fff;background:linear-gradient(135deg,#7c3aed 0%,#6d28d9 100%)}.cal-picker-footer{justify-content:flex-end;padding:4px 14px 14px;display:flex}.cal-picker-today-btn{color:#6d28d9;font:inherit;cursor:pointer;background:rgba(109,40,217,.06);border:1px solid rgba(109,40,217,.16);border-radius:10px;padding:7px 14px;font-size:12px;font-weight:700;transition:background .15s,border-color .15s,box-shadow .15s}.cal-picker-today-btn:hover{background:rgba(109,40,217,.12);border-color:#a78bfa;box-shadow:0 2px 8px rgba(109,40,217,.1)}.cal-picker-today-btn:active{transform:scale(.96)}.schedule-gen-day-chips{flex-wrap:wrap;gap:6px;display:flex}.schedule-day-chip{font:inherit;cursor:pointer;color:#475569;background:#fff;border:1px solid #dbe2ef;border-radius:999px;padding:5px 12px;font-size:13px;transition:background .15s,border-color .15s,color .15s}.schedule-day-chip.active{color:#b91c1c;background:#fee2e2;border-color:#fca5a5}.schedule-gen-add{margin-top:4px}.schedule-gen-actions{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.schedule-gen-autofill{margin-top:4px}.schedule-gen-form select{width:100%;font:inherit;cursor:pointer;background:#fff;border:1px solid #dbe2ef;border-radius:10px;padding:9px 10px}.hours-stepper{align-items:center;gap:8px;display:flex}.hours-stepper-btn{color:#334155;cursor:pointer;background:#fff;border:1px solid #dbe2ef;border-radius:10px;flex-shrink:0;justify-content:center;align-items:center;width:34px;height:34px;font-size:20px;line-height:1;transition:background .15s,border-color .15s;display:inline-flex}.hours-stepper-btn:hover:not(:disabled){background:#eff6ff;border-color:#93c5fd}.hours-stepper-btn:disabled{opacity:.4;cursor:not-allowed}.hours-display{display:inline-flex;position:relative}.hours-display-input{color:transparent;text-align:center;width:100%;height:100%;font:inherit;cursor:text;caret-color:#1d4ed8;background:0 0;border:0;margin:0;padding:0;position:absolute;top:0;bottom:0;left:0;right:0}.hours-display-input:focus{outline:none}.hours-display-input::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}.hours-display-input::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}.rolling-number{color:#1d4ed8;font-variant-numeric:tabular-nums;background:#eff6ff;border-radius:10px;gap:2px;padding:4px 10px;font-size:20px;font-weight:700;display:inline-flex}.rolling-digit{width:.62em;height:1.3em;line-height:1.3em;display:inline-block;overflow:hidden}.rolling-digit-track{flex-direction:column;transition:transform .5s cubic-bezier(.22,1,.36,1);display:flex}.rolling-digit-cell{text-align:center;height:1.3em;line-height:1.3em}.schedule-gen-list{flex-direction:column;gap:8px;margin-top:12px;display:flex}.schedule-gen-item{background:#fff;border:1px solid #e5e7eb;border-radius:10px;justify-content:space-between;align-items:center;gap:10px;padding:10px 12px;display:flex}.schedule-gen-item-main{flex-direction:column;gap:2px;display:flex}.schedule-gen-item-main span{color:#475569;font-size:13px}.schedule-gen-item-main small{color:#94a3b8;font-size:12px}.schedule-gen-result{border-radius:10px;margin-top:12px;padding:10px 12px;font-size:13px}.schedule-gen-result.ok{color:#047857;background:#ecfdf5;border:1px solid #a7f3d0}.schedule-gen-result.warn{color:#b45309;background:#fffbeb;border:1px solid #fde68a}.schedule-gen-result ul{margin:6px 0 0;padding-left:18px}.schedule-list{grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:10px;display:grid}.schedule-day-card{-webkit-backdrop-filter:blur(5px);background:rgba(255,255,255,.9);border:1px solid #e5e7eb;border-radius:12px;padding:12px;box-shadow:0 8px 18px rgba(15,23,42,.04)}.schedule-day-lessons{flex-direction:column;gap:8px;margin:0;padding:0;list-style:none;display:flex}.schedule-day-lessons button{background:#f8fafc;border:1px solid #e5e7eb;border-radius:10px;align-items:center;gap:8px;width:100%;padding:8px;display:flex}.schedule-modal-overlay{z-index:80;background:rgba(2,6,23,.45);justify-content:center;align-items:center;padding:16px;display:flex;position:fixed;top:0;bottom:0;left:0;right:0}.schedule-modal{-webkit-backdrop-filter:blur(8px);background:rgba(255,255,255,.94);border:1px solid #e5e7eb;border-radius:14px;width:100%;max-width:500px;padding:20px;position:relative;box-shadow:0 20px 56px rgba(15,23,42,.25)}.schedule-modal-close{color:#475569;cursor:pointer;background:#f1f5f9;border:0;border-radius:8px;justify-content:center;align-items:center;width:32px;height:32px;transition:background .15s,color .15s;display:inline-flex;position:absolute;top:12px;right:12px}.schedule-modal-close:hover{color:#0f172a;background:#e2e8f0}.schedule-modal h2{margin:0 36px 4px 0;font-size:18px}.schedule-form{flex-direction:column;gap:12px;display:flex}.schedule-file-picker-field{flex-direction:column;gap:6px;display:flex}.schedule-form-row{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;display:grid}.schedule-form input,.schedule-form select,.schedule-form textarea{width:100%;font:inherit;border:1px solid #dbe2ef;border-radius:10px;padding:9px 10px}.schedule-form-actions{justify-content:space-between;align-items:center;display:flex}.schedule-form-actions-right{gap:8px;display:flex}.schedule-btn-ghost,.schedule-btn-danger,.schedule-btn-primary{font:inherit;cursor:pointer;border-radius:10px;padding:8px 12px}.schedule-btn-ghost{background:#fff;border:1px solid #dbe2ef}.schedule-btn-danger{color:#b91c1c;background:#fff1f2;border:1px solid #fecaca}.grades-summary,.homework-summary{grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:10px;display:grid}.grades-summary-card,.homework-card{background:#fff;border:1px solid #e5e7eb;border-radius:12px;align-items:center;gap:10px;padding:12px;display:flex}.grades-summary-card>div,.homework-card>div{flex-direction:column;gap:2px;min-width:0;display:flex}.grades-summary-card>.grades-subject-dot,.homework-card>svg{flex-shrink:0}.grades-summary-card small,.homework-card small{line-height:1.25;display:block}.grades-summary-card strong,.homework-card strong{line-height:1.15;display:block}.grades-summary-card span{color:#64748b;font-size:12px;line-height:1.25;display:block}.homework-card small{color:#64748b}.homework-card strong{font-size:24px}.grades-table{border-collapse:collapse;width:100%}.grades-table th,.grades-table td{text-align:left;border-bottom:1px solid #eef2f7;padding:10px 12px}.grades-subject-pill,.homework-priority{border-radius:999px;padding:3px 8px;font-size:12px;font-weight:600}.homework-priority{align-items:center;gap:4px;display:inline-flex}.homework-priority:before{content:"";background:currentColor;border-radius:999px;width:6px;height:6px}.homework-priority.high{color:#b91c1c;background:#fee2e2}.homework-priority.low{color:#475569;background:#e2e8f0}.grades-mark{border:0;border-radius:8px;justify-content:center;align-items:center;width:34px;height:34px;font-weight:700;display:inline-flex}.grade-excellent{color:#166534;background:#dcfce7}.grade-good{color:#1d4ed8;background:#dbeafe}.grade-ok{color:#b45309;background:#fef3c7}.grade-bad{color:#b91c1c;background:#fee2e2}.grades-filter{color:#475569;background:#f8fafc;border:1px solid #e2e8f0;border-radius:10px;align-items:center;gap:6px;padding:6px 10px;display:inline-flex}.grades-filter select,.grades-filter input{font:inherit;color:#0f172a;background:0 0;border:none;outline:none;min-width:120px}.grades-lesson-panel{background:#fff;border:1px solid #e2e8f0;border-radius:14px;grid-template-columns:minmax(260px,1fr) minmax(260px,1.2fr) minmax(220px,auto) auto;align-items:center;gap:10px;padding:12px;display:grid;box-shadow:0 8px 20px rgba(15,23,42,.05)}.grades-week-picker{align-items:center;gap:8px;min-width:0;display:flex}.grades-week-label{color:#0f172a;align-items:center;gap:8px;min-width:0;display:flex}.grades-week-label>div{flex-direction:column;gap:2px;min-width:0;display:flex}.grades-week-label strong,.grades-week-label small{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.grades-week-label small,.grades-lesson-error{color:#64748b;font-size:12px}.grades-lesson-select{color:#0f172a;width:100%;min-width:0;min-height:40px;font:inherit;background:#f8fafc;border:1px solid #cbd5e1;border-radius:10px;outline:none;padding:0 12px}.grades-lesson-check{color:#334155;align-items:center;gap:8px;font-size:13px;font-weight:600;display:inline-flex}.grades-lesson-check input{accent-color:#2563eb;width:16px;height:16px}.grades-bulk-attendance{grid-template-columns:repeat(2,minmax(0,1fr));gap:6px;min-width:210px;display:grid}.grades-bulk-attendance .grades-attendance-option:disabled{opacity:.55;cursor:not-allowed;box-shadow:none;transform:none}.grades-students{flex-direction:column;gap:10px;margin:0;padding:0;list-style:none;display:flex}.grades-student-row{background:#fff;border:1px solid #e5e7eb;border-radius:14px;flex-wrap:wrap;justify-content:space-between;align-items:stretch;gap:14px;padding:14px;display:flex;box-shadow:0 8px 20px rgba(15,23,42,.05)}.grades-student-info{flex-direction:column;flex:420px;gap:8px;min-width:360px;display:flex}.grades-student-name{color:#0f172a;font-size:15px}.grades-student-group{color:#2563eb;font-size:12px;font-weight:600}.grades-student-avg{color:#64748b;font-size:12px}.grades-student-attendance-zone{width:100%;max-width:640px;min-height:116px;background:linear-gradient(135deg,rgba(37,99,235,.16),rgba(14,165,233,.08));border:1px dashed #60a5fa;border-radius:12px;grid-template-columns:minmax(160px,1fr) minmax(220px,auto);align-items:center;gap:10px;width:min(100%,640px);padding:14px;display:grid}.grades-student-attendance-zone small{color:#475569;margin-top:4px;font-size:12px;line-height:1.35;display:block}.grades-student-recent{flex-wrap:wrap;gap:4px;margin-top:4px;display:flex}.grades-mark-sm{cursor:pointer;border-radius:6px;width:24px;height:24px;font-size:12px}.grades-note-mark{color:#4338ca;background:#eef2ff}.grades-attendance-badge{cursor:pointer;border:1px solid transparent;border-radius:6px;justify-content:center;align-items:center;width:24px;height:24px;font-size:12px;font-weight:800;display:inline-flex}.grades-student-controls{background:#f8fafc;border:1px solid #e2e8f0;border-radius:12px;flex-direction:column;align-items:flex-start;gap:8px;min-width:300px;padding:12px;display:flex}.grades-control-head{justify-content:space-between;align-items:center;gap:10px;width:100%;display:flex}.grades-control-head strong{color:#075985;background:#e0f2fe;border-radius:999px;justify-content:center;align-items:center;min-width:34px;height:26px;font-size:13px;font-weight:800;display:inline-flex}.grades-controls-title{letter-spacing:.05em;text-transform:uppercase;color:#64748b;font-size:11px;font-weight:600}.grades-attendance-picker{grid-template-columns:repeat(2,minmax(0,1fr));gap:6px;width:100%;display:grid}.grades-attendance-picker-inline{justify-self:end;max-width:260px}.grades-attendance-option{color:#334155;min-height:34px;font:inherit;cursor:pointer;background:#fff;border:1px solid #cbd5e1;border-radius:8px;justify-content:center;align-items:center;gap:6px;font-size:13px;font-weight:700;transition:border-color .15s,box-shadow .15s,transform .15s;display:inline-flex}.grades-attendance-option:hover{transform:translateY(-1px);box-shadow:0 4px 10px rgba(15,23,42,.12)}.grades-attendance-option:disabled{opacity:.55;cursor:not-allowed;box-shadow:none;transform:none}.grades-mark-picker{background:#fff;border:1px solid #e2e8f0;border-radius:12px;grid-template-columns:repeat(4,minmax(0,1fr));gap:7px;width:100%;padding:5px;display:grid}.grades-mark-picker .grades-mark{color:#334155;cursor:pointer;background:#f8fafc;border:1px solid transparent;border-radius:10px;width:100%;height:48px;transition:transform .15s,border-color .15s,box-shadow .15s,background .15s;position:relative;overflow:hidden}.grades-mark-picker .grades-mark:before{content:"";opacity:.75;background:currentColor;width:4px;position:absolute;top:0;bottom:0;left:0;right:auto}.grades-mark-value{font-size:23px;font-weight:900;line-height:1}.grades-comment-input{font:inherit;color:#0f172a;resize:none;scrollbar-width:none;background:#fff;border:1px solid #e2e8f0;border-radius:10px;outline:none;width:100%;min-width:240px;height:34px;padding:8px 10px;transition:height .15s,border-color .15s,box-shadow .15s;overflow:auto}.grades-comment-input::-webkit-scrollbar{width:0;height:0}.grades-save-btn{width:100%}.grades-save-btn:disabled{opacity:.5;cursor:not-allowed}.homework-list{flex-direction:column;gap:10px;margin:0;padding:0;list-style:none;display:flex}.homework-item{background:#fff;border:1px solid #e5e7eb;border-left:4px solid #cbd5e1;border-radius:12px;align-items:flex-start;gap:10px;padding:12px;display:flex}.homework-item.is-done{opacity:.75}.homework-check,.homework-delete{background:#fff;border:1px solid #dbe2ef;border-radius:8px;justify-content:center;align-items:center;width:28px;height:28px;display:inline-flex}.homework-check.is-checked{color:#fff;background:#10b981;border-color:#10b981}.teacher-notes-compose{grid-template-columns:minmax(220px,1fr) minmax(180px,.7fr) auto;align-items:start;gap:12px;display:grid}.teacher-notes-textarea{resize:vertical;min-height:92px;font:inherit;grid-column:1/-1;line-height:1.45}.teacher-notes-compose .omni-btn-primary{grid-column:1/-1;justify-self:start}.teacher-notes-list{gap:12px;margin-top:18px;display:grid}.teacher-note{background:#fff;border:1px solid #dbe2ef;border-left:3px solid #2563eb;border-radius:12px;padding:14px 16px}.teacher-note-meta{flex-wrap:wrap;align-items:baseline;gap:6px 12px;display:flex}.teacher-note-meta strong{color:#0f172a}.teacher-note-meta span{color:#2563eb;font-size:13px;font-weight:650}.teacher-note-meta small{color:#64748b;margin-left:auto}.teacher-note p{color:#334155;white-space:pre-wrap;margin:10px 0 0;line-height:1.5}.teacher-note-actions,.teacher-note-edit{flex-wrap:wrap;gap:8px;margin-top:12px;display:flex}.teacher-note-edit{grid-template-columns:auto auto;display:grid}.teacher-note-edit .teacher-notes-textarea{grid-column:1/-1}@media (max-width:720px){.teacher-notes-compose{grid-template-columns:1fr}.teacher-note-meta small{width:100%;margin-left:0}}.homework-body{text-align:left;background:0 0;border:0;flex-direction:column;flex:1;gap:5px;display:flex}.homework-due{color:#334155;background:#f1f5f9;border-radius:999px;align-items:center;gap:6px;padding:4px 8px;font-size:12px;display:inline-flex}.homework-priority-picker{flex-wrap:wrap;gap:8px;display:inline-flex}.homework-priority-btn{color:#475569;font:inherit;cursor:pointer;background:#fff;border:1px solid #dbe2ef;border-radius:8px;align-items:center;gap:6px;padding:7px 14px;font-weight:600;transition:background .15s,border-color .15s,color .15s,box-shadow .15s;display:inline-flex}.homework-priority-btn:before{content:"";opacity:.55;background:currentColor;border-radius:999px;width:8px;height:8px}.homework-priority-btn.priority-0{color:#047857}.homework-priority-btn.priority-1{color:#b45309}.homework-priority-btn.priority-2{color:#b91c1c}.homework-priority-btn:hover{background:#f8fafc}.homework-priority-btn.priority-0.is-selected{background:#ecfdf5;border-color:#10b981;box-shadow:0 0 0 1px #10b981}.homework-priority-btn.priority-1.is-selected{background:#fffbeb;border-color:#f59e0b;box-shadow:0 0 0 1px #f59e0b}.homework-priority-btn.priority-2.is-selected{background:#fef2f2;border-color:#ef4444;box-shadow:0 0 0 1px #ef4444}.homework-priority-btn.is-selected:before{opacity:1}@media (max-width:760px){.schedule-toolbar,.grades-toolbar,.homework-toolbar{flex-direction:column;align-items:stretch;padding:10px}.schedule-week,.schedule-actions,.homework-tabs{-webkit-overflow-scrolling:touch;width:100%;overflow-x:auto}.schedule-week{justify-content:space-between}.schedule-actions>*,.homework-tabs button,.schedule-add-btn,.grades-add-btn,.homework-add-btn{flex:1 0 auto}.schedule-table{border-spacing:4px;min-width:720px}.schedule-lesson,.schedule-empty{min-height:64px}.schedule-lesson{padding:8px}.schedule-form-row{grid-template-columns:1fr}.grades-student-row{padding:12px}.grades-student-info,.grades-student-controls{min-width:100%}.grades-lesson-panel,.grades-bulk-attendance,.grades-student-attendance-zone{grid-template-columns:1fr}.grades-mark-picker{grid-template-columns:repeat(2,minmax(0,1fr))}.grades-attendance-picker-inline{justify-self:stretch;max-width:none}.grades-filter{width:100%}.grades-filter select,.grades-filter input{width:100%;min-width:0}.homework-list{gap:10px}.homework-card,.homework-item{border-radius:12px}}.schedule-help{color:#64748b;font-size:12px}.schedule-help a{color:#2563eb}.homework-attachment{color:#64748b;align-items:center;gap:4px;font-size:12px;display:inline-flex}.homework-download{color:#1d4ed8;border:1px solid #dbe2ef;border-radius:8px;justify-content:center;align-items:center;width:28px;height:28px;display:inline-flex}.student-schedule-page,.student-homework-page,.student-comments-page{flex-direction:column;gap:14px;display:flex}.student-page-head{-webkit-backdrop-filter:blur(6px);background:rgba(255,255,255,.9);border:1px solid #e5e7eb;border-radius:14px;justify-content:space-between;align-items:center;gap:8px;padding:12px 14px;display:flex;box-shadow:0 10px 24px rgba(15,23,42,.05)}.student-page-title{align-items:center;gap:10px;display:flex}.student-page-title strong{font-size:16px;display:block}.student-page-title small{color:#64748b;font-size:12px}.student-head-actions{gap:6px;display:inline-flex}.student-nav-btn{background:#fff;border:1px solid #dbe2ef;border-radius:10px;justify-content:center;align-items:center;padding:7px 10px;display:inline-flex}.student-schedule-grid{grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:10px;display:grid}.student-day-card{-webkit-backdrop-filter:blur(5px);background:rgba(255,255,255,.9);border:1px solid #e5e7eb;border-radius:12px;padding:10px;box-shadow:0 8px 18px rgba(15,23,42,.04)}.student-day-head{justify-content:space-between;align-items:baseline;margin-bottom:8px;display:flex}.student-day-head span{color:#64748b;font-size:12px}.student-day-lessons{flex-direction:column;gap:8px;margin:0;padding:0;list-style:none;display:flex}.student-lesson{background:#f8fafc;border:1px solid #e5e7eb;border-left:4px solid #2563eb;border-radius:10px;padding:8px}.student-lesson-top{align-items:center;gap:8px;margin-bottom:4px;display:flex}.student-lesson-num{background:#fff;border:1px solid #e2e8f0;border-radius:8px;justify-content:center;align-items:center;width:24px;height:24px;font-size:12px;font-weight:600;display:inline-flex}.student-lesson-meta{color:#64748b;flex-wrap:wrap;gap:6px 10px;font-size:12px;display:flex}.student-lesson-meta span{align-items:center;gap:4px;display:inline-flex}.student-empty{color:#94a3b8;padding:8px 0;font-size:13px}.student-homework-list{flex-direction:column;gap:10px;margin:0;padding:0;list-style:none;display:flex}.student-homework-item{-webkit-backdrop-filter:blur(5px);background:rgba(255,255,255,.9);border:1px solid #e5e7eb;border-left:4px solid #2563eb;border-radius:12px;padding:12px;box-shadow:0 8px 18px rgba(15,23,42,.04)}.student-homework-top{justify-content:space-between;align-items:center;margin-bottom:4px;display:flex}.student-homework-subject{text-transform:uppercase;font-size:12px;font-weight:700}.student-homework-due{color:#64748b;font-size:12px}.student-homework-due.is-overdue{color:#b91c1c}.student-homework-item p{color:#64748b;margin:6px 0;font-size:13px}.student-homework-actions{flex-wrap:wrap;gap:8px;margin-top:10px;display:flex}.student-homework-actions a,.student-homework-actions button{color:#334155;font:inherit;background:#fff;border:1px solid #dbe2ef;border-radius:9px;align-items:center;gap:6px;padding:7px 10px;display:inline-flex}.student-homework-actions button{cursor:pointer}.student-no-file{color:#94a3b8;align-items:center;gap:4px;font-size:12px;display:inline-flex}.student-submissions h3{margin:12px 0 8px;font-size:14px}.student-submissions ul{flex-direction:column;gap:6px;margin:0;padding:0;list-style:none;display:flex}.student-submissions li{justify-content:space-between;gap:8px;font-size:13px;display:flex}.student-comments-counter{color:#2563eb;background:#eff6ff;border-radius:999px;justify-content:center;align-items:center;min-width:34px;height:34px;padding:0 10px;font-size:14px;font-weight:800;display:inline-flex}.student-comments-list{grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:12px;margin:0;padding:0;list-style:none;display:grid}.student-comment-card{background:rgba(255,255,255,.92);border:1px solid #e5e7eb;border-left:4px solid #2563eb;border-radius:12px;flex-direction:column;gap:12px;height:100%;padding:14px;display:flex;box-shadow:0 8px 18px rgba(15,23,42,.04)}.student-comment-top{justify-content:space-between;align-items:flex-start;gap:12px;display:flex}.student-comment-teacher{align-items:center;gap:10px;min-width:0;display:flex}.student-comment-avatar{color:#64748b;background:#f1f5f9;border:1px solid #e2e8f0;border-radius:12px;flex:0 0 40px;justify-content:center;align-items:center;width:40px;height:40px;display:inline-flex}.student-comment-teacher strong{color:#0f172a;font-size:15px;line-height:1.25;display:block}.student-comment-teacher small{color:#64748b;font-size:12px}.student-comment-top time{color:#64748b;flex:none;align-items:center;gap:5px;font-size:12px;font-weight:700;display:inline-flex}.student-comment-meta{flex-wrap:wrap;gap:8px;display:flex}.student-comment-meta span{color:#475569;background:#f8fafc;border:1px solid #dbe2ef;border-radius:10px;align-items:center;gap:6px;min-height:32px;padding:6px 10px;font-size:13px;font-weight:700;display:inline-flex}.student-comment-card p{color:#334155;white-space:pre-wrap;background:#f8fafc;border:1px solid #e2e8f0;border-radius:12px;margin:0;padding:12px;font-size:14px;line-height:1.5}@media (max-width:640px){.student-comments-list{grid-template-columns:1fr}.student-comment-top{flex-direction:column}.schedule-modal,.grades-modal,.homework-modal,.submissions-modal{width:calc(100vw - 24px);max-width:none;max-height:calc(100dvh - 24px)}.homework-priority-picker{grid-template-columns:1fr;display:grid}.homework-priority-btn{justify-content:center;width:100%}}@media (max-width:720px){.schedule-page,.grades-page,.homework-page,.student-schedule-page,.student-homework-page,.student-comments-page,.student-rating-page,.journal-materials-page{gap:12px;min-width:0}.schedule-toolbar,.grades-toolbar,.homework-toolbar{border-radius:12px;gap:8px}.schedule-week,.schedule-actions,.homework-tabs,.student-head-actions,.rating-stage-status{-webkit-overflow-scrolling:touch;scrollbar-width:none;max-width:100%;overflow-x:auto}.schedule-week::-webkit-scrollbar{width:0;height:0;display:none}.schedule-actions::-webkit-scrollbar{width:0;height:0;display:none}.homework-tabs::-webkit-scrollbar{width:0;height:0;display:none}.student-head-actions::-webkit-scrollbar{width:0;height:0;display:none}.rating-stage-status::-webkit-scrollbar{width:0;height:0;display:none}.schedule-week-label{flex:1 0 auto;min-width:160px}.schedule-actions{justify-content:flex-start}.schedule-actions>*,.schedule-add-btn,.grades-add-btn,.homework-add-btn,.schedule-btn-primary,.schedule-btn-ghost,.schedule-btn-danger,.homework-tabs button{min-height:40px}.schedule-table-wrap,.grades-table-wrap,.homework-students-table-wrap,.student-rating-table-wrap{-webkit-overflow-scrolling:touch;max-width:calc(100vw - 20px);margin-left:-2px;margin-right:-2px;overflow-x:auto}.grades-table,.rating-scores-table,.homework-students-table,.student-rating-table{min-width:600px}.schedule-list,.student-schedule-grid,.student-comments-list,.journal-materials-list{grid-template-columns:minmax(0,1fr)}.schedule-day-card,.student-day-card,.student-homework-item,.student-comment-card,.journal-materials-list li{min-width:0}.student-page-head{gap:10px}.student-page-title{min-width:0}.student-page-title strong,.student-page-title small,.student-homework-subject,.student-homework-item p,.student-comment-teacher strong,.student-comment-teacher small{overflow-wrap:anywhere}.student-homework-top{gap:4px}.student-comment-meta span{flex:100%}.teacher-notes-compose,.teacher-note-edit,.journal-materials-form,.rating-schedule-form{grid-template-columns:1fr}.teacher-notes-compose .omni-btn-primary,.journal-materials-actions,.journal-materials-item-actions{width:100%}.journal-materials-actions,.journal-materials-item-actions{flex-direction:column;align-items:stretch}.journal-materials-item-actions a,.journal-materials-item-actions button{justify-content:center;width:100%}.rating-schedule-head span{flex-basis:100%;margin-left:0}.rating-schedule-list li{flex-wrap:wrap;align-items:flex-start}.rating-schedule-date{flex-basis:100%;margin-left:42px}.rating-stage-picker{grid-template-columns:1fr}.rating-stage-btn{justify-content:flex-start}}@media (max-width:430px){.schedule-toolbar,.grades-toolbar,.homework-toolbar,.student-page-head{padding:10px}.schedule-nav-btn{width:38px;min-width:38px;height:38px}.schedule-week-label{min-width:146px;padding:6px 8px}.schedule-week-label strong{font-size:13px}.schedule-week-label small,.schedule-help{font-size:11px}.schedule-table{border-spacing:3px;min-width:640px}.schedule-lesson,.schedule-empty{min-height:58px}.schedule-lesson{padding:7px}.schedule-lesson strong,.schedule-lesson span{overflow-wrap:anywhere}.schedule-modal-overlay{align-items:flex-end;padding:0}.schedule-modal,.grades-modal,.homework-modal,.submissions-modal,.schedule-generator-modal{border-radius:16px 16px 0 0;width:100vw;max-width:none;max-height:calc(100dvh - 8px);padding:16px}.schedule-modal h2,.schedule-generator-modal h2{padding-right:38px;font-size:18px}.schedule-form-actions,.schedule-form-actions-right,.schedule-gen-actions{flex-direction:column;align-items:stretch;width:100%}.schedule-form-actions-right>*,.schedule-gen-actions>*,.schedule-gen-add,.schedule-gen-autofill{justify-content:center;width:100%}.schedule-generator-panel{max-width:none;padding:0}.schedule-generator-panel .schedule-gen-form,.schedule-generator-panel .schedule-gen-list,.schedule-generator-panel .schedule-gen-result,.schedule-generator-panel .schedule-gen-period{padding:12px}.schedule-gen-days,.schedule-gen-period-row,.schedule-gen-item,.schedule-gen-run-history li{grid-template-columns:1fr}.schedule-gen-period-field input,.schedule-gen-period-field input[type=number]{width:100%}.grades-lesson-panel,.grades-student-card-body,.grades-student-row .grades-attendance-picker,.grades-bulk-attendance{grid-template-columns:1fr!important}.grades-student-card-head,.grades-student-card-body,.grades-student-comment-zone,.grades-student-footer{padding-left:16px;padding-right:16px}.grades-student-card-head{padding-top:16px}.grades-student-row:before{height:84px;top:12px}.grades-student-row .grades-student-name{font-size:18px}.grades-save-status{justify-self:start;min-width:0}.grades-mark-picker{grid-template-columns:repeat(2,minmax(0,1fr))!important}.grades-comment-chip,.grades-clear-btn,.grades-save-btn{min-height:42px}.grades-comment-chip{width:100%}.grades-card-actions,.grades-student-footer{flex-direction:column;align-items:stretch}.grades-clear-btn,.grades-save-btn{width:100%;min-width:0}.homework-item{flex-direction:column}.homework-check,.homework-delete{width:36px;height:36px}.student-rating-table{min-width:560px}.journal-rating-table,.journal-rating-mini{font-size:.8rem}.journal-rating-table th,.journal-rating-table td,.journal-rating-mini th,.journal-rating-mini td{padding:6px}}.homework-section-title{color:#111827;align-items:center;gap:6px;margin:0;font-size:15px;font-weight:700;display:flex}.homework-group-badge{color:#4338ca;background:#eef2ff;border-radius:999px;align-items:center;padding:2px 8px;font-size:11px;font-weight:600;display:inline-flex}.homework-group-badge.is-all{color:#64748b;background:#f1f5f9}.homework-review-btn{color:#1d4ed8;cursor:pointer;background:#fff;border:1px solid #dbe2ef;border-radius:8px;align-items:center;gap:4px;height:28px;padding:0 10px;font-size:12px;font-weight:600;display:inline-flex}.homework-review-btn.has-pending{color:#b45309;background:#fffbeb;border-color:#f59e0b}.homework-students{flex-direction:column;gap:10px;margin-top:18px;display:flex}.homework-students-table-wrap{border:1px solid #e5e7eb;border-radius:12px;overflow-x:auto}.homework-students-table{border-collapse:collapse;width:100%;font-size:13px}.homework-students-table th,.homework-students-table td{text-align:left;white-space:nowrap;border-bottom:1px solid #f1f5f9;padding:9px 12px}.homework-students-table th{color:#475569;background:#f8fafc;font-weight:600}.homework-students-table tr:last-child td{border-bottom:0}.homework-students-table .hw-cell-done{color:#047857;font-weight:600}.homework-students-table .hw-cell-pending{color:#b45309;font-weight:600}.homework-students-table .hw-cell-overdue{color:#b91c1c;font-weight:600}.homework-review-modal{max-width:560px}.homework-submissions{flex-direction:column;gap:12px;margin:0;padding:0;list-style:none;display:flex}.homework-submissions>li{border:1px solid #e5e7eb;border-radius:10px;flex-direction:column;gap:8px;padding:10px 12px;display:flex}.homework-submission-head{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:10px;display:flex}.homework-submission-head a{color:#1d4ed8;align-items:center;gap:4px;font-size:13px;display:inline-flex}.homework-submission-comment{color:#475569;margin:0;font-size:13px}.homework-submission-grade{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.homework-submission-grade select{border:1px solid #dbe2ef;border-radius:8px;height:34px;padding:0 8px}.homework-submission-grade input{border:1px solid #dbe2ef;border-radius:8px;flex:1;min-width:140px;height:34px;padding:0 10px}.student-homework-status{border-radius:999px;align-items:center;gap:4px;padding:3px 9px;font-size:12px;font-weight:600;display:inline-flex}.student-homework-status.is-done{color:#047857;background:#ecfdf5}.student-homework-status.is-overdue{color:#b91c1c;background:#fef2f2}.student-homework-grade{color:#334155;background:#f8fafc;border-radius:8px;padding:6px 10px;font-size:13px}.journal-materials-page{flex-direction:column;gap:14px;display:flex}.journal-materials-form{grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:10px;display:grid}.journal-materials-form label{color:#64748b;flex-direction:column;gap:6px;font-size:12px;display:flex}.journal-materials-form input,.journal-materials-form select{color:#1e293b;background:#fff;border:1px solid #dbe2ef;border-radius:9px;height:36px;padding:0 10px}.journal-materials-actions{align-items:flex-end;display:flex}.journal-materials-list{flex-direction:column;gap:10px;margin:0;padding:0;list-style:none;display:flex}.journal-materials-list li{background:#fff;border:1px solid #e5e7eb;border-radius:12px;justify-content:space-between;align-items:center;gap:12px;padding:12px;display:flex}.journal-materials-main{flex-direction:column;gap:4px;min-width:0;display:flex}.journal-materials-main strong{color:#1e293b;white-space:nowrap;text-overflow:ellipsis;font-size:14px;overflow:hidden}.journal-materials-main small{color:#64748b;font-size:12px}.journal-materials-subject{border:1px solid #dbe2ef;border-radius:999px;width:-webkit-fit-content;width:-moz-fit-content;width:fit-content;padding:3px 8px;font-size:12px;font-weight:600;display:inline-flex}.journal-materials-item-actions{flex-shrink:0;align-items:center;gap:10px;display:inline-flex}.journal-materials-item-actions a,.journal-materials-item-actions button{color:#334155;background:#fff;border:1px solid #dbe2ef;border-radius:9px;align-items:center;gap:6px;height:32px;padding:0 10px;font-size:12px;font-weight:600;text-decoration:none;display:inline-flex}.journal-materials-item-actions button{cursor:pointer}.journal-materials-item-actions a:hover,.journal-materials-item-actions button:hover{color:#1d4ed8;border-color:#93c5fd}:root[data-theme=dark] .schedule-toolbar,:root[data-theme=dark] .grades-toolbar,:root[data-theme=dark] .homework-toolbar,:root[data-theme=dark] .schedule-table-wrap,:root[data-theme=dark] .grades-table-wrap,:root[data-theme=dark] .schedule-day-card,:root[data-theme=dark] .schedule-modal,:root[data-theme=dark] .grades-summary-card,:root[data-theme=dark] .grades-lesson-panel,:root[data-theme=dark] .grades-student-row,:root[data-theme=dark] .homework-card,:root[data-theme=dark] .homework-item,:root[data-theme=dark] .homework-students-table-wrap,:root[data-theme=dark] .homework-submissions>li,:root[data-theme=dark] .student-day-card,:root[data-theme=dark] .student-lesson,:root[data-theme=dark] .student-homework-item,:root[data-theme=dark] .student-comment-card,:root[data-theme=dark] .student-homework-grade{color:#e2e8f0;background:#0f172a;border-color:#334155}:root[data-theme=dark] .grades-student-name,:root[data-theme=dark] .grades-week-label{color:#e2e8f0}:root[data-theme=dark] .grades-week-label small,:root[data-theme=dark] .grades-lesson-check,:root[data-theme=dark] .grades-student-attendance-zone small{color:#94a3b8}:root[data-theme=dark] .grades-student-attendance-zone{background:linear-gradient(135deg,rgba(37,99,235,.24),rgba(14,165,233,.1));border-color:#2563eb}:root[data-theme=dark] .grades-student-controls{background:#111827;border-color:#334155}:root[data-theme=dark] .grades-control-head strong{color:#bae6fd;background:#082f49}:root[data-theme=dark] .grades-mark-picker{background:#0b1220;border-color:#334155}:root[data-theme=dark] .grades-mark-picker .grades-mark{color:#e2e8f0;background:#111827}:root[data-theme=dark] .grades-mark-picker .grades-mark.is-selected{background:#020617;box-shadow:0 0 0 3px rgba(148,163,184,.14),0 10px 24px rgba(0,0,0,.28)}:root[data-theme=dark] .grades-controls-title{color:#94a3b8}:root[data-theme=dark] .grades-comment-input{color:#e2e8f0}:root[data-theme=dark] .grades-note-mark{color:#c4b5fd;background:#1e1b4b}:root[data-theme=dark] .grades-attendance-option{color:#e2e8f0;background:#0b1220;border-color:#334155}:root[data-theme=dark] .grades-attendance-option.is-selected{box-shadow:0 0 0 3px rgba(148,163,184,.14)}:root[data-theme=dark] .grades-attendance-present{color:#86efac;background:#052e16;border-color:#166534}:root[data-theme=dark] .grades-attendance-absent{color:#fca5a5;background:#450a0a;border-color:#991b1b}:root[data-theme=dark] .schedule-loading,:root[data-theme=dark] .grades-empty,:root[data-theme=dark] .student-empty{color:#94a3b8;background:#0f172a;border-color:#334155}:root[data-theme=dark] .schedule-nav-btn,:root[data-theme=dark] .schedule-today-btn,:root[data-theme=dark] .schedule-toggle button,:root[data-theme=dark] .homework-tabs button,:root[data-theme=dark] .schedule-btn-ghost,:root[data-theme=dark] .schedule-btn-danger,:root[data-theme=dark] .schedule-modal-close,:root[data-theme=dark] .homework-review-btn,:root[data-theme=dark] .homework-download,:root[data-theme=dark] .homework-delete,:root[data-theme=dark] .schedule-form input,:root[data-theme=dark] .schedule-form textarea,:root[data-theme=dark] .schedule-form select,:root[data-theme=dark] .journal-materials-form input,:root[data-theme=dark] .journal-materials-form select,:root[data-theme=dark] .grades-filters input,:root[data-theme=dark] .grades-filters select,:root[data-theme=dark] .grades-filter,:root[data-theme=dark] .grades-filter select,:root[data-theme=dark] .grades-filter input,:root[data-theme=dark] .grades-lesson-select,:root[data-theme=dark] .grades-comment-input,:root[data-theme=dark] .homework-submission-grade select,:root[data-theme=dark] .homework-submission-grade input{color:#e2e8f0;background:#0b1220;border-color:#334155}:root[data-theme=dark] .schedule-toggle,:root[data-theme=dark] .homework-tabs,:root[data-theme=dark] .schedule-week-label,:root[data-theme=dark] .schedule-lesson,:root[data-theme=dark] .schedule-day-lessons button,:root[data-theme=dark] .homework-students-table th{background:#111827}:root[data-theme=dark] .schedule-week-label small,:root[data-theme=dark] .schedule-help,:root[data-theme=dark] .schedule-lesson span,:root[data-theme=dark] .journal-materials-main small,:root[data-theme=dark] .journal-materials-form label,:root[data-theme=dark] .grades-date,:root[data-theme=dark] .grades-meta,:root[data-theme=dark] .homework-meta,:root[data-theme=dark] .student-lesson-meta,:root[data-theme=dark] .student-homework-due,:root[data-theme=dark] .student-submissions li small,:root[data-theme=dark] .grades-summary-card span,:root[data-theme=dark] .homework-card small{color:#94a3b8}:root[data-theme=dark] .student-page-head{background:#0f172a;border-color:#334155}:root[data-theme=dark] .student-page-title small{color:#94a3b8}:root[data-theme=dark] .student-nav-btn{color:#e2e8f0;background:#111827;border-color:#334155}:root[data-theme=dark] .student-nav-btn:hover{background:#1e293b;border-color:#475569}:root[data-theme=dark] .student-lesson-num{color:#e2e8f0;background:#111827;border-color:#334155}:root[data-theme=dark] .student-homework-actions a,:root[data-theme=dark] .student-homework-actions button{color:#cbd5e1;background:#111827;border-color:#334155}:root[data-theme=dark] .student-homework-actions a:hover,:root[data-theme=dark] .student-homework-actions button:hover{color:#e2e8f0;background:#1e293b;border-color:#475569}:root[data-theme=dark] .student-homework-item p{color:#94a3b8}:root[data-theme=dark] .student-comments-counter{color:#bfdbfe;background:#1e3a8a}:root[data-theme=dark] .student-comment-avatar,:root[data-theme=dark] .student-comment-meta span,:root[data-theme=dark] .student-comment-card p{color:#cbd5e1;background:#0b1220;border-color:#334155}:root[data-theme=dark] .student-comment-teacher strong{color:#e2e8f0}:root[data-theme=dark] .student-comment-teacher small,:root[data-theme=dark] .student-comment-top time{color:#94a3b8}:root[data-theme=dark] .schedule-form label,:root[data-theme=dark] .schedule-file-picker-field>span,:root[data-theme=dark] .grades-summary-card small,:root[data-theme=dark] .homework-section-title,:root[data-theme=dark] .homework-students-table th,:root[data-theme=dark] .homework-submission-comment,:root[data-theme=dark] .journal-materials-main strong{color:#cbd5e1}:root[data-theme=dark] .journal-materials-list li,:root[data-theme=dark] .journal-materials-item-actions a,:root[data-theme=dark] .journal-materials-item-actions button{color:#e2e8f0;background:#0f172a;border-color:#334155}:root[data-theme=dark] .journal-materials-item-actions a:hover,:root[data-theme=dark] .journal-materials-item-actions button:hover{color:#93c5fd;border-color:#60a5fa}:root[data-theme=dark] .schedule-table th,:root[data-theme=dark] .schedule-table td,:root[data-theme=dark] .grades-table th,:root[data-theme=dark] .grades-table td,:root[data-theme=dark] .homework-students-table th,:root[data-theme=dark] .homework-students-table td{border-color:#1e293b}:root[data-theme=dark] .schedule-toggle button.active,:root[data-theme=dark] .homework-tabs button.active{color:#93c5fd;background:#0f172a}:root[data-theme=dark] .schedule-btn-primary,:root[data-theme=dark] .schedule-add-btn,:root[data-theme=dark] .grades-add-btn,:root[data-theme=dark] .homework-add-btn{color:#fff;background:#2563eb;border-color:#2563eb}:root[data-theme=dark] .schedule-btn-primary:hover,:root[data-theme=dark] .schedule-add-btn:hover,:root[data-theme=dark] .grades-add-btn:hover,:root[data-theme=dark] .homework-add-btn:hover{background:#1d4ed8;border-color:#1d4ed8}:root[data-theme=dark] .schedule-btn-danger{color:#fda4af;background:#3f0a13;border-color:#7f1d1d}:root[data-theme=dark] .schedule-btn-danger:hover{color:#fecdd3;background:#4c0519;border-color:#991b1b}:root[data-theme=dark] .schedule-error{color:#fda4af;background:#3f0a13;border-color:#7f1d1d}:root[data-theme=dark] .student-homework-status.is-done{color:#86efac;background:#052e16}:root[data-theme=dark] .student-homework-status.is-overdue{color:#fda4af;background:#3f0a13}.rating-grade-chip{color:#202330;background:#f8fafc;border:1.5px solid #cbd5e1;border-radius:12px;padding:2px 10px;font-size:.85rem;font-weight:600;display:inline-block}.rating-grade-chip.rating-excellent{color:#16a34a;background:#dcfce7;border-color:#16a34a}.rating-grade-chip.rating-good{color:#65a30d;background:#ecfccb;border-color:#65a30d}.rating-grade-chip.rating-ok{color:#d97706;background:#fef3c7;border-color:#d97706}.rating-grade-chip.rating-bad{color:#dc2626;background:#fee2e2;border-color:#dc2626}.rating-grade-chip.rating-pending{color:#64748b;background:#f1f5f9;border-color:#94a3b8}.rating-editor-summary{background:#f8fafc;border:1px solid #e5e7eb;border-radius:10px;gap:16px;margin-top:4px;padding:12px 14px;display:flex}.rating-editor-summary>div{text-align:center;flex:1}.rating-editor-summary small{color:#6b7280;text-transform:uppercase;margin-bottom:2px;font-size:.72rem;display:block}.rating-editor-summary strong{color:#202330;font-size:1.1rem}.rating-editor-summary strong span{color:#9ca3af;font-size:.75rem;font-weight:400}.rating-points-row label input{width:100%;max-width:90px}.rating-single-score-row label{max-width:220px}.rating-stage-picker{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;display:grid}.rating-stage-btn{color:#475569;cursor:pointer;background:#fff;border:1px solid #dbe3ef;border-radius:8px;align-items:center;gap:8px;min-height:42px;padding:8px 10px;font-size:.85rem;font-weight:700;display:flex}.rating-stage-btn span{color:#334155;background:#f1f5f9;border-radius:7px;justify-content:center;align-items:center;width:28px;height:24px;font-size:.78rem;display:inline-flex}.rating-stage-btn.active{color:#1d4ed8;background:#eff6ff;border-color:#2563eb}.rating-stage-btn.active span{color:#fff;background:#2563eb}.rating-stage-status{flex-wrap:wrap;gap:8px;display:flex}.rating-stage-status span{color:#64748b;background:#f8fafc;border:1px solid #e2e8f0;border-radius:8px;align-items:center;min-height:26px;padding:4px 9px;font-size:.78rem;font-weight:700;display:inline-flex}.rating-stage-status span.done{color:#15803d;background:#f0fdf4;border-color:#bbf7d0}.rating-bulk-toolbar{align-items:stretch}.rating-filter-row,.rating-save-panel{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.rating-filter-row{flex:560px;min-width:0}.rating-save-panel{color:#64748b;justify-content:flex-end;font-size:13px}.rating-save-status{color:#15803d;align-items:center;gap:4px;font-weight:700;display:inline-flex}.rating-subject-filter select{min-width:220px}.rating-scores-table th small{color:#9ca3af;margin-left:2px;font-weight:400}.rating-bulk-table{min-width:1080px}.rating-bulk-table th{z-index:1;background:#f8fafc;position:-webkit-sticky;position:sticky;top:0}.rating-bulk-table td:first-child strong{text-overflow:ellipsis;vertical-align:middle;white-space:nowrap;max-width:260px;display:inline-block;overflow:hidden}.rating-row-dirty{background:#fffbeb}.rating-dirty-dot{color:#92400e;vertical-align:middle;background:#fef3c7;border-radius:999px;align-items:center;margin-left:8px;padding:2px 7px;font-size:11px;font-weight:700;display:inline-flex}.rating-score-input{color:#0f172a;width:72px;height:34px;font:inherit;text-align:center;background:#fff;border:1px solid #dbe2ef;border-radius:8px;outline:none;font-weight:700;transition:border-color .15s,box-shadow .15s}.rating-score-input:focus{border-color:#2563eb;box-shadow:0 0 0 3px rgba(37,99,235,.14)}.rating-score-input::-webkit-outer-spin-button{margin:0}.rating-score-input::-webkit-inner-spin-button{margin:0}.rating-score-input[type=number]{-moz-appearance:textfield}.rating-schedule-panel{margin-top:20px}.rating-schedule-head{flex-wrap:wrap;align-items:center;gap:8px;margin-bottom:12px;display:flex}.rating-schedule-head h2{color:#202330;font-size:1.05rem}.rating-schedule-head span{color:#9ca3af;margin-left:auto;font-size:.8rem}.rating-schedule-list{flex-direction:column;gap:8px;margin:0 0 14px;padding:0;list-style:none;display:flex}.rating-schedule-list li{background:#f8fafc;border:1px solid #e5e7eb;border-radius:10px;align-items:center;gap:10px;padding:10px 14px;display:flex}.rating-schedule-point{color:#4338ca;background:#e0e7ff;border-radius:8px;justify-content:center;align-items:center;width:32px;height:28px;font-size:.78rem;font-weight:700;display:inline-flex}.rating-schedule-label{color:#202330;font-size:.9rem;font-weight:600}.rating-schedule-date{color:#6b7280;margin-left:auto;font-size:.82rem}.rating-schedule-form{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.rating-schedule-form input,.rating-schedule-form select{color:#202330;background:#fff;border:1px solid #d1d5db;border-radius:8px;padding:7px 10px;font-size:.85rem}.student-rating-page{flex-direction:column;gap:16px;display:flex}.student-rating-table-wrap{overflow-x:auto}.student-rating-table{border-collapse:collapse;width:100%;font-size:.9rem}.student-rating-table th,.student-rating-table td{text-align:left;border-bottom:1px solid #e5e7eb;padding:10px 12px}.student-rating-table th{text-transform:uppercase;color:#6b7280;background:#f9fafb;font-size:.78rem}.student-rating-table th small{color:#9ca3af;font-weight:400}.student-rating-table td strong{color:#202330}.student-rating-subject{font-weight:600}.student-rating-legend{border-top:1px solid #e5e7eb;flex-wrap:wrap;gap:16px;margin-top:14px;padding-top:14px;display:flex}.student-rating-legend span{color:#6b7280;align-items:center;gap:6px;font-size:.78rem;display:inline-flex}.student-rating-legend i{border-radius:4px;width:12px;height:12px;display:inline-block}.journal-rating-card{grid-column:1/-1}.journal-rating-table,.journal-rating-mini{border-collapse:collapse;table-layout:fixed;width:100%;font-size:.88rem}.journal-rating-table th,.journal-rating-table td,.journal-rating-mini th,.journal-rating-mini td{text-align:left;vertical-align:middle;border-bottom:1px solid #e5e7eb;padding:6px 10px}.journal-rating-table th,.journal-rating-mini th{text-transform:uppercase;color:#6b7280;white-space:nowrap;font-size:.72rem;line-height:1.25}.journal-rating-table th:first-child,.journal-rating-table td:first-child,.journal-rating-mini th:first-child,.journal-rating-mini td:first-child{width:52%}.journal-rating-table th:nth-child(2),.journal-rating-table td:nth-child(2),.journal-rating-mini th:nth-child(2),.journal-rating-mini td:nth-child(2){width:30%}.journal-rating-table th:nth-child(3),.journal-rating-table td:nth-child(3),.journal-rating-mini th:nth-child(3),.journal-rating-mini td:nth-child(3){text-align:center;width:18%}.journal-rating-table td:first-child span,.journal-rating-mini td:first-child span{overflow-wrap:anywhere;max-width:100%;font-weight:700;line-height:1.25;display:inline-block}.journal-rating-table td strong,.journal-rating-mini td strong{color:#202330}.journal-rating-table .rating-grade-chip,.journal-rating-mini .rating-grade-chip{margin:0 auto}:root[data-theme=dark] .rating-grade-chip{color:#cbd5e1;background:0 0;border-color:#334155}:root[data-theme=dark] .rating-grade-chip.rating-excellent{color:#4ade80;background:rgba(22,163,74,.15);border-color:#16a34a}:root[data-theme=dark] .rating-grade-chip.rating-good{color:#a3e635;background:rgba(101,163,13,.15);border-color:#65a30d}:root[data-theme=dark] .rating-grade-chip.rating-ok{color:#fbbf24;background:rgba(217,119,6,.15);border-color:#d97706}:root[data-theme=dark] .rating-grade-chip.rating-bad{color:#f87171;background:rgba(220,38,38,.15);border-color:#dc2626}:root[data-theme=dark] .rating-grade-chip.rating-pending{color:#94a3b8;background:rgba(100,116,139,.15);border-color:#475569}:root[data-theme=dark] .rating-schedule-point{color:#93c5fd;background:#1e3a5f}:root[data-theme=dark] .rating-schedule-form input,:root[data-theme=dark] .rating-schedule-form select{color:#e2e8f0;background:#0b1220;border-color:#334155}:root[data-theme=dark] .student-rating-table th,:root[data-theme=dark] .student-rating-table td{border-color:#1e293b}:root[data-theme=dark] .student-rating-table th{color:#cbd5e1;background:#111827}:root[data-theme=dark] .student-rating-table td strong{color:#e2e8f0}:root[data-theme=dark] .student-rating-legend{border-color:#1e293b}:root[data-theme=dark] .student-rating-legend span,:root[data-theme=dark] .journal-rating-table th,:root[data-theme=dark] .journal-rating-mini th{color:#94a3b8}:root[data-theme=dark] .journal-rating-table th,:root[data-theme=dark] .journal-rating-table td,:root[data-theme=dark] .journal-rating-mini th,:root[data-theme=dark] .journal-rating-mini td{border-color:#1e293b}:root[data-theme=dark] .journal-rating-table td strong,:root[data-theme=dark] .journal-rating-mini td strong{color:#e2e8f0}:root[data-theme=dark] .rating-scores-table th small{color:#94a3b8}:root[data-theme=dark] .grades-table tbody tr,:root[data-theme=dark] .rating-scores-table tbody tr{background:#0f172a}:root[data-theme=dark] .grades-table tbody tr:hover,:root[data-theme=dark] .rating-scores-table tbody tr:hover{background:#1e293b}:root[data-theme=dark] .grades-table td,:root[data-theme=dark] .rating-scores-table td{color:#e2e8f0;background:0 0}:root[data-theme=dark] .grades-table th,:root[data-theme=dark] .rating-scores-table th{color:#cbd5e1;background:#111827;border-color:#334155}:root[data-theme=dark] .grades-table-wrap{background:#0f172a;border-radius:12px}:root[data-theme=dark] .rating-schedule-panel{background:0 0}:root[data-theme=dark] .rating-schedule-list li{background:#0f172a;border-color:#334155}:root[data-theme=dark] .rating-schedule-label{color:#e2e8f0}:root[data-theme=dark] .rating-schedule-date{color:#94a3b8}:root[data-theme=dark] .rating-schedule-head h2{color:#f8fafc}:root[data-theme=dark] .rating-schedule-head span{color:#94a3b8}:root[data-theme=dark] .rating-points-row label input{color:#e2e8f0;background:#0b1220;border:1px solid #334155}:root[data-theme=dark] .rating-stage-btn{color:#cbd5e1;background:#0b1220;border-color:#334155}:root[data-theme=dark] .rating-stage-btn span{color:#94a3b8;background:#111827}:root[data-theme=dark] .rating-stage-btn.active{color:#93c5fd;background:rgba(37,99,235,.18);border-color:#3b82f6}:root[data-theme=dark] .rating-stage-btn.active span{color:#fff;background:#2563eb}:root[data-theme=dark] .rating-stage-status span{color:#94a3b8;background:#111827;border-color:#334155}:root[data-theme=dark] .rating-stage-status span.done{color:#86efac;background:rgba(22,163,74,.16);border-color:#166534}:root[data-theme=dark] .rating-editor-summary{background:#111827;border-color:#334155}:root[data-theme=dark] .rating-editor-summary small{color:#94a3b8}:root[data-theme=dark] .rating-editor-summary strong{color:#e2e8f0}:root[data-theme=dark] .rating-editor-summary strong span{color:#94a3b8}:root[data-theme=dark] .rating-page .grades-filter select{color:#e2e8f0;background:#0b1220;border-color:#334155}:root[data-theme=dark] .rating-page .grades-empty{color:#94a3b8;background:#0f172a;border-color:#334155}:root[data-theme=dark] .journal-materials-main,:root[data-theme=dark] .journal-materials-main table{background:0 0}:root[data-theme=dark] .journal-materials-main th{color:#cbd5e1;background:#111827;border-color:#334155}:root[data-theme=dark] .journal-materials-main td{color:#e2e8f0;background:0 0;border-color:#1e293b}:root[data-theme=dark] .journal-materials-main tr:hover td{background:#1e293b}:root[data-theme=dark] .grades-filter select option,:root[data-theme=dark] .rating-page select option{color:#e2e8f0;background:#0f172a}:root[data-theme=dark] .schedule-generator-panel{color:#e2e8f0;background:#0f172a;border-color:#334155}:root[data-theme=dark] .schedule-gen-form{background:#0b1220;border-color:#334155}:root[data-theme=dark] .schedule-gen-form select{color:#e2e8f0;background:#0b1220;border-color:#334155}:root[data-theme=dark] .schedule-gen-form select option{color:#e2e8f0;background:#0f172a}:root[data-theme=dark] .schedule-gen-days{color:#94a3b8}:root[data-theme=dark] .schedule-day-chip{color:#cbd5e1;background:#111827;border-color:#334155}:root[data-theme=dark] .schedule-day-chip.active{color:#fca5a5;background:rgba(185,28,28,.18);border-color:#7f1d1d}:root[data-theme=dark] .schedule-gen-period{background:#0b1220;border-color:#334155}:root[data-theme=dark] .schedule-gen-period-field{color:#94a3b8}:root[data-theme=dark] .schedule-gen-period-field input{color:#e2e8f0;background:#0b1220;border-color:#334155}:root[data-theme=dark] .schedule-gen-period-summary{color:#93c5fd}:root[data-theme=dark] .schedule-gen-item{background:#111827;border-color:#334155}:root[data-theme=dark] .schedule-gen-item-main span{color:#cbd5e1}:root[data-theme=dark] .schedule-gen-item-main small{color:#94a3b8}:root[data-theme=dark] .schedule-gen-result.ok{color:#6ee7b7;background:rgba(4,120,87,.14);border-color:#065f46}:root[data-theme=dark] .schedule-gen-result.warn{color:#fbbf24;background:rgba(180,83,9,.14);border-color:#92400e}:root[data-theme=dark] .schedule-gen-run-history{background:#0b1220;border-color:#334155}:root[data-theme=dark] .schedule-gen-run-history li{color:#94a3b8;border-bottom-color:#1e293b}:root[data-theme=dark] .schedule-gen-run-history li .run-status-ok{color:#6ee7b7}:root[data-theme=dark] .schedule-gen-run-history li .run-status-warn{color:#fbbf24}:root[data-theme=dark] .hours-stepper-btn{color:#e2e8f0;background:#111827;border-color:#334155}:root[data-theme=dark] .hours-stepper-btn:hover:not(:disabled){background:#1e293b;border-color:#475569}:root[data-theme=dark] .rolling-number{color:#93c5fd;background:#1e3a5f}:root[data-theme=dark] .hours-display-input{caret-color:#60a5fa}:root[data-theme=dark] .schedule-gen-btn{color:#c4b5fd;background:rgba(109,40,217,.14);border-color:#6d28d9}:root[data-theme=dark] .schedule-gen-btn:hover{color:#ddd6fe;background:rgba(109,40,217,.24);border-color:#8b5cf6}:root[data-theme=dark] .cal-picker-trigger{color:#e2e8f0;background:#0b1220;border-color:#334155}:root[data-theme=dark] .cal-picker-trigger:hover{background:#111827;border-color:#475569}:root[data-theme=dark] .cal-picker-trigger:focus-visible{border-color:#8b5cf6;box-shadow:0 0 0 3px rgba(139,92,246,.2)}:root[data-theme=dark] .cal-picker-trigger svg{color:#c4b5fd}:root[data-theme=dark] .cal-picker-dropdown{background:#0f172a;border-color:rgba(139,92,246,.2);box-shadow:0 24px 60px rgba(0,0,0,.55),0 0 0 1px rgba(139,92,246,.1)}:root[data-theme=dark] .cal-picker-head{background:linear-gradient(135deg,rgba(109,40,217,.14) 0%,rgba(76,29,149,.1) 100%);border-bottom-color:rgba(139,92,246,.1)}:root[data-theme=dark] .cal-picker-nav{color:#c4b5fd;background:rgba(15,23,42,.6);border-color:rgba(139,92,246,.2)}:root[data-theme=dark] .cal-picker-nav:hover{background:rgba(30,41,59,.8);border-color:#8b5cf6;box-shadow:0 2px 8px rgba(139,92,246,.15)}:root[data-theme=dark] .cal-picker-title{color:#e9d5ff}:root[data-theme=dark] .cal-picker-wd{color:#8b5cf6}:root[data-theme=dark] .cal-picker-cell{color:#cbd5e1;border-color:transparent}:root[data-theme=dark] .cal-picker-cell:hover{background:rgba(139,92,246,.1);border-color:rgba(139,92,246,.08)}:root[data-theme=dark] .cal-picker-cell.is-outside{color:#475569}:root[data-theme=dark] .cal-picker-cell.is-outside:hover{background:rgba(139,92,246,.06)}:root[data-theme=dark] .cal-picker-cell.is-today{color:#c4b5fd;background:rgba(139,92,246,.16);border-color:rgba(139,92,246,.28)}:root[data-theme=dark] .cal-picker-cell.is-today:hover{background:rgba(139,92,246,.22);border-color:rgba(139,92,246,.36)}:root[data-theme=dark] .cal-picker-cell.is-selected{color:#fff;background:linear-gradient(135deg,#7c3aed 0%,#6d28d9 100%);border-color:transparent;box-shadow:0 4px 12px rgba(109,40,217,.4)}:root[data-theme=dark] .cal-picker-cell.is-selected:hover{background:linear-gradient(135deg,#8b5cf6 0%,#7c3aed 100%);box-shadow:0 4px 16px rgba(109,40,217,.5)}:root[data-theme=dark] .cal-picker-cell.is-selected.is-today{color:#fff;background:linear-gradient(135deg,#7c3aed 0%,#6d28d9 100%)}:root[data-theme=dark] .cal-picker-today-btn{color:#c4b5fd;background:rgba(139,92,246,.08);border-color:rgba(139,92,246,.2)}:root[data-theme=dark] .cal-picker-today-btn:hover{background:rgba(139,92,246,.16);border-color:#8b5cf6;box-shadow:0 2px 8px rgba(139,92,246,.12)}.grades-students{gap:18px}.grades-bulk-attendance{grid-template-columns:repeat(3,minmax(0,1fr));width:100%;min-width:0}.grades-lesson-panel{grid-template-columns:minmax(250px,.9fr) minmax(280px,1.1fr) minmax(230px,.8fr);align-items:stretch}.grades-lesson-panel .grades-bulk-attendance{grid-column:1/-1}.grades-lesson-panel .grades-attendance-option{white-space:normal;min-height:46px;font-size:16px;line-height:1.15}.grades-student-row{color:#e7eefb;background:radial-gradient(circle at 18% 0,rgba(37,99,235,.14),transparent 34%),linear-gradient(145deg,#091327 0%,#0b172c 48%,#081225 100%);border:1px solid #263650;border-radius:8px;grid-template-columns:1fr;gap:0;padding:0;display:grid;position:relative;overflow:hidden;box-shadow:0 22px 48px rgba(2,6,23,.28)}.grades-student-row:before{content:"";background:linear-gradient(#35df86,#22c55e);border-radius:0 8px 8px 0;width:5px;height:112px;position:absolute;top:10px;bottom:auto;left:0}.grades-student-card-head{border-bottom:1px solid rgba(148,163,184,.16);grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:12px;padding:18px 26px 14px 30px;display:grid}.grades-student-avatar{color:#a9b9d5;background:rgba(15,23,42,.58);border:1px solid rgba(148,163,184,.18);border-radius:50%;justify-content:center;align-items:center;width:50px;height:50px;display:inline-flex;box-shadow:inset 0 0 0 1px rgba(255,255,255,.03)}.grades-student-title{flex-direction:column;gap:7px;min-width:0;display:flex}.grades-student-row .grades-student-name{color:#f8fafc;font-size:19px;overflow-wrap:anywhere;font-size:max(17px,min(1.35vw,21px));line-height:1.12}.grades-student-row .grades-student-group{color:#aab8ce;flex-wrap:wrap;align-items:center;gap:8px;font-size:14px;font-weight:600;display:flex}.grades-student-group i{background:#4c8dff;border-radius:50%;width:5px;height:5px}.grades-save-status{color:#49e894;grid-template-columns:auto 1fr;justify-self:end;align-items:center;gap:8px;min-width:118px;font-weight:800;display:grid}.grades-save-status svg{grid-row:span 2}.grades-save-status small{color:#9aa8bf;text-align:left;grid-column:2;font-weight:700}.grades-save-status.is-draft{color:#fbbf24}.grades-student-card-body{grid-template-columns:minmax(300px,424px) minmax(280px,412px);justify-content:start;align-items:stretch;gap:18px;padding:18px 30px 14px;display:grid}.grades-student-panel{background:rgba(8,18,37,.34);border:1px solid rgba(148,163,184,.18);border-radius:8px;flex-direction:column;justify-content:space-between;min-width:0;min-height:104px;padding:12px 16px;display:flex}.grades-section-head{justify-content:space-between;align-items:flex-end;gap:12px;margin-bottom:10px;display:flex}.grades-section-head h3{color:#f8fafc;margin:0;font-size:16px;line-height:1.1}.grades-section-head small{color:#8795ad;text-align:right;min-width:0;font-size:12px;line-height:1.3}.grades-student-row .grades-student-panel.grades-student-attendance-zone{background:rgba(8,18,37,.34);border:1px solid rgba(148,163,184,.18);border-radius:8px;grid-template-columns:none;align-items:stretch;gap:0;width:auto;min-height:104px;padding:12px 16px;display:flex}.grades-student-row .grades-attendance-picker{grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;width:100%;max-width:none;display:grid}.grades-attendance-option{color:#cfdbef;background:rgba(15,23,42,.42);border:1px solid #304056;border-radius:8px;min-height:42px;font-size:15px;font-weight:800;box-shadow:inset 0 0 0 1px rgba(255,255,255,.02)}.grades-attendance-option:hover:not(:disabled){border-color:#4b5d78;transform:translateY(-1px);box-shadow:0 12px 28px rgba(2,6,23,.22)}.grades-attendance-option.is-selected{border-color:currentColor;box-shadow:0 0 0 2px rgba(255,255,255,.05),0 14px 30px rgba(2,6,23,.28)}.grades-attendance-present{color:#effff6;background:rgba(16,185,129,.18);border-color:rgba(34,197,94,.58)}.grades-attendance-present.is-selected{color:#fff;background:linear-gradient(135deg,rgba(22,163,74,.68),rgba(5,150,105,.42))}.grades-attendance-late{color:#d7e3f7;background:rgba(245,158,11,.08);border-color:rgba(245,158,11,.38)}.grades-attendance-late.is-selected{color:#fde68a;background:rgba(245,158,11,.18)}.grades-attendance-absent{color:#d7e3f7;background:rgba(239,68,68,.1);border-color:rgba(239,68,68,.35)}.grades-attendance-absent.is-selected{color:#fecaca;background:rgba(239,68,68,.2)}.grades-mark-picker{background:0 0;border:0;grid-template-columns:repeat(4,minmax(64px,1fr));gap:10px;padding:0;display:grid}.grades-mark-picker .grades-mark{color:#a8cfff;background:rgba(15,23,42,.42);border:1px solid #304056;border-radius:8px;height:42px}.grades-mark-picker .grades-mark:before{display:none}.grades-mark-picker .grades-mark:hover{border-color:currentColor;transform:translateY(-1px);box-shadow:0 14px 30px rgba(2,6,23,.26)}.grades-mark-picker .grades-mark.is-selected{background:rgba(37,99,235,.18);border-color:currentColor;box-shadow:0 0 0 2px rgba(255,255,255,.04),0 14px 30px rgba(2,6,23,.32)}.grades-mark-picker .grade-excellent{color:#dff7ec;border-color:rgba(34,197,94,.62)}.grades-mark-picker .grade-excellent.is-selected{background:rgba(34,197,94,.25)}.grades-mark-picker .grade-good{color:#9ec9ff;border-color:rgba(59,130,246,.55)}.grades-mark-picker .grade-ok{color:#bed7ff;border-color:rgba(245,158,11,.55)}.grades-mark-picker .grade-bad{color:#bed7ff;border-color:rgba(239,68,68,.5)}.grades-mark-picker .grade-none{color:#a9b9d5;border-color:rgba(148,163,184,.28)}.grades-mark-value{font-size:26px;font-weight:900}.grades-student-comment-zone{padding:0 30px 18px}.grades-student-comment-zone .grades-section-head{margin-bottom:14px}.grades-comment-chips{flex-wrap:wrap;gap:10px;margin-bottom:14px;display:flex}.grades-comment-chip,.grades-clear-btn{color:#d5e0f3;min-height:38px;font:inherit;cursor:pointer;background:rgba(15,23,42,.42);border:1px solid #304056;border-radius:8px;justify-content:center;align-items:center;gap:8px;padding:0 16px;font-size:14px;font-weight:750;transition:border-color .15s,color .15s,background .15s,transform .15s;display:inline-flex}.grades-comment-chip:hover,.grades-clear-btn:hover:not(:disabled){color:#fff;border-color:#52647e;transform:translateY(-1px)}.grades-comment-chip.is-selected{color:#dbeafe;background:rgba(37,99,235,.18);border-color:#3b82f6}.grades-custom-comment-btn{color:#60a5fa;border-color:rgba(37,99,235,.42)}.grades-comment-wrap{position:relative}.grades-comment-input{color:#e7eefb;background:rgba(8,18,37,.72);border:1px solid #304056;border-radius:8px;min-width:0;height:86px;min-height:86px;padding:16px 20px 28px;font-size:14px;line-height:1.4}.grades-comment-input:focus{border-color:#3b82f6;height:86px;box-shadow:0 0 0 3px rgba(59,130,246,.15)}.grades-comment-input::placeholder{color:#72819a}.grades-comment-count{color:#8795ad;pointer-events:none;font-size:14px;font-weight:700;position:absolute;bottom:16px;right:20px}.grades-student-footer{background:rgba(2,6,23,.14);border-top:1px solid rgba(148,163,184,.11);justify-content:space-between;align-items:center;gap:18px;min-height:72px;padding:14px 30px;display:flex}.grades-card-actions{justify-content:flex-end;gap:14px;margin-left:auto;display:flex}.grades-clear-btn{color:#9daac0;min-width:148px}.grades-clear-btn:disabled{opacity:.48;cursor:not-allowed}.grades-save-btn{color:#fff;background:linear-gradient(#315df5,#244bd3);border-color:#2352dc;border-radius:8px;width:auto;min-width:168px;min-height:44px;font-size:16px;font-weight:850}.grades-save-btn:hover:not(:disabled){background:linear-gradient(#416cff,#2855e5);border-color:#416cff}.grades-student-recent{gap:8px;margin:0}.grades-student-recent .grades-mark-sm,.grades-student-recent .grades-attendance-badge{border-radius:8px;width:30px;height:30px}.grades-note-mark{color:#c4b5fd;background:rgba(99,102,241,.18);border:1px solid rgba(129,140,248,.32)}:root[data-theme=light] .grades-lesson-panel{background:rgba(255,255,255,.94);border-color:#dbe5f2;box-shadow:0 12px 28px rgba(15,23,42,.08)}:root[data-theme=light] .grades-lesson-panel .grades-attendance-option,:root[data-theme=light] .grades-attendance-option{color:#334155;box-shadow:none;background:#fff;border-color:#d7e0ec}:root[data-theme=light] .grades-student-row{color:#0f172a;background:radial-gradient(circle at 16% 0,rgba(59,130,246,.08),transparent 34%),linear-gradient(145deg,#fff 0%,#f8fbff 52%,#eef5ff 100%);border-color:#dbe5f2;box-shadow:0 14px 32px rgba(15,23,42,.09)}:root[data-theme=light] .grades-student-row:before{background:linear-gradient(#22c55e,#16a34a)}:root[data-theme=light] .grades-student-card-head{border-bottom-color:#e2e8f0}:root[data-theme=light] .grades-student-avatar{color:#64748b;background:#f1f7ff;border-color:#dbe7f5}:root[data-theme=light] .grades-student-row .grades-student-name,:root[data-theme=light] .grades-section-head h3{color:#0f172a}:root[data-theme=light] .grades-student-row .grades-student-group{color:#64748b}:root[data-theme=light] .grades-section-head small{color:#7b8798}:root[data-theme=light] .grades-student-panel,:root[data-theme=light] .grades-student-row .grades-student-panel.grades-student-attendance-zone{background:rgba(248,251,255,.88);border-color:#dbe7f5}:root[data-theme=light] .grades-attendance-option:hover:not(:disabled),:root[data-theme=light] .grades-mark-picker .grades-mark:hover,:root[data-theme=light] .grades-comment-chip:hover,:root[data-theme=light] .grades-clear-btn:hover:not(:disabled){color:#0f172a;border-color:#93c5fd;box-shadow:0 8px 18px rgba(15,23,42,.1)}:root[data-theme=light] .grades-attendance-option.is-selected{box-shadow:0 0 0 2px rgba(59,130,246,.08)}:root[data-theme=light] .grades-attendance-present{color:#047857;background:#ecfdf5;border-color:#a7f3d0}:root[data-theme=light] .grades-attendance-present.is-selected{color:#065f46;background:#d1fae5;border-color:#10b981}:root[data-theme=light] .grades-attendance-late{color:#b45309;background:#fffbeb;border-color:#fde68a}:root[data-theme=light] .grades-attendance-late.is-selected{color:#92400e;background:#fef3c7;border-color:#f59e0b}:root[data-theme=light] .grades-attendance-absent{color:#be123c;background:#fff1f2;border-color:#fecdd3}:root[data-theme=light] .grades-attendance-absent.is-selected{color:#9f1239;background:#ffe4e6;border-color:#f43f5e}:root[data-theme=light] .grades-mark-picker .grades-mark{color:#334155;background:#fff;border-color:#d7e0ec}:root[data-theme=light] .grades-mark-picker .grades-mark.is-selected{background:#f8fbff;box-shadow:0 0 0 2px rgba(59,130,246,.08),0 10px 22px rgba(15,23,42,.1)}:root[data-theme=light] .grades-mark-picker .grade-excellent{color:#047857;border-color:#10b981}:root[data-theme=light] .grades-mark-picker .grade-good{color:#1d4ed8;border-color:#3b82f6}:root[data-theme=light] .grades-mark-picker .grade-ok{color:#b45309;border-color:#f59e0b}:root[data-theme=light] .grades-mark-picker .grade-bad{color:#be123c;border-color:#f43f5e}:root[data-theme=light] .grades-comment-chip,:root[data-theme=light] .grades-clear-btn{color:#334155;background:#fff;border-color:#d7e0ec}:root[data-theme=light] .grades-comment-chip.is-selected{color:#1d4ed8;background:#eff6ff;border-color:#3b82f6}:root[data-theme=light] .grades-custom-comment-btn{color:#2563eb;border-color:#bfdbfe}:root[data-theme=light] .grades-comment-input{color:#0f172a;background:#fff;border-color:#d7e0ec}:root[data-theme=light] .grades-comment-input::placeholder,:root[data-theme=light] .grades-comment-count{color:#94a3b8}:root[data-theme=light] .grades-comment-input:focus{border-color:#3b82f6;box-shadow:0 0 0 3px rgba(59,130,246,.14)}:root[data-theme=light] .grades-student-footer{background:rgba(248,251,255,.78);border-top-color:#e2e8f0}:root[data-theme=light] .grades-clear-btn{color:#64748b}:root[data-theme=light] .grades-note-mark{color:#4338ca;background:#eef2ff;border-color:#c7d2fe}@media (max-width:980px){.grades-lesson-panel,.grades-bulk-attendance,.grades-student-row .grades-attendance-picker,.grades-student-card-body{grid-template-columns:1fr}.grades-bulk-attendance{min-width:0}.grades-student-card-head{grid-template-columns:auto minmax(0,1fr);padding:20px 22px 18px 28px}.grades-save-status{grid-column:1/-1;justify-self:start;margin-left:88px}.grades-student-card-body,.grades-student-comment-zone,.grades-student-footer{padding-left:28px;padding-right:22px}.grades-student-card-body{gap:18px}.grades-card-actions,.grades-student-footer{flex-direction:column;align-items:stretch;width:100%}.grades-card-actions{gap:12px}.grades-clear-btn,.grades-save-btn{width:100%;min-width:0}}@media (max-width:620px){.grades-student-card-head{grid-template-columns:1fr;gap:12px}.grades-student-avatar{width:58px;height:58px}.grades-save-status{margin-left:0}.grades-student-row .grades-student-name{font-size:20px}.grades-student-row .grades-student-group,.grades-attendance-option,.grades-comment-chip,.grades-clear-btn,.grades-comment-input{font-size:16px}.grades-comment-chips{gap:10px}.grades-comment-chip{width:100%}.grades-mark-value{font-size:34px}}:root{--candy-blue:#b2d5e5;--candy-blue-surface:#e9f5fa;--candy-blue-surface-strong:#d4e9f2;--candy-blue-border:#86b9cf;--candy-blue-text:#163444;--candy-blue-muted:#4b7182}:root:not([data-theme=dark]),:root:not([data-theme=dark]) body,:root:not([data-theme=dark]) .journal-shell,:root:not([data-theme=dark]) .omni-shell,:root:not([data-theme=dark]) .journal-topbar,:root:not([data-theme=dark]) .omni-topbar{background:var(--candy-blue);color:var(--candy-blue-text)}:root:not([data-theme=dark]) .journal-sidebar,:root:not([data-theme=dark]) .omni-sidebar{background:var(--candy-blue-surface-strong);border-color:var(--candy-blue-border)}:root:not([data-theme=dark]) .journal-main:before,:root:not([data-theme=dark]) .omni-main:before{background:radial-gradient(circle at 8% 8%,rgba(255,255,255,.34),transparent 29%),radial-gradient(circle at 88% 12%,rgba(90,164,195,.2),transparent 34%),linear-gradient(#b2d5e5 0%,#c5e1ed 50%,#b2d5e5 100%)}:root:not([data-theme=dark]) :-webkit-any(.journal-card,.omni-card,.omni-metric,.journal-user,.journal-user-menu,.journal-topbar-burger,.theme-toggle-btn,.omni-pill,.omni-icon-btn,.omni-user,.omni-user-menu,.omni-topbar-search,.omni-topbar-search-results,.schedule-toolbar,.grades-toolbar,.homework-toolbar,.schedule-table-wrap,.grades-table-wrap,.schedule-day-card,.schedule-modal,.grades-summary-card,.grades-lesson-panel,.grades-student-row,.homework-card,.homework-item,.homework-students-table-wrap,.student-day-card,.student-lesson,.student-homework-item,.student-comment-card){background-color:var(--candy-blue-surface);border-color:var(--candy-blue-border)}:root:not([data-theme=dark]) :-moz-any(.journal-card,.omni-card,.omni-metric,.journal-user,.journal-user-menu,.journal-topbar-burger,.theme-toggle-btn,.omni-pill,.omni-icon-btn,.omni-user,.omni-user-menu,.omni-topbar-search,.omni-topbar-search-results,.schedule-toolbar,.grades-toolbar,.homework-toolbar,.schedule-table-wrap,.grades-table-wrap,.schedule-day-card,.schedule-modal,.grades-summary-card,.grades-lesson-panel,.grades-student-row,.homework-card,.homework-item,.homework-students-table-wrap,.student-day-card,.student-lesson,.student-homework-item,.student-comment-card){background-color:var(--candy-blue-surface);border-color:var(--candy-blue-border)}:root:not([data-theme=dark]) :is(.journal-card,.omni-card,.omni-metric,.journal-user,.journal-user-menu,.journal-topbar-burger,.theme-toggle-btn,.omni-pill,.omni-icon-btn,.omni-user,.omni-user-menu,.omni-topbar-search,.omni-topbar-search-results,.schedule-toolbar,.grades-toolbar,.homework-toolbar,.schedule-table-wrap,.grades-table-wrap,.schedule-day-card,.schedule-modal,.grades-summary-card,.grades-lesson-panel,.grades-student-row,.homework-card,.homework-item,.homework-students-table-wrap,.student-day-card,.student-lesson,.student-homework-item,.student-comment-card){background-color:var(--candy-blue-surface);border-color:var(--candy-blue-border)}:root:not([data-theme=dark]) :is(.journal-title,.journal-logo,.journal-user-info strong,.omni-topbar-title,.omni-user,.journal-card h2,.omni-card h2,.grades-student-name){color:var(--candy-blue-text)}:root:not([data-theme=dark]) :is(.journal-nav-item,.journal-collapse,.journal-user-info span,.omni-nav-item,.omni-collapse,.omni-user-role,.schedule-help,.grades-date,.grades-meta,.homework-meta){color:var(--candy-blue-muted)}:root:not([data-theme=dark]) .workspace-theme{background:var(--candy-blue);color:var(--candy-blue-text)}:root:not([data-theme=dark]) .workspace-theme:before{background-image:linear-gradient(rgba(22,52,68,.08) 1px,transparent 1px),linear-gradient(90deg,rgba(22,52,68,.08) 1px,transparent 1px)}:root:not([data-theme=dark]) .workspace-theme:after{background:linear-gradient(116deg,transparent 0,transparent 38%,rgba(255,255,255,.32) 38.15%,rgba(255,255,255,.32) 38.55%,transparent 38.7%,transparent 64%,rgba(75,113,130,.13) 64.15%,rgba(75,113,130,.13) 64.55%,transparent 64.7%)}:root:not([data-theme=dark]) .workspace-theme>header{border-color:var(--candy-blue-border)!important;background:rgba(233,245,250,.9)!important}:root:not([data-theme=dark]) .workspace-theme .side-nav{background:var(--candy-blue-surface-strong)!important;border:1px solid var(--candy-blue-border)!important;box-shadow:0 18px 38px rgba(22,52,68,.16)!important}:root:not([data-theme=dark]) .workspace-theme .side-nav button:not(.bg-white){text-shadow:none;color:var(--candy-blue-text)!important;box-shadow:none!important;background:0 0!important;border-color:transparent!important}:root:not([data-theme=dark]) .workspace-theme .side-nav button:not(.bg-white):hover,:root:not([data-theme=dark]) .journal-nav-item:hover,:root:not([data-theme=dark]) .journal-collapse:hover,:root:not([data-theme=dark]) .omni-nav-item:hover,:root:not([data-theme=dark]) .omni-collapse:hover{color:var(--candy-blue-text)!important;background:#d5ebf4!important}:root:not([data-theme=dark]) .workspace-theme .side-nav button.bg-white,:root:not([data-theme=dark]) .journal-nav-item.active,:root:not([data-theme=dark]) .omni-nav-item.active{border-color:var(--candy-blue-border)!important;color:var(--candy-blue-text)!important;background:#fff!important;box-shadow:0 8px 18px rgba(22,52,68,.12)!important}:root:not([data-theme=dark]) :is(.workspace-theme .side-nav button,.workspace-theme .side-nav button svg,.journal-nav-item.active svg,.omni-nav-item.active svg,.journal-collapse:hover svg,.omni-collapse:hover svg,.omni-sidebar-brand){color:var(--candy-blue-text)!important}:root:not([data-theme=dark]) :is(.header-brand,.header-pill,.header-icon-btn,.header-user-btn,.header-user-btn span,.header-pill svg,.header-icon-btn svg,.header-user-btn svg){color:var(--candy-blue-text)!important}:root:not([data-theme=dark]) :-webkit-any(.header-pill,.header-icon-btn,.header-user-btn){box-shadow:none;background:var(--candy-blue-surface)!important;border-color:var(--candy-blue-border)!important}:root:not([data-theme=dark]) :-moz-any(.header-pill,.header-icon-btn,.header-user-btn){box-shadow:none;background:var(--candy-blue-surface)!important;border-color:var(--candy-blue-border)!important}:root:not([data-theme=dark]) :is(.header-pill,.header-icon-btn,.header-user-btn){box-shadow:none;background:var(--candy-blue-surface)!important;border-color:var(--candy-blue-border)!important}.login-preview-btn{border:1px solid var(--candy-blue-border);width:100%;color:var(--candy-blue-text);font:inherit;background:rgba(233,245,250,.82);border-radius:12px;margin-top:10px;padding:11px 14px;font-size:13px;font-weight:700;transition:background .15s,border-color .15s,transform .15s}.login-preview-btn:hover{background:#fff;border-color:#5f9fbc;transform:translateY(-1px)}:root[data-theme=dark] .login-preview-btn{color:#e2e8f0;background:#0f172a;border-color:#334155}:root[data-theme=dark] .login-preview-btn:hover{background:#1e293b;border-color:#475569}@media (max-width:430px){.grades-student-card-head,.grades-student-card-body,.grades-student-comment-zone,.grades-student-footer{padding-left:16px;padding-right:16px}.grades-student-card-head{padding-top:16px}.grades-student-row .grades-student-name{font-size:18px}.grades-student-avatar{width:50px;height:50px}}
