/*! tailwindcss v4.3.0 | MIT License | https://tailwindcss.com */@layer properties{@supports (((-webkit-hyphens:none)) and (not (margin-trim:inline))) or ((-moz-orient:inline) and (not (color:rgb(from red r g b)))){*,::backdrop,:after,:before{--tw-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-divide-y-reverse:0;--tw-border-style:solid;--tw-leading:initial;--tw-font-weight:initial;--tw-tracking:initial;--tw-shadow:0 0 #0000;--tw-shadow-color:initial;--tw-shadow-alpha:100%;--tw-inset-shadow:0 0 #0000;--tw-inset-shadow-color:initial;--tw-inset-shadow-alpha:100%;--tw-ring-color:initial;--tw-ring-shadow:0 0 #0000;--tw-inset-ring-color:initial;--tw-inset-ring-shadow:0 0 #0000;--tw-ring-inset:initial;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-offset-shadow:0 0 #0000;--tw-outline-style:solid;--tw-blur:initial;--tw-brightness:initial;--tw-contrast:initial;--tw-grayscale:initial;--tw-hue-rotate:initial;--tw-invert:initial;--tw-opacity:initial;--tw-saturate:initial;--tw-sepia:initial;--tw-drop-shadow:initial;--tw-drop-shadow-color:initial;--tw-drop-shadow-alpha:100%;--tw-drop-shadow-size:initial;--tw-backdrop-blur:initial;--tw-backdrop-brightness:initial;--tw-backdrop-contrast:initial;--tw-backdrop-grayscale:initial;--tw-backdrop-hue-rotate:initial;--tw-backdrop-invert:initial;--tw-backdrop-opacity:initial;--tw-backdrop-saturate:initial;--tw-backdrop-sepia:initial;--tw-duration:initial;--tw-ease:initial;--tw-space-x-reverse:0}}}@layer theme{:host,:root{--font-sans:"Inter",system-ui,sans-serif;--font-mono:"JetBrains Mono",monospace;--color-amber-100:oklch(96.2% .059 95.617);--color-amber-300:oklch(87.9% .169 91.605);--color-amber-400:oklch(82.8% .189 84.429);--color-amber-500:oklch(76.9% .188 70.08);--color-amber-600:oklch(66.6% .179 58.318);--color-amber-700:oklch(55.5% .163 48.998);--color-amber-900:oklch(41.4% .112 45.904);--color-green-500:oklch(72.3% .219 149.579);--color-black:#000;--color-white:#fff;--spacing:.25rem;--container-xs:20rem;--container-sm:24rem;--container-md:28rem;--container-lg:32rem;--container-2xl:42rem;--container-3xl:48rem;--text-xs:.75rem;--text-xs--line-height:calc(1 / .75);--text-sm:.875rem;--text-sm--line-height:calc(1.25 / .875);--text-base:1rem;--text-base--line-height:calc(1.5 / 1);--text-lg:1.125rem;--text-lg--line-height:calc(1.75 / 1.125);--text-xl:1.25rem;--text-xl--line-height:calc(1.75 / 1.25);--text-2xl:1.5rem;--text-2xl--line-height:calc(2 / 1.5);--text-3xl:1.875rem;--text-3xl--line-height:calc(2.25 / 1.875);--font-weight-normal:400;--font-weight-medium:500;--font-weight-semibold:600;--font-weight-bold:700;--tracking-tight:-.025em;--tracking-wide:.025em;--tracking-wider:.05em;--tracking-widest:.1em;--leading-tight:1.25;--leading-snug:1.375;--leading-relaxed:1.625;--radius-sm:.25rem;--radius-md:.375rem;--radius-lg:.5rem;--radius-xl:.75rem;--radius-2xl:1rem;--shadow-sm:0 1px 3px 0 #0000001a,0 1px 2px -1px #0000001a;--ease-in-out:cubic-bezier(.4,0,.2,1);--animate-spin:spin 1s linear infinite;--animate-pulse:pulse 2s cubic-bezier(.4,0,.6,1) infinite;--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);--radius-card:12px;--radius-input:8px;--animate-slide-up:slide-up .2s ease-out}}@layer base{*,::backdrop,:after,:before{box-sizing:border-box;border:0 solid;margin:0;padding:0}::file-selector-button{box-sizing:border-box;border:0 solid;margin:0;padding:0}:host,html{-webkit-text-size-adjust:100%;tab-size:4;line-height:1.5;font-family:var(--default-font-family,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;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,pre,samp{font-family:var(--default-mono-font-family,ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,"Liberation Mono","Courier New",monospace);font-feature-settings:var(--default-mono-font-feature-settings,normal);font-variation-settings:var(--default-mono-font-variation-settings,normal);font-size:1em}small{font-size:80%}sub,sup{vertical-align:baseline;font-size:75%;line-height:0;position:relative}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}:-moz-focusring{outline:auto}progress{vertical-align:baseline}summary{display:list-item}menu,ol,ul{list-style:none}audio,canvas,embed,iframe,img,object,svg,video{vertical-align:middle;display:block}img,video{max-width:100%;height:auto}button,input,optgroup,select,textarea{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}::file-selector-button{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}:where(select:is([multiple],[size])) optgroup{font-weight:bolder}:where(select:is([multiple],[size])) optgroup option{padding-inline-start:20px}::file-selector-button{margin-inline-end:4px}::placeholder{opacity:1}@supports (not ((-webkit-appearance:-apple-pay-button))) or (contain-intrinsic-size:1px){::placeholder{color:currentColor}@supports (color:color-mix(in lab,red,red)){::placeholder{color:color-mix(in oklab,currentcolor 50%,transparent)}}}textarea{resize:vertical}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-date-and-time-value{min-height:1lh;text-align:inherit}::-webkit-datetime-edit{display:inline-flex}::-webkit-datetime-edit-fields-wrapper{padding:0}::-webkit-datetime-edit,::-webkit-datetime-edit-year-field{padding-block:0}::-webkit-datetime-edit-day-field,::-webkit-datetime-edit-month-field{padding-block:0}::-webkit-datetime-edit-hour-field,::-webkit-datetime-edit-minute-field{padding-block:0}::-webkit-datetime-edit-millisecond-field,::-webkit-datetime-edit-second-field{padding-block:0}::-webkit-datetime-edit-meridiem-field{padding-block:0}::-webkit-calendar-picker-indicator{line-height:1}:-moz-ui-invalid{box-shadow:none}button,input:where([type=button],[type=reset],[type=submit]){appearance:button}::file-selector-button{appearance:button}::-webkit-inner-spin-button,::-webkit-outer-spin-button{height:auto}[hidden]:where(:not([hidden=until-found])){display:none!important}}@layer components;@layer utilities{.pointer-events-none{pointer-events:none}.visible{visibility:visible}.sr-only{clip-path:inset(50%);white-space:nowrap;border-width:0;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden}.absolute,.sr-only{position:absolute}.fixed{position:fixed}.relative{position:relative}.static{position:static}.sticky{position:sticky}.inset-0{inset:calc(var(--spacing) * 0)}.inset-x-0{inset-inline:calc(var(--spacing) * 0)}.inset-x-3{inset-inline:calc(var(--spacing) * 3)}.inset-y-0{inset-block:calc(var(--spacing) * 0)}.top-0{top:calc(var(--spacing) * 0)}.top-1{top:calc(var(--spacing) * 1)}.top-1\/2{top:50%}.top-4{top:calc(var(--spacing) * 4)}.top-\[50\%\]{top:50%}.top-full{top:100%}.right-0{right:calc(var(--spacing) * 0)}.right-1\.5{right:calc(var(--spacing) * 1.5)}.right-2{right:calc(var(--spacing) * 2)}.right-4{right:calc(var(--spacing) * 4)}.bottom-0{bottom:calc(var(--spacing) * 0)}.bottom-4{bottom:calc(var(--spacing) * 4)}.bottom-\[76px\]{bottom:76px}.left-0{left:calc(var(--spacing) * 0)}.left-2{left:calc(var(--spacing) * 2)}.left-3{left:calc(var(--spacing) * 3)}.left-4{left:calc(var(--spacing) * 4)}.left-\[50\%\]{left:50%}.z-50{z-index:50}.col-span-full{grid-column:1/-1}.row-1{grid-row:1}.container{width:100%}@media (min-width:40rem){.container{max-width:40rem}}@media (min-width:48rem){.container{max-width:48rem}}@media (min-width:64rem){.container{max-width:64rem}}@media (min-width:80rem){.container{max-width:80rem}}@media (min-width:96rem){.container{max-width:96rem}}.-mx-1{margin-inline:calc(var(--spacing) * -1)}.mx-1{margin-inline:calc(var(--spacing) * 1)}.mx-auto{margin-inline:auto}.my-1{margin-block:calc(var(--spacing) * 1)}.mt-0\.5{margin-top:calc(var(--spacing) * .5)}.mt-1{margin-top:calc(var(--spacing) * 1)}.mt-1\.5{margin-top:calc(var(--spacing) * 1.5)}.mt-2{margin-top:calc(var(--spacing) * 2)}.mt-auto{margin-top:auto}.mr-1\.5{margin-right:calc(var(--spacing) * 1.5)}.mr-2{margin-right:calc(var(--spacing) * 2)}.mr-auto{margin-right:auto}.mb-0\.5{margin-bottom:calc(var(--spacing) * .5)}.mb-1{margin-bottom:calc(var(--spacing) * 1)}.mb-2{margin-bottom:calc(var(--spacing) * 2)}.mb-4{margin-bottom:calc(var(--spacing) * 4)}.ml-1{margin-left:calc(var(--spacing) * 1)}.ml-2{margin-left:calc(var(--spacing) * 2)}.ml-auto{margin-left:auto}.line-clamp-2{-webkit-line-clamp:2;-webkit-box-orient:vertical;display:-webkit-box;overflow:hidden}.block{display:block}.contents{display:contents}.flex{display:flex}.grid{display:grid}.hidden{display:none}.inline{display:inline}.inline-block{display:inline-block}.inline-flex{display:inline-flex}.list-item{display:list-item}.table{display:table}.aspect-square{aspect-ratio:1}.h-1\.5{height:calc(var(--spacing) * 1.5)}.h-2{height:calc(var(--spacing) * 2)}.h-2\.5{height:calc(var(--spacing) * 2.5)}.h-3{height:calc(var(--spacing) * 3)}.h-3\.5{height:calc(var(--spacing) * 3.5)}.h-4{height:calc(var(--spacing) * 4)}.h-5{height:calc(var(--spacing) * 5)}.h-6{height:calc(var(--spacing) * 6)}.h-7{height:calc(var(--spacing) * 7)}.h-8{height:calc(var(--spacing) * 8)}.h-9{height:calc(var(--spacing) * 9)}.h-10{height:calc(var(--spacing) * 10)}.h-12{height:calc(var(--spacing) * 12)}.h-14{height:calc(var(--spacing) * 14)}.h-16{height:calc(var(--spacing) * 16)}.h-24{height:calc(var(--spacing) * 24)}.h-64{height:calc(var(--spacing) * 64)}.h-\[1px\]{height:1px}.h-\[var\(--radix-select-trigger-height\)\]{height:var(--radix-select-trigger-height)}.h-full{height:100%}.h-px{height:1px}.max-h-56{max-height:calc(var(--spacing) * 56)}.max-h-72{max-height:calc(var(--spacing) * 72)}.max-h-96{max-height:calc(var(--spacing) * 96)}.max-h-\[70vh\]{max-height:70vh}.max-h-\[120px\]{max-height:120px}.min-h-0{min-height:calc(var(--spacing) * 0)}.min-h-\[80px\]{min-height:80px}.min-h-screen{min-height:100vh}.w-1\.5{width:calc(var(--spacing) * 1.5)}.w-2{width:calc(var(--spacing) * 2)}.w-2\.5{width:calc(var(--spacing) * 2.5)}.w-3{width:calc(var(--spacing) * 3)}.w-3\.5{width:calc(var(--spacing) * 3.5)}.w-3\/4{width:75%}.w-3\/5{width:60%}.w-4{width:calc(var(--spacing) * 4)}.w-4\/5{width:80%}.w-5{width:calc(var(--spacing) * 5)}.w-6{width:calc(var(--spacing) * 6)}.w-7{width:calc(var(--spacing) * 7)}.w-8{width:calc(var(--spacing) * 8)}.w-9{width:calc(var(--spacing) * 9)}.w-10{width:calc(var(--spacing) * 10)}.w-12{width:calc(var(--spacing) * 12)}.w-14{width:calc(var(--spacing) * 14)}.w-16{width:calc(var(--spacing) * 16)}.w-24{width:calc(var(--spacing) * 24)}.w-44{width:calc(var(--spacing) * 44)}.w-48{width:calc(var(--spacing) * 48)}.w-56{width:calc(var(--spacing) * 56)}.w-\[1px\]{width:1px}.w-\[280px\]{width:280px}.w-full{width:100%}.max-w-2xl{max-width:var(--container-2xl)}.max-w-3xl{max-width:var(--container-3xl)}.max-w-\[85\%\]{max-width:85%}.max-w-\[85vw\]{max-width:85vw}.max-w-\[200px\]{max-width:200px}.max-w-\[240px\]{max-width:240px}.max-w-lg{max-width:var(--container-lg)}.max-w-md{max-width:var(--container-md)}.max-w-sm{max-width:var(--container-sm)}.max-w-xs{max-width:var(--container-xs)}.min-w-0{min-width:calc(var(--spacing) * 0)}.min-w-\[8rem\]{min-width:8rem}.min-w-\[var\(--radix-select-trigger-width\)\]{min-width:var(--radix-select-trigger-width)}.flex-1{flex:1}.shrink-0{flex-shrink:0}.grow{flex-grow:1}.translate-x-\[-50\%\]{--tw-translate-x:-50%}.-translate-y-1\/2,.translate-x-\[-50\%\]{translate:var(--tw-translate-x) var(--tw-translate-y)}.-translate-y-1\/2{--tw-translate-y:calc(calc(1 / 2 * 100%) * -1)}.translate-y-\[-50\%\]{--tw-translate-y:-50%;translate:var(--tw-translate-x) var(--tw-translate-y)}.scale-105{--tw-scale-x:105%;--tw-scale-y:105%;--tw-scale-z:105%}.scale-105,.scale-110{scale:var(--tw-scale-x) var(--tw-scale-y)}.scale-110{--tw-scale-x:110%;--tw-scale-y:110%;--tw-scale-z:110%}.scale-\[1\.01\]{scale:1.01}.rotate-45{rotate:45deg}.transform{transform:var(--tw-rotate-x,) var(--tw-rotate-y,) var(--tw-rotate-z,) var(--tw-skew-x,) var(--tw-skew-y,)}.animate-pulse{animation:var(--animate-pulse)}.animate-slide-up{animation:var(--animate-slide-up)}.animate-spin{animation:var(--animate-spin)}.cursor-default{cursor:default}.cursor-pointer{cursor:pointer}.touch-none{touch-action:none}.resize{resize:both}.resize-none{resize:none}.list-inside{list-style-position:inside}.list-disc{list-style-type:disc}.grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.grid-cols-4{grid-template-columns:repeat(4,minmax(0,1fr))}.flex-col{flex-direction:column}.flex-col-reverse{flex-direction:column-reverse}.flex-row{flex-direction:row}.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}.justify-end{justify-content:flex-end}.gap-0\.5{gap:calc(var(--spacing) * .5)}.gap-1{gap:calc(var(--spacing) * 1)}.gap-1\.5{gap:calc(var(--spacing) * 1.5)}.gap-2{gap:calc(var(--spacing) * 2)}.gap-3{gap:calc(var(--spacing) * 3)}.gap-4{gap:calc(var(--spacing) * 4)}.gap-5{gap:calc(var(--spacing) * 5)}.gap-6{gap:calc(var(--spacing) * 6)}:where(.space-y-0\.5>:not(:last-child)){--tw-space-y-reverse:0;margin-block-start:calc(calc(var(--spacing) * .5) * var(--tw-space-y-reverse));margin-block-end:calc(calc(var(--spacing) * .5) * calc(1 - var(--tw-space-y-reverse)))}:where(.space-y-1>:not(:last-child)){--tw-space-y-reverse:0;margin-block-start:calc(calc(var(--spacing) * 1) * var(--tw-space-y-reverse));margin-block-end:calc(calc(var(--spacing) * 1) * calc(1 - var(--tw-space-y-reverse)))}:where(.space-y-1\.5>:not(:last-child)){--tw-space-y-reverse:0;margin-block-start:calc(calc(var(--spacing) * 1.5) * var(--tw-space-y-reverse));margin-block-end:calc(calc(var(--spacing) * 1.5) * calc(1 - var(--tw-space-y-reverse)))}:where(.space-y-2>:not(:last-child)){--tw-space-y-reverse:0;margin-block-start:calc(calc(var(--spacing) * 2) * var(--tw-space-y-reverse));margin-block-end:calc(calc(var(--spacing) * 2) * calc(1 - var(--tw-space-y-reverse)))}:where(.space-y-3>:not(:last-child)){--tw-space-y-reverse:0;margin-block-start:calc(calc(var(--spacing) * 3) * var(--tw-space-y-reverse));margin-block-end:calc(calc(var(--spacing) * 3) * calc(1 - var(--tw-space-y-reverse)))}:where(.space-y-4>:not(:last-child)){--tw-space-y-reverse:0;margin-block-start:calc(calc(var(--spacing) * 4) * var(--tw-space-y-reverse));margin-block-end:calc(calc(var(--spacing) * 4) * calc(1 - var(--tw-space-y-reverse)))}:where(.space-y-6>:not(:last-child)){--tw-space-y-reverse:0;margin-block-start:calc(calc(var(--spacing) * 6) * var(--tw-space-y-reverse));margin-block-end:calc(calc(var(--spacing) * 6) * calc(1 - var(--tw-space-y-reverse)))}:where(.divide-y>:not(:last-child)){--tw-divide-y-reverse:0;border-bottom-style:var(--tw-border-style);border-top-style:var(--tw-border-style);border-top-width:calc(1px * var(--tw-divide-y-reverse));border-bottom-width:calc(1px * calc(1 - var(--tw-divide-y-reverse)))}:where(.divide-border>:not(:last-child)){border-color:var(--border)}.truncate{text-overflow:ellipsis;white-space:nowrap}.overflow-hidden,.truncate{overflow:hidden}.overflow-y-auto{overflow-y:auto}.rounded{border-radius:.25rem}.rounded-2xl{border-radius:var(--radius-2xl)}.rounded-\[inherit\]{border-radius:inherit}.rounded-full{border-radius:3.40282e+38px}.rounded-lg{border-radius:var(--radius-lg)}.rounded-md{border-radius:var(--radius-md)}.rounded-sm{border-radius:var(--radius-sm)}.rounded-xl{border-radius:var(--radius-xl)}.border{border-style:var(--tw-border-style);border-width:1px}.border-2{border-style:var(--tw-border-style);border-width:2px}.border-t{border-top-style:var(--tw-border-style);border-top-width:1px}.border-r{border-right-style:var(--tw-border-style);border-right-width:1px}.border-b{border-bottom-style:var(--tw-border-style);border-bottom-width:1px}.border-l{border-left-style:var(--tw-border-style);border-left-width:1px}.border-l-2{border-left-style:var(--tw-border-style);border-left-width:2px}.border-dashed{--tw-border-style:dashed;border-style:dashed}.border-border{border-color:var(--border)}.border-destructive\/20{border-color:var(--destructive)}@supports (color:color-mix(in lab,red,red)){.border-destructive\/20{border-color:color-mix(in oklab,var(--destructive) 20%,transparent)}}.border-destructive\/30{border-color:var(--destructive)}@supports (color:color-mix(in lab,red,red)){.border-destructive\/30{border-color:color-mix(in oklab,var(--destructive) 30%,transparent)}}.border-destructive\/40{border-color:var(--destructive)}@supports (color:color-mix(in lab,red,red)){.border-destructive\/40{border-color:color-mix(in oklab,var(--destructive) 40%,transparent)}}.border-input{border-color:var(--input)}.border-primary,.border-primary\/10{border-color:var(--accent)}@supports (color:color-mix(in lab,red,red)){.border-primary\/10{border-color:color-mix(in oklab,var(--accent) 10%,transparent)}}.border-primary\/20{border-color:var(--accent)}@supports (color:color-mix(in lab,red,red)){.border-primary\/20{border-color:color-mix(in oklab,var(--accent) 20%,transparent)}}.border-primary\/30{border-color:var(--accent)}@supports (color:color-mix(in lab,red,red)){.border-primary\/30{border-color:color-mix(in oklab,var(--accent) 30%,transparent)}}.border-primary\/50{border-color:var(--accent)}@supports (color:color-mix(in lab,red,red)){.border-primary\/50{border-color:color-mix(in oklab,var(--accent) 50%,transparent)}}.border-success\/20{border-color:var(--success)}@supports (color:color-mix(in lab,red,red)){.border-success\/20{border-color:color-mix(in oklab,var(--success) 20%,transparent)}}.border-success\/30{border-color:var(--success)}@supports (color:color-mix(in lab,red,red)){.border-success\/30{border-color:color-mix(in oklab,var(--success) 30%,transparent)}}.border-success\/40{border-color:var(--success)}@supports (color:color-mix(in lab,red,red)){.border-success\/40{border-color:color-mix(in oklab,var(--success) 40%,transparent)}}.border-transparent{border-color:#0000}.border-warning\/20{border-color:var(--warning)}@supports (color:color-mix(in lab,red,red)){.border-warning\/20{border-color:color-mix(in oklab,var(--warning) 20%,transparent)}}.border-warning\/40{border-color:var(--warning)}@supports (color:color-mix(in lab,red,red)){.border-warning\/40{border-color:color-mix(in oklab,var(--warning) 40%,transparent)}}.border-t-transparent{border-top-color:#0000}.border-l-transparent{border-left-color:#0000}.bg-amber-100{background-color:var(--color-amber-100)}.bg-amber-500{background-color:var(--color-amber-500)}.bg-background,.bg-background\/95{background-color:var(--bg)}@supports (color:color-mix(in lab,red,red)){.bg-background\/95{background-color:color-mix(in oklab,var(--bg) 95%,transparent)}}.bg-black\/50{background-color:#00000080}@supports (color:color-mix(in lab,red,red)){.bg-black\/50{background-color:color-mix(in oklab,var(--color-black) 50%,transparent)}}.bg-border{background-color:var(--border)}.bg-card{background-color:var(--card)}.bg-destructive,.bg-destructive\/5{background-color:var(--destructive)}@supports (color:color-mix(in lab,red,red)){.bg-destructive\/5{background-color:color-mix(in oklab,var(--destructive) 5%,transparent)}}.bg-destructive\/10{background-color:var(--destructive)}@supports (color:color-mix(in lab,red,red)){.bg-destructive\/10{background-color:color-mix(in oklab,var(--destructive) 10%,transparent)}}.bg-destructive\/15{background-color:var(--destructive)}@supports (color:color-mix(in lab,red,red)){.bg-destructive\/15{background-color:color-mix(in oklab,var(--destructive) 15%,transparent)}}.bg-destructive\/40{background-color:var(--destructive)}@supports (color:color-mix(in lab,red,red)){.bg-destructive\/40{background-color:color-mix(in oklab,var(--destructive) 40%,transparent)}}.bg-foreground{background-color:var(--fg)}.bg-muted,.bg-muted\/20{background-color:var(--muted)}@supports (color:color-mix(in lab,red,red)){.bg-muted\/20{background-color:color-mix(in oklab,var(--muted) 20%,transparent)}}.bg-muted\/30{background-color:var(--muted)}@supports (color:color-mix(in lab,red,red)){.bg-muted\/30{background-color:color-mix(in oklab,var(--muted) 30%,transparent)}}.bg-muted\/40{background-color:var(--muted)}@supports (color:color-mix(in lab,red,red)){.bg-muted\/40{background-color:color-mix(in oklab,var(--muted) 40%,transparent)}}.bg-muted\/50{background-color:var(--muted)}@supports (color:color-mix(in lab,red,red)){.bg-muted\/50{background-color:color-mix(in oklab,var(--muted) 50%,transparent)}}.bg-muted\/60{background-color:var(--muted)}@supports (color:color-mix(in lab,red,red)){.bg-muted\/60{background-color:color-mix(in oklab,var(--muted) 60%,transparent)}}.bg-popover{background-color:var(--card)}.bg-primary,.bg-primary\/5{background-color:var(--accent)}@supports (color:color-mix(in lab,red,red)){.bg-primary\/5{background-color:color-mix(in oklab,var(--accent) 5%,transparent)}}.bg-primary\/10{background-color:var(--accent)}@supports (color:color-mix(in lab,red,red)){.bg-primary\/10{background-color:color-mix(in oklab,var(--accent) 10%,transparent)}}.bg-primary\/60{background-color:var(--accent)}@supports (color:color-mix(in lab,red,red)){.bg-primary\/60{background-color:color-mix(in oklab,var(--accent) 60%,transparent)}}.bg-secondary{background-color:var(--muted-2)}.bg-success,.bg-success\/5{background-color:var(--success)}@supports (color:color-mix(in lab,red,red)){.bg-success\/5{background-color:color-mix(in oklab,var(--success) 5%,transparent)}}.bg-success\/10{background-color:var(--success)}@supports (color:color-mix(in lab,red,red)){.bg-success\/10{background-color:color-mix(in oklab,var(--success) 10%,transparent)}}.bg-success\/15{background-color:var(--success)}@supports (color:color-mix(in lab,red,red)){.bg-success\/15{background-color:color-mix(in oklab,var(--success) 15%,transparent)}}.bg-success\/40{background-color:var(--success)}@supports (color:color-mix(in lab,red,red)){.bg-success\/40{background-color:color-mix(in oklab,var(--success) 40%,transparent)}}.bg-warning,.bg-warning\/10{background-color:var(--warning)}@supports (color:color-mix(in lab,red,red)){.bg-warning\/10{background-color:color-mix(in oklab,var(--warning) 10%,transparent)}}.bg-warning\/15{background-color:var(--warning)}@supports (color:color-mix(in lab,red,red)){.bg-warning\/15{background-color:color-mix(in oklab,var(--warning) 15%,transparent)}}.bg-warning\/40{background-color:var(--warning)}@supports (color:color-mix(in lab,red,red)){.bg-warning\/40{background-color:color-mix(in oklab,var(--warning) 40%,transparent)}}.bg-white{background-color:var(--color-white)}.fill-amber-400{fill:var(--color-amber-400)}.fill-current{fill:currentColor}.fill-primary{fill:var(--accent)}.p-0{padding:calc(var(--spacing) * 0)}.p-0\.5{padding:calc(var(--spacing) * .5)}.p-1{padding:calc(var(--spacing) * 1)}.p-1\.5{padding:calc(var(--spacing) * 1.5)}.p-2\.5{padding:calc(var(--spacing) * 2.5)}.p-3{padding:calc(var(--spacing) * 3)}.p-4{padding:calc(var(--spacing) * 4)}.p-5{padding:calc(var(--spacing) * 5)}.p-6{padding:calc(var(--spacing) * 6)}.p-8{padding:calc(var(--spacing) * 8)}.p-\[1px\]{padding:1px}.px-1{padding-inline:calc(var(--spacing) * 1)}.px-1\.5{padding-inline:calc(var(--spacing) * 1.5)}.px-2{padding-inline:calc(var(--spacing) * 2)}.px-2\.5{padding-inline:calc(var(--spacing) * 2.5)}.px-3{padding-inline:calc(var(--spacing) * 3)}.px-4{padding-inline:calc(var(--spacing) * 4)}.px-8{padding-inline:calc(var(--spacing) * 8)}.py-0\.5{padding-block:calc(var(--spacing) * .5)}.py-1{padding-block:calc(var(--spacing) * 1)}.py-1\.5{padding-block:calc(var(--spacing) * 1.5)}.py-2{padding-block:calc(var(--spacing) * 2)}.py-2\.5{padding-block:calc(var(--spacing) * 2.5)}.py-3{padding-block:calc(var(--spacing) * 3)}.py-3\.5{padding-block:calc(var(--spacing) * 3.5)}.py-4{padding-block:calc(var(--spacing) * 4)}.py-8{padding-block:calc(var(--spacing) * 8)}.py-16{padding-block:calc(var(--spacing) * 16)}.py-24{padding-block:calc(var(--spacing) * 24)}.pt-0{padding-top:calc(var(--spacing) * 0)}.pt-0\.5{padding-top:calc(var(--spacing) * .5)}.pt-1{padding-top:calc(var(--spacing) * 1)}.pt-2{padding-top:calc(var(--spacing) * 2)}.pt-3{padding-top:calc(var(--spacing) * 3)}.pt-4{padding-top:calc(var(--spacing) * 4)}.pr-1{padding-right:calc(var(--spacing) * 1)}.pr-2{padding-right:calc(var(--spacing) * 2)}.pr-8{padding-right:calc(var(--spacing) * 8)}.pb-2{padding-bottom:calc(var(--spacing) * 2)}.pb-3{padding-bottom:calc(var(--spacing) * 3)}.pb-4{padding-bottom:calc(var(--spacing) * 4)}.pl-1{padding-left:calc(var(--spacing) * 1)}.pl-2{padding-left:calc(var(--spacing) * 2)}.pl-6{padding-left:calc(var(--spacing) * 6)}.pl-8{padding-left:calc(var(--spacing) * 8)}.pl-9{padding-left:calc(var(--spacing) * 9)}.text-center{text-align:center}.text-left{text-align:left}.font-mono{font-family:var(--font-mono)}.text-2xl{font-size:var(--text-2xl);line-height:var(--tw-leading,var(--text-2xl--line-height))}.text-3xl{font-size:var(--text-3xl);line-height:var(--tw-leading,var(--text-3xl--line-height))}.text-base{font-size:var(--text-base);line-height:var(--tw-leading,var(--text-base--line-height))}.text-lg{font-size:var(--text-lg);line-height:var(--tw-leading,var(--text-lg--line-height))}.text-sm{font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height))}.text-xl{font-size:var(--text-xl);line-height:var(--tw-leading,var(--text-xl--line-height))}.text-xs{font-size:var(--text-xs);line-height:var(--tw-leading,var(--text-xs--line-height))}.text-\[10px\]{font-size:10px}.text-\[11px\]{font-size:11px}.leading-none{--tw-leading:1;line-height:1}.leading-relaxed{--tw-leading:var(--leading-relaxed);line-height:var(--leading-relaxed)}.leading-snug{--tw-leading:var(--leading-snug);line-height:var(--leading-snug)}.leading-tight{--tw-leading:var(--leading-tight);line-height:var(--leading-tight)}.font-bold{--tw-font-weight:var(--font-weight-bold);font-weight:var(--font-weight-bold)}.font-medium{--tw-font-weight:var(--font-weight-medium);font-weight:var(--font-weight-medium)}.font-normal{--tw-font-weight:var(--font-weight-normal);font-weight:var(--font-weight-normal)}.font-semibold{--tw-font-weight:var(--font-weight-semibold);font-weight:var(--font-weight-semibold)}.tracking-tight{--tw-tracking:var(--tracking-tight);letter-spacing:var(--tracking-tight)}.tracking-wide{--tw-tracking:var(--tracking-wide);letter-spacing:var(--tracking-wide)}.tracking-wider{--tw-tracking:var(--tracking-wider);letter-spacing:var(--tracking-wider)}.tracking-widest{--tw-tracking:var(--tracking-widest);letter-spacing:var(--tracking-widest)}.whitespace-nowrap{white-space:nowrap}.whitespace-pre-wrap{white-space:pre-wrap}.text-amber-300{color:var(--color-amber-300)}.text-amber-400{color:var(--color-amber-400)}.text-amber-500{color:var(--color-amber-500)}.text-amber-600{color:var(--color-amber-600)}.text-amber-700{color:var(--color-amber-700)}.text-background{color:var(--bg)}.text-card-foreground{color:var(--card-fg)}.text-destructive,.text-destructive\/80{color:var(--destructive)}@supports (color:color-mix(in lab,red,red)){.text-destructive\/80{color:color-mix(in oklab,var(--destructive) 80%,transparent)}}.text-foreground{color:var(--fg)}.text-green-500{color:var(--color-green-500)}.text-muted-foreground,.text-muted-foreground\/40{color:var(--muted-fg)}@supports (color:color-mix(in lab,red,red)){.text-muted-foreground\/40{color:color-mix(in oklab,var(--muted-fg) 40%,transparent)}}.text-popover-foreground{color:var(--card-fg)}.text-primary{color:var(--accent)}.text-primary-foreground{color:var(--accent-fg)}.text-secondary-foreground{color:var(--fg)}.text-success{color:var(--success)}.text-warning{color:var(--warning)}.text-white{color:var(--color-white)}.capitalize{text-transform:capitalize}.uppercase{text-transform:uppercase}.italic{font-style:italic}.underline{text-decoration-line:underline}.underline-offset-4{text-underline-offset:4px}.opacity-0{opacity:0}.opacity-40{opacity:.4}.opacity-50{opacity:.5}.opacity-60{opacity:.6}.opacity-75{opacity:.75}.shadow{--tw-shadow:0 1px 3px 0 var(--tw-shadow-color,#0000001a),0 1px 2px -1px var(--tw-shadow-color,#0000001a)}.shadow,.shadow-2xl{box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.shadow-2xl{--tw-shadow:0 25px 50px -12px var(--tw-shadow-color,#00000040)}.shadow-lg{--tw-shadow:0 10px 15px -3px var(--tw-shadow-color,#0000001a),0 4px 6px -4px var(--tw-shadow-color,#0000001a)}.shadow-lg,.shadow-md{box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.shadow-md{--tw-shadow:0 4px 6px -1px var(--tw-shadow-color,#0000001a),0 2px 4px -2px var(--tw-shadow-color,#0000001a)}.shadow-sm{--tw-shadow:0 1px 3px 0 var(--tw-shadow-color,#0000001a),0 1px 2px -1px var(--tw-shadow-color,#0000001a)}.shadow-sm,.shadow-xl{box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.shadow-xl{--tw-shadow:0 20px 25px -5px var(--tw-shadow-color,#0000001a),0 8px 10px -6px var(--tw-shadow-color,#0000001a)}.ring-0{--tw-ring-shadow:var(--tw-ring-inset,) 0 0 0 calc(0px + var(--tw-ring-offset-width)) var(--tw-ring-color,currentcolor)}.ring-0,.ring-2{box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.ring-2{--tw-ring-shadow:var(--tw-ring-inset,) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color,currentcolor)}.ring-foreground\/30{--tw-ring-color:var(--fg)}@supports (color:color-mix(in lab,red,red)){.ring-foreground\/30{--tw-ring-color:color-mix(in oklab,var(--fg) 30%,transparent)}}.ring-ring{--tw-ring-color:var(--ring)}.ring-offset-1{--tw-ring-offset-width:1px;--tw-ring-offset-shadow:var(--tw-ring-inset,) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color)}.ring-offset-2{--tw-ring-offset-width:2px;--tw-ring-offset-shadow:var(--tw-ring-inset,) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color)}.ring-offset-background{--tw-ring-offset-color:var(--bg)}.outline{outline-style:var(--tw-outline-style);outline-width:1px}.filter{filter:var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,) var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,) var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,)}.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,)}.transition{transition-property:color,background-color,border-color,outline-color,text-decoration-color,fill,stroke,--tw-gradient-from,--tw-gradient-via,--tw-gradient-to,opacity,box-shadow,transform,translate,scale,rotate,filter,-webkit-backdrop-filter,backdrop-filter,display,content-visibility,overlay,pointer-events;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-all{transition-property:all;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-colors{transition-property:color,background-color,border-color,outline-color,text-decoration-color,fill,stroke,--tw-gradient-from,--tw-gradient-via,--tw-gradient-to;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-opacity{transition-property:opacity;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-transform{transition-property:transform,translate,scale,rotate;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.duration-200{--tw-duration:.2s;transition-duration:.2s}.duration-700{--tw-duration:.7s;transition-duration:.7s}.ease-in-out{--tw-ease:var(--ease-in-out);transition-timing-function:var(--ease-in-out)}.outline-none{--tw-outline-style:none;outline-style:none}.select-none{-webkit-user-select:none;user-select:none}@media (hover:hover){.group-hover\:pointer-events-auto:is(:where(.group):hover *){pointer-events:auto}.group-hover\:text-primary:is(:where(.group):hover *){color:var(--accent)}.group-hover\:opacity-100:is(:where(.group):hover *){opacity:1}}.group-\[\.toast\]\:bg-muted:is(:where(.group).toast *){background-color:var(--muted)}.group-\[\.toast\]\:bg-primary:is(:where(.group).toast *){background-color:var(--accent)}.group-\[\.toast\]\:text-muted-foreground:is(:where(.group).toast *){color:var(--muted-fg)}.group-\[\.toast\]\:text-primary-foreground:is(:where(.group).toast *){color:var(--accent-fg)}.group-\[\.toaster\]\:border-border:is(:where(.group).toaster *){border-color:var(--border)}.group-\[\.toaster\]\:bg-card:is(:where(.group).toaster *){background-color:var(--card)}.group-\[\.toaster\]\:text-foreground:is(:where(.group).toaster *){color:var(--fg)}.group-\[\.toaster\]\:shadow-lg:is(:where(.group).toaster *){--tw-shadow:0 10px 15px -3px var(--tw-shadow-color,#0000001a),0 4px 6px -4px var(--tw-shadow-color,#0000001a);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.peer-disabled\:cursor-not-allowed:is(:where(.peer):disabled~*){cursor:not-allowed}.peer-disabled\:opacity-70:is(:where(.peer):disabled~*){opacity:.7}.placeholder\:text-muted-foreground::placeholder{color:var(--muted-fg)}@media (hover:hover){.hover\:border-primary\/30:hover{border-color:var(--accent)}@supports (color:color-mix(in lab,red,red)){.hover\:border-primary\/30:hover{border-color:color-mix(in oklab,var(--accent) 30%,transparent)}}.hover\:border-primary\/40:hover{border-color:var(--accent)}@supports (color:color-mix(in lab,red,red)){.hover\:border-primary\/40:hover{border-color:color-mix(in oklab,var(--accent) 40%,transparent)}}.hover\:bg-accent:hover{background-color:var(--muted)}.hover\:bg-amber-600:hover{background-color:var(--color-amber-600)}.hover\:bg-destructive\/5:hover{background-color:var(--destructive)}@supports (color:color-mix(in lab,red,red)){.hover\:bg-destructive\/5:hover{background-color:color-mix(in oklab,var(--destructive) 5%,transparent)}}.hover\:bg-destructive\/10:hover{background-color:var(--destructive)}@supports (color:color-mix(in lab,red,red)){.hover\:bg-destructive\/10:hover{background-color:color-mix(in oklab,var(--destructive) 10%,transparent)}}.hover\:bg-destructive\/20:hover{background-color:var(--destructive)}@supports (color:color-mix(in lab,red,red)){.hover\:bg-destructive\/20:hover{background-color:color-mix(in oklab,var(--destructive) 20%,transparent)}}.hover\:bg-destructive\/25:hover{background-color:var(--destructive)}@supports (color:color-mix(in lab,red,red)){.hover\:bg-destructive\/25:hover{background-color:color-mix(in oklab,var(--destructive) 25%,transparent)}}.hover\:bg-destructive\/90:hover{background-color:var(--destructive)}@supports (color:color-mix(in lab,red,red)){.hover\:bg-destructive\/90:hover{background-color:color-mix(in oklab,var(--destructive) 90%,transparent)}}.hover\:bg-muted:hover,.hover\:bg-muted\/30:hover{background-color:var(--muted)}@supports (color:color-mix(in lab,red,red)){.hover\:bg-muted\/30:hover{background-color:color-mix(in oklab,var(--muted) 30%,transparent)}}.hover\:bg-muted\/50:hover{background-color:var(--muted)}@supports (color:color-mix(in lab,red,red)){.hover\:bg-muted\/50:hover{background-color:color-mix(in oklab,var(--muted) 50%,transparent)}}.hover\:bg-muted\/60:hover{background-color:var(--muted)}@supports (color:color-mix(in lab,red,red)){.hover\:bg-muted\/60:hover{background-color:color-mix(in oklab,var(--muted) 60%,transparent)}}.hover\:bg-primary\/5:hover{background-color:var(--accent)}@supports (color:color-mix(in lab,red,red)){.hover\:bg-primary\/5:hover{background-color:color-mix(in oklab,var(--accent) 5%,transparent)}}.hover\:bg-primary\/90:hover{background-color:var(--accent)}@supports (color:color-mix(in lab,red,red)){.hover\:bg-primary\/90:hover{background-color:color-mix(in oklab,var(--accent) 90%,transparent)}}.hover\:bg-secondary\/80:hover{background-color:var(--muted-2)}@supports (color:color-mix(in lab,red,red)){.hover\:bg-secondary\/80:hover{background-color:color-mix(in oklab,var(--muted-2) 80%,transparent)}}.hover\:bg-success\/25:hover{background-color:var(--success)}@supports (color:color-mix(in lab,red,red)){.hover\:bg-success\/25:hover{background-color:color-mix(in oklab,var(--success) 25%,transparent)}}.hover\:bg-success\/90:hover{background-color:var(--success)}@supports (color:color-mix(in lab,red,red)){.hover\:bg-success\/90:hover{background-color:color-mix(in oklab,var(--success) 90%,transparent)}}.hover\:bg-warning\/25:hover{background-color:var(--warning)}@supports (color:color-mix(in lab,red,red)){.hover\:bg-warning\/25:hover{background-color:color-mix(in oklab,var(--warning) 25%,transparent)}}.hover\:bg-warning\/90:hover{background-color:var(--warning)}@supports (color:color-mix(in lab,red,red)){.hover\:bg-warning\/90:hover{background-color:color-mix(in oklab,var(--warning) 90%,transparent)}}.hover\:fill-muted-foreground:hover{fill:var(--muted-fg)}.hover\:text-accent-foreground:hover{color:var(--fg)}.hover\:text-destructive:hover{color:var(--destructive)}.hover\:text-foreground:hover{color:var(--fg)}.hover\:text-muted-foreground:hover{color:var(--muted-fg)}.hover\:text-primary:hover{color:var(--accent)}.hover\:underline:hover{text-decoration-line:underline}.hover\:opacity-90:hover{opacity:.9}.hover\:shadow-sm:hover{--tw-shadow:0 1px 3px 0 var(--tw-shadow-color,#0000001a),0 1px 2px -1px var(--tw-shadow-color,#0000001a);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}}.focus\:bg-accent:focus{background-color:var(--muted)}.focus\:text-accent-foreground:focus{color:var(--fg)}.focus\:text-destructive:focus{color:var(--destructive)}.focus\:ring-2:focus{--tw-ring-shadow:var(--tw-ring-inset,) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color,currentcolor);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.focus\:ring-ring:focus{--tw-ring-color:var(--ring)}.focus\:ring-offset-2:focus{--tw-ring-offset-width:2px;--tw-ring-offset-shadow:var(--tw-ring-inset,) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color)}.focus\:outline-none:focus{--tw-outline-style:none;outline-style:none}.focus-visible\:ring-1:focus-visible{--tw-ring-shadow:var(--tw-ring-inset,) 0 0 0 calc(1px + var(--tw-ring-offset-width)) var(--tw-ring-color,currentcolor);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.focus-visible\:ring-2:focus-visible{--tw-ring-shadow:var(--tw-ring-inset,) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color,currentcolor);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.focus-visible\:ring-ring:focus-visible{--tw-ring-color:var(--ring)}.focus-visible\:outline-none:focus-visible{--tw-outline-style:none;outline-style:none}.disabled\:pointer-events-none:disabled{pointer-events:none}.disabled\:cursor-not-allowed:disabled{cursor:not-allowed}.disabled\:opacity-40:disabled{opacity:.4}.disabled\:opacity-50:disabled{opacity:.5}.data-\[disabled\]\:pointer-events-none[data-disabled]{pointer-events:none}.data-\[disabled\]\:opacity-50[data-disabled]{opacity:.5}.data-\[side\=bottom\]\:translate-y-1[data-side=bottom]{--tw-translate-y:calc(var(--spacing) * 1);translate:var(--tw-translate-x) var(--tw-translate-y)}.data-\[side\=left\]\:-translate-x-1[data-side=left]{--tw-translate-x:calc(var(--spacing) * -1);translate:var(--tw-translate-x) var(--tw-translate-y)}.data-\[side\=right\]\:translate-x-1[data-side=right]{--tw-translate-x:calc(var(--spacing) * 1);translate:var(--tw-translate-x) var(--tw-translate-y)}.data-\[side\=top\]\:-translate-y-1[data-side=top]{--tw-translate-y:calc(var(--spacing) * -1);translate:var(--tw-translate-x) var(--tw-translate-y)}.data-\[state\=active\]\:bg-card[data-state=active]{background-color:var(--card)}.data-\[state\=active\]\:text-foreground[data-state=active]{color:var(--fg)}.data-\[state\=active\]\:shadow-sm[data-state=active]{--tw-shadow:0 1px 3px 0 var(--tw-shadow-color,#0000001a),0 1px 2px -1px var(--tw-shadow-color,#0000001a);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.data-\[state\=checked\]\:translate-x-4[data-state=checked]{--tw-translate-x:calc(var(--spacing) * 4);translate:var(--tw-translate-x) var(--tw-translate-y)}.data-\[state\=checked\]\:bg-primary[data-state=checked]{background-color:var(--accent)}.data-\[state\=closed\]\:duration-300[data-state=closed]{--tw-duration:.3s;transition-duration:.3s}.data-\[state\=open\]\:bg-accent[data-state=open]{background-color:var(--muted)}.data-\[state\=open\]\:duration-500[data-state=open]{--tw-duration:.5s;transition-duration:.5s}.data-\[state\=unchecked\]\:translate-x-0[data-state=unchecked]{--tw-translate-x:calc(var(--spacing) * 0);translate:var(--tw-translate-x) var(--tw-translate-y)}.data-\[state\=unchecked\]\:bg-input[data-state=unchecked]{background-color:var(--input)}@media (min-width:40rem){.sm\:inset-x-auto{inset-inline:auto}.sm\:right-6{right:calc(var(--spacing) * 6)}.sm\:bottom-6{bottom:calc(var(--spacing) * 6)}.sm\:bottom-24{bottom:calc(var(--spacing) * 24)}.sm\:left-auto{left:auto}.sm\:mt-0{margin-top:calc(var(--spacing) * 0)}.sm\:max-h-\[600px\]{max-height:600px}.sm\:w-80{width:calc(var(--spacing) * 80)}.sm\:w-\[380px\]{width:380px}.sm\:max-w-sm{max-width:var(--container-sm)}.sm\:grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.sm\:grid-cols-4{grid-template-columns:repeat(4,minmax(0,1fr))}.sm\:flex-row{flex-direction:row}.sm\:justify-end{justify-content:flex-end}:where(.sm\:space-x-2>:not(:last-child)){--tw-space-x-reverse:0;margin-inline-start:calc(calc(var(--spacing) * 2) * var(--tw-space-x-reverse));margin-inline-end:calc(calc(var(--spacing) * 2) * calc(1 - var(--tw-space-x-reverse)))}.sm\:p-6{padding:calc(var(--spacing) * 6)}.sm\:text-left{text-align:left}}@media (min-width:64rem){.lg\:grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}}@media (prefers-color-scheme:dark){.dark\:bg-amber-900\/30{background-color:#7b33064d}@supports (color:color-mix(in lab,red,red)){.dark\:bg-amber-900\/30{background-color:color-mix(in oklab,var(--color-amber-900) 30%,transparent)}}.dark\:text-amber-400{color:var(--color-amber-400)}}.\[\&\>span\]\:line-clamp-1>span{-webkit-line-clamp:1;-webkit-box-orient:vertical;display:-webkit-box;overflow:hidden}.\[\&\[data-state\=open\]\>svg\]\:rotate-180[data-state=open]>svg{rotate:180deg}}@keyframes fadeSlideUp{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:none}}@keyframes fadeSlideDown{0%{opacity:0;transform:translateY(-8px)}to{opacity:1;transform:none}}@keyframes popIn{0%{opacity:0;transform:scale(.7)}60%{transform:scale(1.12)}to{opacity:1;transform:scale(1)}}@keyframes popInSmall{0%{opacity:0;transform:scale(.85)}60%{transform:scale(1.07)}to{opacity:1;transform:scale(1)}}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes slideInRight{0%{opacity:0;transform:translate(24px)}to{opacity:1;transform:none}}@keyframes shake{0%,to{transform:none}15%{transform:translate(-7px)rotate(-1deg)}30%{transform:translate(6px)rotate(1deg)}45%{transform:translate(-5px)}60%{transform:translate(4px)}75%{transform:translate(-2px)}}@keyframes pulseGreen{0%,to{box-shadow:none}40%{box-shadow:0 0 0 6px #22c55e40}}@keyframes pulseRed{0%,to{box-shadow:none}40%{box-shadow:0 0 0 6px #ef444438}}@keyframes bounceIn{0%{transform:scale(0)}55%{transform:scale(1.15)}75%{transform:scale(.95)}to{transform:scale(1)}}@keyframes sparkle{0%,to{opacity:1;transform:scale(1)rotate(0)}50%{opacity:.8;transform:scale(1.2)rotate(15deg)}}@keyframes countUp{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}@keyframes confettiFall{0%{opacity:1;transform:translateY(-20px)rotate(0)rotateX(0)}80%{opacity:1}to{opacity:0;transform:translateY(105vh)rotate(540deg)rotateX(180deg)}}.confetti-root{pointer-events:none;z-index:9999;position:fixed;inset:0;overflow:hidden}.confetti-piece{animation:confettiFall linear both;position:absolute;top:-12px}.anim-fadein{animation:fadeSlideUp .25s both}.anim-slidedown{animation:fadeSlideDown .2s both}.anim-popin{animation:popIn .35s cubic-bezier(.34,1.56,.64,1) both}.anim-popsmall{animation:popInSmall .28s cubic-bezier(.34,1.56,.64,1) both}.anim-shakered{animation:shake .55s both}.anim-pulsegrn{animation:pulseGreen .5s both}.anim-bouncein{animation:bounceIn .45s cubic-bezier(.34,1.56,.64,1) both}.anim-countup{animation:countUp .4s both}:root{--accent-h:274;--accent-c:.14;--accent:oklch(.54 var(--accent-c) var(--accent-h));--accent-hover:oklch(.49 var(--accent-c) var(--accent-h));--accent-fg:oklch(98.5% 0 0);--ring:oklch(.54 var(--accent-c) var(--accent-h)/.42);--r-card:12px;--r-input:8px;--m1:oklch(78% .14 75);--m2:oklch(62% .14 240);--m3:oklch(66% .14 150);--m1-fg:oklch(40% .1 70);--m2-fg:oklch(38% .1 245);--m3-fg:oklch(40% .1 150);--m1-soft:oklch(96% .04 75);--m2-soft:oklch(95% .04 240);--m3-soft:oklch(95% .04 150);--info:oklch(62% .14 240);--success:oklch(66% .14 150);--warning:oklch(78% .14 75);--destructive:oklch(60% .2 25);--c1:oklch(65% .18 25);--c2:oklch(72% .15 50);--c3:oklch(80% .14 80);--c4:oklch(85% .14 105);--c5:oklch(78% .16 135);--c6:oklch(65% .14 150);--c7:oklch(68% .1 185);--c8:oklch(72% .11 215);--c9:oklch(62% .16 250);--c10:oklch(55% .16 280);--c11:oklch(55% .16 310);--c12:oklch(68% .16 345)}:root,[data-theme=light]{color-scheme:light;--bg:oklch(99.5% .002 90);--bg-2:oklch(97.5% .003 90);--fg:oklch(18% .005 270);--fg-muted:oklch(50% .01 270);--fg-strong:oklch(12% .005 270);--card:oklch(100% 0 0);--card-fg:oklch(18% .005 270);--muted:oklch(97.5% .003 90);--muted-2:oklch(95.5% .004 90);--muted-fg:oklch(50% .01 270);--border:oklch(91% .006 270);--border-2:oklch(94% .005 270);--input:oklch(93% .005 270);--subtle:oklch(97% .003 90);--accent-soft:oklch(.96 .03 var(--accent-h));--accent-soft-fg:oklch(.42 .1 var(--accent-h));--warning-soft:oklch(97% .04 75);--warning-bd:oklch(85% .11 75);--warning-fg:oklch(42% .1 65);--info-soft:oklch(96% .03 240);--success-soft:oklch(96% .04 150);--destructive-soft:oklch(96% .04 25);--shadow-card:0 1px 2px oklch(0% 0 0/.04),0 1px 3px oklch(0% 0 0/.04);--shadow-pop:0 8px 24px -8px oklch(0% 0 0/.18),0 2px 6px oklch(0% 0 0/.06);--shadow:0 1px 2px oklch(0% 0 0/.04),0 1px 3px oklch(0% 0 0/.04);--shadow-sm:0 1px 2px oklch(0% 0 0/.06);--radius-card:12px;--border-strong:oklch(76% .01 270);--link:oklch(.46 .14 var(--accent-h));--link-hover:oklch(.4 .14 var(--accent-h));--header-bg:oklch(99.5% .002 90/.72)}[data-theme=dark]{color-scheme:dark;--bg:oklch(15.5% .006 270);--bg-2:oklch(13.5% .006 270);--fg:oklch(96% .003 90);--fg-muted:oklch(70% .012 270);--fg-strong:oklch(99% .003 90);--card:oklch(20.5% .008 270);--card-fg:oklch(96% .003 90);--muted:oklch(24% .008 270);--muted-2:oklch(27% .009 270);--muted-fg:oklch(70% .012 270);--border:oklch(30% .01 270);--border-2:oklch(26% .01 270);--input:oklch(27% .01 270);--subtle:oklch(22% .008 270);--accent-soft:oklch(.3 .06 var(--accent-h));--accent-soft-fg:oklch(.88 .06 var(--accent-h));--warning-soft:oklch(27% .04 75);--warning-bd:oklch(48% .1 75);--warning-fg:oklch(88% .1 75);--info-soft:oklch(30% .06 240);--success-soft:oklch(30% .05 150);--destructive-soft:oklch(30% .07 25);--m1-soft:oklch(32% .05 75);--m2-soft:oklch(30% .06 240);--m3-soft:oklch(30% .05 150);--shadow-card:0 1px 2px oklch(0% 0 0/.4),0 1px 3px oklch(0% 0 0/.3);--shadow-pop:0 12px 32px -8px oklch(0% 0 0/.55),0 2px 6px oklch(0% 0 0/.3);--shadow:0 1px 2px oklch(0% 0 0/.4),0 1px 3px oklch(0% 0 0/.3);--shadow-sm:0 1px 3px oklch(0% 0 0/.35);--radius-card:12px;--border-strong:oklch(42% .012 270);--link:oklch(.78 .12 var(--accent-h));--link-hover:oklch(.86 .12 var(--accent-h));--header-bg:oklch(15.5% .006 270/.7)}@media (prefers-color-scheme:dark){:root:not([data-theme=light]){color-scheme:dark;--bg:oklch(15.5% .006 270);--bg-2:oklch(13.5% .006 270);--fg:oklch(96% .003 90);--fg-muted:oklch(70% .012 270);--fg-strong:oklch(99% .003 90);--card:oklch(20.5% .008 270);--card-fg:oklch(96% .003 90);--muted:oklch(24% .008 270);--muted-2:oklch(27% .009 270);--muted-fg:oklch(70% .012 270);--border:oklch(30% .01 270);--border-2:oklch(26% .01 270);--input:oklch(27% .01 270);--subtle:oklch(22% .008 270);--accent-soft:oklch(30% .06 274);--accent-soft-fg:oklch(88% .06 274);--warning-soft:oklch(27% .04 75);--warning-bd:oklch(48% .1 75);--warning-fg:oklch(88% .1 75);--info-soft:oklch(30% .06 240);--success-soft:oklch(30% .05 150);--destructive-soft:oklch(30% .07 25);--m1-soft:oklch(32% .05 75);--m2-soft:oklch(30% .06 240);--m3-soft:oklch(30% .05 150);--shadow-card:0 1px 2px oklch(0% 0 0/.4),0 1px 3px oklch(0% 0 0/.3);--shadow-pop:0 12px 32px -8px oklch(0% 0 0/.55),0 2px 6px oklch(0% 0 0/.3);--shadow:0 1px 2px oklch(0% 0 0/.4),0 1px 3px oklch(0% 0 0/.3);--shadow-sm:0 1px 3px oklch(0% 0 0/.35);--radius-card:12px;--border-strong:oklch(42% .012 270);--link:oklch(78% .12 274);--link-hover:oklch(86% .12 274)}}@keyframes slide-up{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}*,:after,:before{box-sizing:border-box}body,html{height:100%;margin:0;padding:0}html{scroll-behavior:smooth}body{font-feature-settings:"cv11","ss01","ss03";background:var(--bg);color:var(--fg);-webkit-font-smoothing:antialiased;text-rendering:optimizelegibility;font-family:Inter,system-ui,sans-serif;font-size:14px;line-height:1.5;overflow-x:hidden}a{color:inherit;text-decoration:none}button{font:inherit;cursor:pointer}::selection{background:var(--accent-soft);color:var(--accent-soft-fg)}:focus-visible{box-shadow:0 0 0 3px var(--ring);outline:none}::-webkit-scrollbar{width:6px;height:6px}::-webkit-scrollbar-track{background:0 0}::-webkit-scrollbar-thumb{background:var(--border);border-radius:3px}::-webkit-scrollbar-thumb:hover{background:var(--muted-fg)}.sr-only{border:0}.shell{background:var(--bg);width:100%;height:100%;color:var(--fg);font-feature-settings:"cv11","ss01","ss03";-webkit-font-smoothing:antialiased;grid-template-columns:248px 1fr;font-family:Inter,system-ui,sans-serif;font-size:14px;line-height:1.5;display:grid;position:relative;overflow:hidden}.shell.mobile{grid-template-columns:1fr}.shell.mobile .sidebar{display:none}.shell.mobile .hamburger{display:inline-flex!important}.shell.mobile .topbar .crumbs{display:none}@media (max-width:1023px){.shell{grid-template-columns:1fr}.shell>.sidebar{display:none}.shell .hamburger{display:inline-flex!important}.shell .tb-btn.semester,.shell .topbar .crumbs{display:none}.shell .topbar-title{display:inline!important}}.sidebar{background:var(--bg);border-right:1px solid var(--border);flex-direction:column;gap:8px;min-height:0;padding:18px 14px 14px;display:flex;position:relative;overflow-y:auto}.sidebar .brand{color:var(--fg);align-items:center;gap:10px;padding:4px 8px 14px;text-decoration:none;display:inline-flex}.sidebar .brand .mono{background:var(--fg);width:28px;height:28px;color:var(--bg);letter-spacing:-.04em;border-radius:8px;flex-shrink:0;place-items:center;font-family:Instrument Serif,serif;font-size:18px;font-style:italic;display:grid;position:relative}.sidebar .brand .mono:after{content:"";background:var(--accent);border-radius:50%;width:4px;height:4px;position:absolute;bottom:4px;right:4px}.sidebar .brand .word{letter-spacing:-.01em;font-family:Instrument Serif,serif;font-size:20px}.sidebar-section{flex-direction:column;flex:1;gap:2px;margin-top:4px;display:flex}.sidebar-label{letter-spacing:.14em;text-transform:uppercase;color:var(--muted-fg);padding:6px 10px 8px;font-family:JetBrains Mono,monospace;font-size:10px;font-weight:500}.nav-item{color:var(--fg);font:inherit;cursor:pointer;text-align:left;background:0 0;border:0;border-radius:8px;align-items:center;gap:10px;width:100%;padding:8px 10px;font-size:13.5px;text-decoration:none;transition:background .12s;display:flex}.nav-item:hover{background:var(--muted)}.nav-item.active{background:var(--accent-soft);font-weight:500}.nav-item.active,.nav-item.active .nav-ic{color:var(--accent-soft-fg)}.nav-item .nav-ic{color:var(--muted-fg);display:inline-flex}.nav-item .nav-count{font-feature-settings:"tnum";font-size:11px}.nav-item .nav-count,.nav-item .nav-pill{color:var(--muted-fg);margin-left:auto;font-family:JetBrains Mono,monospace}.nav-item .nav-pill{text-transform:uppercase;letter-spacing:.08em;background:var(--muted);border:1px solid var(--border);border-radius:999px;padding:2px 6px;font-size:9.5px}.sidebar-foot{border-top:1px solid var(--border);justify-content:space-between;align-items:center;margin:12px -14px -14px;padding:12px 16px 14px;display:flex}.sidebar-foot .whatsnew{color:var(--muted-fg);align-items:center;gap:6px;font-size:12px;text-decoration:none;display:inline-flex}.sidebar-foot .whatsnew .badge{background:var(--accent);border-radius:50%;width:6px;height:6px;display:inline-block}.sidebar-foot .version{color:var(--muted-fg);font-family:JetBrains Mono,monospace;font-size:10px}.sidebar .close-x{width:28px;height:28px;color:var(--muted-fg);cursor:pointer;background:0 0;border:0;border-radius:6px;place-items:center;display:grid;position:absolute;top:12px;right:12px}.sidebar .close-x:hover{background:var(--muted)}.main{flex-direction:column;min-width:0;display:flex;overflow:hidden}.main-scroll{flex:1;padding:20px 28px 56px;overflow-y:auto}.shell.mobile .main-scroll{padding:16px 16px 80px}.topbar{border-bottom:1px solid var(--border);background:var(--bg);flex-shrink:0;justify-content:space-between;align-items:center;height:56px;padding:0 20px;display:flex}.shell.mobile .topbar{height:52px;padding:0 12px}.topbar-left{align-items:center;gap:12px;min-width:0;display:flex}.hamburger{background:var(--card);border-radius:8px;display:none}.topbar-title{color:var(--fg);font-size:14px;font-weight:500;display:none}.shell.mobile .topbar-title{font-size:13.5px;display:inline}.shell.mobile .crumbs{display:none}.crumbs{align-items:center;gap:6px;min-width:0;font-size:13px;display:flex}.crumbs,.crumbs a{color:var(--muted-fg)}.crumbs a{text-decoration:none}.crumbs .here,.crumbs a:hover{color:var(--fg)}.crumbs .here{font-weight:500}.crumbs .sep{color:var(--muted-fg);opacity:.6;display:inline-flex}.topbar-right{align-items:center;gap:8px;display:flex}.tb-btn{border:1px solid var(--border);background:var(--card);height:34px;color:var(--fg);font:inherit;cursor:pointer;white-space:nowrap;border-radius:8px;align-items:center;gap:6px;padding:0 12px;font-size:13px;transition:background .12s,border-color .12s;display:inline-flex}.tb-btn:hover{background:var(--muted)}.tb-btn.primary{background:var(--accent);color:var(--accent-fg);border-color:#0000}.tb-btn.primary:hover{background:var(--accent-hover)}.tb-btn.icon-only{justify-content:center;width:34px;padding:0}.tb-btn .ic{display:inline-flex}.tb-btn .chev{color:currentColor;opacity:.7;margin-left:2px}.tb-btn.semester{color:var(--fg)}.tb-btn .spinner{opacity:.7;border:1.5px solid;border-top:1.5px solid #0000;border-radius:50%;width:12px;height:12px;animation:tb-spin .7s linear infinite}@keyframes tb-spin{to{transform:rotate(1turn)}}.shell.mobile .tb-btn.semester{display:none}.avatar-btn{color:oklch(20% .05 0);letter-spacing:.02em;cursor:pointer;border:0;border-radius:50%;justify-content:center;align-items:center;width:34px;height:34px;font-size:12px;font-weight:600;display:inline-flex}[data-theme=dark] .avatar-btn{color:oklch(15% .04 0)}.menu{z-index:50;background:var(--card);border:1px solid var(--border);min-width:220px;box-shadow:var(--shadow-pop);color:var(--fg);border-radius:10px;padding:5px;position:absolute}.menu .item{cursor:pointer;width:100%;color:var(--fg);text-align:left;background:0 0;border:0;border-radius:6px;align-items:center;gap:10px;padding:8px;font-family:inherit;font-size:13px;display:flex}.menu .item:hover{background:var(--muted)}.menu .item.danger{color:var(--destructive)}.menu .item .ic{width:14px;height:14px;color:var(--muted-fg);display:inline-flex}.menu .item.danger .ic{color:var(--destructive)}.menu .item .right{margin-left:auto;font-size:11px}.menu .item .right,.menu .label{color:var(--muted-fg);font-family:JetBrains Mono,monospace}.menu .label{letter-spacing:.12em;text-transform:uppercase;padding:8px 8px 4px;font-size:10px;font-weight:500}.menu .sep{background:var(--border);height:1px;margin:4px 2px}.menu .kbd{background:var(--muted);border:1px solid var(--border);border-radius:4px;justify-content:center;align-items:center;min-width:18px;height:18px;padding:0 4px;font-size:10.5px;display:inline-flex}.menu .kbd,.menu .pill{font-family:JetBrains Mono,monospace}.menu .pill{letter-spacing:.08em;text-transform:uppercase;color:var(--success);background:var(--success-soft);border-radius:999px;padding:2px 6px;font-size:9.5px}.menu .footer-item{color:var(--muted-fg);cursor:pointer;background:0 0;border:0;align-items:center;gap:6px;width:100%;padding:8px;font-family:inherit;font-size:12px;display:flex}.menu .footer-item:hover{color:var(--fg)}.menu .head{padding:8px}.menu .head .row{align-items:center;gap:10px;display:flex}.menu .head .info .name{font-size:13px;font-weight:500}.menu .head .info .email{color:var(--muted-fg);font-family:JetBrains Mono,monospace;font-size:11px}.menu .item .chev-r{color:var(--muted-fg);margin-left:auto}.menu.semester .row-2{flex-direction:column;flex:1;gap:1px;display:flex}.menu.semester .nm{font-size:13px}.menu.semester .dates{color:var(--muted-fg);font-family:JetBrains Mono,monospace;font-size:11px}.menu .submenu{background:var(--card);border:1px solid var(--border);min-width:180px;box-shadow:var(--shadow-pop);border-radius:10px;padding:5px;position:absolute;top:-4px;left:calc(100% + 4px)}.menu .submenu .item .check{color:var(--accent)}.mobile-backdrop{z-index:60;background:oklch(0 0 0/.4);position:fixed;inset:0}.mobile-sheet{background:var(--bg);border-right:1px solid var(--border);z-index:61;width:280px;max-width:85vw;box-shadow:var(--shadow-pop);position:fixed;top:0;bottom:0;left:0}.mobile-sheet .sidebar{width:100%;height:100%}.page-breadcrumbs{color:var(--muted-fg);margin:0 0 14px}.page-breadcrumbs .sep{opacity:.6;display:inline-flex}.page-header{flex-wrap:wrap;justify-content:space-between;align-items:flex-end;gap:16px;margin-bottom:24px;display:flex}.page-header h1{letter-spacing:-.02em;margin:0 0 4px;font-family:Instrument Serif,serif;font-size:32px;font-weight:400}.page-header .desc{color:var(--muted-fg);margin:0;font-size:13.5px}.page-header .actions{align-items:center;gap:8px;display:flex}.signin-page{background:var(--bg);width:100%;min-height:100%;color:var(--fg);flex-direction:column;justify-content:center;align-items:center;padding:24px 16px;font-family:Inter,system-ui,sans-serif;display:flex;position:relative;overflow:hidden}.signin-page:before{content:"";background:radial-gradient(ellipse 70% 50% at 50% 0,var(--accent-soft) 0,transparent 60%),radial-gradient(ellipse 60% 40% at 50% 100%,oklch(54% .14 274/.06) 0,transparent 70%);opacity:.55;pointer-events:none;position:absolute;inset:0}[data-theme=dark] .signin-page:before{opacity:.4}.signin-shell{z-index:1;flex-direction:column;align-items:center;gap:16px;width:100%;max-width:420px;display:flex;position:relative}.signin-card{background:var(--card);border:1px solid var(--border);border-radius:14px;width:100%;padding:28px;box-shadow:0 1px 2px oklch(0 0 0/.04),0 8px 28px -10px oklch(0 0 0/.1)}[data-theme=dark] .signin-card{box-shadow:0 1px 2px oklch(0 0 0/.4),0 12px 32px -10px oklch(0 0 0/.5)}@media (max-width:480px){.signin-card{box-shadow:none;padding:22px}}.signin-brand{color:var(--fg);justify-content:center;align-items:center;gap:8px;margin-bottom:22px;display:flex}.signin-brand .mono{background:var(--fg);width:22px;height:22px;color:var(--bg);letter-spacing:-.04em;border-radius:6px;place-items:center;font-family:Instrument Serif,serif;font-size:13px;font-style:italic;display:grid;position:relative}.signin-brand .mono:after{content:"";background:var(--accent);border-radius:50%;width:3px;height:3px;position:absolute;bottom:3px;right:3px}.signin-brand .word{letter-spacing:-.02em;font-family:Instrument Serif,serif;font-size:17px}.signin-banner{background:var(--accent-soft);color:var(--accent-soft-fg);border-radius:10px;align-items:flex-start;gap:10px;margin-bottom:20px;padding:10px 12px;font-size:12.5px;line-height:1.45;display:flex}.signin-banner b{font-weight:600}.signin-h{letter-spacing:-.015em;color:var(--fg);text-align:center;margin:0 0 6px;font-family:Instrument Serif,serif;font-size:26px;font-weight:400;line-height:1.1}.signin-sub{color:var(--fg-muted);text-align:center;margin:0 0 22px;font-size:13.5px;line-height:1.5}.signin-sub b{color:var(--fg);font-weight:500}.signin-form{flex-direction:column;gap:14px;display:flex}.signin-label{color:var(--fg);margin-bottom:6px;font-size:12px;font-weight:500;display:block}.signin-input{border-radius:var(--r-input);border:1px solid var(--border);background:var(--card);width:100%;height:42px;color:var(--fg);font:inherit;padding:0 12px;font-size:14.5px;transition:border-color .12s,box-shadow .12s}.signin-input::placeholder{color:var(--fg-muted)}.signin-input:focus{border-color:var(--accent);box-shadow:0 0 0 3px var(--ring);outline:none}.signin-input.error{border-color:oklch(60% .2 25);box-shadow:0 0 0 3px oklch(60% .2 25/.2)}.signin-error{color:oklch(50% .18 25);align-items:flex-start;gap:6px;margin-top:2px;font-size:12.5px;line-height:1.45;display:flex}[data-theme=dark] .signin-error{color:oklch(78% .13 25)}.signin-btn{border-radius:var(--r-input);background:var(--accent);width:100%;height:44px;color:var(--accent-fg);font:inherit;cursor:pointer;border:1px solid #0000;justify-content:center;align-items:center;gap:8px;padding:0 16px;font-size:14.5px;font-weight:500;transition:background .12s,transform 50ms,opacity .15s;display:inline-flex}.signin-btn:hover:not(:disabled){background:var(--accent-hover)}.signin-btn:disabled{opacity:.55;cursor:not-allowed}.signin-btn .spinner{border:2px solid;border-top:2px solid #0000;border-radius:50%;width:16px;height:16px;animation:signin-spin .8s linear infinite}@keyframes signin-spin{to{transform:rotate(1turn)}}.signin-footer-row{justify-content:space-between;margin-top:14px;font-size:12.5px;display:flex}.signin-footer-row a,.signin-footer-row button{color:var(--fg-muted);cursor:pointer;font:inherit;background:0 0;border:0;padding:0;transition:color .15s}.signin-footer-row a:hover,.signin-footer-row button:hover{color:var(--fg)}.signin-footer-row .countdown{font-family:JetBrains Mono,monospace;font-size:11.5px}.signin-back{color:var(--fg-muted);align-items:center;gap:4px;font-size:13px;display:inline-flex}.signin-back:hover{color:var(--fg)}.signin-legal{color:var(--fg-muted);text-align:center;max-width:36ch;font-size:11.5px;line-height:1.5}.signin-legal a{color:var(--fg);text-underline-offset:2px;text-decoration:underline}.signin-crosslink{color:var(--fg-muted);text-align:center;margin-top:14px;font-size:13px}.signin-crosslink a{color:var(--accent);text-underline-offset:3px;font-weight:500;text-decoration:underline}.signin-crosslink a:hover{opacity:.8}.signin-otp{justify-content:center;align-items:center;gap:6px;margin:4px 0;display:flex}.signin-otp .gap{background:var(--border);width:12px;height:1px}.signin-otp .cell{border:1px solid var(--border);border-radius:var(--r-input);width:44px;height:52px;color:var(--fg);background:var(--card);place-items:center;font-family:JetBrains Mono,monospace;font-size:20px;font-weight:500;transition:border-color .12s,box-shadow .12s;display:grid;position:relative}.signin-otp .cell.filled{border-color:var(--fg)}.signin-otp .cell.active{border-color:var(--accent);box-shadow:0 0 0 3px var(--ring)}.signin-otp.error .cell{border-color:oklch(60% .2 25)}.signin-success{flex-direction:column;align-items:center;gap:12px;padding:8px 0 4px;display:flex}.signin-success .check{background:var(--m3);color:oklch(98% 0 0);border-radius:50%;place-items:center;width:40px;height:40px;font-size:18px;font-weight:700;display:grid;position:relative}.signin-success .check:after{content:"";border:2px solid var(--m3);opacity:0;border-radius:50%;animation:signin-pulse 1.6s ease-out infinite;position:absolute;inset:-3px}@keyframes signin-pulse{0%{opacity:.6;transform:scale(.7)}to{opacity:0;transform:scale(1.5)}}.signin-success .title{color:var(--fg);font-size:15px;font-weight:600}.signin-success .sub{color:var(--fg-muted);text-align:center;margin:0;font-size:13px}.dash{flex-direction:column;gap:24px;max-width:1200px;margin:0 auto;display:flex}@media (min-width:640px){.dash{gap:32px}}.dash-greeting{flex-direction:column;gap:2px;display:flex}.dash-greeting h1{letter-spacing:-.015em;color:var(--fg);margin:0;font-family:Instrument Serif,serif;font-size:32px;font-weight:400;line-height:1.05}@media (min-width:768px){.dash-greeting h1{font-size:38px}}.dash-greeting h1 em{color:var(--fg-muted);font-style:italic}.dash-greeting .date{color:var(--fg-muted);font-size:13px}.stat-row{grid-template-columns:repeat(2,1fr);gap:10px;display:grid}@media (min-width:640px){.stat-row{grid-template-columns:repeat(4,1fr);gap:12px}}.stat-tile{background:var(--card);border:1px solid var(--border);min-width:0;color:inherit;border-radius:12px;flex-direction:column;gap:4px;padding:14px 16px;text-decoration:none;transition:border-color .12s,background .12s;display:flex}.stat-tile.linkable:hover{border-color:var(--fg-muted);cursor:pointer}.stat-tile .num{letter-spacing:-.015em;color:var(--fg);font-family:Instrument Serif,serif;font-size:36px;line-height:1}@media (min-width:768px){.stat-tile .num{font-size:44px}}.stat-tile .num .u,.stat-tile .num.zero{color:var(--fg-muted)}.stat-tile .num .u{margin-left:4px;font-family:Inter,sans-serif;font-size:13px;font-style:italic;font-weight:400}.stat-tile .lbl{color:var(--fg);margin-top:4px;font-size:12.5px;font-weight:500}.stat-tile .sub{color:var(--fg-muted);align-items:center;gap:4px;font-size:11.5px;display:flex}.hero-cta{background:var(--card);border:1px solid var(--border);border-left:3px solid var(--accent);border-radius:12px;flex-direction:column;gap:14px;padding:20px 24px;position:relative;overflow:hidden}.hero-cta:before{content:"";background:radial-gradient(ellipse 60% 70% at 0 50%,var(--accent-soft) 0,transparent 60%);opacity:.7;pointer-events:none;position:absolute;inset:0}[data-theme=dark] .hero-cta:before{opacity:.4}.hero-cta>*{z-index:1;position:relative}.hero-cta-top{flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:12px;display:flex}.hero-cta-text{flex:1;min-width:0}.hero-cta h2{letter-spacing:-.015em;margin:0 0 4px;font-family:Instrument Serif,serif;font-size:28px;font-weight:400;line-height:1.1}.hero-cta h2 em{color:var(--fg-muted);font-style:italic}.hero-cta .meta{color:var(--fg-muted);margin:0;font-size:13px}.hero-btn{font:inherit;background:var(--accent);height:44px;color:var(--accent-fg);cursor:pointer;white-space:nowrap;border:1px solid #0000;border-radius:10px;align-items:center;gap:8px;padding:0 22px;font-size:14.5px;font-weight:500;transition:background .12s,transform 50ms;display:inline-flex}.hero-btn:hover{background:var(--accent-hover)}.hero-btn:active{transform:translateY(.5px)}.hero-btn.muted{background:var(--card);color:var(--fg);border-color:var(--border)}.hero-btn.muted:hover{background:var(--muted)}.pill-row{flex-wrap:wrap;gap:8px;display:flex}.pill{font:inherit;background:var(--card);border:1px solid var(--border);color:var(--fg);cursor:pointer;border-radius:999px;align-items:center;gap:6px;padding:5px 12px;font-size:12.5px;font-weight:500;text-decoration:none;transition:background .12s;display:inline-flex}.pill:hover{background:var(--muted)}.pill .count{color:var(--fg-muted);font-family:JetBrains Mono,monospace;font-size:10.5px}.section-card .head{border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;padding:14px 18px;display:flex}.section-card .head .title{color:var(--fg);align-items:center;gap:8px;font-size:14px;font-weight:600;display:flex}.section-card .head .title .badge-n{background:var(--muted);color:var(--fg-muted);border-radius:999px;padding:1px 6px;font-family:JetBrains Mono,monospace;font-size:10px}.section-card .head .ac{gap:8px;display:flex}.section-card .head .ac a,.section-card .head .ac button{color:var(--fg-muted);cursor:pointer;font-size:12.5px;font:inherit;background:0 0;border:0;border-radius:6px;align-items:center;gap:4px;padding:4px 8px;text-decoration:none;display:inline-flex}.section-card .head .ac a:hover,.section-card .head .ac button:hover{color:var(--fg);background:var(--muted)}.section-card .body{padding:4px 6px}.row-line{color:inherit;cursor:pointer;border-radius:8px;align-items:center;gap:12px;padding:10px 12px;text-decoration:none;transition:background .12s;display:flex}.row-line:hover{background:var(--muted)}.row-line .strip{border-radius:2px;flex-shrink:0;width:4px;height:32px}.row-line .main{flex-direction:column;flex:1;gap:1px;min-width:0;display:flex}.row-line .main .nm{color:var(--fg);white-space:nowrap;text-overflow:ellipsis;font-size:13.5px;font-weight:500;overflow:hidden}.row-line .main .meta{color:var(--fg-muted);align-items:center;gap:6px;font-size:11.5px;display:flex}.row-line .right{flex-shrink:0;align-items:center;gap:10px;display:flex}.row-line .when{white-space:nowrap;font-size:11px}.mode-badge,.row-line .when{color:var(--fg-muted);font-family:JetBrains Mono,monospace}.mode-badge{letter-spacing:.06em;text-transform:uppercase;background:var(--muted);border-radius:4px;align-items:center;padding:2px 7px;font-size:9.5px;font-weight:500;display:inline-flex}.mode-badge.review{color:oklch(40% .1 245);background:oklch(95% .04 240)}.mode-badge.quick{color:oklch(40% .1 150);background:oklch(95% .04 150)}.mode-badge.cram{color:oklch(45% .12 65);background:oklch(96% .05 75)}[data-theme=dark] .mode-badge.review{color:oklch(85% .08 240);background:oklch(30% .06 240)}[data-theme=dark] .mode-badge.quick{color:oklch(85% .08 150);background:oklch(30% .05 150)}[data-theme=dark] .mode-badge.cram{color:oklch(88% .1 75);background:oklch(32% .05 75)}.empty-inline{text-align:center;color:var(--fg-muted);padding:30px 16px;font-size:13px}.empty-inline h4{color:var(--fg);margin:0 0 4px;font-size:14px;font-weight:600}.empty-inline p{margin:0 0 10px}.stale-alert{border:1px solid var(--warning-bd);background:var(--warning-soft);border-radius:12px;flex-direction:column;gap:12px;padding:16px 18px;display:flex}.stale-alert h3{color:var(--warning-fg);margin:0 0 4px;font-size:14px;font-weight:600}.stale-alert p{color:var(--fg);margin:0;font-size:13px;line-height:1.5}.gs-banner{background:var(--card);border:1px solid var(--border);border-radius:12px;justify-content:space-between;gap:16px;margin-bottom:20px;padding:14px 18px}.gs-banner,.gs-left{align-items:center;display:flex}.gs-left{flex:1;gap:12px;min-width:0}.gs-icon{background:var(--muted);width:34px;height:34px;color:var(--fg-muted);border-radius:8px;flex-shrink:0;place-items:center;display:grid}.gs-body{flex-direction:column;gap:4px;min-width:0;display:flex}.gs-title{color:var(--fg);align-items:center;gap:7px;font-size:13.5px;font-weight:600;display:flex}.gs-done-chip{letter-spacing:.05em;text-transform:uppercase;color:oklch(45% .12 150);background:oklch(93% .06 150/.35);border-radius:20px;padding:2px 6px;font-size:10px;font-weight:700}.gs-desc{color:var(--fg-muted);font-size:12px;line-height:1.4}.gs-progress{align-items:center;gap:8px;margin-top:2px;display:flex}.gs-bar{background:var(--muted);flex-shrink:0;width:80px;height:4px;overflow:hidden}.gs-bar,.gs-fill{border-radius:99px}.gs-fill{background:var(--accent);height:100%;transition:width .3s}.gs-count{color:var(--fg-muted);font-family:JetBrains Mono,monospace;font-size:11px}.gs-actions{flex-shrink:0;align-items:center;gap:8px;display:flex}.gs-start{background:var(--accent);color:#fff;border-radius:8px;padding:6px 14px;font-size:12.5px;font-weight:600;text-decoration:none;transition:opacity .12s}.gs-start:hover{opacity:.88}.gs-dismiss{width:28px;height:28px;color:var(--fg-muted);cursor:pointer;background:0 0;border:none;border-radius:6px;place-items:center;transition:background .12s,color .12s;display:grid}.gs-dismiss:hover{background:var(--muted);color:var(--fg)}.cs-grid{grid-template-columns:repeat(2,1fr);gap:12px;display:grid}@media (min-width:640px){.cs-grid{grid-template-columns:repeat(3,1fr)}}@media (min-width:1024px){.cs-grid{grid-template-columns:repeat(4,1fr)}}.cs-card{background:var(--card);border:1px solid var(--border);color:inherit;cursor:pointer;border-radius:12px;flex-direction:column;text-decoration:none;transition:border-color .12s,box-shadow .12s;display:flex;overflow:hidden}.cs-card:hover{border-color:var(--fg-muted);box-shadow:var(--shadow-pop)}.cs-card .strip{height:8px}.cs-card .body{flex-direction:column;flex:1;gap:10px;padding:14px 16px 16px;display:flex}.cs-card .name{color:var(--fg);font-size:15px;font-weight:600;line-height:1.3}.cs-card .code{color:var(--muted-fg);letter-spacing:.06em;text-transform:uppercase;margin-top:2px;font-family:JetBrains Mono,monospace;font-size:10.5px}.cs-mastery .bar{background:var(--muted-2);border-radius:999px;gap:1px;height:7px;display:flex;overflow:hidden}.cs-mastery .bar .seg{min-width:3px;height:100%}.cs-mastery .bar .seg.m1{background:var(--m1)}.cs-mastery .bar .seg.m2{background:var(--m2)}.cs-mastery .bar .seg.m3{background:var(--m3)}.cs-stats{border-top:1px solid var(--border-2);grid-template-columns:repeat(3,1fr);gap:8px;margin-top:auto;padding-top:10px;display:grid}.cs-stats .s{flex-direction:column;align-items:center;gap:1px;display:flex}.cs-stats .s .n{color:var(--fg);font-size:13.5px;font-weight:500}.cs-stats .s .l,.cs-stats .s .n{font-family:JetBrains Mono,monospace}.cs-stats .s .l{color:var(--muted-fg);text-transform:uppercase;letter-spacing:.06em;font-size:10px}@keyframes shimmer{0%{background-position:-200% 0}to{background-position:200% 0}}.skel{background:linear-gradient(90deg,var(--muted) 0,var(--bg-2) 50%,var(--muted) 100%);background-size:200% 100%;border-radius:6px;animation:shimmer 1.8s linear infinite}.focused-layout{background:var(--bg);min-height:100vh;color:var(--fg)}.crs-page{flex-direction:column;gap:18px;max-width:1200px;margin:0 auto;display:flex}.crs-hero{background:var(--card);border:1px solid var(--border);border-radius:var(--r-card);overflow:hidden}.crs-hero .strip{height:16px}.crs-hero .body{flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:16px;padding:18px 20px 20px;display:flex}.crs-hero .name{letter-spacing:-.02em;color:var(--fg);margin:0 0 4px;font-family:Instrument Serif,serif;font-size:26px;font-weight:400}.crs-hero .meta{color:var(--fg-muted);align-items:center;gap:6px;margin-bottom:10px;font-size:13px;display:flex}.crs-hero .meta .dot{background:var(--fg-muted);border-radius:50%;width:3px;height:3px}.crs-profile-chip{background:var(--muted);border:1px solid var(--border-2);color:var(--fg-muted);border-radius:6px;align-items:center;gap:6px;padding:4px 8px;font-size:12px;display:inline-flex}.crs-profile-chip .ic{background:var(--accent-soft);width:18px;height:18px;color:var(--accent-soft-fg);border-radius:4px;place-items:center;font-size:11px;font-weight:600;display:grid}.crs-profile-chip .lbl{color:var(--fg-muted)}.crs-hero-right{flex-direction:column;align-items:flex-end;gap:12px;display:flex}.crs-actions-top{align-items:center;gap:8px;display:flex}.start-review{background:var(--accent);height:36px;color:var(--accent-fg);font:inherit;cursor:pointer;border:none;border-radius:8px;align-items:center;gap:8px;padding:0 14px;font-size:13.5px;font-weight:500;transition:background .12s;display:inline-flex}.start-review:hover{background:var(--accent-hover)}.start-review .kbd{background:oklch(100% 0 0/.18);border-radius:4px;width:18px;height:18px;font-size:11px}.iconbtn,.start-review .kbd{justify-content:center;align-items:center;display:inline-flex}.iconbtn{border:1px solid var(--border);width:34px;height:34px;color:var(--fg-muted);cursor:pointer;background:0 0;border-radius:8px;transition:background .12s,color .12s}.iconbtn:hover{background:var(--muted);color:var(--fg)}.crs-kebab-menu{z-index:50;background:var(--card);border:1px solid var(--border);min-width:196px;box-shadow:var(--shadow-pop);border-radius:10px;padding:5px;position:absolute;top:calc(100% + 6px);right:0}.crs-kebab-menu .item{cursor:pointer;width:100%;color:var(--fg);text-align:left;background:0 0;border:0;border-radius:6px;align-items:center;gap:10px;padding:8px;font-family:inherit;font-size:13px;display:flex}.crs-kebab-menu .item:hover{background:var(--muted)}.crs-kebab-menu .item.danger{color:var(--destructive)}.crs-kebab-menu .item .ic{width:14px;height:14px;color:var(--muted-fg);flex-shrink:0;display:inline-flex}.crs-kebab-menu .item.danger .ic{color:var(--destructive)}.crs-kebab-menu .sep{background:var(--border);height:1px;margin:4px 2px}.crs-statpills{flex-wrap:wrap;gap:8px;display:flex}.crs-statpill{background:var(--muted);border:1px solid var(--border-2);border-radius:8px;flex-direction:column;align-items:center;min-width:68px;padding:8px 14px;display:flex}.crs-statpill .n{color:var(--fg);font-feature-settings:"tnum";font-family:JetBrains Mono,monospace;font-size:18px;font-weight:500;line-height:1.1}.crs-statpill .lbl{color:var(--fg-muted);margin-top:2px;font-size:10.5px}.crs-statpill.due{background:var(--accent-soft);border-color:oklch(.54 .14 var(--accent-h)/.25)}.crs-statpill.due .n{color:var(--accent)}.crs-statpill.due .lbl{color:var(--accent-soft-fg)}.crs-mastery-mini{min-width:220px}.crs-mastery-mini .bar{background:var(--muted-2);border-radius:999px;gap:1px;height:6px;display:flex;overflow:hidden}.crs-mastery-mini .bar .seg{height:100%}.crs-mastery-mini .bar .seg.m1{background:var(--m1)}.crs-mastery-mini .bar .seg.m2{background:var(--m2)}.crs-mastery-mini .bar .seg.m3{background:var(--m3)}.crs-mastery-mini .legend{color:var(--fg-muted);justify-content:flex-end;gap:10px;margin-top:5px;font-size:10.5px;display:flex}.crs-quick{grid-template-columns:repeat(4,1fr);gap:10px;display:grid}@media (max-width:767px){.crs-quick{grid-template-columns:repeat(2,1fr)}}.crs-quick .tile{background:var(--card);border:1px solid var(--border);cursor:pointer;text-align:left;font:inherit;color:var(--fg);border-radius:10px;align-items:center;gap:12px;padding:13px 15px;text-decoration:none;transition:background .12s,border-color .12s;display:flex}.crs-quick .tile:hover{background:var(--muted);border-color:var(--fg-muted)}.crs-quick .tile .ic-bg{background:var(--accent-soft);width:32px;height:32px;color:var(--accent-soft-fg);border-radius:8px;flex-shrink:0;place-items:center;display:grid}.crs-quick .tile .meta{flex-direction:column;gap:1px;display:flex}.crs-quick .tile .nm{font-size:13.5px;font-weight:500}.crs-quick .tile .hint{color:var(--fg-muted);font-size:11px}.crs-layout{grid-template-columns:2fr 1fr;align-items:start;gap:14px;display:grid}@media (max-width:1079px){.crs-layout{grid-template-columns:1fr}}.crs-left,.crs-right{flex-direction:column;gap:12px;display:flex}.crs-section{background:var(--card);border:1px solid var(--border);border-radius:var(--r-card);overflow:hidden}.crs-section .head{border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;padding:12px 16px;display:flex}.crs-section .title{color:var(--fg);align-items:center;gap:8px;font-size:13.5px;font-weight:600;display:flex}.badge-n{background:var(--muted);color:var(--fg-muted);border-radius:999px;padding:1px 6px;font-family:JetBrains Mono,monospace;font-size:10px}.crs-section .ac{align-items:center;gap:2px;display:flex}.primary-link{color:var(--accent);cursor:pointer;font-size:12.5px;font:inherit;background:0 0;border:0;border-radius:6px;align-items:center;gap:4px;padding:3px 8px;text-decoration:none;transition:background .12s;display:inline-flex}.primary-link:hover{background:var(--accent-soft)}.crs-section .body{padding:4px}.crs-section .foot{border-top:1px solid var(--border);padding:10px 16px;font-size:12.5px}.crs-section .foot a{color:var(--fg-muted);align-items:center;gap:4px;text-decoration:none;display:inline-flex}.crs-section .foot a:hover{color:var(--fg)}.crs-lec-row{color:inherit;border-radius:8px;align-items:center;gap:10px;padding:9px 12px;text-decoration:none;transition:background .12s;display:flex}.crs-lec-row:hover{background:var(--muted)}.crs-lec-row .num{color:var(--fg-muted);text-align:right;flex-shrink:0;width:22px;font-family:JetBrains Mono,monospace;font-size:10.5px}.crs-lec-row .ic-bg{background:var(--accent-soft);width:30px;height:30px;color:var(--accent-soft-fg);border-radius:7px;flex-shrink:0;place-items:center;display:grid}.crs-lec-row .main{flex:1;min-width:0}.crs-lec-row .nm{color:var(--fg);white-space:nowrap;text-overflow:ellipsis;font-size:13px;font-weight:500;overflow:hidden}.crs-lec-row .sub{color:var(--fg-muted);align-items:center;gap:4px;margin-top:1px;font-size:11.5px;display:flex}.crs-lec-row .sub .dot{opacity:.5}.crs-lec-row .right{flex-shrink:0;align-items:center;gap:6px;display:flex}.crs-lec-row .cards-count{color:var(--fg-muted);align-items:center;gap:4px;font-family:JetBrains Mono,monospace;font-size:10.5px;display:flex}.crs-lec-row .cards-count .due{background:var(--accent-soft);color:var(--accent-soft-fg);border-radius:4px;margin-left:3px;padding:1px 5px;font-family:JetBrains Mono,monospace;font-size:9.5px}.crs-lec-row-wrap{position:relative}.crs-lec-row-wrap .crs-lec-row{width:100%}.crs-lec-review{color:var(--accent);background:var(--accent-soft);white-space:nowrap;opacity:0;pointer-events:none;z-index:1;border-radius:5px;align-items:center;gap:5px;padding:3px 9px;font-size:11.5px;font-weight:500;text-decoration:none;transition:opacity .15s;display:inline-flex;position:absolute;top:50%;right:10px;transform:translateY(-50%)}.crs-lec-row-wrap:hover .crs-lec-review{opacity:1;pointer-events:auto}.crs-lec-row-wrap:hover .crs-lec-row .cards-count{opacity:0;transition:opacity .1s}.crs-status{background:var(--muted);color:var(--fg-muted);white-space:nowrap;border-radius:4px;align-items:center;gap:5px;padding:2px 7px;font-size:11px;display:inline-flex}.crs-status .d{background:currentColor;border-radius:50%;flex-shrink:0;width:5px;height:5px}.crs-status.ready{background:var(--success-soft);color:var(--m3-fg)}.crs-status.failed{background:var(--destructive-soft);color:oklch(50% .18 25)}[data-theme=dark] .crs-status.failed{color:oklch(78% .13 25)}.crs-status.progress{background:var(--warning-soft);color:var(--warning-fg)}@keyframes pulse-dot{0%,to{opacity:1}50%{opacity:.25}}.crs-status.progress .d{animation:pulse-dot 1.2s ease-in-out infinite}.crs-retry{border:1px solid var(--border);width:24px;height:24px;color:var(--fg-muted);cursor:pointer;background:0 0;border-radius:5px;justify-content:center;align-items:center;transition:background .12s;display:inline-flex}.crs-retry:hover{background:var(--muted);color:var(--fg)}.crs-note-row{color:inherit;border-radius:8px;align-items:center;gap:8px;padding:9px 12px;text-decoration:none;transition:background .12s;display:flex}.crs-note-row:hover{background:var(--muted)}.crs-note-row .pin-slot{flex-shrink:0;justify-content:center;align-items:center;width:14px;display:flex}.crs-note-row .pin{color:var(--warning);display:inline-flex}.crs-note-row .pin-dim{color:var(--border);display:inline-flex}.crs-note-row .main{flex:1;min-width:0}.crs-note-row .nm{color:var(--fg);white-space:nowrap;text-overflow:ellipsis;font-size:13px;font-weight:400;overflow:hidden}.crs-note-row .nm.italic{color:var(--fg-muted);font-style:italic}.crs-note-row .when{color:var(--fg-muted);white-space:nowrap;flex-shrink:0;font-family:JetBrains Mono,monospace;font-size:10.5px}.crs-asm-row{color:inherit;border-radius:8px;align-items:center;gap:10px;padding:10px 12px;text-decoration:none;transition:background .12s;display:flex}.crs-asm-row:hover{background:var(--muted)}.crs-asm-row .main{flex:1;min-width:0}.crs-asm-row .nm{color:var(--fg);white-space:nowrap;text-overflow:ellipsis;font-size:13px;font-weight:500;overflow:hidden}.crs-asm-row .meta{color:var(--fg-muted);margin-top:1px;font-size:11.5px}.crs-asm-row .badges{flex-shrink:0;align-items:center;gap:5px;display:flex}.crs-asm-divider{text-transform:uppercase;letter-spacing:.07em;color:var(--fg-muted);border-top:1px solid var(--border);margin-top:4px;padding:8px 12px 4px;font-size:10.5px;font-weight:700}.crs-score{background:var(--muted);color:var(--fg-muted);border-radius:4px;padding:2px 8px;font-family:JetBrains Mono,monospace;font-size:11.5px}.crs-score.green{background:var(--success-soft);color:var(--m3-fg)}.crs-score.amber{background:var(--warning-soft);color:var(--warning-fg)}.crs-score.red{background:var(--destructive-soft);color:oklch(50% .18 25)}[data-theme=dark] .crs-score.red{color:oklch(78% .13 25)}.crs-kind{letter-spacing:.06em;text-transform:uppercase;background:var(--muted);color:var(--fg-muted);border-radius:4px;padding:2px 7px;font-family:JetBrains Mono,monospace;font-size:9.5px}.crs-kind.quick{background:var(--info-soft);color:var(--m2-fg)}.crs-kind.midterm{background:var(--accent-soft);color:var(--accent-soft-fg)}.crs-kind.final{background:var(--destructive-soft);color:oklch(50% .18 25)}[data-theme=dark] .crs-kind.final{color:oklch(78% .13 25)}.crs-stale-badge{letter-spacing:.04em;background:var(--warning-soft);color:var(--warning-fg);border:1px solid var(--warning-bd);border-radius:4px;padding:2px 7px;font-size:9.5px;font-weight:600}.crs-activity{background:var(--card);border:1px solid var(--border);border-radius:var(--r-card);overflow:hidden}.crs-activity .head{border-bottom:1px solid var(--border);padding:12px 16px}.crs-activity .body{padding:4px}.crs-activity-row{color:inherit;border-radius:8px;align-items:flex-start;gap:10px;padding:9px 12px;text-decoration:none;transition:background .12s;display:flex}.crs-activity-row:hover{background:var(--muted)}.crs-activity-row .ic-bg{border-radius:6px;flex-shrink:0;place-items:center;width:28px;height:28px;margin-top:1px;display:grid}.crs-activity-row.study .ic-bg{background:var(--m2-soft);color:var(--m2-fg)}.crs-activity-row.upload .ic-bg{background:var(--accent-soft);color:var(--accent-soft-fg)}.crs-activity-row.note .ic-bg{background:var(--warning-soft);color:var(--warning-fg)}.crs-activity-row.score .ic-bg{background:var(--success-soft);color:var(--m3-fg)}.crs-activity-row .text{flex:1;min-width:0}.crs-activity-row .summary{color:var(--fg);font-size:12.5px;line-height:1.4;display:block}.crs-activity-row .when{color:var(--fg-muted);margin-top:2px;font-family:JetBrains Mono,monospace;font-size:10px;display:block}@keyframes cpd-appear{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}@keyframes cpd-pulse{0%,to{box-shadow:0 0 0 0 color-mix(in srgb,var(--cpd-accent,var(--accent)) 40%,transparent)}50%{box-shadow:0 0 0 8px color-mix(in srgb,var(--cpd-accent,var(--accent)) 0%,transparent)}}@keyframes cpd-shimmer{0%{background-position:-400px 0}to{background-position:400px 0}}.cpd-wrap{padding:0 0 4px}.cpd-card{background:var(--card);border:1px solid var(--border);border-top:3px solid var(--cpd-accent,var(--accent));border-radius:var(--r-card);overflow:hidden}.cpd-head{border-bottom:1px solid var(--border);flex-wrap:wrap;justify-content:space-between;gap:16px;padding:14px 16px}.cpd-head,.cpd-head-left{align-items:center;display:flex}.cpd-head-left{gap:10px}.cpd-pulse-ring{background:var(--cpd-accent,var(--accent));border-radius:50%;flex-shrink:0;width:32px;height:32px}@supports (color:color-mix(in lab,red,red)){.cpd-pulse-ring{background:color-mix(in srgb,var(--cpd-accent,var(--accent)) 15%,transparent)}}.cpd-pulse-ring{border:2px solid var(--cpd-accent,var(--accent));place-items:center;font-size:14px;transition:background .3s,border-color .3s;animation:cpd-pulse 1.8s ease-in-out infinite;display:grid}.cpd-pulse-ring.done{background:var(--cpd-accent,var(--accent));animation:none}@supports (color:color-mix(in lab,red,red)){.cpd-pulse-ring.done{background:color-mix(in srgb,var(--cpd-accent,var(--accent)) 20%,transparent)}}.cpd-pulse-ring.done{color:var(--cpd-accent,var(--accent))}.cpd-status-label{color:var(--fg-muted);font-size:12px;font-weight:500}.cpd-lec-title{color:var(--fg);white-space:nowrap;text-overflow:ellipsis;max-width:320px;font-size:14px;font-weight:600;overflow:hidden}.cpd-phases{flex-shrink:0;gap:6px}.cpd-phase-step,.cpd-phases{align-items:center;display:flex}.cpd-phase-step{opacity:.35;flex-direction:column;gap:3px}.cpd-phase-step.active,.cpd-phase-step.done{opacity:1}.cpd-phase-dot{background:var(--border);border-radius:50%;width:8px;height:8px}.cpd-phase-step.active .cpd-phase-dot,.cpd-phase-step.done .cpd-phase-dot{background:var(--cpd-accent,var(--accent))}.cpd-phase-step.active .cpd-phase-dot{box-shadow:0 0 0 3px var(--cpd-accent,var(--accent))}@supports (color:color-mix(in lab,red,red)){.cpd-phase-step.active .cpd-phase-dot{box-shadow:0 0 0 3px color-mix(in srgb,var(--cpd-accent,var(--accent)) 25%,transparent)}}.cpd-phase-label{color:var(--fg-muted);white-space:nowrap;font-size:10px;font-weight:500}.cpd-phase-step.active .cpd-phase-label,.cpd-phase-step.done .cpd-phase-label{color:var(--fg)}.cpd-body{flex-direction:column;gap:0;display:flex}.cpd-body-section{border-bottom:1px solid var(--border);padding:12px 16px}.cpd-body-section:last-child{border-bottom:none}.cpd-body-sec-hd{justify-content:space-between;align-items:center;margin-bottom:8px;display:flex}.cpd-sec-label{text-transform:uppercase;letter-spacing:.06em;color:var(--fg-muted);font-size:11px;font-weight:600}.cpd-sec-count{color:var(--cpd-accent,var(--accent));font-family:JetBrains Mono,monospace;font-size:12px;font-weight:700}.cpd-objectives{flex-direction:column;gap:4px;display:flex}.cpd-obj-row{align-items:baseline;gap:7px;animation:cpd-appear .3s both;display:flex}.cpd-obj-bullet{background:var(--cpd-accent,var(--accent));opacity:.7;border-radius:50%;flex-shrink:0;width:5px;height:5px;margin-top:6px}.cpd-obj-text{color:var(--fg);flex:1;min-width:0;font-size:13px;line-height:1.45}.cpd-obj-cat{text-transform:uppercase;letter-spacing:.04em;color:var(--fg-muted);background:var(--muted);white-space:nowrap;border-radius:4px;flex-shrink:0;padding:1px 5px;font-size:10px;font-weight:600}.cpd-appear{animation:cpd-appear .35s both}.cpd-quiz-grid{grid-template-columns:1fr 1fr;gap:8px;display:grid}@media (max-width:480px){.cpd-quiz-grid{grid-template-columns:1fr}}.cpd-quiz-slot{border-radius:8px;flex-direction:column;gap:3px;min-height:56px;padding:10px 12px;text-decoration:none;transition:background .12s;display:flex}.cpd-quiz-slot.filled{background:var(--cpd-accent,var(--accent))}@supports (color:color-mix(in lab,red,red)){.cpd-quiz-slot.filled{background:color-mix(in srgb,var(--cpd-accent,var(--accent)) 8%,transparent)}}.cpd-quiz-slot.filled{border:1px solid var(--cpd-accent,var(--accent))}@supports (color:color-mix(in lab,red,red)){.cpd-quiz-slot.filled{border:1px solid color-mix(in srgb,var(--cpd-accent,var(--accent)) 25%,transparent)}}.cpd-quiz-slot.filled{animation:cpd-appear .3s both}.cpd-quiz-slot.filled:hover{background:var(--cpd-accent,var(--accent))}@supports (color:color-mix(in lab,red,red)){.cpd-quiz-slot.filled:hover{background:color-mix(in srgb,var(--cpd-accent,var(--accent)) 14%,transparent)}}.cpd-quiz-slot.pending{background:var(--muted);border:1px solid var(--border)}.cpd-quiz-kind{text-transform:uppercase;letter-spacing:.06em;color:var(--cpd-accent,var(--accent));font-size:10px;font-weight:700}.cpd-quiz-title{color:var(--fg);font-size:12px;font-weight:500;line-height:1.35}.cpd-quiz-kind-ph{text-transform:uppercase;letter-spacing:.06em;color:var(--fg-muted);font-size:10px;font-weight:700}.cpd-quiz-ph-line{background:linear-gradient(90deg,var(--border) 25%,var(--border) 50%,var(--border) 75%);border-radius:4px;height:10px;margin-top:2px}@supports (color:color-mix(in lab,red,red)){.cpd-quiz-ph-line{background:linear-gradient(90deg,var(--border) 25%,color-mix(in srgb,var(--border) 50%,var(--muted)) 50%,var(--border) 75%)}}.cpd-quiz-ph-line{background-size:400px 100%;width:80%;animation:cpd-shimmer 1.4s linear infinite}.vocab-grid{grid-template-columns:repeat(auto-fill,minmax(180px,1fr));gap:10px;padding:4px 12px 8px;display:grid}.vocab-card{cursor:pointer;perspective:600px;text-align:left;-webkit-tap-highlight-color:transparent;background:0 0;border:none;outline:none;height:100px}.vocab-card:focus-visible .vc-inner{box-shadow:0 0 0 2px var(--accent)}.vc-inner{transform-style:preserve-3d;border-radius:8px;transition:transform .3s;position:absolute;inset:0}.vocab-card.flipped .vc-inner{transform:rotateY(180deg)}.vc-back,.vc-front{backface-visibility:hidden;border:1px solid var(--border);background:var(--card);border-radius:8px;flex-direction:column;justify-content:center;padding:10px 12px;transition:border-color .15s;display:flex;position:absolute;inset:0;overflow:hidden}.vocab-card:hover .vc-back,.vocab-card:hover .vc-front{border-color:var(--accent)}.vc-back{background:var(--accent-soft);transform:rotateY(180deg)}.vc-side-label{text-transform:uppercase;letter-spacing:.06em;color:var(--fg-muted);margin-bottom:4px;font-size:9px;font-weight:700}.vc-back .vc-side-label{color:var(--accent)}.vc-text{color:var(--fg);-webkit-line-clamp:3;-webkit-box-orient:vertical;font-size:12.5px;font-weight:500;line-height:1.4;display:-webkit-box;overflow:hidden}.vd-root{background:var(--bg);flex-direction:column;min-height:100dvh;display:flex}.vd-topbar{border-bottom:1px solid var(--border);flex-shrink:0;justify-content:space-between;align-items:center;gap:12px;padding:10px 16px;display:flex}.vd-back{color:var(--fg-muted);white-space:nowrap;flex-shrink:0;font-size:13px;text-decoration:none}.vd-back:hover{color:var(--fg)}.vd-topbar-center{flex:1;justify-content:center;align-items:center;gap:8px;display:flex}.vd-deck-lbl{color:var(--fg);font-size:14px;font-weight:600}.vd-round-badge{background:var(--accent-soft);color:var(--accent);border-radius:10px;padding:2px 8px;font-size:11px;font-weight:600}.vd-topbar-right{flex-shrink:0;gap:6px}.vd-icon-btn,.vd-topbar-right{align-items:center;display:flex}.vd-icon-btn{border:1px solid var(--border);cursor:pointer;width:30px;height:30px;color:var(--fg-muted);background:0 0;border-radius:8px;justify-content:center;transition:all .15s}.vd-icon-btn:hover{color:var(--fg);background:var(--bg-muted)}.vd-icon-btn.active{background:var(--accent-soft);color:var(--accent);border-color:var(--accent)}.vd-progress-bar{background:var(--border);flex-shrink:0;height:3px;display:flex;overflow:hidden}.vd-pb-know{background:#22c55e}.vd-pb-know,.vd-pb-learn{height:100%;transition:width .35s}.vd-pb-learn{background:#f59e0b}.vd-progress-meta{flex-shrink:0;justify-content:space-between;align-items:center;min-height:20px;padding:5px 16px 0;font-size:11px;font-weight:600;display:flex}.vdpm-know{color:#22c55e}.vdpm-learn{color:#f59e0b}.vdpm-counter{color:var(--fg-muted)}.vd-stage{flex-direction:column;flex:1;justify-content:center;align-items:center;gap:14px;min-height:0;padding:12px 16px 8px;display:flex}.vd-swipe-hint{display:none}@media (max-width:600px){.vd-swipe-hint{width:100%;max-width:480px;color:var(--fg-muted);justify-content:space-between;padding:0 4px;font-size:11px;display:flex}.vd-sh-center{color:var(--fg-muted);opacity:.6}}.vd-stack-wrap{width:100%;max-width:540px;padding-bottom:18px;position:relative}.vd-ghost{background:var(--card);border:1px solid var(--border);pointer-events:none;border-radius:14px;position:absolute}.vd-ghost-1{z-index:2;opacity:.6;height:14px;bottom:9px;left:2%;right:2%}.vd-ghost-2{z-index:1;opacity:.35;height:10px;bottom:2px;left:4.5%;right:4.5%}.vd-card-outer{z-index:3;width:100%;position:relative}.vd-card-outer.exit-right{animation:vdSlideRight .28s cubic-bezier(.4,0,1,1) forwards}.vd-card-outer.exit-left{animation:vdSlideLeft .28s cubic-bezier(.4,0,1,1) forwards}@keyframes vdSlideRight{to{opacity:0;transform:translate(110%)rotate(10deg)}}@keyframes vdSlideLeft{to{opacity:0;transform:translate(-110%)rotate(-10deg)}}.vd-card{cursor:pointer;perspective:1000px;-webkit-user-select:none;user-select:none;outline:none;width:100%;height:260px}@media (max-width:480px){.vd-card{height:200px}}.vd-card:focus-visible .vd-face{box-shadow:0 0 0 2px var(--accent)}.vd-inner{transform-style:preserve-3d;border-radius:14px;transition:transform .42s cubic-bezier(.4,0,.2,1);position:absolute;inset:0}.vd-card.flipped .vd-inner{transform:rotateY(180deg)}.vd-face{backface-visibility:hidden;border:1.5px solid var(--border);background:var(--card);border-radius:14px;flex-direction:column;justify-content:center;align-items:center;padding:20px 24px 14px;transition:border-color .15s;display:flex;position:absolute;inset:0}.vd-back,.vd-card:hover .vd-face{border-color:var(--accent)}.vd-back{background:var(--accent-soft);transform:rotateY(180deg)}@supports (color:color-mix(in lab,red,red)){.vd-back{border-color:color-mix(in oklch,var(--accent) 25%,var(--border))}}.vd-face-label{letter-spacing:.08em;text-transform:uppercase;color:var(--fg-muted);align-self:flex-start;margin-bottom:6px;font-size:9px;font-weight:700}.vd-back .vd-face-label{color:var(--accent)}.vd-face-text{color:var(--fg);text-align:center;flex:1;justify-content:center;align-items:center;max-height:150px;font-size:22px;font-weight:600;line-height:1.3;display:flex;overflow:hidden}@media (max-width:480px){.vd-face-text{font-size:17px}}.vd-face-footer{justify-content:space-between;align-items:center;width:100%;min-height:22px;margin-top:6px;display:flex}.vd-hint-txt{color:var(--fg-muted);font-size:11px}.vd-kbd-hint{background:var(--bg-muted);border:1px solid var(--border);border-radius:4px;padding:1px 5px;font-size:10px}.vd-kbd-hint,.vd-star-btn{color:var(--fg-muted);font-weight:600}.vd-star-btn{border:1px solid var(--border);cursor:pointer;background:0 0;border-radius:6px;align-items:center;gap:4px;padding:3px 8px;font-size:11px;transition:all .15s;display:flex}.vd-star-btn:hover{color:#f59e0b;border-color:#f59e0b}.vd-star-btn.on{color:#d97706;background:oklch(96% .06 80);border-color:#f59e0b}.dark .vd-star-btn.on{background:oklch(28% .07 80)}.vd-actions{justify-content:center;align-items:stretch;gap:8px;width:100%;max-width:540px;display:flex}.vd-act-btn{cursor:pointer;border:none;border-radius:10px;flex-direction:column;align-items:center;gap:3px;min-width:90px;padding:10px 18px;font-size:12px;font-weight:600;transition:all .15s;display:flex;position:relative}.vd-act-check{font-size:17px;line-height:1}.vd-act-lbl{font-size:11px;font-weight:600}.vd-act-key{background:var(--bg);border:1px solid var(--border);color:var(--fg-muted);border-radius:3px;padding:0 4px;font-size:9px;font-weight:700;position:absolute;top:-7px;right:-3px}.vd-act-learn{color:#ef4444;background:oklch(97% .03 25)}.vd-act-learn:hover:not(:disabled){background:oklch(93% .06 25)}.dark .vd-act-learn{background:oklch(24% .05 25)}.dark .vd-act-learn:hover:not(:disabled){background:oklch(29% .08 25)}.vd-act-know{color:#16a34a;background:oklch(97% .03 145)}.vd-act-know:hover:not(:disabled){background:oklch(93% .06 145)}.dark .vd-act-know{background:oklch(24% .05 145)}.dark .vd-act-know:hover:not(:disabled){background:oklch(29% .08 145)}.vd-act-know.dim,.vd-act-know:disabled,.vd-act-learn.dim,.vd-act-learn:disabled{opacity:.32;cursor:not-allowed}.vd-act-skip{border:1px solid var(--border);color:var(--fg-muted);background:0 0;min-width:64px}.vd-act-skip:hover:not(:disabled){background:var(--bg-muted);color:var(--fg)}.vd-act-skip:disabled{opacity:.4;cursor:not-allowed}.vd-kb-row{color:var(--fg-muted);opacity:.75;flex-wrap:wrap;justify-content:center;align-items:center;gap:7px;font-size:11px;display:flex}@media (max-width:500px){.vd-kb-row{display:none}}.vd-kb-dot{opacity:.4}.vd-kb-link{color:var(--fg-muted);cursor:pointer;text-underline-offset:2px;background:0 0;border:none;padding:0;font-size:11px;text-decoration:underline}.vd-kb-link:hover{color:var(--fg)}.vd-upcoming{border-top:1px solid var(--border);flex-shrink:0;padding:8px 16px 12px}.vd-up-lbl{letter-spacing:.07em;text-transform:uppercase;color:var(--fg-muted);margin-bottom:7px;font-size:9px;font-weight:700;display:block}.vd-up-strip{scrollbar-width:none;gap:7px;padding-bottom:2px;display:flex;overflow-x:auto}.vd-up-strip::-webkit-scrollbar{display:none}.vd-up-card{background:var(--card);border:1px solid var(--border);color:var(--fg-muted);white-space:nowrap;text-overflow:ellipsis;border-radius:7px;flex-shrink:0;max-width:130px;padding:5px 9px;font-size:11px;overflow:hidden}.vd-up-card.know{color:#16a34a;background:oklch(97% .03 145);border-color:#22c55e}.vd-up-card.learn{color:#d97706;background:oklch(97% .04 80);border-color:#f59e0b}.dark .vd-up-card.know{color:#4ade80;background:oklch(23% .04 145)}.dark .vd-up-card.learn{color:#fbbf24;background:oklch(23% .04 80)}.vd-up-more{color:var(--fg-muted);white-space:nowrap;flex-shrink:0;padding:5px 9px;font-size:11px}.vd-overlay{z-index:100;background:#00000073;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.vd-shortcut-panel{background:var(--card);border:1px solid var(--border);border-radius:14px;flex-direction:column;gap:12px;width:280px;padding:20px 24px;display:flex}.vdsp-title{color:var(--fg);margin:0;font-size:14px;font-weight:700}.vdsp-row{align-items:center;gap:12px;display:flex}.vdsp-key{background:var(--bg-muted);border:1px solid var(--border);text-align:center;min-width:44px;color:var(--fg);border-radius:5px;padding:2px 7px;font-size:11px;font-weight:700}.vdsp-close,.vdsp-desc{color:var(--fg-muted);font-size:13px}.vdsp-close{border:1px solid var(--border);cursor:pointer;background:0 0;border-radius:8px;margin-top:4px;padding:8px;font-weight:600;transition:all .15s}.vdsp-close:hover{background:var(--bg-muted);color:var(--fg)}.vd-complete{text-align:center;flex-direction:column;flex:1;justify-content:center;align-items:center;gap:16px;width:100%;max-width:400px;margin:0 auto;padding:40px 24px;display:flex}.vdc-emoji{font-size:52px;line-height:1}.vdc-title{color:var(--fg);margin:0;font-size:26px;font-weight:800}.vdc-sub{color:var(--fg-muted);margin:0;font-size:14px}.vdc-score{align-items:center;gap:24px;display:flex}.vdcs-know,.vdcs-learn{flex-direction:column;align-items:center;gap:4px;display:flex}.vdcs-num{font-size:44px;font-weight:900;line-height:1}.vdcs-lbl{text-transform:uppercase;letter-spacing:.07em;color:var(--fg-muted);font-size:11px;font-weight:700}.vdcs-know .vdcs-num{color:#22c55e}.vdcs-learn .vdcs-num{color:#f59e0b}.vdcs-divider{background:var(--border);width:1px;height:48px}.vdc-bar-wrap{background:var(--border);border-radius:99px;width:100%;max-width:280px;height:8px;overflow:hidden}.vdc-bar-fill{background:#22c55e;border-radius:99px;height:100%;transition:width .8s cubic-bezier(.4,0,.2,1)}.vdc-actions{flex-direction:column;gap:10px}.vdc-actions,.vdc-btn{align-items:center;width:100%;display:flex}.vdc-btn{cursor:pointer;border:none;border-radius:10px;justify-content:center;gap:7px;max-width:300px;padding:12px;font-size:14px;font-weight:600;transition:all .15s}.vdc-btn.primary{background:var(--accent);color:#fff}.vdc-btn.primary:hover{opacity:.88}.vdc-btn.ghost{border:1.5px solid var(--border);color:var(--fg);background:0 0}.vdc-btn.ghost:hover{background:var(--bg-muted)}.vdc-back-link{color:var(--fg-muted);margin-top:4px;font-size:13px;text-decoration:none}.vdc-back-link:hover{color:var(--fg)}.rv-root{background:var(--bg);flex-direction:column;min-height:100dvh;display:flex;overflow-x:hidden}.rv-topbar{border-bottom:1px solid var(--border);flex-shrink:0;align-items:center;gap:12px;padding:10px 16px;display:flex}.rv-back{color:var(--fg-muted);white-space:nowrap;flex-shrink:0;font-size:13px;text-decoration:none}.rv-back:hover{color:var(--fg)}.rv-topbar-title{color:var(--fg);text-align:center;text-overflow:ellipsis;white-space:nowrap;flex:1;font-size:13px;font-weight:600;overflow:hidden}.rv-topbar-right{flex-shrink:0}.rv-section-counter{color:var(--fg-muted);font-size:12px;font-weight:600}.rv-progress-bar{background:var(--border);flex-shrink:0;height:3px}.rv-progress-fill{background:var(--accent);height:100%;transition:width .5s}.rv-dots{flex-wrap:wrap;flex-shrink:0;justify-content:center;align-items:center;gap:5px;padding:10px 16px 4px;display:flex}.rv-dot{cursor:pointer;background:var(--border);border:none;border-radius:50%;width:8px;height:8px;padding:0;transition:all .2s}.rv-dot.done{background:var(--accent);transform:scale(1)}.rv-dot.active{background:var(--accent);border-radius:4px;width:20px}.rv-dot.locked{background:var(--border);cursor:default;opacity:.5}.rv-dot:hover:not(.locked){background:var(--accent);opacity:.7}.rv-content{flex:1;width:100%;max-width:680px;margin:0 auto;padding:20px 16px 40px;overflow-y:auto}.rv-section{background:var(--card);border:1.5px solid var(--border);border-radius:16px;flex-direction:column;gap:18px;padding:24px;animation:fadeSlideUp .3s both;display:flex}.rv-section.done{border-color:var(--accent)}@supports (color:color-mix(in lab,red,red)){.rv-section.done{border-color:color-mix(in oklch,var(--accent) 35%,var(--border))}}.rv-sec-header{justify-content:space-between}.rv-sec-header,.rv-sec-meta{align-items:center;display:flex}.rv-sec-meta{gap:8px}.rv-sec-num{letter-spacing:.1em;color:var(--fg-muted);font-variant-numeric:tabular-nums;font-size:10px;font-weight:800}.rv-sec-cat{letter-spacing:.06em;text-transform:uppercase;border:1px solid;border-radius:99px;padding:2px 7px;font-size:10px;font-weight:700}.cat-pharm{color:oklch(45% .12 290);background:oklch(95% .03 290);border-color:oklch(85% .07 290)}.cat-path{color:oklch(45% .12 25);background:oklch(95% .03 25);border-color:oklch(85% .07 25)}.cat-phys{color:oklch(45% .12 230);background:oklch(95% .03 230);border-color:oklch(85% .07 230)}.cat-anat{color:oklch(45% .12 80);background:oklch(96% .04 80);border-color:oklch(87% .07 80)}.cat-bio{color:oklch(42% .12 145);background:oklch(95% .03 145);border-color:oklch(85% .07 145)}.cat-micro{color:oklch(42% .12 200);background:oklch(95% .03 200);border-color:oklch(85% .07 200)}.cat-default{background:var(--bg-muted);color:var(--fg-muted);border-color:var(--border)}.dark .cat-pharm{color:oklch(80% .1 290);background:oklch(24% .05 290);border-color:oklch(35% .08 290)}.dark .cat-path{color:oklch(80% .1 25);background:oklch(24% .05 25);border-color:oklch(35% .08 25)}.dark .cat-phys{color:oklch(80% .1 230);background:oklch(24% .05 230);border-color:oklch(35% .08 230)}.dark .cat-anat{color:oklch(80% .1 80);background:oklch(25% .06 80);border-color:oklch(36% .08 80)}.dark .cat-bio{color:oklch(78% .1 145);background:oklch(23% .05 145);border-color:oklch(34% .08 145)}.dark .cat-micro{color:oklch(78% .1 200);background:oklch(23% .05 200);border-color:oklch(34% .08 200)}.rv-sec-done-badge{color:var(--accent);background:var(--accent-soft);border-radius:99px;align-items:center;gap:5px;padding:3px 9px;font-size:11px;font-weight:700;display:flex}.rv-sec-objective{color:var(--fg);margin:0;font-size:20px;font-weight:700;line-height:1.35}@media (max-width:480px){.rv-sec-objective{font-size:17px}}.rv-sub-label{letter-spacing:.07em;text-transform:uppercase;color:var(--fg-muted);align-items:center;gap:5px;margin-bottom:8px;font-size:10px;font-weight:800;display:flex}.rv-kc-list{flex-direction:column;gap:8px;display:flex}.rv-key-card{background:var(--bg-muted);border:1px solid var(--border);border-radius:10px;padding:12px 14px}.rv-kc-top{justify-content:space-between;align-items:center;margin-bottom:6px;display:flex}.rv-kc-lbl{letter-spacing:.06em;text-transform:uppercase;color:var(--fg-muted);font-size:10px;font-weight:700}.rv-kc-toggle{cursor:pointer;color:var(--accent);background:0 0;border:none;align-items:center;gap:4px;padding:0;font-size:11px;font-weight:600;display:flex}.rv-kc-toggle:hover{opacity:.8}.rv-kc-prompt{color:var(--fg);margin:0;font-size:13px;line-height:1.5}.rv-kc-answer{border-top:1px solid var(--border);margin-top:10px;padding-top:10px}.rv-kc-answer p{color:var(--fg);margin:0;font-size:13px;line-height:1.55}.rv-kc-answer-lbl{letter-spacing:.08em;text-transform:uppercase;color:var(--accent);margin-bottom:4px;font-size:9px;font-weight:800}.rv-kc-explanation{color:var(--fg-muted);font-size:12px;font-style:italic;margin-top:6px!important}.rv-vocab-chips{flex-wrap:wrap;gap:7px;display:flex}.rv-vocab-chip{border:1.5px solid var(--border);background:var(--card);cursor:pointer;color:var(--fg);border-radius:99px;align-items:center;gap:6px;max-width:100%;padding:5px 12px;font-size:13px;font-weight:500;transition:all .15s;display:flex}.rv-vocab-chip.open,.rv-vocab-chip:hover{border-color:var(--accent)}.rv-vocab-chip.open{background:var(--accent-soft);border-radius:10px;flex-direction:column;align-items:flex-start;gap:4px;padding:8px 12px}.rv-chip-term{font-weight:600}.rv-chip-def{color:var(--fg-muted);font-size:12px;line-height:1.4}.rv-chip-icon{color:var(--fg-muted);flex-shrink:0;margin-left:auto}.rv-vocab-chip.open .rv-chip-icon{align-self:flex-end}.rv-qc{background:oklch(97% .02 230);border:1.5px solid oklch(87% .05 230);border-radius:12px;padding:16px;transition:all .2s}.dark .rv-qc{background:oklch(22% .03 230);border-color:oklch(32% .05 230)}.rv-qc.correct{background:oklch(96% .03 145);border-color:oklch(82% .08 145);animation:pulseGreen .5s}.rv-qc.wrong{border-color:oklch(82% .08 25);animation:pulseRed .45s}.dark .rv-qc.correct{background:oklch(22% .04 145);border-color:oklch(35% .08 145)}.dark .rv-qc.wrong{border-color:oklch(35% .08 25)}.rv-qc.shake{animation:shake .55s}.rv-qc-header{letter-spacing:.07em;text-transform:uppercase;color:oklch(50% .1 230);align-items:center;gap:5px;margin-bottom:8px;font-size:10px;font-weight:800;display:flex}.dark .rv-qc-header{color:oklch(72% .08 230)}.rv-qc-q{color:var(--fg);margin:0 0 12px;font-size:14px;font-weight:600;line-height:1.45}.rv-qc-options{flex-direction:column;gap:6px;display:flex}.rv-qc-opt{background:var(--card);border:1.5px solid var(--border);cursor:pointer;text-align:left;color:var(--fg);border-radius:8px;align-items:center;gap:10px;padding:9px 12px;font-size:13px;transition:all .15s;display:flex}.rv-qc-opt:hover:not(:disabled){background:oklch(97% .02 230);border-color:oklch(70% .08 230)}.dark .rv-qc-opt:hover:not(:disabled){background:oklch(25% .03 230)}.rv-qc-opt.opt-selected{background:oklch(94% .04 230);border-color:oklch(60% .12 230)}.rv-qc-opt.opt-correct{color:oklch(38% .12 145);background:oklch(96% .04 145);border-color:#22c55e}.rv-qc-opt.opt-wrong{color:oklch(38% .12 25);background:oklch(96% .04 25);border-color:#ef4444;animation:shake .5s}.dark .rv-qc-opt.opt-correct{color:oklch(75% .1 145);background:oklch(22% .05 145)}.dark .rv-qc-opt.opt-wrong{color:oklch(75% .1 25);background:oklch(22% .05 25)}.rv-qc-letter{border:1.5px solid var(--border);border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:18px;height:18px;font-size:10px;font-weight:800;display:flex}.rv-qc-text{flex:1}.rv-qc-tick{color:#22c55e;flex-shrink:0}.rv-qc-x{color:#ef4444;flex-shrink:0;font-size:14px}.rv-qc-footer{align-items:center;gap:10px;margin-top:12px;display:flex}.rv-qc-submit{color:#fff;cursor:pointer;background:oklch(50% .1 230);border:none;border-radius:8px;flex:1;padding:9px;font-size:13px;font-weight:700;transition:opacity .15s}.rv-qc-submit:hover:not(:disabled){opacity:.88}.rv-qc-submit:disabled{opacity:.35;cursor:not-allowed}.rv-qc-skip{color:var(--fg-muted);cursor:pointer;background:0 0;border:none;padding:0;font-size:12px}.rv-qc-skip:hover{color:var(--fg)}.rv-qc-result{border-radius:8px;align-items:flex-start;gap:8px;margin-top:12px;padding:10px 12px;font-size:13px;line-height:1.4;display:flex}.rv-qc-result.res-correct{color:oklch(38% .12 145);background:oklch(95% .05 145)}.rv-qc-result.res-wrong{color:oklch(38% .12 25);background:oklch(95% .05 25)}.dark .rv-qc-result.res-correct{color:oklch(78% .1 145);background:oklch(22% .05 145)}.dark .rv-qc-result.res-wrong{color:oklch(78% .1 25);background:oklch(22% .05 25)}.rv-res-icon{flex-shrink:0;font-size:16px;line-height:1}.rv-qc-result em{opacity:.85;font-style:italic}.rv-qc-result strong{font-weight:700}.rv-continue-btn{cursor:pointer;border:none;border-radius:10px;align-self:flex-end;padding:10px 22px;font-size:14px;font-weight:700;transition:all .2s}.rv-continue-btn.ready{background:var(--accent);color:#fff;animation:popInSmall .35s cubic-bezier(.34,1.56,.64,1) both}.rv-continue-btn.ready:hover{opacity:.88;transform:translateY(-1px)}.rv-continue-btn.waiting{background:var(--border);color:var(--fg-muted);cursor:not-allowed;opacity:.5}.rv-complete{text-align:center;flex-direction:column;flex:1;justify-content:center;align-items:center;gap:18px;width:100%;max-width:420px;margin:0 auto;padding:40px 24px;display:flex}.rvc-glow{pointer-events:none;background:radial-gradient(circle,oklch(60% .14 274/.12),#0000 70%);border-radius:50%;width:400px;height:400px;position:fixed;top:-100px;left:50%;transform:translate(-50%)}.rvc-emoji{font-size:56px;line-height:1}.rvc-title{color:var(--fg);margin:0;font-size:28px;font-weight:800}.rvc-sub{color:var(--fg-muted);max-width:300px;margin:0;font-size:14px}.rvc-stats{gap:24px}.rvc-stat,.rvc-stats{align-items:center;display:flex}.rvc-stat{flex-direction:column;gap:4px}.rvcs-num{color:var(--accent);font-size:38px;font-weight:900;line-height:1}.rvcs-lbl{letter-spacing:.07em;font-size:11px;font-weight:700}.rvc-now-lbl,.rvcs-lbl{text-transform:uppercase;color:var(--fg-muted)}.rvc-now-lbl{letter-spacing:.06em;margin:4px 0 -4px;font-size:12px;font-weight:600}.rvc-actions{flex-direction:column;align-items:stretch;gap:10px;width:100%;display:flex}.rvc-btn{border-radius:11px;justify-content:center;align-items:center;gap:8px;padding:13px 20px;font-size:14px;font-weight:700;text-decoration:none;transition:all .15s;display:flex}.rvc-btn.vocab{background:var(--accent-soft);color:var(--accent);border:1.5px solid var(--accent)}@supports (color:color-mix(in lab,red,red)){.rvc-btn.vocab{border:1.5px solid color-mix(in oklch,var(--accent) 30%,var(--border))}}.rvc-btn.vocab:hover{background:var(--accent);color:#fff}.rvc-btn.cards{color:oklch(42% .12 230);background:oklch(95% .04 230);border:1.5px solid oklch(82% .07 230)}.rvc-btn.cards:hover{color:#fff;background:oklch(45% .12 230)}.dark .rvc-btn.cards{color:oklch(78% .1 230);background:oklch(23% .05 230);border-color:oklch(34% .07 230)}.rvc-btn.quiz{color:oklch(44% .12 80);background:oklch(95% .04 80);border:1.5px solid oklch(84% .08 80)}.rvc-btn.quiz:hover{color:#fff;background:oklch(50% .14 80)}.dark .rvc-btn.quiz{color:oklch(80% .1 80);background:oklch(25% .06 80);border-color:oklch(38% .08 80)}.rvc-back-link{color:var(--fg-muted);margin-top:6px;font-size:13px;text-decoration:none}.rvc-back-link:hover{color:var(--fg)}.start-review.secondary{background:var(--card);border:1px solid var(--border);color:var(--fg);border-radius:8px;padding:7px 14px;font-size:13px;font-weight:600}.start-review.secondary:hover{border-color:var(--accent);color:var(--accent)}.crs-empty-tight{text-align:center;color:var(--fg-muted);align-items:center;gap:6px;padding:24px 16px;font-size:13px}.crs-empty-tight,.lec-page{flex-direction:column;display:flex}.lec-page{gap:18px;max-width:1200px;margin:0 auto}.lec-hdr{flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:16px;display:flex}.lec-hdr-main{flex:1;min-width:0}.lec-title-row{gap:12px;margin-bottom:8px}.lec-title,.lec-title-row{flex-wrap:wrap;align-items:center;display:flex}.lec-title{letter-spacing:-.02em;color:var(--fg);gap:8px;margin:0;font-family:Instrument Serif,serif;font-size:24px;font-weight:400}.lec-title .num{color:var(--fg-muted);font-family:JetBrains Mono,monospace;font-size:13px;font-weight:500}.lec-title .dot{color:var(--fg-muted);opacity:.5}.lec-sub{color:var(--fg-muted);flex-wrap:wrap;align-items:center;gap:6px;font-size:13px;display:flex}.lec-sub .sep{opacity:.5}.lec-sub .due{color:var(--accent);font-weight:500}.lec-srcbadge{letter-spacing:.08em;text-transform:uppercase;border-radius:4px;align-items:center;padding:2px 7px;font-family:JetBrains Mono,monospace;font-size:9.5px;font-weight:600;display:inline-flex}.lec-srcbadge.audio{background:var(--m2-soft);color:var(--m2-fg)}.lec-srcbadge.pdf{background:var(--destructive-soft);color:oklch(50% .18 25)}[data-theme=dark] .lec-srcbadge.pdf{color:oklch(78% .13 25)}.lec-srcbadge.text{background:var(--muted);color:var(--fg-muted)}.lec-hdr-actions{flex-shrink:0;align-items:center;gap:8px;display:flex}.lec-regen{color:var(--warning-fg);background:var(--warning-soft);border-radius:6px;align-items:center;gap:6px;padding:4px 10px;font-size:12px;display:inline-flex}.lec-regen .d{background:currentColor;border-radius:50%;width:6px;height:6px;animation:pulse-dot 1.2s ease-in-out infinite}.lec-banner{border-radius:var(--r-card);border:1px solid var(--border);display:flex;overflow:hidden}.lec-banner .rule{flex-shrink:0;width:4px}.lec-banner.inprog .rule{background:var(--info)}.lec-banner.failed .rule{background:var(--destructive)}.lec-banner .content{flex:1;padding:18px 20px}.lec-banner .head{margin-bottom:14px}.lec-banner .title{color:var(--fg);margin-bottom:3px;font-size:14px;font-weight:600}.lec-banner .sub{color:var(--fg-muted);font-size:13px;line-height:1.5}.indet{background:var(--muted-2);border-radius:2px;height:4px;margin-bottom:14px;overflow:hidden}.indet .fill{background:var(--info);border-radius:2px;width:35%;height:100%;animation:indet-slide 1.6s ease-in-out infinite}@keyframes indet-slide{0%{transform:translate(-100%)}to{transform:translate(300%)}}.milestones{flex-wrap:wrap;gap:14px;display:flex}.ms{color:var(--fg-muted);align-items:center;gap:6px;font-size:12px;display:flex}.ms.done{color:var(--m3-fg)}.ms.cur{color:var(--fg);font-weight:500}.ms .dot{background:var(--muted);width:20px;height:20px;color:var(--fg-muted);border-radius:50%;flex-shrink:0;place-items:center;font-family:JetBrains Mono,monospace;font-size:9px;display:grid}.ms.done .dot{background:var(--success-soft);color:var(--m3-fg)}.ms.cur .dot{background:var(--accent);color:var(--accent-fg);animation:pulse-dot 1.2s ease-in-out infinite}.errbox{background:var(--muted);border:1px solid var(--border);color:var(--fg);white-space:pre-wrap;word-break:break-all;border-radius:8px;margin-bottom:14px;padding:12px 14px;font-family:JetBrains Mono,monospace;font-size:11px;line-height:1.6}.errbox .details-btn{color:var(--accent);cursor:pointer;font:inherit;background:0 0;border:0;margin-left:10px;font-family:JetBrains Mono,monospace;font-size:11px;display:inline}.lec-banner .actions{gap:8px;display:flex}.tb-btn.ghost-danger{color:var(--destructive);border-color:var(--destructive)}.tb-btn.ghost-danger:hover{background:var(--destructive-soft)}.lec-audio{background:var(--card);border:1px solid var(--border);border-radius:var(--r-card);z-index:10;position:sticky;top:0;overflow:hidden}.lec-audio.unavail{align-items:center;gap:12px;padding:14px 18px;display:flex}.lec-audio.unavail .ic{color:var(--fg-muted);display:inline-flex}.lec-audio.unavail .info .title{color:var(--fg);font-size:13.5px;font-weight:500}.lec-audio.unavail .info .sub{color:var(--fg-muted);margin-top:2px;font-size:12.5px}.lec-audio.unavail .info .sub a{color:var(--accent);text-underline-offset:2px;text-decoration:underline}.lec-audio .player{flex-wrap:wrap;align-items:center;gap:12px;padding:12px 16px;display:flex}.controls-left{align-items:center;gap:4px;display:flex}.controls-left .seek{width:32px;height:32px;color:var(--fg-muted);cursor:pointer;background:0 0;border:0;border-radius:6px;justify-content:center;align-items:center;display:inline-flex}.controls-left .seek:hover{background:var(--muted);color:var(--fg)}.controls-left .play{background:var(--fg);width:36px;height:36px;color:var(--bg);cursor:pointer;border:0;border-radius:50%;justify-content:center;align-items:center;transition:transform .1s;display:inline-flex}.controls-left .play:hover{transform:scale(1.06)}.scrubber{flex:1;align-items:center;gap:8px;min-width:120px;display:flex}.scrubber .elapsed,.scrubber .remaining{color:var(--fg-muted);white-space:nowrap;flex-shrink:0;font-family:JetBrains Mono,monospace;font-size:10.5px}.scrubber .track{background:var(--muted-2);cursor:pointer;border-radius:2px;flex:1;height:4px;position:relative}.scrubber .track .fill{background:var(--fg);pointer-events:none;border-radius:2px;height:100%}.scrubber .track .thumb{background:var(--fg);pointer-events:none;border-radius:50%;width:12px;height:12px;position:absolute;top:50%;transform:translate(-50%,-50%)}.controls-right{flex-shrink:0;align-items:center;gap:6px;display:flex}.transcript-toggle{border:1px solid var(--border);height:28px;color:var(--fg-muted);font:inherit;cursor:pointer;background:0 0;border-radius:6px;align-items:center;gap:5px;padding:0 10px;font-size:12px;transition:background .12s;display:inline-flex}.transcript-toggle:hover{background:var(--muted);color:var(--fg)}.transcript-toggle.on{background:var(--accent-soft);color:var(--accent-soft-fg);border-color:#0000}.transcript-toggle .ic{display:inline-flex}.speed-btns{border:1px solid var(--border);background:var(--muted);border-radius:6px;display:flex;overflow:hidden}.speed-btns button{height:28px;color:var(--fg-muted);cursor:pointer;background:0 0;border:0;padding:0 8px;font-family:JetBrains Mono,monospace;font-size:10.5px}.speed-btns button:hover{background:var(--muted-2)}.speed-btns button.on{background:var(--card);color:var(--fg);font-weight:600}.controls-right .help-btn{border:1px solid var(--border);width:28px;height:28px;color:var(--fg-muted);cursor:pointer;background:0 0;border-radius:6px;justify-content:center;align-items:center;display:inline-flex}.controls-right .help-btn:hover{background:var(--muted);color:var(--fg)}.transcript-panel{border-top:1px solid var(--border);padding:16px 18px 0;position:relative}.t-head{justify-content:space-between;align-items:center;margin-bottom:12px;display:flex}.t-title{color:var(--fg);font-size:13.5px;font-weight:600}.edit-t{color:var(--accent);text-underline-offset:2px;font-size:12.5px;text-decoration:underline}.t-body{max-height:200px;color:var(--fg);font-size:13.5px;line-height:1.7;position:relative;overflow:hidden}.t-body p{margin:0 0 10px}.t-body .ts{color:var(--fg-muted);margin-right:8px;font-family:JetBrains Mono,monospace;font-size:10.5px}.t-fade{background:linear-gradient(transparent,var(--card));pointer-events:none;height:60px;position:absolute;bottom:0;left:0;right:0}.t-foot{padding:10px 0 14px}.t-foot a{color:var(--accent);text-underline-offset:2px;font-size:12.5px;text-decoration:underline}.lec-section-label{letter-spacing:.14em;text-transform:uppercase;color:var(--fg-muted);font-family:JetBrains Mono,monospace;font-size:10px;font-weight:500}.lec-section-label .hint{letter-spacing:0;text-transform:none;font-style:italic;font-weight:400}.lec-accordion{flex-direction:column;gap:2px;display:flex}.lec-obj{background:var(--card);border:1px solid var(--border);border-radius:var(--r-card);overflow:hidden}.lec-obj.open{border-color:oklch(.54 var(--accent-c) var(--accent-h)/.35)}.lec-obj>.head,.lec-obj>button.head{gap:4px;padding:4px 8px 4px 0}.lec-obj>.head,.lec-obj>.head .head-toggle,.lec-obj>button.head{color:var(--fg);background:0 0;border:0;align-items:center;display:flex}.lec-obj>.head .head-toggle{cursor:pointer;text-align:left;min-width:0;font:inherit;border-radius:8px;flex:1;justify-content:space-between;gap:10px;padding:9px 10px 9px 16px;transition:background .12s}.lec-obj>.head .head-toggle:hover{background:var(--muted)}.lec-obj>.head .head-toggle .left{flex:1;align-items:flex-start;gap:10px;min-width:0;display:flex}.lec-obj>.head .head-toggle .obj-num{color:var(--fg-muted);flex-shrink:0;font-family:Instrument Serif,serif;font-size:18px;line-height:1.3}.lec-obj>.head .head-toggle .obj-text{color:var(--fg);text-align:left;padding-top:1px;font-size:13.5px;line-height:1.5}.lec-obj>.head .head-toggle .right{flex-shrink:0;align-items:center;gap:6px;display:flex}.lec-obj>.head>.ia{margin-right:6px}.usmle-badge{letter-spacing:.04em;background:var(--muted);color:var(--fg-muted);white-space:nowrap;padding:2px 7px;font-family:JetBrains Mono,monospace}.edited-badge,.usmle-badge{border-radius:4px;font-size:9.5px}.edited-badge{background:var(--warning-soft);color:var(--warning-fg);padding:2px 6px}.due-badge{background:var(--accent-soft);color:var(--accent-soft-fg);border-radius:4px;padding:2px 7px;font-size:9.5px}.cards-n-badge,.due-badge{font-family:JetBrains Mono,monospace}.cards-n-badge{color:var(--fg-muted);font-size:10px}.chev-icon{color:var(--fg-muted);transition:transform .2s;display:inline-flex}.chev-icon.open{transform:rotate(180deg)}.lec-obj .obj-body{padding:4px 12px 12px}.empty-card,.lec-obj .obj-body{flex-direction:column;gap:8px;display:flex}.empty-card{text-align:center;color:var(--fg-muted);align-items:center;padding:18px;font-size:13px}.lec-card{background:var(--bg-2);border:1px solid var(--border-2);border-radius:10px;overflow:hidden}.lec-card.opened{background:var(--card);border-color:var(--border)}.lec-card .card-head{justify-content:space-between;align-items:center;padding:10px 14px 0;display:flex}.lec-card .card-head .left{align-items:center;gap:6px;display:flex}.lec-card .card-head .actions{align-items:center;gap:2px;display:flex}.card-kind{letter-spacing:.06em;text-transform:uppercase;background:var(--muted);color:var(--fg-muted);border-radius:4px;padding:2px 7px;font-family:JetBrains Mono,monospace;font-size:9.5px;font-weight:500}.card-kind.mcq{background:var(--m2-soft);color:var(--m2-fg)}.card-kind.vignette{background:var(--accent-soft);color:var(--accent-soft-fg)}.card-kind.cloze{background:var(--m3-soft);color:var(--m3-fg)}.card-kind.short_answer{background:var(--muted);color:var(--fg-muted)}.card-edited{background:var(--warning-soft);color:var(--warning-fg)}.card-edited,.card-level{border-radius:4px;padding:2px 6px;font-size:9.5px}.card-level{text-transform:uppercase;letter-spacing:.04em;font-weight:600}.card-level.vocab{background:var(--muted);color:var(--fg-muted)}.card-level.mechanism{color:oklch(50% .12 260);background:oklch(93% .06 260/.3)}.card-level.application{color:oklch(45% .12 150);background:oklch(93% .06 150/.3)}.ia{width:28px;height:28px;color:var(--fg-muted);cursor:pointer;background:0 0;border:0;border-radius:6px;justify-content:center;align-items:center;transition:background .12s;display:inline-flex}.ia:hover{background:var(--muted);color:var(--fg)}.ia.on{color:var(--warning)}.card-prompt{color:var(--fg);padding:10px 14px;font-size:13.5px;line-height:1.65}.cloze-blank{background:var(--accent-soft);color:var(--accent-soft-fg);border-radius:4px;padding:1px 6px;font-weight:500;display:inline-block}.card-reveal{width:100%;font:inherit;color:var(--fg-muted);cursor:pointer;text-align:left;border:0;border-top:1px solid var(--border-2);background:0 0;align-items:center;gap:6px;padding:8px 14px;font-size:12.5px;transition:background .12s,color .12s;display:flex}.card-reveal:hover{background:var(--muted);color:var(--fg)}.lec-card.opened .card-reveal{border-top-color:var(--border)}.card-answer{border-top:1px solid var(--border);padding:14px}.choices{flex-direction:column;gap:5px;margin:0 0 12px;padding:0;list-style:none;display:flex}.choices li{color:var(--fg);border:1px solid var(--border-2);background:var(--bg-2);border-radius:7px;align-items:flex-start;gap:8px;padding:8px 10px;font-size:13.5px;display:flex}.choices li.correct{border-color:var(--m3);background:var(--success-soft);color:var(--m3-fg)}.choices li .mark{flex-shrink:0;justify-content:center;align-items:center;width:16px;height:16px;margin-top:2px;display:inline-flex}.dotcircle{border:1.5px solid var(--fg-muted);border-radius:50%;width:8px;height:8px;display:inline-block}.ans-text{color:var(--fg);margin-bottom:10px;font-size:13.5px;line-height:1.65}.ans-lbl{letter-spacing:.08em;text-transform:uppercase;color:var(--fg-muted);margin-bottom:4px;font-family:JetBrains Mono,monospace;font-size:9.5px;display:block}.explanation{background:var(--info-soft);color:var(--fg);border-radius:8px;margin-bottom:10px;padding:10px 12px;font-size:13px;line-height:1.6}.exp-lbl{letter-spacing:.08em;text-transform:uppercase;color:var(--m2-fg);margin-bottom:4px;font-family:JetBrains Mono,monospace;font-size:9.5px;display:block}.source-toggle{margin-top:4px}.src-btn{font:inherit;color:var(--fg-muted);cursor:pointer;background:0 0;border:0;align-items:center;gap:6px;padding:4px 0;font-size:12px}.src-btn,.src-btn .ic{display:inline-flex}.source-toggle.open .src-btn,.src-btn:hover{color:var(--fg)}blockquote.snippet{border-left:3px solid var(--border);color:var(--fg-muted);margin:8px 0 0;padding:10px 12px;font-size:13px;font-style:italic;line-height:1.6}blockquote.snippet .ts{color:var(--accent);margin-right:8px;font-family:JetBrains Mono,monospace;font-size:10px;font-style:normal}.lec-skeletons{flex-direction:column;gap:2px;display:flex}.lec-skel-item{background:var(--card);border:1px solid var(--border);border-radius:var(--r-card);align-items:center;gap:12px;padding:13px 16px;display:flex}.lec-skel-item .skel-num{color:var(--fg-muted);flex-shrink:0;font-family:Instrument Serif,serif;font-size:18px}.lec-skel-item .skel-lines{flex-direction:column;flex:1;gap:8px;display:flex}.skl-line{border-radius:4px;height:14px}.skl-pill{border-radius:6px;flex-shrink:0;width:60px;height:20px}.stat-tile .sub.warn{color:oklch(55% .14 65)}[data-theme=dark] .stat-tile .sub.warn{color:oklch(86% .1 75)}.stat-tile .sub.flame{color:oklch(55% .14 35)}[data-theme=dark] .stat-tile .sub.flame{color:oklch(85% .1 35)}.hero-cta-actions{flex-direction:column;align-items:flex-start;gap:4px;display:flex}@media (min-width:768px){.hero-cta-actions{align-items:flex-end}}.hero-ghost{color:var(--fg-muted);font:inherit;cursor:pointer;background:0 0;border:1px solid #0000;border-radius:6px;align-items:center;gap:4px;padding:4px 8px;font-size:12.5px;transition:color .15s,background .12s;display:inline-flex}.hero-ghost:hover{color:var(--fg);background:var(--muted)}.pill .ic-bg{border-radius:4px;place-items:center;width:14px;height:14px;display:grid}.pill.starred .ic-bg{color:oklch(55% .14 65);background:oklch(96% .05 75)}.pill.mistakes .ic-bg{color:oklch(55% .18 25);background:oklch(96% .04 25)}[data-theme=dark] .pill.starred .ic-bg{color:oklch(85% .1 75);background:oklch(30% .05 75)}[data-theme=dark] .pill.mistakes .ic-bg{color:oklch(82% .1 25);background:oklch(30% .05 25)}.row-line+.row-line{position:relative}.row-line+.row-line:before{content:"";background:var(--border-2);height:1px;position:absolute;top:0;left:12px;right:12px}.row-line .badge-count{background:var(--muted);color:var(--fg);font-feature-settings:"tnum";border-radius:999px;padding:2px 7px;font-family:JetBrains Mono,monospace;font-size:11px}.row-line .review-btn{font:inherit;background:var(--card);border:1px solid var(--border);color:var(--fg);cursor:pointer;border-radius:6px;align-items:center;gap:4px;padding:5px 10px;font-size:12.5px;font-weight:500;transition:background .12s,border-color .12s;display:inline-flex}.row-line .review-btn:hover{background:var(--muted);border-color:var(--fg-muted)}.row-line .main .nm.italic{color:var(--fg-muted);font-style:italic;font-weight:400}.row-line .main .meta .dot{background:var(--fg-muted);opacity:.6;border-radius:50%;width:3px;height:3px}.row-line .pin{color:var(--fg-muted);flex-shrink:0;place-items:center;width:14px;display:grid}.row-line .pin.unset{width:0;overflow:hidden}.row-line .row-inner-link{color:inherit;flex:1;align-items:center;gap:10px;min-width:0;text-decoration:none;display:flex}.mode-badge.drill{background:var(--accent-soft);color:var(--accent-soft-fg)}.section-card .head .ac .primary-link{color:var(--accent);font-weight:500}.section-card .head .ac .primary-link:hover{color:var(--accent-hover);background:var(--accent-soft)}.empty-inline .ic-em{background:var(--muted);width:36px;height:36px;color:var(--fg-muted);border-radius:10px;place-items:center;margin-bottom:12px;display:inline-grid}.empty-inline a{color:var(--accent);text-underline-offset:3px;text-decoration:underline}.show-more{color:var(--fg-muted);border:0;border-top:1px solid var(--border-2);cursor:pointer;width:100%;font-size:12px;font:inherit;background:0 0;justify-content:center;align-items:center;gap:6px;padding:10px;transition:background .12s,color .12s;display:flex}.show-more:hover{background:var(--muted);color:var(--fg)}.stale-alert .top{align-items:flex-start;gap:12px;display:flex}.stale-alert .ic{background:var(--warning-bd);color:oklch(98% 0 0);border-radius:6px;flex-shrink:0;place-items:center;width:26px;height:26px;font-weight:600;display:grid}.stale-list{border-top:1px solid oklch(from var(--warning-bd) l c h/.4);flex-direction:column;padding-top:8px;display:flex}.stale-list .row-line{padding:8px 4px}.stale-list .row-line+.row-line:before{background:oklch(from var(--warning-bd) l c h/.3);left:4px;right:4px}.stale-list .row-line:hover{background:oklch(from var(--warning-soft) calc(l - .04) c h)}.stale-list .open-link{color:var(--warning-fg);align-items:center;gap:4px;font-size:12px;font-weight:500;display:inline-flex}.empty-page{background:var(--card);border:1px solid var(--border);text-align:center;border-radius:14px;max-width:520px;margin:32px auto 0;padding:32px 28px}.empty-page .icon{background:var(--accent-soft);width:56px;height:56px;color:var(--accent-soft-fg);border-radius:14px;place-items:center;margin:0 auto 16px;display:grid}.empty-page h2{letter-spacing:-.015em;color:var(--fg);text-wrap:balance;margin:0 0 8px;font-family:Instrument Serif,serif;font-size:24px;font-weight:400}.empty-page .steps{text-align:left;flex-direction:column;gap:10px;margin:18px 0;display:flex}.empty-page .step{border:1px solid var(--border);background:var(--bg-2);border-radius:10px;align-items:flex-start;gap:12px;padding:12px;display:flex}.empty-page .step .n{background:var(--card);border:1px solid var(--border);width:22px;height:22px;color:var(--fg-muted);border-radius:50%;flex-shrink:0;place-items:center;font-family:JetBrains Mono,monospace;font-size:11px;font-weight:500;display:grid}.empty-page .step .txt{color:var(--fg);font-size:13.5px;line-height:1.5}.empty-page .step .txt b{font-weight:600}.empty-page .actions{flex-direction:column;align-items:center;gap:6px;margin-top:8px;display:flex}.empty-page .actions .or{color:var(--fg-muted);font-size:12.5px}.empty-page .actions .or a{color:var(--fg);text-underline-offset:3px;text-decoration:underline}.cs-empty{background:var(--card);border:1px solid var(--border);text-align:center;border-radius:14px;max-width:480px;margin:32px auto 0;padding:36px 28px}.cs-empty .ic{background:var(--accent-soft);width:56px;height:56px;color:var(--accent-soft-fg);border-radius:14px;place-items:center;margin:0 auto 14px;display:grid}.cs-empty h2{letter-spacing:-.015em;color:var(--fg);margin:0 0 4px;font-family:Instrument Serif,serif;font-size:24px;font-weight:400}.cs-empty p{color:var(--fg-muted);margin:0 0 20px;font-size:13.5px}.cs-empty .actions{flex-direction:column;align-items:center;gap:6px;display:flex}.cs-empty .or{color:var(--fg-muted);font-size:12px}.cs-empty .or a{color:var(--fg);text-underline-offset:3px;text-decoration:underline}.cs-kebab-menu{background:var(--card);border:1px solid var(--border);z-index:5;border-radius:8px;min-width:160px;padding:4px;position:absolute;top:calc(100% + 4px);right:0;box-shadow:0 18px 40px -12px oklch(0 0 0/.25),0 2px 6px oklch(0 0 0/.08)}.cs-kebab-menu .item{font:inherit;cursor:pointer;text-align:left;width:100%;color:var(--fg);background:0 0;border:0;border-radius:5px;align-items:center;gap:8px;padding:6px 8px;font-size:13px;transition:background .12s;display:flex}.cs-kebab-menu .item:hover{background:var(--muted)}.cs-kebab-menu .item.danger{color:oklch(55% .18 25)}.cs-kebab-menu .item.danger:hover{background:oklch(96% .04 25)}[data-theme=dark] .cs-kebab-menu .item.danger{color:oklch(78% .13 25)}[data-theme=dark] .cs-kebab-menu .item.danger:hover{background:oklch(30% .05 25)}.cs-kebab-menu .item .ic{width:13px;height:13px;color:var(--fg-muted)}.cs-kebab-menu .item.danger .ic{color:oklch(55% .18 25)}[data-theme=dark] .cs-kebab-menu .item.danger .ic{color:oklch(78% .13 25)}.cs-kebab-menu .sep{background:var(--border);height:1px;margin:4px 2px}.cs-scrim{-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);z-index:30;background:oklch(0 0 0/.45);place-items:center;padding:24px;display:grid;position:absolute;inset:0}.cs-dialog{background:var(--card);border:1px solid var(--border);border-radius:14px;flex-direction:column;gap:18px;width:100%;max-width:480px;max-height:calc(100% - 48px);padding:24px;display:flex;overflow-y:auto;box-shadow:0 32px 80px -16px oklch(0 0 0/.45),0 6px 18px -6px oklch(0 0 0/.2)}.cs-dialog.wide{grid-template-columns:1fr;gap:0;max-width:820px;padding:0;display:grid}@media (min-width:720px){.cs-dialog.wide{grid-template-columns:1fr 280px}}.cs-dialog .form-area{padding:24px}.cs-dialog .preview-area{background:var(--bg-2);border-left:1px solid var(--border);border-radius:0 14px 14px 0;flex-direction:column;gap:14px;padding:24px 20px;display:flex}@media (max-width:719px){.cs-dialog .preview-area{display:none}}.cs-dialog .preview-label{letter-spacing:.14em;text-transform:uppercase;color:var(--fg-muted);font-family:JetBrains Mono,monospace;font-size:10px;font-weight:500}.cs-dialog .head{justify-content:space-between;align-items:flex-start;gap:8px;margin-bottom:14px;display:flex}.cs-dialog .head h3{letter-spacing:-.015em;color:var(--fg);margin:0 0 2px;font-family:Instrument Serif,serif;font-size:22px;font-weight:400;line-height:1.1}.cs-dialog .head .sub{color:var(--fg-muted);margin:0;font-size:12.5px}.cs-dialog .head .close-btn{width:28px;height:28px;color:var(--fg-muted);cursor:pointer;background:0 0;border:0;border-radius:6px;place-items:center;display:grid}.cs-dialog .head .close-btn:hover{background:var(--muted);color:var(--fg)}.cs-dialog .field{margin-bottom:14px}.cs-dialog .field label{color:var(--fg);justify-content:space-between;align-items:baseline;margin-bottom:6px;font-size:12.5px;font-weight:500;display:flex}.cs-dialog .field label .req{letter-spacing:.04em;text-transform:uppercase;color:var(--fg-muted);font-family:JetBrains Mono,monospace;font-size:9.5px}.cs-dialog .field .select,.cs-dialog .field input{border:1px solid var(--border);background:var(--card);width:100%;height:38px;color:var(--fg);font:inherit;border-radius:8px;padding:0 12px;font-size:14px;transition:border-color .12s,box-shadow .12s}.cs-dialog .field .select:focus,.cs-dialog .field input:focus{border-color:var(--accent);box-shadow:0 0 0 3px var(--ring);outline:none}.cs-dialog .field input.error,.cs-dialog .field input.error:focus{border-color:oklch(60% .2 25);box-shadow:0 0 0 3px oklch(60% .2 25/.2)}.cs-dialog .field .error-text{color:oklch(50% .18 25);align-items:center;gap:6px;margin-top:6px;font-size:12px;display:flex}[data-theme=dark] .cs-dialog .field .error-text{color:oklch(78% .13 25)}.cs-dialog .field .hint{color:var(--fg-muted);margin-top:6px;font-size:11.5px}.cs-dialog .select{cursor:pointer;text-align:left;justify-content:space-between;align-items:center;display:flex}.cs-dialog .select .pi-mini{background:var(--accent);width:14px;height:14px;color:var(--accent-fg);border-radius:4px;place-items:center;margin-right:6px;display:grid}.cs-dialog .select .text{flex:1;align-items:center;display:flex}.cs-dialog .select .arrow{color:var(--fg-muted);flex-shrink:0}.cs-dialog .select-menu{background:var(--card);border:1px solid var(--border);z-index:5;border-radius:8px;width:100%;max-height:220px;margin-top:4px;padding:4px;position:absolute;overflow-y:auto;box-shadow:0 18px 40px -12px oklch(0 0 0/.25)}.cs-dialog .select-menu .item{font:inherit;cursor:pointer;text-align:left;width:100%;color:var(--fg);background:0 0;border:0;border-radius:5px;align-items:center;gap:10px;padding:7px 8px;font-size:13px;transition:background .12s;display:flex}.cs-dialog .select-menu .item:hover{background:var(--muted)}.cs-dialog .select-menu .item.selected{background:var(--accent-soft);color:var(--accent-soft-fg)}.cs-dialog .select-menu .item .pi-mini{background:var(--muted);width:18px;height:18px;color:var(--fg);border-radius:5px;place-items:center;display:grid}.cs-dialog .select-menu .item.selected .pi-mini{background:var(--accent);color:var(--accent-fg)}.cs-dialog .select-menu .item .nm{flex-direction:column;flex:1;display:flex}.cs-dialog .select-menu .item .scope{color:var(--fg-muted);letter-spacing:.04em;text-transform:uppercase;font-family:JetBrains Mono,monospace;font-size:10px}.cs-dialog .color-grid{grid-template-columns:repeat(12,1fr);gap:6px;display:grid}.cs-dialog .color-grid .sw{aspect-ratio:1;cursor:pointer;border-radius:7px;transition:transform .12s;position:relative}.cs-dialog .color-grid .sw:hover{transform:scale(1.08)}.cs-dialog .color-grid .sw.selected:after{content:"";border:2px solid var(--card);box-shadow:0 0 0 1.5px var(--fg);border-radius:5px;position:absolute;inset:3px}.cs-dialog .footer{border-top:1px solid var(--border);justify-content:space-between;align-items:center;margin-top:4px;padding-top:14px}.cs-dialog .footer,.cs-dialog .footer .right{gap:8px;display:flex}.cs-dialog .footer .delete-link{font:inherit;color:oklch(55% .18 25);cursor:pointer;background:0 0;border:0;border-radius:6px;align-items:center;gap:5px;padding:6px 8px;font-size:12.5px;transition:background .12s;display:inline-flex}[data-theme=dark] .cs-dialog .footer .delete-link{color:oklch(78% .13 25)}.cs-dialog .footer .delete-link:hover{background:oklch(96% .04 25)}[data-theme=dark] .cs-dialog .footer .delete-link:hover{background:oklch(30% .05 25)}.cs-btn{font:inherit;cursor:pointer;background:var(--card);height:38px;color:var(--fg);border:1px solid #0000;border-radius:8px;align-items:center;gap:6px;padding:0 16px;font-size:13.5px;font-weight:500;transition:background .12s,transform 50ms;display:inline-flex}.cs-btn:active{transform:translateY(.5px)}.cs-btn.secondary{background:var(--card);color:var(--fg);border-color:var(--border)}.cs-btn.secondary:hover{background:var(--muted)}.cs-btn.primary{background:var(--accent);color:var(--accent-fg)}.cs-btn.primary:hover{background:var(--accent-hover)}.cs-btn.destructive{color:oklch(98% 0 0);background:oklch(60% .2 25)}.cs-btn.destructive:hover{background:oklch(54% .2 25)}.cs-server-error{color:oklch(42% .16 25);background:oklch(96% .04 25);border:1px solid oklch(78% .16 25/.5);border-radius:8px;align-items:flex-start;gap:10px;margin:0 0 12px;padding:10px 12px;font-size:12.5px;line-height:1.45;display:flex}[data-theme=dark] .cs-server-error{color:oklch(86% .1 25);background:oklch(27% .05 25);border-color:oklch(55% .12 25)}.cs-server-error .ic{flex-shrink:0;margin-top:1px}.cs-server-error b{font-weight:600}.cs-server-error .retry{cursor:pointer;font:inherit;color:inherit;text-underline-offset:3px;background:0 0;border:0;margin-top:2px;padding:0;font-size:12.5px;text-decoration:underline}.cs-alert{background:var(--card);border:1px solid var(--border);border-radius:14px;width:100%;max-width:420px;padding:22px;box-shadow:0 32px 80px -16px oklch(0 0 0/.45)}.cs-alert .ic-wrap{align-items:center;gap:12px;margin-bottom:12px;display:flex}.cs-alert .ic-wrap .ic{color:oklch(55% .18 25);background:oklch(96% .04 25);border-radius:50%;flex-shrink:0;place-items:center;width:32px;height:32px;display:grid}[data-theme=dark] .cs-alert .ic-wrap .ic{color:oklch(82% .1 25);background:oklch(30% .07 25)}.cs-alert h3{color:var(--fg);margin:0;font-size:16px;font-weight:600}.cs-alert p{color:var(--fg-muted);margin:0 0 8px;font-size:13.5px;line-height:1.55}.cs-alert .body{margin-bottom:14px}.cs-alert .what{background:var(--bg-2);border:1px solid var(--border);color:var(--fg);border-radius:8px;flex-direction:column;gap:4px;margin-bottom:12px;padding:10px 12px;font-size:12.5px;display:flex}.cs-alert .what b{color:oklch(50% .18 25);font-weight:600}[data-theme=dark] .cs-alert .what b{color:oklch(82% .1 25)}.cs-alert .what ul{color:var(--fg-muted);flex-direction:column;gap:2px;margin:4px 0 0;padding-left:18px;font-size:12.5px;display:flex}.cs-alert .actions{justify-content:flex-end;gap:8px;display:flex}.ob-page{background:var(--bg);width:100%;min-height:100vh;color:var(--fg);grid-template-rows:auto auto 1fr auto;font-family:Inter,system-ui,sans-serif;display:grid;position:relative;overflow:hidden}.ob-page:before{content:"";background:radial-gradient(ellipse 60% 40% at 50% 0,var(--accent-soft) 0,transparent 65%);opacity:.5;pointer-events:none;position:absolute;inset:0}[data-theme=dark] .ob-page:before{opacity:.35}.ob-topbar{z-index:1;justify-content:space-between;padding:20px 28px;position:relative}.ob-brand,.ob-topbar{align-items:center;display:flex}.ob-brand{color:var(--fg);letter-spacing:-.02em;gap:8px;font-family:Instrument Serif,serif;font-size:18px}.ob-brand .mono{background:var(--fg);width:24px;height:24px;color:var(--bg);letter-spacing:-.04em;border-radius:6px;place-items:center;font-size:13px;font-style:italic;display:grid;position:relative}.ob-brand .mono:after{content:"";background:var(--accent);border-radius:50%;width:3px;height:3px;position:absolute;bottom:3px;right:3px}.ob-brand .word{padding-top:2px;line-height:1}.ob-signout{color:var(--fg-muted);cursor:pointer;background:0 0;border:0;border-radius:6px;padding:6px 10px;font-family:inherit;font-size:12.5px;transition:color .15s}.ob-signout:hover{color:var(--fg);background:var(--muted)}.ob-progress{z-index:1;justify-content:center;padding:0 24px 12px;display:flex;position:relative}.ob-steps{grid-template-columns:repeat(4,1fr);align-items:start;gap:0;width:100%;max-width:520px;display:grid}.ob-steps .ob-step{letter-spacing:.04em;flex-direction:column;align-items:center;gap:6px;font-family:JetBrains Mono,monospace;font-size:10.5px;display:flex;position:relative}.ob-steps .ob-step .ob-bar{background:var(--border);height:2px;position:absolute;top:5px;left:50%;right:-50%}.ob-steps .ob-step:last-child .ob-bar{display:none}.ob-steps .ob-step.done .ob-bar{background:var(--accent)}.ob-steps .ob-step.current .ob-bar{background:linear-gradient(to right,var(--accent) 50%,var(--border) 50%)}.ob-steps .ob-step .ob-dot{background:var(--border);z-index:1;border-radius:50%;width:12px;height:12px;transition:background .18s,box-shadow .18s;position:relative}.ob-steps .ob-step.done .ob-dot{background:var(--accent)}.ob-steps .ob-step.done .ob-dot:after{content:"";border-left:1.5px solid var(--accent-fg);border-bottom:1.5px solid var(--accent-fg);width:4px;height:2px;position:absolute;top:50%;left:50%;transform:translate(-50%,-65%)rotate(-45deg)}.ob-steps .ob-step.current .ob-dot{background:var(--bg);box-shadow:0 0 0 2px var(--accent)}.ob-steps .ob-step .ob-label{color:var(--fg-muted);text-transform:uppercase}.ob-steps .ob-step.current .ob-label{color:var(--fg);font-weight:500}@media (max-width:420px){.ob-steps .ob-step .ob-label{display:none}}.ob-main{z-index:1;flex-direction:column;align-items:center;padding:28px 24px;display:flex;position:relative;overflow:hidden}.ob-card{background:var(--card);border:1px solid var(--border);border-radius:16px;width:100%;max-width:560px;padding:36px;box-shadow:0 1px 2px oklch(0 0 0/.04),0 12px 32px -12px oklch(0 0 0/.1)}[data-theme=dark] .ob-card{box-shadow:0 1px 2px oklch(0 0 0/.4),0 16px 36px -12px oklch(0 0 0/.5)}.ob-card-wide{max-width:800px}.ob-card-split{max-width:860px;padding:0}.ob-card.error{border-color:oklch(78% .16 25/.5)}.ob-h{letter-spacing:-.015em;color:var(--fg);text-wrap:balance;margin:0 0 8px;font-family:Instrument Serif,serif;font-size:30px;font-weight:400;line-height:1.1}.ob-h em{font-style:italic}.ob-sub{color:var(--fg-muted);margin:0;font-size:14.5px;line-height:1.55}.welcome-icons{align-items:stretch;gap:10px;margin-top:32px;margin-bottom:8px;display:flex}.welcome-icon{border:1px solid var(--border);background:var(--bg-2);border-radius:10px;flex-direction:column;flex:1;align-items:center;gap:8px;padding:18px 12px;display:flex}.welcome-icon .ic{background:var(--accent-soft);width:36px;height:36px;color:var(--accent-soft-fg);border-radius:8px;place-items:center;display:grid}.welcome-icon .name{color:var(--fg);font-size:13px;font-weight:500}.welcome-icon .sub{color:var(--fg-muted);letter-spacing:.06em;text-transform:uppercase;font-family:JetBrains Mono,monospace;font-size:9.5px}.ob-input-row{margin-top:24px;margin-bottom:12px;position:relative}.ob-input{border:1px solid var(--border);background:var(--card);width:100%;height:52px;color:var(--fg);font:inherit;border-radius:10px;padding:0 130px 0 16px;font-family:Inter,sans-serif;font-size:17px;transition:border-color .12s,box-shadow .12s}.ob-input:focus{border-color:var(--accent);box-shadow:0 0 0 3px var(--ring);outline:none}.ob-input::placeholder{color:var(--fg-muted)}.ob-input-row .suggest{background:var(--muted);border:1px solid var(--border);color:var(--fg-muted);cursor:pointer;border-radius:6px;align-items:center;gap:5px;padding:6px 10px;font-family:inherit;font-size:12px;transition:background .12s,color .12s;display:inline-flex;position:absolute;top:50%;right:8px;transform:translateY(-50%)}.ob-input-row .suggest:hover{background:var(--card);color:var(--fg)}.ob-hint{color:var(--fg-muted);margin:0;font-size:12.5px}.profile-grid{grid-template-columns:repeat(3,1fr);gap:10px;margin:24px 0 14px;display:grid}@media (max-width:640px){.profile-grid{grid-template-columns:repeat(2,1fr)}}.profile-card{border:1px solid var(--border);background:var(--card);cursor:pointer;text-align:left;color:var(--fg);border-radius:10px;flex-direction:column;gap:8px;padding:16px;font-family:inherit;transition:border-color .12s,background .12s,transform 50ms;display:flex;position:relative}.profile-card:hover:not(.selected){border-color:var(--fg-muted)}.profile-card.selected{border:2px solid var(--accent);background:var(--accent-soft);padding:15px}.profile-card .pi{background:var(--bg-2);width:28px;height:28px;color:var(--fg);border-radius:7px;place-items:center;display:grid}.profile-card.selected .pi{background:var(--accent);color:var(--accent-fg)}.profile-card .pname{color:var(--fg);letter-spacing:-.005em;font-size:14px;font-weight:600}.profile-card .pscope{letter-spacing:.06em;text-transform:uppercase;color:var(--fg-muted);font-family:JetBrains Mono,monospace;font-size:10px}.profile-card .pdesc{color:var(--fg-muted);font-size:12.5px;line-height:1.4}.profile-card .check{background:var(--accent);width:14px;height:14px;color:var(--accent-fg);border-radius:50%;justify-content:center;align-items:center;display:none;position:absolute;top:10px;right:10px}.profile-card.selected .check{display:flex}.split-grid{grid-template-columns:1fr 320px;display:grid}@media (max-width:640px){.split-grid{grid-template-columns:1fr}}.split-form{padding:36px}.split-preview{background:var(--bg-2);border-left:1px solid var(--border);border-radius:0 16px 16px 0;flex-direction:column;gap:14px;padding:36px 28px;display:flex}@media (max-width:640px){.split-preview{display:none}}.split-preview .label{letter-spacing:.14em;text-transform:uppercase;color:var(--fg-muted);font-family:JetBrains Mono,monospace;font-size:10px;font-weight:500}.ob-form-field{margin-bottom:16px}.ob-form-field label{color:var(--fg);justify-content:space-between;align-items:baseline;margin-bottom:6px;font-size:12.5px;font-weight:500;display:flex}.ob-form-field label .req{color:var(--fg-muted);letter-spacing:.04em;text-transform:uppercase;font-family:JetBrains Mono,monospace;font-size:9.5px}.ob-form-field input{border:1px solid var(--border);background:var(--card);width:100%;height:42px;color:var(--fg);font:inherit;border-radius:8px;padding:0 14px;font-size:14.5px;transition:border-color .12s,box-shadow .12s}.ob-form-field input:focus{border-color:var(--accent);box-shadow:0 0 0 3px var(--ring);outline:none}.ob-color-grid{grid-template-columns:repeat(12,1fr);gap:6px;display:grid}.ob-color-grid .sw{aspect-ratio:1;cursor:pointer;border-radius:7px;transition:transform .12s;position:relative}.ob-color-grid .sw:hover{transform:scale(1.08)}.ob-color-grid .sw.selected:after{content:"";border:2px solid var(--card);box-shadow:0 0 0 1.5px var(--fg);border-radius:5px;position:absolute;inset:3px}.style-carryover{border-top:1px solid var(--border);color:var(--fg-muted);justify-content:space-between;align-items:center;gap:10px;margin-top:22px;padding-top:16px;font-size:12.5px;display:flex}.style-chip{background:var(--muted);color:var(--fg);border-radius:999px;align-items:center;gap:6px;padding:4px 10px;font-size:12px;font-weight:500;display:inline-flex}.style-chip .pi-mini{background:var(--accent);width:16px;height:16px;color:var(--accent-fg);border-radius:4px;place-items:center;display:grid}.change-link{cursor:pointer;color:var(--accent);font:inherit;text-decoration:underline;-webkit-text-decoration-color:oklch(from var(--accent) l c h/.4);text-decoration-color:oklch(from var(--accent) l c h/.4);text-underline-offset:3px;background:0 0;border:0;font-size:12.5px}.course-preview{background:var(--card);border:1px solid var(--border);border-radius:12px;overflow:hidden}.course-preview .strip{height:6px;transition:background .18s}.course-preview .pbody{padding:14px}.course-preview .pmeta{color:var(--fg-muted);letter-spacing:.04em;text-transform:uppercase;min-height:14px;margin-bottom:4px;font-family:JetBrains Mono,monospace;font-size:10.5px}.course-preview .pname{letter-spacing:-.005em;color:var(--fg);margin-bottom:6px;font-size:16px;font-weight:600}.course-preview .pname.placeholder{color:var(--fg-muted);font-style:italic;font-weight:400}.course-preview .pinstr{color:var(--fg-muted);margin-bottom:14px;font-size:12px}.course-preview .empty-bar{background:var(--muted);border-radius:999px;height:7px;margin-bottom:10px}.course-preview .empty-meta{color:var(--fg-muted);letter-spacing:.04em;text-transform:uppercase;justify-content:space-between;font-family:JetBrains Mono,monospace;font-size:9.5px;display:flex}.ob-footer{justify-content:center;width:100%;padding:16px 4px 0;display:flex}.ob-footer-inner{justify-content:space-between;align-items:center;width:100%;max-width:560px;display:flex}.ob-footer-inner.wide{max-width:860px}.ob-btn{font:inherit;cursor:pointer;border:1px solid #0000;border-radius:8px;align-items:center;gap:8px;height:42px;padding:0 18px;font-size:14px;font-weight:500;transition:background .12s,transform 50ms;display:inline-flex}.ob-btn:active{transform:translateY(.5px)}.ob-btn-back{color:var(--fg-muted);background:0 0}.ob-btn-back:hover{color:var(--fg);background:var(--muted)}.ob-btn-primary{background:var(--accent);color:var(--accent-fg)}.ob-btn-primary:hover:not(:disabled){background:var(--accent-hover)}.ob-btn-primary:disabled{opacity:.45;cursor:not-allowed}.ob-btn-ghost{color:var(--fg-muted);background:0 0}.ob-btn-ghost:hover:not(:disabled){color:var(--fg)}.ob-btn-ghost:disabled{opacity:.45;cursor:not-allowed}.ob-error{color:oklch(42% .16 25);background:oklch(96% .04 25);border:1px solid oklch(78% .16 25/.4);border-radius:8px;align-items:flex-start;gap:10px;margin-top:16px;padding:12px 14px;font-size:13px;display:flex}[data-theme=dark] .ob-error{color:oklch(86% .1 25);background:oklch(27% .05 25);border-color:oklch(55% .12 25)}.ob-error .ic{flex-shrink:0;margin-top:1px}.ob-error .body{flex:1}.ob-error .body b{font-weight:600}.ob-dialog-scrim{z-index:50;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);background:oklch(0 0 0/.45);place-items:center;padding:24px;display:grid;position:fixed;inset:0}.ob-dialog{background:var(--card);border:1px solid var(--border);border-radius:14px;width:100%;max-width:380px;padding:22px;box-shadow:0 24px 60px -12px oklch(0 0 0/.4),0 6px 18px -6px oklch(0 0 0/.2)}.ob-dialog h3{margin:0 0 6px;font-size:16px;font-weight:600}.ob-dialog p{color:var(--fg-muted);margin:0;font-size:13.5px;line-height:1.55}.ob-dialog .actions{justify-content:flex-end;gap:8px;margin-top:18px;display:flex}.ob-btn-secondary{border:1px solid var(--border);background:var(--card);height:36px;color:var(--fg);font:inherit;cursor:pointer;border-radius:8px;align-items:center;gap:6px;padding:0 14px;font-size:13.5px;font-weight:500;display:inline-flex}.ob-btn-secondary:hover{background:var(--muted)}.ob-btn-destructive{color:oklch(98.5% 0 0);height:36px;font:inherit;cursor:pointer;background:oklch(60% .2 25);border:1px solid #0000;border-radius:8px;align-items:center;gap:6px;padding:0 14px;font-size:13.5px;font-weight:500;display:inline-flex}.ob-btn-destructive:hover{background:oklch(54% .2 25)}.container{width:100%;max-width:1200px;margin:0 auto;padding:0 16px}@media (min-width:640px){.container{padding:0 24px}}@media (min-width:1100px){.container{padding:0 32px}}.header{z-index:50;background:0 0;border-bottom:1px solid #0000;transition:background .22s,border-color .22s;position:sticky;top:0}.header.scrolled{background:var(--header-bg);-webkit-backdrop-filter:saturate(180%)blur(16px);border-bottom-color:var(--border-2)}.header-inner{justify-content:space-between;align-items:center;height:56px;display:flex;position:relative}@media (min-width:768px){.header-inner{height:64px}}.brand{font-family:var(--font-instrument,"Instrument Serif",serif);letter-spacing:-.02em;color:var(--fg);align-items:center;gap:10px;font-size:22px;display:flex}.brand .mono{background:var(--fg);width:28px;height:28px;color:var(--bg);letter-spacing:-.04em;border-radius:7px;flex-shrink:0;place-items:center;font-size:16px;font-style:italic;display:grid;position:relative}.brand .mono:after{content:"";background:var(--accent);border-radius:50%;width:4px;height:4px;position:absolute;bottom:4px;right:4px}.brand .word{padding-top:2px;line-height:1}.nav{color:var(--fg-muted);gap:28px;font-size:14px;display:none}.nav a{transition:color .15s}.nav a:hover{color:var(--fg)}@media (min-width:900px){.nav{display:flex}.nav-center{position:absolute;left:50%;transform:translate(-50%)}}.header-cta{align-items:center;gap:8px;display:flex}.signin{color:var(--fg-muted);border-radius:var(--r-input);padding:6px 12px;font-size:14px;display:none}.signin:hover{color:var(--fg);background:var(--muted)}@media (min-width:600px){.signin{display:inline-flex}}.hamburger{border-radius:var(--r-input);border:1px solid var(--border);width:36px;height:36px;color:var(--fg);cursor:pointer;background:0 0;justify-content:center;align-items:center;display:inline-flex}@media (min-width:900px){.hamburger{display:none}}.btn{border-radius:var(--r-input);cursor:pointer;white-space:nowrap;border:1px solid #0000;align-items:center;gap:8px;height:38px;padding:0 16px;font-family:inherit;font-size:14px;font-weight:500;text-decoration:none;transition:background .12s,border-color .12s,color .12s,transform 50ms,box-shadow .15s;display:inline-flex}.btn:active{transform:translateY(.5px)}.btn:focus-visible{box-shadow:0 0 0 3px var(--ring);outline:none}.btn-primary{background:var(--accent);color:var(--accent-fg)}.btn-primary:hover{background:var(--accent-hover)}.btn-secondary{background:var(--card);color:var(--fg);border-color:var(--border)}.btn-secondary:hover{background:var(--muted)}.btn-ghost{color:var(--fg);background:0 0}.btn-ghost:hover{background:var(--muted)}.btn-lg{height:46px;padding:0 22px;font-size:15px}.btn .arrow{transition:transform .18s;display:inline-block}.btn:hover .arrow{transform:translate(2px)}.sheet-backdrop{z-index:90;opacity:0;visibility:hidden;background:oklch(0 0 0/.4);transition:opacity .2s,visibility .2s;position:fixed;inset:0}.sheet-backdrop.open{opacity:1;visibility:visible}.sheet{background:var(--card);border-left:1px solid var(--border);z-index:95;flex-direction:column;gap:12px;width:280px;max-width:85vw;height:100%;padding:20px;transition:transform .25s;display:flex;position:fixed;top:0;right:0;transform:translate(100%)}.sheet.open{transform:translate(0)}.sheet .sheet-head{justify-content:space-between;align-items:center;margin-bottom:8px;display:flex}.sheet a{color:var(--fg);border-radius:6px;padding:10px 8px;font-size:15px}.sheet a:hover{background:var(--muted)}.sheet .sheet-cta{flex-direction:column;gap:8px;margin-top:auto;padding-top:16px;display:flex}.footer,.sheet .sheet-cta{border-top:1px solid var(--border)}.footer{background:var(--bg-2);padding:56px 0 32px}.footer-grid{grid-template-columns:1fr;gap:32px 24px;margin-bottom:40px;display:grid}@media (min-width:600px){.footer-grid{grid-template-columns:repeat(2,1fr)}}@media (min-width:900px){.footer-grid{grid-template-columns:1.4fr repeat(3,1fr) auto}}.footer .brand-block{max-width:32ch}.footer .brand-block p{color:var(--fg-muted);margin:12px 0 0;font-size:13px;line-height:1.55}.footer h5{font-family:var(--font-jetbrains,"JetBrains Mono",monospace);letter-spacing:.14em;text-transform:uppercase;color:var(--fg-muted);margin:0 0 12px;font-size:10.5px;font-weight:500}.footer ul{flex-direction:column;gap:8px;margin:0;padding:0;list-style:none;display:flex}.footer ul a{color:var(--fg);font-size:13.5px}.footer ul a:hover{color:var(--accent)}.footer ul a .placeholder{color:var(--fg-muted);font-size:10px;font-family:var(--font-jetbrains,monospace);margin-left:4px}.badges{flex-direction:column;min-width:160px}.appbadge,.badges{gap:10px;display:flex}.appbadge{background:var(--fg);height:44px;color:var(--bg);border-radius:8px;align-items:center;padding:0 12px;text-decoration:none;transition:opacity .15s}.appbadge:hover{opacity:.9}.appbadge .txt{line-height:1.05}.appbadge .small{letter-spacing:.04em;opacity:.75;font-size:9px;display:block}.appbadge .big{font-size:14px;font-weight:500}.footer-base{border-top:1px solid var(--border);flex-direction:column;align-items:flex-start;gap:16px;padding-top:24px;display:flex}@media (min-width:700px){.footer-base{flex-direction:row;justify-content:space-between;align-items:center}}.footer-copy{font-family:var(--font-jetbrains,"JetBrains Mono",monospace);color:var(--fg-muted);font-size:11px}.theme-toggle{background:var(--card);border:1px solid var(--border);border-radius:999px;gap:2px;padding:3px;display:inline-flex}.theme-toggle button{height:28px;color:var(--fg-muted);cursor:pointer;font-size:11.5px;font-family:var(--font-jetbrains,monospace);letter-spacing:.04em;text-transform:uppercase;background:0 0;border:0;border-radius:999px;align-items:center;gap:5px;padding:0 10px;display:inline-flex}.theme-toggle button.active{background:var(--muted);color:var(--fg)}.page-eyebrow{text-transform:uppercase;color:var(--fg-muted);align-items:center;gap:8px;margin-bottom:14px;font-size:11px;display:flex}.page-eyebrow .sep{color:var(--border)}.page-eyebrow .here{color:var(--fg)}.page-eyebrow a{color:inherit;text-decoration:none}.page-eyebrow a:hover{color:var(--fg)}.page-title-row{border-bottom:1px solid var(--border);flex-wrap:wrap;justify-content:space-between;align-items:flex-end;gap:24px;margin-bottom:36px;padding-bottom:24px;display:flex}.page-title-row h1{font-family:var(--font-instrument,"Instrument Serif",serif);letter-spacing:-.015em;color:var(--fg);text-wrap:balance;margin:0;font-size:clamp(34px,5vw,48px);font-weight:400;line-height:1.05}.page-title-row .updated{font-family:var(--font-jetbrains,monospace);color:var(--fg-muted);letter-spacing:.04em;font-size:11.5px}.page-shell{padding-top:48px;padding-bottom:64px}@media (min-width:640px){.page-shell{padding-top:80px;padding-bottom:96px}}.prose{max-width:720px;color:var(--fg);font-size:16px;line-height:1.7}.prose>*+*{margin-top:1.1em}.prose h2{font-family:var(--font-instrument,"Instrument Serif",serif);letter-spacing:-.01em;color:var(--fg-strong);align-items:baseline;gap:12px;margin-top:2.4em;margin-bottom:.6em;scroll-margin-top:80px;font-size:clamp(24px,2.4vw,30px);font-weight:400;line-height:1.2;display:flex}.prose h2 .num{font-family:var(--font-jetbrains,monospace);letter-spacing:.08em;color:var(--fg-muted);flex-shrink:0;padding-top:.4em;font-size:11.5px;font-weight:500}.prose h3{letter-spacing:-.005em;color:var(--fg-strong);margin-top:1.8em;margin-bottom:.5em;font-size:15px;font-weight:600}.prose p{color:var(--fg);margin:0}.prose p+p{margin-top:1em}.prose strong{color:var(--fg-strong);font-weight:600}.prose em{color:var(--fg-muted);font-style:italic}.prose a{color:var(--link);text-decoration:underline;-webkit-text-decoration-color:oklch(from var(--link) l c h/.4);text-decoration-color:oklch(from var(--link) l c h/.4);text-underline-offset:3px;text-decoration-thickness:1px;transition:color .15s,text-decoration-color .15s}.prose a:hover{color:var(--link-hover);-webkit-text-decoration-color:var(--link-hover);text-decoration-color:var(--link-hover)}.prose ol,.prose ul{margin:0;padding-left:1.4em}.prose ol>li,.prose ul>li{margin-top:.5em;padding-left:.2em}.prose ul>li::marker{color:var(--fg-muted)}.prose ol>li::marker{color:var(--fg-muted);font-family:var(--font-jetbrains,monospace);font-size:.9em}.prose ul ul{margin-top:.4em}.prose ul.tight>li{margin-top:.2em}.prose hr{border:0;border-top:1px solid var(--border);margin:2.4em 0}.prose code,.prose kbd{font-family:var(--font-jetbrains,monospace);background:var(--muted);border:1px solid var(--border-2);border-radius:4px;padding:1px 6px;font-size:.88em}.prose .tldr{border:1px solid var(--border);border-radius:var(--r-card);background:var(--bg-2);margin-top:0;margin-bottom:36px;padding:18px 22px}.prose .tldr .lbl{font-family:var(--font-jetbrains,monospace);letter-spacing:.14em;text-transform:uppercase;color:var(--fg-muted);margin-bottom:10px;font-size:10.5px;font-weight:500}.prose .tldr ul{flex-direction:column;gap:10px;margin:0;padding:0;list-style:none;display:flex}.prose .tldr ul>li{margin-top:0;padding-left:26px;font-size:14.5px;line-height:1.55;position:relative}.prose .tldr ul>li:before{content:"";background:var(--accent);width:14px;height:1.5px;position:absolute;top:.55em;left:0}.prose .tldr ul>li b{color:var(--fg-strong);margin-right:4px;font-weight:600}.prose .ai-callout{border:1px solid var(--warning-bd);background:var(--warning-soft);border-radius:var(--r-card);grid-template-columns:auto 1fr;align-items:flex-start;gap:14px;margin:1.4em 0;padding:16px 20px;display:grid}.prose .ai-callout .ic{background:var(--warning-bd);color:oklch(98% 0 0);border-radius:6px;flex-shrink:0;place-items:center;width:26px;height:26px;font-weight:700;display:grid}.prose .ai-callout .body{color:var(--fg);font-size:14px;line-height:1.55}.prose .ai-callout .body strong{color:var(--warning-fg)}.prose .table-wrap{border:1px solid var(--border);border-radius:var(--r-card);background:var(--card);margin:1.4em 0;overflow:hidden}.prose table{border-collapse:collapse;width:100%;font-size:14px;line-height:1.5}.prose table thead{background:var(--bg-2);border-bottom:1px solid var(--border)}.prose table th{font-family:var(--font-jetbrains,monospace);letter-spacing:.1em;text-transform:uppercase;color:var(--fg-muted);text-align:left;padding:10px 16px;font-size:10.5px;font-weight:500}.prose table td{border-top:1px solid var(--border);color:var(--fg);vertical-align:top;padding:12px 16px}.prose table tr:first-child td{border-top:0}.prose table td:first-child{color:var(--fg-strong);white-space:nowrap;font-weight:600}.prose table td .region{font-family:var(--font-jetbrains,monospace);color:var(--fg-muted);background:var(--muted);border-radius:4px;margin-top:4px;padding:1px 6px;font-size:11px;display:inline-block}.prose .end-note{border-top:1px dashed var(--border);color:var(--fg-muted);margin-top:3em;padding-top:20px;font-size:13px;font-style:italic}.legal-layout{grid-template-columns:1fr;gap:32px;display:grid}@media (min-width:1024px){.legal-layout{grid-template-columns:220px minmax(0,720px);justify-content:center;gap:56px;max-width:none}.legal-layout .legal-toc{display:block}}.legal-toc{align-self:start;font-size:13px;display:none;position:sticky;top:88px}.toc-inner{border-left:1px solid var(--border);padding-left:16px}.toc-label{font-family:var(--font-jetbrains,monospace);letter-spacing:.14em;text-transform:uppercase;color:var(--fg-muted);margin-bottom:12px;font-size:10.5px;font-weight:500}.toc-list{flex-direction:column;gap:6px;margin:0;padding:0;list-style:none;display:flex}.toc-list a{color:var(--fg-muted);grid-template-columns:22px 1fr;align-items:baseline;gap:6px;padding:4px 0;font-size:13px;line-height:1.4;text-decoration:none;transition:color .15s;display:grid}.toc-list a .n{font-family:var(--font-jetbrains,monospace);color:oklch(from var(--fg-muted) l c h/.7);font-size:10.5px}.toc-list a:hover{color:var(--fg)}.toc-list a.active{color:var(--fg-strong);font-weight:500}.toc-list a.active .n{color:var(--accent)}.last-updated{font-family:var(--font-jetbrains,monospace);color:var(--fg-muted);letter-spacing:.04em;align-items:center;gap:8px;font-size:11.5px;display:inline-flex}.last-updated .dot{background:var(--fg-muted);opacity:.7;border-radius:50%;width:4px;height:4px}:root,[data-theme=light]{--hero-mesh-1:oklch(.96 .04 var(--accent-h));--hero-mesh-2:oklch(97% .03 75)}[data-theme=dark]{--hero-mesh-1:oklch(.28 .06 var(--accent-h));--hero-mesh-2:oklch(26% .05 240)}@media (prefers-color-scheme:dark){:root[data-theme=system]{--hero-mesh-1:oklch(.28 .06 var(--accent-h));--hero-mesh-2:oklch(26% .05 240)}}.hero{padding-top:56px;padding-bottom:64px;position:relative;overflow:hidden}@media (min-width:768px){.hero{padding-top:72px;padding-bottom:96px}}@media (min-width:1100px){.hero{padding-top:96px;padding-bottom:120px}}.hero-bg{background:radial-gradient(ellipse 60% 50% at 20% 0,var(--hero-mesh-1) 0,transparent 65%),radial-gradient(ellipse 50% 50% at 90% 30%,var(--hero-mesh-2) 0,transparent 60%);opacity:.65}.hero-bg,.hero-grid{pointer-events:none;position:absolute;inset:0}.hero-grid{background-image:linear-gradient(to right,var(--border-2) 1px,transparent 1px),linear-gradient(to bottom,var(--border-2) 1px,transparent 1px);opacity:.5;background-size:56px 56px;-webkit-mask-image:radial-gradient(80% 70% at 50% 30%,#000 0,#0000 80%);mask-image:radial-gradient(80% 70% at 50% 30%,#000 0,#0000 80%)}.hero-inner{grid-template-columns:1fr;align-items:center;gap:40px;display:grid;position:relative}@media (min-width:980px){.hero-inner{grid-template-columns:minmax(0,1.05fr) minmax(0,1.15fr);gap:56px}}.eyebrow{font-family:var(--font-jetbrains,monospace);letter-spacing:.12em;text-transform:uppercase;color:var(--accent-soft-fg);background:var(--accent-soft);border-radius:999px;align-items:center;gap:8px;margin-bottom:20px;padding:5px 10px;font-size:11px;display:inline-flex}.eyebrow .pulse{background:var(--accent);border-radius:50%;flex-shrink:0;width:6px;height:6px;position:relative}.eyebrow .pulse:after{content:"";border:2px solid var(--accent);opacity:0;border-radius:50%;animation:heroepulse 2s ease-out infinite;position:absolute;inset:-2px}@keyframes heroepulse{0%{opacity:.6;transform:scale(.6)}to{opacity:0;transform:scale(2.2)}}.hero h1{font-family:var(--font-instrument,"Instrument Serif",serif);letter-spacing:-.02em;text-wrap:balance;color:var(--fg);margin:0 0 20px;font-size:clamp(38px,6.5vw,68px);font-weight:400;line-height:1.02}.hero h1 .accent{font-style:italic}.hero h1 .underline{background-image:linear-gradient(transparent 78%,var(--accent-soft) 78%);background-size:100% 100%;padding:0 2px}.hero .sub{color:var(--fg-muted);text-wrap:pretty;max-width:54ch;margin:0 0 28px;font-size:17px;line-height:1.55}@media (min-width:768px){.hero .sub{font-size:18px}}.hero-cta{gap:10px;margin-bottom:28px}.hero-cta,.hero-trust{flex-wrap:wrap;display:flex}.hero-trust{font-family:var(--font-jetbrains,monospace);color:var(--fg-muted);letter-spacing:.02em;align-items:center;gap:18px;font-size:11.5px}.hero-trust .item{align-items:center;gap:6px;display:inline-flex}.hero-trust .dot{background:var(--fg-muted);border-radius:50%;width:4px;height:4px}.mockup-wrap{perspective:1800px;position:relative}.mockup{background:var(--card);border:1px solid var(--border);border-radius:14px;transition:transform .4s;overflow:hidden;transform:rotate(-.5deg);box-shadow:0 24px 60px -16px oklch(0 0 0/.18),0 6px 18px -6px oklch(0 0 0/.08)}[data-theme=dark] .mockup{box-shadow:0 32px 80px -16px oklch(0 0 0/.7),0 6px 18px -6px oklch(0 0 0/.4)}@media (min-width:980px){.mockup{transform:rotate3d(.2,1,0,-8deg)rotate(-1deg)}.mockup:hover{transform:rotate3d(.2,1,0,-4deg)rotate(-.5deg)}}.mockup-bar{border-bottom:1px solid var(--border);background:var(--bg-2);align-items:center;gap:8px;height:32px;padding:0 12px;display:flex}.mockup-bar .dots{gap:6px;display:flex}.mockup-bar .dot{background:var(--border);border-radius:50%;width:9px;height:9px}.mockup-bar .url{font-family:var(--font-jetbrains,monospace);color:var(--fg-muted);letter-spacing:.02em;flex:1;justify-content:center;align-items:center;font-size:10.5px;display:flex}.mockup-bar .url:before{content:"";opacity:.7;background:oklch(66% .14 150);border-radius:2px;width:8px;height:8px;margin-right:6px}.mockup-strip{background:oklch(65% .14 150);height:80px;position:relative;overflow:hidden}.mockup-strip:after{content:"";background:radial-gradient(60% 100% at 100% 100%,oklch(0 0 0/.15),#0000 70%),radial-gradient(80% 80% at 20% 0,oklch(100% 0 0/.18),#0000 60%);position:absolute;inset:0}.mockup-strip .crumb{font-family:var(--font-jetbrains,monospace);color:oklch(100% 0 0/.85);letter-spacing:.08em;text-transform:uppercase;font-size:10.5px;position:absolute;top:14px;left:18px}.mockup-strip .title{font-family:var(--font-instrument,"Instrument Serif",serif);color:#fff;font-size:22px;line-height:1;position:absolute;bottom:12px;left:18px}.mockup-body{grid-template-columns:1fr;gap:18px;padding:18px;display:grid}@media (min-width:480px){.mockup-body{grid-template-columns:1.3fr 1fr}}.mockup-section h4{font-family:var(--font-jetbrains,monospace);letter-spacing:.14em;text-transform:uppercase;color:var(--fg-muted);margin:0 0 8px;font-size:9.5px;font-weight:500}.lecture-list{flex-direction:column;gap:6px;display:flex}.lecture{border:1px solid var(--border);background:var(--card);border-radius:8px;align-items:center;gap:10px;padding:8px 10px;display:flex}.lecture .ico{background:var(--muted);width:22px;height:22px;color:var(--fg-muted);border-radius:5px;flex-shrink:0;place-items:center;display:grid}.lecture .meta{flex:1;min-width:0}.lecture .name{font-size:12px;font-weight:500;line-height:1.2}.lecture .when{font-size:10.5px;margin-top:2px}.lecture .lstatus,.lecture .when{color:var(--fg-muted);font-family:var(--font-jetbrains,monospace)}.lecture .lstatus{font-size:10px;border-radius:999px;align-items:center;gap:5px;padding:2px 6px;display:inline-flex}.lecture .lstatus .d{background:currentColor;border-radius:50%;width:5px;height:5px}.lecture .lstatus.ready{color:oklch(66% .14 150)}.lecture .lstatus.gen{color:var(--accent)}.lecture .lstatus.gen .d{position:relative}.lecture .lstatus.gen .d:after{content:"";border:1.5px solid var(--accent);opacity:0;border-radius:50%;width:5px;height:5px;animation:heroepulse 1.6s ease-out infinite;position:absolute}.mastery-card{border:1px solid var(--border);background:var(--card);border-radius:10px;padding:12px}.mastery-counts{gap:4px;margin-bottom:8px;display:flex}.mastery-counts .seg{flex:1}.mastery-counts .num{font-family:var(--font-jetbrains,monospace);font-feature-settings:"tnum";color:var(--fg);font-size:15px;font-weight:500;line-height:1.1;display:block}.mastery-counts .lbl{font-family:var(--font-jetbrains,monospace);color:var(--fg-muted);text-transform:uppercase;letter-spacing:.06em;font-size:9px}.mastery-bar{background:var(--muted);border-radius:999px;gap:2px;height:7px;display:flex;overflow:hidden}.mastery-bar .s{min-width:4px;height:100%}.mastery-bar .s.m1{background:oklch(78% .14 75)}.mastery-bar .s.m2{background:oklch(62% .14 240)}.mastery-bar .s.m3{background:oklch(66% .14 150)}.due-row{background:var(--muted);border-radius:8px;justify-content:space-between;align-items:center;margin-top:14px;padding:10px;display:flex}.due-row .l{color:var(--fg-muted);font-size:11.5px}.due-row .v{font-size:12.5px;font-weight:600}.due-row .v b{color:var(--accent)}.flashcard{background:var(--card);border:1px solid var(--border);z-index:2;border-radius:14px;width:280px;padding:16px;position:absolute;bottom:-28px;right:-8px;transform:rotate(3deg);box-shadow:0 24px 60px -16px oklch(0 0 0/.18),0 6px 18px -6px oklch(0 0 0/.08)}[data-theme=dark] .flashcard{box-shadow:0 32px 80px -16px oklch(0 0 0/.7),0 6px 18px -6px oklch(0 0 0/.4)}@media (min-width:980px){.flashcard{width:320px;bottom:-36px;right:-32px;transform:rotate(4deg)}}@media (max-width:600px){.flashcard{width:240px;padding:12px;bottom:-16px;right:8px;transform:rotate(2deg)}}.flashcard .fc-meta{font-family:var(--font-jetbrains,monospace);color:var(--fg-muted);letter-spacing:.06em;text-transform:uppercase;justify-content:space-between;margin-bottom:10px;font-size:10px;display:flex}.flashcard .fc-meta .timer,.flashcard .fc-q{color:var(--fg);font-weight:500}.flashcard .fc-q{margin-bottom:8px;font-size:14px;line-height:1.45}.flashcard .fc-a{color:var(--fg-muted);border-left:2px solid var(--accent);margin-bottom:12px;padding-left:8px;font-size:12.5px;line-height:1.5}.flashcard .fc-rate{grid-template-columns:repeat(4,1fr);gap:4px;display:grid}.flashcard .fc-rate button{background:var(--muted);border:1px solid var(--border);color:var(--fg);cursor:pointer;border-radius:6px;flex-direction:column;justify-content:center;align-items:center;gap:1px;height:36px;font-family:inherit;font-size:11px;font-weight:500;transition:background .12s,border-color .12s;display:flex}.flashcard .fc-rate button:hover{background:var(--card);border-color:var(--fg-muted)}.flashcard .fc-rate button.good{background:var(--accent);color:var(--accent-fg);border-color:var(--accent)}.flashcard .fc-rate .kbd{font-family:var(--font-jetbrains,monospace);opacity:.7;font-size:9px}.stats{background:var(--bg-2);border-top:1px solid var(--border-2);border-bottom:1px solid var(--border-2);padding:28px 0}.stats-grid{grid-template-columns:repeat(2,1fr);gap:12px 24px;display:grid}@media (min-width:768px){.stats-grid{grid-template-columns:repeat(4,1fr);gap:32px}}.stat .num{font-family:var(--font-instrument,"Instrument Serif",serif);letter-spacing:-.02em;color:var(--fg);font-feature-settings:"tnum";font-size:clamp(32px,4.8vw,44px);line-height:1}.stat .num .k,.stat .num .pct{font-family:var(--font-inter,"Inter",sans-serif);color:var(--fg-muted);margin-left:2px;font-size:.6em;font-style:italic;font-weight:400}.stat .lbl{font-family:var(--font-jetbrains,monospace);letter-spacing:.08em;text-transform:uppercase;color:var(--fg-muted);margin-top:6px;font-size:10.5px}.section{padding:72px 0}@media (min-width:768px){.section{padding:96px 0}}.section-head{max-width:56ch;margin-bottom:40px}.section-head .ey{font-family:var(--font-jetbrains,monospace);letter-spacing:.14em;text-transform:uppercase;color:var(--fg-muted);margin-bottom:12px;font-size:11px}.section-head h2{font-family:var(--font-instrument,"Instrument Serif",serif);letter-spacing:-.015em;text-wrap:balance;margin:0 0 14px;font-size:clamp(30px,4vw,42px);font-weight:400;line-height:1.1}.section-head h2 em{color:var(--fg-muted);font-style:italic}.section-head p{color:var(--fg-muted);text-wrap:pretty;margin:0;font-size:16px}.lnd-steps{grid-template-columns:1fr;gap:24px;display:grid;position:relative}@media (min-width:768px){.lnd-steps{grid-template-columns:repeat(4,1fr);gap:20px}.lnd-steps:before{content:"";background:linear-gradient(to right,transparent,var(--border) 12%,var(--border) 88%,transparent);z-index:0;height:1px;position:absolute;top:28px;left:12%;right:12%}}.lnd-step{z-index:1;position:relative}.lnd-step-num{background:var(--card);border:1px solid var(--border);width:28px;height:28px;font-family:var(--font-jetbrains,monospace);color:var(--fg-muted);border-radius:50%;justify-content:center;align-items:center;margin-bottom:16px;font-size:12px;font-weight:500;display:inline-flex}.lnd-step.active .lnd-step-num{background:var(--accent);color:var(--accent-fg);border-color:var(--accent)}.lnd-step-illus{border:1px solid var(--border);background:var(--card);border-radius:10px;justify-content:center;align-items:center;height:96px;margin-bottom:14px;padding:12px;display:flex;position:relative;overflow:hidden}.lnd-step h3{margin:0 0 4px;font-size:15px;font-weight:600}.lnd-step p{color:var(--fg-muted);margin:0;font-size:13.5px;line-height:1.5}.ill-upload{color:var(--fg-muted);flex-direction:column;align-items:center;gap:6px;display:flex}.ill-upload .doc{border:1.5px solid var(--accent);background:var(--card);border-radius:4px;width:44px;height:56px;position:relative}.ill-upload .doc:before{content:"PDF";text-align:center;font-family:var(--font-jetbrains,monospace);color:var(--accent);letter-spacing:.08em;font-size:8px;position:absolute;bottom:6px;left:0;right:0}.ill-upload .doc:after{content:"";background:var(--border);height:1px;box-shadow:0 4px 0 var(--border),0 8px 0 var(--border);position:absolute;top:7px;left:7px;right:7px}.ill-extract{flex-direction:column;gap:4px;width:80%;display:flex}.ill-extract .row{font-size:9px;font-family:var(--font-jetbrains,monospace);color:var(--fg-muted);align-items:center;gap:6px;display:flex}.ill-extract .row .d{background:var(--accent);border-radius:50%;flex-shrink:0;width:5px;height:5px}.ill-extract .row .line{background:var(--muted);border-radius:2px;flex:1;height:6px}.ill-extract .row .line.s{flex:.55}.ill-extract .head{color:var(--accent);letter-spacing:.06em;text-transform:uppercase;margin-bottom:2px;font-size:8.5px}.ill-fsrs{flex-direction:column;gap:6px;width:100%;padding:0 12px;display:flex}.ill-fsrs .lbls{font-family:var(--font-jetbrains,monospace);color:var(--fg-muted);text-transform:uppercase;letter-spacing:.06em;justify-content:space-between;font-size:8px;display:flex}.ill-fsrs .bar{border-radius:999px;gap:2px;height:6px;display:flex;overflow:hidden}.ill-fsrs .bar div{height:100%}.ill-fsrs .nums{font-family:var(--font-jetbrains,monospace);color:var(--fg);justify-content:space-between;font-size:10px;display:flex}.ill-cal{grid-template-columns:repeat(7,1fr);gap:3px;width:80%;display:grid}.ill-cal .d{aspect-ratio:1;background:var(--muted);border-radius:3px}.ill-cal .d.done{opacity:.35;background:oklch(66% .14 150)}.ill-cal .d.done.h{opacity:.6}.ill-cal .d.done.hh{opacity:.85}.ill-cal .d.exam{background:var(--accent);position:relative}.ill-cal .d.exam:after{content:"";border:1.5px solid var(--accent-fg);border-radius:1.5px;position:absolute;inset:2px}.features{grid-template-columns:1fr;gap:12px;display:grid}@media (min-width:600px){.features{grid-template-columns:repeat(2,1fr)}}@media (min-width:980px){.features{grid-template-columns:repeat(3,1fr)}}.feature{border:1px solid var(--border);border-radius:var(--r-card);background:var(--card);padding:24px;transition:border-color .18s,transform .18s;position:relative;overflow:hidden}.feature:hover{border-color:oklch(from var(--fg) l c h/.3)}.feature .icon{background:var(--accent-soft);width:36px;height:36px;color:var(--accent-soft-fg);border-radius:8px;place-items:center;margin-bottom:16px;display:grid}.feature h3{letter-spacing:-.005em;margin:0 0 6px;font-size:16px;font-weight:600}.feature p{color:var(--fg-muted);margin:0;font-size:13.5px;line-height:1.55}.feature .meta{flex-wrap:wrap;gap:6px;margin-top:12px;display:flex}.feature .chip{font-family:var(--font-jetbrains,monospace);background:var(--muted);color:var(--fg-muted);border:1px solid var(--border);border-radius:4px;padding:2px 7px;font-size:10px}.profiles{flex-wrap:wrap;gap:4px;margin-top:12px;display:flex}.profiles .p{font-family:var(--font-jetbrains,monospace);background:var(--muted);color:var(--fg-muted);border-radius:999px;padding:3px 7px;font-size:10px}.profiles .p.on{background:var(--accent);color:var(--accent-fg)}.cta-band{background:var(--fg);color:var(--bg);padding:56px 0;position:relative;overflow:hidden}.cta-band-inner{flex-direction:column;align-items:flex-start;gap:20px;display:flex}@media (min-width:768px){.cta-band-inner{flex-direction:row;justify-content:space-between;align-items:center;gap:32px}}.cta-band h2{font-family:var(--font-instrument,"Instrument Serif",serif);letter-spacing:-.015em;text-wrap:balance;max-width:26ch;margin:0;font-size:clamp(28px,3.8vw,38px);font-weight:400;line-height:1.1}.cta-band em{opacity:.7;font-style:italic}.cta-band .btn-primary{background:var(--bg);color:var(--fg)}.cta-band .btn-primary:hover{background:oklch(from var(--bg) calc(l - .04) c h)}.cta-band .free-note{font-family:var(--font-jetbrains,monospace);opacity:.7;margin-top:2px;font-size:11.5px;display:block}.cta-band-bg{background:radial-gradient(ellipse 40% 80% at 100% 50%,oklch(from var(--accent) l c h/.18) 0,transparent 60%);pointer-events:none;position:absolute;inset:0}.disclosure{padding:56px 0 32px}.disclosure-card{border:1px solid var(--warning-bd);background:var(--warning-soft);color:var(--fg);border-radius:var(--r-card);grid-template-columns:auto 1fr;align-items:flex-start;gap:16px;padding:20px 22px;display:grid}.disclosure-card .ic{background:var(--warning-bd);color:oklch(98% 0 0);border-radius:6px;flex-shrink:0;place-items:center;width:28px;height:28px;font-weight:600;display:grid}.disclosure-card h4{color:var(--warning-fg);margin:0 0 6px;font-size:14px;font-weight:600}.disclosure-card p{color:var(--fg);margin:0;font-size:13.5px;line-height:1.55}.disclosure-card p .quiet{color:var(--fg-muted)}.reveal{opacity:0;transition:opacity .5s,transform .5s cubic-bezier(.22,1,.36,1);transform:translateY(8px)}.reveal.in{opacity:1;transform:none}@media (prefers-reduced-motion:reduce){.reveal{opacity:1;transition:none;transform:none}}.about-shell{max-width:720px;margin:0 auto}.about-hero{border-bottom:1px solid var(--border);grid-template-columns:1fr;gap:28px;margin-bottom:28px;padding-bottom:36px;display:grid}@media (min-width:640px){.about-hero{grid-template-columns:1fr auto;align-items:end;gap:40px}}.about-hero h1{font-family:var(--font-instrument,"Instrument Serif",serif);letter-spacing:-.02em;color:var(--fg);text-wrap:balance;margin:8px 0 0;font-size:clamp(38px,5vw,52px);font-weight:400;line-height:1.05}.about-hero h1 em{color:var(--fg-muted);font-style:italic}.ill{flex-shrink:0;width:96px;height:96px;position:relative}.ill svg{width:100%;height:100%;overflow:visible}.ill .anim-pulse{transform-origin:50%;animation:aboutPulse 3.2s ease-in-out infinite}@keyframes aboutPulse{0%,to{opacity:.35;transform:scale(1)}50%{opacity:1;transform:scale(1.08)}}.audience{flex-direction:column;gap:10px;margin:16px 0 0;display:flex}.audience .row{border-top:1px dashed var(--border);grid-template-columns:minmax(140px,max-content) 1fr;align-items:baseline;gap:16px;padding:12px 0;display:grid}.audience .row:first-child{border-top:0;padding-top:4px}.chip{font-family:var(--font-inter,"Inter",sans-serif);background:var(--card);border:1px solid var(--border);height:26px;color:var(--fg);border-radius:999px;align-items:center;gap:6px;width:max-content;padding:0 11px;font-size:13px;font-weight:500;display:inline-flex}.chip .dot{background:var(--accent);border-radius:50%;flex-shrink:0;width:6px;height:6px}.chip.chip-med .dot{background:oklch(65% .14 25)}.chip.chip-nurse .dot{background:oklch(66% .14 150)}.chip.chip-premed .dot{background:oklch(62% .16 250)}.chip.chip-law .dot{background:oklch(55% .16 280)}.chip.chip-other .dot{background:var(--fg-muted)}.audience .desc{color:var(--fg-muted);font-size:14.5px;line-height:1.55}.stack-card{border:1px solid var(--border);border-radius:var(--r-card);background:var(--bg-2);margin:16px 0 0;padding:20px 22px}.stack-card .lbl{font-family:var(--font-jetbrains,monospace);letter-spacing:.14em;text-transform:uppercase;color:var(--fg-muted);margin-bottom:12px;font-size:10.5px;font-weight:500}.stack-list{grid-template-columns:1fr;gap:8px;display:grid}@media (min-width:600px){.stack-list{grid-template-columns:1fr 1fr}}.stack-list .row{justify-content:space-between;align-items:baseline;gap:12px;padding:4px 0;font-size:13.5px;display:flex}.stack-list .row .k{color:var(--fg-muted);font-family:var(--font-jetbrains,monospace);letter-spacing:.04em;text-transform:uppercase;font-size:11px}.stack-list .row .v{color:var(--fg-strong);font-weight:500}.contact{border:1px solid var(--border);border-radius:var(--r-card);background:var(--card);flex-direction:column;gap:14px;margin-top:28px;padding:22px;display:flex}@media (min-width:600px){.contact{flex-direction:row;justify-content:space-between;align-items:center}}.contact .email{font-family:var(--font-jetbrains,monospace);color:var(--link);text-decoration:underline;-webkit-text-decoration-color:oklch(from var(--link) l c h/.4);text-decoration-color:oklch(from var(--link) l c h/.4);text-underline-offset:3px;font-size:14px}.contact .email:hover{color:var(--link-hover)}.contact .meta{color:var(--fg-muted);margin-top:4px;font-size:13px}.contact .meta .em{font-style:italic}.notfound-page{flex:1;justify-content:center;align-items:center;padding:64px 16px;display:flex;position:relative}@media (min-width:640px){.notfound-page{padding:96px 24px}}.ghost-mono{background:var(--muted);width:280px;height:280px;color:oklch(from var(--fg) l c h/.05);font-family:var(--font-instrument,"Instrument Serif",serif);letter-spacing:-.06em;opacity:.55;z-index:0;pointer-events:none;border-radius:56px;place-items:center;font-size:220px;font-style:italic;line-height:1;display:grid;position:absolute;top:50%;left:50%;transform:translate(-50%,-56%);-webkit-mask-image:radial-gradient(closest-side,#000 30%,#0000 75%);mask-image:radial-gradient(closest-side,#000 30%,#0000 75%)}@media (min-width:640px){.ghost-mono{width:360px;height:360px;font-size:280px}}.nf-inner{z-index:1;text-align:center;flex-direction:column;align-items:center;gap:18px;max-width:480px;display:flex;position:relative}.mark-404{font-family:var(--font-instrument,"Instrument Serif",serif);color:var(--fg-muted);letter-spacing:.04em;align-items:center;gap:12px;margin:0;font-size:28px;font-weight:400;line-height:1;display:inline-flex}.mark-404:after,.mark-404:before{content:"";background:var(--border);width:28px;height:1px}h1.nf-h{font-family:var(--font-instrument,"Instrument Serif",serif);letter-spacing:-.015em;color:var(--fg);text-wrap:balance;margin:0;font-size:clamp(34px,5vw,46px);font-weight:400;line-height:1.05}h1.nf-h em{font-style:italic}.nf-body,h1.nf-h em{color:var(--fg-muted)}.nf-body{max-width:38ch;margin:0;font-size:15px;line-height:1.55}.nf-ctas{flex-wrap:wrap;justify-content:center;gap:10px;margin-top:4px;display:flex}.report{font-family:var(--font-jetbrains,monospace);letter-spacing:.04em;color:oklch(from var(--fg-muted) l c h/.7);margin-top:28px;font-size:11px}.report a{color:inherit;text-underline-offset:3px;text-decoration:underline;-webkit-text-decoration-color:oklch(from var(--fg-muted) l c h/.3);text-decoration-color:oklch(from var(--fg-muted) l c h/.3);transition:color .15s}.report a:hover{color:var(--fg)}.nf-dots{gap:6px;margin-bottom:4px;display:flex}.nf-dots i{opacity:.55;border-radius:50%;width:6px;height:6px;display:inline-block}.ud-pagebg{opacity:.55;flex-direction:column;gap:14px;display:flex}.ph-strip{background:oklch(65% .14 150);border-radius:14px 14px 0 0;height:16px}.ph-hero{background:var(--card);border:1px solid var(--border);border-radius:14px;height:110px;margin-top:-14px}.ph-grid{grid-template-columns:repeat(4,1fr);gap:10px;display:grid}.ph-card{height:76px}.ph-card,.ph-section{border:1px solid var(--border);background:var(--card);border-radius:12px}.ph-section{flex-direction:column;gap:8px;padding:16px;display:flex}.ph-line{background:var(--muted);border-radius:6px;height:28px}.ud-backdrop{-webkit-backdrop-filter:blur(1.5px);backdrop-filter:blur(1.5px);z-index:80;background:oklch(0 0 0/.36);place-items:center;padding:24px;animation:ud-fade .16s;display:grid;position:absolute;inset:0}@keyframes ud-fade{0%{opacity:0}to{opacity:1}}.ud-dialog{background:var(--card);width:100%;max-width:560px;color:var(--fg);border:1px solid var(--border);box-shadow:var(--shadow-pop);border-radius:14px;flex-direction:column;animation:ud-rise .2s cubic-bezier(.2,.7,.2,1);display:flex;overflow:hidden}@keyframes ud-rise{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}.ud-header{border-bottom:1px solid var(--border);flex-direction:column;display:flex}.ud-title-row{justify-content:space-between;align-items:center;padding:14px 14px 12px 18px;display:flex}.ud-title{letter-spacing:-.01em;font-family:Instrument Serif,serif;font-size:22px}.ud-close{width:28px;height:28px;color:var(--muted-fg);cursor:pointer;background:0 0;border:0;border-radius:6px;place-items:center;display:grid}.ud-close:hover{background:var(--muted);color:var(--fg)}.ud-tabs{gap:4px;padding:0 12px;display:flex}.ud-tabs .tab{font:inherit;cursor:pointer;background:0 0;border:0;border-bottom:2px solid #0000;align-items:center;gap:8px;margin-bottom:-1px;padding:10px 12px;font-size:13px;font-weight:500}.ud-tabs .tab,.ud-tabs .tab .ic{color:var(--muted-fg);display:inline-flex}.ud-tabs .tab.active{color:var(--fg);border-bottom-color:var(--accent)}.ud-tabs .tab.active .ic,.ud-tabs .tab:hover:not(.active){color:var(--fg)}.ud-stepbar{gap:4px;padding:10px 18px 12px;display:flex}.ud-stepbar .seg{background:var(--muted-2);border-radius:999px;flex:1;height:3px;transition:background .15s}.ud-stepbar .seg.on{background:var(--accent)}.ud-hide-stepbar .ud-stepbar{display:none}.ud-stepbar-dots .ud-stepbar .seg{border-radius:50%;flex:0 0 8px;height:8px}.ud-body{min-height:240px;padding:16px 18px 8px}.ud-step{gap:12px}.ud-dropzone,.ud-step{flex-direction:column;display:flex}.ud-dropzone{border:1.5px dashed var(--border);background:var(--subtle);width:100%;height:200px;color:var(--fg);cursor:pointer;border-radius:12px;align-items:center;gap:8px;padding:24px;font-family:inherit;transition:background .12s,border-color .12s}.ud-dropzone:hover{border-color:var(--muted-fg)}.ud-dropzone.drag{border-style:solid;border-color:var(--accent);background:var(--accent-soft)}.ud-dropzone .ic{color:var(--muted-fg);margin-top:18px;margin-bottom:4px;display:inline-flex}.ud-dropzone .prim{font-size:14px;font-weight:500}.ud-dropzone .hint{color:var(--muted-fg);letter-spacing:.01em;font-family:JetBrains Mono,monospace;font-size:11px}.ud-filerow{background:var(--muted);border:1px solid var(--border);border-radius:10px;align-items:center;gap:12px;padding:12px 14px;display:flex}.ud-filerow .ftype{background:var(--card);border:1px solid var(--border);width:36px;height:36px;color:var(--muted-fg);border-radius:8px;flex-shrink:0;place-items:center;display:grid}.ud-filerow .info{flex:1;min-width:0}.ud-filerow .nm{text-overflow:ellipsis;white-space:nowrap;font-size:13.5px;font-weight:500;overflow:hidden}.ud-filerow .meta{color:var(--muted-fg);margin-top:2px;font-family:JetBrains Mono,monospace;font-size:11px}.ud-filerow .x{width:26px;height:26px;color:var(--muted-fg);cursor:pointer;background:0 0;border:0;border-radius:6px;place-items:center;display:grid}.ud-filerow .x:hover{background:var(--bg);color:var(--fg)}.ud-filerow .rerec{color:var(--accent);font-size:12px;text-decoration:none}.ud-filerow .rerec:hover{text-decoration:underline}.ud-error{color:var(--destructive);background:var(--destructive-soft);border-radius:8px;align-items:center;gap:8px;padding:8px 10px;font-size:12.5px;display:flex}.ud-error .ic{display:inline-flex}[data-theme=dark] .ud-error{color:oklch(82% .1 25)}.ud-rec-zone{background:var(--subtle);border:1px solid var(--border);border-radius:12px;flex-direction:column;align-items:center;gap:12px;padding:22px 16px 16px;display:flex}.ud-recbtn{background:var(--card);width:88px;height:88px;color:var(--muted-fg);cursor:pointer;box-shadow:0 0 0 1px var(--border),0 4px 14px -4px oklch(0 0 0/.18);border:0;border-radius:50%;place-items:center;transition:transform .12s,color .12s;display:grid}.ud-recbtn:hover{color:var(--fg);transform:translateY(-1px)}.ud-recbtn.rec{color:oklch(98.5% 0 0);background:var(--destructive);box-shadow:0 0 0 8px oklch(from var(--destructive) l c h/.15),0 0 0 1px var(--destructive);animation:ud-pulse 1.6s ease-out infinite}@keyframes ud-pulse{0%,to{box-shadow:0 0 0 8px oklch(from var(--destructive) l c h/.15),0 0 0 1px var(--destructive)}50%{box-shadow:0 0 0 14px oklch(from var(--destructive) l c h/.05),0 0 0 1px var(--destructive)}}.ud-wave{align-items:center;gap:2px;width:100%;max-width:380px;height:56px;padding:0 6px;display:flex}.ud-wave .bar{background:var(--muted-fg);opacity:.5;border-radius:1px;flex:1;height:30%;min-height:3px}.ud-wave.active .bar{background:var(--destructive);opacity:.8;animation:ud-bar .8s ease-in-out infinite alternate}@keyframes ud-bar{0%{transform:scaleY(.5)}to{transform:scaleY(1.05)}}.ud-timer{font-feature-settings:"tnum";letter-spacing:.02em;color:var(--fg);align-items:baseline;gap:8px;font-family:JetBrains Mono,monospace;font-size:28px;font-weight:500;display:inline-flex}.ud-timer .max{color:var(--muted-fg);font-size:12px;font-weight:400}.ud-timer.amber{color:var(--warning)}.ud-timer.red{color:var(--destructive)}[data-theme=dark] .ud-timer.amber{color:oklch(88% .1 75)}[data-theme=dark] .ud-timer.red{color:oklch(82% .1 25)}.ud-rec-hint{color:var(--muted-fg);font-size:12px}.ud-rec-hint.warn{color:var(--warning)}.ud-rec-hint.danger{color:var(--destructive)}[data-theme=dark] .ud-rec-hint.warn{color:oklch(88% .1 75)}[data-theme=dark] .ud-rec-hint.danger{color:oklch(82% .1 25)}.ud-rec-done .ud-filerow{border-color:#0000}.ud-rec-done .ud-filerow,[data-theme=dark] .ud-rec-done .ud-filerow{background:var(--success-soft)}.ud-deny{align-items:flex-start;gap:12px;padding:20px 4px;display:flex}.ud-deny .ic{color:var(--destructive);margin-top:2px}.ud-deny .head{color:var(--fg);font-size:13.5px;font-weight:500}.ud-deny .sub{color:var(--muted-fg);margin-top:4px;font-size:12.5px}.ud-deny .sub a{color:var(--accent);text-decoration:none}.ud-field{flex-direction:column;gap:6px;display:flex}.ud-field .lbl{color:var(--fg);font-size:12px;font-weight:500}.ud-field .lbl .req{color:var(--muted-fg);text-transform:uppercase;letter-spacing:.06em;margin-left:4px;font-family:JetBrains Mono,monospace;font-size:10.5px;font-weight:400}.ud-input{border:1px solid var(--border);background:var(--card);width:100%;height:36px;color:var(--fg);font:inherit;border-radius:8px;padding:0 12px;font-size:13.5px}.ud-input:focus{border-color:var(--accent);box-shadow:0 0 0 3px var(--ring);outline:none}.ud-input.sm{height:28px;padding:0 8px;font-size:12.5px}.ud-input.ud-input-btn{cursor:pointer;text-align:left;align-items:center;gap:6px;display:inline-flex}.ud-input.ud-input-btn .ic{color:var(--muted-fg);display:inline-flex}.ud-select{background:var(--card);border:1px solid var(--border);width:100%;height:36px;font:inherit;color:var(--fg);cursor:pointer;border-radius:8px;align-items:center;gap:10px;padding:0 12px 0 0;font-size:13.5px;display:flex;overflow:hidden}.ud-select .strip{flex-shrink:0;width:4px;height:36px}.ud-select .nm{text-align:left;flex:1;padding-left:8px}.ud-select .chev{color:var(--muted-fg);display:inline-flex}.ud-hint{color:var(--muted-fg);font-size:11.5px}.ud-hint b{color:var(--fg);font-weight:500}.ud-advanced{color:var(--muted-fg);cursor:pointer;background:0 0;border:0;align-self:flex-start;align-items:center;gap:6px;padding:4px 0;font-family:inherit;font-size:12.5px;display:inline-flex}.ud-advanced:hover{color:var(--fg)}.ud-advanced .chev{display:inline-flex}.ud-adv{border-top:1px dashed var(--border);flex-direction:column;gap:12px;padding:6px 0 0;display:flex}.ud-field-row{grid-template-columns:1fr 1.4fr 1fr;gap:10px;display:grid}.ud-foot{background:var(--subtle);border-top:1px solid var(--border);justify-content:space-between;align-items:center;padding:14px 18px;display:flex}.ud-foot-meta{color:var(--muted-fg);font-family:JetBrains Mono,monospace;font-size:11px}.ud-foot-actions{gap:8px;display:flex}.tb-btn.disabled,.tb-btn:disabled{opacity:.55;cursor:not-allowed}.upw-host{pointer-events:none;z-index:60;position:absolute;inset:0}.upw-host .upw{pointer-events:auto}.upw{width:var(--upw-w,320px);background:var(--card);color:var(--fg);border:1px solid var(--border);box-shadow:var(--shadow-pop);border-radius:12px;font-family:Inter,sans-serif;position:absolute;bottom:24px;right:24px;overflow:hidden}.upw.mobile{width:auto;bottom:80px;left:16px;right:16px}.upw-head{border:0;border-bottom:1px solid var(--border);cursor:pointer;text-align:left;width:100%;font:inherit;color:var(--fg);background:0 0;align-items:center;gap:10px;padding:10px 12px;display:flex}.upw.collapsed .upw-head{border-bottom:0}.upw-led{background:var(--muted-fg);border-radius:50%;flex-shrink:0;width:8px;height:8px;position:relative}.upw-led.on{background:var(--accent)}.upw-led.on:after{content:"";border:2px solid var(--accent);opacity:0;border-radius:50%;animation:upw-led 1.6s ease-out infinite;position:absolute;inset:-3px}@keyframes upw-led{0%{opacity:.6;transform:scale(.6)}to{opacity:0;transform:scale(2)}}.upw-headtitle{flex:1;font-size:12.5px;font-weight:500}.upw-headactions{gap:6px}.upw-chev,.upw-clear,.upw-headactions{align-items:center;display:inline-flex}.upw-chev,.upw-clear{width:22px;height:22px;color:var(--muted-fg);border-radius:5px;justify-content:center}.upw-chev:hover,.upw-clear:hover{background:var(--muted);color:var(--fg)}.upw-body{flex-direction:column;max-height:360px;display:flex;overflow-y:auto}.upw-row{border-bottom:1px solid var(--border-2);grid-template-columns:32px minmax(0,1fr) auto;align-items:flex-start;gap:10px;padding:10px 12px;display:grid}.upw-row:last-child{border-bottom:0}.upw-ftype{background:var(--muted);width:32px;height:32px;color:var(--muted-fg);box-shadow:0 0 0 2px var(--card) inset,0 0 0 1px var(--border);border-radius:8px;place-items:center;display:grid}.upw-ftype.tint-accent{box-shadow:0 0 0 2px var(--card) inset,0 0 0 1.5px var(--accent);color:var(--accent)}.upw-ftype.tint-success{box-shadow:0 0 0 2px var(--card) inset,0 0 0 1.5px var(--success);color:var(--success)}.upw-ftype.tint-fail{box-shadow:0 0 0 2px var(--card) inset,0 0 0 1.5px var(--destructive);color:var(--destructive)}[data-theme=dark] .upw-ftype.tint-success{color:oklch(78% .12 150)}[data-theme=dark] .upw-ftype.tint-fail{color:oklch(78% .12 25)}.upw-row .main{flex-direction:column;gap:6px;min-width:0;display:flex}.upw-row .title{color:var(--fg);text-overflow:ellipsis;white-space:nowrap;font-size:12.5px;font-weight:500;text-decoration:none;overflow:hidden}.upw-row .title.link:hover{color:var(--accent)}.upw-row .rename{align-items:center;gap:6px;display:flex}.upw-row .rename .mini{border:1px solid var(--border);background:var(--card);height:24px;color:var(--fg);cursor:pointer;border-radius:5px;padding:0 8px;font-family:inherit;font-size:11px}.upw-row .rename .mini.primary{background:var(--accent);color:var(--accent-fg);border-color:#0000}.upw-stage{color:var(--muted-fg);letter-spacing:.01em;align-items:center;gap:8px;font-family:JetBrains Mono,monospace;font-size:11.5px;display:flex}.upw-stage.prog{flex-direction:column;align-items:stretch;gap:5px}.upw-stage .lbl{font-feature-settings:"tnum"}.upw-stage.ready{color:var(--success)}.upw-stage.ready .ic{color:var(--success);display:inline-flex}[data-theme=dark] .upw-stage.ready,[data-theme=dark] .upw-stage.ready .ic{color:oklch(78% .12 150)}.upw-stage.failed{color:var(--destructive);align-items:flex-start}.upw-stage.failed .ic{color:var(--destructive);flex-shrink:0;margin-top:1px;display:inline-flex}.upw-stage.failed a{color:var(--destructive);text-underline-offset:2px;font-weight:500;text-decoration:underline}[data-theme=dark] .upw-stage.failed,[data-theme=dark] .upw-stage.failed .ic,[data-theme=dark] .upw-stage.failed a{color:oklch(82% .1 25)}.upw-stage .bar{background:var(--muted-2);border-radius:999px;height:3px;position:relative;overflow:hidden}.upw-stage .bar .fill{background:var(--accent);border-radius:999px;height:100%;transition:width .4s;position:absolute}.upw-stage .bar.indet .fill{width:40%;animation:upw-indet 1.5s ease-in-out infinite}@keyframes upw-indet{0%{transform:translate(-100%)}to{transform:translate(260%)}}.upw-row .actions{flex-shrink:0;align-items:center;gap:2px;display:flex}.upw-row .ia{width:24px;height:24px;color:var(--muted-fg);cursor:pointer;background:0 0;border:0;border-radius:5px;place-items:center;display:grid}.upw-row .ia:hover{background:var(--muted);color:var(--fg)}.upw-row .ia.dim{color:var(--muted-fg);opacity:.6}.shell.mobile .ud-dialog{max-width:100%}.shell.mobile .ud-body{min-height:200px}.np-page{gap:28px;max-width:1180px;margin:0 auto}.np-page,.np-section{flex-direction:column;display:flex}.np-section{gap:14px}.np-sec-head{flex-wrap:wrap;align-items:center;gap:14px;display:flex}.np-sec-title{letter-spacing:.14em;text-transform:uppercase;color:var(--muted-fg);align-items:center;gap:8px;font-family:JetBrains Mono,monospace;font-size:10.5px;font-weight:500;display:inline-flex}.np-sec-title .ic{color:var(--accent);display:inline-flex}.np-sec-count{color:var(--muted-fg);background:var(--muted);border-radius:999px;padding:2px 7px;font-family:JetBrains Mono,monospace;font-size:11px}.np-grid{grid-template-columns:repeat(3,1fr);gap:12px;display:grid}@media (min-width:1400px){.np-grid{grid-template-columns:repeat(4,1fr)}}.np-card{background:var(--card);border:1px solid var(--border);color:var(--fg);border-radius:12px;flex-direction:column;gap:10px;min-height:168px;padding:16px;text-decoration:none;transition:border-color .12s,box-shadow .15s,transform 50ms;display:flex;position:relative}.np-card:hover{border-color:var(--muted-fg);box-shadow:var(--shadow)}.np-card .pin{color:var(--accent);opacity:.65;display:inline-flex;position:absolute;top:14px;right:14px}.np-card .title{-webkit-line-clamp:2;padding-right:20px;font-size:14px;font-weight:600;line-height:1.3}.np-card .snippet,.np-card .title{-webkit-box-orient:vertical;display:-webkit-box;overflow:hidden}.np-card .snippet{color:var(--muted-fg);-webkit-line-clamp:3;flex:1;font-size:12.5px;line-height:1.5}.np-card .foot{justify-content:space-between;align-items:center;gap:10px;margin-top:auto;display:flex}.np-card .foot .when{color:var(--muted-fg);font-family:JetBrains Mono,monospace;font-size:10.5px}.np-chip{color:var(--fg);background:var(--muted);border:1px solid var(--border);border-radius:4px;align-items:center;gap:7px;min-width:0;max-width:100%;padding:3px 8px 3px 0;font-size:11.5px;display:inline-flex;overflow:hidden}.np-chip .strip{flex-shrink:0;align-self:stretch;width:4px}.np-chip .text{align-items:baseline;gap:5px;min-width:0;padding-left:6px;display:flex}.np-chip .text .course{font-weight:500}.np-chip .text .course,.np-chip .text .lect{white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.np-chip .text .lect{color:var(--muted-fg);font-family:JetBrains Mono,monospace;font-size:10.5px}.np-chip.sm .text .course{font-size:11px}.np-chip.sm .text .lect{font-size:10px}.np-chips{flex-wrap:wrap;margin-left:auto;display:flex}.np-chip-btn,.np-chips{align-items:center;gap:6px}.np-chip-btn{border:1px solid var(--border);background:var(--card);height:26px;color:var(--muted-fg);cursor:pointer;border-radius:999px;padding:0 10px;font-family:inherit;font-size:11.5px;font-weight:500;display:inline-flex}.np-chip-btn:hover{color:var(--fg);background:var(--muted)}.np-chip-btn.on{background:var(--fg);color:var(--bg);border-color:var(--fg)}.np-chip-btn .dot{border-radius:50%;width:6px;height:6px;display:inline-block}.np-chip-sep{background:var(--border);width:1px;height:18px;margin:0 2px}.np-list{background:var(--card);border:1px solid var(--border);border-radius:12px;flex-direction:column;display:flex;overflow:hidden}.np-row{border-bottom:1px solid var(--border-2);color:var(--fg);grid-template-columns:18px minmax(0,1fr) auto auto;align-items:center;gap:14px;padding:11px 16px;text-decoration:none;transition:background .1s;display:grid;position:relative}.np-row:last-child{border-bottom:0}.np-row.hover,.np-row:hover{background:var(--muted)}.np-row .pin-slot{place-items:center;width:18px;display:grid}.np-row .pin{color:var(--accent);display:inline-flex}.np-row .pin-dim{color:var(--muted-fg);opacity:.25;display:inline-flex}.np-row .main{align-items:baseline;gap:12px;min-width:0;display:flex;overflow:hidden}.np-row .main .title{white-space:nowrap;text-overflow:ellipsis;flex-shrink:0;max-width:260px;font-size:13.5px;font-weight:500;overflow:hidden}.np-row .main .title em{color:var(--muted-fg);font-style:italic;font-weight:400}.np-row .main .snippet{color:var(--muted-fg);text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0;font-size:12.5px;overflow:hidden}.np-row .meta{flex-shrink:0;align-items:center;gap:10px;display:flex}.np-row .meta .when{color:var(--muted-fg);font-family:JetBrains Mono,monospace;font-size:10.5px}.np-row .row-more{width:26px;height:26px;color:var(--muted-fg);cursor:pointer;background:0 0;border:0;border-radius:6px;justify-content:center;align-items:center;display:none}.np-row.hover .row-more,.np-row:hover .row-more{display:inline-flex}.np-row .row-more:hover{background:var(--bg);color:var(--fg)}.np-all-grid .np-list{background:0 0;border:0;grid-template-columns:repeat(3,1fr);gap:12px;display:grid}.np-all-grid .np-row{border:1px solid var(--border);background:var(--card);border-radius:12px;grid-template-columns:18px minmax(0,1fr) auto;padding:14px 16px}.np-all-grid .np-row .main{flex-direction:column;align-items:flex-start;gap:4px}.np-all-grid .np-row .main .title{max-width:100%}.np-empty{text-align:center;background:var(--card);border:1px dashed var(--border);border-radius:14px;flex-direction:column;align-items:center;gap:12px;max-width:540px;margin:24px auto;padding:60px 24px;display:flex}.np-empty .ic{background:var(--accent-soft);width:56px;height:56px;color:var(--accent-soft-fg);border-radius:14px;place-items:center;margin-bottom:4px;display:grid}.np-empty .ic svg{width:22px;height:22px}.np-empty h3{letter-spacing:-.01em;margin:0;font-family:Instrument Serif,serif;font-size:24px;font-weight:400}.np-empty p{color:var(--muted-fg);max-width:380px;margin:0;font-size:13.5px;line-height:1.5}.np-nomatch{text-align:center;color:var(--muted-fg);background:var(--subtle);border:1px dashed var(--border);border-radius:10px;padding:26px;font-size:13px}.np-nomatch .link{font:inherit;color:var(--accent);cursor:pointer;text-underline-offset:2px;background:0 0;border:0;margin-left:4px;padding:0;font-size:13px;text-decoration:underline}.np-newpop{z-index:30;background:var(--card);border:1px solid var(--border);width:280px;box-shadow:var(--shadow-pop);border-radius:12px;padding:8px;position:absolute;top:calc(100% + 8px);right:0}.np-newpop .lbl{letter-spacing:.12em;text-transform:uppercase;color:var(--muted-fg);padding:6px 8px 4px;font-family:JetBrains Mono,monospace;font-size:10px;font-weight:500}.np-newpop .opts{flex-direction:column;display:flex}.np-newpop .opt{color:var(--fg);font:inherit;cursor:pointer;text-align:left;background:0 0;border:0;border-radius:7px;align-items:center;gap:10px;padding:8px;font-size:13px;display:flex;overflow:hidden}.np-newpop .opt:hover{background:var(--muted)}.np-newpop .opt .strip{border-radius:2px;flex-shrink:0;width:4px;height:22px}.np-newpop .opt.link{color:var(--accent);padding-left:8px;font-size:12.5px}.np-newpop .sep{background:var(--border);height:1px;margin:4px}.ne-root{width:100%;height:100%;color:var(--fg);-webkit-font-smoothing:antialiased;flex-direction:column;font-family:Inter,sans-serif;display:flex;overflow:hidden}.ne-root,.ne-strip{background:var(--bg)}.ne-strip{z-index:20;border-bottom:1px solid var(--border);grid-template-columns:minmax(140px,1fr) minmax(0,2fr) minmax(280px,1fr);align-items:center;gap:16px;height:48px;padding:0 20px;display:grid;position:sticky;top:0}.ne-back{color:var(--muted-fg);align-items:center;gap:6px;font-size:12.5px;text-decoration:none;display:inline-flex}.ne-back:hover{color:var(--fg)}.ne-back .ic{display:inline-flex}.ne-context{color:var(--muted-fg);text-overflow:ellipsis;white-space:nowrap;justify-self:center;align-items:center;gap:8px;max-width:100%;font-family:JetBrains Mono,monospace;font-size:12px;display:flex;overflow:hidden}.ne-context .ne-context-strip{border-radius:2px;flex-shrink:0;width:4px;height:16px}.ne-context .dot{opacity:.4;padding:0 2px}.ne-context .lecture{color:var(--fg)}.ne-actions{justify-content:flex-end;align-items:center;gap:8px;display:flex}.ne-save{color:var(--muted-fg);letter-spacing:.01em;align-items:center;gap:6px;font-family:JetBrains Mono,monospace;font-size:11.5px}.ne-save,.ne-save svg{display:inline-flex}.ne-save.saved{color:var(--success)}[data-theme=dark] .ne-save.saved{color:oklch(78% .12 150)}.ne-save.saving svg{animation:ne-spin .9s linear infinite}@keyframes ne-spin{to{transform:rotate(1turn)}}.ne-save.unsaved{color:var(--warning)}[data-theme=dark] .ne-save.unsaved{color:oklch(88% .1 75)}.ne-save.unsaved .d{background:var(--warning);border-radius:50%;width:6px;height:6px}[data-theme=dark] .ne-save.unsaved .d{background:oklch(88% .1 75)}.ne-save.err,.ne-save.err a{color:var(--destructive)}.ne-save.err a{text-underline-offset:2px;font-weight:500;text-decoration:underline}[data-theme=dark] .ne-save.err,[data-theme=dark] .ne-save.err a{color:oklch(82% .1 25)}.ne-pin{border:1px solid var(--border);background:var(--card);width:28px;height:28px;color:var(--muted-fg);cursor:pointer;border-radius:6px;place-items:center;display:grid}.ne-pin:hover{color:var(--fg)}.ne-pin.on{color:var(--accent);border-color:var(--accent);background:var(--accent-soft)}.iconbtn.sm{border-radius:6px;width:28px;height:28px}.ne-more-menu{z-index:60;background:var(--card);border:1px solid var(--border);border-radius:8px;min-width:160px;padding:4px;position:absolute;top:calc(100% + 4px);right:0;box-shadow:0 4px 16px -4px oklch(0 0 0/.14)}.ne-more-menu button{text-align:left;width:100%;color:var(--fg);cursor:pointer;background:0 0;border:0;border-radius:5px;padding:6px 10px;font-size:13px;display:block}.ne-more-menu button:hover{background:var(--muted)}.ne-more-menu button.destructive{color:var(--destructive)}.ne-more-sep{background:var(--border);height:1px;margin:4px 0}.row-action-btn{opacity:0;width:26px;height:26px;color:var(--fg-muted);cursor:pointer;background:0 0;border:0;border-radius:5px;flex-shrink:0;place-items:center;transition:opacity .1s,background .1s;display:grid}.row-line:hover .row-action-btn{opacity:1}.row-action-btn:hover{background:var(--muted);color:var(--fg)}.row-action-menu{z-index:60;background:var(--card);border:1px solid var(--border);border-radius:8px;min-width:140px;padding:4px;position:absolute;top:calc(100% + 2px);right:0;box-shadow:0 4px 16px -4px oklch(0 0 0/.14)}.row-action-menu button{text-align:left;width:100%;color:var(--fg);cursor:pointer;background:0 0;border:0;border-radius:5px;padding:6px 10px;font-size:13px;display:block}.row-action-menu button:hover{background:var(--muted)}.row-action-menu button.destructive{color:var(--destructive)}.row-action-sep{background:var(--border);height:1px;margin:4px 0}.ne-main{flex-direction:column;flex:1;align-items:center;padding:36px 28px 120px;display:flex;overflow-y:auto}.ne-main>*{width:100%;max-width:720px}.ne-title{width:100%;color:var(--fg);letter-spacing:-.02em;background:0 0;border:0;outline:none;margin-bottom:12px;padding:0;font-family:Instrument Serif,serif;font-size:36px;font-weight:400;line-height:1.15}.ne-title-sans .ne-title{letter-spacing:-.015em;font-family:Inter,sans-serif;font-weight:700}.ne-title::placeholder{color:var(--muted-fg);opacity:.6;font-style:italic}.ne-title-rule{background:var(--border);height:1px;margin-bottom:12px}.ne-toolbar{z-index:10;border-bottom:1px solid var(--border);background:var(--bg);align-items:center;gap:2px;margin-bottom:18px;padding:6px 4px;display:flex;position:sticky;top:0}.ne-toolbar .tool{width:30px;height:30px;color:var(--muted-fg);cursor:pointer;font:inherit;background:0 0;border:0;border-radius:6px;justify-content:center;align-items:center;display:inline-flex}.ne-toolbar .tool:hover{background:var(--muted);color:var(--fg)}.ne-toolbar .sep{background:var(--border);width:1px;height:18px;margin:0 4px}.ne-body{color:var(--fg);font-family:Inter,sans-serif;font-size:15px;line-height:1.7;position:relative}.ne-font-serif .ne-body{font-family:Instrument Serif,Iowan Old Style,Georgia,serif;font-size:17px;line-height:1.65}.ne-font-sans .ne-body{font-family:Inter,sans-serif;font-size:15px;line-height:1.7}.ne-body h1,.ne-body h2,.ne-body h3{letter-spacing:-.015em;color:var(--fg);margin:1.4em 0 .5em;font-family:Instrument Serif,serif;font-weight:400}.ne-body h1{margin-top:0;font-size:30px}.ne-body h2{font-size:22px}.ne-body h3{font-size:18px}.ne-body p{margin:0 0 1em}.ne-body em{font-style:italic}.ne-body b,.ne-body strong{font-weight:600}.ne-body a{color:var(--accent);text-underline-offset:2px;text-decoration:underline}.ne-body code{background:var(--muted);color:var(--fg);border-radius:4px;padding:1px 6px;font-family:JetBrains Mono,monospace;font-size:.86em}.ne-body pre{background:var(--muted);border-left:3px solid var(--border);border-radius:8px;margin:1em 0;padding:14px 16px;overflow-x:auto}.ne-body pre code{white-space:pre;background:0 0;padding:0;font-family:JetBrains Mono,monospace;font-size:12.5px;line-height:1.6}.ne-body blockquote{border-left:3px solid var(--accent);color:var(--fg);margin:1em 0;padding:4px 0 4px 18px;font-family:Instrument Serif,serif;font-size:18px;font-style:italic;line-height:1.55}.ne-body ol,.ne-body ul{margin:0 0 1em;padding-left:22px}.ne-body li{margin-bottom:6px}.ne-body ol li::marker{color:var(--muted-fg);font-family:JetBrains Mono,monospace;font-size:.85em}.ne-selection{background:oklch(from var(--accent) l c h/.25);border-radius:2px;padding:1px 0}.ne-body .empty-para{color:var(--muted-fg);padding:4px 0;position:relative}.ne-body .slash-cursor:after{content:"";background:var(--fg);vertical-align:-3px;width:1px;height:16px;margin-left:1px;animation:ne-blink 1s steps(2) infinite;display:inline-block}@keyframes ne-blink{to{opacity:0}}.ne-bubble{background:var(--fg);color:var(--bg);z-index:30;border-radius:8px;align-items:center;gap:2px;padding:4px;display:flex;position:absolute;box-shadow:0 8px 24px -6px oklch(0 0 0/.4)}.ne-bubble:after{content:"";border:5px solid #0000;border-top:5px solid var(--fg);width:0;height:0;position:absolute;top:100%;left:24px}.ne-bubble .tool{width:28px;height:26px;color:inherit;cursor:pointer;background:0 0;border:0;border-radius:5px;justify-content:center;align-items:center;display:inline-flex}.ne-bubble .tool:hover{background:oklch(from var(--bg) l c h/.15)}.ne-bubble .sep{background:oklch(from var(--bg) l c h/.2);width:1px;height:16px;margin:0 3px}.ne-slash{background:var(--card);border:1px solid var(--border);width:320px;box-shadow:var(--shadow-pop);z-index:30;border-radius:10px;max-height:360px;margin-top:6px;padding:4px;position:absolute;top:100%;left:0;overflow-y:auto}.ne-slash-head{letter-spacing:.14em;text-transform:uppercase;color:var(--muted-fg);padding:8px 10px 6px;font-family:JetBrains Mono,monospace;font-size:10px;font-weight:500}.ne-slash .item{width:100%;color:var(--fg);font:inherit;cursor:pointer;text-align:left;background:0 0;border:0;border-radius:6px;align-items:center;gap:12px;padding:7px 8px;display:flex}.ne-slash .item.on{background:var(--accent-soft)}.ne-slash .item:hover:not(.on):not(.dis){background:var(--muted)}.ne-slash .item.dis{opacity:.5;cursor:not-allowed}.ne-slash .item .ic{background:var(--muted);width:28px;height:28px;color:var(--muted-fg);border-radius:6px;flex-shrink:0;place-items:center;display:grid}.ne-slash .item.on .ic{background:var(--card);color:var(--accent-soft-fg)}.ne-slash .item .main{flex-direction:column;flex:1;gap:1px;min-width:0;display:flex}.ne-slash .item .lbl{align-items:center;gap:6px;font-size:13px;font-weight:500;display:flex}.ne-slash .item .sub{color:var(--muted-fg);font-size:11.5px}.ne-slash .item .kbd{border:1px solid var(--border);border-radius:4px;padding:1px 6px;font-size:10.5px}.ne-slash .item .kbd,.ne-slash .item .soon{color:var(--muted-fg);background:var(--muted);font-family:JetBrains Mono,monospace}.ne-slash .item .soon{letter-spacing:.08em;text-transform:uppercase;border-radius:999px;padding:1px 5px;font-size:9.5px}.ne-root.mobile .ne-strip{grid-template-columns:1fr auto;gap:10px;padding:0 12px}.ne-root.mobile .ne-context{display:none}.ne-root.mobile .ne-actions{gap:4px}.ne-root.mobile .ne-save{font-size:10.5px}.ne-root.mobile .ne-main{padding:24px 16px 80px}.ne-root.mobile .ne-title{font-size:26px}.ne-root.mobile .ne-toolbar{scrollbar-width:none;flex-wrap:nowrap;overflow-x:auto}.ne-root.mobile .ne-toolbar::-webkit-scrollbar{display:none}.shell.mobile .np-page{gap:22px}.shell.mobile .np-grid{grid-template-columns:repeat(2,1fr);gap:10px}.shell.mobile .np-card{min-height:140px;padding:12px}.shell.mobile .np-row{grid-template-columns:18px minmax(0,1fr) auto}.shell.mobile .np-row .main{flex-direction:column;align-items:flex-start;gap:2px}.shell.mobile .np-row .main .title{max-width:100%}.shell.mobile .np-row .meta{display:none}.shell.mobile .np-row .row-more{display:inline-flex}.shell.mobile .np-chips{margin-left:0}.ne-body .ProseMirror{outline:none}.ne-body .ProseMirror>*+*{margin-top:0}.ne-body .ProseMirror p.is-editor-empty:first-child:before{content:attr(data-placeholder);float:left;color:var(--muted-fg);opacity:.55;pointer-events:none;height:0;font-style:italic}.ne-body ul[data-type=taskList]{margin:0 0 1em;padding-left:0;list-style:none}.ne-body ul[data-type=taskList] li[data-type=taskItem]{align-items:flex-start;gap:8px;margin-bottom:6px;display:flex}.ne-body ul[data-type=taskList] li[data-type=taskItem]>label{cursor:pointer;flex-shrink:0;margin-top:2px}.ne-body ul[data-type=taskList] li[data-type=taskItem]>label input[type=checkbox]{cursor:pointer;width:15px;height:15px;accent-color:var(--accent);border-radius:4px}.ne-body ul[data-type=taskList] li[data-type=taskItem]>div{flex:1}.ne-body ul[data-type=taskList] li[data-type=taskItem][data-checked=true]>div{opacity:.55;text-decoration:line-through}.ne-toolbar .tool.on{background:var(--accent-soft);color:var(--accent)}.ne-toolbar .tool{letter-spacing:-.02em;font-family:JetBrains Mono,monospace;font-size:11px;font-weight:600}.ne-editor-wrap{position:relative}.ne-upload-err{background:var(--destructive-soft,oklch(96% .04 25));color:var(--destructive);border-bottom:1px solid var(--border);align-items:center;gap:8px;padding:8px 20px;font-size:12.5px;display:flex}[data-theme=dark] .ne-upload-err{color:oklch(82% .1 25);background:oklch(20% .04 25)}.ne-upload-err button{color:inherit;cursor:pointer;background:0 0;border:0;margin-left:auto;display:inline-flex}.ne-img-upload-ph{border:1.5px dashed var(--border);background:var(--muted);color:var(--muted-fg);border-radius:8px;align-items:center;gap:10px;margin:.75em 0;padding:12px 16px;font-size:13px;display:flex}.ne-img-upload-ph--err{border-color:var(--destructive);color:var(--destructive);background:oklch(97% .03 25)}[data-theme=dark] .ne-img-upload-ph--err{background:oklch(18% .04 25)}.ne-img-ph-ic{background:var(--destructive);color:#fff;border-radius:50%;flex-shrink:0;place-items:center;width:22px;height:22px;font-weight:700;display:grid}.ne-img-ph-ic,.ne-img-ph-txt{font-size:13px}.ne-img-ph-spin{border:2px solid var(--border);border-top-color:var(--accent);border-radius:50%;flex-shrink:0;width:18px;height:18px;animation:ne-spin .7s linear infinite}.ne-body figure.ne-img-figure{flex-direction:column;margin:1em 0;display:flex}.ne-body figure.ne-img-figure[data-align=left]{align-items:flex-start}.ne-body figure.ne-img-figure[data-align=center]{align-items:center}.ne-body figure.ne-img-figure[data-align=right]{align-items:flex-end}.ne-body figure.ne-img-figure img,.ne-body img{border-radius:6px;max-width:100%;height:auto;margin:.75em 0;display:block}.ne-body figure.ne-img-figure[data-width=small] img,.ne-body img[data-width=small]{width:100%;max-width:320px}.ne-body figure.ne-img-figure[data-width=medium] img,.ne-body img[data-width=medium]{width:100%;max-width:560px}.ne-body figure.ne-img-figure[data-width=full] img,.ne-body img[data-width=full]{max-width:100%}.ne-body img[data-align=left]{margin-left:0;margin-right:auto}.ne-body img[data-align=center]{margin-left:auto;margin-right:auto}.ne-body img[data-align=right]{margin-left:auto;margin-right:0}.ne-img-cap{color:var(--muted-fg);text-align:center;margin-top:4px;margin-bottom:4px;font-size:12.5px;font-style:italic;line-height:1.4}.ne-body img.ProseMirror-selectednode{outline:2px solid var(--accent);outline-offset:2px;border-radius:6px}.ne-img-pop-bg{z-index:50;position:fixed;inset:0}.ne-img-pop{background:var(--card);border:1px solid var(--border);width:340px;box-shadow:var(--shadow-pop);z-index:51;border-radius:10px;overflow:hidden}@media (max-width:420px){.ne-img-pop{width:calc(100vw - 32px)}}.ne-img-pop-tabs{border-bottom:1px solid var(--border);display:flex}.ne-img-pop-tabs button{font:inherit;color:var(--muted-fg);cursor:pointer;background:0 0;border:0;border-bottom:2px solid #0000;flex:1;padding:9px 0;font-size:13px;font-weight:500;transition:color .12s,border-color .12s}.ne-img-pop-tabs button.on{color:var(--fg);border-bottom-color:var(--accent)}.ne-img-dropzone{border:1.5px dashed var(--border);cursor:pointer;color:var(--muted-fg);border-radius:8px;flex-direction:column;align-items:center;gap:8px;margin:14px;padding:28px 20px;transition:border-color .12s,background .12s;display:flex}.ne-img-dropzone.over,.ne-img-dropzone:hover{border-color:var(--accent);background:var(--accent-soft)}.ne-img-dropzone.busy{cursor:default}.ne-img-dz-txt{color:var(--fg);font-size:13px;font-weight:500}.ne-img-dz-sub{color:var(--muted-fg);text-align:center;font-size:11.5px;line-height:1.4}.ne-img-dz-spin{border:2.5px solid var(--border);border-top-color:var(--accent);border-radius:50%;width:24px;height:24px;animation:ne-spin .7s linear infinite}.ne-img-url-wrap{gap:8px;padding:14px;display:flex}.ne-img-url-in{border:1px solid var(--border);background:var(--bg);height:36px;color:var(--fg);font:inherit;border-radius:6px;outline:none;flex:1;padding:0 10px;font-size:13px}.ne-img-url-in:focus{border-color:var(--accent)}.ne-img-url-btn{background:var(--accent);color:#fff;height:36px;font:inherit;cursor:pointer;white-space:nowrap;border:0;border-radius:6px;padding:0 14px;font-size:13px;font-weight:500}.ne-img-url-btn:disabled{opacity:.45;cursor:not-allowed}.ne-img-toolbar{background:var(--fg);color:var(--bg);border-radius:8px;align-items:center;gap:2px;padding:4px 6px;display:flex;box-shadow:0 6px 20px -4px oklch(0 0 0/.45)}.ne-itb-btn{width:26px;height:24px;color:inherit;cursor:pointer;background:0 0;border:0;border-radius:5px;justify-content:center;align-items:center;transition:background .1s;display:inline-flex}.ne-itb-btn:hover{background:oklch(from var(--bg) l c h/.15)}.ne-itb-btn.on{background:oklch(from var(--bg) l c h/.25)}.ne-itb-btn.ne-itb-del:hover{color:oklch(85% .12 25)}.ne-itb-sep{background:oklch(from var(--bg) l c h/.2);width:1px;height:14px;margin:0 3px}.ne-itb-alt{background:oklch(from var(--bg) l c h/.15);width:110px;height:24px;color:inherit;font:inherit;border:0;border-radius:4px;outline:none;padding:0 7px;font-size:11.5px}.ne-itb-alt::placeholder{color:oklch(from var(--bg) l c h/.45);font-style:italic}.ne-itb-alt:focus{background:oklch(from var(--bg) l c h/.22)}.ne-tbl-pick-bg{z-index:50;position:fixed;inset:0}.ne-tbl-pick{background:var(--card);border:1px solid var(--border);box-shadow:var(--shadow-pop);z-index:51;border-radius:10px;width:148px;padding:10px}.ne-tbl-pick-grid{grid-template-columns:repeat(5,1fr);gap:4px;margin-bottom:8px;display:grid}.ne-tbl-pick-cell{border:1.5px solid var(--border);cursor:pointer;border-radius:3px;width:22px;height:22px;transition:border-color 80ms,background 80ms}.ne-tbl-pick-cell.on{border-color:var(--accent);background:var(--accent-soft)}.ne-tbl-pick-lbl{text-align:center;color:var(--muted-fg);font-family:JetBrains Mono,monospace;font-size:12px;font-weight:500}.ne-tbl-toolbar{background:var(--fg);color:var(--bg);border-radius:8px;align-items:center;gap:2px;padding:4px 6px;display:flex;box-shadow:0 6px 20px -4px oklch(0 0 0/.45)}.ne-ttb-btn{width:26px;height:24px;color:inherit;cursor:pointer;background:0 0;border:0;border-radius:5px;justify-content:center;align-items:center;transition:background .1s;display:inline-flex}.ne-ttb-btn:hover{background:oklch(from var(--bg) l c h/.15)}.ne-ttb-btn.ne-ttb-del:hover{color:oklch(85% .12 25)}.ne-ttb-sep{background:oklch(from var(--bg) l c h/.2);width:1px;height:14px;margin:0 3px}.ne-body table{border-collapse:collapse;table-layout:auto;width:100%;margin:1em 0;overflow:hidden}.ne-body table td,.ne-body table th{border:1px solid var(--border);vertical-align:top;min-width:60px;padding:7px 10px;font-size:13.5px;line-height:1.55;position:relative}.ne-body table th{background:var(--muted);letter-spacing:.04em;color:var(--fg);text-transform:uppercase;font-family:JetBrains Mono,monospace;font-size:12px;font-weight:600}.ne-body table .selectedCell:after{z-index:2;content:"";background:var(--accent-soft);pointer-events:none;border-radius:0;position:absolute;inset:0}.ne-body table .column-resize-handle{background:var(--accent);pointer-events:none;opacity:0;width:4px;transition:opacity .15s;position:absolute;top:0;bottom:0;right:-2px}.ne-body table:hover .column-resize-handle{opacity:.3}.ne-body .tableWrapper{-webkit-overflow-scrolling:touch;overflow-x:auto}.ne-body .tableWrapper:after{display:none}@media (max-width:600px){.ne-body .tableWrapper{position:relative}.ne-body .tableWrapper:after{content:"";background:linear-gradient(to right,transparent,var(--bg));pointer-events:none;float:right;width:32px;height:100%;display:block;position:sticky;top:0;right:0}}.ne-body p img{display:inline-block}.st-page{gap:24px;max-width:1180px}.st-hero{background:linear-gradient(160deg,oklch(from var(--accent) .97 .04 h) 0,oklch(from var(--accent) .94 .06 h) 100%);border:1px solid oklch(from var(--accent) .88 .06 h);border-radius:16px;position:relative;overflow:hidden}[data-theme=dark] .st-hero{background:linear-gradient(160deg,oklch(from var(--accent) .25 .08 h) 0,oklch(from var(--accent) .2 .06 h) 100%);border-color:oklch(from var(--accent) .32 .07 h)}.st-hero-grid{grid-template-columns:minmax(0,1fr) 240px;align-items:center;gap:24px;padding:28px 28px 22px;display:grid}.st-hero .left{min-width:0}.st-hero .eyebrow{letter-spacing:.14em;text-transform:uppercase;color:var(--accent-soft-fg);margin-bottom:8px;font-family:JetBrains Mono,monospace;font-size:10.5px;font-weight:500}.st-hero .head{letter-spacing:-.025em;color:var(--fg);margin:0;font-family:Instrument Serif,serif;font-size:46px;font-weight:400;line-height:1.02}.st-hero .head .n{color:var(--accent);font-style:italic}[data-theme=dark] .st-hero .head .n{color:oklch(from var(--accent) .78 c h)}.st-hero .sub{color:var(--fg);opacity:.75;margin:8px 0 18px;font-size:14px}.st-hero .sub b{opacity:1;font-weight:600}.st-hero .actions{align-items:center;gap:10px;margin-bottom:16px;display:flex}.start-review.lg{border-radius:10px;gap:10px;height:44px;padding:0 18px;font-size:14.5px}.st-hero .chip-row{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.st-chipbtn{border:1px solid oklch(from var(--accent) .8 .06 h);background:oklch(from var(--accent) .99 .01 h/.7);height:32px;color:var(--fg);font:inherit;cursor:pointer;border-radius:999px;align-items:center;gap:8px;padding:0 12px;font-size:12.5px;font-weight:500;transition:background .1s;display:inline-flex}.st-chipbtn:hover{background:var(--card)}.st-chipbtn .ic{color:var(--accent-soft-fg);display:inline-flex}.st-chipbtn .n{font-feature-settings:"tnum";color:var(--muted-fg);background:var(--muted);border-radius:999px;margin-left:2px;padding:1px 7px;font-family:JetBrains Mono,monospace;font-size:11.5px}[data-theme=dark] .st-chipbtn{background:oklch(from var(--accent) .18 .04 h/.6);border-color:oklch(from var(--accent) .35 .07 h)}.due-orbit{border-radius:50%;place-items:center;width:200px;height:200px;margin:0 auto;display:grid;position:relative}.due-orbit .ring{border:1.5px solid oklch(from var(--accent) l c h/.4);border-radius:50%;position:absolute;inset:0}.due-orbit .ring.r2{opacity:.55;inset:18px}.due-orbit .ring.r3{opacity:.35;border-style:dashed;inset:36px}.due-orbit .center{z-index:1;flex-direction:column;align-items:center;display:flex}.due-orbit .center .num{color:var(--accent);letter-spacing:-.04em;font-family:Instrument Serif,serif;font-size:78px;font-style:italic;line-height:1}[data-theme=dark] .due-orbit .center .num{color:oklch(from var(--accent) .82 c h)}.due-orbit .center .lbl{letter-spacing:.14em;text-transform:uppercase;color:var(--muted-fg);margin-top:4px;font-family:JetBrains Mono,monospace;font-size:11px}.st-orbit-numeric .due-orbit .ring{display:none}.st-orbit-numeric .due-orbit .center .num{font-size:96px}.caught-mark{place-items:center;width:100%;height:200px;display:grid}.caught-mark .ring{border:6px solid oklch(from var(--success) .85 .06 h);border-radius:50%;place-items:center;width:140px;height:140px;display:grid}[data-theme=dark] .caught-mark .ring{border-color:oklch(from var(--success) .38 .08 h)}.caught-mark .ring-i{color:var(--success);font-family:JetBrains Mono,monospace;font-size:56px;font-weight:500;line-height:1}[data-theme=dark] .caught-mark .ring-i{color:oklch(from var(--success) .82 c h)}.st-hero.caught-up .head{color:var(--fg)}.st-hero.caught-up{background:linear-gradient(160deg,oklch(from var(--success) .97 .04 h) 0,oklch(from var(--success) .94 .05 h) 100%);border-color:oklch(from var(--success) .85 .05 h)}[data-theme=dark] .st-hero.caught-up{background:linear-gradient(160deg,oklch(from var(--success) .22 .07 h) 0,oklch(from var(--success) .18 .05 h) 100%);border-color:oklch(from var(--success) .32 .07 h)}.st-hero.caught-up .eyebrow{color:oklch(from var(--success) .42 .1 h)}[data-theme=dark] .st-hero.caught-up .eyebrow{color:oklch(from var(--success) .78 c h)}.st-hero-pills{border-top:1px dashed oklch(from var(--accent) .8 .05 h/.6);align-items:center;gap:10px;padding:16px 28px 24px;display:flex}[data-theme=dark] .st-hero-pills{border-top-color:oklch(from var(--accent) .4 .06 h/.6)}.st-hero.caught-up .st-hero-pills{border-top-color:oklch(from var(--success) .8 .05 h/.6)}.st-pill{background:var(--card);border:1px solid var(--border);color:var(--fg);border-radius:999px;align-items:center;gap:10px;padding:8px 14px;font-size:13px;text-decoration:none;transition:background .1s,border-color .1s;display:inline-flex}.st-pill:hover{background:var(--muted)}.st-pill b{font-weight:600}.st-pill .chev,.st-pill .ic{display:inline-flex}.st-pill .chev{color:var(--muted-fg)}.st-pill.warn .ic{color:var(--warning)}.st-pill.dest .ic{color:var(--destructive)}[data-theme=dark] .st-pill.warn .ic{color:oklch(88% .1 75)}[data-theme=dark] .st-pill.dest .ic{color:oklch(82% .1 25)}.st-section{flex-direction:column;gap:12px;display:flex}.st-sec-head{justify-content:space-between;align-items:baseline;gap:14px;display:flex}.st-sec-head .title{color:var(--fg);font-size:13.5px;font-weight:600}.st-sec-head .hint{color:var(--muted-fg);font-size:12px}.st-accord{background:var(--card);border:1px solid var(--border);border-radius:12px;overflow:hidden}.st-acc{border-bottom:1px solid var(--border)}.st-acc:last-child{border-bottom:0}.st-acc .head{width:100%;font:inherit;color:var(--fg);cursor:pointer;text-align:left;background:0 0;border:0;grid-template-columns:6px minmax(0,1fr) auto auto;align-items:center;gap:14px;padding:12px 16px 12px 14px;display:grid}.st-acc .head:hover{background:var(--subtle)}.st-acc .head .strip{border-radius:2px;width:4px;height:28px}.st-acc .head .name{font-size:14px;font-weight:500}.st-acc .head .due-badge{color:var(--accent-soft-fg);background:var(--accent-soft);font-feature-settings:"tnum";border-radius:999px;padding:3px 8px;font-family:JetBrains Mono,monospace;font-size:11px;font-weight:500}.st-acc .head .ac{align-items:center;gap:8px;display:flex}.st-acc .head .chev{color:var(--muted-fg);transition:transform .18s;display:inline-flex}.st-acc .head .chev.open{color:var(--fg);transform:rotate(180deg)}.st-acc .body{background:var(--subtle);border-top:1px solid var(--border);padding:0 16px 12px 24px}.st-acc .lec-row{border-bottom:1px solid var(--border-2);color:var(--fg);grid-template-columns:56px minmax(0,1fr) auto;align-items:center;gap:14px;padding:10px 0;text-decoration:none;display:grid}.st-acc .lec-row:last-child{border-bottom:0}.st-acc .lec-row .num{color:var(--muted-fg);letter-spacing:.06em;background:var(--card);text-align:center;border:1px solid var(--border);border-radius:4px;width:max-content;padding:3px 7px;font-family:JetBrains Mono,monospace;font-size:11px}.st-acc .lec-row .main{min-width:0}.st-acc .lec-row .nm{text-overflow:ellipsis;white-space:nowrap;font-size:13.5px;font-weight:500;overflow:hidden}.st-acc .lec-row .bd{color:var(--muted-fg);margin-top:2px;font-family:JetBrains Mono,monospace;font-size:10.5px}.st-acc .lec-row .right{flex-shrink:0;align-items:center;gap:12px;display:flex}.st-acc .lec-row .due{color:var(--m1-fg);background:var(--warning-soft);font-feature-settings:"tnum";border-radius:999px;padding:3px 8px;font-family:JetBrains Mono,monospace;font-size:11px}[data-theme=dark] .st-acc .lec-row .due{color:oklch(88% .1 75)}.st-acc .lec-row .drill{color:var(--accent);align-items:center;gap:4px;font-size:12px;font-weight:500;text-decoration:none;display:inline-flex}.mj-page{flex-direction:column;gap:20px;padding-bottom:48px;display:flex}.mj-filters{flex-wrap:wrap;align-items:center;gap:6px;display:flex}.mj-filters .np-chip-btn .n{color:var(--muted-fg);margin-left:4px;font-family:JetBrains Mono,monospace;font-size:10.5px}.mj-filters .np-chip-btn.on .n{color:var(--bg);opacity:.6}.mj-list{background:var(--card);border:1px solid var(--border);border-radius:12px;overflow:hidden}.mj-row{border-bottom:1px solid var(--border-2);grid-template-columns:120px minmax(0,1fr) auto;align-items:flex-start;gap:14px;padding:12px 16px;display:grid}.mj-row:last-child{border-bottom:0}.mj-type{letter-spacing:.12em;text-transform:uppercase;background:var(--muted);color:var(--muted-fg);white-space:nowrap;border-radius:4px;align-items:center;width:max-content;margin-top:2px;padding:3px 7px;font-family:JetBrains Mono,monospace;font-size:9.5px;font-weight:500;display:inline-flex}.mj-type.misread{background:var(--warning-soft);color:var(--m1-fg)}.mj-type.distractor{background:var(--destructive-soft);color:var(--destructive)}.mj-type.knowledge-gap{background:var(--m2-soft);color:var(--m2-fg)}.mj-type.careless{background:var(--m3-soft);color:var(--m3-fg)}.mj-type.collision{background:var(--accent-soft);color:var(--accent-soft-fg)}[data-theme=dark] .mj-type.misread{color:oklch(88% .1 75)}[data-theme=dark] .mj-type.distractor{color:oklch(82% .1 25)}[data-theme=dark] .mj-type.knowledge-gap{color:oklch(85% .08 240)}[data-theme=dark] .mj-type.careless{color:oklch(85% .08 150)}.mj-row .main{min-width:0}.mj-row .meta{color:var(--muted-fg);margin-bottom:2px;font-family:JetBrains Mono,monospace;font-size:10.5px}.mj-row .prompt{color:var(--fg);text-overflow:ellipsis;white-space:nowrap;font-size:13px;overflow:hidden}.mj-row .drill{color:var(--accent);white-space:nowrap;cursor:pointer;background:0 0;border:none;flex-shrink:0;align-items:center;gap:4px;margin-top:2px;padding:0;font-size:12px;font-weight:500;text-decoration:none;display:inline-flex}.mj-row .drill:hover{text-underline-offset:2px;text-decoration:underline}.mj-row .drill:disabled{opacity:.5;cursor:wait}.st-modes{grid-template-columns:repeat(2,1fr);gap:12px;display:grid}.st-modes-4col .st-modes{grid-template-columns:repeat(4,1fr)}.st-mode{background:var(--card);border:1px solid var(--border);cursor:pointer;font:inherit;text-align:left;color:var(--fg);border-radius:12px;flex-direction:column;gap:10px;padding:18px 18px 16px;transition:border-color .12s,background .12s,transform 50ms;display:flex}.st-mode:hover:not(.disabled){border-color:var(--muted-fg);background:var(--subtle)}.st-mode:active:not(.disabled){transform:translateY(.5px)}.st-mode.disabled{cursor:not-allowed;opacity:.6;background:var(--subtle)}.st-mode .head{align-items:center;gap:10px;display:flex}.st-mode .head .ic-bg{border-radius:9px;flex-shrink:0;place-items:center;width:36px;height:36px;display:grid}.st-mode.tone-accent .head .ic-bg{background:var(--accent-soft);color:var(--accent-soft-fg)}.st-mode.tone-warn .head .ic-bg{background:var(--warning-soft);color:var(--m1-fg)}.st-mode.tone-info .head .ic-bg{background:var(--m2-soft);color:var(--m2-fg)}.st-mode.tone-muted .head .ic-bg{background:var(--muted);color:var(--muted-fg)}[data-theme=dark] .st-mode.tone-warn .head .ic-bg{color:oklch(88% .1 75)}[data-theme=dark] .st-mode.tone-info .head .ic-bg{color:oklch(85% .08 240)}.st-mode .head .lbl{font-size:15px;font-weight:600}.st-mode .head .soon{letter-spacing:.1em;text-transform:uppercase;background:var(--muted);color:var(--muted-fg);border-radius:999px;margin-left:auto;padding:2px 7px;font-family:JetBrains Mono,monospace;font-size:9.5px}.st-mode .sub{color:var(--muted-fg);font-size:12.5px;line-height:1.5}.st-mode .meta{border-top:1px dashed var(--border);justify-content:space-between;align-items:center;margin-top:2px;padding-top:8px;display:flex}.st-mode .meta .fsrs{letter-spacing:.04em;color:var(--muted-fg);font-family:JetBrains Mono,monospace;font-size:10.5px}.st-mode .meta .go{color:var(--accent);align-items:center;gap:4px;font-size:12px;font-weight:500;display:inline-flex}.st-empty{text-align:center;background:var(--card);border:1px dashed var(--border);border-radius:14px;flex-direction:column;align-items:center;gap:12px;max-width:560px;margin:24px auto;padding:60px 24px;display:flex}.st-empty .ic{background:var(--accent-soft);width:56px;height:56px;color:var(--accent-soft-fg);border-radius:14px;place-items:center;margin-bottom:4px;display:grid}.st-empty h3{letter-spacing:-.01em;margin:0;font-family:Instrument Serif,serif;font-size:24px;font-weight:400}.st-empty p{color:var(--muted-fg);max-width:380px;margin:0;font-size:13.5px;line-height:1.5}.shell.mobile .st-hero-grid{grid-template-columns:1fr;padding:22px 18px 14px}.shell.mobile .st-hero .right{display:none}.shell.mobile .st-hero .head{font-size:34px}.shell.mobile .st-hero-pills{flex-direction:column;align-items:stretch;padding:14px 18px 18px}.shell.mobile .st-hero-pills .st-pill{justify-content:space-between}.shell.mobile .st-acc .head{grid-template-columns:6px minmax(0,1fr) auto;grid-template-areas:"strip name chev""strip badge act";row-gap:6px}.shell.mobile .st-acc .head .strip{grid-area:strip}.shell.mobile .st-acc .head .name{grid-area:name}.shell.mobile .st-acc .head .due-badge{grid-area:badge;justify-self:start}.shell.mobile .st-acc .head .ac{grid-area:act}.shell.mobile .st-acc .head .chev{grid-area:chev}.shell.mobile .mj-row,.shell.mobile .st-modes{grid-template-columns:1fr}.shell.mobile .mj-row{gap:6px}.shell.mobile .mj-row .drill{justify-self:flex-end}.ss-root{width:100%;height:100%;color:var(--fg);-webkit-font-smoothing:antialiased;flex-direction:column;font-family:Inter,sans-serif;display:flex;overflow:hidden}.ss-root,.ss-top{background:var(--bg);position:relative}.ss-top{border-bottom:1px solid var(--border);z-index:5;flex-shrink:0;grid-template-columns:60px minmax(0,1fr) auto;align-items:center;gap:16px;height:48px;padding:0 16px;display:grid}.ss-top-left{align-items:center;gap:6px;display:flex}.ss-top-center{justify-content:center;display:flex}.ss-top-right{justify-self:end;align-items:center;gap:10px;display:flex}.ss-iconbtn{border:1px solid var(--border);background:var(--card);width:32px;height:32px;color:var(--muted-fg);cursor:pointer;border-radius:7px;place-items:center;display:grid}.ss-iconbtn:hover{color:var(--fg);background:var(--muted)}.ss-iconbtn.star.on{color:var(--warning);border-color:var(--warning);background:var(--warning-soft)}[data-theme=dark] .ss-iconbtn.star.on{color:oklch(88% .1 75)}.ss-prog{flex-direction:column;align-items:center;gap:4px;width:100%;max-width:480px;display:flex}.ss-prog .bar{background:var(--muted-2);border-radius:999px;width:100%;height:3px;overflow:hidden}.ss-prog .bar .fill{background:var(--accent);border-radius:999px;height:100%;transition:width .3s}.ss-prog .num{font-feature-settings:"tnum";letter-spacing:.04em;font-size:10.5px}.ss-prog .num,.ss-typepill{color:var(--muted-fg);font-family:JetBrains Mono,monospace}.ss-typepill{letter-spacing:.12em;text-transform:uppercase;background:var(--muted);border:1px solid var(--border);border-radius:4px;padding:3px 7px;font-size:9.5px;font-weight:500}.ss-typepill.type-mcq{color:var(--m2-fg);background:oklch(92% .04 240);border-color:#0000}.ss-typepill.type-vignette{color:oklch(42% .1 305);background:oklch(92% .05 305);border-color:#0000}.ss-typepill.type-cloze{color:var(--m1-fg);background:oklch(93% .04 75);border-color:#0000}.ss-typepill.type-short{color:var(--m3-fg);background:oklch(92% .04 150);border-color:#0000}[data-theme=dark] .ss-typepill.type-mcq{color:oklch(85% .08 240);background:oklch(30% .06 240)}[data-theme=dark] .ss-typepill.type-vignette{color:oklch(85% .08 305);background:oklch(30% .06 305)}[data-theme=dark] .ss-typepill.type-cloze{color:oklch(88% .1 75);background:oklch(32% .05 75)}[data-theme=dark] .ss-typepill.type-short{color:oklch(85% .08 150);background:oklch(30% .05 150)}.ss-crumb{color:var(--muted-fg);align-items:center;gap:6px;max-width:200px;font-family:JetBrains Mono,monospace;font-size:11.5px;display:inline-flex;overflow:hidden}.ss-crumb .strip{border-radius:2px;flex-shrink:0;width:4px;height:14px}.ss-crumb span:last-child{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.ss-main{flex-direction:column;flex:1;align-items:center;gap:22px;padding:40px 28px 60px;display:flex;overflow-y:auto}.ss-card{flex-direction:column;gap:18px;width:100%;max-width:760px;display:flex}.ss-prompt{letter-spacing:-.01em;color:var(--fg);font-family:Instrument Serif,serif;font-size:26px;font-weight:400;line-height:1.3}.ss-prompt.sm{font-size:20px}.ss-prompt-sans .ss-prompt{letter-spacing:-.005em;font-family:Inter,sans-serif;font-size:19px;font-weight:500;line-height:1.45}.ss-options{flex-direction:column;gap:8px;display:flex}.ss-opt{text-align:left;border:1.5px solid var(--border);background:var(--card);width:100%;color:var(--fg);font:inherit;cursor:pointer;border-radius:10px;align-items:flex-start;gap:12px;padding:14px 16px;font-size:14.5px;line-height:1.45;transition:background .12s,border-color .12s;display:flex}.ss-opt:hover:not(:disabled){background:var(--subtle);border-color:var(--muted-fg)}.ss-opt .letter{background:var(--muted);width:26px;height:26px;color:var(--muted-fg);border-radius:6px;flex-shrink:0;place-items:center;margin-top:1px;font-family:JetBrains Mono,monospace;font-size:12px;font-weight:600;display:grid}.ss-opt .text{flex:1}.ss-opt .mark{color:var(--success);flex-shrink:0;margin-top:4px;margin-left:auto;display:inline-flex}.ss-opt .mark.wrong{color:var(--destructive)}.ss-opt.selected{border-color:var(--accent);background:var(--accent-soft)}.ss-opt.selected .letter{background:var(--accent);color:var(--accent-fg)}.ss-opt.correct{border-color:var(--success);background:var(--success-soft)}.ss-opt.correct .letter{background:var(--success);color:oklch(98.5% 0 0)}.ss-opt.wrong{border-color:var(--destructive);background:var(--destructive-soft)}.ss-opt.wrong .letter{background:var(--destructive);color:oklch(98.5% 0 0)}.ss-opt.dim{opacity:.65}.ss-vignette{background:var(--subtle);border:1px solid var(--border);color:var(--fg);border-radius:10px;max-height:280px;padding:18px 22px;font-family:Instrument Serif,Iowan Old Style,Georgia,serif;font-size:16px;line-height:1.6;overflow-y:auto}.ss-vignette p{margin:0 0 12px}.ss-vignette p:last-child{margin-bottom:0}.ss-cloze .ss-prompt{line-height:1.7}.ss-prompt.cloze{font-family:Instrument Serif,serif;font-size:22px;line-height:1.7}.cloze-input{border:0;border-bottom:2px solid var(--accent);font:inherit;color:var(--accent);vertical-align:baseline;background:0 0;outline:none;margin:0 2px;padding:0 2px;font-family:Instrument Serif,serif;font-size:22px;display:inline-block}.cloze-input::placeholder{color:var(--muted-fg);opacity:.5}.cloze-input:focus{border-bottom-color:var(--fg)}.cloze-rev{border-radius:4px;align-items:baseline;gap:6px;margin:0 2px;padding:0 6px;display:inline-flex}.cloze-rev.right{background:var(--success-soft);color:var(--success)}.cloze-rev.wrong{background:var(--destructive-soft);color:var(--destructive)}[data-theme=dark] .cloze-rev.right{color:oklch(85% .08 150)}[data-theme=dark] .cloze-rev.wrong{color:oklch(82% .1 25)}.cloze-rev .ans{font-weight:500}.cloze-rev .user{opacity:.75;font-family:JetBrains Mono,monospace;font-size:11.5px}.ss-textarea{border:1.5px solid var(--border);background:var(--card);width:100%;min-height:110px;color:var(--fg);font:inherit;resize:vertical;border-radius:10px;padding:14px 16px;font-family:Inter,sans-serif;font-size:14.5px;line-height:1.55}.ss-textarea:focus{border-color:var(--accent);box-shadow:0 0 0 3px var(--ring);outline:none}.ss-sa-compare{grid-template-columns:1fr 1fr;gap:10px;display:grid}.ss-sa-compare .col{border-radius:10px;padding:14px 16px}.ss-sa-compare .col.user{background:var(--subtle);border:1px solid var(--border)}.ss-sa-compare .col.expected{background:var(--success-soft);border:1px solid #0000}.ss-sa-compare .col .lbl{letter-spacing:.14em;text-transform:uppercase;color:var(--muted-fg);margin-bottom:6px;font-family:JetBrains Mono,monospace;font-size:10px;font-weight:500}.ss-sa-compare .col.expected .lbl{color:var(--success)}[data-theme=dark] .ss-sa-compare .col.expected .lbl{color:oklch(85% .08 150)}.ss-sa-compare.user-wrong .col.user{background:var(--destructive-soft);border-color:var(--destructive)}.ss-sa-compare.user-wrong .col.user .lbl{color:var(--destructive)}.ss-sa-compare.user-correct .col.user{background:var(--success-soft);border-color:#0000}.ss-sa-compare.user-correct .col.user .lbl{color:var(--success)}[data-theme=dark] .ss-sa-compare.user-wrong .col.user .lbl{color:oklch(82% .1 25)}[data-theme=dark] .ss-sa-compare.user-correct .col.user .lbl{color:oklch(85% .08 150)}.ss-sa-compare .col .body{color:var(--fg);font-size:13.5px;line-height:1.5}.ss-show{background:var(--accent);width:100%;color:var(--accent-fg);font:inherit;cursor:pointer;border:0;border-radius:10px;justify-content:center;align-items:center;gap:12px;padding:14px 18px;font-size:15px;font-weight:500;display:inline-flex;position:relative}.ss-show:hover{background:oklch(from var(--accent) calc(l - .04) c h)}.ss-show .locked{opacity:.85;font-family:JetBrains Mono,monospace;font-size:11.5px;font-weight:400;position:absolute;left:16px}.ss-show .locked b{font-weight:600}.ss-show .kbd{background:oklch(from var(--accent) calc(l - .08) c h);color:var(--accent-fg);border-radius:5px;padding:2px 7px;font-family:JetBrains Mono,monospace;font-size:10.5px;font-weight:500;position:absolute;right:12px}@keyframes feedbackPill{0%{opacity:0;transform:translateY(4px)scale(.88)}18%{opacity:1;transform:translateY(0)scale(1.05)}30%{transform:scale(1)}72%{opacity:1}to{opacity:0;transform:translateY(-5px)scale(.95)}}.ss-feedback-pill{pointer-events:none;border-radius:999px;align-self:flex-start;align-items:center;gap:6px;padding:6px 14px;font-size:13px;font-weight:600;animation:feedbackPill 1.6s forwards;display:inline-flex}.ss-feedback-pill.correct{background:var(--success-soft);color:var(--success);border:1px solid oklch(from var(--success) .88 .07 h)}.ss-feedback-pill.wrong{background:var(--destructive-soft);color:var(--destructive);border:1px solid oklch(from var(--destructive) .88 .1 h)}[data-theme=dark] .ss-feedback-pill.correct{color:oklch(85% .08 150);border-color:oklch(35% .07 150)}[data-theme=dark] .ss-feedback-pill.wrong{color:oklch(82% .1 25);border-color:oklch(35% .1 25)}.ss-reveal{background:var(--accent-soft);border:1px solid #0000;border-radius:10px;flex-direction:column;gap:10px;padding:16px 18px;display:flex}[data-theme=dark] .ss-reveal{background:oklch(from var(--accent) .22 .05 h);border-color:oklch(from var(--accent) .32 .06 h)}.ss-reveal .ss-ans{color:var(--fg);font-size:14.5px;font-weight:500;line-height:1.5}.ss-reveal .ss-ans .lbl{letter-spacing:.14em;text-transform:uppercase;color:var(--accent-soft-fg);vertical-align:2px;margin-right:10px;font-family:JetBrains Mono,monospace;font-size:9.5px;font-weight:500;display:inline-block}.ss-reveal .ss-explain{color:var(--fg);opacity:.85;font-size:13.5px;line-height:1.55}.ss-source{font-family:Inter,sans-serif}.ss-source>summary{color:var(--muted-fg);cursor:pointer;letter-spacing:.02em;align-items:center;gap:6px;padding:2px 0;font-family:JetBrains Mono,monospace;font-size:11.5px;list-style:none;display:inline-flex}.ss-source>summary::-webkit-details-marker{display:none}.ss-source>summary .ic{display:inline-flex}.ss-source>summary:hover{color:var(--fg)}.ss-source blockquote{background:var(--muted);border-left:3px solid var(--accent);color:var(--fg);border-radius:0 8px 8px 0;margin:8px 0 0;padding:12px 14px;font-family:Instrument Serif,serif;font-size:14.5px;font-style:italic;line-height:1.55}.ss-source blockquote .ts{background:var(--card);color:var(--muted-fg);vertical-align:1.5px;font-feature-settings:"tnum";border-radius:4px;margin-right:8px;padding:1px 6px;font-family:JetBrains Mono,monospace;font-size:10.5px;font-style:normal}.ss-rating{flex-direction:column;align-items:center;gap:8px;width:100%;max-width:760px;display:flex}.ss-rating .hint{color:var(--muted-fg);letter-spacing:.04em;font-family:JetBrains Mono,monospace;font-size:12px}.ss-rating .row{grid-template-columns:repeat(4,1fr);gap:8px;width:100%;display:grid}.ss-rate{border:1.5px solid var(--border);background:var(--card);color:var(--fg);font:inherit;cursor:pointer;text-align:left;border-radius:10px;flex-direction:column;align-items:stretch;gap:4px;padding:10px 14px;transition:border-color .12s,background .12s,transform 40ms;display:flex;position:relative}.ss-rate.hover,.ss-rate:hover{border-color:currentColor;transform:translateY(-1px)}.ss-rate .lbl-row{justify-content:space-between;align-items:center;display:flex}.ss-rate .lbl{font-size:14px;font-weight:600}.ss-rate .kbd{background:var(--muted);color:var(--muted-fg);border:1px solid var(--border);border-radius:4px;padding:2px 6px;font-family:JetBrains Mono,monospace;font-size:10px;font-weight:500}.ss-rate .preview{color:var(--muted-fg);font-feature-settings:"tnum";font-family:JetBrains Mono,monospace;font-size:11px}.ss-rate.tone-again{background:var(--destructive-soft);color:var(--destructive);border-color:oklch(from var(--destructive) .85 .06 h)}.ss-rate.tone-hard{background:var(--warning-soft);color:var(--m1-fg);border-color:oklch(from var(--warning) .82 .05 h)}.ss-rate.tone-good{background:var(--m2-soft);color:var(--m2-fg);border-color:oklch(from var(--info) .82 .05 h)}.ss-rate.tone-easy{background:var(--m3-soft);color:var(--m3-fg);border-color:oklch(from var(--success) .82 .04 h)}[data-theme=dark] .ss-rate.tone-again{color:oklch(82% .1 25);border-color:oklch(from var(--destructive) .4 .07 h)}[data-theme=dark] .ss-rate.tone-hard{color:oklch(88% .1 75);border-color:oklch(from var(--warning) .4 .07 h)}[data-theme=dark] .ss-rate.tone-good{color:oklch(85% .08 240);border-color:oklch(from var(--info) .38 .07 h)}[data-theme=dark] .ss-rate.tone-easy{color:oklch(85% .08 150);border-color:oklch(from var(--success) .38 .06 h)}.ss-rate .preview{color:currentColor;opacity:.7}.ss-rate .kbd{background:oklch(from currentColor l c h/.12);color:currentColor;border-color:oklch(from currentColor l c h/.25);opacity:.85}.ss-rating-plain .ss-rate{background:var(--card);color:var(--fg);border-color:var(--border)}.ss-rating-plain .ss-rate .kbd{background:var(--muted);border-color:var(--border)}.ss-rating-plain .ss-rate .kbd,.ss-rating-plain .ss-rate .preview{color:var(--muted-fg);opacity:1}.ss-nextdue{width:100%;max-width:760px;color:var(--muted-fg);justify-content:space-between;align-items:center;gap:16px;padding-top:6px;font-size:11.5px;display:flex}.ss-nextdue .up-next b{color:var(--fg);font-weight:500}.ss-nextdue .pills{align-items:center;gap:8px;display:flex}.ss-hide-nextdue .ss-nextdue{display:none}.st-pill.sm{padding:4px 10px;font-size:11.5px}.ss-sheet{z-index:40;background:var(--card);border-top:1px solid var(--border);flex-direction:column;gap:14px;padding:18px 24px;animation:ss-sheet-up .22s cubic-bezier(.2,.7,.2,1);display:flex;position:absolute;bottom:0;left:0;right:0;box-shadow:0 -12px 28px -8px oklch(0 0 0/.18)}@keyframes ss-sheet-up{0%{transform:translateY(100%)}to{transform:none}}.ss-sheet:before{content:"";background:var(--border);border-radius:999px;width:36px;height:4px;position:absolute;top:8px;left:50%;transform:translate(-50%)}.ss-sheet .head .title{letter-spacing:-.01em;color:var(--fg);font-family:Instrument Serif,serif;font-size:22px;font-weight:400}.ss-sheet .head .sub{color:var(--muted-fg);margin-top:2px;font-size:12px}.ss-sheet .chips{flex-wrap:wrap;gap:8px;display:flex}.errchip{border:1.5px solid var(--border);background:var(--card);font:inherit;color:var(--fg);cursor:pointer;text-align:left;border-radius:10px;align-items:center;gap:10px;padding:10px 14px;transition:background .1s,border-color .1s;display:inline-flex}.errchip:hover{background:var(--muted);border-color:var(--muted-fg)}.errchip.on{background:var(--accent-soft);border-color:var(--accent)}.errchip .emoji{font-size:18px;line-height:1}.errchip .text{flex-direction:column;gap:1px;display:flex}.errchip .lbl{font-size:13px;font-weight:500}.errchip .sub{color:var(--muted-fg);font-size:11.5px}.errchip.on .sub{color:var(--accent-soft-fg);opacity:.85}.ss-sheet .foot{justify-content:space-between;align-items:center;display:flex}.ss-sheet .conf{color:var(--muted-fg);cursor:pointer;align-items:center;gap:8px;font-size:12px;display:inline-flex}.ss-sheet .conf .cb{border:1.5px solid var(--border);background:var(--card);width:16px;height:16px;color:var(--accent);border-radius:4px;place-items:center;display:grid}.ss-sheet .conf .cb.on{border-color:var(--accent);background:var(--accent-soft)}.ss-sheet .skip{color:var(--muted-fg);font:inherit;cursor:pointer;background:0 0;border:0;align-items:center;gap:8px;padding:4px 8px;font-size:13px;display:inline-flex}.ss-sheet .skip:hover{color:var(--fg)}.ss-sheet .skip .ring{color:var(--accent)}.ss-sheet.mobile{max-height:60vh;padding:16px 16px 18px;overflow-y:auto}.ss-sheet.mobile .chips{flex-direction:column}.ss-sheet.mobile .errchip{width:100%}.ss-overlay{-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);z-index:70;background:oklch(0 0 0/.4);place-items:center;padding:24px;animation:ss-fade .12s;display:grid;position:absolute;inset:0}@keyframes ss-fade{0%{opacity:0}to{opacity:1}}.ss-overlay .dialog{background:var(--card);border:1px solid var(--border);width:100%;max-width:460px;box-shadow:var(--shadow-pop);border-radius:14px;overflow:hidden}.ss-overlay .head{justify-content:space-between;align-items:center;padding:16px 18px 12px;display:flex}.ss-overlay .head .title{letter-spacing:-.01em;font-family:Instrument Serif,serif;font-size:22px;font-weight:400}.ss-overlay .head .close{width:26px;height:26px;color:var(--muted-fg);cursor:pointer;background:0 0;border:0;border-radius:6px;place-items:center;display:grid}.ss-overlay .head .close:hover{background:var(--muted);color:var(--fg)}.ss-overlay .body{flex-direction:column;padding:4px 18px 14px;display:flex}.ss-overlay .body .row{border-bottom:1px dashed var(--border);grid-template-columns:160px 1fr;align-items:center;gap:16px;padding:10px 0;display:grid}.ss-overlay .body .row:last-child{border-bottom:0}.ss-overlay .body .kbds{align-items:center;gap:6px;display:inline-flex}.ss-overlay .body .kbd{background:var(--muted);min-width:22px;height:22px;color:var(--fg);border:solid var(--border);border-width:1px 1px 2px;border-radius:5px;justify-content:center;align-items:center;padding:0 7px;font-family:JetBrains Mono,monospace;font-size:11px;font-weight:500;display:inline-flex}.ss-overlay .body .slash{color:var(--muted-fg);font-size:11px}.ss-overlay .body .lbl{color:var(--fg);font-size:13px}.ss-overlay .foot{background:var(--subtle);border-top:1px solid var(--border);color:var(--muted-fg);padding:12px 18px;font-size:11.5px}.ss-exit-confirm{z-index:30;background:var(--card);border:1px solid var(--border);box-shadow:var(--shadow-pop);border-radius:10px;flex-direction:column;gap:10px;max-width:320px;padding:12px 14px;animation:ss-rise .16s;display:flex;position:absolute;top:56px;left:14px}@keyframes ss-rise{0%{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:none}}.ss-exit-confirm:before{content:"";background:var(--card);border-top:1px solid var(--border);border-left:1px solid var(--border);width:8px;height:8px;position:absolute;top:-5px;left:16px;transform:rotate(45deg)}.ss-exit-confirm .msg{color:var(--fg);font-size:13px;line-height:1.4}.ss-exit-confirm .acts{justify-content:flex-end;gap:6px;display:flex}.ss-exit-confirm .btn{border:1px solid var(--border);background:var(--card);height:30px;color:var(--fg);font:inherit;cursor:pointer;border-radius:7px;padding:0 12px;font-size:12.5px}.ss-exit-confirm .btn.primary{background:var(--destructive);color:oklch(98.5% 0 0);border-color:#0000}.ss-exit-confirm .btn.ghost{background:0 0}.ss-root.mobile .ss-top{grid-template-columns:50px minmax(0,1fr) auto;gap:10px;padding:0 10px}.ss-root.mobile .ss-top-right{gap:6px}.ss-root.mobile .ss-crumb{max-width:110px}.ss-root.mobile .ss-main{padding:24px 16px 80px}.ss-root.mobile .ss-prompt{font-size:22px}.ss-root.mobile .ss-opt{padding:12px 14px;font-size:14px}.ss-root.mobile .ss-rating .row{gap:6px}.ss-root.mobile .ss-rate{padding:8px 10px}.ss-root.mobile .ss-rate .lbl{font-size:13px}.ss-root.mobile .ss-rate .preview{font-size:10px}.ss-root.mobile .ss-vignette{max-height:220px;padding:14px 16px;font-size:14.5px}.ss-root.mobile .ss-nextdue{flex-direction:column;align-items:flex-start;gap:8px}.sm-root{background:var(--bg);width:100%;height:100%;color:var(--fg);flex-direction:column;font-family:Inter,sans-serif;display:flex;overflow-y:auto}.sm-banner{border-bottom:1px solid var(--border);background:linear-gradient(180deg,oklch(from var(--success) .97 .03 h) 0,var(--bg) 100%);align-items:center;gap:12px;padding:18px 28px;display:flex}[data-theme=dark] .sm-banner{background:linear-gradient(180deg,oklch(from var(--success) .22 .05 h) 0,var(--bg) 100%)}.sm-banner.high{background:linear-gradient(180deg,oklch(from var(--success) .94 .05 h) 0,var(--bg) 100%)}.sm-banner.high .ic{background:oklch(from var(--success) .88 .08 h);color:oklch(from var(--success) .4 .12 h)}[data-theme=dark] .sm-banner.high{background:linear-gradient(180deg,oklch(from var(--success) .26 .06 h) 0,var(--bg) 100%)}.sm-banner .ic{background:var(--success-soft);width:32px;height:32px;color:var(--success);border-radius:8px;place-items:center;display:grid}[data-theme=dark] .sm-banner .ic{color:oklch(85% .08 150)}.sm-banner .text{letter-spacing:-.01em;color:var(--fg);font-family:Instrument Serif,serif;font-size:22px;font-weight:400}.sm-banner .text b{color:var(--accent);font-style:italic}[data-theme=dark] .sm-banner .text b{color:oklch(from var(--accent) .82 c h)}.sm-main{gap:36px;width:100%;max-width:720px;margin:0 auto;padding:28px 24px 80px}.sm-main,.sm-sec{flex-direction:column;display:flex}.sm-sec{gap:14px}.sm-sec-head{justify-content:space-between;align-items:baseline;gap:14px;display:flex}.sm-sec-head .title{font-size:13.5px;font-weight:600}.sm-sec-head .hint{color:var(--muted-fg);font-size:12px}.sm-stats{background:var(--card);border:1px solid var(--border);border-radius:12px;justify-content:space-around;align-items:center;padding:18px 0;display:flex}.sm-stats .sep{background:var(--border);width:1px;height:36px}.sm-stats .stat{text-align:center}.sm-stats .stat .n{color:var(--fg);letter-spacing:-.02em;font-family:Instrument Serif,serif;font-size:36px;line-height:1}.sm-stats .stat .n .u{color:var(--muted-fg);margin-left:4px;font-family:Inter,sans-serif;font-size:13px;font-weight:400}.sm-stats .stat .lbl{letter-spacing:.12em;text-transform:uppercase;color:var(--muted-fg);margin-top:6px;font-family:JetBrains Mono,monospace;font-size:10px;font-weight:500}.sm-dist{background:var(--card);border:1px solid var(--border);border-radius:12px;flex-direction:column;gap:12px;padding:16px 18px;display:flex}.sm-dist .bar{background:var(--muted-2);border-radius:999px;gap:2px;height:10px;display:flex;overflow:hidden}.sm-dist .bar .seg{min-width:4px;height:100%}.sm-dist .bar .seg.again{background:var(--destructive)}.sm-dist .bar .seg.hard{background:var(--warning)}.sm-dist .bar .seg.good{background:var(--info)}.sm-dist .bar .seg.easy{background:var(--success)}.sm-dist .legend{grid-template-columns:repeat(4,1fr);gap:8px;display:grid}.sm-dist .leg{align-items:baseline;gap:6px;font-size:12px;display:flex}.sm-dist .leg .dot{border-radius:50%;align-self:center;width:8px;height:8px}.sm-dist .leg .dot.again{background:var(--destructive)}.sm-dist .leg .dot.hard{background:var(--warning)}.sm-dist .leg .dot.good{background:var(--info)}.sm-dist .leg .dot.easy{background:var(--success)}.sm-dist .leg .lbl{color:var(--fg);font-weight:500}.sm-dist .leg .n{font-feature-settings:"tnum";color:var(--fg);margin-left:auto;font-weight:500}.sm-dist .leg .n,.sm-dist .leg .pct{font-family:JetBrains Mono,monospace}.sm-dist .leg .pct{color:var(--muted-fg);font-size:10.5px}.sm-fsrs{color:var(--muted-fg);padding:4px;font-size:12.5px}.sm-fsrs b{color:var(--fg);font-weight:500}.sm-weak{background:var(--card);border:1px solid var(--border);border-radius:12px;overflow:hidden}.weak-row{border-bottom:1px solid var(--border-2);grid-template-columns:4px minmax(0,1fr) auto auto;align-items:center;gap:14px;padding:14px 16px 14px 0;display:grid}.weak-row:last-child{border-bottom:0}.weak-row .strip{width:4px;height:28px}.weak-row .main{min-width:0;padding-left:12px}.weak-row .course{color:var(--muted-fg);letter-spacing:.04em;font-family:JetBrains Mono,monospace;font-size:10.5px}.weak-row .obj{margin-top:2px;font-size:13.5px;font-weight:500}.weak-row .acc{color:var(--destructive);background:var(--destructive-soft);font-feature-settings:"tnum";border-radius:999px;padding:4px 9px;font-family:JetBrains Mono,monospace;font-size:12px;font-weight:500}[data-theme=dark] .weak-row .acc{color:oklch(82% .1 25)}.weak-row .drill{color:var(--accent);align-items:center;gap:5px;padding-right:16px;font-size:12.5px;font-weight:500;text-decoration:none;display:inline-flex}.sm-cta{flex-direction:row;justify-content:flex-end;gap:10px}.sm-cta .btn{border:1px solid var(--border);background:var(--card);height:40px;color:var(--fg);font:inherit;cursor:pointer;border-radius:10px;padding:0 18px;font-size:14px;font-weight:500}.sm-cta .btn.secondary:hover{background:var(--muted)}.sm-cta .btn.primary{background:var(--accent);color:var(--accent-fg);border-color:#0000;padding:0 24px}.sm-cta .btn.primary:hover{background:oklch(from var(--accent) calc(l - .04) c h)}.sm-recap{text-align:center;color:var(--muted-fg);font-family:JetBrains Mono,monospace;font-size:12px}.sm-recap b{color:var(--fg);font-weight:500}.bl-page{flex-direction:column;gap:18px;max-width:1180px;margin:0 auto;display:flex}.bl-nav{background:var(--muted);border-radius:10px;align-items:center;gap:4px;width:max-content;padding:4px;display:flex}.bl-nav .tab{color:var(--muted-fg);border-radius:7px;align-items:center;gap:8px;padding:6px 14px;font-size:13px;font-weight:500;text-decoration:none;transition:color .1s;display:inline-flex}.bl-nav .tab:hover{color:var(--fg)}.bl-nav .tab.on{background:var(--card);color:var(--fg);box-shadow:var(--shadow)}.bl-nav .tab .ic{color:var(--muted-fg);display:inline-flex}.bl-nav .tab.on .ic{color:var(--accent)}.bl-nav .tab:nth-child(2).on .ic{color:var(--destructive)}[data-theme=dark] .bl-nav .tab:nth-child(2).on .ic{color:oklch(82% .1 25)}.bl-nav .tab .n{color:var(--muted-fg);font-feature-settings:"tnum";background:var(--muted);border-radius:999px;padding:1px 7px;font-family:JetBrains Mono,monospace;font-size:11px;font-weight:400}.bl-nav .tab.on .n{background:var(--muted);color:var(--fg)}.bl-subnav-tabs .bl-nav{border-bottom:1px solid var(--border);background:0 0;border-radius:0;gap:4px;width:100%;padding:0}.bl-subnav-tabs .bl-nav .tab{box-shadow:none;background:0 0;border-bottom:2px solid #0000;border-radius:0;margin-bottom:-1px}.bl-subnav-tabs .bl-nav .tab.on{border-bottom-color:var(--accent);box-shadow:none;background:0 0}.bl-filters{justify-content:space-between;gap:14px}.bl-filters,.bl-filters .left{flex-wrap:wrap;align-items:center;display:flex}.bl-filters .left{gap:6px}.bl-filters .right{align-items:center;gap:6px;display:flex}.bl-filters.mj .left{gap:8px}.bl-filters.second{padding-top:0}.bl-filters.second .left{gap:6px}.bl-filters.second .lbl{letter-spacing:.12em;text-transform:uppercase;color:var(--muted-fg);margin-right:4px;font-family:JetBrains Mono,monospace;font-size:10px;font-weight:500}.bl-hide-typepills .bl-filters .left .np-chip-sep,.bl-hide-typepills .bl-filters .left .np-chip-sep~.np-chip-btn{display:none}.bl-sort{border:1px solid var(--border);background:var(--card);height:28px;color:var(--fg);font:inherit;cursor:pointer;border-radius:999px;align-items:center;gap:6px;padding:0 11px;font-size:12px;display:inline-flex}.bl-sort:hover{background:var(--muted)}.bl-sort .chev{color:var(--muted-fg);display:inline-flex}.np-chip-btn .emoji{margin-right:2px;font-size:13px;line-height:1}.np-chip-btn .n{color:var(--muted-fg);font-feature-settings:"tnum";margin-left:4px;font-family:JetBrains Mono,monospace;font-size:10.5px}.np-chip-btn.on .n{color:var(--bg);opacity:.7}.bl-bulk{z-index:8;background:var(--accent-soft);border:1px solid var(--accent);border-radius:10px;justify-content:space-between;align-items:center;padding:10px 14px;display:flex;position:sticky;top:0}.bl-bulk .n{color:var(--accent-soft-fg);font-size:13px;font-weight:500}.bl-bulk .acts{gap:6px;display:flex}.bl-bulk .tb-btn.ghost{color:var(--accent-soft-fg);background:0 0;border-color:#0000}.bl-list{flex-direction:column;gap:10px;display:flex}.bl-card{background:var(--card);border:1px solid var(--border);border-radius:12px;transition:border-color .12s,box-shadow .12s}.bl-card:hover{border-color:var(--muted-fg)}.bl-card.open{border-color:var(--accent);box-shadow:0 0 0 3px var(--ring)}.bl-card.checked{background:var(--accent-soft)}.bl-card .head{grid-template-columns:28px minmax(0,1fr) auto;align-items:flex-start;gap:14px;padding:14px 16px;display:grid}.bl-card .head .main{cursor:pointer;min-width:0}.bl-card .head .meta{color:var(--muted-fg);align-items:center;gap:8px;margin-bottom:6px;font-size:11.5px;display:flex}.bl-card .head .meta .strip{border-radius:2px;width:3px;height:12px}.bl-card .head .meta .muted{color:var(--muted-fg);opacity:.8}.bl-card .head .meta .sep{opacity:.4}.bl-card .head .prompt{color:var(--fg);-webkit-line-clamp:2;-webkit-box-orient:vertical;font-size:14px;line-height:1.4;display:-webkit-box;overflow:hidden}.bl-card.open .head .prompt{-webkit-line-clamp:unset;font-size:16px;line-height:1.5;display:block}.bl-card .head .right{flex-shrink:0;align-items:center;gap:8px;padding-top:2px;display:flex}.bl-card .head .right .drill{gap:5px;height:28px;padding:0 10px;font-size:11.5px}.bl-chev{width:26px;height:26px;color:var(--muted-fg);cursor:pointer;background:0 0;border:0;border-radius:6px;place-items:center;transition:transform .18s;display:grid}.bl-chev:hover{background:var(--muted);color:var(--fg)}.bl-chev.open{color:var(--fg);transform:rotate(180deg)}.bl-star{width:28px;height:28px;color:var(--warning);cursor:pointer;background:0 0;border:0;border-radius:6px;place-items:center;display:grid}[data-theme=dark] .bl-star.on{color:oklch(88% .1 75)}.bl-star:hover{background:var(--warning-soft)}.bl-cb{border:1.5px solid var(--border);background:var(--card);width:22px;height:22px;color:var(--accent);cursor:pointer;border-radius:6px;place-items:center;margin-top:3px;display:grid}.bl-cb.on{background:var(--accent);color:var(--accent-fg);border-color:#0000}.bl-card .body{border-top:1px dashed var(--border);flex-direction:column;gap:12px;margin-top:4px;padding:4px 16px 16px;display:flex}.bl-card .body .ans{background:var(--success-soft);color:var(--success);border-radius:8px;padding:10px 12px;font-size:13.5px;line-height:1.5}[data-theme=dark] .bl-card .body .ans{color:oklch(85% .08 150)}.bl-card .body .ans .lbl,.bl-card .body .exp .lbl{letter-spacing:.14em;text-transform:uppercase;vertical-align:2px;margin-right:8px;font-family:JetBrains Mono,monospace;font-size:9.5px;font-weight:500;display:inline-block}.bl-card .body .exp{color:var(--muted-fg);padding:0 2px;font-size:12.5px;line-height:1.55}.bl-card .body .choices{flex-direction:column;gap:5px;margin:0;padding:0;list-style:none;display:flex}.bl-card .body .choices li{background:var(--muted);color:var(--fg);border-radius:6px;align-items:flex-start;gap:10px;padding:8px 10px;font-size:13px;display:flex}.bl-card .body .choices li.correct{background:var(--success-soft);color:var(--success);font-weight:500}[data-theme=dark] .bl-card .body .choices li.correct{color:oklch(85% .08 150)}.bl-card .body .choices .mark{width:14px;height:14px;color:var(--success);flex-shrink:0;justify-content:center;align-items:center;margin-top:2px;display:inline-flex}.bl-card .body .choices .d{border:1.5px solid var(--border);border-radius:50%;width:6px;height:6px}.bl-card .body .foot{align-items:center;gap:16px;padding-top:4px;font-size:12px;display:flex}.bl-card .body .foot .starred-on{color:var(--muted-fg);margin-left:auto;font-family:JetBrains Mono,monospace;font-size:10.5px}.bl-nomatch{text-align:center;color:var(--muted-fg);background:var(--subtle);border:1px dashed var(--border);border-radius:12px;padding:36px 24px;font-size:13.5px}.bl-nomatch .link{font:inherit;color:var(--accent);cursor:pointer;text-underline-offset:2px;background:0 0;border:0;margin-left:6px;padding:0;font-size:13.5px;text-decoration:underline}.bl-toast{background:var(--fg);z-index:200;border-radius:10px;gap:12px;padding:10px 14px;font-size:13px;position:fixed;bottom:24px;left:50%;transform:translate(-50%);box-shadow:0 12px 32px -8px oklch(0 0 0/.4)}.bl-toast,.bl-toast .undo{color:var(--bg);align-items:center;display:inline-flex}.bl-toast .undo{border:1px solid oklch(from var(--bg) l c h/.3);font:inherit;cursor:pointer;background:0 0;border-radius:6px;gap:4px;height:26px;margin-left:4px;padding:0 10px;font-size:12.5px}.bl-toast .undo:hover{background:oklch(from var(--bg) l c h/.1)}.bl-empty{text-align:center;background:var(--card);border:1px dashed var(--border);border-radius:14px;flex-direction:column;align-items:center;gap:12px;width:100%;max-width:600px;margin:16px auto 0;padding:48px 24px 56px;display:flex}.bl-empty .ic{background:var(--warning-soft);width:56px;height:56px;color:var(--warning);border-radius:14px;place-items:center;margin-bottom:4px;display:grid}[data-theme=dark] .bl-empty .ic{color:oklch(88% .1 75)}.bl-empty h3{letter-spacing:-.01em;margin:0;font-family:Instrument Serif,serif;font-size:24px;font-weight:400}.bl-empty p{color:var(--muted-fg);max-width:400px;margin:0;font-size:13.5px;line-height:1.5}.bl-empty p b{color:var(--fg);font-weight:500}.bl-empty-mock{background:var(--subtle);border:1px solid var(--border);border-radius:12px;width:100%;max-width:360px;margin-top:14px;padding:14px 14px 18px;position:relative}.bl-empty-mock .mini-topbar{background:var(--card);border:1px solid var(--border);border-radius:8px;align-items:center;gap:10px;padding:8px 10px;display:flex}.bl-empty-mock .dotleft{background:var(--muted);border-radius:4px;width:12px;height:12px}.bl-empty-mock .bar{background:var(--muted-2);border-radius:999px;flex:1;height:3px;overflow:hidden}.bl-empty-mock .bar .fill{background:var(--accent);width:40%;height:100%}.bl-empty-mock .pillset{align-items:center;gap:6px;display:flex}.bl-empty-mock .pillset .p{letter-spacing:.08em;background:var(--muted);color:var(--muted-fg);border-radius:3px;padding:2px 5px;font-family:JetBrains Mono,monospace;font-size:8.5px}.bl-empty-mock .pillset .dot2{background:var(--muted);border-radius:50%;width:14px;height:14px}.bl-empty-mock .star-tap{background:var(--warning-soft);width:20px;height:20px;color:var(--warning);border-radius:5px;place-items:center;display:inline-grid;position:relative}[data-theme=dark] .bl-empty-mock .star-tap{color:oklch(88% .1 75)}.bl-empty-mock .star-tap .ring{border:2px dashed var(--warning);border-radius:50%;animation:bl-spin 6s linear infinite;position:absolute;inset:-4px}@keyframes bl-spin{to{transform:rotate(1turn)}}.bl-empty-mock .callout{color:var(--muted-fg);align-items:center;gap:8px;font-family:JetBrains Mono,monospace;font-size:10.5px;display:flex;position:absolute;bottom:-28px;right:36px}.bl-empty-mock .callout .line{border-left:1.5px dashed var(--muted-fg);border-top:1.5px dashed var(--muted-fg);border-top-left-radius:6px;width:24px;height:18px;margin-bottom:8px}.bl-empty-mock.sheet{background:var(--card);padding:16px}.bl-empty-mock.sheet .title{margin-bottom:10px;font-family:Instrument Serif,serif;font-size:16px}.bl-empty-mock.sheet .chips{flex-wrap:wrap;gap:6px;display:flex}.bl-empty-mock.sheet .ec{background:var(--muted);color:var(--muted-fg);border:1px solid var(--border);border-radius:999px;padding:5px 9px;font-size:11px}.bl-empty-mock.sheet .ec.on{background:var(--accent-soft);color:var(--accent-soft-fg);border-color:#0000}.mj-list-2{flex-direction:column;gap:10px;display:flex}.mj-card{background:var(--card);border:1px solid var(--border);border-radius:12px;grid-template-columns:3px 1fr;transition:border-color .12s;display:grid;overflow:hidden}.mj-card:hover{border-color:var(--muted-fg)}.mj-card.open{border-color:var(--accent)}.mj-card .rule{background:var(--muted-fg)}.mj-card.knowledge-gap .rule{background:var(--info)}.mj-card.misread .rule{background:var(--warning)}.mj-card.distractor .rule{background:var(--destructive)}.mj-card.careless .rule{background:var(--success)}.mj-card.collision .rule{background:var(--accent)}.mj-card .head{grid-column:2;justify-content:space-between;align-items:center;gap:14px;padding:12px 16px 6px;display:flex}.mj-card .head .left{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.mj-card .head .meta{color:var(--muted-fg);align-items:center;gap:6px;font-size:11.5px;display:flex}.mj-card .head .meta .strip{border-radius:2px;width:3px;height:12px}.mj-card .head .meta .muted{opacity:.8}.mj-card .head .meta .sep{opacity:.4}.mj-card .head .acts{align-items:center;gap:10px;display:flex}.mj-card .head .acts .open-card{height:30px;padding:0 10px;font-size:12px}.mj-card .head .acts .open-card .chev{transition:transform .18s;display:inline-flex}.mj-card .head .acts .open-card .chev.open{transform:rotate(180deg)}.mj-card .head .acts .primary-link{cursor:pointer;background:0 0;border:0;padding:0;font-family:inherit}.mj-card .body{flex-direction:column;grid-column:2;gap:4px;padding:4px 16px 14px;display:flex}.mj-card .body .obj{color:var(--fg);font-size:14px;font-weight:500;line-height:1.4}.mj-card .body .prompt{color:var(--muted-fg);-webkit-line-clamp:2;-webkit-box-orient:vertical;font-size:12.5px;line-height:1.45;display:-webkit-box;overflow:hidden}.mj-card .body .footline{color:var(--muted-fg);flex-wrap:wrap;align-items:center;gap:6px;margin-top:4px;font-family:JetBrains Mono,monospace;font-size:10.5px;display:flex}.mj-card .body .footline .dot{opacity:.4}.mj-card .body .footline b{color:var(--fg);font-weight:500}.mj-card .body .footline .rated.again{color:var(--destructive)}.mj-card .body .footline .rated.hard{color:var(--warning)}[data-theme=dark] .mj-card .body .footline .rated.again{color:oklch(82% .1 25)}[data-theme=dark] .mj-card .body .footline .rated.hard{color:oklch(88% .1 75)}.mj-card .drawer{border-top:1px dashed var(--border);flex-direction:column;grid-column:2;gap:10px;padding:12px 16px 16px;display:flex}.mj-card .drawer .ans{background:var(--success-soft);color:var(--success);border-radius:8px;padding:10px 12px;font-size:13.5px;line-height:1.5}[data-theme=dark] .mj-card .drawer .ans{color:oklch(85% .08 150)}.mj-card .drawer .ans .lbl,.mj-card .drawer .exp .lbl{letter-spacing:.14em;text-transform:uppercase;vertical-align:2px;margin-right:8px;font-family:JetBrains Mono,monospace;font-size:9.5px;font-weight:500;display:inline-block}.mj-card .drawer .exp{color:var(--muted-fg);font-size:12.5px;line-height:1.55}.bl-loadmore{justify-content:center;padding:14px 0 0;display:flex}.bl-loadmore button{border:1px solid var(--border);background:var(--card);height:36px;color:var(--fg);font:inherit;cursor:pointer;border-radius:8px;padding:0 16px;font-size:13px}.bl-loadmore button:hover{background:var(--muted)}.shell.mobile .bl-card .head{grid-template-columns:28px 1fr}.shell.mobile .bl-card .head .right{grid-column:1/-1;justify-content:space-between;width:100%;padding-top:8px}.shell.mobile .bl-card .head .right .drill{flex:1;justify-content:center}.shell.mobile .bl-filters .right{display:none}.shell.mobile .mj-card .head{flex-direction:column;align-items:flex-start;gap:8px}.shell.mobile .mj-card .head .acts{justify-content:space-between;width:100%}.shell.mobile .bl-nav{width:100%}.shell.mobile .bl-nav .tab{flex:1;justify-content:center}.shell.mobile .bl-empty-mock{max-width:100%}.shell.mobile .bl-empty-mock .callout{display:none}.aw-wrap{flex-direction:column;gap:16px;max-width:680px;margin:0 auto;display:flex;position:relative}.aw-steps{align-items:center;gap:0;padding:4px 0;display:flex}.aw-step{color:var(--muted-fg);align-items:center;gap:8px;font-size:12px;display:inline-flex}.aw-step .dot{background:var(--muted-2);width:22px;height:22px;color:var(--muted-fg);border:1px solid var(--border);border-radius:50%;place-items:center;font-family:JetBrains Mono,monospace;font-size:11px;font-weight:500;display:grid}.aw-step.cur .dot{background:var(--card);color:var(--accent);border-color:var(--accent);box-shadow:0 0 0 3px var(--ring)}.aw-step.done .dot{background:var(--accent);color:var(--accent-fg);border-color:#0000}.aw-step.cur .lbl{color:var(--fg);font-weight:500}.aw-step.done .lbl{color:var(--fg)}.aw-line{background:var(--border);flex:1;height:1px;margin:0 12px}.aw-line.done{background:var(--accent)}.aw-ctxchip{background:var(--muted);border:1px solid var(--border);color:var(--fg);border-radius:999px;align-self:flex-start;align-items:center;gap:8px;padding:6px 12px 6px 0;font-size:12px;display:inline-flex;overflow:hidden}.aw-ctxchip .strip{flex-shrink:0;width:4px;height:24px}.aw-ctxchip .nm{padding-left:8px;font-weight:500}.aw-ctxchip .sep{opacity:.5}.aw-ctxchip .sep,.aw-ctxchip .style{color:var(--muted-fg)}.aw-ctxchip .style b{color:var(--fg);font-weight:500}.aw-card{background:var(--card);border:1px solid var(--border);border-radius:14px;overflow:hidden}.aw-card,.aw-step-body{flex-direction:column;display:flex}.aw-step-body{gap:14px;padding:24px 24px 4px}.aw-head{letter-spacing:-.015em;color:var(--fg);margin:0;font-family:Instrument Serif,serif;font-size:26px;font-weight:400}.aw-sub{color:var(--muted-fg);margin:-4px 0 8px;font-size:13px}.aw-presets{grid-template-columns:1fr 1fr;gap:10px;display:grid}.aw-presets.aw-presets-4col{grid-template-columns:repeat(4,1fr)}.aw-preset{border:1.5px solid var(--border);background:var(--card);color:var(--fg);font:inherit;cursor:pointer;text-align:left;border-radius:12px;flex-direction:column;gap:8px;padding:14px 16px;transition:border-color .12s,background .12s,transform 50ms;display:flex}.aw-preset:hover{background:var(--subtle);border-color:var(--muted-fg)}.aw-preset.on{border-color:var(--accent);background:var(--accent-soft)}.aw-preset .head{align-items:center;gap:10px;display:flex}.aw-preset .ic-bg{background:var(--muted);width:32px;height:32px;color:var(--muted-fg);border-radius:8px;flex-shrink:0;place-items:center;display:grid}.aw-preset.on .ic-bg{background:var(--card);color:var(--accent)}.aw-preset .lbl{font-size:14.5px;font-weight:600}.aw-preset .counts{color:var(--muted-fg);align-items:center;gap:6px;font-family:JetBrains Mono,monospace;font-size:11.5px;display:flex}.aw-preset .counts .sep{opacity:.4}.aw-preset .style{letter-spacing:.04em;color:var(--muted-fg);font-family:JetBrains Mono,monospace;font-size:10.5px}.aw-disclose{font:inherit;color:var(--muted-fg);cursor:pointer;background:0 0;border:0;align-self:flex-start;align-items:center;gap:6px;padding:4px 0;font-size:12.5px;display:inline-flex}.aw-disclose:hover{color:var(--fg)}.aw-disclose .chev{display:inline-flex}.aw-custom{border:1px dashed var(--border);border-radius:10px;flex-direction:column;gap:14px;padding:14px 16px;display:flex}.aw-custom .row{grid-template-columns:140px 1fr;align-items:flex-start;gap:18px;display:grid}.aw-lbl{color:var(--fg);flex-direction:column;gap:3px;font-size:12px;font-weight:500;display:flex}.aw-lbl .val{color:var(--muted-fg);font-feature-settings:"tnum";font-family:JetBrains Mono,monospace;font-size:11px;font-weight:400}.aw-slider input[type=range]{width:100%;accent-color:var(--accent)}.aw-slider .ticks{color:var(--muted-fg);justify-content:space-between;margin-top:2px;font-family:JetBrains Mono,monospace;font-size:10px;display:flex}.aw-style,.aw-time{align-items:center;gap:10px;display:flex}.seg-ctl{background:var(--muted);border-radius:7px;gap:1px;padding:2px;display:inline-flex}.seg-ctl button{height:26px;color:var(--muted-fg);cursor:pointer;background:0 0;border:0;border-radius:5px;padding:0 12px;font-family:inherit;font-size:12px}.seg-ctl button.on{background:var(--card);color:var(--fg);box-shadow:var(--shadow)}.time-input{align-items:baseline;gap:4px;display:inline-flex}.time-input input{border:1px solid var(--border);background:var(--card);width:70px;height:30px;font:inherit;text-align:right;border-radius:7px;padding:0 10px;font-size:13px}.time-input .u,.time-input input{font-family:JetBrains Mono,monospace}.time-input .u{color:var(--muted-fg);font-size:11.5px}.aw-hide-mix .aw-mix{display:none}.aw-mix{flex-direction:column;gap:6px;display:flex}.aw-mix .bar{background:var(--muted-2);border-radius:999px;gap:2px;height:6px;display:flex;overflow:hidden}.aw-mix .bar .seg{height:100%}.aw-mix .bar .seg.type-mcq{background:var(--m2)}.aw-mix .bar .seg.type-vig{background:oklch(62% .14 305)}.aw-mix .bar .seg.type-cloze{background:var(--m1)}.aw-mix .bar .seg.type-short{background:var(--m3)}.aw-mix .legend{color:var(--muted-fg);flex-wrap:wrap;gap:10px;font-family:JetBrains Mono,monospace;font-size:10.5px;display:flex}.aw-mix .leg{align-items:center;gap:4px;display:inline-flex}.aw-mix .leg .dot{border-radius:50%;width:6px;height:6px}.aw-mix .leg .dot.type-mcq{background:var(--m2)}.aw-mix .leg .dot.type-vig{background:oklch(62% .14 305)}.aw-mix .leg .dot.type-cloze{background:var(--m1)}.aw-mix .leg .dot.type-short{background:var(--m3)}.aw-mix .leg .pct{color:var(--fg)}.aw-bulkrow{justify-content:space-between;gap:14px;padding:8px 0}.aw-bulkrow,.aw-bulkrow .left{align-items:center;display:flex}.aw-bulkrow .left{color:var(--muted-fg);gap:6px;font-size:12.5px}.aw-bulkrow .left .dot{opacity:.4}.aw-bulkrow .left .link{font:inherit;color:var(--accent);cursor:pointer;text-underline-offset:2px;background:0 0;border:0;padding:0;font-size:12.5px;text-decoration:underline}.aw-toggle{color:var(--muted-fg);cursor:pointer;align-items:center;gap:8px;font-size:12.5px;display:inline-flex}.aw-toggle .cb{border:1.5px solid var(--border);background:var(--card);width:16px;height:16px;color:var(--accent-fg);border-radius:4px;place-items:center;display:grid}.aw-toggle .cb.on{background:var(--accent);border-color:#0000}.aw-lec-list{background:var(--card);border:1px solid var(--border);border-radius:10px;max-height:380px;overflow:hidden auto}.aw-lec-row{text-align:left;color:var(--fg);cursor:pointer;font:inherit;background:0 0;border:0;border-bottom:1px solid var(--border-2);grid-template-columns:22px 70px minmax(0,1fr) auto;align-items:center;gap:14px;width:100%;padding:11px 14px;display:grid}.aw-lec-row:last-child{border-bottom:0}.aw-lec-row:hover{background:var(--subtle)}.aw-lec-row.on{background:var(--accent-soft)}.aw-lec-row .cb{border:1.5px solid var(--border);background:var(--card);width:18px;height:18px;color:var(--accent-fg);border-radius:5px;place-items:center;display:grid}.aw-lec-row .cb.on{background:var(--accent);border-color:#0000}.aw-lec-row .num{color:var(--muted-fg);letter-spacing:.04em;background:var(--muted);text-align:center;border-radius:4px;padding:3px 7px;font-family:JetBrains Mono,monospace;font-size:11px}.aw-lec-row .nm{text-overflow:ellipsis;white-space:nowrap;font-size:13.5px;font-weight:500;overflow:hidden}.aw-lec-row .sub{color:var(--muted-fg);margin-top:2px;font-family:JetBrains Mono,monospace;font-size:10.5px}.aw-mastery{color:var(--muted-fg);white-space:nowrap;align-items:center;gap:6px;font-size:11px;display:inline-flex}.aw-mastery .d{background:var(--muted-fg);border-radius:50%;width:8px;height:8px}.aw-mastery.in-progress .d{background:var(--warning)}.aw-mastery.mostly .d{background:var(--success)}.aw-mastery.in-progress{color:var(--m1-fg)}.aw-mastery.mostly{color:var(--m3-fg)}[data-theme=dark] .aw-mastery.in-progress{color:oklch(88% .1 75)}[data-theme=dark] .aw-mastery.mostly{color:oklch(85% .08 150)}.aw-budget{background:var(--subtle);border:1px solid var(--border);border-radius:10px;flex-direction:column;gap:8px;padding:12px 14px;display:flex;position:sticky;bottom:0}.aw-budget.over{background:var(--warning-soft);border-color:#0000}.aw-budget .meta{color:var(--muted-fg);flex-wrap:wrap;align-items:center;gap:6px;font-size:12px;display:flex}.aw-budget .meta b{color:var(--fg);font-feature-settings:"tnum";font-family:JetBrains Mono,monospace;font-weight:500}.aw-budget .meta .sep{opacity:.4}.aw-budget .meta .budget-pct{color:var(--muted-fg);margin-left:auto;font-family:JetBrains Mono,monospace;font-size:11px}.aw-budget .bar{background:var(--muted-2);border-radius:999px;height:6px;position:relative;overflow:hidden}.aw-budget .bar .fill{background:var(--accent);border-radius:999px;height:100%;transition:width .3s}.aw-budget.over .bar .fill{background:var(--warning)}.aw-budget .bar .ceiling{border-right:1.5px dashed oklch(from var(--destructive) l c h/.5);width:0;position:absolute;top:0;bottom:0;right:0}.aw-budget .warn{color:var(--m1-fg);align-items:flex-start;gap:8px;font-size:12px;line-height:1.45;display:flex}.aw-budget .warn .ic{color:var(--warning);margin-top:1px;display:inline-flex}[data-theme=dark] .aw-budget .warn{color:oklch(88% .1 75)}.aw-confirm{background:var(--subtle);border:1px solid var(--border);border-radius:10px;padding:6px 16px}.aw-confirm .row{border-bottom:1px dashed var(--border);grid-template-columns:130px 1fr;align-items:flex-start;gap:12px;padding:12px 0;display:grid}.aw-confirm .row:last-child{border-bottom:0}.aw-confirm .k{letter-spacing:.12em;text-transform:uppercase;color:var(--muted-fg);padding-top:2px;font-family:JetBrains Mono,monospace;font-size:10.5px;font-weight:500}.aw-confirm .v{color:var(--fg);font-size:13.5px}.aw-confirm .v>div{padding:1px 0}.aw-confirm .more{color:var(--muted-fg);font-size:12px}.aw-estimate{color:var(--muted-fg);padding:4px;font-size:12.5px}.aw-estimate b{color:var(--fg);font-weight:500}.aw-foot{background:var(--subtle);border-top:1px solid var(--border);align-items:center;gap:12px;margin-top:14px;padding:14px 24px;display:flex}.aw-foot-right{gap:8px;margin-left:auto;display:flex}.aw-error{background:var(--destructive-soft);color:var(--destructive);border-radius:8px;flex:1;align-items:center;gap:10px;margin:0 12px;padding:8px 12px;font-size:12.5px;display:flex}.aw-error .ic{display:inline-flex}[data-theme=dark] .aw-error{color:oklch(82% .1 25)}.aw-loading{z-index:90;background:oklch(from var(--bg) l c h/.92);-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);border-radius:18px;place-items:center;animation:aw-fade .18s;display:grid;position:absolute;inset:-40px}@keyframes aw-fade{0%{opacity:0}to{opacity:1}}.aw-loading .content{text-align:center;flex-direction:column;align-items:center;gap:12px;display:flex}.aw-loading .spin{color:var(--accent);animation:ne-spin .9s linear infinite;display:inline-flex}.aw-loading .head{letter-spacing:-.015em;color:var(--fg);font-family:Instrument Serif,serif;font-size:26px;font-weight:400}.aw-loading .phrase{color:var(--muted-fg);letter-spacing:.02em;font-family:JetBrains Mono,monospace;font-size:12px}.as-page{flex-direction:column;gap:18px;max-width:1240px;margin:0 auto;display:flex}.as-hero{background:var(--card);border:1px solid var(--border);box-shadow:var(--shadow);border-radius:14px;overflow:hidden}.as-hero .band{height:10px}.as-hero .body{grid-template-columns:minmax(0,1fr) auto;align-items:flex-start;gap:24px;padding:20px 24px;display:grid}.as-hero .left{min-width:0}.as-hero .badges{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.as-kind{letter-spacing:.14em;text-transform:uppercase;border:1px solid var(--border);border-radius:4px;padding:4px 8px;font-family:JetBrains Mono,monospace;font-size:9.5px;font-weight:500}.as-kind,.as-kind.quick{background:var(--muted);color:var(--muted-fg)}.as-kind.practice{background:var(--m2-soft);color:var(--m2-fg);border-color:#0000}.as-kind.midterm{color:oklch(42% .1 305);background:oklch(92% .04 305);border-color:#0000}.as-kind.final{background:var(--destructive-soft);color:var(--destructive);border-color:#0000}[data-theme=dark] .as-kind.practice{color:oklch(85% .08 240);background:oklch(30% .06 240)}[data-theme=dark] .as-kind.midterm{color:oklch(85% .08 305);background:oklch(30% .06 305)}[data-theme=dark] .as-kind.final{color:oklch(82% .1 25);background:oklch(30% .07 25)}.as-hero .course-pill{color:var(--fg);background:var(--muted);border:1px solid var(--border);border-radius:999px;align-items:center;gap:6px;padding:3px 9px 3px 0;font-size:11.5px;display:inline-flex;overflow:hidden}.as-hero .course-pill .strip{width:4px;height:14px}.as-hero .gen{color:var(--muted-fg);font-family:JetBrains Mono,monospace;font-size:11.5px}.as-hero .title{letter-spacing:-.02em;color:var(--fg);margin:10px 0 0;font-family:Instrument Serif,serif;font-size:32px;font-weight:400;line-height:1.05}.as-hero .right{flex-direction:column;align-items:flex-end;gap:14px;display:flex}.as-hero .stats{align-items:center;gap:18px;display:flex}.as-hero .stats .sep{background:var(--border);width:1px;height:32px}.as-hero .stats .stat{text-align:right}.as-hero .stats .n{letter-spacing:-.02em;color:var(--fg);font-family:Instrument Serif,serif;font-size:28px;line-height:1}.as-hero .stats .n.green{color:var(--success)}.as-hero .stats .n.amber{color:var(--warning)}.as-hero .stats .n.red{color:var(--destructive)}[data-theme=dark] .as-hero .stats .n.green{color:oklch(85% .08 150)}[data-theme=dark] .as-hero .stats .n.amber{color:oklch(88% .1 75)}[data-theme=dark] .as-hero .stats .n.red{color:oklch(82% .1 25)}.as-hero .stats .lbl{letter-spacing:.1em;text-transform:uppercase;color:var(--muted-fg);margin-top:4px;font-family:JetBrains Mono,monospace;font-size:10px}.as-hero .actions{align-items:center;gap:8px;display:flex}.as-grid{grid-template-columns:minmax(0,2fr) minmax(0,1fr);align-items:flex-start;gap:16px;display:grid}.as-main,.as-side{flex-direction:column;gap:16px;min-width:0;display:flex}.as-stale{background:var(--warning-soft);border:1px solid oklch(from var(--warning) .85 .06 h);border-radius:12px;grid-template-columns:4px 1fr;display:grid;overflow:hidden}[data-theme=dark] .as-stale{background:oklch(from var(--warning) .22 .06 h);border-color:oklch(from var(--warning) .35 .07 h)}.as-stale .rule{background:var(--warning)}.as-stale .content{flex-direction:column;gap:10px;padding:14px 18px;display:flex}.as-stale .head .title{color:var(--fg);font-size:14.5px;font-weight:600}.as-stale .head .sub{color:var(--m1-fg);margin-top:2px;font-size:12.5px;line-height:1.5}[data-theme=dark] .as-stale .head .sub{color:oklch(88% .1 75)}.as-stale .actions{gap:8px;display:flex}.tb-btn.ghost{color:var(--muted-fg);background:0 0;border-color:#0000}.tb-btn.ghost:hover{background:var(--muted)}.as-section{background:var(--card);border:1px solid var(--border);border-radius:12px;overflow:hidden}.as-section .head{border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;padding:12px 16px;display:flex}.as-section .head .title{align-items:center;gap:8px;font-size:13.5px;font-weight:600;display:flex}.as-section .head .badge-n{color:var(--muted-fg);background:var(--muted);border-radius:999px;padding:2px 7px;font-family:JetBrains Mono,monospace;font-size:11px;font-weight:400}.as-spark{padding:14px 12px 6px}.as-spark svg{width:100%;height:160px;display:block}.as-spark-empty{text-align:center;color:var(--muted-fg);padding:32px 16px;font-size:12.5px}.as-att-list{flex-direction:column;display:flex}.as-att-row{border-bottom:1px solid var(--border-2);color:var(--fg);grid-template-columns:48px minmax(0,1fr) auto;align-items:center;gap:14px;padding:12px 16px;text-decoration:none;display:grid}.as-att-row:last-child{border-bottom:0}.as-att-row:hover{background:var(--subtle)}.as-att-row.abandoned{opacity:.6}.as-att-row.inprog{background:var(--accent-soft)}.as-att-row .num{color:var(--muted-fg);font-feature-settings:"tnum";font-family:JetBrains Mono,monospace;font-size:12px}.as-att-row .nm{font-size:13.5px;font-weight:500}.as-att-row .sub{color:var(--muted-fg);margin-top:2px;font-family:JetBrains Mono,monospace;font-size:11px}.as-att-row .right{flex-shrink:0;align-items:center;gap:12px;display:flex}.as-score{letter-spacing:-.02em;font-family:Instrument Serif,serif;font-size:24px;line-height:1}.as-score.green{color:var(--success)}.as-score.amber{color:var(--warning)}.as-score.red{color:var(--destructive)}[data-theme=dark] .as-score.green{color:oklch(85% .08 150)}[data-theme=dark] .as-score.amber{color:oklch(88% .1 75)}[data-theme=dark] .as-score.red{color:oklch(82% .1 25)}.as-att-row .view{color:var(--accent);align-items:center;gap:4px;font-size:12px;font-weight:500;display:inline-flex}.ab-badge{letter-spacing:.1em;text-transform:uppercase;background:var(--muted);color:var(--muted-fg);border-radius:999px;margin-left:8px;padding:2px 6px;font-family:JetBrains Mono,monospace;font-size:9.5px}.as-side{position:sticky;top:0}.as-sidecard{background:var(--card);border:1px solid var(--border);border-radius:12px;padding:14px 16px}.as-sidecard .head{letter-spacing:.14em;text-transform:uppercase;color:var(--muted-fg);margin-bottom:12px;font-family:JetBrains Mono,monospace;font-size:10px;font-weight:500}.as-sidecard .kv{border-bottom:1px dashed var(--border);grid-template-columns:92px 1fr;align-items:flex-start;gap:12px;padding:8px 0;font-size:13px;display:grid}.as-sidecard .kv:last-of-type{border-bottom:0}.as-sidecard .kv.vert{grid-template-columns:1fr;gap:6px}.as-sidecard .kv.vert .k{color:var(--muted-fg);letter-spacing:.08em;text-transform:uppercase;font-family:JetBrains Mono,monospace;font-size:11px}.as-sidecard .kv .k{color:var(--muted-fg);font-size:11.5px}.as-sidecard .kv .v{color:var(--fg)}.as-sidecard .kv .v.micro.mono{color:var(--muted-fg);word-break:break-all;font-family:JetBrains Mono,monospace;font-size:10.5px}.as-sidecard .scope-list{flex-direction:column;gap:3px;margin:0;padding:0 0 0 14px;font-size:12.5px;display:flex}.as-sidecard .scope-list li{color:var(--fg)}.as-sidecard.about .empty{color:var(--muted-fg);font-size:12.5px}.as-sidecard.about .empty .primary-link{cursor:pointer;background:0 0;border:0;padding:0;font-family:inherit}.shell.mobile .aw-wrap{max-width:100%}.shell.mobile .aw-presets{grid-template-columns:1fr}.shell.mobile .aw-custom .row{grid-template-columns:1fr;gap:8px}.shell.mobile .aw-confirm .row{grid-template-columns:1fr;gap:4px}.shell.mobile .aw-confirm .k{padding-top:0}.shell.mobile .aw-lec-row{grid-template-columns:22px 1fr;grid-template-areas:"cb num""cb main""cb m";row-gap:4px}.shell.mobile .aw-lec-row .num{grid-area:num;width:max-content}.shell.mobile .aw-lec-row .main{grid-area:main}.shell.mobile .aw-mastery{grid-area:m}.shell.mobile .aw-bulkrow{flex-direction:column;align-items:flex-start;gap:8px}.shell.mobile .as-hero .body{grid-template-columns:1fr}.shell.mobile .as-hero .right{align-items:stretch}.shell.mobile .as-hero .stats{justify-content:space-around}.shell.mobile .as-hero .stats .stat{text-align:center}.shell.mobile .as-hero .title{font-size:26px}.shell.mobile .as-grid{grid-template-columns:1fr}.shell.mobile .as-side{position:static}.shell.mobile .as-att-row .right{gap:8px}.ar-root{background:var(--bg);width:100%;height:100%;color:var(--fg);-webkit-font-smoothing:antialiased;flex-direction:column;font-family:Inter,sans-serif;display:flex;overflow:hidden}.ar-root,.ar-top{position:relative}.ar-top{border-bottom:1px solid var(--border);background:var(--card);z-index:5;flex-shrink:0;grid-template-columns:minmax(260px,1fr) auto minmax(260px,1fr);align-items:center;gap:16px;height:56px;padding:0 18px;display:grid}.ar-top-left{align-items:center;gap:14px;min-width:0;display:flex}.ar-top-left .title-row{align-items:center;gap:8px;min-width:0;display:inline-flex}.ar-top-left .strip{border-radius:2px;flex-shrink:0;width:4px;height:18px}.ar-top-left .title{color:var(--muted-fg);text-overflow:ellipsis;white-space:nowrap;font-size:13px;overflow:hidden}.ar-top-left .title b{color:var(--fg);font-feature-settings:"tnum";font-family:JetBrains Mono,monospace;font-weight:500}.ar-abandon{font:inherit;color:var(--destructive);cursor:pointer;white-space:nowrap;background:0 0;border:0;border-radius:6px;padding:4px 8px;font-size:12px}.ar-abandon:hover{background:var(--destructive-soft)}[data-theme=dark] .ar-abandon{color:oklch(82% .1 25)}.ar-top-center{justify-self:center;align-items:center;gap:12px;display:inline-flex}.ar-timer{font-feature-settings:"tnum";letter-spacing:.02em;color:var(--fg);font-family:JetBrains Mono,monospace;font-size:26px;font-weight:500}.ar-timer.untimed{color:var(--muted-fg);text-transform:uppercase;letter-spacing:.14em;font-size:13px;font-weight:400}.ar-timer.amber{color:var(--warning)}.ar-timer.red{color:var(--destructive);animation:ar-pulse 1.1s ease-in-out infinite}[data-theme=dark] .ar-timer.amber{color:oklch(88% .1 75)}[data-theme=dark] .ar-timer.red{color:oklch(82% .1 25)}@keyframes ar-pulse{0%,to{opacity:1}50%{opacity:.6}}.ar-flagpill{background:var(--warning-soft);color:var(--m1-fg);font-feature-settings:"tnum";border-radius:999px;align-items:center;gap:5px;padding:3px 9px;font-family:JetBrains Mono,monospace;font-size:11.5px}.ar-flagpill,.ar-flagpill .ic{display:inline-flex}[data-theme=dark] .ar-flagpill{color:oklch(88% .1 75)}.ar-top-right{justify-self:end;gap:8px}.ar-save,.ar-top-right{align-items:center;display:inline-flex}.ar-save{color:var(--muted-fg);letter-spacing:.04em;text-transform:uppercase;gap:6px;font-family:JetBrains Mono,monospace;font-size:10.5px;font-weight:400}.ar-save .sp{color:var(--accent);animation:ne-spin .9s linear infinite;display:inline-flex}.ar-submit{background:var(--accent);height:34px;color:var(--accent-fg);font:inherit;cursor:pointer;border:0;border-radius:8px;align-items:center;gap:6px;padding:0 16px;font-size:13px;font-weight:500;display:inline-flex}.ar-submit:hover{background:oklch(from var(--accent) calc(l - .04) c h)}.ar-main{flex-direction:column;flex:1;align-items:center;gap:22px;padding:32px 28px 24px;display:flex;overflow-y:auto}.ar-card{flex-direction:column;gap:16px;width:100%;max-width:760px;display:flex}.ar-vignette{background:var(--subtle);border:1px solid var(--border);color:var(--fg);border-radius:10px;max-height:240px;padding:16px 18px;font-family:Instrument Serif,Iowan Old Style,Georgia,serif;font-size:15.5px;line-height:1.6;overflow-y:auto}.ar-vignette p{margin:0 0 10px}.ar-vignette p:last-child{margin-bottom:0}.ar-prompt{letter-spacing:-.01em;color:var(--fg);font-family:Instrument Serif,serif;font-size:24px;font-weight:400;line-height:1.35}.ar-prompt.sm{font-size:18px}.ar-options{flex-direction:column;gap:8px;display:flex}.ar-opt{border:1.5px solid var(--border);background:var(--card);color:var(--fg);font:inherit;cursor:pointer;text-align:left;border-radius:10px;align-items:flex-start;gap:12px;padding:12px 14px;font-size:14px;line-height:1.45;transition:background .12s,border-color .12s;display:flex;position:relative}.ar-opt:hover{background:var(--subtle);border-color:var(--muted-fg)}.ar-opt .letter{background:var(--muted);width:24px;height:24px;color:var(--muted-fg);border-radius:50%;flex-shrink:0;place-items:center;margin-top:1px;font-family:JetBrains Mono,monospace;font-size:12px;font-weight:600;display:grid}.ar-opt .text{flex:1}.ar-opt .dot{background:var(--accent);border-radius:50%;flex-shrink:0;width:12px;height:12px;margin-top:4px}.ar-opt.selected{border-color:var(--accent);background:var(--accent-soft)}.ar-opt.selected .letter{background:var(--accent);color:var(--accent-fg)}.ar-textarea{border:1.5px solid var(--border);background:var(--card);width:100%;min-height:140px;color:var(--fg);font:inherit;resize:vertical;border-radius:10px;padding:14px 16px;font-size:14.5px;line-height:1.55}.ar-textarea:focus{border-color:var(--accent);box-shadow:0 0 0 3px var(--ring);outline:none}.ar-qfoot{justify-content:space-between;align-items:center;gap:12px;padding-top:6px;display:flex}.ar-flagtoggle{border:1px solid var(--border);background:var(--card);height:30px;color:var(--muted-fg);font:inherit;cursor:pointer;border-radius:7px;align-items:center;gap:6px;padding:0 11px 0 9px;font-size:12px;display:inline-flex}.ar-flagtoggle:hover{background:var(--muted);color:var(--fg)}.ar-flagtoggle.on{background:var(--warning-soft);color:var(--m1-fg);border-color:#0000}.ar-flagtoggle .ic{display:inline-flex}.ar-flagtoggle .kbd{background:var(--muted);border:1px solid var(--border);border-radius:4px;margin-left:4px;padding:2px 6px;font-family:JetBrains Mono,monospace;font-size:10px}.ar-flagtoggle.on .kbd{background:oklch(from var(--warning) l c h/.18);border-color:#0000}[data-theme=dark] .ar-flagtoggle.on{color:oklch(88% .1 75)}.ar-source{color:var(--muted-fg);letter-spacing:.02em;font-family:JetBrains Mono,monospace;font-size:11px}.ar-source b{color:var(--fg);font-weight:500}.ar-hide-src .ar-source{display:none}.ar-navrow{background:var(--card);border:1px solid var(--border);width:100%;max-width:880px;box-shadow:var(--shadow-pop);border-radius:12px;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:14px;padding:12px 14px;display:grid;position:sticky;bottom:16px}.tb-btn.wide{padding:0 16px}.ar-nav-strip{scrollbar-width:thin;scrollbar-color:var(--border) transparent;align-items:center;gap:4px;padding-bottom:2px;display:flex;overflow-x:auto}.ar-nav-strip::-webkit-scrollbar{height:4px}.ar-nav-strip::-webkit-scrollbar-thumb{background:var(--border);border-radius:2px}.ar-nav-grid .ar-nav-strip{flex-wrap:wrap;justify-content:center;overflow:visible}.nav-btn{border:1.5px solid var(--border);background:var(--card);width:32px;height:32px;color:var(--muted-fg);cursor:pointer;border-radius:7px;flex-shrink:0;place-items:center;font-family:JetBrains Mono,monospace;font-size:11px;font-weight:500;display:inline-grid;position:relative}.nav-btn:hover{background:var(--muted);color:var(--fg)}.nav-btn .n{font-feature-settings:"tnum"}.nav-btn.answered{background:var(--muted-2);color:var(--fg);border-color:#0000}.nav-btn.flagged{background:var(--warning-soft);color:var(--m1-fg);border-color:#0000}[data-theme=dark] .nav-btn.flagged{color:oklch(88% .1 75)}.nav-btn.answered.flagged{background:oklch(from var(--warning) .92 .06 h);color:var(--m1-fg)}[data-theme=dark] .nav-btn.answered.flagged{background:oklch(from var(--warning) .34 .07 h)}.nav-btn.current{box-shadow:0 0 0 2px var(--accent);border-color:#0000}.nav-btn .fl{background:var(--warning);width:12px;height:12px;color:var(--card);border-radius:50%;place-items:center;display:grid;position:absolute;top:-3px;right:-3px}.nav-btn .fl svg{width:7px;height:7px}.ar-modal-back{-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);z-index:60;background:oklch(0 0 0/.45);place-items:center;padding:24px;display:grid;position:absolute;inset:0}.ar-modal{background:var(--card);border:1px solid var(--border);box-shadow:var(--shadow-pop);border-radius:14px;width:100%;max-width:460px;overflow:hidden}.ar-modal .head{padding:16px 18px 8px}.ar-modal .head .title{letter-spacing:-.01em;font-family:Instrument Serif,serif;font-size:22px;font-weight:400}.ar-modal .body{color:var(--fg);padding:8px 18px 14px;font-size:13px;line-height:1.55}.ar-modal .body .summary{background:var(--subtle);border-radius:8px;flex-direction:column;padding:10px 14px;display:flex}.ar-modal .body .summary .row{border-bottom:1px dashed var(--border);justify-content:space-between;padding:5px 0;font-size:13px;display:flex}.ar-modal .body .summary .row:last-child{border-bottom:0}.ar-modal .body .summary .row .k{color:var(--muted-fg);letter-spacing:.04em;font-family:JetBrains Mono,monospace;font-size:11px}.ar-modal .body .summary .row .v b{font-feature-settings:"tnum";font-family:JetBrains Mono,monospace;font-weight:500}.ar-modal .body .summary .row.warn .v b{color:var(--warning)}[data-theme=dark] .ar-modal .body .summary .row.warn .v b{color:oklch(88% .1 75)}.ar-modal .body .note{color:var(--m1-fg);background:var(--warning-soft);border-radius:6px;margin-top:10px;padding:6px 10px;font-size:12px}[data-theme=dark] .ar-modal .body .note{color:oklch(88% .1 75)}.ar-modal .foot{background:var(--subtle);border-top:1px solid var(--border);justify-content:flex-end;align-items:center;gap:8px;padding:12px 18px;display:flex}.ar-modal.danger .head .title{color:var(--destructive)}[data-theme=dark] .ar-modal.danger .head .title{color:oklch(82% .1 25)}.tb-btn.destructive{background:var(--destructive);color:oklch(98.5% 0 0);border-color:#0000}.tb-btn.destructive:hover{background:oklch(from var(--destructive) calc(l - .04) c h)}.tb-btn .spin{margin-right:4px;animation:ne-spin .9s linear infinite;display:inline-flex}.ar-timeup{z-index:90;background:oklch(from var(--bg) l c h/.95);-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);place-items:center;animation:aw-fade .18s;display:grid;position:absolute;inset:0}.ar-timeup .content{flex-direction:column;align-items:center;gap:14px;display:flex}.ar-timeup .spin{color:var(--destructive);animation:ne-spin .9s linear infinite;display:inline-flex}.ar-timeup .head{letter-spacing:-.015em;color:var(--fg);font-family:Instrument Serif,serif;font-size:28px;font-weight:400}.ar-root.mobile .ar-top{grid-template-columns:1fr auto;gap:6px 8px;height:auto;padding:8px 12px}.ar-root.mobile .ar-top-center{order:3;grid-column:1/-1;justify-self:center}.ar-root.mobile .ar-top-left{flex-direction:column;align-items:flex-start;gap:4px}.ar-root.mobile .ar-top-left .title{font-size:11.5px}.ar-root.mobile .ar-top-right{gap:4px}.ar-root.mobile .ar-save{display:none}.ar-root.mobile .ar-timer{font-size:22px}.ar-root.mobile .ar-main{padding:20px 14px 24px}.ar-root.mobile .ar-prompt{font-size:20px}.ar-root.mobile .ar-opt{padding:11px 12px;font-size:13.5px}.ar-root.mobile .ar-navrow{box-shadow:none;grid-template-columns:1fr;gap:8px;position:static}.ar-root.mobile .ar-navrow .tb-btn{justify-content:center;width:100%}.ar-root.mobile .ar-nav-strip{padding:4px 0}.ar-root.mobile .ar-qfoot{flex-direction:column;align-items:flex-start;gap:6px}.rs-root{width:100%;height:100%;color:var(--fg);flex-direction:column;font-family:Inter,sans-serif;display:flex;position:relative;overflow:hidden}.rs-root,.rs-top{background:var(--bg)}.rs-top{border-bottom:1px solid var(--border);flex-shrink:0;grid-template-columns:minmax(220px,1fr) auto minmax(220px,1fr);align-items:center;gap:16px;height:52px;padding:0 18px;display:grid}.rs-top-left .back{color:var(--muted-fg);align-items:center;gap:6px;font-size:12.5px;text-decoration:none;display:inline-flex}.rs-top-left .back:hover{color:var(--fg)}.rs-top-left .back b{color:var(--fg);font-weight:500}.rs-top-center .title{letter-spacing:.06em;color:var(--muted-fg);text-transform:uppercase;font-family:JetBrains Mono,monospace;font-size:11.5px;font-weight:500}.rs-top-right{justify-self:end;align-items:center;gap:8px;display:inline-flex}.rs-done{color:var(--muted-fg);padding:6px 8px;font-size:12.5px;text-decoration:none}.rs-done:hover{color:var(--fg)}.rs-main{flex-direction:column;flex:1;gap:28px;width:100%;max-width:1080px;margin:0 auto;padding:28px 28px 100px;display:flex;overflow-y:auto}.rs-hero{background:var(--card);border:1px solid var(--border);border-radius:16px;grid-template-columns:1fr 1fr;align-items:center;gap:24px;padding:32px 28px;display:grid}.rs-hero .num-block{flex-direction:column;align-items:flex-start;gap:8px;display:flex}.rs-celebrate{letter-spacing:.06em;text-transform:uppercase;color:var(--success);background:var(--success-soft);border:1px solid oklch(from var(--success) .88 .07 h);border-radius:999px;padding:3px 10px;font-size:12px;font-weight:700;display:inline-block}[data-theme=dark] .rs-celebrate{color:oklch(85% .08 150);border-color:oklch(35% .07 150)}.rs-score{letter-spacing:-.04em;color:var(--fg);font-feature-settings:"tnum";align-items:baseline;font-family:Instrument Serif,serif;font-size:124px;line-height:.95;display:inline-flex}.rs-score.green{color:var(--success)}.rs-score.amber{color:var(--warning)}.rs-score.red{color:var(--destructive)}[data-theme=dark] .rs-score.green{color:oklch(85% .08 150)}[data-theme=dark] .rs-score.amber{color:oklch(88% .1 75)}[data-theme=dark] .rs-score.red{color:oklch(82% .1 25)}.rs-score .pct{color:currentColor;opacity:.7;letter-spacing:-.02em;margin-left:6px;font-family:Inter,sans-serif;font-size:36px;font-weight:600}.rs-hero .sub{color:var(--muted-fg);font-size:14px}.rs-hero .sub b{color:var(--fg);font-feature-settings:"tnum";font-family:JetBrains Mono,monospace;font-weight:500}.rs-hero .meta{flex-direction:column;align-items:flex-end;gap:14px;display:flex}.meta-pills{flex-wrap:wrap;justify-content:flex-end;gap:10px;display:flex}.meta-pills .pill{text-align:right;background:var(--subtle);border:1px solid var(--border);border-radius:10px;min-width:100px;padding:10px 14px}.meta-pills .pill .n{color:var(--fg);font-feature-settings:"tnum";font-family:JetBrains Mono,monospace;font-size:18px;font-weight:500}.meta-pills .pill .n .u{color:var(--muted-fg);margin-left:2px;font-size:11px;font-weight:400}.meta-pills .pill .lbl{letter-spacing:.08em;text-transform:uppercase;color:var(--muted-fg);margin-top:2px;font-family:JetBrains Mono,monospace;font-size:10.5px}.rs-hero .delta{border-radius:999px;align-items:center;gap:5px;padding:3px 9px;font-family:JetBrains Mono,monospace;font-size:12px;display:inline-flex}.rs-hero .delta.up{background:var(--success-soft);color:var(--success)}.rs-hero .delta.down{background:var(--warning-soft);color:var(--m1-fg)}[data-theme=dark] .rs-hero .delta.up{color:oklch(85% .08 150)}[data-theme=dark] .rs-hero .delta.down{color:oklch(88% .1 75)}.rs-section{background:var(--card);border:1px solid var(--border);border-radius:12px;overflow:hidden}.rs-section .head{border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;padding:12px 16px;display:flex}.rs-section .head .title{font-size:13.5px;font-weight:600}.rs-section .head .hint{color:var(--muted-fg);font-size:12px}.rs-section .body{flex-direction:column;display:flex}.rs-obj{text-align:left;font:inherit;color:var(--fg);cursor:pointer;background:0 0;border:0;border-bottom:1px solid var(--border-2);grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:16px;width:100%;padding:12px 16px;display:grid}.rs-obj:last-child{border-bottom:0}.rs-obj:hover{background:var(--subtle)}.rs-obj .text{color:var(--fg);text-overflow:ellipsis;white-space:nowrap;font-size:13.5px;line-height:1.4;overflow:hidden}.rs-obj .right{flex-shrink:0;align-items:center;gap:12px;display:flex}.rs-obj .bar{background:var(--muted-2);border-radius:999px;gap:2px;width:120px;height:6px;display:flex;overflow:hidden}.rs-obj .bar .seg.right{background:var(--success)}.rs-obj .bar .seg.skip{background:var(--muted-fg);opacity:.5}.rs-obj .bar .seg.wrong{background:var(--destructive)}.rs-obj .acc{color:var(--muted-fg);font-feature-settings:"tnum";white-space:nowrap;font-size:11.5px}.rs-obj .acc,.rs-obj .weak{font-family:JetBrains Mono,monospace}.rs-obj .weak{letter-spacing:.1em;text-transform:uppercase;background:var(--warning-soft);color:var(--m1-fg);border-radius:999px;padding:2px 7px;font-size:9.5px;font-weight:500}[data-theme=dark] .rs-obj .weak{color:oklch(88% .1 75)}.rs-review-head{border-bottom:1px solid var(--border);background:var(--card);justify-content:space-between;align-items:center;gap:14px;padding:12px 16px;display:flex}.filter-tabs{background:var(--muted);border-radius:8px;gap:1px;padding:3px;display:inline-flex}.filter-tabs .tab{color:var(--muted-fg);cursor:pointer;background:0 0;border:0;border-radius:5px;padding:5px 11px;font-family:inherit;font-size:12.5px;font-weight:500}.filter-tabs .tab.on{background:var(--card);color:var(--fg);box-shadow:var(--shadow)}.filter-tabs .tab .n{color:var(--muted-fg);font-feature-settings:"tnum";margin-left:4px;font-family:JetBrains Mono,monospace;font-size:10.5px}.filter-tabs .tab.on .n{color:var(--accent)}.rs-qlist{flex-direction:column;display:flex}.rs-qpanel{border-bottom:1px solid var(--border);background:var(--card)}.rs-qpanel:last-child{border-bottom:0}.rs-qpanel .head{width:100%;font:inherit;color:var(--fg);cursor:pointer;text-align:left;background:0 0;border:0;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:14px;padding:12px 16px;display:grid}.rs-qpanel .head:hover,.rs-qpanel.open .head{background:var(--subtle)}.rs-qpanel .head .left{align-items:center;gap:8px;display:inline-flex}.rs-qpanel .qnum{color:var(--muted-fg);background:var(--muted);border-radius:4px;padding:2px 7px;font-family:JetBrains Mono,monospace;font-size:11px}.rs-qpanel .result{border-radius:50%;place-items:center;width:20px;height:20px;display:inline-grid}.rs-qpanel .result.right{background:var(--success);color:oklch(98.5% 0 0)}.rs-qpanel .result.wrong{background:var(--destructive);color:oklch(98.5% 0 0)}.rs-qpanel .result.skipped{background:var(--muted);color:var(--muted-fg)}.rs-qpanel .result.skipped .dash{font-family:JetBrains Mono,monospace;font-size:12px}.rs-qpanel .fl{color:var(--warning);display:inline-flex}[data-theme=dark] .rs-qpanel .fl{color:oklch(88% .1 75)}.rs-qpanel .prompt{color:var(--fg);text-overflow:ellipsis;white-space:nowrap;font-size:13.5px;overflow:hidden}.rs-qpanel .head .right{align-items:center;gap:10px;display:inline-flex}.rs-qpanel .time{color:var(--muted-fg);font-family:JetBrains Mono,monospace;font-size:11px}.rs-qpanel .chev{color:var(--muted-fg);transition:transform .18s;display:inline-flex}.rs-qpanel .chev.open{color:var(--fg);transform:rotate(180deg)}.rs-qpanel .body{border-top:1px dashed var(--border);background:var(--subtle);flex-direction:column;gap:12px;padding:12px 16px 16px;display:flex}.rs-qpanel .full-prompt{color:var(--fg);letter-spacing:-.01em;font-family:Instrument Serif,serif;font-size:18px;line-height:1.4}.rs-options{flex-direction:column;gap:6px;display:flex}.rs-opt{border:1.5px solid var(--border);background:var(--card);color:var(--fg);border-radius:8px;align-items:flex-start;gap:10px;padding:10px 12px;font-size:13px;line-height:1.4;display:flex}.rs-opt .letter{background:var(--muted);width:22px;height:22px;color:var(--muted-fg);border-radius:50%;flex-shrink:0;place-items:center;font-family:JetBrains Mono,monospace;font-size:11px;font-weight:600;display:grid}.rs-opt .text{flex:1}.rs-opt .mark{letter-spacing:.06em;text-transform:uppercase;flex-shrink:0;align-items:center;gap:5px;font-family:JetBrains Mono,monospace;font-size:10.5px;display:inline-flex}.rs-opt.correct{border-color:var(--success);background:var(--success-soft)}.rs-opt.correct .letter{background:var(--success);color:oklch(98.5% 0 0)}.rs-opt.correct .mark{color:var(--success)}.rs-opt.wrong{border-color:var(--destructive);background:var(--destructive-soft)}.rs-opt.wrong .letter{background:var(--destructive);color:oklch(98.5% 0 0)}.rs-opt.wrong .mark{color:var(--destructive)}[data-theme=dark] .rs-opt.correct .mark{color:oklch(85% .08 150)}[data-theme=dark] .rs-opt.wrong .mark{color:oklch(82% .1 25)}.rs-opt .mark .ic{display:inline-flex}.rs-explanation{background:var(--m2-soft);color:var(--fg);border-left:3px solid var(--info);border-radius:8px;padding:12px 14px;font-size:13px;line-height:1.55}.rs-explanation .lbl{letter-spacing:.14em;text-transform:uppercase;color:var(--m2-fg);vertical-align:2px;margin-right:8px;font-family:JetBrains Mono,monospace;font-size:9.5px;font-weight:500;display:inline-block}[data-theme=dark] .rs-explanation .lbl{color:oklch(85% .08 240)}.rs-qfoot{border-top:1px dashed var(--border);flex-wrap:wrap;align-items:center;gap:16px;padding-top:6px;font-size:12px;display:flex}.rs-nothingwrong{text-align:center;color:var(--fg);background:var(--success-soft);letter-spacing:-.01em;padding:36px 20px;font-family:Instrument Serif,serif;font-size:14px}[data-theme=dark] .rs-nothingwrong{color:oklch(85% .08 150)}.rs-bottom{background:var(--card);border-top:1px solid var(--border);z-index:5;grid-template-columns:minmax(80px,1fr) auto minmax(80px,1fr);align-items:center;gap:14px;padding:12px 22px;display:grid;position:absolute;bottom:0;left:0;right:0}.rs-bottom .done{color:var(--muted-fg);font-size:12.5px;text-decoration:none}.rs-bottom .done:hover{color:var(--fg)}.rs-bottom .summary{color:var(--muted-fg);letter-spacing:.02em;justify-self:center;font-family:JetBrains Mono,monospace;font-size:11.5px}.rs-bottom .right{justify-self:end;align-items:center;gap:8px;display:inline-flex}.rs-root.mobile .rs-top{grid-template-columns:1fr auto;gap:8px;height:auto;padding:10px 14px}.rs-root.mobile .rs-top-center{display:none}.rs-root.mobile .rs-top-right{gap:4px}.rs-root.mobile .rs-top-right .rs-done,.rs-root.mobile .rs-top-right .tb-btn{display:none}.rs-root.mobile .rs-main{padding:20px 14px}.rs-root.mobile .rs-hero{grid-template-columns:1fr;gap:18px;padding:22px 18px}.rs-root.mobile .rs-hero .meta{align-items:flex-start}.rs-root.mobile .rs-score{font-size:92px}.rs-root.mobile .rs-bottom{display:none}.rs-root.mobile .rs-review-head{flex-direction:column;align-items:flex-start;gap:8px}.rs-root.mobile .rs-obj .bar{width:80px}.rs-root.mobile .rs-obj .text{white-space:normal}.st-page{flex-direction:column;gap:8px;width:100%;max-width:720px;margin:0 auto;display:flex}.st-section{background:var(--card);border:1px solid var(--border);border-radius:var(--radius-card);box-shadow:var(--shadow);margin-bottom:22px;overflow:hidden}.st-section .head{border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;gap:12px;padding:14px 18px;display:flex}.st-section .head .title{color:var(--fg);letter-spacing:-.005em;align-items:center;gap:8px;font-size:13.5px;font-weight:600;display:flex}.st-section .head .badge-n{background:var(--muted);color:var(--muted-fg);border:1px solid var(--border-2);letter-spacing:.02em;border-radius:4px;padding:2px 7px;font-family:JetBrains Mono,monospace;font-size:11px;font-weight:600}.st-section .head .sub{color:var(--muted-fg);font-size:12px}.st-section .body{padding:18px}.st-section .foot{border-top:1px solid var(--border);background:var(--card);justify-content:flex-end;padding:12px 18px;display:flex}@supports (color:color-mix(in lab,red,red)){.st-section .foot{background:color-mix(in oklch,var(--card) 70%,var(--muted) 30%)}}.st-account{grid-template-columns:64px 1fr;align-items:flex-start;gap:20px;display:grid}.st-account .av{border-radius:50%;flex-shrink:0;place-items:center;width:64px;height:64px;font-size:20px;font-weight:600;display:grid}.st-account .fields{gap:18px;min-width:0}.st-account .fields,.st-field{flex-direction:column;display:flex}.st-field{gap:6px}.st-field .lbl{letter-spacing:.08em;text-transform:uppercase;color:var(--muted-fg);font-family:JetBrains Mono,monospace;font-size:10.5px;font-weight:600}.st-field .v{color:var(--fg);letter-spacing:-.005em;align-items:center;gap:8px;min-height:28px;font-size:14.5px;display:flex}.st-field .v.muted{color:var(--muted-fg);font-size:13.5px}.st-field .editbtn{appearance:none;width:26px;height:26px;color:var(--muted-fg);cursor:pointer;background:0 0;border:0;border-radius:5px;place-items:center;display:grid}.st-field .editbtn:hover{background:var(--muted);color:var(--fg)}.st-field .saved-flash{color:var(--success);align-items:center;gap:4px;margin-left:8px;font-size:12px;font-weight:500;display:inline-flex}.st-field .helper{color:var(--muted-fg);font-size:11.5px}.st-input{border:1px solid var(--input);border-radius:var(--radius-input);background:var(--card);width:100%;height:36px;color:var(--fg);font:inherit;outline:none;padding:0 12px;font-size:14px}.st-input:focus{border-color:var(--accent);box-shadow:0 0 0 3px var(--ring)}.st-input.code{letter-spacing:.18em;text-align:center;height:48px;font-family:JetBrains Mono,monospace;font-size:18px;font-weight:600}.st-edit-row{align-items:center;gap:8px;display:flex}.st-edit-row .st-input{flex:1}.st-edit-row .actions{gap:6px;display:flex}.st-notif{grid-template-columns:48px 1fr;align-items:flex-start;gap:16px;display:grid}.st-notif .ic-bg{background:var(--accent-soft);width:40px;height:40px;color:var(--accent-soft-fg);border-radius:10px;flex-shrink:0;place-items:center;display:grid}.st-notif .body-text{color:var(--fg);font-size:13.5px;line-height:1.5}.st-notif .body-text b{font-weight:600}.st-notif .body-text .muted{color:var(--muted-fg);margin-top:4px;font-size:12.5px;display:block}.st-notif .badges{gap:8px;margin-top:14px;display:flex}.st-notif .badge{border:1px solid var(--border);background:var(--card);height:36px;color:var(--fg);border-radius:8px;align-items:center;gap:8px;padding:0 12px;font-size:11.5px;text-decoration:none;transition:all .12s;display:inline-flex}.st-notif .badge:hover{background:var(--muted)}.st-notif .badge .ic{font-size:16px;line-height:1;display:inline-flex}.st-notif .badge .label{text-align:left;flex-direction:column;line-height:1.2;display:flex}.st-notif .badge .label small{color:var(--muted-fg);letter-spacing:.06em;text-transform:uppercase;font-size:9px}.st-notif .badge .label b{letter-spacing:-.005em;font-size:12px;font-weight:600}.st-shares{flex-direction:column;display:flex}.st-share-row{border-bottom:1px solid var(--border);grid-template-columns:auto 1fr auto;align-items:center;gap:14px;padding:12px 18px;display:grid}@supports (color:color-mix(in lab,red,red)){.st-share-row{border-bottom:1px solid color-mix(in oklch,var(--border) 60%,transparent)}}.st-share-row{position:relative}.st-share-row:last-child{border-bottom:0}.st-share-row .typebadge{flex-shrink:0}.st-share-row .main{min-width:0}.st-share-row .main .nm{color:var(--fg);letter-spacing:-.005em;text-overflow:ellipsis;white-space:nowrap;font-size:13.5px;font-weight:500;overflow:hidden}.st-share-row .main .sub{color:var(--muted-fg);align-items:center;gap:8px;margin-top:2px;font-size:12px;display:flex}.st-share-row .main .sub .dot{background:var(--muted-fg);opacity:.6;border-radius:50%;width:2px;height:2px}.st-share-row .actions{align-items:center;gap:4px;display:flex}.st-iconbtn{appearance:none;width:30px;height:30px;color:var(--muted-fg);cursor:pointer;background:0 0;border:0;border-radius:6px;place-items:center;transition:all .12s;display:grid;position:relative}.st-iconbtn:hover{background:var(--muted);color:var(--fg)}.st-iconbtn.danger:hover{color:var(--destructive);background:var(--destructive-soft)}.st-iconbtn .copied{background:var(--fg);color:var(--bg);white-space:nowrap;box-shadow:var(--shadow-pop);border-radius:5px;padding:4px 8px;font-size:10.5px;font-weight:500;position:absolute;bottom:calc(100% + 6px);left:50%;transform:translate(-50%)}.st-shares-empty{color:var(--muted-fg);text-align:center;padding:24px 18px;font-size:13px;line-height:1.55}.st-shares-empty .kbd{background:var(--muted);border:1px solid var(--border-2);color:var(--fg);border-radius:4px;padding:1px 5px;font-size:11px;display:inline-block}.st-shares-empty .kbd,.st-typebadge{font-family:JetBrains Mono,monospace}.st-typebadge{letter-spacing:.06em;text-transform:uppercase;border-radius:999px;flex-shrink:0;align-items:center;gap:5px;height:20px;padding:0 8px;font-size:10px;font-weight:600;display:inline-flex}.st-typebadge .d{background:currentColor;border-radius:50%;width:5px;height:5px}.st-typebadge.course{background:var(--accent-soft);color:var(--accent-soft-fg)}.st-typebadge.lecture{background:var(--info-soft);color:var(--info)}.st-typebadge.assessment{color:oklch(42% .13 305);background:oklch(95% .04 305)}[data-theme=dark] .st-typebadge.assessment{color:oklch(88% .1 305);background:oklch(30% .06 305)}.st-data-list{flex-direction:column;display:flex}.st-data-row{border-bottom:1px solid var(--border);grid-template-columns:44px 1fr auto auto;align-items:center;gap:14px;padding:14px 18px;display:grid}@supports (color:color-mix(in lab,red,red)){.st-data-row{border-bottom:1px solid color-mix(in oklch,var(--border) 60%,transparent)}}.st-data-row{cursor:pointer;text-align:left;background:0 0;border-top:0;border-left:0;border-right:0;width:100%;transition:background .12s}.st-data-row:last-child{border-bottom:0}.st-data-row .ic-bg,.st-data-row:hover{background:var(--muted)}.st-data-row .ic-bg{width:36px;height:36px;color:var(--muted-fg);border-radius:9px;place-items:center;display:grid}.st-data-row.danger .ic-bg{background:var(--destructive-soft);color:var(--destructive)}[data-theme=dark] .st-data-row.danger .ic-bg{color:oklch(85% .12 25)}.st-data-row .main{min-width:0}.st-data-row .main .nm{color:var(--fg);letter-spacing:-.005em;font-size:13.5px;font-weight:500}.st-data-row .main .sub{color:var(--muted-fg);margin-top:2px;font-size:12px;line-height:1.4}.st-data-row .right-lbl{color:var(--destructive);font-size:11.5px;font-weight:500}[data-theme=dark] .st-data-row .right-lbl{color:oklch(85% .12 25)}.st-data-row .chev{color:var(--muted-fg);display:inline-flex}.st-ai-callout{background:var(--warning-soft);border:1px solid var(--warning)}@supports (color:color-mix(in lab,red,red)){.st-ai-callout{border:1px solid color-mix(in oklch,var(--warning) 50%,transparent)}}.st-ai-callout{border-radius:var(--radius-card);grid-template-columns:36px 1fr;align-items:flex-start;gap:14px;margin-bottom:22px;padding:18px 20px;display:grid}.st-ai-callout .ic-bg{background:var(--warning);color:oklch(18% .05 75);border-radius:9px;flex-shrink:0;place-items:center;width:36px;height:36px;display:grid}[data-theme=dark] .st-ai-callout .ic-bg{color:oklch(18% .05 75);background:oklch(65% .13 75)}.st-ai-callout h3{color:var(--fg);letter-spacing:-.005em;margin:0 0 6px;font-size:14px;font-weight:600}.st-ai-callout p{color:var(--fg);margin:0 0 12px;font-size:13px;line-height:1.55}.st-ai-callout a{color:var(--fg);align-items:center;gap:4px;font-size:12.5px;font-weight:500;text-decoration:none;display:inline-flex}.st-ai-callout a:hover{color:var(--accent)}.st-about-row{border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;padding:10px 18px;display:flex}@supports (color:color-mix(in lab,red,red)){.st-about-row{border-bottom:1px solid color-mix(in oklch,var(--border) 60%,transparent)}}.st-about-row{color:var(--fg);font-size:13px;text-decoration:none}.st-about-row:last-child{border-bottom:0}.st-about-row:hover{background:var(--muted)}.st-about-row .nm{font-weight:500}.st-about-row .v{color:var(--muted-fg);align-items:center;gap:8px;font-size:12.5px;display:flex}.st-about-row .chev{display:inline-flex}.st-version{background:var(--muted);border:1px solid var(--border-2);letter-spacing:.02em;border-radius:999px;align-items:center;gap:6px;padding:4px 9px;font-family:JetBrains Mono,monospace;display:inline-flex}.st-foot-line,.st-version{color:var(--muted-fg);font-size:11.5px}.st-foot-line{text-align:center;letter-spacing:.005em;padding:16px 0 32px;font-family:Instrument Serif,serif;font-style:italic}.st-btn{appearance:none;height:32px;font:inherit;cursor:pointer;letter-spacing:-.005em;white-space:nowrap;border:0;border-radius:8px;justify-content:center;align-items:center;gap:7px;padding:0 14px;font-size:13px;font-weight:500;transition:all .12s;display:inline-flex}.st-btn.primary{background:var(--accent);color:var(--accent-fg)}.st-btn.primary:hover{background:oklch(from var(--accent) calc(l - .04) c h)}.st-btn.ghost{border:1px solid var(--border);color:var(--fg);background:0 0}.st-btn.ghost:hover{background:var(--muted)}.st-btn.destructive{background:var(--destructive);color:oklch(99% 0 0)}.st-btn.destructive:hover{background:oklch(from var(--destructive) calc(l - .04) c h)}.st-btn.destructive-ghost{color:var(--destructive);border:1px solid var(--destructive);background:0 0}@supports (color:color-mix(in lab,red,red)){.st-btn.destructive-ghost{border:1px solid color-mix(in oklch,var(--destructive) 40%,transparent)}}.st-btn.destructive-ghost:hover{background:var(--destructive-soft)}.st-btn:disabled{opacity:.4;cursor:not-allowed}.st-btn.lg{border-radius:9px;height:40px;padding:0 18px;font-size:14px}.ex-card{background:var(--card);border:1px solid var(--border);border-radius:var(--radius-card);max-width:640px;box-shadow:var(--shadow);margin:0 auto;overflow:hidden}.ex-card .body{padding:26px 28px}.ex-card .seclabel{letter-spacing:.1em;text-transform:uppercase;color:var(--muted-fg);margin-bottom:10px;font-family:JetBrains Mono,monospace;font-size:10.5px;font-weight:600}.ex-section{margin-bottom:22px}.ex-section:last-of-type{margin-bottom:0}.ex-list{flex-direction:column;gap:8px;margin:0;padding:0;list-style:none;display:flex}.ex-list li{color:var(--fg);align-items:flex-start;gap:10px;font-size:13px;line-height:1.5;display:flex}.ex-list li .mk{border-radius:50%;flex-shrink:0;place-items:center;width:16px;height:16px;margin-top:2px;display:grid}.ex-list li.yes .mk{background:var(--success);color:oklch(99% 0 0)}.ex-list li.no,.ex-list li.no .mk{color:var(--muted-fg)}.ex-format{background:var(--muted);border:1px solid var(--border);color:var(--fg);border-radius:9px;padding:12px 14px;font-size:13px}.ex-format .size{color:var(--muted-fg);margin-top:4px;font-family:JetBrains Mono,monospace;font-size:12px;display:block}.ex-action{border-top:1px solid var(--border);background:var(--card);justify-content:space-between;align-items:center;padding:16px 28px;display:flex}@supports (color:color-mix(in lab,red,red)){.ex-action{background:color-mix(in oklch,var(--card) 70%,var(--muted) 30%)}}.ex-action .left-note{color:var(--muted-fg);max-width:320px;font-size:11.5px;line-height:1.45}.ex-success{background:var(--success-soft);border:1px solid var(--success);border-radius:10px;margin:16px 28px 20px;padding:14px 16px}@supports (color:color-mix(in lab,red,red)){.ex-success{border:1px solid color-mix(in oklch,var(--success) 40%,transparent)}}.ex-success{grid-template-columns:32px 1fr;align-items:center;gap:12px;display:grid}.ex-success .ic-bg{background:var(--success);color:oklch(99% 0 0);border-radius:8px;place-items:center;width:32px;height:32px;display:grid}.ex-success .body-text{color:var(--fg);font-size:13px;line-height:1.5}.ex-success .body-text b{font-weight:600}.ex-success .body-text .muted{color:var(--muted-fg);margin-top:2px;font-size:12px;display:block}.dl-page{width:100%;max-width:560px;margin:0 auto}.dl-card{background:var(--card);border:1px solid var(--border);border-radius:var(--radius-card);box-shadow:var(--shadow);overflow:hidden}.dl-card .body{padding:28px 30px}.dl-card h2{letter-spacing:-.015em;margin:0 0 8px;font-family:Instrument Serif,serif;font-size:26px;font-weight:400;line-height:1.15}.dl-card p.lead{color:var(--muted-fg);margin:0 0 22px;font-size:13.5px;line-height:1.55}.dl-card p.lead b{color:var(--fg);font-weight:600}.dl-stepper{align-items:center;gap:6px;padding:18px 30px 0;display:flex}.dl-stepper .dot{background:var(--muted-2);border-radius:50%;width:10px;height:10px;position:relative}.dl-stepper .dot.cur,.dl-stepper .dot.done{background:var(--accent)}.dl-stepper .dot.cur{box-shadow:0 0 0 4px var(--ring)}.dl-stepper .line{background:var(--muted-2);flex:1;max-width:28px;height:2px}.dl-stepper .line.done{background:var(--accent)}.dl-stepper .label{letter-spacing:.06em;text-transform:uppercase;color:var(--muted-fg);margin-left:auto;font-family:JetBrains Mono,monospace;font-size:10.5px;font-weight:600}.dl-callout{background:var(--destructive-soft);border:1px solid var(--destructive)}@supports (color:color-mix(in lab,red,red)){.dl-callout{border:1px solid color-mix(in oklch,var(--destructive) 40%,transparent)}}.dl-callout{border-radius:10px;margin-bottom:18px;padding:16px 18px}.dl-callout .h{letter-spacing:.08em;text-transform:uppercase;color:var(--destructive);align-items:center;gap:8px;margin-bottom:10px;font-family:JetBrains Mono,monospace;font-size:11px;font-weight:600;display:flex}[data-theme=dark] .dl-callout .h{color:oklch(85% .12 25)}.dl-callout ul{flex-direction:column;gap:7px;margin:0;padding:0;list-style:none;display:flex}.dl-callout ul li{color:var(--fg);align-items:flex-start;gap:9px;font-size:13px;line-height:1.45;display:flex}.dl-callout ul li .mk{width:14px;height:14px;color:var(--destructive);flex-shrink:0;margin-top:3px}[data-theme=dark] .dl-callout ul li .mk{color:oklch(85% .12 25)}.dl-context-line{margin-bottom:18px;line-height:1.55}.dl-context-line,.dl-export-link{color:var(--muted-fg);font-size:12.5px}.dl-export-link{border:1px dashed var(--border);background:var(--muted);border-radius:9px;align-items:center;gap:10px;margin-bottom:4px;padding:12px 14px;display:flex}.dl-export-link a{color:var(--accent);margin-left:auto;font-weight:500;text-decoration:none}.dl-foot{border-top:1px solid var(--border);background:var(--card);justify-content:space-between;align-items:center;padding:14px 30px;display:flex}@supports (color:color-mix(in lab,red,red)){.dl-foot{background:color-mix(in oklch,var(--card) 70%,var(--muted) 30%)}}.dl-foot{gap:12px}.dl-otp{justify-content:center;gap:8px;margin:14px 0 18px;display:flex}.dl-otp-slot{border:1px solid var(--input);background:var(--card);width:48px;height:56px;color:var(--fg);letter-spacing:0;border-radius:9px;place-items:center;font-family:JetBrains Mono,monospace;font-size:22px;font-weight:600;display:grid}.dl-otp-slot.cur{border-color:var(--accent);box-shadow:0 0 0 3px var(--ring);position:relative}.dl-otp-slot.cur:after{content:"";background:var(--accent);width:2px;height:22px;animation:dl-caret 1s steps(2) infinite;position:absolute;bottom:10px;left:50%;transform:translate(-50%)}@keyframes dl-caret{to{opacity:0}}.dl-resend{text-align:center;color:var(--muted-fg);margin-bottom:8px;font-size:12.5px}.dl-resend a{color:var(--accent);text-decoration:none}.dl-type-summary{background:var(--muted);border:1px solid var(--border);color:var(--muted-fg);border-radius:9px;margin-bottom:14px;padding:12px 14px;font-family:JetBrains Mono,monospace;font-size:12.5px;line-height:1.6}.dl-confirm-input,.dl-type-summary b{color:var(--fg);font-weight:600}.dl-confirm-input{border:1.5px solid var(--input);background:var(--card);width:100%;height:56px;letter-spacing:.15em;text-align:center;text-transform:uppercase;border-radius:12px;outline:none;padding:0 18px;font-family:JetBrains Mono,monospace;font-size:22px}.dl-confirm-input::placeholder{color:var(--muted-fg);opacity:.4;letter-spacing:.15em}.dl-confirm-input.matched{border-color:var(--destructive);color:var(--destructive);background:var(--destructive-soft)}[data-theme=dark] .dl-confirm-input.matched{color:oklch(92% .12 25)}.dl-deleting{text-align:center;flex-direction:column;align-items:center;gap:14px;padding:64px 30px;display:flex}.dl-deleting .sh-spin.lg{color:var(--destructive)}.dl-deleting h3{letter-spacing:-.01em;margin:0;font-family:Instrument Serif,serif;font-size:22px;font-weight:400}.dl-deleting p{color:var(--muted-fg);margin:0;font-size:13px;line-height:1.5}.sh-root{width:100%;height:100%;color:var(--fg);flex-direction:column;font-family:Inter,system-ui,sans-serif;overflow:hidden auto}.sh-header,.sh-root{background:var(--bg);display:flex}.sh-header{z-index:30;justify-content:space-between;align-items:center;height:56px;padding:0 28px;position:sticky;top:0}@supports (color:color-mix(in lab,red,red)){.sh-header{background:color-mix(in oklch,var(--bg) 86%,transparent)}}.sh-header{-webkit-backdrop-filter:blur(14px)saturate(160%);backdrop-filter:blur(14px)saturate(160%);border-bottom:1px solid var(--border)}@supports (color:color-mix(in lab,red,red)){.sh-header{border-bottom:1px solid color-mix(in oklch,var(--border) 70%,transparent)}}.sh-header{flex-shrink:0}.sh-header .brand{color:var(--fg);letter-spacing:-.005em;align-items:center;gap:10px;font-size:14px;font-weight:600;text-decoration:none;display:inline-flex}.sh-header .brand .mono{background:var(--fg);width:28px;height:28px;color:var(--bg);border-radius:8px;place-items:center;padding-bottom:2px;font-family:Instrument Serif,serif;font-size:19px;font-style:italic;line-height:1;display:grid;position:relative}.sh-header .brand .mono:after{content:"";background:var(--accent);border-radius:50%;width:4px;height:4px;position:absolute;bottom:4px;right:4px}.sh-header .brand .word{letter-spacing:-.01em;font-family:Instrument Serif,serif;font-size:20px;font-weight:400}.sh-header .right{align-items:center;gap:12px;display:flex}.sh-header .signin-link{color:var(--muted-fg);font-size:13px;font-weight:500;text-decoration:none}.sh-header .signin-link:hover{color:var(--fg)}.sh-btn{appearance:none;height:36px;font:inherit;cursor:pointer;letter-spacing:-.005em;white-space:nowrap;border:0;border-radius:9px;justify-content:center;align-items:center;gap:7px;padding:0 16px;font-size:13.5px;font-weight:500;transition:background .12s,border-color .12s,transform 50ms;display:inline-flex}.sh-btn.primary{background:var(--fg);color:var(--bg);box-shadow:inset 0 1px oklch(100% 0 0/.06),0 1px 2px oklch(0 0 0/.06)}.sh-btn.primary:hover{background:oklch(from var(--fg) calc(l - .05) c h)}.sh-btn.primary:active{transform:translateY(.5px)}.sh-btn.primary.lg{border-radius:10px;height:44px;padding:0 22px;font-size:14px}.sh-btn.ghost{color:var(--fg);border:1px solid var(--border);background:0 0}.sh-btn.ghost:hover{background:var(--muted)}.sh-btn.destructive{background:var(--destructive);color:oklch(99% 0 0)}.sh-btn.destructive:hover{background:oklch(from var(--destructive) calc(l - .04) c h)}.sh-btn:disabled{opacity:.45;cursor:not-allowed}.sh-btn .kbd{background:oklch(from currentColor l c h/.18);border-radius:4px;place-items:center;min-width:16px;height:16px;margin-left:4px;padding:0 4px;font-size:10px;font-weight:500;display:inline-grid}.sh-btn .kbd,.sh-typebadge{font-family:JetBrains Mono,monospace}.sh-typebadge{letter-spacing:.06em;text-transform:uppercase;border-radius:999px;align-items:center;gap:6px;height:22px;padding:0 10px;font-size:10.5px;font-weight:600;display:inline-flex}.sh-typebadge .d{background:currentColor;border-radius:50%;width:5px;height:5px}.sh-typebadge.course{background:var(--accent-soft);color:var(--accent-soft-fg)}.sh-typebadge.lecture{background:var(--info-soft);color:var(--info)}.sh-typebadge.assessment{color:oklch(42% .13 305);background:oklch(95% .04 305)}[data-theme=dark] .sh-typebadge.assessment{color:oklch(88% .1 305);background:oklch(30% .06 305)}.sh-kind{background:var(--muted);border:1px solid var(--border);letter-spacing:.01em;height:20px;color:var(--fg);border-radius:5px;align-items:center;padding:0 8px;font-size:11px;font-weight:500;display:inline-flex}.sh-kind.quick{color:var(--info);background:var(--info-soft);border-color:var(--info)}@supports (color:color-mix(in lab,red,red)){.sh-kind.quick{border-color:color-mix(in oklch,var(--info) 30%,transparent)}}.sh-kind.practice{color:var(--success);background:var(--success-soft);border-color:var(--success)}@supports (color:color-mix(in lab,red,red)){.sh-kind.practice{border-color:color-mix(in oklch,var(--success) 30%,transparent)}}.sh-kind.midterm{color:oklch(50% .13 60);background:var(--warning-soft);border-color:var(--warning)}@supports (color:color-mix(in lab,red,red)){.sh-kind.midterm{border-color:color-mix(in oklch,var(--warning) 40%,transparent)}}.sh-kind.final{color:var(--destructive);background:var(--destructive-soft);border-color:var(--destructive)}@supports (color:color-mix(in lab,red,red)){.sh-kind.final{border-color:color-mix(in oklch,var(--destructive) 30%,transparent)}}.sh-kind.pdf{color:var(--destructive);background:var(--destructive-soft);border-color:var(--destructive)}@supports (color:color-mix(in lab,red,red)){.sh-kind.pdf{border-color:color-mix(in oklch,var(--destructive) 30%,transparent)}}.sh-kind.audio{color:var(--info);background:var(--info-soft);border-color:var(--info)}@supports (color:color-mix(in lab,red,red)){.sh-kind.audio{border-color:color-mix(in oklch,var(--info) 30%,transparent)}}.sh-kind.text{color:var(--muted-fg);background:var(--muted);border-color:var(--border)}.sh-main{flex:1 0 auto;width:100%;max-width:900px;margin:0 auto;padding:40px 32px 80px}.sh-hero{margin-bottom:32px}.sh-hero .course-strip{border-radius:4px;width:96px;height:12px;margin-bottom:18px}.sh-hero .badge-row{align-items:center;gap:8px;margin-bottom:14px;display:inline-flex}.sh-hero h1{letter-spacing:-.025em;color:var(--fg);text-wrap:balance;margin:0 0 14px;font-family:Instrument Serif,serif;font-size:48px;font-weight:400;line-height:1.05}.sh-hero .sub-row{color:var(--muted-fg);flex-wrap:wrap;align-items:center;gap:6px 10px;font-size:13px;display:flex}.sh-hero .sub-row .by{color:var(--fg);font-weight:500}.sh-hero .sub-row .dot{background:var(--muted-fg);opacity:.6;border-radius:50%;width:3px;height:3px;display:inline-block}.sh-cta{background:var(--card);border:1px solid var(--border);border-radius:var(--radius-card);box-shadow:var(--shadow);grid-template-columns:1fr auto;align-items:center;gap:24px;margin-bottom:36px;padding:18px 22px;display:grid}.sh-cta .left{align-items:center;gap:16px;min-width:0;display:flex}.sh-cta .left .info{flex-direction:column;gap:2px;min-width:0;display:flex}.sh-cta .left .info .muted{color:var(--muted-fg);font-size:12.5px;line-height:1.5}.sh-cta .reassure{color:var(--muted-fg);text-align:right;max-width:210px;font-size:12.5px;line-height:1.45}.sh-cta.loading{border-style:dashed;position:relative}.sh-cta.loading .skel-bar{border-radius:6px;height:18px}.sh-cta.loading .skel-row{justify-content:space-between;align-items:center;gap:24px;width:100%;display:flex}.sh-skel{background:linear-gradient(90deg,var(--muted) 0,var(--muted-2) 40%,var(--muted) 80%);background-size:200% 100%;border-radius:6px;animation:sh-shimmer 1.5s linear infinite}@keyframes sh-shimmer{to{background-position:-200% 0}}.sh-cta-sticky{z-index:40;background:var(--card);justify-content:space-between;align-items:center;gap:24px;padding:12px 28px;display:flex;position:fixed;bottom:0;left:0;right:0}@supports (color:color-mix(in lab,red,red)){.sh-cta-sticky{background:color-mix(in oklch,var(--card) 94%,transparent)}}.sh-cta-sticky{-webkit-backdrop-filter:blur(16px)saturate(160%);backdrop-filter:blur(16px)saturate(160%);border-top:1px solid var(--border);box-shadow:0 -10px 30px -16px oklch(0 0 0/.18)}.sh-cta-sticky .left{align-items:center;gap:14px;min-width:0;display:flex}.sh-cta-sticky .label .t{color:var(--fg);text-overflow:ellipsis;white-space:nowrap;max-width:480px;font-size:13px;font-weight:600;overflow:hidden}.sh-cta-sticky .label .s{color:var(--muted-fg);font-size:12px}.sh-section{background:var(--card);border:1px solid var(--border);border-radius:var(--radius-card);box-shadow:var(--shadow);margin-bottom:16px;overflow:hidden}.sh-section>.head{border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;padding:14px 18px;display:flex}.sh-section>.head .title{color:var(--fg);letter-spacing:-.005em;align-items:center;gap:8px;font-size:13px;font-weight:600;display:flex}.sh-section>.head .count{background:var(--muted);border:1px solid var(--border-2);min-width:22px;height:18px;color:var(--muted-fg);letter-spacing:.02em;border-radius:5px;place-items:center;padding:0 6px;font-family:JetBrains Mono,monospace;font-size:10.5px;font-weight:600;display:inline-grid}.sh-row{border-bottom:1px solid var(--border);grid-template-columns:36px 1fr auto;align-items:center;gap:14px;padding:12px 18px;display:grid}@supports (color:color-mix(in lab,red,red)){.sh-row{border-bottom:1px solid color-mix(in oklch,var(--border) 60%,transparent)}}.sh-row{cursor:not-allowed;position:relative}.sh-row:last-child{border-bottom:0}.sh-row .num{color:var(--muted-fg);letter-spacing:.02em;font-family:JetBrains Mono,monospace;font-size:11.5px;font-weight:500}.sh-row .main{min-width:0}.sh-row .main .nm{color:var(--fg);letter-spacing:-.005em;text-overflow:ellipsis;white-space:nowrap;font-size:13.5px;font-weight:500;overflow:hidden}.sh-row .main .sub{color:var(--muted-fg);align-items:center;gap:8px;margin-top:2px;font-size:12px;display:flex}.sh-row .main .sub .sep{background:var(--muted-fg);opacity:.6;border-radius:50%;width:2px;height:2px}.sh-row .right{color:var(--muted-fg);font-variant-numeric:tabular-nums;align-items:center;gap:10px;font-size:12px;display:flex}.sh-row .right .badge-n{color:var(--muted-fg);font-family:JetBrains Mono,monospace;font-size:11px}.sh-row .tip{z-index:5;background:var(--fg);color:var(--bg);white-space:nowrap;opacity:0;pointer-events:none;box-shadow:var(--shadow-pop);border-radius:6px;padding:6px 10px;font-size:11.5px;transition:all .14s;position:absolute;bottom:calc(100% - 6px);right:16px;transform:translateY(4px)}.sh-row:hover .tip{opacity:1;transform:translateY(0)}.sh-stat-strip{border-bottom:1px solid var(--border);background:var(--muted);gap:28px;padding:14px 18px;display:flex}@supports (color:color-mix(in lab,red,red)){.sh-stat-strip{background:color-mix(in oklch,var(--muted) 50%,var(--card))}}.sh-stat-strip .stat{flex-direction:column;gap:1px;font-family:JetBrains Mono,monospace;display:flex}.sh-stat-strip .stat .n{color:var(--fg);letter-spacing:-.02em;font-size:21px;font-weight:500}.sh-stat-strip .stat .l{color:var(--muted-fg);text-transform:uppercase;letter-spacing:.06em;font-size:10.5px;font-weight:500}.sh-whatget{border-top:1px solid var(--border);background:var(--accent-soft);padding:18px 22px}@supports (color:color-mix(in lab,red,red)){.sh-whatget{background:color-mix(in oklch,var(--accent-soft) 55%,var(--card))}}.sh-whatget .h{letter-spacing:.08em;text-transform:uppercase;color:var(--accent-soft-fg);margin-bottom:12px;font-family:JetBrains Mono,monospace;font-size:10.5px;font-weight:600}.sh-whatget ul{flex-direction:column;gap:8px;margin:0;padding:0;list-style:none;display:flex}.sh-whatget li{color:var(--fg);align-items:center;gap:10px;font-size:13px;display:flex}.sh-whatget li .mk{border-radius:50%;flex-shrink:0;place-items:center;width:16px;height:16px;display:grid}.sh-whatget li.yes .mk{background:var(--success);color:oklch(99% 0 0)}.sh-whatget li.no,.sh-whatget li.no .mk{color:var(--muted-fg)}.sh-whatget li b{color:var(--fg);font-weight:600}.sh-lec-preamble{background:var(--accent-soft);color:var(--accent-soft-fg);border-radius:10px;align-items:flex-start;gap:10px;margin-bottom:18px;padding:12px 16px;font-size:12.5px;line-height:1.5;display:flex}.sh-lec-preamble .ic{flex-shrink:0;margin-top:1px}.sh-lec-controls{background:var(--card);border:1px solid var(--border);border-radius:var(--radius-card);box-shadow:var(--shadow);justify-content:space-between;align-items:center;gap:16px;margin-bottom:12px;padding:14px 18px;display:flex}.sh-lec-controls .stats{gap:18px;display:flex}.sh-lec-controls .stats .s{align-items:baseline;gap:5px;font-size:12.5px;display:flex}.sh-lec-controls .stats .s .n{color:var(--fg);font-variant-numeric:tabular-nums;font-weight:600}.sh-lec-controls .stats .s .l{color:var(--muted-fg)}.sh-toggle{color:var(--fg);cursor:pointer;-webkit-user-select:none;user-select:none;align-items:center;gap:9px;font-size:12.5px;font-weight:500;display:inline-flex}.sh-toggle .sw{background:var(--input);border-radius:999px;flex-shrink:0;width:32px;height:18px;transition:background .14s;position:relative}.sh-toggle .sw:after{content:"";background:var(--card);border-radius:50%;width:14px;height:14px;transition:transform .14s;position:absolute;top:2px;left:2px;box-shadow:0 1px 2px oklch(0 0 0/.2)}.sh-toggle.on .sw{background:var(--accent)}.sh-toggle.on .sw:after{transform:translate(14px)}.sh-obj{background:var(--card);border:1px solid var(--border);border-radius:var(--radius-card);box-shadow:var(--shadow);margin-bottom:10px;overflow:hidden}.sh-obj .head{text-align:left;cursor:pointer;width:100%;color:var(--fg);background:0 0;border:0;grid-template-columns:28px 1fr auto;align-items:center;gap:14px;padding:13px 18px;display:grid}.sh-obj .head:hover{background:var(--muted)}.sh-obj .head .num{color:var(--muted-fg);letter-spacing:.02em;font-family:JetBrains Mono,monospace;font-size:11.5px}.sh-obj .head .nm{letter-spacing:-.005em;font-size:14px;font-weight:500}.sh-obj .head .right{color:var(--muted-fg);align-items:center;gap:10px;font-size:12px;display:flex}.sh-obj .head .chev{color:var(--muted-fg);transition:all .16s;display:inline-flex}.sh-obj.open .head .chev{transform:rotate(180deg)}.sh-obj.open .head{border-bottom:1px solid var(--border)}.sh-obj.open .head:hover{background:0 0}.sh-obj .body{flex-direction:column;gap:12px;padding:14px 18px 16px;display:flex}.sh-pcard{border:1px solid var(--border);background:var(--muted);border-radius:10px;overflow:hidden}.sh-pcard .pc-head{border-bottom:1px solid var(--border);background:var(--card);align-items:center;gap:8px;padding:9px 14px;display:flex}.sh-pcard .pc-head .kind{text-transform:uppercase;letter-spacing:.08em;font-family:JetBrains Mono,monospace;font-size:10px;font-weight:600}.sh-pcard .pc-head .kind.mcq{color:var(--info)}.sh-pcard .pc-head .kind.cloze{color:oklch(50% .13 305)}.sh-pcard .pc-head .kind.short{color:var(--success)}.sh-pcard .pc-head .kind.vig{color:oklch(50% .13 25)}[data-theme=dark] .sh-pcard .pc-head .kind.cloze{color:oklch(78% .13 305)}[data-theme=dark] .sh-pcard .pc-head .kind.vig{color:oklch(78% .13 25)}.sh-pcard .pc-body{padding:12px 14px 14px}.sh-pcard .prompt{color:var(--fg);letter-spacing:-.005em;font-size:13.5px;line-height:1.5}.sh-pcard .ans{background:var(--success-soft);border:1px dashed var(--success);margin-top:12px;padding:10px 12px}@supports (color:color-mix(in lab,red,red)){.sh-pcard .ans{border:1px dashed color-mix(in oklch,var(--success) 50%,transparent)}}.sh-pcard .ans{color:var(--fg);border-radius:8px;align-items:flex-start;gap:8px;font-size:12.5px;display:flex}.sh-pcard .ans .lbl{letter-spacing:.08em;text-transform:uppercase;color:var(--success);flex-shrink:0;padding-top:1px;font-family:JetBrains Mono,monospace;font-size:9.5px;font-weight:600}[data-theme=dark] .sh-pcard .ans .lbl{color:oklch(80% .1 150)}.sh-pcard .choices{flex-direction:column;gap:6px;margin:10px 0 0;padding:0;list-style:none;display:flex}.sh-pcard .choices li{border:1px solid var(--border);color:var(--fg);background:var(--card);border-radius:7px;grid-template-columns:20px 1fr;align-items:center;gap:10px;padding:7px 10px;font-size:12.5px;display:grid}.sh-pcard .choices li .ltr{background:var(--muted-2);width:20px;height:20px;color:var(--muted-fg);border-radius:50%;place-items:center;font-family:JetBrains Mono,monospace;font-size:10.5px;font-weight:500;display:grid}.sh-pcard .choices li.correct{background:var(--success-soft);border-color:var(--success)}@supports (color:color-mix(in lab,red,red)){.sh-pcard .choices li.correct{border-color:color-mix(in oklch,var(--success) 40%,transparent)}}.sh-pcard .choices li.correct .ltr{background:var(--success);color:oklch(99% 0 0)}.sh-pcard .cloze-blank{color:oklch(45% .14 305);background:oklch(94% .04 305);border-radius:4px;padding:0 6px;font-weight:500;display:inline-block}[data-theme=dark] .sh-pcard .cloze-blank{color:oklch(88% .1 305);background:oklch(30% .07 305)}.sh-pcard .cloze-hidden{vertical-align:-3px;border-bottom:2px solid var(--muted-fg);min-width:80px;height:1.1em;margin:0 4px;display:inline-block}.sh-asm-meta{background:var(--card);border:1px solid var(--border);border-radius:var(--radius-card);box-shadow:var(--shadow);flex-wrap:wrap;gap:28px;margin-bottom:14px;padding:16px 18px;display:flex}.sh-asm-meta .m{flex-direction:column;gap:2px;display:flex}.sh-asm-meta .m .l{letter-spacing:.08em;text-transform:uppercase;color:var(--muted-fg);font-family:JetBrains Mono,monospace;font-size:10px;font-weight:500}.sh-asm-meta .m .v{color:var(--fg);font-size:13px;font-weight:500}.sh-asm-meta .m .v.scope{color:var(--muted-fg);font-size:12.5px;font-weight:400}.sh-q{background:var(--card);border:1px solid var(--border);border-radius:var(--radius-card);box-shadow:var(--shadow);margin-bottom:10px;padding:20px 22px}.sh-q .qhead{align-items:center;gap:10px;margin-bottom:12px;display:flex}.sh-q .qhead .num{background:var(--muted);min-width:22px;height:22px;color:var(--fg);letter-spacing:.02em;border-radius:6px;place-items:center;padding:0 6px;font-size:11px;display:inline-grid}.sh-q .qhead .ltype,.sh-q .qhead .num{font-family:JetBrains Mono,monospace;font-weight:600}.sh-q .qhead .ltype{text-transform:uppercase;letter-spacing:.08em;color:var(--muted-fg);font-size:10px}.sh-q .prompt{letter-spacing:-.01em;font-size:15.5px;font-weight:500;line-height:1.45}.sh-q .prompt,.sh-q .vignette{color:var(--fg);margin-bottom:14px}.sh-q .vignette{background:var(--muted);border-left:3px solid var(--accent);white-space:pre-line;border-radius:6px;padding:12px 14px;font-size:13px;line-height:1.55}.sh-q .opts{flex-direction:column;gap:8px;display:flex}.sh-q .opts .opt{border:1px solid var(--border);background:var(--card);color:var(--fg);cursor:not-allowed;border-radius:9px;grid-template-columns:26px 1fr auto;align-items:center;gap:12px;padding:11px 14px;font-size:13.5px;display:grid}.sh-q .opts .opt .ltr{background:var(--muted);border:1px solid var(--border);width:26px;height:26px;color:var(--muted-fg);border-radius:7px;place-items:center;font-family:JetBrains Mono,monospace;font-size:11.5px;font-weight:600;display:grid}.sh-q .opts .opt.correct{background:var(--success-soft);border-color:var(--success)}@supports (color:color-mix(in lab,red,red)){.sh-q .opts .opt.correct{border-color:color-mix(in oklch,var(--success) 40%,transparent)}}.sh-q .opts .opt.correct{color:var(--fg)}.sh-q .opts .opt.correct .ltr{background:var(--success);border-color:var(--success);color:oklch(99% 0 0)}.sh-q .opts .opt .check{color:var(--success);display:inline-flex}.sh-q .clozetext{color:var(--fg);font-size:14px;line-height:1.6}.sh-q .ans-revealed{background:var(--success-soft);border:1px dashed var(--success);margin-top:14px;padding:12px 14px}@supports (color:color-mix(in lab,red,red)){.sh-q .ans-revealed{border:1px dashed color-mix(in oklch,var(--success) 50%,transparent)}}.sh-q .ans-revealed{color:var(--fg);border-radius:8px;font-size:13px}.sh-q .ans-revealed .lbl{letter-spacing:.08em;text-transform:uppercase;color:var(--success);margin-bottom:4px;font-family:JetBrains Mono,monospace;font-size:10px;font-weight:600;display:block}[data-theme=dark] .sh-q .ans-revealed .lbl{color:oklch(80% .1 150)}.sh-q textarea.shortans{background:var(--muted);border:1px solid var(--border);width:100%;min-height:80px;font:inherit;color:var(--muted-fg);resize:none;border-radius:9px;padding:10px 12px;font-size:13.5px}.sh-q .q-source{border-top:1px solid var(--border);margin-top:14px}@supports (color:color-mix(in lab,red,red)){.sh-q .q-source{border-top:1px solid color-mix(in oklch,var(--border) 60%,transparent)}}.sh-q .q-source{padding-top:10px}.sh-q .q-source summary{cursor:pointer;color:var(--muted-fg);align-items:center;gap:6px;font-size:12px;list-style:none;display:inline-flex}.sh-q .q-source summary::-webkit-details-marker{display:none}.sh-q .q-source[open] summary{margin-bottom:8px}.sh-q .q-source blockquote{background:var(--muted);border-left:2px solid var(--border);color:var(--muted-fg);border-radius:0 6px 6px 0;margin:0;padding:10px 14px;font-size:12.5px;font-style:italic;line-height:1.5}.sh-q .q-source blockquote .ts{color:var(--muted-fg);opacity:.7;margin-right:8px;font-family:JetBrains Mono,monospace;font-size:11px;font-style:normal}.sh-sharer{background:var(--card);border:1px solid var(--border);border-radius:var(--radius-card);align-items:center;gap:14px;margin-top:24px;padding:16px 18px;display:flex}.sh-sharer .av{width:42px;height:42px;color:var(--fg);border-radius:50%;flex-shrink:0;place-items:center;font-size:14px;font-weight:600;display:grid}.sh-sharer .info{flex:1;min-width:0}.sh-sharer .info .nm{color:var(--fg);font-size:14px;font-weight:600}.sh-sharer .info .bio{margin-top:2px}.sh-sharer .info .bio,.sh-sharer a{color:var(--muted-fg);font-size:12.5px}.sh-sharer a{white-space:nowrap;font-weight:500;text-decoration:none}.sh-sharer a:hover{color:var(--fg)}.sh-footer{border-top:1px solid var(--border);background:var(--bg);margin-top:64px}@supports (color:color-mix(in lab,red,red)){.sh-footer{background:color-mix(in oklch,var(--bg) 60%,var(--muted) 40%)}}.sh-footer{flex-shrink:0}.sh-footer .cols{grid-template-columns:repeat(3,1fr);gap:40px;max-width:900px;margin:0 auto;padding:36px 32px 24px;display:grid}.sh-footer .col h4{letter-spacing:.1em;text-transform:uppercase;color:var(--muted-fg);margin:0 0 12px;font-family:JetBrains Mono,monospace;font-size:10.5px;font-weight:600}.sh-footer .col ul{flex-direction:column;gap:8px;margin:0;padding:0;list-style:none;display:flex}.sh-footer .col a{color:var(--fg);font-size:13px;text-decoration:none}.sh-footer .col a:hover{color:var(--accent)}.sh-footer .badges{flex-direction:column;gap:8px;display:flex}.sh-footer .badge{border:1px solid var(--border);background:var(--card);height:38px;color:var(--fg);border-radius:8px;align-items:center;gap:8px;width:max-content;padding:0 14px;font-size:12px;text-decoration:none;transition:all .12s;display:inline-flex}.sh-footer .badge:hover{background:var(--muted)}.sh-footer .badge .ic{font-size:16px;line-height:1;display:inline-flex}.sh-footer .badge .label{flex-direction:column;line-height:1.2;display:flex}.sh-footer .badge .label small{color:var(--muted-fg);letter-spacing:.06em;text-transform:uppercase;font-size:9px}.sh-footer .badge .label b{letter-spacing:-.005em;font-size:12.5px;font-weight:600}.sh-footer .bot{border-top:1px solid var(--border);justify-content:space-between;align-items:center;max-width:900px;margin:0 auto;padding:16px 32px 28px;display:flex}@supports (color:color-mix(in lab,red,red)){.sh-footer .bot{border-top:1px solid color-mix(in oklch,var(--border) 60%,transparent)}}.sh-footer .bot .brand{color:var(--muted-fg);align-items:center;gap:8px;font-size:12.5px;display:flex}.sh-footer .bot .brand .mono{background:var(--fg);width:22px;height:22px;color:var(--bg);border-radius:6px;place-items:center;font-family:Instrument Serif,serif;font-size:14px;font-style:italic;line-height:1;display:grid}.sh-footer .bot .copy{color:var(--muted-fg);font-size:11.5px}.sh-footer .theme-toggle{border:1px solid var(--border);background:var(--card);border-radius:7px;gap:0;padding:2px;display:inline-flex}.sh-footer .theme-toggle button{appearance:none;width:26px;height:26px;color:var(--muted-fg);cursor:pointer;background:0 0;border:0;border-radius:5px;place-items:center;display:grid}.sh-footer .theme-toggle button.on{background:var(--muted);color:var(--fg)}.sh-notfound-wrap{flex:1;place-items:center;padding:60px 24px;display:grid}.sh-notfound{background:var(--card);border:1px solid var(--border);border-radius:var(--radius-card);text-align:center;width:100%;max-width:480px;box-shadow:var(--shadow);padding:32px}.sh-notfound .glyph{background:var(--muted);border:1px solid var(--border);width:56px;height:56px;color:var(--muted-fg);border-radius:50%;place-items:center;margin:0 auto 18px;display:grid}.sh-notfound h2{letter-spacing:-.015em;margin:0 0 8px;font-family:Instrument Serif,serif;font-size:26px;font-weight:400;line-height:1.2}.sh-notfound p{color:var(--muted-fg);margin:0 0 22px;font-size:13.5px;line-height:1.55}.sh-notfound .ctas{justify-content:center;gap:10px;display:flex}.fk-page{background:var(--bg);width:100%;height:100%;color:var(--fg);flex-direction:column;font-family:Inter,system-ui,sans-serif;display:flex;overflow:hidden auto}.fk-main{flex:1;place-items:center;padding:60px 24px;display:grid}.fk-card{background:var(--card);border:1px solid var(--border);width:100%;max-width:520px;box-shadow:var(--shadow-pop);border-radius:16px;overflow:hidden}.fk-card.loading{opacity:.75;pointer-events:none;position:relative}.fk-card.loading:after{content:"";background:oklch(from var(--card) l c h/.3);pointer-events:none;position:absolute;inset:0}.fk-card .strip-row{border-bottom:1px solid var(--border);background:var(--card);align-items:center;gap:10px;padding:16px 22px 14px;display:flex}@supports (color:color-mix(in lab,red,red)){.fk-card .strip-row{background:color-mix(in oklch,var(--card) 70%,var(--muted) 30%)}}.fk-card .strip-row .title{color:var(--fg);letter-spacing:-.005em;text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0;font-size:14px;font-weight:600;overflow:hidden}.fk-card .body{padding:24px 26px 20px}.fk-card h2{letter-spacing:-.015em;margin:0 0 8px;font-family:Instrument Serif,serif;font-size:28px;font-weight:400;line-height:1.15}.fk-card .body p.lead{color:var(--muted-fg);margin:0 0 20px;font-size:13.5px;line-height:1.5}.fk-card ul.fk-list{flex-direction:column;gap:9px;margin:0 0 4px;padding:0;list-style:none;display:flex}.fk-card ul.fk-list li{color:var(--fg);align-items:flex-start;gap:10px;font-size:13px;line-height:1.45;display:flex}.fk-card ul.fk-list li .mk{border-radius:50%;flex-shrink:0;place-items:center;width:16px;height:16px;margin-top:1px;display:grid}.fk-card ul.fk-list li.yes .mk{background:var(--success);color:oklch(99% 0 0)}.fk-card ul.fk-list li.no,.fk-card ul.fk-list li.no .mk{color:var(--muted-fg)}.fk-card ul.fk-list li b{color:var(--fg);font-weight:600}.fk-card .picker{margin-top:4px;margin-bottom:18px}.fk-card .picker>label{letter-spacing:.08em;text-transform:uppercase;color:var(--muted-fg);margin-bottom:8px;font-family:JetBrains Mono,monospace;font-size:10.5px;font-weight:600;display:block}.fk-card .picker .courselist{border:1px solid var(--border);background:var(--muted);border-radius:10px;overflow:hidden}.fk-card .picker .courselist .opt{border-bottom:1px solid var(--border);grid-template-columns:14px 1fr auto;align-items:center;gap:12px;padding:11px 14px;display:grid}@supports (color:color-mix(in lab,red,red)){.fk-card .picker .courselist .opt{border-bottom:1px solid color-mix(in oklch,var(--border) 60%,transparent)}}.fk-card .picker .courselist .opt{cursor:pointer;background:var(--card);font-size:13px}.fk-card .picker .courselist .opt:last-child{border-bottom:0}.fk-card .picker .courselist .opt:hover{background:var(--muted)}.fk-card .picker .courselist .opt .swatch{border-radius:4px;width:14px;height:14px}.fk-card .picker .courselist .opt.selected{background:var(--accent-soft)}.fk-card .picker .courselist .opt .nm{color:var(--fg);font-weight:500}.fk-card .picker .courselist .opt .cd{color:var(--muted-fg);margin-left:6px;font-size:11.5px}.fk-card .picker .courselist .opt .ck{background:var(--accent);width:18px;height:18px;color:var(--accent-fg);border-radius:50%;place-items:center;display:grid}.fk-card .picker .newcourse{color:var(--muted-fg);cursor:pointer;background:0 0;border:0;align-items:center;gap:6px;margin-top:10px;padding:0;font-size:12.5px;display:inline-flex}.fk-card .picker .newcourse:hover{color:var(--accent)}.fk-card .err{background:var(--destructive-soft);border:1px solid var(--destructive);border-radius:8px;margin:0 0 14px;padding:10px 12px}@supports (color:color-mix(in lab,red,red)){.fk-card .err{border:1px solid color-mix(in oklch,var(--destructive) 30%,transparent)}}.fk-card .err{color:var(--destructive);align-items:flex-start;gap:8px;font-size:12.5px;display:flex}[data-theme=dark] .fk-card .err{color:oklch(85% .12 25)}.fk-card .err .lbl{font-weight:600}.fk-card .err .grow{flex:1}.fk-card .err button{color:inherit;font:inherit;cursor:pointer;text-underline-offset:3px;background:0 0;border:0;padding:0;font-weight:600;text-decoration:underline}.fk-card .foot{border-top:1px solid var(--border);background:var(--card);justify-content:space-between;align-items:center;gap:12px;padding:14px 22px;display:flex}@supports (color:color-mix(in lab,red,red)){.fk-card .foot{background:color-mix(in oklch,var(--card) 60%,var(--muted) 40%)}}.sh-spin{border:1.5px solid;border-right:1.5px solid #0000;border-radius:50%;width:14px;height:14px;animation:sh-spin .7s linear infinite;display:inline-block}.sh-spin.lg{border-width:2.5px;width:32px;height:32px}@keyframes sh-spin{to{transform:rotate(1turn)}}.sh-toast{z-index:50;background:var(--fg);color:var(--bg);box-shadow:var(--shadow-pop);border-radius:999px;align-items:center;gap:8px;padding:10px 16px;font-size:12.5px;font-weight:500;display:flex;position:absolute;bottom:24px;left:50%;transform:translate(-50%)}.sh-toast .ck{background:var(--success);color:oklch(99% 0 0);border-radius:50%;place-items:center;width:16px;height:16px;display:grid}.og-card{background:oklch(13% .012 270);background-image:radial-gradient(ellipse 80% 100% at 0 0,oklch(.3 .1 var(--og-hue,274)/.55) 0,transparent 60%),radial-gradient(ellipse 100% 80% at 100% 100%,oklch(.22 .1 var(--og-hue,274)/.45) 0,transparent 65%);color:oklch(97% .005 80);box-sizing:border-box;width:1200px;height:630px;font-family:Inter,system-ui,sans-serif;position:relative;overflow:hidden}.og-card:before{content:"";opacity:.5;pointer-events:none;background-image:radial-gradient(circle,#0000 0 1px,oklch(55% .04 270/.1) 1px,#0000 2px);background-size:28px 28px;position:absolute;inset:0}.og-card .og-brand{align-items:center;gap:12px;display:flex;position:absolute;top:56px;left:64px}.og-card .og-brand .mono{color:oklch(13% .012 270);background:oklch(97% .005 80);border-radius:11px;place-items:center;width:44px;height:44px;padding-bottom:4px;font-family:Instrument Serif,serif;font-size:30px;font-style:italic;line-height:1;display:grid}.og-card .og-brand .word{letter-spacing:-.005em;color:oklch(97% .005 80);font-family:Instrument Serif,serif;font-size:24px;font-weight:400}.og-card .og-content{flex-direction:column;gap:22px;width:620px;display:flex;position:absolute;top:152px;left:64px}.og-card .og-typebadge{letter-spacing:.1em;text-transform:uppercase;border-radius:999px;align-items:center;gap:8px;width:fit-content;height:36px;padding:0 18px;font-family:JetBrains Mono,monospace;font-size:12px;font-weight:600;display:inline-flex}.og-card .og-typebadge .d{background:currentColor;border-radius:50%;width:7px;height:7px}.og-card .og-typebadge.course{color:oklch(85% .14 30);background:oklch(30% .12 30/.45)}.og-card .og-typebadge.lecture{color:oklch(85% .14 235);background:oklch(30% .12 235/.45)}.og-card .og-typebadge.assessment{color:oklch(85% .14 305);background:oklch(30% .12 305/.45)}.og-card .og-title{letter-spacing:-.025em;color:oklch(99% 0 0);text-wrap:balance;-webkit-line-clamp:2;-webkit-box-orient:vertical;margin:0;font-family:Instrument Serif,serif;font-size:64px;font-weight:400;line-height:1.05;display:-webkit-box;overflow:hidden}.og-card .og-meta{color:oklch(74% .012 80);letter-spacing:.005em;align-items:center;gap:12px;font-size:17px;display:flex}.og-card .og-meta .dot{background:oklch(55% .01 80);border-radius:50%;width:4px;height:4px}.og-card .og-visual{width:380px;position:absolute;top:50%;right:64px;transform:translateY(-50%)}.og-card .og-watermark{color:oklch(60% .01 80);letter-spacing:.06em;font-family:JetBrains Mono,monospace;font-size:13px;position:absolute;bottom:40px;right:64px}.sh-mobile-wrap .sh-header{height:52px;padding:0 16px}.sh-mobile-wrap .sh-main{padding:24px 16px 100px}.sh-mobile-wrap .sh-hero h1{font-size:32px}.sh-mobile-wrap .sh-cta{grid-template-columns:1fr;gap:14px;padding:16px}.sh-mobile-wrap .sh-cta .left{flex-direction:column;align-items:flex-start}.sh-mobile-wrap .sh-cta .reassure{text-align:left;border-top:1px solid var(--border);max-width:none;padding-top:12px}.sh-mobile-wrap .sh-btn.primary.lg{width:100%}.sh-mobile-wrap .sh-footer .cols{grid-template-columns:1fr;gap:28px;padding:32px 16px 16px}.sh-mobile-wrap .sh-footer .bot{flex-direction:column;gap:12px;padding:16px}.sh-mobile-wrap .sh-cta-sticky{padding:12px 16px}.sh-mobile-wrap .sh-cta-sticky .label .t{max-width:180px}.sh-skel-hero{flex-direction:column;gap:12px;margin-bottom:32px;display:flex}.sh-skel-hero .b1{width:96px;height:12px}.sh-skel-hero .b2{width:100px;height:22px}.sh-skel-hero .b3{width:70%;height:44px}.sh-skel-hero .b4{width:220px;height:14px}.sh-skel-section{border-radius:var(--radius-card);height:240px;margin-bottom:16px}.es-stage{background:var(--bg);width:100%;height:100%;color:var(--fg);flex-direction:column;font-family:Inter,system-ui,sans-serif;display:flex;overflow:hidden}.es-stage.padded{padding:24px}.es-stage .stage-label{letter-spacing:.08em;text-transform:uppercase;color:var(--muted-fg);border-bottom:1px solid var(--border);background:var(--card);justify-content:space-between;align-items:center;padding:14px 22px;font-family:JetBrains Mono,monospace;font-size:10px;font-weight:600;display:flex}.es-stage .stage-label .ctx{color:var(--fg-muted);letter-spacing:0;text-transform:none;font-size:11.5px;font-weight:500}.es-mini-topbar{background:var(--card);border-bottom:1px solid var(--border);flex-shrink:0;justify-content:space-between;align-items:center;height:52px;padding:0 22px;display:flex}.es-mini-topbar .ttl{color:var(--fg);letter-spacing:-.005em;font-size:13.5px;font-weight:500}.es-mini-topbar .crumbs{color:var(--muted-fg);align-items:center;gap:6px;font-size:12px;display:flex}.es-mini-topbar .crumbs .here{color:var(--fg);font-weight:500}.es-mini-topbar .right{align-items:center;gap:8px;display:flex}.es-mini-tbbtn{background:var(--card);height:30px;color:var(--fg);border:1px solid var(--border);font:inherit;border-radius:7px;align-items:center;gap:6px;padding:0 12px;font-size:12.5px;font-weight:500;display:inline-flex}.es-mini-tbbtn.primary{background:var(--accent);color:var(--accent-fg);border-color:#0000}.es-mini-tbbtn.avatar{color:oklch(32% .1 30);background:oklch(86% .07 30);border:0;border-radius:50%;place-items:center;width:28px;height:28px;padding:0;font-size:12px;font-weight:600;display:grid}.es-mini-body{background:var(--bg);flex:1;padding:24px 28px;overflow-y:auto}.es-offline-bar{background:var(--destructive-soft);border-bottom:1px solid var(--destructive);justify-content:space-between;align-items:center;gap:16px;padding:8px 22px;display:flex}@supports (color:color-mix(in lab,red,red)){.es-offline-bar{border-bottom:1px solid color-mix(in oklch,var(--destructive) 30%,transparent)}}.es-offline-bar{color:var(--destructive);font-size:12.5px}[data-theme=dark] .es-offline-bar{color:oklch(88% .1 25)}.es-offline-bar .left{flex:1;align-items:center;gap:8px;min-width:0;display:flex}.es-offline-bar .ic-bg{background:var(--destructive);border-radius:5px;place-items:center;width:22px;height:22px;display:grid}@supports (color:color-mix(in lab,red,red)){.es-offline-bar .ic-bg{background:color-mix(in oklch,var(--destructive) 20%,transparent)}}.es-offline-bar .ic-bg{color:var(--destructive);flex-shrink:0}[data-theme=dark] .es-offline-bar .ic-bg{color:oklch(88% .1 25)}.es-offline-bar .msg{color:var(--fg);font-weight:500}.es-offline-bar .right{flex-shrink:0;align-items:center;gap:12px;display:flex}.es-offline-bar .countdown{color:var(--muted-fg);letter-spacing:.02em;font-variant-numeric:tabular-nums;font-family:JetBrains Mono,monospace;font-size:11.5px}.es-offline-bar .retry-btn{appearance:none;border:1px solid var(--destructive)}@supports (color:color-mix(in lab,red,red)){.es-offline-bar .retry-btn{border:1px solid color-mix(in oklch,var(--destructive) 30%,transparent)}}.es-offline-bar .retry-btn{background:var(--card);height:26px;color:var(--destructive);font:inherit;cursor:pointer;border-radius:6px;align-items:center;gap:5px;padding:0 10px;font-size:11.5px;font-weight:500;display:inline-flex}[data-theme=dark] .es-offline-bar .retry-btn{color:oklch(88% .1 25)}.es-offline-bar .retry-btn:hover{background:var(--destructive)}@supports (color:color-mix(in lab,red,red)){.es-offline-bar .retry-btn:hover{background:color-mix(in oklch,var(--destructive) 8%,var(--card))}}.es-offline-bar.success{background:var(--success-soft);border-bottom-color:var(--success)}@supports (color:color-mix(in lab,red,red)){.es-offline-bar.success{border-bottom-color:color-mix(in oklch,var(--success) 30%,transparent)}}.es-offline-bar.success{color:var(--success);animation:es-fade-in .2s ease-out}[data-theme=dark] .es-offline-bar.success{color:oklch(88% .1 150)}.es-offline-bar.success .ic-bg{background:var(--success)}@supports (color:color-mix(in lab,red,red)){.es-offline-bar.success .ic-bg{background:color-mix(in oklch,var(--success) 20%,transparent)}}.es-offline-bar.success .ic-bg{color:var(--success)}[data-theme=dark] .es-offline-bar.success .ic-bg{color:oklch(88% .1 150)}@keyframes es-fade-in{0%{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:translateY(0)}}.es-btn-panel{flex-direction:column;gap:16px;padding:24px;display:flex}.es-btn-row{background:var(--card);border:1px solid var(--border);border-radius:10px;align-items:center;gap:14px;padding:14px 16px;display:flex;position:relative}.es-btn-row .lbl{color:var(--muted-fg);letter-spacing:.02em;flex:1;font-family:JetBrains Mono,monospace;font-size:12px}.es-btn-row .ctx{color:var(--fg-muted);margin-left:6px;font-family:Inter,system-ui,sans-serif;font-size:12px}.es-btn{height:36px;font:inherit;cursor:pointer;background:var(--accent);color:var(--accent-fg);letter-spacing:-.005em;border:0;border-radius:8px;justify-content:center;align-items:center;gap:6px;padding:0 14px;font-size:13px;font-weight:500;transition:all .12s;display:inline-flex}.es-btn.ghost{color:var(--fg);border:1px solid var(--border);background:0 0}.es-btn.destructive{background:var(--destructive);color:oklch(99% 0 0)}.es-btn.soft{background:var(--muted);color:var(--fg)}.es-btn.iconbtn,.es-btn.soft{border:1px solid var(--border)}.es-btn.iconbtn{width:32px;color:var(--muted-fg);background:0 0;padding:0}.es-btn.sm{border-radius:6px;height:28px;padding:0 10px;font-size:12px}.es-btn.lg{border-radius:9px;height:42px;padding:0 18px;font-size:14px}.es-btn.offline-disabled{opacity:.4;cursor:not-allowed;position:relative}.es-tooltip{background:var(--fg);color:var(--bg);white-space:nowrap;box-shadow:var(--shadow-pop);z-index:5;border-radius:6px;padding:6px 10px;font-size:11.5px;font-weight:500;position:absolute;bottom:calc(100% + 6px);right:0}.es-tooltip:after{content:"";border:5px solid #0000;border-top:5px solid var(--fg);position:absolute;top:100%;right:18px}.es-full-center{flex:1;place-items:center;padding:24px;display:grid}.es-auth-card{background:var(--card);border:1px solid var(--border);text-align:center;width:100%;max-width:420px;box-shadow:var(--shadow-pop);border-radius:16px;padding:36px 32px}.es-auth-card .glyph{background:var(--destructive-soft);width:56px;height:56px;color:var(--destructive);border-radius:16px;place-items:center;margin:0 auto 18px;display:grid}[data-theme=dark] .es-auth-card .glyph{color:oklch(88% .1 25)}.es-auth-card h2{letter-spacing:-.015em;margin:0 0 6px;font-family:Instrument Serif,serif;font-size:26px;font-weight:400}.es-auth-card p{color:var(--muted-fg);margin:0 0 22px;font-size:13.5px;line-height:1.55}.es-rate-card{background:var(--warning-soft);border:1px solid var(--warning);grid-template-columns:36px 1fr;gap:14px;padding:18px 20px;display:grid}@supports (color:color-mix(in lab,red,red)){.es-rate-card{border:1px solid color-mix(in oklch,var(--warning) 50%,transparent)}}.es-rate-card{border-radius:12px}.es-rate-card .ic-bg{background:var(--warning);border-radius:9px;width:36px;height:36px}@supports (color:color-mix(in lab,red,red)){.es-rate-card .ic-bg{background:color-mix(in oklch,var(--warning) 60%,transparent)}}.es-rate-card .ic-bg{color:oklch(18% .08 75);flex-shrink:0;place-items:center;display:grid}[data-theme=dark] .es-rate-card .ic-bg{color:oklch(18% .05 75);background:oklch(65% .13 75)}.es-rate-card .ti{color:var(--fg);letter-spacing:-.005em;margin-bottom:4px;font-size:13.5px;font-weight:600}.es-rate-card .ti b{font-family:JetBrains Mono,monospace;font-weight:600}.es-rate-card .body-text{color:var(--fg);margin-bottom:10px;font-size:12.5px;line-height:1.55}.es-rate-card .body-text .reset{background:var(--warning);font-family:JetBrains Mono,monospace}@supports (color:color-mix(in lab,red,red)){.es-rate-card .body-text .reset{background:color-mix(in oklch,var(--warning) 18%,transparent)}}.es-rate-card .body-text .reset{color:var(--fg);border-radius:4px;padding:1px 6px;font-weight:500}.es-rate-card .why{appearance:none;color:var(--fg);font:inherit;cursor:pointer;text-underline-offset:3px;background:0 0;border:0;align-items:center;gap:4px;padding:0;font-size:12px;font-weight:500;text-decoration:underline;display:inline-flex}@supports (color:color-mix(in lab,red,red)){.es-rate-card .why{-webkit-text-decoration-color:color-mix(in oklch,currentColor 40%,transparent);text-decoration-color:color-mix(in oklch,currentColor 40%,transparent)}}.es-rate-card .why:hover{text-decoration-color:currentColor}.es-rate-card .expanded{background:var(--card);color:var(--muted-fg);border:1px solid var(--border);border-radius:8px;margin-top:12px;padding:12px 14px;font-size:12px;line-height:1.55}.es-rate-card .expanded b{color:var(--fg);font-weight:600}.es-rate-card .expanded .contact{border-top:1px solid var(--border);margin-top:8px;padding-top:8px;font-size:11.5px}.es-rate-card .expanded .contact a{color:var(--accent);text-decoration:none}.es-amber-dot-tile{background:var(--card);border:1px solid var(--border);border-radius:var(--radius-card);align-items:center;gap:12px;padding:14px;font-family:Inter,system-ui,sans-serif;display:flex;position:relative}.es-amber-dot-tile .ic-bg{background:var(--muted);width:36px;height:36px;color:var(--muted-fg);border-radius:9px;flex-shrink:0;place-items:center;display:grid}.es-amber-dot-tile .meta{flex-direction:column;gap:2px;min-width:0;display:flex}.es-amber-dot-tile .nm{color:var(--fg);font-size:13px;font-weight:500}.es-amber-dot-tile .hint{color:var(--muted-fg);font-size:11px}.es-amber-dot-tile .approaching{background:var(--warning);width:9px;height:9px;box-shadow:0 0 0 3px var(--card),0 0 0 4px var(--warning);border-radius:50%;position:absolute;top:10px;right:10px}@supports (color:color-mix(in lab,red,red)){.es-amber-dot-tile .approaching{box-shadow:0 0 0 3px var(--card),0 0 0 4px color-mix(in oklch,var(--warning) 30%,transparent)}}[data-theme=dark] .es-amber-dot-tile .approaching{background:oklch(65% .13 75)}.es-amber-dot-tile:hover .approaching-tip{opacity:1;pointer-events:auto;transform:translateY(0)}.approaching-tip{background:var(--fg);color:var(--bg);white-space:nowrap;box-shadow:var(--shadow-pop);opacity:0;pointer-events:none;z-index:5;border-radius:7px;padding:8px 12px;font-size:11.5px;transition:all .14s;position:absolute;top:calc(100% + 6px);right:0;transform:translateY(4px)}.approaching-tip .num{font-family:JetBrains Mono,monospace;font-weight:600}.es-upload-dlg{background:var(--card);border:1px solid var(--border);width:100%;max-width:480px;box-shadow:var(--shadow-pop);border-radius:14px;overflow:hidden}.es-upload-dlg .head{border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;padding:14px 18px;display:flex}.es-upload-dlg .head .ti{color:var(--fg);letter-spacing:-.005em;font-size:14px;font-weight:600}.es-upload-dlg .head .steps{color:var(--muted-fg);letter-spacing:.06em;font-family:JetBrains Mono,monospace;font-size:10.5px;font-weight:600}.es-upload-dlg .body{padding:18px}.es-upload-dlg .body .field{margin-bottom:12px}.es-upload-dlg .body .field label{letter-spacing:.08em;text-transform:uppercase;color:var(--muted-fg);margin-bottom:5px;font-family:JetBrains Mono,monospace;font-size:10px;font-weight:600;display:block}.es-upload-dlg .body .field input{box-sizing:border-box;border:1px solid var(--input);background:var(--card);width:100%;height:34px;color:var(--fg);font:inherit;border-radius:7px;outline:none;padding:0 10px;font-size:13px}.es-upload-dlg .body .field .summary{background:var(--muted);border:1px solid var(--border);color:var(--fg);border-radius:7px;align-items:center;gap:8px;padding:10px 12px;font-size:12.5px;display:flex}.es-upload-dlg .body .field .summary .pill{text-transform:uppercase;letter-spacing:.06em;background:var(--destructive-soft);color:var(--destructive);border-radius:4px;padding:2px 7px;font-family:JetBrains Mono,monospace;font-size:10px;font-weight:600}.es-upload-dlg .foot{background:var(--card);padding:12px 18px}@supports (color:color-mix(in lab,red,red)){.es-upload-dlg .foot{background:color-mix(in oklch,var(--card) 70%,var(--muted) 30%)}}.es-upload-dlg .foot{border-top:1px solid var(--border);justify-content:space-between;gap:10px;display:flex}.es-wizard{background:var(--card);border:1px solid var(--border);width:100%;max-width:640px;box-shadow:var(--shadow);border-radius:14px;overflow:hidden}.es-wizard .step-bar{border-bottom:1px solid var(--border);background:var(--card);gap:6px;padding:14px 22px;display:flex}@supports (color:color-mix(in lab,red,red)){.es-wizard .step-bar{background:color-mix(in oklch,var(--card) 80%,var(--muted) 20%)}}.es-wizard .step-bar{letter-spacing:.06em;text-transform:uppercase;color:var(--muted-fg);align-items:center;font-family:JetBrains Mono,monospace;font-size:10.5px;font-weight:600}.es-wizard .step-bar .step{align-items:center;gap:5px;display:inline-flex}.es-wizard .step-bar .step .dot{background:var(--muted-2);border-radius:50%;width:7px;height:7px}.es-wizard .step-bar .step.done .dot{background:var(--success)}.es-wizard .step-bar .step.cur .dot{background:var(--accent);box-shadow:0 0 0 3px var(--ring)}.es-wizard .step-bar .step.cur{color:var(--fg)}.es-wizard .step-bar .step-sep{color:var(--muted-fg);opacity:.5}.es-wizard .body{padding:22px}.es-wizard h3{letter-spacing:-.015em;margin:0 0 6px;font-family:Instrument Serif,serif;font-size:24px;font-weight:400}.es-wizard p.lead{color:var(--muted-fg);margin:0 0 18px;font-size:13px;line-height:1.55}.es-wizard .summary-card{background:var(--muted);border:1px solid var(--border);border-radius:10px;margin-bottom:16px;padding:14px 16px}.es-wizard .summary-card .grid{grid-template-columns:1fr 1fr;gap:8px 16px;font-size:12.5px;display:grid}.es-wizard .summary-card .grid .l{color:var(--muted-fg);letter-spacing:.06em;text-transform:uppercase;font-family:JetBrains Mono,monospace;font-size:10px;font-weight:600}.es-wizard .summary-card .grid .v{color:var(--fg);margin-top:2px;font-weight:500}.es-wizard .foot{border-top:1px solid var(--border);background:var(--card);padding:14px 22px}@supports (color:color-mix(in lab,red,red)){.es-wizard .foot{background:color-mix(in oklch,var(--card) 70%,var(--muted) 30%)}}.es-wizard .foot{justify-content:space-between;gap:10px;display:flex}.es-signin{flex-direction:column;gap:24px;width:100%;max-width:400px}.es-signin,.es-signin .brand{align-items:center;display:flex}.es-signin .brand{gap:10px}.es-signin .brand .mono{background:var(--fg);width:36px;height:36px;color:var(--bg);border-radius:10px;place-items:center;padding-bottom:3px;font-family:Instrument Serif,serif;font-size:22px;font-style:italic;display:grid;position:relative}.es-signin .brand .mono:after{content:"";background:var(--accent);border-radius:50%;width:5px;height:5px;position:absolute;bottom:5px;right:5px}.es-signin .brand .word{letter-spacing:-.01em;font-size:22px}.es-signin .brand .word,.es-signin h1{font-family:Instrument Serif,serif;font-weight:400}.es-signin h1{text-align:center;letter-spacing:-.02em;margin:0;font-size:32px}.es-signin .lead{text-align:center;color:var(--muted-fg);margin:-16px 0 0;font-size:13.5px;line-height:1.55}.es-signin form{flex-direction:column;gap:10px;width:100%;display:flex}.es-signin input{box-sizing:border-box;background:var(--card);border:1px solid var(--input);width:100%;height:44px;font:inherit;color:var(--fg);border-radius:10px;outline:none;padding:0 14px;font-size:14px}.es-signin input:focus{border-color:var(--accent);box-shadow:0 0 0 3px var(--ring)}.es-signin .submit{background:var(--fg);width:100%;height:44px;color:var(--bg);font:inherit;cursor:pointer;border:0;border-radius:10px;font-size:14px;font-weight:500}.es-cb-banner{background:var(--warning-soft);border:1px solid var(--warning);grid-template-columns:32px 1fr auto;gap:12px;width:100%;padding:14px 16px;display:grid}@supports (color:color-mix(in lab,red,red)){.es-cb-banner{border:1px solid color-mix(in oklch,var(--warning) 50%,transparent)}}.es-cb-banner{border-radius:10px}.es-cb-banner.network{background:var(--destructive-soft);border-color:var(--destructive)}@supports (color:color-mix(in lab,red,red)){.es-cb-banner.network{border-color:color-mix(in oklch,var(--destructive) 35%,transparent)}}.es-cb-banner .ic-bg{background:var(--warning);border-radius:8px;width:32px;height:32px}@supports (color:color-mix(in lab,red,red)){.es-cb-banner .ic-bg{background:color-mix(in oklch,var(--warning) 70%,transparent)}}.es-cb-banner .ic-bg{color:oklch(18% .08 75);flex-shrink:0;place-items:center;display:grid}[data-theme=dark] .es-cb-banner .ic-bg{color:oklch(18% .05 75);background:oklch(65% .13 75)}.es-cb-banner.network .ic-bg{background:var(--destructive)}@supports (color:color-mix(in lab,red,red)){.es-cb-banner.network .ic-bg{background:color-mix(in oklch,var(--destructive) 70%,transparent)}}.es-cb-banner.network .ic-bg{color:oklch(99% 0 0)}.es-cb-banner .ti{color:var(--fg);letter-spacing:-.005em;margin-bottom:2px;font-size:13px;font-weight:600}.es-cb-banner .b{color:var(--muted-fg);font-size:12px;line-height:1.55}.es-cb-banner .x{appearance:none;width:26px;height:26px;color:var(--muted-fg);cursor:pointer;background:0 0;border:0;border-radius:5px;align-self:start;place-items:center;display:grid}.es-cb-banner .x:hover{background:var(--card);color:var(--fg)}.es-cb-card{background:var(--card);border:1px solid var(--border);text-align:center;width:100%;max-width:380px;box-shadow:var(--shadow-pop);border-radius:16px;flex-direction:column;align-items:center;gap:14px;padding:40px 36px;display:flex}.es-cb-card .sp{color:var(--accent)}.es-cb-card h2{letter-spacing:-.015em;margin:0;font-family:Instrument Serif,serif;font-size:26px;font-weight:400}.es-cb-card p{color:var(--muted-fg);margin:0;font-size:13px;line-height:1.5}.es-cb-card .timeout-hint{color:var(--warning);align-items:center;gap:5px;margin-top:4px;font-size:12px;display:inline-flex}[data-theme=dark] .es-cb-card .timeout-hint{color:oklch(85% .1 75)}.es-cb-card .err-glyph{background:var(--destructive-soft);width:44px;height:44px;color:var(--destructive);border-radius:12px;place-items:center;display:grid}[data-theme=dark] .es-cb-card .err-glyph{color:oklch(88% .1 25)}.es-cb-card .err-ac{gap:8px;margin-top:4px;display:flex}.es-spin{border:1.5px solid;border-right:1.5px solid #0000;border-radius:50%;width:14px;height:14px;animation:es-spin .7s linear infinite;display:inline-block}.es-spin.lg{border-width:2.5px;width:32px;height:32px}.es-spin.md{border-width:2px;width:22px;height:22px}@keyframes es-spin{to{transform:rotate(1turn)}}.es-session-inline{background:var(--warning-soft);border:1px solid var(--warning);align-items:flex-start;gap:12px;padding:14px 16px;display:flex}@supports (color:color-mix(in lab,red,red)){.es-session-inline{border:1px solid color-mix(in oklch,var(--warning) 40%,transparent)}}.es-session-inline{border-radius:10px}.es-session-inline .ic-bg{background:var(--warning);border-radius:7px;width:28px;height:28px}@supports (color:color-mix(in lab,red,red)){.es-session-inline .ic-bg{background:color-mix(in oklch,var(--warning) 60%,transparent)}}.es-session-inline .ic-bg{color:oklch(18% .05 75);flex-shrink:0;place-items:center;display:grid}[data-theme=dark] .es-session-inline .ic-bg{color:oklch(18% .05 75);background:oklch(65% .13 75)}.es-session-inline .body{flex:1;min-width:0}.es-session-inline .ti{color:var(--fg);margin-bottom:2px;font-size:13px;font-weight:600}.es-session-inline .b{color:var(--muted-fg);margin-bottom:10px;font-size:12px;line-height:1.5}.es-session-inline .ac{gap:8px;display:flex}.es-modal-backdrop{background:var(--fg);position:absolute;inset:0}@supports (color:color-mix(in lab,red,red)){.es-modal-backdrop{background:color-mix(in oklch,var(--fg) 40%,transparent)}}.es-modal-backdrop{-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);z-index:10;place-items:center;padding:24px;display:grid}.es-modal{background:var(--card);border:1px solid var(--border);width:100%;max-width:460px;box-shadow:var(--shadow-pop);border-radius:16px;padding:32px 30px}.es-modal.expired{border-color:var(--warning)}@supports (color:color-mix(in lab,red,red)){.es-modal.expired{border-color:color-mix(in oklch,var(--warning) 40%,transparent)}}.es-modal .glyph{background:var(--warning-soft);color:oklch(18% .05 75);border-radius:12px;place-items:center;width:48px;height:48px;margin:0 auto 16px;display:grid}[data-theme=dark] .es-modal .glyph{color:oklch(85% .1 75)}.es-modal h2{text-align:center;letter-spacing:-.015em;margin:0 0 6px;font-family:Instrument Serif,serif;font-size:24px;font-weight:400}.es-modal p{text-align:center;color:var(--muted-fg);margin:0 0 18px;font-size:13.5px;line-height:1.55}.es-modal .saved-card{background:var(--success-soft);border:1px solid var(--success)}@supports (color:color-mix(in lab,red,red)){.es-modal .saved-card{border:1px solid color-mix(in oklch,var(--success) 30%,transparent)}}.es-modal .saved-card{border-radius:10px;margin-bottom:18px;padding:14px 16px}.es-modal .saved-card .h{letter-spacing:.08em;text-transform:uppercase;color:var(--success);align-items:center;gap:6px;margin-bottom:8px;font-family:JetBrains Mono,monospace;font-size:10px;font-weight:600;display:flex}[data-theme=dark] .es-modal .saved-card .h{color:oklch(85% .1 150)}.es-modal .saved-card .row{color:var(--fg);align-items:center;gap:8px;padding:4px 0;font-size:12.5px;display:flex}.es-modal .saved-card .row b{color:var(--fg);font-family:JetBrains Mono,monospace;font-weight:600}.es-modal .ac{justify-content:center;gap:10px;display:flex}.es-modal .ac .es-btn.lg{min-width:160px}.es-api-fail{background:var(--destructive-soft);border:1px solid var(--destructive);align-items:flex-start;gap:10px;padding:12px 14px;display:flex}@supports (color:color-mix(in lab,red,red)){.es-api-fail{border:1px solid color-mix(in oklch,var(--destructive) 35%,transparent)}}.es-api-fail{border-radius:9px}.es-api-fail .ic-bg{background:var(--destructive);border-radius:6px;width:26px;height:26px}@supports (color:color-mix(in lab,red,red)){.es-api-fail .ic-bg{background:color-mix(in oklch,var(--destructive) 30%,transparent)}}.es-api-fail .ic-bg{color:var(--destructive);flex-shrink:0;place-items:center;display:grid}[data-theme=dark] .es-api-fail .ic-bg{color:oklch(88% .1 25)}.es-api-fail .body{flex:1;min-width:0}.es-api-fail .body .msg{color:var(--fg);margin-bottom:4px;font-size:12.5px;font-weight:500}.es-api-fail .body .code{color:var(--muted-fg);letter-spacing:.02em;font-family:JetBrains Mono,monospace;font-size:10.5px}.es-api-fail .body .code a{color:var(--muted-fg)}.es-api-fail .retry{border:1px solid var(--destructive);align-items:center;gap:5px;height:26px;padding:0 10px;display:inline-flex}@supports (color:color-mix(in lab,red,red)){.es-api-fail .retry{border:1px solid color-mix(in oklch,var(--destructive) 35%,transparent)}}.es-api-fail .retry{background:var(--card);color:var(--destructive);font:inherit;cursor:pointer;border-radius:6px;flex-shrink:0;align-self:center;font-size:11.5px;font-weight:500}[data-theme=dark] .es-api-fail .retry{color:oklch(88% .1 25)}.es-gen-overlay{background:var(--bg);width:100%;height:100%;position:relative}@supports (color:color-mix(in lab,red,red)){.es-gen-overlay{background:color-mix(in oklch,var(--bg) 88%,transparent)}}.es-gen-overlay{-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);box-sizing:border-box;place-items:center;padding:24px;display:grid}.es-gen-box{background:var(--card);border:1px solid var(--border);text-align:center;width:100%;max-width:420px;box-shadow:var(--shadow-pop);border-radius:16px;padding:36px 32px}.es-gen-box .sp{color:var(--accent);margin-bottom:16px;display:inline-block}.es-gen-box h3{letter-spacing:-.01em;margin:0 0 4px;font-family:Instrument Serif,serif;font-size:22px;font-weight:400}.es-gen-box .phase{color:var(--muted-fg);letter-spacing:.04em;align-items:center;gap:8px;margin:14px 0 4px;font-family:JetBrains Mono,monospace;font-size:11.5px;display:inline-flex}.es-gen-box .phase .d{background:var(--accent);border-radius:50%;width:6px;height:6px;animation:es-pulse 1.2s ease-in-out infinite}@keyframes es-pulse{0%,to{opacity:1;transform:scale(1)}50%{opacity:.4;transform:scale(.7)}}.es-gen-box .duration{color:var(--muted-fg);margin:8px 0 0;font-size:12.5px}.es-gen-warn{background:var(--warning-soft);border:1px solid var(--warning);margin-top:22px;padding:14px 16px}@supports (color:color-mix(in lab,red,red)){.es-gen-warn{border:1px solid color-mix(in oklch,var(--warning) 40%,transparent)}}.es-gen-warn{text-align:left;border-radius:10px}.es-gen-warn .ti{color:var(--fg);align-items:center;gap:8px;margin-bottom:6px;font-size:12.5px;font-weight:600;display:flex}.es-gen-warn .ti .ic{color:oklch(50% .13 60);display:inline-flex}[data-theme=dark] .es-gen-warn .ti .ic{color:oklch(85% .1 75)}.es-gen-warn .b{color:var(--muted-fg);margin-bottom:12px;font-size:12px;line-height:1.5}.es-gen-warn .ac{gap:8px;display:flex}.es-proc-banner{background:var(--card);border:1px solid var(--border);border-radius:var(--radius-card);grid-template-columns:4px 1fr;gap:16px;padding:14px 16px 14px 0;display:grid;overflow:hidden}.es-proc-banner .rule{background:var(--accent);border-radius:4px 0 0 4px}.es-proc-banner.warning .rule{background:var(--warning)}.es-proc-banner .content{padding-left:12px}.es-proc-banner .head{justify-content:space-between;align-items:center;margin-bottom:8px;display:flex}.es-proc-banner .head .title{color:var(--fg);letter-spacing:-.005em;font-size:13.5px;font-weight:600}.es-proc-banner .head .sub{color:var(--muted-fg);margin-top:1px;font-size:12px;line-height:1.5}.es-proc-banner .indet{background:var(--muted-2);border-radius:999px;height:3px;margin:10px 0;position:relative;overflow:hidden}.es-proc-banner .indet .fill{background:var(--accent);border-radius:inherit;width:30%;animation:es-indet 1.5s ease-in-out infinite;position:absolute;top:0;bottom:0}@keyframes es-indet{0%{left:-30%}to{left:100%}}.es-proc-banner .milestones{gap:18px;margin-top:10px;display:flex}.es-proc-banner .milestones .ms{color:var(--muted-fg);align-items:center;gap:5px;font-size:11.5px;display:flex}.es-proc-banner .milestones .ms .dot{background:var(--muted-2);width:18px;height:18px;color:var(--muted-fg);border-radius:50%;place-items:center;font-family:JetBrains Mono,monospace;font-size:9.5px;font-weight:600;display:grid}.es-proc-banner .milestones .ms.done .dot{background:var(--success);color:oklch(99% 0 0)}.es-proc-banner .milestones .ms.cur .dot{background:var(--accent);color:var(--accent-fg);box-shadow:0 0 0 3px var(--ring)}.es-proc-banner .milestones .ms.cur{color:var(--fg);font-weight:600}.es-proc-banner .stuck-note{background:var(--warning-soft);border:1px solid var(--warning);align-items:flex-start;gap:8px;margin-top:14px;padding:10px 12px;display:flex}@supports (color:color-mix(in lab,red,red)){.es-proc-banner .stuck-note{border:1px solid color-mix(in oklch,var(--warning) 35%,transparent)}}.es-proc-banner .stuck-note{color:var(--fg);border-radius:8px;font-size:12px;line-height:1.5}.es-proc-banner .stuck-note .ic{color:oklch(50% .13 60);flex-shrink:0;margin-top:1px;display:inline-flex}[data-theme=dark] .es-proc-banner .stuck-note .ic{color:oklch(85% .1 75)}.es-mobile-frame{background:var(--bg);flex-direction:column;width:390px;height:100%;display:flex;overflow:hidden}.es-mobile-frame .es-mini-topbar{height:48px;padding:0 14px}.es-mobile-frame .es-offline-bar{padding:8px 14px}.es-mobile-frame .es-offline-bar .msg{font-size:12px}.es-mobile-frame .es-mini-body{padding:16px 14px}.pr-banner{background:var(--accent-soft);color:var(--accent-soft-fg);border:1px solid var(--accent);align-items:center;gap:14px;padding:14px 18px;display:flex}@supports (color:color-mix(in lab,red,red)){.pr-banner{border:1px solid color-mix(in oklch,var(--accent) 30%,transparent)}}.pr-banner{border-radius:var(--radius-card);margin-bottom:18px;font-size:13px;line-height:1.5}.pr-banner .ic{background:var(--accent);border-radius:8px;place-items:center;width:30px;height:30px;display:grid}@supports (color:color-mix(in lab,red,red)){.pr-banner .ic{background:color-mix(in oklch,var(--accent) 18%,transparent)}}.pr-banner .ic{color:var(--accent);flex-shrink:0}.pr-banner b{font-weight:600}.pr-grid .full{grid-column:1/-1}.pr-card{border-radius:var(--radius-card);box-shadow:var(--shadow);padding:18px 20px;position:relative}.pr-card.preview .pr-canvas{opacity:.72}.pr-card .head .title{color:var(--fg);letter-spacing:-.005em;font-weight:600}.pr-card .head .sub{color:var(--muted-fg);margin-top:2px;font-size:11.5px}.pr-card .preview-pill{letter-spacing:.08em;text-transform:uppercase;background:var(--muted-2);color:var(--muted-fg);border:1px solid var(--border-2);border-radius:999px;padding:3px 8px;font-family:JetBrains Mono,monospace;font-size:9.5px;font-weight:600}.pr-heatmap{grid-template-rows:repeat(7,1fr);grid-auto-flow:column;height:100px}[data-theme=dark] .pr-heatmap .cell{background:oklch(26% .008 270)}[data-theme=dark] .pr-heatmap .cell.l1{background:oklch(.35 .06 var(--accent-h))}[data-theme=dark] .pr-heatmap .cell.l2{background:oklch(.48 .1 var(--accent-h))}[data-theme=dark] .pr-heatmap .cell.l3{background:oklch(.62 .13 var(--accent-h))}[data-theme=dark] .pr-heatmap .cell.l4{background:oklch(.75 .15 var(--accent-h))}.pr-heatmap-legend{color:var(--muted-fg);justify-content:space-between;margin-top:12px;font-family:JetBrains Mono,monospace}.pr-heatmap-legend .scale{align-items:center;gap:4px;display:flex}.pr-heatmap-legend .scale span{border-radius:2px;width:10px;height:10px}.pr-line{height:140px;margin:4px 0 12px;position:relative}.pr-line svg{width:100%;height:100%;display:block}.pr-legend{color:var(--muted-fg);gap:12px;font-family:JetBrains Mono,monospace;font-size:10.5px;display:flex}.pr-legend .dot{vertical-align:middle;border-radius:2px;width:8px;height:8px;margin-right:5px;display:inline-block}.pr-course-list{flex-direction:column;gap:12px;margin-top:4px;display:flex}.pr-course-row{grid-template-columns:12px 1fr auto;align-items:center;gap:12px;display:grid}.pr-course-row .strip{border-radius:2px;width:4px;height:22px}.pr-course-row .body{flex-direction:column;gap:4px;min-width:0;display:flex}.pr-course-row .body .nm{color:var(--fg);text-overflow:ellipsis;white-space:nowrap;font-size:13px;font-weight:500;overflow:hidden}.pr-course-row .bar{background:var(--muted);border-radius:999px;height:6px;display:flex;overflow:hidden}.pr-course-row .bar .m1{background:var(--m1)}.pr-course-row .bar .m2{background:var(--m2)}.pr-course-row .bar .m3{background:var(--m3)}.pr-course-row .pct{color:var(--muted-fg);font-variant-numeric:tabular-nums;font-family:JetBrains Mono,monospace;font-size:11.5px}.pr-feature-bar{background:var(--card);border:1px solid var(--border);border-radius:var(--radius-card);justify-content:center;align-items:center;gap:14px;margin-top:22px;padding:16px 18px;font-size:13px;display:flex}.pr-feature-bar a{color:var(--accent);align-items:center;gap:4px;font-weight:500;text-decoration:none;display:inline-flex}.cl-dialog-stage{background:oklch(from var(--bg) calc(l - .04) c h);box-sizing:border-box;width:100%;height:100%;color:var(--fg);place-items:center;padding:24px;font-family:Inter,system-ui,sans-serif;display:grid;position:relative}.cl-dialog-stage:before{content:"";background:var(--fg);position:absolute;inset:0}@supports (color:color-mix(in lab,red,red)){.cl-dialog-stage:before{background:color-mix(in oklch,var(--fg) 30%,transparent)}}.cl-dialog-stage:before{-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px)}.cl-dialog{background:var(--card);border:1px solid var(--border);width:100%;max-width:520px;box-shadow:var(--shadow-pop);border-radius:16px;flex-direction:column;max-height:calc(100% - 32px);display:flex;position:relative;overflow:hidden}.cl-dialog.wide{max-width:560px}.cl-dialog .dl-head{border-bottom:1px solid var(--border);align-items:center;gap:10px;padding:16px 22px;display:flex}.cl-dialog .dl-head .ent-title{color:var(--fg);letter-spacing:-.005em;text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0;font-size:14px;font-weight:600;overflow:hidden}.cl-dialog .dl-head .x{appearance:none;width:26px;height:26px;color:var(--muted-fg);cursor:pointer;background:0 0;border:0;border-radius:5px;place-items:center;display:grid}.cl-dialog .dl-head .x:hover{background:var(--muted);color:var(--fg)}.cl-dialog .dl-body{padding:22px 24px;overflow-y:auto}.cl-dialog .dl-foot{border-top:1px solid var(--border);background:var(--card);justify-content:space-between;align-items:center;gap:12px;padding:14px 22px;display:flex}@supports (color:color-mix(in lab,red,red)){.cl-dialog .dl-foot{background:color-mix(in oklch,var(--card) 70%,var(--muted) 30%)}}.cl-typebadge{letter-spacing:.06em;text-transform:uppercase;border-radius:999px;flex-shrink:0;align-items:center;gap:5px;height:22px;padding:0 10px;font-family:JetBrains Mono,monospace;font-size:10.5px;font-weight:600;display:inline-flex}.cl-typebadge .d{background:currentColor;border-radius:50%;width:5px;height:5px}.cl-typebadge.course{background:var(--accent-soft);color:var(--accent-soft-fg)}.cl-typebadge.lecture{background:var(--info-soft);color:var(--info)}.cl-typebadge.assessment{color:oklch(42% .13 305);background:oklch(95% .04 305)}[data-theme=dark] .cl-typebadge.assessment{color:oklch(88% .1 305);background:oklch(30% .06 305)}.cl-share .body-text{color:var(--fg);margin-bottom:16px;font-size:13px;line-height:1.55}.cl-share .body-text b{font-weight:600}.cl-share .toggle-row{background:var(--muted);border:1px solid var(--border);border-radius:10px;justify-content:space-between;align-items:center;margin-bottom:14px;padding:12px 14px;display:flex}.cl-share .toggle-row .nm{color:var(--fg);font-size:13px;font-weight:500}.cl-share .toggle-row .sub{color:var(--muted-fg);margin-top:2px;font-size:11.5px}.cl-toggle{background:var(--input);cursor:pointer;border-radius:999px;flex-shrink:0;width:32px;height:18px;transition:all .14s;position:relative}.cl-toggle:after{content:"";background:var(--card);border-radius:50%;width:14px;height:14px;transition:all .14s;position:absolute;top:2px;left:2px;box-shadow:0 1px 2px oklch(0 0 0/.2)}.cl-toggle.on{background:var(--accent)}.cl-toggle.on:after{transform:translate(14px)}.cl-info-callout{background:var(--info-soft);border:1px solid var(--info);grid-template-columns:20px 1fr;gap:10px;padding:12px 14px;display:grid}@supports (color:color-mix(in lab,red,red)){.cl-info-callout{border:1px solid color-mix(in oklch,var(--info) 30%,transparent)}}.cl-info-callout{color:var(--info);border-radius:10px;font-size:12.5px;line-height:1.55}[data-theme=dark] .cl-info-callout{color:oklch(85% .1 240)}.cl-info-callout .ic{color:var(--info);padding-top:2px}.cl-info-callout b{font-weight:600}.cl-share-h2{letter-spacing:-.015em;margin:0 0 14px;font-family:Instrument Serif,serif;font-size:24px;font-weight:400}.cl-url-field{border:1px solid var(--border);background:var(--muted);border-radius:10px;align-items:center;gap:0;margin-bottom:10px;display:flex;overflow:hidden}.cl-url-field .url{min-width:0;color:var(--fg);text-overflow:ellipsis;white-space:nowrap;background:0 0;border:0;outline:none;flex:1;padding:12px 14px;font-family:JetBrains Mono,monospace;font-size:12.5px;overflow:hidden}.cl-url-field .copy{appearance:none;background:var(--card);border:0;border-left:1px solid var(--border);height:44px;color:var(--fg);font:inherit;cursor:pointer;align-items:center;gap:6px;padding:0 16px;font-size:13px;font-weight:500;transition:all .12s;display:inline-flex}.cl-url-field .copy:hover{background:var(--muted-2)}.cl-url-field .copy.copied{color:var(--success)}.cl-share-stats{color:var(--muted-fg);align-items:center;gap:10px;margin:12px 0 18px;font-size:12px;display:flex}.cl-share-stats .dot{opacity:.6;background:currentColor;border-radius:50%;width:2px;height:2px}.cl-share-stats .active-pill{background:var(--success-soft);color:var(--success);letter-spacing:.04em;text-transform:uppercase;border-radius:999px;align-items:center;gap:5px;padding:2px 8px;font-family:JetBrains Mono,monospace;font-size:10.5px;font-weight:600;display:inline-flex}.cl-share-stats .active-pill .d{background:currentColor;border-radius:50%;width:5px;height:5px}[data-theme=dark] .cl-share-stats .active-pill{color:oklch(85% .1 150)}.cl-link-preview{margin-top:6px}.cl-link-preview .lbl{letter-spacing:.08em;text-transform:uppercase;color:var(--muted-fg);margin-bottom:8px;font-family:JetBrains Mono,monospace;font-size:10px;font-weight:600}.cl-og-mini{aspect-ratio:1200/630;background:oklch(13% .012 270);background-image:radial-gradient(ellipse 80% 100% at 0 0,oklch(.3 .1 var(--og-h,235)/.55) 0,transparent 60%),radial-gradient(ellipse 100% 80% at 100% 100%,oklch(.22 .1 var(--og-h,235)/.45) 0,transparent 65%);color:oklch(97% .005 80);border:1px solid var(--border);border-radius:10px;width:100%;padding:14px 18px;position:relative;overflow:hidden}.cl-og-mini .brand{align-items:center;gap:6px;font-family:Instrument Serif,serif;font-size:12px;display:flex}.cl-og-mini .brand .m{color:oklch(13% .012 270);background:oklch(97% .005 80);border-radius:3px;place-items:center;width:14px;height:14px;padding-bottom:1px;font-size:10px;font-style:italic;display:grid}.cl-og-mini .badge{letter-spacing:.1em;text-transform:uppercase;background:oklch(.3 .12 var(--og-h,235)/.45);color:oklch(.85 .14 var(--og-h,235));border-radius:999px;align-items:center;gap:4px;margin-top:14px;padding:2px 7px;font-family:JetBrains Mono,monospace;font-size:7.5px;font-weight:600;display:inline-flex}.cl-og-mini .badge .d{background:currentColor;border-radius:50%;width:4px;height:4px}.cl-og-mini .t{letter-spacing:-.02em;max-width:60%;margin-top:6px;font-family:Instrument Serif,serif;font-size:22px;line-height:1.05}.cl-og-mini .meta{color:oklch(74% .012 80);font-size:9px;position:absolute;bottom:14px;left:18px}.cl-og-mini .wm{color:oklch(60% .01 80);letter-spacing:.06em;font-family:JetBrains Mono,monospace;font-size:8px;position:absolute;bottom:14px;right:18px}.cl-revoke-inline{background:var(--destructive-soft);border:1px solid var(--destructive);border-radius:9px;margin-top:12px;padding:12px 14px}@supports (color:color-mix(in lab,red,red)){.cl-revoke-inline{border:1px solid color-mix(in oklch,var(--destructive) 30%,transparent)}}[data-theme=dark] .cl-revoke-inline{color:oklch(85% .1 25)}.cl-revoke-inline .ti{color:var(--destructive);margin-bottom:4px;font-size:12.5px;font-weight:600}[data-theme=dark] .cl-revoke-inline .ti{color:oklch(88% .1 25)}.cl-revoke-inline .sb{color:var(--fg);margin-bottom:10px;font-size:12px;line-height:1.5}.cl-revoke-inline .ac{justify-content:flex-end;gap:8px;display:flex}.cl-btn{appearance:none;height:34px;font:inherit;cursor:pointer;letter-spacing:-.005em;white-space:nowrap;border:0;border-radius:8px;justify-content:center;align-items:center;gap:6px;padding:0 14px;font-size:13px;font-weight:500;transition:all .12s;display:inline-flex}.cl-btn.primary{background:var(--accent);color:var(--accent-fg)}.cl-btn.primary:hover{background:oklch(from var(--accent) calc(l - .04) c h)}.cl-btn.ghost{border:1px solid var(--border);color:var(--fg);background:0 0}.cl-btn.ghost:hover,.cl-btn.soft{background:var(--muted)}.cl-btn.soft{color:var(--fg);border:1px solid var(--border)}.cl-btn.soft:hover{background:var(--muted-2)}.cl-btn.destructive{background:var(--destructive);color:oklch(99% 0 0)}.cl-btn.destructive:hover{background:oklch(from var(--destructive) calc(l - .04) c h)}.cl-btn.destructive-ghost{color:var(--destructive);border:1px solid var(--destructive);background:0 0}@supports (color:color-mix(in lab,red,red)){.cl-btn.destructive-ghost{border:1px solid color-mix(in oklch,var(--destructive) 40%,transparent)}}.cl-btn.destructive-ghost:hover{background:var(--destructive-soft)}.cl-btn:disabled{opacity:.4;cursor:not-allowed}.cl-btn.sm{border-radius:6px;gap:4px;height:28px;padding:0 10px;font-size:12px}.cl-sem-row{border:1px solid var(--border);background:var(--card);border-radius:10px;grid-template-columns:18px 1fr auto auto;align-items:center;gap:12px;margin-bottom:8px;padding:12px 14px;display:grid}.cl-sem-row.editing{background:var(--muted);border-color:var(--accent)}.cl-sem-row .drag{color:var(--muted-fg);cursor:grab;place-items:center;display:grid}.cl-sem-row .info{min-width:0}.cl-sem-row .info .nm{color:var(--fg);letter-spacing:-.005em;text-overflow:ellipsis;white-space:nowrap;font-size:13.5px;font-weight:500;overflow:hidden}.cl-sem-row .info .dates{color:var(--muted-fg);margin-top:2px;font-family:JetBrains Mono,monospace;font-size:11.5px}.cl-sem-row .active-pill{background:var(--success-soft);color:var(--success);letter-spacing:.06em;text-transform:uppercase;border-radius:999px;align-items:center;gap:5px;padding:3px 9px;font-family:JetBrains Mono,monospace;font-size:10px;font-weight:600;display:inline-flex}.cl-sem-row .active-pill .d{background:currentColor;border-radius:50%;width:5px;height:5px}[data-theme=dark] .cl-sem-row .active-pill{color:oklch(85% .1 150)}.cl-sem-row .dots{width:30px;height:30px;color:var(--muted-fg);cursor:pointer;background:0 0;border:0;border-radius:6px;place-items:center;display:grid}.cl-sem-row .dots:hover{background:var(--muted-2);color:var(--fg)}.cl-sem-new-action{border:1px dashed var(--border);cursor:pointer;color:var(--muted-fg);background:0 0;border-radius:10px;align-items:center;gap:8px;width:100%;margin-bottom:12px;padding:10px 14px;font-size:13px;font-weight:500;display:flex}.cl-sem-new-action:hover{background:var(--muted);color:var(--fg);border-style:solid}.cl-sem-edit-form{background:var(--card);flex-direction:column;gap:10px;padding:14px;display:flex}@supports (color:color-mix(in lab,red,red)){.cl-sem-edit-form{background:color-mix(in oklch,var(--card) 60%,var(--muted) 40%)}}.cl-sem-edit-form{border:1px dashed var(--accent);border-radius:10px;margin:-4px 0 8px}.cl-sem-edit-form .row{align-items:center;gap:8px;display:flex}.cl-input{border:1px solid var(--input);background:var(--card);height:32px;color:var(--fg);font:inherit;border-radius:7px;outline:none;width:100%;min-width:0;padding:0 10px;font-size:13px}.cl-input:focus{border-color:var(--accent);box-shadow:0 0 0 3px var(--ring)}.cl-input.code{font-family:JetBrains Mono,monospace}.cl-sem-edit-form .row.dates{grid-template-columns:1fr auto 1fr;align-items:center;gap:6px;display:grid}.cl-sem-edit-form .row.dates .arrow{color:var(--muted-fg);padding:0 4px;font-size:12px}.cl-sem-edit-form .actions{justify-content:flex-end;gap:6px;display:flex}.cl-sem-edit-form .lbl-line{letter-spacing:.08em;text-transform:uppercase;color:var(--muted-fg);font-family:JetBrains Mono,monospace;font-size:10px;font-weight:600}.cl-kebab-menu{background:var(--card);border:1px solid var(--border);min-width:200px;box-shadow:var(--shadow-pop);z-index:5;border-radius:10px;padding:4px;position:absolute;top:calc(100% + 4px);right:0}.cl-kebab-menu .item{width:100%;font:inherit;color:var(--fg);cursor:pointer;text-align:left;background:0 0;border:0;border-radius:6px;align-items:center;gap:8px;padding:8px 10px;font-size:12.5px;display:flex}.cl-kebab-menu .item:hover{background:var(--muted)}.cl-kebab-menu .item.danger{color:var(--destructive)}.cl-kebab-menu .item.danger:hover{background:var(--destructive-soft)}.cl-kebab-menu .sep{background:var(--border);height:1px;margin:4px 6px}.ie-stage{background:var(--bg);height:100%;color:var(--fg);flex-direction:column;padding:24px;font-family:Inter,system-ui,sans-serif;display:flex}.ie-stage h3{letter-spacing:-.005em;margin:0 0 4px;font-size:13px;font-weight:600}.ie-stage h3 .state{color:var(--muted-fg);letter-spacing:.06em;text-transform:uppercase;margin-left:8px;font-family:JetBrains Mono,monospace;font-size:10px;font-weight:600}.ie-stage p.lead{color:var(--muted-fg);margin:0 0 16px;font-size:11.5px;line-height:1.5}.ie-card{background:var(--card);border:1px solid var(--border);border-radius:10px;padding:14px 16px;position:relative}.ie-card.editing{border-color:var(--accent);box-shadow:0 0 0 3px var(--ring)}.ie-kind{align-items:center;gap:8px;margin-bottom:10px;display:flex}.ie-kind .pill{letter-spacing:.08em;color:var(--info);background:var(--info-soft);border-radius:5px}.ie-edited-badge,.ie-kind .pill{text-transform:uppercase;padding:2px 7px;font-family:JetBrains Mono,monospace;font-size:9.5px;font-weight:600}.ie-edited-badge{background:var(--muted);color:var(--muted-fg);letter-spacing:.06em;border:1px solid var(--border-2);border-radius:999px;align-items:center;gap:4px;display:inline-flex}.ie-edited-badge.new{background:var(--success-soft);color:var(--success);border-color:var(--success)}@supports (color:color-mix(in lab,red,red)){.ie-edited-badge.new{border-color:color-mix(in oklch,var(--success) 30%,transparent)}}.ie-edited-badge.new{animation:ie-pop .5s}[data-theme=dark] .ie-edited-badge.new{color:oklch(85% .1 150)}@keyframes ie-pop{0%{opacity:0;transform:scale(.9)}to{opacity:1;transform:scale(1)}}.ie-text-row{padding-right:32px;position:relative}.ie-text-row .pencil{width:26px;height:26px;color:var(--muted-fg);cursor:pointer;opacity:0;background:0 0;border:0;border-radius:5px;place-items:center;transition:opacity .12s,background .12s;display:grid;position:absolute;top:0;right:0}.ie-text-row.touch .pencil,.ie-text-row:hover .pencil{opacity:1}.ie-text-row .pencil:hover{background:var(--muted);color:var(--fg)}.ie-prompt{color:var(--fg);letter-spacing:-.005em;margin-bottom:8px;font-size:14.5px;font-weight:500;line-height:1.5}.ie-mini-row{color:var(--muted-fg);margin-bottom:8px;font-size:12px}.ie-mini-row b{color:var(--fg);font-weight:500}.ie-field{flex-direction:column;gap:4px;margin-bottom:10px;display:flex}.ie-field .lbl{letter-spacing:.08em;text-transform:uppercase;color:var(--muted-fg);font-family:JetBrains Mono,monospace;font-size:9.5px;font-weight:600}.ie-input,.ie-textarea{box-sizing:border-box;border:1px solid var(--input);background:var(--card);width:100%;color:var(--fg);font:inherit;resize:none;border-radius:7px;outline:none;padding:8px 10px;font-size:13px;line-height:1.5}.ie-input:focus,.ie-textarea:focus{border-color:var(--accent);box-shadow:0 0 0 3px var(--ring)}.ie-distractors{flex-direction:column;gap:6px;display:flex}.ie-distractor{grid-template-columns:22px 1fr 24px;align-items:center;gap:8px;display:grid}.ie-distractor .ltr{background:var(--muted-2);width:22px;height:22px;color:var(--muted-fg);border-radius:5px;place-items:center;font-family:JetBrains Mono,monospace;font-size:11px;font-weight:600;display:grid}.ie-distractor.correct .ltr{background:var(--success);color:oklch(99% 0 0)}.ie-distractor .remove{width:24px;height:24px;color:var(--muted-fg);cursor:pointer;background:0 0;border:0;border-radius:4px;place-items:center;display:grid}.ie-distractor .remove:hover{color:var(--destructive);background:var(--destructive-soft)}.ie-add-option{appearance:none;border:1px dashed var(--border);color:var(--muted-fg);font:inherit;cursor:pointer;background:0 0;border-radius:6px;align-items:center;gap:4px;padding:6px 10px;font-size:11.5px;font-weight:500;display:inline-flex}.ie-add-option:hover{color:var(--accent);border-color:var(--accent)}.ie-edit-foot{border-top:1px solid var(--border);align-items:center;gap:8px;margin-top:12px;padding-top:10px;display:flex}.ie-edit-foot .shortcut{color:var(--muted-fg);margin-left:auto;font-family:JetBrains Mono,monospace;font-size:10.5px}.ie-edit-foot .shortcut .kbd{background:var(--muted);border:1px solid var(--border-2);color:var(--fg);border-radius:4px;margin:0 1px;padding:1px 4px;font-size:10px;display:inline-block}.te-root{background:var(--bg);width:100%;height:100%;color:var(--fg);flex-direction:column;font-family:Inter,system-ui,sans-serif;display:flex;overflow:hidden}.te-top{border-bottom:1px solid var(--border);background:var(--card);grid-template-columns:280px 1fr 320px;align-items:center;gap:16px;height:64px;padding:0 22px;display:grid}.te-top .left{align-items:center;gap:10px;min-width:0;display:flex}.te-top .back-btn{appearance:none;width:30px;height:30px;color:var(--muted-fg);cursor:pointer;background:0 0;border:0;border-radius:7px;flex-shrink:0;place-items:center;display:grid}.te-top .back-btn:hover{background:var(--muted);color:var(--fg)}.te-top .left .lbl{flex-direction:column;gap:2px;min-width:0;display:flex}.te-top .left .lbl .crumb{letter-spacing:.06em;text-transform:uppercase;color:var(--muted-fg);font-family:JetBrains Mono,monospace;font-size:10px;font-weight:600}.te-top .left .lbl .title{color:var(--fg);letter-spacing:-.005em;text-overflow:ellipsis;white-space:nowrap;font-size:13.5px;font-weight:500;overflow:hidden}.te-player{background:var(--muted);border:1px solid var(--border);border-radius:999px;grid-template-columns:auto 1fr auto;align-items:center;gap:14px;padding:6px 12px;display:grid}.te-player .ctrls{align-items:center;gap:4px;display:flex}.te-player .seek{width:28px;height:28px;color:var(--muted-fg);cursor:pointer;background:0 0;border:0;border-radius:6px;place-items:center;display:grid}.te-player .seek:hover{background:var(--card);color:var(--fg)}.te-player .play{background:var(--accent);width:32px;height:32px;color:var(--accent-fg);cursor:pointer;border:0;border-radius:50%;place-items:center;display:grid}.te-player .scrub{align-items:center;gap:8px;display:flex}.te-player .scrub .time{color:var(--muted-fg);font-variant-numeric:tabular-nums;white-space:nowrap;font-family:JetBrains Mono,monospace;font-size:10.5px}.te-player .scrub .track{background:var(--border-2);border-radius:999px;flex:1;min-width:80px;height:3px;position:relative}.te-player .scrub .track .fill{background:var(--accent);border-radius:999px;position:absolute;top:0;bottom:0;left:0}.te-player .scrub .track .thumb{background:var(--accent);border-radius:50%;width:10px;height:10px;position:absolute;top:50%;transform:translate(-50%,-50%)}.te-player .right{align-items:center;gap:6px;display:flex}.te-player .speed{color:var(--muted-fg);background:var(--card);border:1px solid var(--border);border-radius:4px;padding:3px 7px;font-family:JetBrains Mono,monospace;font-size:10.5px;font-weight:500}.te-top .right{justify-content:flex-end;align-items:center;gap:10px;display:flex}.te-save-status{color:var(--muted-fg);align-items:center;gap:5px;font-family:JetBrains Mono,monospace;font-size:11px;display:inline-flex}.te-save-status.saved{color:var(--success)}.te-save-status .d{background:currentColor;border-radius:50%;width:6px;height:6px}.te-body{flex-direction:column;flex:1;align-items:center;padding:32px 24px 80px;display:flex;position:relative;overflow-y:auto}.te-doc{flex-direction:column;gap:14px;width:100%;max-width:720px;display:flex}.te-doc .meta{color:var(--muted-fg);letter-spacing:.04em;margin-bottom:4px;font-family:JetBrains Mono,monospace;font-size:11px}.te-doc-block{grid-template-columns:56px 1fr;gap:16px;padding:8px 0;display:grid;position:relative}.te-doc-block .ts{color:var(--muted-fg);letter-spacing:.02em;padding-top:6px;font-family:JetBrains Mono,monospace;font-size:11px}.te-doc-block .ts.active{color:var(--accent);font-weight:600}.te-doc-block textarea{width:100%;font:inherit;color:var(--fg);resize:none;caret-color:var(--accent);background:0 0;border:0;outline:none;padding:0;font-family:Inter,system-ui,sans-serif;font-size:16px;line-height:1.7}.te-doc-block textarea:focus{background:var(--accent-soft);border-radius:6px;margin:-6px -10px;padding:6px 10px}.te-confirm-inline{background:var(--card);border:1px solid var(--border);width:380px;box-shadow:var(--shadow-pop);z-index:5;border-radius:10px;padding:14px 16px;position:absolute;top:calc(100% + 6px);right:22px}.te-confirm-inline .h{color:var(--fg);margin-bottom:6px;font-size:13px;font-weight:600}.te-confirm-inline .b{color:var(--muted-fg);margin-bottom:12px;font-size:12px;line-height:1.5}.te-confirm-inline .ac{justify-content:flex-end;gap:6px;display:flex}.te-regen{background:var(--bg);position:absolute;inset:0}@supports (color:color-mix(in lab,red,red)){.te-regen{background:color-mix(in oklch,var(--bg) 88%,transparent)}}.te-regen{-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);z-index:10;place-items:center;display:grid}.te-regen .box{background:var(--card);border:1px solid var(--border);text-align:center;box-shadow:var(--shadow-pop);border-radius:14px;max-width:380px;padding:36px 44px}.te-regen .box .sp{color:var(--accent);margin-bottom:14px;display:inline-block}.te-regen .box h4{letter-spacing:-.01em;margin:0 0 4px;font-family:Instrument Serif,serif;font-size:22px;font-weight:400}.te-regen .box .phase{color:var(--muted-fg);letter-spacing:.04em;justify-content:center;align-items:center;gap:8px;margin-top:12px;font-family:JetBrains Mono,monospace;font-size:11.5px;display:flex}.te-regen .box .phase .d{background:var(--accent);border-radius:50%;width:6px;height:6px;animation:te-pulse 1.2s ease-in-out infinite}@keyframes te-pulse{0%,to{opacity:1;transform:scale(1)}50%{opacity:.4;transform:scale(.7)}}.crd-session-mini{background:var(--bg);width:100%;height:100%;color:var(--fg);flex-direction:column;font-family:Inter,system-ui,sans-serif;display:flex;position:relative;overflow:hidden}.crd-session-mini .top{border-bottom:1px solid var(--border);background:var(--card);grid-template-columns:1fr auto 1fr;align-items:center;gap:10px;height:48px;padding:0 18px;display:grid}.crd-session-mini .top .crumb{color:var(--muted-fg);align-items:center;gap:6px;font-size:11.5px;display:inline-flex}.crd-session-mini .top .crumb .strip{border-radius:2px;width:4px;height:14px}.crd-session-mini .top .prog{flex-direction:column;align-items:center;gap:4px;width:240px;display:flex}.crd-session-mini .top .prog .bar{background:var(--muted-2);border-radius:999px;width:100%;height:3px;overflow:hidden}.crd-session-mini .top .prog .bar .fill{background:var(--accent);border-radius:inherit;height:100%}.crd-session-mini .top .prog .num{color:var(--muted-fg);letter-spacing:.06em;font-family:JetBrains Mono,monospace;font-size:10px}.crd-session-mini .main{flex-direction:column;flex:1;justify-content:center;align-items:center;gap:18px;padding:24px;display:flex}.crd-session-mini .prompt{letter-spacing:-.015em;text-align:center;max-width:560px;color:var(--fg);font-family:Instrument Serif,serif;font-size:26px;line-height:1.3}.crd-session-mini .answer-box{background:var(--success-soft);border:1px dashed var(--success);width:100%;max-width:560px;padding:14px 18px}@supports (color:color-mix(in lab,red,red)){.crd-session-mini .answer-box{border:1px dashed color-mix(in oklch,var(--success) 50%,transparent)}}.crd-session-mini .answer-box{color:var(--fg);border-radius:10px;font-size:14px}.crd-session-mini .answer-box .lbl{letter-spacing:.08em;text-transform:uppercase;color:var(--success);margin-bottom:4px;font-family:JetBrains Mono,monospace;font-size:10px;font-weight:600}[data-theme=dark] .crd-session-mini .answer-box .lbl{color:oklch(85% .1 150)}.crd-rating-row{background:var(--card);border:1px solid var(--border);box-shadow:var(--shadow);border-radius:999px;align-items:center;gap:6px;margin-top:4px;padding:6px 8px;animation:crd-fade-in .2s ease-out;display:inline-flex}@keyframes crd-fade-in{0%{opacity:0;transform:translateY(4px)}to{opacity:1;transform:translateY(0)}}.crd-rating-row .lbl{color:var(--muted-fg);letter-spacing:-.005em;padding:0 6px 0 4px;font-size:11.5px;font-weight:500}.crd-rating-row button{appearance:none;background:var(--muted);height:28px;font:inherit;color:var(--fg);cursor:pointer;border:0;border-radius:999px;align-items:center;gap:5px;padding:0 11px;font-size:12px;font-weight:500;transition:all .12s;display:inline-flex}.crd-rating-row button:hover{background:var(--muted-2)}.crd-rating-row button.bad:hover{background:var(--destructive-soft);color:var(--destructive)}.crd-rating-row button.great:hover{background:var(--success-soft);color:var(--success)}.crd-rating-row button .gl{font-size:13px;line-height:1}.crd-nextdue{color:var(--muted-fg);letter-spacing:.04em;margin-top:6px;font-family:JetBrains Mono,monospace;font-size:11px}.crd-nextdue b{color:var(--fg);font-weight:600}.crd-rate-buttons{flex-wrap:wrap;justify-content:center;gap:8px;margin-top:8px;display:flex}.crd-rate-btn{appearance:none;border:0;border:1px solid var(--border);background:var(--card);min-width:110px;height:56px;font:inherit;cursor:pointer;border-radius:12px;flex-direction:column;align-items:center;gap:2px;padding:0 22px;display:flex}.crd-rate-btn .lbl{color:var(--fg);font-size:13.5px;font-weight:600}.crd-rate-btn .sec{color:var(--muted-fg);font-family:JetBrains Mono,monospace;font-size:10.5px}.crd-rate-btn.good{border-color:var(--success);background:var(--success-soft)}.crd-rate-btn.good .lbl{color:var(--success)}[data-theme=dark] .crd-rate-btn.good .lbl{color:oklch(85% .1 150)}.pat-sheet{background:var(--bg);width:100%;height:100%;color:var(--fg);box-sizing:border-box;padding:32px;font-family:Inter,system-ui,sans-serif;overflow:hidden auto}.pat-sheet>h1{letter-spacing:-.02em;margin:0 0 6px;font-family:Instrument Serif,serif;font-size:30px;font-weight:400}.pat-sheet>.lead{color:var(--muted-fg);max-width:640px;margin:0 0 24px;font-size:13px;line-height:1.55}.pat-grid{grid-template-columns:1fr 1fr;gap:18px;display:grid}.pat-block{background:var(--card);border:1px solid var(--border);border-radius:var(--radius-card);box-shadow:var(--shadow);padding:18px 20px}.pat-block .num-lbl{letter-spacing:.1em;text-transform:uppercase;color:var(--muted-fg);margin-bottom:4px;font-family:JetBrains Mono,monospace;font-size:10px;font-weight:600}.pat-block h3{letter-spacing:-.005em;margin:0 0 4px;font-size:14px;font-weight:600}.pat-block .desc{color:var(--muted-fg);margin:0 0 14px;font-size:12px;line-height:1.5}.pat-block .showcase{background:var(--bg);padding:16px}@supports (color:color-mix(in lab,red,red)){.pat-block .showcase{background:color-mix(in oklch,var(--bg) 60%,var(--muted) 40%)}}.pat-block .showcase{border:1px dashed var(--border-2);border-radius:9px;gap:8px}.pat-block .showcase,.pat-notes{flex-direction:column;display:flex}.pat-notes{gap:4px;margin:12px 0 0;padding:0;list-style:none}.pat-notes li{color:var(--muted-fg);padding-left:14px;font-size:11.5px;line-height:1.45;position:relative}.pat-notes li:before{content:"·";color:var(--muted-fg);position:absolute;top:0;left:4px}.pat-toast{background:var(--fg);color:var(--bg);box-shadow:var(--shadow-pop);border-radius:10px;align-items:center;gap:10px;width:max-content;max-width:100%;padding:10px 14px;font-size:12.5px;display:flex}.pat-toast .gl{font-size:14px;line-height:1;display:inline-flex}.pat-toast .gl.success{color:var(--success)}.pat-toast .gl.info{color:var(--info)}.pat-toast .gl.warning{color:var(--warning)}.pat-toast .gl.danger{color:var(--destructive)}.pat-toast .lbl{flex:1}.pat-toast .action{color:oklch(.78 .1 var(--accent-h));font:inherit;text-underline-offset:3px;cursor:pointer;background:0 0;border:0;padding:0;font-size:12px;font-weight:600;text-decoration:underline}.pat-toast .sp{opacity:.6;border:1.5px solid;border-right:1.5px solid #0000;border-radius:50%;width:12px;height:12px;animation:sh-spin .7s linear infinite}.pat-empty{text-align:center;padding:18px 12px}.pat-empty .ic-bg{background:var(--accent-soft);width:36px;height:36px;color:var(--accent-soft-fg);border-radius:9px;place-items:center;margin:0 auto 10px;display:grid}.pat-empty .ti{color:var(--fg);margin-bottom:4px;font-size:13px;font-weight:600}.pat-empty .b{color:var(--muted-fg);max-width:220px;margin-bottom:10px;margin-left:auto;margin-right:auto;font-size:11.5px;line-height:1.5}.pat-skel-block{flex-direction:column;gap:8px;display:flex}.pat-skel-block .row{border-radius:4px;height:10px}.pat-skel-block .row.w1{width:60%}.pat-skel-block .row.w2{width:85%}.pat-skel-block .row.w3{width:40%}.pat-skel{background:linear-gradient(90deg,var(--muted) 0,var(--muted-2) 40%,var(--muted) 80%);background-size:200% 100%;animation:sh-shimmer 1.5s linear infinite}.pat-errbox{text-align:center;background:var(--card);border:1px solid var(--border);border-radius:10px;padding:16px}.pat-errbox .ti{letter-spacing:-.01em;margin-bottom:4px;font-family:Instrument Serif,serif;font-size:18px}.pat-errbox .b{color:var(--muted-fg);margin-bottom:10px;font-size:11.5px;line-height:1.5}.pat-errbox .ac{justify-content:center;gap:6px;margin-bottom:6px;display:flex}.pat-errbox .code{color:var(--muted-fg);font-family:JetBrains Mono,monospace;font-size:10px}.pat-ai{background:var(--warning-soft);border:1px solid var(--warning);grid-template-columns:28px 1fr;gap:10px;padding:12px 14px;display:grid}@supports (color:color-mix(in lab,red,red)){.pat-ai{border:1px solid color-mix(in oklch,var(--warning) 50%,transparent)}}.pat-ai{border-radius:9px}.pat-ai .ic-bg{background:var(--warning);color:oklch(18% .05 75);border-radius:7px;place-items:center;width:28px;height:28px;display:grid}[data-theme=dark] .pat-ai .ic-bg{color:oklch(18% .05 75);background:oklch(65% .13 75)}.pat-ai .nm{margin-bottom:2px;font-size:12.5px;font-weight:600}.pat-ai .b{color:var(--fg);font-size:11.5px;line-height:1.5}.pat-ai .lnk{color:var(--fg);margin-top:6px;font-size:11px;font-weight:500;display:inline-block}.pat-confirm{background:var(--card);border:1px solid var(--border);border-radius:10px;padding:14px}.pat-confirm .h{letter-spacing:-.01em;margin-bottom:4px;font-family:Instrument Serif,serif;font-size:18px}.pat-confirm .b{color:var(--muted-fg);margin-bottom:12px;font-size:11.5px;line-height:1.55}.pat-confirm .ac{justify-content:flex-end;gap:6px;display:flex}.stdy{flex-direction:column;gap:24px;max-width:720px;margin:0 auto;display:flex}.stdy-section-title{letter-spacing:.12em;text-transform:uppercase;color:var(--fg-muted);align-items:center;gap:8px;font-family:JetBrains Mono,monospace;font-size:10px;font-weight:500;display:flex}.stdy-section-sub{color:var(--fg-muted);margin:-8px 0 4px;font-size:12px;line-height:1.5}.srb{font:inherit;background:var(--card);border:1px solid var(--border);height:32px;color:var(--fg);cursor:pointer;white-space:nowrap;border-radius:6px;align-items:center;gap:6px;padding:0 12px;font-size:12.5px;font-weight:500;transition:background .12s,border-color .12s;display:inline-flex}.srb:hover:not(:disabled){background:var(--muted);border-color:var(--fg-muted)}.srb:disabled{opacity:.55;cursor:not-allowed}.srb.hero{background:var(--accent);height:44px;color:var(--accent-fg);border-color:#0000;border-radius:10px;padding:0 22px;font-size:14.5px;font-weight:500}.srb.hero:hover:not(:disabled){background:var(--accent-hover)}.srb .spin{border:1.5px solid;border-top:1.5px solid #0000;border-radius:50%;flex-shrink:0;width:12px;height:12px;animation:srb-spin .8s linear infinite;display:inline-block}@keyframes srb-spin{to{transform:rotate(1turn)}}.pl{flex-direction:column;gap:12px;display:flex}.pl-header{align-items:baseline;gap:8px;display:flex}.pl-title{letter-spacing:.12em;text-transform:uppercase;color:var(--fg-muted);font-family:JetBrains Mono,monospace;font-size:10px;font-weight:500}.pl-grid{grid-template-columns:repeat(3,1fr);gap:10px;display:grid}@media (max-width:580px){.pl-grid{grid-template-columns:1fr}}.pl-tile{background:var(--card);border:1px solid var(--border);border-radius:12px;flex-direction:column;gap:10px;padding:14px 16px;transition:border-color .12s;display:flex}.pl-tile.empty{opacity:.5}.pl-tile .icon-row{align-items:flex-start;gap:10px;display:flex}.pl-tile .ic{border-radius:7px;flex-shrink:0;place-items:center;width:28px;height:28px;margin-top:1px;display:grid}.pl-tile .info{flex:1;min-width:0}.pl-tile .lv-name{color:var(--fg);font-size:12.5px;font-weight:600;line-height:1.3}.pl-tile .lv-desc{color:var(--fg-muted);margin-top:2px;font-size:11.5px}.pl-tile .bottom{justify-content:space-between;align-items:center;gap:8px;display:flex}.pl-tile .card-count{color:var(--fg-muted);font-size:11.5px}.pl-tile .launch{font:inherit;border:1px solid var(--border);color:var(--fg);cursor:pointer;background:0 0;border-radius:6px;align-items:center;gap:4px;padding:4px 10px;font-size:11.5px;font-weight:500;transition:background .12s,border-color .12s;display:inline-flex}.pl-tile .launch:hover:not(:disabled){background:var(--muted);border-color:var(--fg-muted)}.pl-tile .launch:disabled{opacity:.45;cursor:not-allowed}.pl-tile .launch .spin{border:1.5px solid;border-top:1.5px solid #0000;border-radius:50%;width:10px;height:10px;animation:srb-spin .8s linear infinite;display:inline-block}.pl-tile.l1{border-color:oklch(86% .1 75)}.pl-tile.l1 .ic{background:var(--m1-soft);color:var(--m1-fg)}.pl-tile.l1 .launch{color:var(--m1-fg);border-color:oklch(84% .09 75)}.pl-tile.l1 .launch:hover:not(:disabled){background:var(--m1-soft)}[data-theme=dark] .pl-tile.l1{border-color:oklch(44% .09 75)}[data-theme=dark] .pl-tile.l1 .launch{color:oklch(85% .1 75);border-color:oklch(44% .09 75)}[data-theme=dark] .pl-tile.l1 .launch:hover:not(:disabled){background:var(--m1-soft)}.pl-tile.l2{border-color:oklch(82% .1 240)}.pl-tile.l2 .ic{background:var(--m2-soft);color:var(--m2-fg)}.pl-tile.l2 .launch{color:var(--m2-fg);border-color:oklch(80% .09 240)}.pl-tile.l2 .launch:hover:not(:disabled){background:var(--m2-soft)}[data-theme=dark] .pl-tile.l2{border-color:oklch(40% .08 240)}[data-theme=dark] .pl-tile.l2 .launch{color:oklch(85% .08 240);border-color:oklch(40% .08 240)}[data-theme=dark] .pl-tile.l2 .launch:hover:not(:disabled){background:var(--m2-soft)}.pl-tile.l3{border-color:oklch(.8 .11 var(--accent-h))}.pl-tile.l3 .ic{background:var(--accent-soft);color:var(--accent-soft-fg)}.pl-tile.l3 .launch{border-color:oklch(.78 .1 var(--accent-h));color:var(--accent-soft-fg)}.pl-tile.l3 .launch:hover:not(:disabled){background:var(--accent-soft)}[data-theme=dark] .pl-tile.l3,[data-theme=dark] .pl-tile.l3 .launch{border-color:oklch(.4 .1 var(--accent-h))}[data-theme=dark] .pl-tile.l3 .launch{color:oklch(.85 .08 var(--accent-h))}[data-theme=dark] .pl-tile.l3 .launch:hover:not(:disabled){background:var(--accent-soft)}.crs-heatmap{background:var(--card);border:1px solid var(--border);border-radius:12px;overflow:hidden}.crs-heatmap .hm-head{border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;padding:12px 16px 10px;display:flex}.crs-heatmap .hm-head-title{color:var(--fg);font-size:14px;font-weight:600}.hm-fix-btn{font:inherit;cursor:pointer;background:var(--destructive-soft);color:var(--destructive);border:1px solid oklch(from var(--destructive) l c h/.25);white-space:nowrap;border-radius:6px;padding:4px 10px;font-size:12px;font-weight:500;transition:background .12s}.hm-fix-btn:hover{background:oklch(from var(--destructive-soft) calc(l - .03) c h)}.hm-fix-btn:disabled{opacity:.6;cursor:not-allowed}.hm-spin{border:1.5px solid;border-top:1.5px solid #0000;border-radius:50%;width:11px;height:11px;animation:hm-spin .8s linear infinite;display:inline-block}@keyframes hm-spin{to{transform:rotate(1turn)}}.hm-stats-row{border-bottom:1px solid var(--border-2);gap:10px;padding:8px 16px 6px;display:flex}.hm-stat{font-family:JetBrains Mono,monospace;font-size:11px;font-weight:500}.hm-stat.mastered{color:var(--m3-fg)}.hm-stat.weak{color:var(--destructive)}.hm-stat.unstarted{color:var(--fg-muted)}.hm-body{padding:4px 0 8px}.crs-heatmap-lec{padding:8px 16px 6px}.crs-heatmap-lec+.crs-heatmap-lec{border-top:1px solid var(--border-2)}.crs-heatmap-lec-nm{text-transform:uppercase;letter-spacing:.08em;color:var(--fg-muted);white-space:nowrap;text-overflow:ellipsis;margin-bottom:6px;font-size:10.5px;font-weight:600;overflow:hidden}.crs-hm-pills{flex-wrap:wrap;gap:4px;display:flex}.crs-hm-pill{text-overflow:ellipsis;white-space:nowrap;cursor:default;border-radius:4px;max-width:170px;padding:2px 8px;font-size:11.5px;line-height:1.6;overflow:hidden}.crs-hm-pill.mastered{background:var(--success-soft);color:var(--m3-fg)}.crs-hm-pill.learning{background:var(--warning-soft);color:var(--warning-fg)}.crs-hm-pill.weak{background:var(--destructive-soft);color:var(--destructive)}.crs-hm-pill.unstarted{background:var(--muted-2);color:var(--fg-muted)}[data-theme=dark] .crs-hm-pill.unstarted{background:oklch(22% .005 270)}.crs-style-card{background:var(--card);border:1px solid var(--border);border-radius:12px;overflow:hidden}.crs-style-card .sc-head{border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;padding:12px 16px 10px;display:flex}.crs-style-card .sc-title{color:var(--fg);font-size:14px;font-weight:600}.crs-style-card .sc-body{padding:12px 16px 14px}.crs-style-view{flex-direction:column;gap:8px;display:flex}.crs-style-view .profile-nm{color:var(--fg);font-size:13.5px;font-weight:500}.crs-style-view .profile-desc{color:var(--fg-muted);font-size:12px}.crs-style-view .prof-notes{color:var(--fg);background:var(--muted);border:1px solid var(--border-2);white-space:pre-wrap;border-radius:6px;margin-top:2px;padding:8px 10px;font-size:12.5px;line-height:1.5}.crs-style-select-wrap{position:relative}.crs-style-select-wrap:after{content:"";border-left:4px solid #0000;border-right:4px solid #0000;border-top:5px solid var(--fg-muted);pointer-events:none;width:0;height:0;position:absolute;top:50%;right:10px;transform:translateY(-50%)}.crs-style-select{appearance:none;background:var(--input);border:1px solid var(--border);border-radius:var(--r-input);width:100%;color:var(--fg);font:inherit;cursor:pointer;outline:none;padding:7px 28px 7px 10px;font-size:13.5px;transition:border-color .12s}.crs-style-select:focus{border-color:var(--accent)}.crs-style-textarea{box-sizing:border-box;resize:vertical;background:var(--input);border:1px solid var(--border);border-radius:var(--r-input);width:100%;color:var(--fg);font:inherit;outline:none;min-height:72px;padding:7px 10px;font-size:13px;line-height:1.5;transition:border-color .12s}.crs-style-textarea:focus{border-color:var(--accent)}.crs-style-actions{gap:6px;margin-top:10px;display:flex}.chat-fab{z-index:40;background:var(--fg);width:48px;height:48px;color:var(--bg);cursor:pointer;border:0;border-radius:50%;justify-content:center;align-items:center;transition:opacity .15s,transform .15s;display:flex;position:fixed;bottom:24px;right:24px;box-shadow:0 4px 16px oklch(0 0 0/.2)}.chat-fab.hidden{opacity:0;pointer-events:none;transform:scale(.8)}.chat-fab:hover{opacity:.85}.chat-panel{z-index:40;background:var(--card);border-left:1px solid var(--border);border-top:1px solid var(--border);opacity:0;pointer-events:none;border-radius:16px 0 0;flex-direction:column;width:100%;max-width:400px;height:0;transition:height .25s,opacity .2s;display:flex;position:fixed;bottom:0;right:0;overflow:hidden;box-shadow:-4px -4px 24px oklch(0 0 0/.08)}.chat-panel.open{opacity:1;pointer-events:auto;height:min(600px,80vh)}.chat-head{border-bottom:1px solid var(--border);flex-shrink:0;align-items:center;gap:8px;padding:12px 14px;display:flex}.chat-head .title{color:var(--fg);font-size:13.5px;font-weight:600}.chat-head .lec-nm{color:var(--fg-muted);text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0;font-size:12px;display:none;overflow:hidden}@media (min-width:480px){.chat-head .lec-nm{display:block}}.chat-head-actions{flex-shrink:0;gap:4px;margin-left:auto;display:flex}.chat-head-actions button{appearance:none;cursor:pointer;color:var(--fg-muted);background:0 0;border:0;border-radius:6px;justify-content:center;align-items:center;width:28px;height:28px;transition:color .1s,background .1s;display:flex}.chat-head-actions button:hover{color:var(--fg);background:var(--muted)}.chat-msgs{flex-direction:column;flex:1;gap:10px;min-height:0;padding:12px 14px;display:flex;overflow-y:auto}.chat-empty{text-align:center;height:100%;color:var(--fg-muted);flex-direction:column;justify-content:center;align-items:center;gap:14px;display:flex}.chat-empty .ic{opacity:.3}.chat-empty p{margin:0;font-size:12.5px;line-height:1.6}.chat-quick-list{flex-direction:column;gap:6px;width:100%;display:flex}.chat-quick-btn{appearance:none;border:1px solid var(--border);background:var(--card);color:var(--fg-muted);cursor:pointer;text-align:left;border-radius:8px;padding:7px 12px;font-family:inherit;font-size:12px;transition:background .1s,color .1s}.chat-quick-btn:hover{background:var(--muted);color:var(--fg)}.chat-msg{align-items:flex-start;gap:8px;display:flex}.chat-msg.user{flex-direction:row-reverse}.chat-avatar{border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:24px;height:24px;margin-top:2px;display:flex}.chat-msg.ai .chat-avatar{background:var(--muted);color:var(--fg-muted)}.chat-msg.user .chat-avatar{background:var(--fg);color:var(--bg)}.chat-bubble{border-radius:12px;max-width:80%;padding:8px 12px;font-size:13px;line-height:1.55}.chat-msg.ai .chat-bubble{background:var(--muted);color:var(--fg)}.chat-msg.user .chat-bubble{background:var(--fg);color:var(--bg)}.chat-bubble code{background:oklch(0 0 0/.08);border-radius:4px;padding:0 4px;font-family:JetBrains Mono,monospace;font-size:11px}.chat-msg.user .chat-bubble code{background:oklch(100% 0 0/.15)}.chat-cursor:after{content:"▋";animation:chat-blink .8s step-end infinite}@keyframes chat-blink{50%{opacity:0}}.chat-input-wrap{border-top:1px solid var(--border);flex-shrink:0;align-items:flex-end;gap:8px;padding:10px 12px;display:flex}.chat-textarea{resize:none;background:var(--muted);color:var(--fg);border:0;border-radius:12px;outline:none;flex:1;min-height:36px;max-height:120px;padding:8px 12px;font-family:inherit;font-size:13px;line-height:1.5;overflow-y:auto}.chat-textarea::placeholder{color:var(--fg-muted)}.chat-send-btn{appearance:none;background:var(--fg);width:36px;height:36px;color:var(--bg);cursor:pointer;border:0;border-radius:10px;flex-shrink:0;justify-content:center;align-items:center;transition:opacity .15s;display:flex}.chat-send-btn:disabled{opacity:.38;cursor:not-allowed}.chat-send-btn:hover:not(:disabled){opacity:.85}.chat-backdrop{z-index:30;background:oklch(0 0 0/.2);display:none;position:fixed;inset:0}@media (max-width:639px){.chat-backdrop.active{display:block}}.sf-folder{margin-bottom:28px}.sf-folder:last-child{margin-bottom:0}.sf-head{cursor:pointer;-webkit-user-select:none;user-select:none;border-radius:8px;align-items:center;gap:8px;margin-bottom:10px;padding:6px;transition:background .1s;display:flex}.sf-head:hover{background:var(--muted)}.sf-dot{background:var(--accent);border-radius:50%;flex-shrink:0;width:7px;height:7px}.sf-name{letter-spacing:.08em;text-transform:uppercase;font-size:11px;font-weight:700}.sf-ct,.sf-name{color:var(--fg-muted);font-family:JetBrains Mono,monospace}.sf-ct{background:var(--muted);border-radius:4px;padding:1px 5px;font-size:10.5px}.sf-right{align-items:center;gap:8px;margin-left:auto;display:flex}.sf-chev{color:var(--fg-muted);transition:transform .15s;display:inline-flex}.sf-chev.collapsed{transform:rotate(-90deg)}.sf-empty-folder{border:1px dashed var(--border-2);border-radius:var(--r-card);text-align:center;color:var(--fg-muted);margin-bottom:4px;padding:20px;font-size:13px}.st-tips-row{justify-content:space-between;align-items:center;gap:16px;padding:4px 0;display:flex}.section-card{background:var(--card);border:1px solid var(--border);border-radius:var(--r-card);overflow:hidden}.section-card-head{justify-content:space-between;align-items:center;padding:14px 16px 10px;display:flex}.section-card-title{letter-spacing:.08em;text-transform:uppercase;color:var(--fg-muted);font-size:11px;font-weight:700}.section-card-body{padding:0 16px 14px}.ucw-sub{color:var(--fg-muted);margin:0 0 10px;font-size:11.5px}.ucw-list{flex-direction:column;gap:6px;display:flex}.ucw-row{background:oklch(98% .04 80/.5);border:1px solid oklch(80% .14 80/.35);border-radius:8px;align-items:flex-start;gap:8px;padding:8px 10px;display:flex}.dark .ucw-row{background:oklch(20% .04 80/.2);border-color:oklch(50% .1 80/.4)}.ucw-brain{color:oklch(60% .14 80);flex-shrink:0;margin-top:1px}.ucw-body{flex:1;min-width:0}.ucw-prompt{color:oklch(28% .06 80);-webkit-line-clamp:2;-webkit-box-orient:vertical;font-size:11.5px;font-weight:500;display:-webkit-box;overflow:hidden}.dark .ucw-prompt{color:oklch(88% .04 80)}.ucw-obj{color:oklch(48% .1 80);white-space:nowrap;text-overflow:ellipsis;margin-top:2px;font-size:11px;overflow:hidden}.dark .ucw-obj{color:oklch(68% .08 80)}.ucw-right{flex-shrink:0;gap:6px}.ucw-right,.ucw-time{align-items:center;display:flex}.ucw-time{white-space:nowrap;gap:3px;font-size:11px}.ucw-link,.ucw-time{color:oklch(60% .14 80)}.ucw-link{border-radius:3px;display:inline-flex}.ucw-link:hover{color:oklch(40% .12 80)}.tip-anchor{display:block;position:relative}.tip-callout{z-index:60;border:1px solid var(--border);background:var(--card);border-radius:12px;width:220px;padding:10px 12px;animation:tip-in .18s;position:absolute;box-shadow:0 6px 24px oklch(0 0 0/.14)}@keyframes tip-in{0%{opacity:0;transform:translateY(-3px)}to{opacity:1;transform:translateY(0)}}.tip-callout.tip-bottom{top:calc(100% + 8px);left:0}.tip-callout.tip-top{bottom:calc(100% + 8px);left:0}.tip-callout.tip-right{top:0;left:calc(100% + 8px)}.tip-callout.tip-left{top:0;right:calc(100% + 8px)}.tip-callout.tip-align-end.tip-bottom,.tip-callout.tip-align-end.tip-top{left:auto;right:0}.tip-callout.tip-align-center.tip-bottom,.tip-callout.tip-align-center.tip-top{left:50%;transform:translate(-50%)}.tip-arrow{background:var(--card);border-top:1px solid var(--border);border-left:1px solid var(--border);width:9px;height:9px;position:absolute}.tip-arrow-bottom{top:-5px;left:14px;transform:rotate(45deg)}.tip-arrow-top{bottom:-5px;left:14px;transform:rotate(225deg)}.tip-arrow-right{top:10px;left:-5px;transform:rotate(-45deg)}.tip-arrow-left{top:10px;right:-5px;transform:rotate(135deg)}.tip-header{justify-content:space-between;align-items:flex-start;gap:8px;display:flex}.tip-title{color:var(--fg);margin:0;font-size:12px;font-weight:600;line-height:1.4}.tip-close{cursor:pointer;color:var(--fg-muted);background:0 0;border:0;border-radius:4px;flex-shrink:0;margin:-1px -2px 0 0;padding:2px;display:inline-flex}.tip-close:hover{color:var(--fg)}.tip-body{color:var(--fg-muted);margin:5px 0 0;font-size:11.5px;line-height:1.55}.dc-overlay{z-index:50;background:oklch(0 0 0/.6);justify-content:center;align-items:center;padding:16px;display:flex;position:fixed;inset:0}.dc-panel{background:var(--card);border-radius:16px;flex-direction:column;width:100%;max-width:860px;max-height:90vh;display:flex;overflow:hidden;box-shadow:0 20px 60px oklch(0 0 0/.3)}.dc-header{border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;padding:10px 14px;display:flex}.dc-title{color:var(--fg);font-size:13px;font-weight:600}.dc-header-actions{align-items:center;gap:4px;display:flex}.dc-btn{appearance:none;cursor:pointer;border:0;border-radius:8px;align-items:center;gap:5px;padding:5px 10px;font-size:12px;font-weight:500;transition:opacity .1s,background .1s;display:inline-flex}.dc-btn.ghost{color:var(--fg-muted);background:0 0}.dc-btn.ghost:hover{background:var(--muted);color:var(--fg)}.dc-btn.primary{background:var(--fg);color:var(--bg)}.dc-btn.primary:hover{opacity:.85}.dc-btn.square{padding:5px}.dc-toolbar{border-bottom:1px solid var(--border);background:var(--muted);flex-wrap:wrap;gap:10px;padding:8px 14px}.dc-tool-group,.dc-toolbar{align-items:center;display:flex}.dc-tool-group{gap:3px}.dc-tool-btn{appearance:none;cursor:pointer;width:28px;height:28px;color:var(--fg-muted);background:0 0;border:0;border-radius:6px;justify-content:center;align-items:center;transition:background .1s,color .1s;display:inline-flex}.dc-tool-btn:hover{background:var(--border);color:var(--fg)}.dc-tool-btn.active{background:var(--card);color:var(--fg);box-shadow:0 1px 3px oklch(0 0 0/.1)}.dc-color-swatch{appearance:none;cursor:pointer;border:2px solid #0000;border-radius:50%;width:20px;height:20px;transition:transform .1s,border-color .1s}.dc-color-swatch:hover{transform:scale(1.15)}.dc-color-swatch.active{border-color:var(--fg);transform:scale(1.1)}.dc-size-group{margin-left:auto}.dc-size-label{color:var(--fg);text-align:center;width:16px;font-size:11px}.dc-canvas-wrap{background:#fff;flex:1;justify-content:center;align-items:center;min-height:0;padding:8px;display:flex;overflow:auto}.dc-canvas{cursor:crosshair;touch-action:none;max-width:100%;max-height:100%;display:block}.syl-delete-btn{appearance:none;cursor:pointer;color:var(--fg-muted);background:0 0;border:0;border-radius:6px;padding:4px;display:inline-flex}.syl-delete-btn:hover{color:var(--destructive)}.syl-delete-btn:disabled{opacity:.4;cursor:not-allowed}.syl-hint{color:var(--fg-muted);margin:0 0 10px;font-size:11.5px;line-height:1.5}.syl-upload-btn{appearance:none;border:2px dashed var(--border);cursor:pointer;width:100%;color:var(--fg-muted);background:0 0;border-radius:10px;align-items:center;gap:8px;padding:10px 12px;font-size:12.5px;transition:border-color .15s,color .15s;display:flex}.syl-upload-btn:hover{border-color:var(--accent);color:var(--fg)}.syl-upload-btn:disabled{opacity:.5;cursor:not-allowed}.syl-file-input{display:none}.syl-content{flex-direction:column;gap:10px;display:flex}.syl-file-row{align-items:center;gap:8px;display:flex}.syl-file-icon{color:var(--fg-muted);flex-shrink:0;display:inline-flex}.syl-file-name{color:var(--fg);text-overflow:ellipsis;white-space:nowrap;flex:1;font-size:12.5px;overflow:hidden}.syl-status{flex-shrink:0;align-items:center;gap:5px;font-size:11px;display:flex}.syl-status.processing{color:var(--fg-muted)}.syl-status.ready{color:oklch(55% .14 150)}.syl-status.failed{color:var(--destructive)}.syl-spin{animation:syl-spin .8s linear infinite}@keyframes syl-spin{0%{transform:rotate(0)}to{transform:rotate(1turn)}}.syl-topics{flex-direction:column;gap:4px;display:flex}.syl-show-more{appearance:none;cursor:pointer;color:var(--accent);background:0 0;border:0;padding:2px 0;font-size:11.5px}.syl-show-more:hover{text-underline-offset:2px;text-decoration:underline}.syl-topic-group{border:1px solid var(--border);border-radius:8px;overflow:hidden}.syl-topic-head{background:var(--muted);cursor:pointer;text-align:left;border:0;justify-content:space-between;align-items:center;gap:8px;width:100%;padding:7px 10px;transition:background .1s;display:flex}.syl-topic-head:hover{background:var(--border)}.syl-topic-name{color:var(--fg);font-size:11.5px;font-weight:500}.syl-topic-meta{color:var(--fg-muted);flex-shrink:0;align-items:center;gap:6px;display:flex}.syl-topic-count{font-size:11px}.syl-topic-body{border-top:1px solid var(--border)}.syl-obj-item{border-bottom:1px solid var(--border);padding:8px 10px}.syl-obj-item:last-child{border-bottom:0}.syl-obj-text{color:var(--fg);margin:0 0 5px;font-size:11.5px;line-height:1.55}.syl-tags{flex-wrap:wrap;gap:4px;display:flex}.syl-tag{border-radius:999px;align-items:center;gap:3px;padding:2px 7px;font-size:10.5px;display:inline-flex}.syl-tag.covered{color:oklch(45% .12 150);background:oklch(55% .14 150/.12)}.dark .syl-tag.covered{color:oklch(70% .12 150);background:oklch(55% .14 150/.18)}.syl-tag.uncovered{color:oklch(60% .14 80)}.syl-replace-btn{appearance:none;cursor:pointer;color:var(--fg-muted);background:0 0;border:0;align-items:center;gap:5px;padding:2px 0;font-size:11.5px;transition:color .1s;display:flex}.syl-replace-btn:hover{color:var(--fg)}.syl-coverage{border:1px solid var(--border);border-radius:8px;padding:10px 12px}.syl-coverage-row{justify-content:space-between;align-items:center;margin-bottom:6px;display:flex}.syl-coverage-label{color:var(--fg-muted);font-size:11.5px}.syl-coverage-val{color:var(--fg);font-size:11.5px;font-weight:500}.syl-coverage-bar{background:var(--muted);border-radius:999px;height:5px;overflow:hidden}.syl-coverage-fill{background:oklch(55% .14 150);border-radius:999px;height:100%;transition:width .4s}.ca-page{background:var(--bg);justify-content:center;min-height:100svh;padding:32px 16px 48px}.ca-page,.ca-shell{align-items:center;display:flex}.ca-shell{flex-direction:column;gap:14px;width:100%;max-width:440px}.ca-card{background:var(--card);border:1px solid var(--border);border-radius:16px;width:100%;padding:28px 28px 24px;box-shadow:0 1px 4px #0000000a}@media (min-width:480px){.ca-card{padding:32px 36px 28px}}.ca-brand{justify-content:center;align-items:center;gap:8px;margin-bottom:20px;display:flex}.ca-brand .mono{color:var(--accent);font-family:JetBrains Mono,monospace;font-size:18px;font-weight:700;line-height:1}.ca-brand .word{color:var(--fg);letter-spacing:-.01em;font-family:Instrument Serif,serif;font-size:19px}.ca-banner{background:var(--accent-soft);color:var(--accent-soft-fg);border-radius:8px;align-items:center;gap:8px;margin-bottom:16px;padding:8px 12px;font-size:13px;display:flex}.ca-banner .ic{flex-shrink:0;display:flex}.ca-progress{gap:8px;margin-bottom:22px;display:flex}.ca-step{flex-direction:column;flex:1;gap:4px;display:flex}.ca-step-bar{background:var(--muted);border-radius:99px;height:3px;transition:background .2s}.ca-step.current .ca-step-bar,.ca-step.done .ca-step-bar{background:var(--accent)}.ca-step-dot{display:none}.ca-step-label{letter-spacing:.06em;color:var(--fg-muted);font-family:JetBrains Mono,monospace;font-size:10.5px}.ca-step.current .ca-step-label{color:var(--fg);font-weight:600}.ca-step.done .ca-step-label{color:var(--accent)}.ca-h{color:var(--fg);letter-spacing:-.01em;margin:0 0 4px;font-size:20px;font-weight:700}.ca-sub{color:var(--fg-muted);margin:0 0 20px;font-size:13.5px;line-height:1.5}.ca-avatar-row{align-items:flex-end;gap:14px;margin-bottom:16px;display:flex}.ca-avatar{border:2px solid var(--border);border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:64px;height:64px;display:flex}.ca-avatar-initials{font-size:20px;font-weight:700;line-height:1}.ca-name-fields{flex:1;grid-template-columns:1fr 1fr;gap:10px;display:grid}@media (max-width:379px){.ca-name-fields{grid-template-columns:1fr}.ca-avatar-row{flex-direction:column;align-items:flex-start}}.ca-field{margin-bottom:14px}.ca-label{color:var(--fg-muted);letter-spacing:.04em;text-transform:uppercase;margin-bottom:5px;font-family:JetBrains Mono,monospace;font-size:12px;font-weight:600;display:block}.ca-optional{letter-spacing:0;text-transform:none;font-family:inherit;font-size:11px;font-weight:400}.ca-input{border:1px solid var(--border);background:var(--muted);width:100%;height:38px;color:var(--fg);box-sizing:border-box;border-radius:8px;outline:none;padding:0 12px;font-family:inherit;font-size:14px;transition:border-color .12s,box-shadow .12s}.ca-input:focus{border-color:var(--accent);box-shadow:0 0 0 3px var(--accent)}@supports (color:color-mix(in lab,red,red)){.ca-input:focus{box-shadow:0 0 0 3px color-mix(in oklch,var(--accent) 15%,transparent)}}.ca-input.error{border-color:var(--destructive)}.ca-helper{color:var(--fg-muted);margin:4px 0 0;font-size:12px;line-height:1.4}.ca-input-prefix-wrap{align-items:center;display:flex;position:relative}.ca-input-prefix{color:var(--fg-muted);pointer-events:none;z-index:1;font-size:14px;position:absolute;left:12px}.ca-input-prefixed{padding-left:26px}.ca-username-status{align-items:center;gap:4px;font-size:12px;display:flex;position:absolute;right:10px}.ca-username-msg{color:var(--fg-muted)}.ca-username-ok{color:var(--success);align-items:center;gap:4px;font-weight:500;display:flex}.ca-username-err{color:var(--destructive);font-weight:500}.ca-pw-wrap{position:relative}.ca-input-pw{padding-right:40px}.ca-pw-toggle{cursor:pointer;color:var(--fg-muted);background:0 0;border:none;align-items:center;padding:4px;display:flex;position:absolute;top:50%;right:10px;transform:translateY(-50%)}.ca-pw-toggle:hover{color:var(--fg)}.ca-pw-strength{align-items:center;gap:8px;margin-top:6px;display:flex}.ca-pw-bars{gap:4px;display:flex}.ca-pw-bar{background:var(--muted);border-radius:99px;width:28px;height:3px;transition:background .2s}.ca-pw-bar.active.weak{background:var(--destructive)}.ca-pw-bar.active.ok{background:var(--warning)}.ca-pw-bar.active.strong{background:var(--success)}.ca-pw-label{font-size:11.5px;font-weight:500}.ca-pw-label.weak{color:var(--destructive)}.ca-pw-label.ok{color:var(--warning)}.ca-pw-label.strong{color:var(--success)}.ca-error{color:var(--destructive);align-items:flex-start;gap:6px;margin-top:5px;font-size:12.5px;line-height:1.4;display:flex}.ca-error .ic{flex-shrink:0;margin-top:1px;display:flex}.ca-inline-link{color:var(--accent);text-underline-offset:3px;font-weight:500;text-decoration:underline}.ca-btn{background:var(--accent);width:100%;height:42px;color:var(--accent-fg);cursor:pointer;border:none;border-radius:10px;justify-content:center;align-items:center;gap:8px;margin-top:20px;font-size:14.5px;font-weight:600;transition:opacity .15s;display:flex}.ca-btn:disabled{opacity:.5;cursor:not-allowed}.ca-btn:not(:disabled):hover{opacity:.9}.ca-crosslink{color:var(--fg-muted);text-align:center;margin-top:14px;font-size:13px}.ca-crosslink a{color:var(--accent);text-underline-offset:3px;font-weight:500;text-decoration:underline}.ca-crosslink a:hover{opacity:.8}.ca-otp{justify-content:center;align-items:center;gap:6px;margin:4px 0;display:flex}.ca-otp-gap{width:16px}.ca-otp-cell{border:1px solid var(--border);text-align:center;width:44px;height:52px;color:var(--fg);background:var(--card);border-radius:8px;outline:none;font-family:JetBrains Mono,monospace;font-size:20px;font-weight:500;transition:border-color .12s,box-shadow .12s}.ca-otp-cell:focus{border-color:var(--accent);box-shadow:0 0 0 3px var(--accent)}@supports (color:color-mix(in lab,red,red)){.ca-otp-cell:focus{box-shadow:0 0 0 3px color-mix(in oklch,var(--accent) 15%,transparent)}}.ca-otp-cell.filled{border-color:var(--accent)}.ca-otp.error .ca-otp-cell{border-color:var(--destructive);animation:shake .3s}.ca-footer-row{color:var(--fg-muted);flex-wrap:wrap;justify-content:space-between;gap:6px;margin-top:14px;font-size:12.5px;display:flex}.ca-footer-row a,.ca-footer-row button{cursor:pointer;color:var(--fg-muted);background:0 0;border:none;padding:0;font-family:inherit;font-size:12.5px}.ca-footer-row a:hover,.ca-footer-row button:hover{color:var(--fg)}.ca-footer-row .disabled{opacity:.5;cursor:default}.ca-countdown{font-family:JetBrains Mono,monospace;font-size:11.5px}.ca-success{text-align:center;padding:24px 0 8px}.ca-success-check{color:var(--success);margin-bottom:8px;font-size:32px}.ca-success-title{color:var(--fg);font-size:18px;font-weight:700}.ca-success-sub{color:var(--fg-muted);margin:6px 0 0;font-size:13.5px}.ca-spinner{border:2px solid #0000;border-top-color:currentcolor;border-radius:50%;width:14px;height:14px;animation:spin .7s linear infinite;display:inline-block}.ca-back{color:var(--fg-muted);font-size:13px;text-decoration:none}.ca-back:hover{color:var(--fg)}.ca-legal{color:var(--fg-muted);text-align:center;max-width:38ch;font-size:11.5px;line-height:1.5}.ca-legal a{color:var(--fg);text-underline-offset:2px;text-decoration:underline}.asst-fab{z-index:49;background:var(--accent);width:52px;height:52px;color:var(--accent-fg);cursor:pointer;border:0;border-radius:50%;place-items:center;transition:background .15s,transform .12s,bottom .2s;display:grid;position:fixed;bottom:24px;right:24px;box-shadow:0 4px 16px -4px oklch(54% .14 274/.45),0 1px 4px oklch(0 0 0/.12)}.asst-fab:hover{background:var(--accent-hover);transform:scale(1.04)}.asst-fab.open{background:var(--muted);color:var(--fg);box-shadow:none;transform:none}.asst-fab.has-uploads{bottom:108px}@media (max-width:639px){.asst-fab{width:48px;height:48px;bottom:78px;right:16px}.asst-fab.has-uploads{bottom:160px}}.asst-nudge-dot{background:var(--warning);border:2px solid var(--accent);cursor:pointer;border-radius:50%;width:8px;height:8px;position:absolute;top:9px;right:9px}.asst-whisper{z-index:49;background:var(--card);color:var(--fg);border:1px solid var(--border);white-space:nowrap;cursor:pointer;pointer-events:auto;border-radius:20px;padding:7px 14px;font-size:13px;font-weight:500;animation:whisper-in .25s cubic-bezier(.22,1,.36,1) both,whisper-out .3s ease-in 3.7s forwards;position:fixed;bottom:88px;right:24px;box-shadow:0 4px 16px -4px oklch(0 0 0/.14)}.asst-whisper:after{content:"";background:var(--card);clip-path:polygon(0 0,100% 0,50% 100%);border-left:1px solid var(--border);border-right:1px solid var(--border);width:10px;height:6px;position:absolute;bottom:-6px;right:20px}@keyframes whisper-in{0%{opacity:0;transform:translateY(8px)scale(.95)}to{opacity:1;transform:translateY(0)scale(1)}}@keyframes whisper-out{0%{opacity:1;transform:translateY(0)}to{opacity:0;transform:translateY(4px)}}@media (max-width:639px){.asst-whisper{bottom:134px;right:16px}}.asst-backdrop{z-index:53;background:oklch(0 0 0/.25);position:fixed;inset:0}@media (min-width:900px){.asst-backdrop{background:0 0}}.asst-panel{z-index:54;background:var(--card);border-left:1px solid var(--border);flex-direction:column;width:400px;max-width:100vw;animation:asst-slide-in .22s cubic-bezier(.22,1,.36,1) both;display:flex;position:fixed;top:0;bottom:0;right:0;box-shadow:-8px 0 32px -8px oklch(0 0 0/.12)}@keyframes asst-slide-in{0%{opacity:0;transform:translate(32px)}to{opacity:1;transform:translate(0)}}@media (max-width:639px){.asst-panel{border-left:none;border-top:1px solid var(--border);border-radius:16px 16px 0 0;width:100%;height:85vh;animation:asst-sheet-in .24s cubic-bezier(.22,1,.36,1) both;top:auto;left:0;right:0;box-shadow:0 -8px 32px -4px oklch(0 0 0/.18)}}@keyframes asst-sheet-in{0%{opacity:0;transform:translateY(48px)}to{opacity:1;transform:translateY(0)}}.asst-head{border-bottom:1px solid var(--border);flex-shrink:0;justify-content:space-between;padding:14px 16px}.asst-head,.asst-head-left{align-items:center;display:flex}.asst-head-left{gap:8px;min-width:0}.asst-head-right{flex-shrink:0;align-items:center;gap:4px;display:flex}.asst-title{color:var(--fg);font-size:13.5px}.asst-mode-chip,.asst-title{white-space:nowrap;font-weight:600}.asst-mode-chip{letter-spacing:.1em;text-transform:uppercase;border-radius:999px;padding:2px 7px;font-family:JetBrains Mono,monospace;font-size:9px}.asst-mode-chip.study{background:var(--accent-soft);color:var(--accent-soft-fg)}.asst-mode-chip.account{background:var(--info-soft);color:var(--m2-fg)}.asst-icon-btn{width:28px;height:28px;color:var(--fg-muted);cursor:pointer;background:0 0;border:0;border-radius:6px;place-items:center;transition:background .1s,color .1s;display:grid}.asst-icon-btn:hover{background:var(--muted);color:var(--fg)}.asst-mode-menu-wrap{position:relative}.asst-mode-menu{background:var(--card);border:1px solid var(--border);min-width:190px;box-shadow:var(--shadow-pop);z-index:10;border-radius:10px;padding:5px;position:absolute;top:calc(100% + 6px);right:0}.asst-mode-menu-label{letter-spacing:.12em;text-transform:uppercase;color:var(--fg-muted);padding:4px 8px 6px;font-family:JetBrains Mono,monospace;font-size:9.5px;font-weight:500}.asst-mode-menu-item{text-align:left;width:100%;color:var(--fg);font:inherit;cursor:pointer;background:0 0;border:0;border-radius:6px;padding:7px 10px;font-size:12.5px;transition:background .1s;display:block}.asst-mode-menu-item:hover{background:var(--muted)}.asst-mode-menu-item.active{background:var(--accent-soft);color:var(--accent-soft-fg);font-weight:500}.asst-mode-menu-sep{background:var(--border);height:1px;margin:4px 0}.asst-context{border-bottom:1px solid var(--border);flex-shrink:0;padding:8px 16px;position:relative}.asst-context-row{justify-content:space-between;align-items:center;gap:8px;display:flex}.asst-context-label{color:var(--fg-muted);white-space:nowrap;text-overflow:ellipsis;min-width:0;font-size:11.5px;overflow:hidden}.asst-context-restraint{color:var(--warning-fg);background:var(--warning-soft);border-radius:5px;align-items:center;gap:5px;padding:3px 8px;font-size:11.5px;display:inline-flex}.asst-what-shared-btn{cursor:pointer;color:var(--fg-muted);text-underline-offset:2px;background:0 0;border:0;flex-shrink:0;padding:0;font-family:inherit;font-size:11px;text-decoration:underline;transition:color .1s}.asst-what-shared-btn:hover{color:var(--fg)}.asst-shared-popover{background:var(--card);border:1px solid var(--border);box-shadow:var(--shadow-pop);z-index:10;border-radius:10px;padding:14px 16px;font-size:12.5px;line-height:1.5;position:absolute;top:calc(100% + 6px);left:12px;right:12px}.asst-shared-close{width:24px;height:24px;color:var(--fg-muted);cursor:pointer;background:0 0;border:0;border-radius:5px;place-items:center;display:grid;position:absolute;top:10px;right:10px}.asst-shared-close:hover{background:var(--muted);color:var(--fg)}.asst-shared-title{color:var(--fg);margin-bottom:8px;font-weight:600}.asst-shared-list{color:var(--fg-muted);margin:0 0 8px;padding-left:18px}.asst-shared-list li{margin-bottom:3px}.asst-shared-note{color:var(--fg-muted);margin-bottom:10px;font-size:11.5px}.asst-shared-link{color:var(--accent);text-underline-offset:2px;font-size:12px;text-decoration:underline}.asst-shared-link:hover{color:var(--accent-hover)}.asst-msgs{flex-direction:column;flex:1;gap:12px;min-height:0;padding:14px 16px;display:flex;overflow-y:auto}.asst-first-run{text-align:center;flex-direction:column;align-items:center;gap:10px;padding:20px 8px 12px;display:flex}.asst-first-run-icon{background:var(--accent-soft);width:44px;height:44px;color:var(--accent-soft-fg);border-radius:50%;place-items:center;display:grid}.asst-first-run-text{color:var(--fg-muted);max-width:30ch;margin:0;font-size:13px;line-height:1.55}.asst-msg{display:flex}.asst-msg.user{justify-content:flex-end}.asst-msg.assistant{justify-content:flex-start}.asst-bubble{word-break:break-word;border-radius:14px;max-width:84%;padding:10px 13px;font-size:13px;line-height:1.55}.asst-msg.user .asst-bubble{background:var(--accent);color:var(--accent-fg);border-radius:14px 14px 4px}.asst-msg.assistant .asst-bubble{background:var(--muted);color:var(--fg);border-radius:14px 14px 14px 4px}.asst-bubble.streaming,.asst-bubble.typing{min-width:48px}.asst-typing-dots{align-items:center;gap:4px;padding:2px 0;display:inline-flex}.asst-typing-dots span{background:var(--fg-muted);border-radius:50%;width:5px;height:5px;animation:asst-bounce 1.3s ease-in-out infinite;display:inline-block}.asst-typing-dots span:nth-child(2){animation-delay:.18s}.asst-typing-dots span:nth-child(3){animation-delay:.36s}@keyframes asst-bounce{0%,80%,to{opacity:.5;transform:translateY(0)}40%{opacity:1;transform:translateY(-4px)}}.asst-notice{text-align:center;color:var(--fg-muted);letter-spacing:.04em;opacity:.7;padding:4px 0;font-family:JetBrains Mono,monospace;font-size:11px}.asst-para{margin:0 0 6px;font-size:13px;line-height:1.55}.asst-para:last-child{margin-bottom:0}.asst-list{margin:4px 0 6px;padding-left:18px}.asst-list:last-child{margin-bottom:0}.asst-list li{margin-bottom:3px;font-size:13px;line-height:1.5}.asst-bold{font-weight:600}.asst-msg.user .asst-bold{color:var(--accent-fg)}.asst-msg.assistant .asst-bold{color:var(--fg-strong)}.asst-code{background:var(--bg-2);border:1px solid var(--border-2);border-radius:4px;padding:1px 5px;font-family:JetBrains Mono,monospace;font-size:11.5px}.asst-msg.user .asst-code{color:var(--accent-fg);background:oklch(0 0 0/.15);border-color:#0000}.asst-nav-chip{border:1px solid var(--accent);color:var(--accent);font:inherit;cursor:pointer;background:0 0;border-radius:5px;align-items:center;margin:2px 2px 2px 0;padding:2px 8px;font-size:12px;transition:background .12s;display:inline-flex}.asst-nav-chip:hover{background:var(--accent-soft)}.asst-msg.user .asst-nav-chip{color:var(--accent-fg);border-color:oklch(100% 0 0/.5)}.asst-msg.user .asst-nav-chip:hover{background:oklch(100% 0 0/.15)}.asst-link{color:var(--accent);text-underline-offset:2px;font-size:12.5px;text-decoration:underline}.asst-chips{flex-direction:column;gap:6px;padding:4px 0 8px;display:flex}.asst-chip{text-align:left;border:1px solid var(--border);background:var(--bg);color:var(--fg);font:inherit;cursor:pointer;border-radius:8px;padding:9px 12px;font-size:12.5px;line-height:1.4;transition:background .12s,border-color .12s}.asst-chip:hover{background:var(--muted);border-color:var(--border-2)}.asst-chip-nudge{border-color:var(--warning-bd);color:var(--warning-fg);background:var(--warning-soft)}.asst-chip-nudge:hover{filter:brightness(.97)}.asst-disclaimer{color:var(--fg-muted);opacity:.65;text-align:center;border-top:1px solid var(--border-2);flex-shrink:0;padding:5px 16px;font-size:10.5px}.asst-composer{border-top:1px solid var(--border);flex-shrink:0;align-items:flex-end;gap:8px;padding:12px 14px 14px;display:flex}.asst-input{resize:none;border:1px solid var(--border);background:var(--bg);color:var(--fg);font:inherit;border-radius:10px;outline:none;flex:1;min-height:40px;max-height:120px;padding:9px 12px;font-size:13.5px;line-height:1.45;transition:border-color .12s,box-shadow .12s;overflow-y:auto}.asst-input:focus{border-color:var(--accent);box-shadow:0 0 0 3px var(--ring)}.asst-input::placeholder{color:var(--fg-muted)}.asst-input:disabled{opacity:.6}.asst-send{background:var(--accent);width:36px;height:36px;color:var(--accent-fg);cursor:pointer;border:0;border-radius:10px;flex-shrink:0;place-items:center;transition:background .12s,opacity .12s;display:grid}.asst-send:hover:not(:disabled){background:var(--accent-hover)}.asst-send:disabled{opacity:.35;cursor:not-allowed}.asst-spin{border:2px solid var(--accent-fg);border-top:2px solid #0000;border-radius:50%;width:13px;height:13px;animation:spin .7s linear infinite;display:inline-block}.regen-overlay{z-index:200;background:oklch(from var(--bg) l c h/.88);-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);place-items:center;animation:aw-fade .18s;display:grid;position:fixed;inset:0}.regen-backdrop{z-index:110;background:oklch(0 0 0/.45);place-items:center;padding:16px;animation:aw-fade .15s;display:grid;position:fixed;inset:0}.regen-dialog{background:var(--card);border:1px solid var(--border);border-radius:18px;width:100%;max-width:520px;animation:regen-in .18s;position:relative;overflow:hidden;box-shadow:0 24px 64px oklch(0 0 0/.18)}@keyframes regen-in{0%{opacity:0;transform:scale(.96)translateY(6px)}to{opacity:1;transform:scale(1)translateY(0)}}.regen-hd{padding:24px 24px 0}.regen-ttl{letter-spacing:-.015em;color:var(--fg);margin-bottom:4px;font-family:Instrument Serif,serif;font-size:22px;font-weight:400}.regen-sub{color:var(--muted-fg);padding-bottom:4px;font-size:13px;line-height:1.55}.regen-changes{border:1px solid var(--warning-bd);background:var(--warning-soft);border-radius:12px;margin:18px 24px;overflow:hidden}.regen-change-row{border-bottom:1px solid var(--warning-bd);grid-template-columns:28px 1fr;align-items:flex-start;gap:10px;padding:11px 14px;display:grid}.regen-change-row:last-child{border-bottom:0}.regen-change-row .ic{padding-top:1px;font-size:14px}.regen-change-row .body .head{color:var(--warning-fg);margin-bottom:2px;font-size:13px;font-weight:600}.regen-change-row .body .desc{color:var(--warning-fg);opacity:.82;font-size:12px;line-height:1.5}[data-theme=dark] .regen-change-row .body .desc,[data-theme=dark] .regen-change-row .body .head{color:oklch(88% .1 75)}.regen-scope-note{border:1px solid var(--warning-bd);background:var(--warning-soft);color:var(--warning-fg);border-radius:8px;margin:0 24px 14px;padding:10px 12px;font-size:12.5px;line-height:1.5}.regen-blocked{border:1px solid var(--border);text-align:center;border-radius:10px;margin:0 24px 20px;padding:20px 16px}.regen-blocked .bic{margin-bottom:8px;font-size:24px}.regen-blocked .btl{color:var(--fg);margin-bottom:4px;font-size:14px;font-weight:600}.regen-blocked .bds{color:var(--muted-fg);font-size:12.5px;line-height:1.5}.regen-del-link{color:var(--destructive);cursor:pointer;font-size:12.5px;font:inherit;text-underline-offset:2px;background:0 0;border:0;margin-top:10px;padding:0;text-decoration:underline;display:inline-block}.regen-ft{border-top:1px solid var(--border);justify-content:space-between;align-items:center;gap:10px;padding:14px 24px;display:flex}.tb-btn.regen-primary{background:var(--warning);color:oklch(20% .04 75);border-color:#0000}.tb-btn.regen-primary:hover{background:oklch(72% .14 75)}[data-theme=dark] .tb-btn.regen-primary{color:oklch(95% .06 75);background:oklch(55% .12 75)}[data-theme=dark] .tb-btn.regen-primary:hover{background:oklch(60% .13 75)}.as-dot-btn{border:1px solid var(--border);background:var(--bg);width:34px;height:34px;color:var(--muted-fg);cursor:pointer;border-radius:8px;flex-shrink:0;place-items:center;transition:background .12s,color .12s;display:grid}.as-dot-btn:hover{background:var(--muted);color:var(--fg)}.as-dot-menu{background:var(--card);border:1px solid var(--border);z-index:60;border-radius:10px;min-width:168px;padding:4px;animation:aw-fade .1s;position:absolute;top:calc(100% + 6px);right:0;box-shadow:0 8px 28px oklch(0 0 0/.14)}.as-dot-item{cursor:pointer;color:var(--fg);text-align:left;width:100%;font-size:13px;font:inherit;background:0 0;border:0;border-radius:7px;align-items:center;gap:8px;padding:8px 10px;transition:background .1s;display:flex}.as-dot-item:hover:not(:disabled){background:var(--muted)}.as-dot-item:disabled{opacity:.42;cursor:not-allowed}.as-spark-regen-legend{color:var(--warning-fg);letter-spacing:.03em;align-items:center;gap:6px;padding:6px 6px 0;font-family:JetBrains Mono,monospace;font-size:11px;display:flex}.as-spark-regen-legend .regen-ic{font-size:12px}.as-regen-div{border-bottom:1px solid var(--border);align-items:center;gap:8px;padding:7px 14px;display:flex}.as-regen-div .bar{background:var(--warning);opacity:.4;flex:1;height:1px}.as-regen-div .lbl{color:var(--warning-fg);letter-spacing:.04em;white-space:nowrap;flex-shrink:0;font-family:JetBrains Mono,monospace;font-size:10.5px}.regen-toast{background:var(--fg);color:var(--bg);z-index:300;white-space:nowrap;border-radius:10px;align-items:center;gap:8px;padding:10px 18px;font-size:13px;font-weight:500;animation:regen-in .18s;display:flex;position:fixed;bottom:24px;left:50%;transform:translate(-50%);box-shadow:0 8px 24px oklch(0 0 0/.2)}@media (max-width:600px){.regen-dialog{border-radius:16px}.regen-hd{padding:18px 18px 0}.regen-changes{margin:14px 18px}.regen-blocked,.regen-scope-note{margin-left:18px;margin-right:18px}.regen-ft{padding:12px 18px}.aw-confirm[style]{margin-left:18px!important;margin-right:18px!important}}.as-kind.mock{color:oklch(78% .12 275);background:oklch(22% .06 275);border-color:oklch(35% .1 275)}[data-theme=dark] .as-kind.mock{color:oklch(80% .14 280);background:oklch(18% .06 275)}.aw-mock-group{border-bottom:1px dashed var(--border);flex-direction:column;gap:10px;padding:16px 0;display:flex}.aw-mock-group:last-of-type{border-bottom:0}.aw-mock-blocks{gap:8px;display:flex}.aw-mock-block-btn{border:1.5px solid var(--border);background:var(--bg-2);cursor:pointer;width:80px;height:68px;color:var(--fg-muted);border-radius:10px;flex-direction:column;justify-content:center;align-items:center;gap:2px;transition:border-color .12s,background .12s,color .12s;display:flex}.aw-mock-block-btn .num{font-family:JetBrains Mono,monospace;font-size:26px;font-weight:600;line-height:1}.aw-mock-block-btn .lbl{letter-spacing:.06em;text-transform:uppercase;font-family:JetBrains Mono,monospace;font-size:10px}.aw-mock-block-btn:hover{border-color:var(--fg-muted);color:var(--fg)}.aw-mock-block-btn.on{color:oklch(72% .14 280);background:oklch(55% .16 280/.1);border-color:oklch(55% .16 280)}.aw-slider{appearance:none;background:var(--muted);cursor:pointer;border-radius:2px;outline:none;width:100%;height:4px}.aw-slider::-webkit-slider-thumb{appearance:none;background:var(--accent);cursor:pointer;border:2px solid var(--bg);border-radius:50%;width:18px;height:18px;box-shadow:0 1px 4px oklch(0 0 0/.18)}.aw-slider-labels{color:var(--fg-muted);justify-content:space-between;margin-top:-4px;font-family:JetBrains Mono,monospace;font-size:11px;display:flex}.mx-gate-wrap{background:var(--bg);justify-content:center;align-items:center;min-height:100vh;padding:24px 16px;display:flex}.mx-gate{background:var(--card);border:1px solid var(--border);border-radius:18px;gap:20px;width:100%;max-width:520px;padding:32px 32px 28px;box-shadow:0 8px 32px oklch(0 0 0/.08)}.mx-gate,.mx-gate-header{flex-direction:column;display:flex}.mx-gate-header{gap:10px}.mx-gate-badge{color:oklch(72% .14 280);letter-spacing:.04em;text-transform:uppercase;background:oklch(55% .16 280/.12);border:1px solid oklch(55% .16 280/.3);border-radius:6px;align-items:center;gap:6px;width:fit-content;padding:4px 10px;font-family:JetBrains Mono,monospace;font-size:11.5px;font-weight:500;display:inline-flex}.mx-gate-title{color:var(--fg);margin:0;font-family:Instrument Serif,serif;font-size:26px;font-weight:400;line-height:1.2}.mx-gate-section{flex-direction:column;gap:8px;display:flex}.mx-gate-section-lbl{color:var(--fg-muted);letter-spacing:.08em;text-transform:uppercase;font-family:JetBrains Mono,monospace;font-size:11px}.mx-gate-specs{background:var(--bg-2);border:1px solid var(--border);border-radius:10px;align-items:center;gap:0;display:flex;overflow:hidden}.mx-gate-specs .spec{text-align:center;flex:1;padding:14px 16px}.mx-gate-specs .spec .n{color:var(--fg);letter-spacing:-.02em;font-family:JetBrains Mono,monospace;font-size:24px;font-weight:600}.mx-gate-specs .spec .lbl{color:var(--fg-muted);letter-spacing:.06em;text-transform:uppercase;margin-top:2px;font-family:JetBrains Mono,monospace;font-size:10px}.mx-gate-specs .spec-sep{background:var(--border);align-self:stretch;width:1px}.mx-gate-rules{background:var(--bg-2);border:1px solid var(--border);border-radius:10px;padding:14px 16px}.mx-gate-rules-head{color:var(--fg-muted);letter-spacing:.08em;text-transform:uppercase;margin-bottom:10px;font-family:JetBrains Mono,monospace;font-size:11.5px;font-weight:600}.mx-gate-rules-list{color:var(--fg-muted);flex-direction:column;gap:6px;margin:0;padding:0 0 0 18px;font-size:13px;line-height:1.5;display:flex}.mx-gate-rules-list strong{color:var(--fg);font-weight:500}.mx-gate-check{cursor:pointer;color:var(--fg-muted);-webkit-user-select:none;user-select:none;align-items:flex-start;gap:10px;font-size:13px;line-height:1.5;display:flex}.mx-gate-check input[type=checkbox]{cursor:pointer;accent-color:oklch(55% .16 280);flex-shrink:0;width:16px;height:16px;margin-top:2px}.mx-gate-actions{justify-content:flex-end;gap:8px;padding-top:4px;display:flex}.mx-begin-btn{color:oklch(96% .02 280)!important;background:oklch(45% .18 280)!important;border-color:#0000!important}.mx-begin-btn:hover:not(:disabled){background:oklch(38% .18 280)!important}.mx-begin-btn:disabled{opacity:.4;cursor:not-allowed}.ar-mock .ar-top{background:oklch(from var(--bg) calc(l - .01) c h)}.ar-block-indicator{color:var(--fg-muted);align-items:center;gap:4px;font-family:JetBrains Mono,monospace;font-size:13.5px;display:inline-flex}.ar-block-indicator b{color:var(--fg);font-size:15px;font-weight:600}.ar-block-indicator .sep{opacity:.4}.ar-block-indicator .total{opacity:.55}.ar-block-qnum{letter-spacing:.04em;margin-left:10px;font-size:12.5px}.ar-block-qnum,.ar-block-timer-lbl{color:var(--fg-muted);font-family:JetBrains Mono,monospace}.ar-block-timer-lbl{letter-spacing:.06em;text-transform:uppercase;margin-top:2px;font-size:10px}.mx-break-wrap{background:var(--bg);justify-content:center;min-height:100vh;padding:24px 16px}.mx-break-card,.mx-break-wrap{align-items:center;display:flex}.mx-break-card{background:var(--card);border:1px solid var(--border);text-align:center;border-radius:18px;flex-direction:column;gap:16px;width:100%;max-width:440px;padding:36px 32px 28px;box-shadow:0 8px 32px oklch(0 0 0/.08)}.mx-break-badge{background:var(--success-soft);color:oklch(50% .14 150);letter-spacing:.04em;border:1px solid oklch(65% .14 150/.25);border-radius:6px;align-items:center;gap:6px;padding:5px 12px;font-family:JetBrains Mono,monospace;font-size:12px;font-weight:500;display:inline-flex}.mx-break-head{color:var(--fg);margin:0;font-family:Instrument Serif,serif;font-size:28px;font-weight:400;line-height:1.2}.mx-break-sub{color:var(--fg-muted);max-width:340px;margin:0;font-size:14px;line-height:1.6}.mx-break-sub strong{color:var(--fg);font-weight:500}.mx-break-blocks{align-items:center;gap:6px;margin:4px 0;display:flex}.mx-break-block{border-radius:8px;justify-content:center;align-items:center;gap:4px;width:40px;height:40px;font-family:JetBrains Mono,monospace;font-size:13px;font-weight:600;display:flex}.mx-break-block .n{font-size:15px}.mx-break-block.done{background:var(--success-soft);color:oklch(50% .14 150);border:1px solid oklch(65% .14 150/.25)}.mx-break-block.next{color:oklch(72% .14 280);background:oklch(55% .16 280/.12);border:1.5px dashed oklch(55% .16 280/.5)}.mx-break-block.pending{background:var(--bg-2);color:var(--fg-muted);border:1px solid var(--border)}.rs-blocks{flex-direction:column;gap:0;padding:4px 0;display:flex}.rs-block-row{border-bottom:1px solid var(--border-2);grid-template-columns:72px 1fr 44px 48px;align-items:center;gap:10px;padding:10px 16px;display:grid}.rs-block-row:last-child{border-bottom:0}.rs-block-label .num{color:var(--fg-muted);letter-spacing:.04em;font-family:JetBrains Mono,monospace;font-size:12px;font-weight:600}.rs-block-bar-wrap{background:var(--muted);border-radius:3px;height:6px;overflow:hidden}.rs-block-bar{border-radius:3px;height:100%;transition:width .4s}.rs-block-bar.green{background:oklch(65% .14 150)}.rs-block-bar.amber{background:var(--warning)}.rs-block-bar.red{background:var(--destructive)}.rs-block-score{text-align:right;font-family:JetBrains Mono,monospace;font-size:13px;font-weight:600}.rs-block-score.green{color:oklch(65% .14 150)}.rs-block-score.amber{color:var(--warning-fg)}.rs-block-score.red{color:var(--destructive)}.rs-block-detail{color:var(--fg-muted);text-align:right;font-family:JetBrains Mono,monospace;font-size:11.5px}.stdy-mock-cta{background:var(--card);border:1px solid var(--border);border-radius:14px;justify-content:space-between;align-items:center;gap:20px;padding:20px 22px;display:flex}.stdy-mock-cta-left{flex-direction:column;flex:1;gap:6px;display:flex}.stdy-mock-badge{color:oklch(68% .14 280);letter-spacing:.06em;text-transform:uppercase;background:oklch(55% .16 280/.1);border:1px solid oklch(55% .16 280/.25);border-radius:5px;align-items:center;gap:6px;width:fit-content;padding:3px 9px;font-family:JetBrains Mono,monospace;font-size:10.5px;font-weight:500;display:inline-flex}.stdy-mock-title{color:var(--fg);font-size:15px;font-weight:600}.stdy-mock-sub{color:var(--fg-muted);font-size:12.5px;line-height:1.5}.stdy-mock-btn{white-space:nowrap;flex-shrink:0;color:oklch(96% .02 280)!important;background:oklch(45% .18 280)!important;border-color:#0000!important;font-size:13px!important}.stdy-mock-btn:hover{background:oklch(38% .18 280)!important}@media (max-width:580px){.stdy-mock-cta{flex-direction:column;align-items:flex-start}.stdy-mock-btn{justify-content:center;width:100%}.mx-gate{padding:24px 20px 20px}.mx-break-card{padding:28px 20px 22px}.rs-block-row{grid-template-columns:60px 1fr 40px 44px;gap:8px;padding:10px 12px}}.cl-vis-group{flex-direction:column;gap:8px;padding:14px 0 0;display:flex}.cl-vis-lbl{color:var(--fg);text-transform:uppercase;letter-spacing:.07em;font-family:JetBrains Mono,monospace;font-size:12px;font-weight:600}.cl-vis-control{background:var(--surface);border:1px solid var(--border);border-radius:8px;gap:0;display:flex;overflow:hidden}.cl-vis-seg{cursor:pointer;color:var(--fg-muted);border:none;border-right:1px solid var(--border);background:0 0;flex:1;padding:7px 0;font-size:13px;font-weight:500;transition:background .1s,color .1s}.cl-vis-seg:last-child{border-right:none}.cl-vis-seg:hover{background:var(--hover);color:var(--fg)}.cl-vis-seg.on{background:var(--accent);color:var(--accent-fg);font-weight:600}.cl-vis-seg:disabled{opacity:.5;cursor:not-allowed}.cl-vis-explainer{min-height:16px}.cl-drm-note,.cl-vis-explainer{color:var(--fg-muted);font-size:12px;line-height:1.5}.cl-drm-note{background:var(--surface);border:1px solid var(--border);border-radius:8px;align-items:flex-start;gap:8px;padding:10px 12px;display:flex}.cl-score-gate{background:oklch(62% .16 50/.07);border:1px solid oklch(62% .16 50/.2);border-radius:10px;flex-direction:column;gap:10px;margin-bottom:4px;padding:13px 14px;display:flex}.cl-score-gate-text{color:var(--fg);align-items:flex-start;gap:8px;font-size:13px;line-height:1.5;display:flex}.cl-score-gate-text svg{color:oklch(62% .16 50);flex-shrink:0;margin-top:1px}.cl-score-check{color:var(--fg);cursor:pointer;align-items:center;gap:8px;font-size:13px;display:flex}.cl-vis-saved{color:var(--success);letter-spacing:.02em;margin-left:6px;font-size:11.5px;font-weight:500}.cl-close-btn{border:1px solid var(--border);cursor:pointer;width:28px;height:28px;color:var(--fg-muted);background:0 0;border-radius:6px;justify-content:center;align-items:center;transition:background .1s;display:flex}.cl-close-btn:hover{background:var(--hover);color:var(--fg)}.sh-typebadge.result{color:oklch(62% .14 185);background:oklch(56% .16 185/.1);border-color:oklch(56% .16 185/.25)}.sh-vis-toggle-row{justify-content:flex-end;padding:10px 0 4px;display:flex}.sh-vis-toggle-btn{border:1px solid var(--border);background:var(--surface);cursor:pointer;color:var(--fg-muted);border-radius:7px;align-items:center;gap:7px;padding:6px 14px;font-size:12.5px;font-weight:500;transition:border-color .15s,color .15s;display:inline-flex}.sh-vis-toggle-btn:hover{border-color:var(--accent);color:var(--fg)}.sh-locked-note{background:var(--surface);border:1px solid var(--border);border-radius:12px;flex-direction:column;gap:10px;margin:12px 0;padding:18px 20px;display:flex}.sh-locked-note-row{align-items:flex-start;gap:12px;display:flex}.sh-locked-note-row svg{color:var(--fg-muted);flex-shrink:0;margin-top:1px}.sh-locked-note-text{color:var(--fg);font-size:13.5px;line-height:1.55}.sh-locked-fork-link{color:var(--accent);border:1px solid var(--accent);border-radius:7px;align-self:flex-start;align-items:center;gap:6px;margin-top:4px;padding:7px 14px;font-size:13px;font-weight:600;text-decoration:none;transition:background .1s;display:inline-flex}.sh-locked-fork-link:hover{background:var(--accent-soft)}.sh-result-band{background:var(--card);border:1px solid var(--border);border-radius:16px;flex-direction:column;align-items:center;gap:6px;margin-bottom:20px;padding:28px 20px 20px;display:flex}.sh-result-pct{letter-spacing:-.03em;font-variant-numeric:tabular-nums;align-items:flex-start;font-size:72px;font-weight:300;line-height:1;display:flex}.sh-result-pct span.unit{margin-top:12px;margin-left:2px;font-size:28px;font-weight:400}.sh-result-pct.green{color:var(--success)}.sh-result-pct.amber{color:var(--warning)}.sh-result-pct.red{color:var(--destructive)}.sh-result-stats{flex-wrap:wrap;justify-content:center;align-items:center;gap:18px;margin-top:4px;display:flex}.sh-result-stat{flex-direction:column;align-items:center;gap:2px;display:flex}.sh-result-stat .val{color:var(--fg);font-family:JetBrains Mono,monospace;font-size:18px;font-weight:400}.sh-result-stat .lbl{letter-spacing:.1em;text-transform:uppercase;color:var(--fg-muted);font-family:JetBrains Mono,monospace;font-size:10.5px}.sh-result-sub{color:var(--fg-muted);text-align:center;font-size:12px}.sh-take-quiz{background:var(--accent-soft);border:1px solid var(--accent);text-align:center;border-radius:12px;flex-direction:column;align-items:center;gap:8px;margin-bottom:20px;padding:18px 20px;display:flex}.sh-take-quiz-lbl{color:var(--fg);font-size:13px;font-weight:500}.sh-take-quiz-btn{background:var(--accent);color:var(--accent-fg);cursor:pointer;border:none;border-radius:8px;align-items:center;gap:7px;padding:9px 20px;font-size:13.5px;font-weight:600;text-decoration:none;transition:opacity .1s;display:inline-flex}.sh-take-quiz-btn:hover{opacity:.88}.sh-result-opt{background:var(--surface);border:1px solid #0000;border-radius:8px;align-items:center;gap:10px;padding:9px 12px;font-size:13px;line-height:1.45;display:flex}.sh-result-opt .letter{color:var(--fg-muted);flex-shrink:0;width:16px;font-family:JetBrains Mono,monospace;font-size:11px;font-weight:600}.sh-result-opt .text{color:var(--fg);flex:1}.sh-result-opt .mark{letter-spacing:.06em;white-space:nowrap;flex-shrink:0;align-items:center;gap:5px;font-family:JetBrains Mono,monospace;font-size:10px;font-weight:600;display:flex}.sh-result-opt.correct{background:oklch(55% .14 145/.07);border-color:oklch(55% .14 145/.25)}.sh-result-opt.correct .mark{color:var(--success)}.sh-result-opt.sharer-wrong{background:oklch(60% .2 25/.07);border-color:oklch(60% .2 25/.22)}.sh-result-opt.sharer-wrong .mark{color:var(--destructive)}.sh-result-opt.sharer-right .mark{color:var(--success)}.sh-result-text-ans{flex-direction:column;gap:8px;margin-bottom:8px;display:flex}.sh-result-text-ans .ans-row{border-radius:8px;padding:10px 13px;font-size:13px;line-height:1.45}.sh-result-text-ans .ans-row.correct{background:oklch(55% .14 145/.07);border:1px solid oklch(55% .14 145/.25)}.sh-result-text-ans .ans-row.wrong{background:oklch(60% .2 25/.07);border:1px solid oklch(60% .2 25/.22)}.sh-result-text-ans .ans-lbl{letter-spacing:.1em;text-transform:uppercase;opacity:.65;margin-right:8px;font-family:JetBrains Mono,monospace;font-size:10px;font-weight:600}.rs-share-btn{border:1px solid var(--border);cursor:pointer;color:var(--fg);background:0 0;border-radius:7px;align-items:center;gap:7px;padding:7px 14px;font-size:13px;font-weight:500;transition:background .1s,border-color .15s;display:inline-flex}.rs-share-btn:hover{background:var(--hover);border-color:var(--border-2)}.st-typebadge.result{color:oklch(62% .14 185);background:oklch(56% .16 185/.1);border-color:oklch(56% .16 185/.25)}.st-vis-row{background:var(--surface);border:1px solid var(--border);border-radius:7px;align-items:center;gap:0;width:fit-content;margin-top:8px;display:flex;overflow:hidden}.st-vis-seg{cursor:pointer;color:var(--fg-muted);border:none;border-right:1px solid var(--border);background:0 0;padding:5px 12px;font-size:12px;font-weight:500;transition:background .1s,color .1s}.st-vis-seg:last-child{border-right:none}.st-vis-seg:hover{background:var(--hover);color:var(--fg)}.st-vis-seg.on{background:var(--accent);color:var(--accent-fg);font-weight:600}.st-vis-seg:disabled{opacity:.5;cursor:not-allowed}.st-vis-saved{color:var(--success);letter-spacing:.02em;margin-left:10px;font-size:11px;font-weight:500}.aw-desc-field{flex-direction:column;gap:7px;padding-top:16px;display:flex}.aw-opt{color:var(--fg-muted);letter-spacing:0;margin-left:6px;font-size:11px;font-weight:400}.aw-desc-wrap{position:relative}.aw-desc-ta{border:1px solid var(--border);background:var(--surface);width:100%;color:var(--fg);resize:vertical;box-sizing:border-box;border-radius:8px;padding:10px 12px;font-family:inherit;font-size:13px;line-height:1.5;transition:border-color .15s}.aw-desc-ta:focus{border-color:var(--accent);outline:none}.aw-desc-ta::placeholder{color:var(--fg-muted)}.aw-desc-ta:disabled{opacity:.6}.aw-char-counter{color:var(--fg-muted);pointer-events:none;font-family:JetBrains Mono,monospace;font-size:10.5px;position:absolute;bottom:8px;right:10px}.as-about-quiz{padding:16px 18px}.as-desc-text{color:var(--fg-muted);margin:0;font-size:13px;line-height:1.6}.sh-asm-desc{color:var(--fg-muted);margin:12px 0 0;padding:0;font-size:13.5px;line-height:1.65}.st-bio-wrap{position:relative}.st-bio-ta{border:1px solid var(--border);background:var(--surface);width:100%;color:var(--fg);resize:none;box-sizing:border-box;border-radius:8px;padding:9px 12px;font-family:inherit;font-size:13px;line-height:1.5;transition:border-color .15s}.st-bio-ta:focus{border-color:var(--accent);outline:none}.st-bio-ta::placeholder{color:var(--fg-muted)}.st-bio-ta:disabled{opacity:.6}.st-bio-counter{color:var(--fg-muted);pointer-events:none;font-family:JetBrains Mono,monospace;font-size:10.5px;position:absolute;bottom:7px;right:10px}.st-bio-help{color:var(--fg-muted);margin-top:5px;font-size:11.5px;line-height:1.45}.msd-scrim{z-index:500;background:#00000073;justify-content:center;align-items:center;padding:24px;display:flex;position:fixed;inset:0}.msd-panel{background:var(--surface);border:1px solid var(--border);border-radius:16px;flex-direction:column;width:100%;max-width:480px;max-height:calc(100vh - 48px);display:flex;overflow:hidden;box-shadow:0 20px 60px #00000038}.msd-header{flex-shrink:0;justify-content:space-between;align-items:flex-start;gap:12px;padding:20px 20px 0;display:flex}.msd-title{color:var(--fg);margin:0 0 3px;font-size:16px;font-weight:700}.msd-sub{color:var(--fg-muted);margin:0;font-size:12.5px}.msd-close-btn{cursor:pointer;color:var(--fg-muted);background:0 0;border:none;border-radius:6px;flex-shrink:0;justify-content:center;align-items:center;padding:4px;transition:background .12s,color .12s;display:flex}.msd-close-btn:hover{background:var(--surface-hover);color:var(--fg)}.msd-list{-webkit-overflow-scrolling:touch;flex:1;padding:12px 12px 4px;overflow-y:auto}.msd-empty,.msd-loading{text-align:center;color:var(--fg-muted);padding:24px 0;font-size:13px}.msd-row{background:var(--surface);touch-action:none;border:1px solid #0000;border-radius:10px;align-items:center;gap:8px;margin-bottom:4px;padding:8px;transition:background .12s,border-color .12s,box-shadow .12s,transform .12s;display:flex;position:relative}.msd-row:hover{background:var(--surface-hover)}.msd-row.dragging{background:var(--surface);border-color:var(--accent);z-index:10;transform:scale(1.02);box-shadow:0 8px 24px #00000026}.msd-row.other-dragging{transition:transform .2s}.msd-handle{cursor:grab;width:28px;height:28px;color:var(--fg-muted);touch-action:none;background:0 0;border:none;border-radius:6px;flex-shrink:0;justify-content:center;align-items:center;transition:color .12s,background .12s;display:flex}.msd-handle:hover{color:var(--fg);background:var(--surface-hover)}.msd-handle:focus-visible{outline:2px solid var(--accent);outline-offset:1px;background:var(--accent-soft);color:var(--accent)}.msd-handle:active{cursor:grabbing}.msd-handle:disabled{opacity:.3;cursor:not-allowed}.msd-handle-ph{flex-shrink:0;width:28px}.msd-name-cell{flex:1;align-items:center;gap:8px;min-width:0;display:flex}.msd-name-text{color:var(--fg);white-space:nowrap;text-overflow:ellipsis;cursor:default;font-size:13.5px;font-weight:500;overflow:hidden}.msd-active-pill{letter-spacing:.08em;text-transform:uppercase;color:var(--accent);background:var(--accent-soft);border-radius:4px;flex-shrink:0;padding:2px 6px;font-family:JetBrains Mono,monospace;font-size:9.5px;font-weight:700}.msd-name-input{border:1px solid var(--accent);background:var(--surface);min-width:0;color:var(--fg);border-radius:6px;outline:none;flex:1;padding:4px 8px;font-family:inherit;font-size:13.5px}.msd-name-input:focus{box-shadow:0 0 0 3px var(--accent-soft)}.msd-edit-actions{flex-shrink:0;gap:4px;display:flex}.msd-icon-btn{cursor:pointer;border:none;border-radius:6px;flex-shrink:0;justify-content:center;align-items:center;width:28px;height:28px;transition:background .12s,color .12s;display:flex}.msd-icon-btn.primary{background:var(--accent-soft);color:var(--accent)}.msd-icon-btn.primary:hover{background:var(--accent);color:var(--fg-on-accent,#fff)}.msd-icon-btn.ghost{color:var(--fg-muted);background:0 0}.msd-icon-btn.ghost:hover{background:var(--surface-hover);color:var(--fg)}.msd-icon-btn:focus-visible{outline:2px solid var(--accent);outline-offset:1px}.msd-menu-wrap{flex-shrink:0;position:relative}.msd-menu{z-index:20;background:var(--surface);border:1px solid var(--border);border-radius:10px;min-width:160px;padding:4px;animation:msd-menu-in .1s ease-out;position:absolute;top:calc(100% + 4px);right:0;box-shadow:0 8px 24px #00000024}@keyframes msd-menu-in{0%{opacity:0;transform:translateY(-4px)scale(.97)}to{opacity:1;transform:none}}.msd-menu-item{cursor:pointer;width:100%;color:var(--fg);text-align:left;background:0 0;border:none;border-radius:6px;align-items:center;gap:8px;padding:7px 10px;font-family:inherit;font-size:13px;transition:background .1s;display:flex}.msd-menu-item:hover:not(:disabled){background:var(--surface-hover)}.msd-menu-item:disabled{opacity:.38;cursor:not-allowed}.msd-menu-item .ic{width:16px;color:var(--fg-muted);flex-shrink:0;justify-content:center;align-items:center;display:flex}.msd-menu-item.danger,.msd-menu-item.danger .ic{color:var(--destructive)}.msd-menu-item.danger:hover:not(:disabled){background:var(--destructive-soft,oklch(96% .02 25))}.msd-menu-sep{background:var(--border);height:1px;margin:3px 0}.msd-footer{flex-shrink:0;justify-content:flex-end;padding:12px 16px 16px;display:flex}.msd-done-btn{background:var(--accent-soft);color:var(--accent);border:1px solid var(--accent);cursor:pointer;border-radius:8px;padding:7px 20px;font-family:inherit;font-size:13.5px;font-weight:600;transition:background .12s,color .12s}.msd-done-btn:hover{background:var(--accent);color:var(--fg-on-accent,#fff)}.msd-done-btn:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.msd-toast{background:var(--destructive);color:#fff;z-index:600;white-space:nowrap;border-radius:10px;padding:10px 20px;font-size:13.5px;font-weight:500;animation:toast-in .2s ease-out;position:fixed;bottom:24px;left:50%;transform:translate(-50%);box-shadow:0 4px 16px #0003}@keyframes toast-in{0%{opacity:0;transform:translate(-50%)translateY(8px)}to{opacity:1;transform:translate(-50%)translateY(0)}}.sr-only{clip:rect(0,0,0,0);white-space:nowrap;border-width:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.menu.semester .item.active-sem{background:var(--accent-soft);color:var(--accent)}.menu .footer-item,button.footer-item{width:100%;color:var(--fg-muted);cursor:pointer;background:0 0;border:none;border-radius:0 0 8px 8px;justify-content:space-between;align-items:center;gap:6px;padding:8px 12px 8px 14px;font-family:inherit;font-size:12.5px;transition:color .12s,background .12s;display:flex}button.footer-item:hover{color:var(--fg);background:var(--surface-hover)}@media (max-width:480px){.msd-panel{border-radius:16px 16px 0 0;max-height:80vh;margin-top:auto}.msd-scrim{align-items:flex-end;padding:0}.msd-toast{bottom:88px}}.sub-page{flex-direction:column;width:100%;max-width:720px;margin:0 auto;display:flex}.sub-plan-card{background:var(--card);border:1px solid var(--border);border-radius:var(--radius-card);box-shadow:var(--shadow);margin-bottom:22px;overflow:hidden}.sub-plan-card.pro{border-color:var(--accent)}@supports (color:color-mix(in lab,red,red)){.sub-plan-card.pro{border-color:color-mix(in oklch,var(--accent) 40%,var(--border))}}.sub-plan-card.pro{background:linear-gradient(180deg,var(--accent-soft) 0,var(--card) 50%)}@supports (color:color-mix(in lab,red,red)){.sub-plan-card.pro{background:linear-gradient(180deg,color-mix(in oklch,var(--accent-soft) 26%,var(--card)) 0,var(--card) 50%)}}.sub-plan-card.cancelled{border-color:var(--warning)}@supports (color:color-mix(in lab,red,red)){.sub-plan-card.cancelled{border-color:color-mix(in oklch,var(--warning) 40%,var(--border))}}.sub-plan-card .row-1{border-bottom:1px solid var(--border);grid-template-columns:1fr auto;align-items:center;gap:16px;padding:22px 24px;display:grid}.sub-plan-card .row-1 .left{flex-direction:column;display:flex}.sub-plan-card .row-1 .ti{letter-spacing:-.02em;color:var(--fg);align-items:center;gap:10px;margin-bottom:4px;font-family:Instrument Serif,serif;font-size:28px;font-weight:400;line-height:1.05;display:flex}.sub-plan-card .row-1 .sub{color:var(--muted-fg);font-size:13px;line-height:1.5}.sub-plan-card .row-1 .sub b{color:var(--fg);font-family:JetBrains Mono,monospace;font-weight:600}.sub-plan-card .cancel-pill,.sub-plan-card .free-pill,.sub-plan-card .pro-pill{letter-spacing:.06em;text-transform:uppercase;border-radius:999px;align-items:center;gap:5px;padding:3px 10px;font-family:JetBrains Mono,monospace;font-size:10.5px;font-weight:600;display:inline-flex}.sub-plan-card .pro-pill{background:var(--accent);color:var(--accent-fg)}.sub-plan-card .free-pill{background:var(--muted);color:var(--muted-fg);border:1px solid var(--border)}.sub-plan-card .cancel-pill{background:var(--warning-soft);color:oklch(36% .1 75);border:1px solid var(--warning)}@supports (color:color-mix(in lab,red,red)){.sub-plan-card .cancel-pill{border:1px solid color-mix(in oklch,var(--warning) 40%,transparent)}}[data-theme=dark] .sub-plan-card .cancel-pill{color:oklch(85% .1 75)}.sub-plan-card .row-1 .right .price{letter-spacing:-.02em;color:var(--fg);font-family:Instrument Serif,serif;font-size:32px;font-weight:400;line-height:1}.sub-plan-card .row-1 .right .cadence{color:var(--muted-fg);letter-spacing:.04em;text-align:right;margin-top:4px;font-family:JetBrains Mono,monospace;font-size:11px}.sub-plan-card .billing-grid{grid-template-columns:1fr 1fr;gap:16px;padding:20px 24px;display:grid}.sub-plan-card .billing-grid .field{flex-direction:column;gap:4px;display:flex}.sub-plan-card .billing-grid .field .lbl{letter-spacing:.08em;text-transform:uppercase;color:var(--muted-fg);font-family:JetBrains Mono,monospace;font-size:10px;font-weight:600}.sub-plan-card .billing-grid .field .v{color:var(--fg);letter-spacing:-.005em;align-items:center;gap:8px;font-size:13.5px;font-weight:500;display:flex}.sub-plan-card .billing-grid .field .v .card-glyph{background:var(--muted);border:1px solid var(--border);border-radius:5px;align-items:center;gap:6px;padding:3px 8px;font-family:JetBrains Mono,monospace;font-size:11px;display:inline-flex}.sub-plan-card .actions-row{border-top:1px solid var(--border);background:var(--card);align-items:center;gap:8px;padding:14px 24px;display:flex}@supports (color:color-mix(in lab,red,red)){.sub-plan-card .actions-row{background:color-mix(in oklch,var(--card) 70%,var(--muted) 30%)}}.sub-plan-card .actions-row .spacer{flex:1}.sub-cancel-notice{background:var(--warning-soft);border-top:1px solid var(--warning);grid-template-columns:28px 1fr;align-items:flex-start;gap:12px;padding:14px 20px;display:grid}@supports (color:color-mix(in lab,red,red)){.sub-cancel-notice{border-top:1px solid color-mix(in oklch,var(--warning) 40%,transparent)}}.sub-cancel-notice{border-bottom:1px solid var(--warning)}@supports (color:color-mix(in lab,red,red)){.sub-cancel-notice{border-bottom:1px solid color-mix(in oklch,var(--warning) 40%,transparent)}}.sub-cancel-notice .ic-bg{background:var(--warning);border-radius:7px;width:28px;height:28px}@supports (color:color-mix(in lab,red,red)){.sub-cancel-notice .ic-bg{background:color-mix(in oklch,var(--warning) 60%,transparent)}}.sub-cancel-notice .ic-bg{color:oklch(18% .05 75);place-items:center;display:grid}[data-theme=dark] .sub-cancel-notice .ic-bg{color:oklch(18% .05 75);background:oklch(65% .13 75)}.sub-cancel-notice .ti{color:var(--fg);margin-bottom:2px;font-size:13px;font-weight:600}.sub-cancel-notice .b{color:var(--fg);font-size:12.5px;line-height:1.5}.sub-cancel-notice .b b{font-weight:600}.sub-btn{appearance:none;height:34px;font:inherit;cursor:pointer;letter-spacing:-.005em;border:0;border-radius:8px;justify-content:center;align-items:center;gap:6px;padding:0 14px;font-size:13px;font-weight:500;transition:all .12s;display:inline-flex}.sub-btn.primary{background:var(--fg);color:var(--bg)}.sub-btn.primary:hover{background:oklch(from var(--fg) calc(l - .05) c h)}.sub-btn.accent{background:var(--accent);color:var(--accent-fg)}.sub-btn.accent:hover{background:oklch(from var(--accent) calc(l - .04) c h)}.sub-btn.ghost{border:1px solid var(--border);color:var(--fg);background:0 0}.sub-btn.ghost:hover,.sub-btn.soft{background:var(--muted)}.sub-btn.soft{color:var(--fg);border:1px solid var(--border)}.sub-btn.soft:hover{background:var(--muted-2)}.sub-btn.destructive-ghost{color:var(--destructive);border:1px solid var(--destructive);background:0 0}@supports (color:color-mix(in lab,red,red)){.sub-btn.destructive-ghost{border:1px solid color-mix(in oklch,var(--destructive) 40%,transparent)}}.sub-btn.destructive-ghost:hover{background:var(--destructive-soft)}.sub-btn.destructive{background:var(--destructive);color:oklch(99% 0 0)}.sub-btn.sm{border-radius:6px;height:28px;padding:0 10px;font-size:12px}.sub-btn.lg{border-radius:10px;height:44px;padding:0 22px;font-size:14px}.sub-btn:disabled{opacity:.4;cursor:not-allowed}.sub-usage-card{background:var(--card);border:1px solid var(--border);border-radius:var(--radius-card);box-shadow:var(--shadow);margin-bottom:22px;overflow:hidden}.sub-usage-card .head{border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;padding:14px 20px;display:flex}.sub-usage-card .head .ti{color:var(--fg);letter-spacing:-.005em;font-size:13px;font-weight:600}.sub-usage-card .head .reset{color:var(--muted-fg);letter-spacing:.02em;font-family:JetBrains Mono,monospace;font-size:11px}.sub-usage-card .body{gap:18px;padding:18px 20px}.sub-meter,.sub-usage-card .body{flex-direction:column;display:flex}.sub-meter{gap:6px}.sub-meter .top{justify-content:space-between;align-items:baseline;gap:12px;display:flex}.sub-meter .top .lbl{color:var(--fg);align-items:center;gap:8px;font-size:13px;font-weight:500;display:flex}.sub-meter .top .ic{color:var(--muted-fg);display:inline-flex}.sub-meter .top .v{color:var(--fg);font-variant-numeric:tabular-nums;letter-spacing:.02em;font-family:JetBrains Mono,monospace;font-size:12px}.sub-meter .top .v b{font-weight:600}.sub-meter .top .v .cap{color:var(--muted-fg)}.sub-meter .top .v .unl{color:var(--success);font-weight:600}[data-theme=dark] .sub-meter .top .v .unl{color:oklch(85% .1 150)}.sub-meter .bar{background:var(--muted-2);border-radius:999px;height:4px;overflow:hidden}.sub-meter .bar .fill{border-radius:inherit;background:var(--muted-fg);height:100%;transition:width .4s,background .4s}.sub-meter.warning .bar .fill{background:var(--warning)}[data-theme=dark] .sub-meter.warning .bar .fill{background:oklch(78% .13 75)}.sub-meter.warning .top .v{color:oklch(36% .1 75)}[data-theme=dark] .sub-meter.warning .top .v{color:oklch(85% .1 75)}.sub-meter.unlimited .bar .fill{background:linear-gradient(90deg,var(--success) 0,var(--accent) 100%);width:100%!important}.sub-features-card{background:var(--card);border:1px solid var(--border);border-radius:var(--radius-card);box-shadow:var(--shadow);margin-bottom:22px;overflow:hidden}.sub-features-card .head{border-bottom:1px solid var(--border);color:var(--fg);padding:14px 20px;font-size:13px;font-weight:600}.sub-features-card .feats{margin:0;padding:0;list-style:none}.sub-features-card .feats li{border-bottom:1px solid var(--border);grid-template-columns:24px 1fr auto;align-items:center;gap:12px;padding:11px 20px;display:grid}@supports (color:color-mix(in lab,red,red)){.sub-features-card .feats li{border-bottom:1px solid color-mix(in oklch,var(--border) 60%,transparent)}}.sub-features-card .feats li{color:var(--fg);font-size:13px}.sub-features-card .feats li:last-child{border-bottom:0}.sub-features-card .feats li .mk{border-radius:50%;place-items:center;width:22px;height:22px;display:grid}.sub-features-card .feats li.unlocked .mk{background:var(--success);color:oklch(99% 0 0)}.sub-features-card .feats li.locked .mk{background:var(--muted);color:var(--muted-fg)}.sub-features-card .feats li.locked,.sub-features-card .feats li.locked .label{color:var(--muted-fg)}.sub-features-card .feats li .label{font-weight:500}.sub-features-card .feats li .value{color:var(--muted-fg);letter-spacing:.02em;font-family:JetBrains Mono,monospace;font-size:11.5px}.sub-checkout{width:100%;max-width:600px;margin:0 auto}.sub-checkout-card{background:var(--card);border:1px solid var(--border);box-shadow:var(--shadow);border-radius:14px;overflow:hidden}.sub-checkout-card>.head{border-bottom:1px solid var(--border);align-items:center;gap:12px;padding:22px 26px 18px;display:flex}.sub-checkout-card>.head .pro-mark{background:var(--accent);width:44px;height:44px;color:var(--accent-fg);border-radius:12px;place-items:center;display:grid}.sub-checkout-card>.head h2{letter-spacing:-.015em;margin:0;font-family:Instrument Serif,serif;font-size:24px;font-weight:400}.sub-checkout-card>.head .sub{color:var(--muted-fg);margin-top:2px;font-size:13px}.sub-checkout-card .body{padding:22px 26px}.sub-checkout-card .order{background:var(--muted);border:1px solid var(--border);border-radius:10px;flex-direction:column;gap:12px;margin-bottom:18px;padding:16px 18px;display:flex}.sub-checkout-card .order .ln{color:var(--fg);justify-content:space-between;align-items:baseline;gap:12px;font-size:13.5px;display:flex}.sub-checkout-card .order .ln .l{color:var(--fg)}.sub-checkout-card .order .ln .r{color:var(--fg);font-family:JetBrains Mono,monospace;font-size:13.5px;font-weight:500}.sub-checkout-card .order .ln.sub-ln,.sub-checkout-card .order .ln.sub-ln .r{color:var(--muted-fg);font-size:12px}.sub-checkout-card .order .ln.discount .r{color:var(--success)}[data-theme=dark] .sub-checkout-card .order .ln.discount .r{color:oklch(85% .1 150)}.sub-checkout-card .order .ln.total{border-top:1px solid var(--border-2);padding-top:12px;font-size:16px;font-weight:600}.sub-checkout-card .order .ln.total .r{letter-spacing:-.02em;color:var(--fg);font-family:Instrument Serif,serif;font-size:26px;font-weight:400}.sub-checkout-card .legal{color:var(--muted-fg);margin-bottom:18px;font-size:11.5px;line-height:1.55}.sub-checkout-card .legal a{color:var(--accent);text-decoration:none}.sub-checkout-card .foot{border-top:1px solid var(--border);background:var(--card);justify-content:space-between;align-items:center;gap:12px;padding:16px 26px;display:flex}@supports (color:color-mix(in lab,red,red)){.sub-checkout-card .foot{background:color-mix(in oklch,var(--card) 70%,var(--muted) 30%)}}.sub-checkout-card .foot .stripe-mark{color:var(--muted-fg);align-items:center;gap:6px;font-size:11.5px;display:flex}.sub-checkout-card .foot .stripe-mark b{color:oklch(55% .13 280);letter-spacing:.02em;font-family:JetBrains Mono,monospace;font-size:11px;font-weight:700}.sub-cancel{width:100%;max-width:600px;margin:0 auto}.sub-cancel-card{background:var(--card);border:1px solid var(--border);box-shadow:var(--shadow);border-radius:14px;overflow:hidden}.sub-cancel-card .stepper{align-items:center;gap:6px;padding:18px 26px 0;display:flex}.sub-cancel-card .stepper .dot{background:var(--muted-2);border-radius:50%;width:8px;height:8px}.sub-cancel-card .stepper .dot.done{background:var(--muted-fg)}.sub-cancel-card .stepper .dot.cur{background:var(--muted-fg);box-shadow:0 0 0 3px var(--muted-fg)}@supports (color:color-mix(in lab,red,red)){.sub-cancel-card .stepper .dot.cur{box-shadow:0 0 0 3px color-mix(in oklch,var(--muted-fg) 30%,transparent)}}.sub-cancel-card .stepper .line{background:var(--muted-2);flex:1;max-width:32px;height:2px}.sub-cancel-card .stepper .line.done{background:var(--muted-fg)}.sub-cancel-card .stepper .label{letter-spacing:.06em;text-transform:uppercase;color:var(--muted-fg);margin-left:auto;font-family:JetBrains Mono,monospace;font-size:10.5px;font-weight:600}.sub-cancel-card .body{padding:22px 26px 6px}.sub-cancel-card h2{letter-spacing:-.015em;margin:0 0 8px;font-family:Instrument Serif,serif;font-size:26px;font-weight:400;line-height:1.15}.sub-cancel-card p.lead{color:var(--muted-fg);margin:0 0 18px;font-size:13.5px;line-height:1.55}.sub-cancel-card p.lead b{color:var(--fg);font-weight:600}.sub-cancel-card .foot{border-top:1px solid var(--border);background:var(--card);justify-content:space-between;align-items:center;gap:12px;padding:14px 26px;display:flex}@supports (color:color-mix(in lab,red,red)){.sub-cancel-card .foot{background:color-mix(in oklch,var(--card) 70%,var(--muted) 30%)}}.sub-lose{background:var(--muted);border:1px solid var(--border);border-radius:10px;margin-bottom:16px;padding:16px 18px}.sub-lose .h{letter-spacing:.08em;text-transform:uppercase;color:var(--muted-fg);margin-bottom:10px;font-family:JetBrains Mono,monospace;font-size:10px;font-weight:600}.sub-lose ul{flex-direction:column;gap:8px;margin:0;padding:0;list-style:none;display:flex}.sub-lose li{color:var(--fg);align-items:flex-start;gap:9px;font-size:13px;line-height:1.45;display:flex}.sub-lose li .mk{width:16px;height:16px;color:var(--muted-fg);flex-shrink:0;place-items:center;margin-top:1px;display:grid}.sub-lose li b{font-weight:600}.sub-keep{background:var(--success-soft);border:1px solid var(--success);grid-template-columns:28px 1fr;gap:12px;padding:14px 16px;display:grid}@supports (color:color-mix(in lab,red,red)){.sub-keep{border:1px solid color-mix(in oklch,var(--success) 30%,transparent)}}.sub-keep{border-radius:10px;margin-bottom:4px}.sub-keep .ic-bg{background:var(--success);color:oklch(99% 0 0);border-radius:7px;place-items:center;width:28px;height:28px;display:grid}.sub-keep .ti{margin-bottom:2px;font-weight:600}.sub-keep .b,.sub-keep .ti{color:var(--fg);font-size:12.5px}.sub-keep .b{line-height:1.5}.sub-offer{border:1px solid var(--border);background:var(--card);border-radius:10px;grid-template-columns:36px 1fr auto;align-items:center;gap:14px;margin-bottom:10px;padding:16px 18px;display:grid;position:relative}.sub-offer.accent{background:var(--accent-soft);border-color:var(--accent)}@supports (color:color-mix(in lab,red,red)){.sub-offer.accent{border-color:color-mix(in oklch,var(--accent) 35%,transparent)}}.sub-offer .ic-bg{background:var(--muted);width:36px;height:36px;color:var(--muted-fg);border-radius:9px;flex-shrink:0;place-items:center;display:grid}.sub-offer.accent .ic-bg{background:var(--accent);color:var(--accent-fg)}.sub-offer .text{min-width:0}.sub-offer .ti{color:var(--fg);letter-spacing:-.005em;margin-bottom:2px;font-size:13.5px;font-weight:600}.sub-offer .b{color:var(--muted-fg);font-size:12px;line-height:1.5}.sub-offer .b b{color:var(--fg);font-family:JetBrains Mono,monospace;font-weight:600}.sub-offer.accent .b,.sub-offer.accent .b b{color:var(--accent-soft-fg)}.sub-offer .ribbon{background:var(--accent);color:var(--accent-fg);letter-spacing:.06em;text-transform:uppercase;border-radius:999px;padding:2px 8px;font-family:JetBrains Mono,monospace;font-size:9.5px;font-weight:600;position:absolute;top:-8px;right:16px}.sub-radio-group{flex-direction:column;gap:8px;margin:4px 0 16px;display:flex}.sub-radio{border:1px solid var(--border);cursor:pointer;background:var(--card);border-radius:10px;grid-template-columns:18px 1fr;align-items:flex-start;gap:12px;padding:14px 16px;display:grid}.sub-radio.selected,.sub-radio:hover{background:var(--muted)}.sub-radio.selected{border-color:var(--fg)}.sub-radio.destructive.selected{border-color:var(--destructive);background:var(--destructive-soft)}.sub-radio .dot{border:2px solid var(--input);border-radius:50%;flex-shrink:0;width:18px;height:18px;margin-top:1px;position:relative}.sub-radio.selected .dot{border-color:var(--fg)}.sub-radio.destructive.selected .dot{border-color:var(--destructive)}.sub-radio.selected .dot:after{content:"";background:var(--fg);border-radius:50%;width:10px;height:10px;position:absolute;top:2px;left:2px}.sub-radio.destructive.selected .dot:after{background:var(--destructive)}.sub-radio .text .ti{color:var(--fg);letter-spacing:-.005em;margin-bottom:4px;font-size:13.5px;font-weight:600}.sub-radio .text .b{color:var(--muted-fg);font-size:12.5px;line-height:1.5}.sub-radio .text .b .date{color:var(--fg);font-family:JetBrains Mono,monospace;font-weight:600}.sub-cancel-done{text-align:center;padding:36px 28px 12px}.sub-cancel-done .glyph{background:var(--warning-soft);color:oklch(36% .1 75);border-radius:16px;place-items:center;width:56px;height:56px;margin:0 auto 18px;display:grid}[data-theme=dark] .sub-cancel-done .glyph{color:oklch(85% .1 75)}.sub-cancel-done h2{letter-spacing:-.015em;margin:0 0 8px;font-family:Instrument Serif,serif;font-size:26px;font-weight:400}.sub-cancel-done p{color:var(--muted-fg);margin:0 0 22px;font-size:13.5px;line-height:1.55}.sub-cancel-done .summary{text-align:left;background:var(--muted);border:1px solid var(--border);border-radius:10px;max-width:380px;margin:0 auto 18px;padding:14px 16px}.sub-cancel-done .summary .row{justify-content:space-between;padding:4px 0;font-size:12.5px;display:flex}.sub-cancel-done .summary .row .l{color:var(--muted-fg)}.sub-cancel-done .summary .row .v{color:var(--fg);font-family:JetBrains Mono,monospace;font-weight:500}.sb-tile{background:var(--card);border:1px solid var(--border);border-radius:10px;width:100%;margin:8px 0;padding:12px 12px 11px}.sb-tile.pro{background:linear-gradient(135deg,var(--accent-soft) 0,var(--card) 100%);border-color:var(--accent)}@supports (color:color-mix(in lab,red,red)){.sb-tile.pro{border-color:color-mix(in oklch,var(--accent) 30%,var(--border))}}.sb-tile .top-row{justify-content:space-between;align-items:center;margin-bottom:8px;display:flex}.sb-tile .plan-pill{letter-spacing:.06em;text-transform:uppercase;border-radius:999px;align-items:center;gap:4px;padding:2px 7px;font-family:JetBrains Mono,monospace;font-size:9.5px;font-weight:600;display:inline-flex}.sb-tile.free .plan-pill{background:var(--muted);color:var(--muted-fg);border:1px solid var(--border)}.sb-tile.pro .plan-pill{background:var(--accent);color:var(--accent-fg)}.sb-tile .top-row .upgrade-lnk{color:var(--accent);align-items:center;gap:3px;font-size:11px;font-weight:600;text-decoration:none;display:inline-flex}.sb-tile .top-row .upgrade-lnk:hover{text-decoration:underline}.sb-tile.pro .top-row .since{color:var(--muted-fg);font-family:JetBrains Mono,monospace;font-size:10px}.sb-tile .mini-meter{flex-direction:column;gap:4px;display:flex}.sb-tile .mini-meter .line{color:var(--muted-fg);letter-spacing:-.005em;justify-content:space-between;font-size:11px;display:flex}.sb-tile .mini-meter .line .v{color:var(--fg);font-family:JetBrains Mono,monospace;font-weight:600}.sb-tile .mini-meter .bar{background:var(--muted-2);border-radius:999px;height:3px;overflow:hidden}.sb-tile .mini-meter .bar .fill{background:var(--muted-fg);border-radius:inherit;height:100%}.sb-tile .mini-meter.warning .bar .fill{background:var(--warning)}[data-theme=dark] .sb-tile .mini-meter.warning .bar .fill{background:oklch(78% .13 75)}.sb-tile.pro .pro-perk{color:var(--accent-soft-fg);font-size:11.5px;line-height:1.4}.um-frame{background:var(--bg);width:100%;height:100%;color:var(--fg);font-family:Inter,system-ui,sans-serif;position:relative;overflow:hidden}.um-mock-topbar{border-bottom:1px solid var(--border);background:var(--card);justify-content:space-between;align-items:center;height:56px;padding:0 24px;display:flex}.um-mock-topbar .ttl{color:var(--fg);font-size:13.5px;font-weight:500}.um-mock-topbar .right{align-items:center;gap:8px;display:flex}.um-avatar{color:oklch(32% .1 30);cursor:pointer;background:oklch(86% .07 30);border-radius:50%;place-items:center;width:32px;height:32px;font-size:12px;font-weight:600;display:grid;position:relative}.um-avatar.pro:after{content:"";background:var(--accent);border:2px solid var(--card);border-radius:50%;width:14px;height:14px;position:absolute;bottom:-1px;right:-1px}.um-menu{background:var(--card);border:1px solid var(--border);width:280px;box-shadow:var(--shadow-pop);border-radius:12px;padding:6px;position:absolute;top:66px;right:24px;overflow:hidden}.um-menu .userhead{border-bottom:1px solid var(--border);background:var(--card);margin:-6px -6px 6px;padding:12px}@supports (color:color-mix(in lab,red,red)){.um-menu .userhead{background:color-mix(in oklch,var(--card) 70%,var(--muted) 30%)}}.um-menu .userhead .row{align-items:center;gap:10px;display:flex}.um-menu .userhead .av{color:oklch(32% .1 30);background:oklch(86% .07 30);border-radius:50%;flex-shrink:0;place-items:center;width:36px;height:36px;font-size:13px;font-weight:600;display:grid}.um-menu .userhead .info{flex:1;min-width:0}.um-menu .userhead .info .nm{color:var(--fg);letter-spacing:-.005em;align-items:center;gap:6px;font-size:13px;font-weight:600;display:flex}.um-menu .userhead .info .em{color:var(--muted-fg);margin-top:1px;font-size:11.5px}.um-menu .userhead .pro-mini-pill{background:var(--accent);color:var(--accent-fg);border-radius:999px}.um-menu .userhead .free-mini-pill,.um-menu .userhead .pro-mini-pill{letter-spacing:.06em;text-transform:uppercase;align-items:center;gap:3px;padding:1px 7px;font-family:JetBrains Mono,monospace;font-size:9px;font-weight:600;display:inline-flex}.um-menu .userhead .free-mini-pill{background:var(--muted);color:var(--muted-fg);border:1px solid var(--border);border-radius:999px}.um-menu .item{color:var(--fg);cursor:pointer;text-align:left;background:0 0;border:0;border-radius:7px;align-items:center;gap:10px;width:100%;padding:8px 10px;font-family:inherit;font-size:13px;display:flex}.um-menu .item:hover{background:var(--muted)}.um-menu .item .ic{color:var(--muted-fg);display:inline-flex}.um-menu .item .right{margin-left:auto}.um-menu .upgrade-cta{background:var(--accent-soft);color:var(--accent-soft-fg);border-top:1px solid var(--accent);align-items:center;gap:10px;margin:6px -6px -6px;padding:10px 12px;font-size:12.5px;font-weight:500;display:flex}@supports (color:color-mix(in lab,red,red)){.um-menu .upgrade-cta{border-top:1px solid color-mix(in oklch,var(--accent) 20%,transparent)}}.um-menu .upgrade-cta{cursor:pointer;text-decoration:none}.um-menu .upgrade-cta:hover{background:var(--accent-soft)}@supports (color:color-mix(in lab,red,red)){.um-menu .upgrade-cta:hover{background:color-mix(in oklch,var(--accent-soft) 70%,var(--accent) 10%)}}.um-menu .upgrade-cta .ic{color:var(--accent);display:inline-flex}.um-menu .upgrade-cta .arrow{margin-left:auto}.ud-mock{background:var(--card);border:1px solid var(--border);width:100%;max-width:520px;box-shadow:var(--shadow-pop);border-radius:14px;overflow:hidden}.ud-mock .head{border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;padding:16px 20px;display:flex}.ud-mock .head .ti{color:var(--fg);font-size:14px;font-weight:600}.ud-mock .head .steps{color:var(--muted-fg);letter-spacing:.06em;font-family:JetBrains Mono,monospace;font-size:10.5px;font-weight:600}.ud-mock .quota-top{border-bottom:1px solid var(--border);padding:14px 20px}.ud-mock .body{justify-content:center;align-items:center;padding:22px 20px;display:flex}.ud-mock .dropzone{border:1.5px dashed var(--border-2);background:var(--muted);text-align:center;border-radius:10px;flex-direction:column;align-items:center;gap:8px;width:100%;padding:38px 28px;display:flex}.ud-mock .dropzone .ic-bg{background:var(--card);width:44px;height:44px;color:var(--muted-fg);border:1px solid var(--border);border-radius:11px;place-items:center;display:grid}.ud-mock .dropzone .h{color:var(--fg);margin-top:4px;font-size:14px;font-weight:500}.ud-mock .dropzone .sub{color:var(--muted-fg);font-size:12px}.ud-mock .foot{border-top:1px solid var(--border);background:var(--card);padding:12px 20px}@supports (color:color-mix(in lab,red,red)){.ud-mock .foot{background:color-mix(in oklch,var(--card) 70%,var(--muted) 30%)}}.ud-mock .foot{justify-content:space-between;gap:8px;display:flex}.dash-strip{background:var(--card);border:1px solid var(--border);border-radius:var(--radius-card);box-shadow:var(--shadow);margin-bottom:22px;padding:16px 18px}.dash-strip .head{justify-content:space-between;align-items:center;margin-bottom:14px;display:flex}.dash-strip .head .ti{letter-spacing:.08em;gap:8px;font-family:JetBrains Mono,monospace;font-size:10.5px;display:flex}.dash-strip .head .free-pill,.dash-strip .head .ti{text-transform:uppercase;color:var(--muted-fg);align-items:center;font-weight:600}.dash-strip .head .free-pill{background:var(--muted);border:1px solid var(--border);letter-spacing:.06em;border-radius:999px;padding:2px 8px;font-size:10px;display:inline-flex}.dash-strip .head .upgrade{color:var(--accent);align-items:center;gap:4px;font-size:12.5px;font-weight:600;text-decoration:none;display:inline-flex}.dash-strip .meters{grid-template-columns:repeat(3,1fr);gap:18px;display:grid}.cl-newcrs-frame{background:var(--bg);flex-direction:column;width:100%;height:100%;font-family:Inter,system-ui,sans-serif;display:flex;position:relative}.cl-newcrs-page{flex:1;padding:28px 32px;overflow:hidden}.cl-newcrs-head{justify-content:space-between;align-items:flex-end;margin-bottom:22px;display:flex}.cl-newcrs-head h1{letter-spacing:-.02em;margin:0;font-family:Instrument Serif,serif;font-size:32px;font-weight:400}.cl-newcrs-head .desc{color:var(--muted-fg);margin-top:2px;font-size:13px}.cl-newcrs-btn-wrap{position:relative}.cl-newcrs-btn{appearance:none;background:var(--accent);height:36px;color:var(--accent-fg);font:inherit;cursor:pointer;border:0;border-radius:8px;align-items:center;gap:6px;padding:0 16px;font-size:13px;font-weight:500;display:inline-flex}.cl-newcrs-btn.at-cap{background:var(--muted);color:var(--muted-fg);border:1px solid var(--border);cursor:not-allowed}.cl-newcrs-btn .lock-glyph{width:12px;height:12px;color:var(--muted-fg);display:inline-flex}.cl-newcrs-popover{z-index:10;width:360px;position:absolute;top:calc(100% + 8px);right:0}.cl-newcrs-popover:before{content:"";background:var(--card);z-index:-1;border:1px solid var(--border);border-bottom:0;border-right:0;width:12px;height:12px;position:absolute;top:-6px;right:20px;transform:rotate(45deg)}.cl-newcrs-grid{grid-template-columns:repeat(3,1fr);gap:14px;display:grid}.cl-newcrs-tile{background:var(--card);border:1px solid var(--border);border-radius:12px;height:130px;padding:14px;position:relative;overflow:hidden}.cl-newcrs-tile .strip{border-radius:3px;height:8px;margin:-14px -14px 12px}.cl-newcrs-tile .nm{color:var(--fg);letter-spacing:-.005em;margin-bottom:4px;font-size:13.5px;font-weight:500}.cl-newcrs-tile .code{color:var(--muted-fg);font-family:JetBrains Mono,monospace;font-size:11px}.invite-mock{background:var(--card);border:1px solid var(--border);width:100%;max-width:480px;box-shadow:var(--shadow-pop);border-radius:14px;overflow:hidden}.invite-mock .head{border-bottom:1px solid var(--border);color:var(--fg);padding:16px 20px;font-size:14px;font-weight:600}.invite-mock .body{padding:18px 20px}.invite-mock .role-row{border:1px solid var(--border);background:var(--card);cursor:pointer;border-radius:10px;grid-template-columns:18px 1fr;align-items:flex-start;gap:12px;margin-bottom:8px;padding:12px 14px;display:grid}.invite-mock .role-row:hover{background:var(--muted)}.invite-mock .role-row.selected{background:var(--muted);border-color:var(--fg)}.invite-mock .role-row.locked{cursor:not-allowed;opacity:.65;background:var(--muted)}.invite-mock .role-row .dot{border:2px solid var(--input);border-radius:50%;flex-shrink:0;width:18px;height:18px;margin-top:1px;position:relative}.invite-mock .role-row.selected .dot{border-color:var(--fg)}.invite-mock .role-row.selected .dot:after{content:"";background:var(--fg);border-radius:50%;width:10px;height:10px;position:absolute;top:2px;left:2px}.invite-mock .role-row .text .ti{color:var(--fg);align-items:center;gap:8px;font-size:13px;font-weight:600;display:flex}.invite-mock .role-row .text .b{color:var(--muted-fg);margin-top:3px;font-size:12px;line-height:1.5}.invite-mock .role-row .lock-pill{background:var(--accent-soft);color:var(--accent-soft-fg);letter-spacing:.06em;text-transform:uppercase;border-radius:5px;align-items:center;gap:4px;padding:2px 7px;font-family:JetBrains Mono,monospace;font-size:9.5px;font-weight:600;display:inline-flex}.invite-mock .foot{border-top:1px solid var(--border);background:var(--card);padding:12px 20px}@supports (color:color-mix(in lab,red,red)){.invite-mock .foot{background:color-mix(in oklch,var(--card) 70%,var(--muted) 30%)}}.invite-mock .foot,.stage-cap{justify-content:space-between;display:flex}.stage-cap{letter-spacing:.1em;text-transform:uppercase;color:var(--muted-fg);background:var(--card);border-bottom:1px solid var(--border);align-items:center;padding:14px 22px;font-family:JetBrains Mono,monospace;font-size:10px;font-weight:600}.stage-cap .ctx{color:var(--muted-fg);letter-spacing:0;text-transform:none;font-size:11.5px;font-weight:500}.pc-root{background:var(--bg);width:100%;height:100%;color:var(--fg);flex-direction:column;font-family:Inter,system-ui,sans-serif;display:flex;overflow:hidden auto}.pc-main{flex:1 0 auto;width:100%;max-width:1040px;margin:0 auto;padding:64px 32px 80px}.pc-hero{text-align:center;padding-bottom:36px}.pc-hero h1{letter-spacing:-.025em;max-width:720px;color:var(--fg);text-wrap:balance;margin:0 auto 12px;font-family:Instrument Serif,serif;font-size:52px;font-weight:400;line-height:1.05}.pc-hero .sub{max-width:580px;color:var(--muted-fg);margin:0 auto 28px;font-size:14.5px;line-height:1.55}.pc-hero .alts{background:var(--muted);border:1px solid var(--border);color:var(--muted-fg);letter-spacing:.04em;border-radius:999px;margin-bottom:24px;padding:2px 4px;font-family:JetBrains Mono,monospace;font-size:11px;display:inline-flex}.pc-toggle-wrap{align-items:center;gap:12px;margin:0 auto;display:inline-flex}.pc-toggle{background:var(--muted);border:1px solid var(--border);border-radius:999px;padding:4px;display:inline-flex;position:relative}.pc-toggle button{appearance:none;height:36px;color:var(--muted-fg);font:inherit;cursor:pointer;letter-spacing:-.005em;background:0 0;border:0;border-radius:999px;padding:0 22px;font-size:13.5px;font-weight:500;transition:all .15s}.pc-toggle button.on{background:var(--card);color:var(--fg);box-shadow:var(--shadow),0 0 0 1px var(--border)}.pc-savings-pill{background:var(--accent-soft);color:var(--accent-soft-fg);letter-spacing:.06em;text-transform:uppercase;border-radius:999px;align-items:center;gap:4px;padding:4px 10px;font-family:JetBrains Mono,monospace;font-size:10.5px;font-weight:600;display:inline-flex}.pc-tiers{grid-template-columns:1fr 1fr;gap:16px;margin-top:8px;display:grid}.pc-tier{background:var(--card);border:1px solid var(--border);box-shadow:var(--shadow);border-radius:16px;flex-direction:column;padding:30px 28px;display:flex;position:relative}.pc-tier.pro{border-color:var(--accent)}@supports (color:color-mix(in lab,red,red)){.pc-tier.pro{border-color:color-mix(in oklch,var(--accent) 40%,var(--border))}}.pc-tier.pro{background:linear-gradient(180deg,var(--accent-soft) 0,var(--card) 60%)}@supports (color:color-mix(in lab,red,red)){.pc-tier.pro{background:linear-gradient(180deg,color-mix(in oklch,var(--accent-soft) 30%,var(--card)) 0,var(--card) 60%)}}.pc-tier.pro:before{content:"";border-radius:0 0 4px 4px;height:2px;top:0;left:24px}.pc-tier .pro-pill,.pc-tier.pro:before{background:var(--accent);position:absolute;right:24px}.pc-tier .pro-pill{color:var(--accent-fg);letter-spacing:.08em;text-transform:uppercase;box-shadow:var(--shadow-sm);border-radius:999px;align-items:center;gap:5px;padding:4px 10px;font-family:JetBrains Mono,monospace;font-size:10px;font-weight:600;display:inline-flex;top:-10px}.pc-tier .nm-row{align-items:center;gap:10px;margin-bottom:8px;display:flex}.pc-tier .nm{letter-spacing:-.015em;color:var(--fg);font-family:Instrument Serif,serif;font-size:28px;font-weight:400}.pc-tier .desc{color:var(--muted-fg);margin-bottom:22px;font-size:13px;line-height:1.55}.pc-tier .price-row{align-items:baseline;gap:8px;margin-bottom:4px;display:flex}.pc-tier .price-row .price{letter-spacing:-.025em;color:var(--fg);font-family:Instrument Serif,serif;font-size:44px;font-weight:400;line-height:1}.pc-tier .price-row .price-strike{color:var(--muted-fg);font-family:Instrument Serif,serif;font-size:18px;text-decoration:line-through;text-decoration-thickness:1.5px}.pc-tier .price-row .cadence{font-variant-numeric:tabular-nums;font-size:14px}.pc-tier .price-fineprint,.pc-tier .price-row .cadence{color:var(--muted-fg);font-family:JetBrains Mono,monospace}.pc-tier .price-fineprint{letter-spacing:.02em;min-height:16px;margin-bottom:22px;font-size:12px}.pc-tier .cta{appearance:none;width:100%;height:44px;font:inherit;letter-spacing:-.005em;cursor:pointer;border-radius:10px;justify-content:center;align-items:center;gap:7px;margin-bottom:18px;font-size:14px;font-weight:500;transition:all .12s;display:inline-flex}.pc-tier.free .cta{background:var(--card);color:var(--fg);border:1px solid var(--border-strong,var(--border))}.pc-tier.free .cta:hover{background:var(--muted)}.pc-tier.pro .cta{background:var(--fg);color:var(--bg);box-shadow:0 1px 0 oklch(100% 0 0/.08) inset,var(--shadow);border:0}.pc-tier.pro .cta:hover{background:oklch(from var(--fg) calc(l - .05) c h)}.pc-tier .feat-h{letter-spacing:.1em;text-transform:uppercase;color:var(--muted-fg);margin-bottom:10px;font-family:JetBrains Mono,monospace;font-size:10px;font-weight:600}.pc-feat-list{flex-direction:column;gap:0;margin:0;padding:0;list-style:none;display:flex}.pc-feat-list li{border-bottom:1px solid var(--border);grid-template-columns:1fr auto;align-items:center;gap:12px;padding:10px 0;display:grid}@supports (color:color-mix(in lab,red,red)){.pc-feat-list li{border-bottom:1px solid color-mix(in oklch,var(--border) 60%,transparent)}}.pc-feat-list li{color:var(--fg);font-size:13px}.pc-feat-list li:last-child{border-bottom:0}.pc-feat-list li.highlighted{background:var(--accent-soft);border-bottom-color:#0000;border-radius:8px;margin:0 -12px;padding:10px 12px}.pc-feat-list li.highlighted+li{border-top:0}.pc-feat-list li .label{color:var(--fg);letter-spacing:-.005em;font-weight:500}.pc-feat-list li .v{color:var(--fg);text-align:right;font-family:JetBrains Mono,monospace;font-size:12px;font-weight:500}.pc-feat-list li .v.muted{color:var(--muted-fg)}.pc-feat-list li .v .check{color:var(--success);align-items:center;gap:4px;display:inline-flex}[data-theme=dark] .pc-feat-list li .v .check{color:oklch(85% .1 150)}.pc-cards-foot,.pc-feat-list li .v .dash{color:var(--muted-fg)}.pc-cards-foot{text-align:center;max-width:720px;margin-top:14px;margin-left:auto;margin-right:auto;font-size:12.5px;line-height:1.55}.pc-cards-foot b{color:var(--fg);font-weight:500}.pc-counts{background:var(--muted);border:1px solid var(--border);border-radius:12px;grid-template-columns:28px 1fr;gap:14px;max-width:720px;margin:48px auto 0;padding:18px 22px;display:grid}.pc-counts .ic-bg{background:var(--accent-soft);width:28px;height:28px;color:var(--accent-soft-fg);border-radius:7px;flex-shrink:0;place-items:center;display:grid}.pc-counts .h{letter-spacing:-.005em;color:var(--fg);margin-bottom:6px;font-size:12.5px;font-weight:600}.pc-counts ul{flex-direction:column;gap:4px;margin:0;padding:0;list-style:none;display:flex}.pc-counts li{color:var(--fg);gap:8px;font-size:12.5px;line-height:1.55;display:flex}.pc-counts li .gl{color:var(--muted-fg);flex-shrink:0;font-family:JetBrains Mono,monospace;font-size:12px}.pc-counts li b{color:var(--fg);font-weight:500}.pc-faq{max-width:720px;margin:64px auto 0}.pc-faq h2{text-align:center;letter-spacing:-.02em;color:var(--fg);margin:0 0 22px;font-family:Instrument Serif,serif;font-size:28px;font-weight:400}.pc-faq-item{border-bottom:1px solid var(--border)}.pc-faq-item:first-child{border-top:1px solid var(--border)}.pc-faq-item .q{appearance:none;width:100%;font:inherit;color:var(--fg);cursor:pointer;text-align:left;letter-spacing:-.005em;background:0 0;border:0;justify-content:space-between;align-items:center;padding:18px 4px;font-size:14.5px;font-weight:500;display:flex}.pc-faq-item .q:hover{color:var(--accent)}.pc-faq-item .q .chev{color:var(--muted-fg);transition:all .16s;display:inline-flex}.pc-faq-item.open .q .chev{color:var(--accent);transform:rotate(180deg)}.pc-faq-item.open .q{color:var(--fg)}.pc-faq-item .a{color:var(--muted-fg);padding:0 4px 22px;font-size:13.5px;line-height:1.65}.pc-faq-item .a b{color:var(--fg);font-weight:500}.pc-closing{background:var(--bg);margin-top:64px;padding:36px 32px}@supports (color:color-mix(in lab,red,red)){.pc-closing{background:color-mix(in oklch,var(--bg) 60%,var(--muted) 40%)}}.pc-closing{border-top:1px solid var(--border);border-bottom:1px solid var(--border)}.pc-closing .inner{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:24px;max-width:720px;margin:0 auto;display:flex}.pc-closing .copy{letter-spacing:-.015em;color:var(--fg);flex:1;min-width:240px;font-family:Instrument Serif,serif;font-size:24px;line-height:1.2}.pc-closing .cta{appearance:none;background:var(--fg);height:44px;color:var(--bg);font:inherit;cursor:pointer;border:0;border-radius:10px;justify-content:center;align-items:center;gap:6px;padding:0 22px;font-size:14px;font-weight:500;display:inline-flex}.up-page{width:100%;max-width:980px;margin:0 auto}.up-hero{background:var(--card);border:1px solid var(--border);box-shadow:var(--shadow);border-radius:16px;margin-bottom:24px;padding:36px 40px;position:relative;overflow:hidden}.up-hero:before{content:"";background:radial-gradient(circle,var(--accent-soft) 0,transparent 70%);pointer-events:none;opacity:.6;border-radius:50%;width:360px;height:360px;position:absolute;top:-40%;right:-10%}.up-hero .lead-ic{background:var(--accent);width:48px;height:48px;color:var(--accent-fg);border-radius:12px;place-items:center;margin-bottom:18px;display:grid;position:relative}.up-hero h1{letter-spacing:-.025em;color:var(--fg);text-wrap:balance;max-width:680px;margin:0 0 10px;font-family:Instrument Serif,serif;font-size:40px;font-weight:400;line-height:1.1;position:relative}.up-hero .sub{max-width:600px;color:var(--muted-fg);margin:0 0 24px;font-size:14.5px;line-height:1.55;position:relative}.up-hero .sub b{color:var(--fg);font-weight:500}.up-hero .actions{flex-wrap:wrap;align-items:center;gap:16px;display:flex;position:relative}.up-hero .actions .scroll-lnk{color:var(--muted-fg);align-items:center;gap:4px;font-size:13px;font-weight:500;text-decoration:none;display:inline-flex}.up-hero .actions .scroll-lnk:hover{color:var(--fg)}.up-cta{appearance:none;background:var(--fg);height:44px;color:var(--bg);font:inherit;cursor:pointer;box-shadow:0 1px 0 oklch(100% 0 0/.08) inset,var(--shadow);border:0;border-radius:10px;justify-content:center;align-items:center;gap:7px;padding:0 22px;font-size:14px;font-weight:500;display:inline-flex}.up-cta:hover{background:oklch(from var(--fg) calc(l - .05) c h)}.up-tiers-wrap{background:var(--card);border:1px solid var(--border);box-shadow:var(--shadow);border-radius:16px;padding:32px}.up-tiers-wrap>.head{text-align:center;margin-bottom:24px}.up-tiers-wrap>.head h2{letter-spacing:-.015em;margin:0 0 8px;font-family:Instrument Serif,serif;font-size:24px;font-weight:400}.up-tiers-wrap>.head .sub{color:var(--muted-fg);font-size:13px}.up-tiers-wrap>.head .pc-toggle-wrap{margin-top:14px}.up-maybe{text-align:center;margin:22px auto 0}.up-maybe a{color:var(--muted-fg);font-size:13px;font-weight:500;text-decoration:none}.up-maybe a:hover{color:var(--fg)}.pw-card{background:var(--warning-soft);border:1px solid var(--warning);grid-template-columns:36px 1fr;gap:14px;padding:18px 20px;display:grid}@supports (color:color-mix(in lab,red,red)){.pw-card{border:1px solid color-mix(in oklch,var(--warning) 50%,transparent)}}.pw-card{border-radius:12px}.pw-card .ic-bg{background:var(--warning);border-radius:9px;width:36px;height:36px}@supports (color:color-mix(in lab,red,red)){.pw-card .ic-bg{background:color-mix(in oklch,var(--warning) 60%,transparent)}}.pw-card .ic-bg{color:oklch(18% .08 75);flex-shrink:0;place-items:center;display:grid}[data-theme=dark] .pw-card .ic-bg{color:oklch(18% .05 75);background:oklch(65% .13 75)}.pw-card .body{min-width:0}.pw-card .fact{color:var(--fg);letter-spacing:-.005em;margin-bottom:6px;font-size:13.5px;font-weight:600}.pw-card .fact b{font-family:JetBrains Mono,monospace;font-weight:600}.pw-card .unlock{color:var(--fg);margin-bottom:12px;font-size:12.5px;line-height:1.55}.pw-card .footrow{justify-content:space-between;align-items:center;gap:12px;display:flex}.pw-card .see-pro{appearance:none;background:var(--fg);height:30px;color:var(--bg);font:inherit;cursor:pointer;letter-spacing:-.005em;border:0;border-radius:7px;align-items:center;gap:5px;padding:0 14px;font-size:12.5px;font-weight:500;text-decoration:none;display:inline-flex}.pw-card .see-pro:hover{background:oklch(from var(--fg) calc(l - .05) c h)}.pw-card .reset{color:var(--muted-fg);letter-spacing:.02em;font-family:JetBrains Mono,monospace;font-size:11px;font-weight:500}.pw-card.compact{align-items:center;gap:12px;padding:10px 14px;display:flex}.pw-card.compact .ic-bg{border-radius:6px;width:24px;height:24px;font-size:13px}.pw-card.compact .body{flex:1;align-items:baseline;gap:8px;min-width:0;display:flex}.pw-card.compact .fact{margin:0;font-size:12.5px;font-weight:500}.pw-card.compact .see-pro{flex-shrink:0;height:26px;padding:0 10px;font-size:11.5px}.qm-meter{background:var(--card);border:1px solid var(--border);border-radius:9px;grid-template-columns:1fr auto;gap:6px;padding:10px 14px;display:grid}.qm-meter .top{grid-column:1/-1;justify-content:space-between;align-items:baseline;gap:12px;margin-bottom:6px;display:flex}.qm-meter .top .lbl{color:var(--fg);letter-spacing:-.005em;font-size:12.5px;font-weight:500}.qm-meter .top .lbl b{color:var(--fg);font-family:JetBrains Mono,monospace;font-weight:600}.qm-meter .top .reset{color:var(--muted-fg);letter-spacing:.02em;white-space:nowrap;font-family:JetBrains Mono,monospace;font-size:10.5px}.qm-meter .bar{background:var(--muted-2);border-radius:999px;grid-column:1/-1;height:4px;overflow:hidden}.qm-meter .bar .fill{border-radius:inherit;background:var(--muted-fg);height:100%;transition:width .4s,background .4s}.qm-meter.warning{background:var(--warning-soft);border-color:var(--warning)}@supports (color:color-mix(in lab,red,red)){.qm-meter.warning{border-color:color-mix(in oklch,var(--warning) 40%,transparent)}}.qm-meter.warning .top .lbl,.qm-meter.warning .top .reset{color:oklch(36% .1 75)}[data-theme=dark] .qm-meter.warning .top .lbl,[data-theme=dark] .qm-meter.warning .top .reset{color:oklch(85% .1 75)}.qm-meter.warning .bar{background:var(--warning)}@supports (color:color-mix(in lab,red,red)){.qm-meter.warning .bar{background:color-mix(in oklch,var(--warning) 20%,transparent)}}.qm-meter.warning .bar .fill{background:var(--warning)}[data-theme=dark] .qm-meter.warning .bar .fill{background:oklch(78% .13 75)}.pc-header{z-index:30;background:var(--bg);justify-content:space-between;align-items:center;height:56px;padding:0 32px;display:flex;position:sticky;top:0}@supports (color:color-mix(in lab,red,red)){.pc-header{background:color-mix(in oklch,var(--bg) 86%,transparent)}}.pc-header{-webkit-backdrop-filter:blur(14px)saturate(160%);backdrop-filter:blur(14px)saturate(160%);border-bottom:1px solid var(--border)}@supports (color:color-mix(in lab,red,red)){.pc-header{border-bottom:1px solid color-mix(in oklch,var(--border) 70%,transparent)}}.pc-header{flex-shrink:0}.pc-header .brand{color:var(--fg);letter-spacing:-.005em;align-items:center;gap:10px;font-size:14px;font-weight:600;text-decoration:none;display:inline-flex}.pc-header .brand .mono{background:var(--fg);width:28px;height:28px;color:var(--bg);border-radius:8px;place-items:center;padding-bottom:2px;font-family:Instrument Serif,serif;font-size:19px;font-style:italic;line-height:1;display:grid;position:relative}.pc-header .brand .mono:after{content:"";background:var(--accent);border-radius:50%;width:4px;height:4px;position:absolute;bottom:4px;right:4px}.pc-header .brand .word{letter-spacing:-.01em;font-family:Instrument Serif,serif;font-size:20px;font-weight:400}.pc-header nav{flex:1;align-items:center;gap:4px;margin-left:36px;display:flex}.pc-header nav a{color:var(--muted-fg);letter-spacing:-.005em;border-radius:6px;padding:6px 12px;font-size:13px;font-weight:500;text-decoration:none}.pc-header nav a:hover{color:var(--fg)}.pc-header nav a.active{color:var(--fg);background:var(--muted)}.pc-header .right{align-items:center;gap:12px;display:flex}.pc-header .signin{color:var(--muted-fg);font-size:13px;font-weight:500;text-decoration:none}.pc-header .signin:hover{color:var(--fg)}.pc-header .cta{appearance:none;background:var(--fg);height:34px;color:var(--bg);font:inherit;cursor:pointer;border:0;border-radius:8px;justify-content:center;align-items:center;gap:6px;padding:0 14px;font-size:13px;font-weight:500;display:inline-flex}.pc-footer{border-top:1px solid var(--border);background:var(--bg);margin-top:0}@supports (color:color-mix(in lab,red,red)){.pc-footer{background:color-mix(in oklch,var(--bg) 60%,var(--muted) 40%)}}.pc-footer{flex-shrink:0}.pc-footer .cols{grid-template-columns:repeat(3,1fr);gap:40px;max-width:1040px;margin:0 auto;padding:40px 32px 24px;display:grid}.pc-footer h4{letter-spacing:.1em;text-transform:uppercase;color:var(--muted-fg);margin:0 0 12px;font-family:JetBrains Mono,monospace;font-size:10.5px;font-weight:600}.pc-footer ul{flex-direction:column;gap:8px;margin:0;padding:0;list-style:none;display:flex}.pc-footer a{color:var(--fg);font-size:13px;text-decoration:none}.pc-footer a:hover{color:var(--accent)}.pc-footer .bot{border-top:1px solid var(--border);justify-content:space-between;align-items:center;max-width:1040px;margin:0 auto;padding:16px 32px 28px;display:flex}@supports (color:color-mix(in lab,red,red)){.pc-footer .bot{border-top:1px solid color-mix(in oklch,var(--border) 60%,transparent)}}.pc-footer .bot{color:var(--muted-fg);font-size:12px}.pc-footer .bot .brand{align-items:center;gap:8px;display:flex}.pc-footer .bot .brand .mono{background:var(--fg);width:22px;height:22px;color:var(--bg);border-radius:6px;place-items:center;font-family:Instrument Serif,serif;font-size:14px;font-style:italic;line-height:1;display:grid}.pc-mobile-wrap .pc-header{height:52px;padding:0 16px}.pc-mobile-wrap .pc-header nav{display:none}.pc-mobile-wrap .pc-main{padding:32px 16px 56px}.pc-mobile-wrap .pc-hero h1{font-size:30px}.pc-mobile-wrap .pc-hero .sub{font-size:13px}.pc-mobile-wrap .pc-tiers{grid-template-columns:1fr;gap:14px}.pc-mobile-wrap .pc-tier{padding:24px 22px}.pc-mobile-wrap .pc-counts{padding:14px 16px}.pc-mobile-wrap .pc-faq{padding:0 4px}.pc-mobile-wrap .pc-footer .cols{grid-template-columns:1fr;gap:26px;padding:32px 16px 16px}.pc-mobile-wrap .pc-footer .bot{flex-direction:column;gap:10px;padding:16px}.meter-item{flex-direction:column;gap:6px;display:flex}.mi-top{justify-content:space-between;align-items:baseline;display:flex}.mi-label{color:var(--fg-muted);font-size:11.5px;font-weight:500}.mi-count{color:var(--fg);font-family:JetBrains Mono,monospace;font-size:12px;font-weight:600}.mi-cap{color:var(--fg-muted);font-weight:400}.mi-bar{background:var(--muted);height:4px;overflow:hidden}.mi-bar,.mi-fill{border-radius:99px}.mi-fill{background:var(--accent);height:100%;transition:width .3s}.meter-item.warning .mi-fill{background:oklch(75% .15 65)}.meter-item.warning .mi-count{color:oklch(75% .15 65)}.meter-item.at-cap .mi-fill{background:var(--destructive)}.meter-item.at-cap .mi-count{color:var(--destructive)}.ins-page{max-width:820px;margin:0 auto;padding-bottom:48px}.ins-header{flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:16px;margin-bottom:20px;display:flex}.ins-overall{text-align:right}.ins-overall .n{font-family:JetBrains Mono,monospace;font-size:42px;font-weight:800;line-height:1}.ins-overall .l{color:var(--fg-muted);text-transform:uppercase;letter-spacing:.07em;margin-top:4px;font-size:11px}.ins-stat-row{grid-template-columns:repeat(4,1fr);gap:10px;margin-bottom:20px;display:grid}.ins-stat{background:var(--card);border:1px solid var(--border);text-align:center;border-radius:10px;padding:14px 16px}.ins-stat .n{font-family:JetBrains Mono,monospace;font-size:26px;font-weight:800;line-height:1}.ins-stat .l{color:var(--fg-muted);margin-top:4px;font-size:11px}@media (max-width:540px){.ins-stat-row{grid-template-columns:repeat(2,1fr)}}.ins-section{margin-bottom:18px}.ins-sec-head{text-transform:uppercase;letter-spacing:.1em;color:var(--fg-muted);align-items:center;gap:10px;margin-bottom:8px;font-size:10.5px;font-weight:700;display:flex}.ins-sec-sub{text-transform:none;letter-spacing:0;font-size:11px;font-weight:400}.ins-card{border:1px solid var(--border);border-radius:10px;padding:14px 16px}.ins-card,.ins-empty{background:var(--card)}.ins-empty{text-align:center;border:1px solid var(--border);border-radius:12px;padding:48px 24px}.ins-empty h3{margin:0 0 8px;font-size:16px;font-weight:700}.ins-empty p{color:var(--fg-muted);margin:0 0 16px;font-size:13px}.cat-row{border-bottom:1px solid var(--border);grid-template-columns:140px 1fr 40px 80px;align-items:center;gap:10px;padding:7px 0;display:grid}.cat-row:last-child{border-bottom:none}.cat-name{white-space:nowrap;text-overflow:ellipsis;font-size:12.5px;font-weight:500;overflow:hidden}.cat-bar-wrap{background:var(--muted);border-radius:3px;height:6px;overflow:hidden}.cat-bar{border-radius:3px;min-width:2px;height:100%;transition:width .4s}.cat-pct{text-align:right;color:var(--fg);font-family:JetBrains Mono,monospace;font-size:11.5px;font-weight:600}.cat-count{color:var(--fg-muted);text-align:right;font-size:11px}@media (max-width:540px){.cat-row{grid-template-columns:100px 1fr 36px}.cat-count{display:none}}.obj-grid{flex-wrap:wrap;gap:6px;display:flex}.obj-chip{cursor:default;border:1px solid #0000;border-radius:999px;align-items:center;gap:6px;max-width:340px;padding:5px 10px;font-size:12px;line-height:1.4;display:inline-flex}.obj-chip.mastered{color:oklch(30% .1 150);background:oklch(96% .06 150);border-color:oklch(88% .1 150)}.obj-chip.strong{color:oklch(30% .1 250);background:oklch(95% .05 250);border-color:oklch(87% .08 250)}.obj-chip.developing{color:oklch(35% .12 70);background:oklch(97% .06 70);border-color:oklch(89% .1 70)}.obj-chip.weak{color:oklch(40% .1 25);background:oklch(96% .06 25);border-color:oklch(88% .08 25)}.obj-chip.new{background:var(--muted);border-color:var(--border);color:var(--fg-muted)}.conf-dot{border-radius:50%;flex-shrink:0;width:7px;height:7px}.obj-chip.mastered .conf-dot{background:oklch(55% .14 150)}.obj-chip.strong .conf-dot{background:oklch(55% .14 250)}.obj-chip.developing .conf-dot{background:oklch(65% .15 70)}.obj-chip.weak .conf-dot{background:oklch(60% .12 25)}.obj-chip.new .conf-dot{background:var(--fg-muted)}.obj-text{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.obj-pct{opacity:.75;flex-shrink:0;font-family:JetBrains Mono,monospace;font-size:10.5px;font-weight:700}.ins-detail-list{flex-direction:column;gap:0;display:flex}.ins-obj-row{border-bottom:1px solid var(--border);justify-content:space-between;align-items:flex-start;gap:12px;padding:10px 0;display:flex}.ins-obj-row:last-child{border-bottom:none}.ins-obj-text{flex:1;font-size:12.5px;line-height:1.5}.ins-obj-signals{flex-wrap:wrap;flex-shrink:0;gap:5px;display:flex}.signal-pill{border:1px solid #0000;border-radius:999px;padding:2px 8px;font-family:JetBrains Mono,monospace;font-size:11px;font-weight:600}.signal-pill.ok{color:oklch(35% .1 150);background:oklch(95% .06 150);border-color:oklch(87% .08 150)}.signal-pill.low{color:oklch(40% .1 25);background:oklch(96% .06 25);border-color:oklch(88% .08 25)}.signal-pill.neutral{background:var(--muted);border-color:var(--border);color:var(--fg-muted)}.rec-list{flex-direction:column;gap:8px;display:flex}.rec-card{border:1px solid var(--border);background:var(--card);color:inherit;border-radius:10px;align-items:center;gap:12px;padding:12px 14px;text-decoration:none;transition:background .15s,border-color .15s;display:flex}.rec-card:hover{background:var(--muted);border-color:var(--accent)}.rec-icon{border:1px solid #0000;border-radius:8px;flex-shrink:0;place-items:center;width:32px;height:32px;display:grid}.rec-icon.urgent{color:oklch(50% .14 25);background:oklch(96% .06 25);border-color:oklch(88% .08 25)}.rec-icon.tip{color:oklch(45% .14 250);background:oklch(95% .05 250);border-color:oklch(87% .08 250)}.rec-icon.insight{color:oklch(45% .14 150);background:oklch(96% .06 150);border-color:oklch(88% .1 150)}.rec-icon.cross{color:oklch(45% .12 300);background:oklch(95% .05 300);border-color:oklch(87% .08 300)}.rec-body{flex:1;min-width:0}.rec-title{font-size:13px;font-weight:600;line-height:1.3}.rec-sub{margin-top:2px;font-size:11.5px;line-height:1.4}.rec-arrow,.rec-sub{color:var(--fg-muted)}.rec-arrow{flex-shrink:0}.pr-grid{grid-template-columns:1fr 1fr;gap:14px;margin-bottom:14px;display:grid}@media (max-width:600px){.pr-grid{grid-template-columns:1fr}}.pr-card{background:var(--card);border:1px solid var(--border);border-radius:12px;padding:16px 18px}.pr-card .head{justify-content:space-between;align-items:baseline;margin-bottom:4px;display:flex}.pr-card .head .title{font-size:13.5px;font-weight:700}.pr-card .head .sub{color:var(--fg-muted);font-size:11px}.pr-heatmap{grid-template-columns:repeat(12,1fr);gap:3px;margin-top:10px;display:grid}.pr-heatmap .cell{aspect-ratio:1;background:var(--muted);border-radius:2px}.pr-heatmap .cell.l1{background:oklch(80% .1 150)}.pr-heatmap .cell.l2{background:oklch(65% .14 150)}.pr-heatmap .cell.l3{background:oklch(55% .16 150)}.pr-heatmap .cell.l4{background:oklch(42% .16 150)}.pr-heatmap-legend{color:var(--fg-muted);align-items:center;gap:4px;margin-top:6px;font-size:10px;display:flex}.pr-heatmap-legend .cell{background:var(--muted);border-radius:2px;width:10px;height:10px}.pr-heatmap-legend .cell.l1{background:oklch(80% .1 150)}.pr-heatmap-legend .cell.l2{background:oklch(65% .14 150)}.pr-heatmap-legend .cell.l3{background:oklch(55% .16 150)}.pr-heatmap-legend .cell.l4{background:oklch(42% .16 150)}.pr-course-list{background:var(--card);border:1px solid var(--border);border-radius:12px;overflow:hidden}.pr-course-row:hover{background:var(--muted)}.page-breadcrumbs{color:var(--fg-muted);flex-wrap:wrap;align-items:center;gap:6px;margin-bottom:18px;font-size:12.5px;display:flex}.page-breadcrumbs a{color:var(--fg-muted);text-decoration:none}.page-breadcrumbs a:hover{color:var(--fg)}.page-breadcrumbs .sep{opacity:.5}.page-breadcrumbs .here{color:var(--fg);font-weight:500}@media (max-width:640px){.dash-strip .meters{grid-template-columns:1fr;gap:12px}}.vocab-page{max-width:900px;margin:0 auto;padding:24px 20px}.vocab-header{background:var(--card);border:1px solid var(--border);border-radius:14px;align-items:center;gap:20px;margin-bottom:24px;padding:22px 24px;display:flex;position:relative;overflow:hidden}.vocab-color-bar{width:4px;position:absolute;top:0;bottom:0;left:0}.vocab-header-body{flex:1}.vocab-title{margin:0 0 2px;font-size:20px;font-weight:700}.vocab-subtitle{color:var(--fg-muted);margin:0 0 10px;font-size:13px}.vocab-stats{flex-wrap:wrap;gap:16px;display:flex}.vocab-stat{flex-direction:column;align-items:flex-start;display:flex}.vocab-stat-n{font-size:18px;font-weight:700;line-height:1.1}.vocab-stat-lbl{color:var(--fg-muted);font-size:11px}.vocab-stat.due .vocab-stat-n{color:oklch(58% .22 25)}.vocab-study-btn{color:#fff;white-space:nowrap;border-radius:8px;flex-shrink:0;align-items:center;gap:6px;padding:9px 18px;font-size:13px;font-weight:600;text-decoration:none;transition:opacity .15s;display:inline-flex}.vocab-study-btn:hover{opacity:.88}.vocab-empty{text-align:center;color:var(--fg-muted);padding:60px 20px}.vocab-back-link{color:var(--fg-muted);margin-top:16px;font-size:13px;text-decoration:none;display:inline-block}.vocab-back-link:hover{color:var(--fg)}.vocab-sections{flex-direction:column;gap:28px;display:flex}.vocab-sec-head{margin-bottom:12px}.vocab-sec-link{color:var(--fg);align-items:center;gap:8px;font-size:14px;font-weight:600;text-decoration:none;display:inline-flex}.vocab-sec-link:hover{opacity:.75}.vocab-lec-num{background:var(--muted);font-weight:700;font-family:var(--font-mono,monospace);border-radius:4px;padding:2px 5px}.vocab-lec-count,.vocab-lec-num{color:var(--fg-muted);font-size:11px}.vocab-lec-count{font-weight:400}.vocab-cards-grid{grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:12px;display:grid}.vocab-card{background:var(--card);border:1px solid var(--border);border-radius:10px;flex-direction:column;gap:8px;padding:14px 16px;transition:box-shadow .15s;display:flex;position:relative}.vocab-card:hover{box-shadow:0 2px 8px var(--fg)}@supports (color:color-mix(in lab,red,red)){.vocab-card:hover{box-shadow:0 2px 8px color-mix(in srgb,var(--fg) 8%,transparent)}}.vocab-card.due{border-color:oklch(78% .16 70)}.vocab-card-prompt{color:var(--fg);font-size:13.5px;font-weight:500;line-height:1.4}.vocab-card-divider{background:var(--border);height:1px}.vocab-card-answer{color:oklch(50% .16 155);font-size:13px;font-weight:600;line-height:1.4}.vocab-card-distractors{flex-wrap:wrap;align-items:center;gap:4px;margin-top:2px;display:flex}.vocab-distractors-label{color:var(--fg-muted);margin-right:2px;font-size:10.5px}.vocab-distractor{color:var(--fg-muted);background:var(--muted);border-radius:4px;padding:2px 6px;font-size:11px}.vocab-card-explanation{color:var(--fg-muted);margin-top:2px;font-size:12px}.vocab-card-explanation summary{cursor:pointer;color:var(--fg-muted);-webkit-user-select:none;user-select:none;font-size:11.5px;font-weight:500;list-style:none}.vocab-card-explanation summary::-webkit-details-marker{display:none}.vocab-card-explanation p{margin:6px 0 0;line-height:1.45}.vocab-due-badge{letter-spacing:.04em;color:oklch(58% .22 25);background:oklch(96% .04 60);border-radius:4px;padding:2px 5px;font-size:10px;font-weight:700;position:absolute;top:10px;right:10px}@media (max-width:640px){.vocab-header{flex-direction:column;align-items:flex-start}.vocab-study-btn{justify-content:center;width:100%}.vocab-cards-grid{grid-template-columns:1fr}}.ar-opt.correct{color:var(--fg);background:oklch(96% .04 150);border-color:oklch(60% .18 150)}.ar-opt.correct .letter{color:#fff;background:oklch(60% .18 150)}.ar-opt.wrong{color:var(--fg);background:oklch(97% .02 25);border-color:oklch(60% .22 25)}.ar-opt.wrong .letter{color:#fff;background:oklch(60% .22 25)}.ar-opt.dim{opacity:.45;border-color:var(--border);background:var(--card)}.ar-opt .mark-ic{color:oklch(60% .18 150);flex-shrink:0;margin-left:auto;display:inline-flex}.ar-opt .mark-ic.wrong{color:oklch(60% .22 25)}[data-theme=dark] .ar-opt.correct{background:oklch(22% .04 150);border-color:oklch(52% .16 150)}[data-theme=dark] .ar-opt.wrong{background:oklch(22% .02 25);border-color:oklch(52% .18 25)}.ar-feedback{flex-direction:column;gap:10px;margin-top:4px;display:flex}.ar-verdict{border-radius:8px;align-self:flex-start;align-items:center;gap:7px;padding:7px 14px;font-size:13px;font-weight:600;display:inline-flex}.ar-verdict.correct{color:oklch(45% .18 150);background:oklch(96% .04 150);border:1px solid oklch(80% .1 150)}.ar-verdict.wrong{color:oklch(50% .22 25);background:oklch(97% .02 25);border:1px solid oklch(85% .08 25)}[data-theme=dark] .ar-verdict.correct{color:oklch(80% .16 150);background:oklch(22% .04 150);border-color:oklch(40% .14 150)}[data-theme=dark] .ar-verdict.wrong{color:oklch(78% .14 25);background:oklch(22% .02 25);border-color:oklch(40% .12 25)}.ar-answer-compare{flex-direction:column;gap:6px;display:flex}.ar-answer-row{border-radius:8px;align-items:baseline;gap:10px;padding:8px 12px;font-size:13.5px;display:flex}.ar-answer-row.wrong{background:oklch(97% .02 25);border:1px solid oklch(88% .06 25)}.ar-answer-row.correct{background:oklch(96% .04 150);border:1px solid oklch(84% .08 150)}[data-theme=dark] .ar-answer-row.wrong{background:oklch(20% .03 25);border-color:oklch(36% .1 25)}[data-theme=dark] .ar-answer-row.correct{background:oklch(20% .04 150);border-color:oklch(36% .12 150)}.ar-answer-lbl{text-transform:uppercase;letter-spacing:.06em;white-space:nowrap;flex-shrink:0;font-size:11px;font-weight:600}.ar-answer-row.wrong .ar-answer-lbl{color:oklch(50% .22 25)}.ar-answer-row.correct .ar-answer-lbl{color:oklch(45% .18 150)}.ar-answer-val{flex:1;line-height:1.45}.ar-explanation{color:var(--fg);background:oklch(97% .01 240);border:1px solid oklch(88% .03 240);border-radius:8px;padding:10px 14px;font-size:13px;line-height:1.55}[data-theme=dark] .ar-explanation{background:oklch(20% .02 240);border-color:oklch(32% .04 240)}.ar-action-buttons{align-items:center;gap:8px;display:flex}.ar-nav-btn{border:1.5px solid var(--border);background:var(--card);height:34px;color:var(--fg);font:inherit;cursor:pointer;white-space:nowrap;border-radius:8px;flex-shrink:0;align-items:center;gap:4px;padding:0 14px;font-size:13px;font-weight:500;transition:background .12s,border-color .12s;display:inline-flex}.ar-nav-btn:hover:not(:disabled){background:var(--muted);border-color:var(--muted-fg)}.ar-nav-btn:disabled{opacity:.35;cursor:not-allowed}.page-root{max-width:860px;margin:0 auto;padding:32px 24px 64px}@media (max-width:640px){.page-root{padding:20px 16px 48px}}.page-eyebrow{font-family:var(--font-jetbrains,monospace);letter-spacing:.12em;color:var(--muted-fg);margin-bottom:4px;font-size:10px;font-weight:600}.page-title{font-family:var(--font-instrument,"Instrument Serif",serif);letter-spacing:-.02em;margin:0;font-size:32px;font-weight:400;line-height:1.1}.page-actions{align-items:center;gap:8px;display:flex}.alert-banner{border-radius:8px;padding:10px 14px;font-size:13px;line-height:1.5}.alert-banner.amber{color:oklch(42% .14 60);background:oklch(96% .06 80);border:1px solid oklch(88% .12 80)}[data-theme=dark] .alert-banner.amber{color:oklch(82% .1 75);background:oklch(22% .05 70);border-color:oklch(38% .1 70)}.empty-state{text-align:center;flex-direction:column;padding:48px 24px}.empty-icon,.empty-state{align-items:center;display:flex}.empty-icon{background:var(--muted);width:72px;height:72px;color:var(--muted-fg);border-radius:50%;justify-content:center;margin-bottom:20px}.empty-title{color:var(--fg);margin-bottom:8px;font-size:18px;font-weight:500}.empty-body{color:var(--muted-fg);max-width:320px;font-size:14px;line-height:1.55}.assess-index{flex-direction:column;gap:32px;display:flex}.assess-group-header{border-bottom:1.5px solid var(--border);align-items:center;gap:8px;margin-bottom:4px;padding-bottom:10px;display:flex}.course-dot{border-radius:50%;flex-shrink:0;width:10px;height:10px}.assess-group-name{color:var(--fg);flex:1;font-size:13px;font-weight:600}.assess-group-count{font-family:var(--font-jetbrains,monospace);color:var(--muted-fg);font-size:11px}.assess-rows{flex-direction:column;display:flex}.assess-row{color:inherit;border-radius:8px;justify-content:space-between;align-items:center;gap:16px;padding:12px 10px;text-decoration:none;transition:background .1s;display:flex}.assess-row:hover{background:var(--muted)}.assess-row-left{flex:1;min-width:0}.assess-row-title{color:var(--fg);white-space:nowrap;text-overflow:ellipsis;align-items:center;gap:6px;margin-bottom:4px;font-size:14px;font-weight:500;display:flex;overflow:hidden}.stale-dot{background:oklch(72% .17 75);border-radius:50%;flex-shrink:0;width:7px;height:7px}.assess-row-meta{color:var(--muted-fg);flex-wrap:wrap;align-items:center;gap:5px;font-size:12px;display:flex}.meta-sep{opacity:.4}.kind-badge{font-family:var(--font-jetbrains,monospace);letter-spacing:.03em;background:var(--muted);color:var(--muted-fg);border-radius:4px;padding:1.5px 6px;font-size:10.5px;font-weight:600}.assess-row-right{flex-direction:column;flex-shrink:0;align-items:flex-end;gap:2px;display:flex}.assess-score{font-family:var(--font-jetbrains,monospace);font-size:16px;font-weight:700;line-height:1}.assess-score.score-green{color:oklch(48% .18 150)}.assess-score.score-amber{color:oklch(55% .17 75)}.assess-score.score-red{color:oklch(52% .22 25)}[data-theme=dark] .assess-score.score-green{color:oklch(72% .17 150)}[data-theme=dark] .assess-score.score-amber{color:oklch(78% .16 80)}[data-theme=dark] .assess-score.score-red{color:oklch(72% .18 25)}.assess-attempts{color:var(--muted-fg);font-size:11px;font-family:var(--font-jetbrains,monospace)}.assess-untaken{color:var(--muted-fg);font-size:12px;font-style:italic}@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-divide-y-reverse{syntax:"*";inherits:false;initial-value:0}@property --tw-border-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-leading{syntax:"*";inherits:false}@property --tw-font-weight{syntax:"*";inherits:false}@property --tw-tracking{syntax:"*";inherits:false}@property --tw-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-shadow-color{syntax:"*";inherits:false}@property --tw-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-inset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-shadow-color{syntax:"*";inherits:false}@property --tw-inset-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-ring-color{syntax:"*";inherits:false}@property --tw-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-ring-color{syntax:"*";inherits:false}@property --tw-inset-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-ring-inset{syntax:"*";inherits:false}@property --tw-ring-offset-width{syntax:"<length>";inherits:false;initial-value:0}@property --tw-ring-offset-color{syntax:"*";inherits:false;initial-value:#fff}@property --tw-ring-offset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-outline-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-blur{syntax:"*";inherits:false}@property --tw-brightness{syntax:"*";inherits:false}@property --tw-contrast{syntax:"*";inherits:false}@property --tw-grayscale{syntax:"*";inherits:false}@property --tw-hue-rotate{syntax:"*";inherits:false}@property --tw-invert{syntax:"*";inherits:false}@property --tw-opacity{syntax:"*";inherits:false}@property --tw-saturate{syntax:"*";inherits:false}@property --tw-sepia{syntax:"*";inherits:false}@property --tw-drop-shadow{syntax:"*";inherits:false}@property --tw-drop-shadow-color{syntax:"*";inherits:false}@property --tw-drop-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-drop-shadow-size{syntax:"*";inherits:false}@property --tw-backdrop-blur{syntax:"*";inherits:false}@property --tw-backdrop-brightness{syntax:"*";inherits:false}@property --tw-backdrop-contrast{syntax:"*";inherits:false}@property --tw-backdrop-grayscale{syntax:"*";inherits:false}@property --tw-backdrop-hue-rotate{syntax:"*";inherits:false}@property --tw-backdrop-invert{syntax:"*";inherits:false}@property --tw-backdrop-opacity{syntax:"*";inherits:false}@property --tw-backdrop-saturate{syntax:"*";inherits:false}@property --tw-backdrop-sepia{syntax:"*";inherits:false}@property --tw-duration{syntax:"*";inherits:false}@property --tw-ease{syntax:"*";inherits:false}@property --tw-space-x-reverse{syntax:"*";inherits:false;initial-value:0}@keyframes spin{to{transform:rotate(1turn)}}@keyframes pulse{50%{opacity:.5}}