.ml-dash-card{margin:0 0 1.25rem;padding:1.25rem 1.35rem;border-radius:1.25rem;border:1px solid var(--border);background:linear-gradient(135deg,color-mix(in srgb,var(--primary-soft) 80%,white),var(--bg-surface));box-shadow:0 10px 30px #1a15350a}.ml-dash-card--loading{color:var(--text-muted)}.ml-dash-card--active{border-color:color-mix(in srgb,var(--primary) 35%,var(--border))}.ml-dash-card--done{background:color-mix(in srgb,var(--success-bg) 70%,var(--bg-surface))}.ml-dash-card--math{border-color:color-mix(in srgb,var(--primary) 28%,var(--border));background:linear-gradient(135deg,color-mix(in srgb,var(--primary-soft) 55%,var(--bg-surface)),var(--bg-surface) 70%)}.ml-dash-card__title-icon{display:inline-flex;align-items:center;margin-right:.45rem;vertical-align:-.15em;color:var(--primary)}.ml-dash-card__eyebrow{display:inline-flex;align-items:center;gap:.4rem;margin:0 0 .35rem;font-size:.8rem;font-weight:700;letter-spacing:.02em;text-transform:uppercase;color:var(--primary-dark)}.ml-dash-card__title{margin:0;font-size:clamp(1.25rem,2.4vw,1.6rem);line-height:1.2;color:var(--text-primary)}.ml-dash-card__meta{margin:.4rem 0 0;color:var(--text-secondary);font-size:.95rem}.ml-dash-card__meta--secondary{margin-top:.25rem;font-size:.88rem;color:var(--text-muted)}.ml-dash-card__actions{display:flex;flex-wrap:wrap;gap:.75rem;margin-top:1rem}.ml-dash-card__actions .button,.ml-dash-card__actions button{min-height:44px;min-width:44px}.ml-preview,.ml-complete,.ml-player{width:min(720px,100%);margin-inline:auto}.ml-preview__eyebrow,.ml-complete__eyebrow{margin:0 0 .35rem;font-size:.8rem;font-weight:700;text-transform:uppercase;letter-spacing:.04em;color:var(--primary-dark)}.ml-preview h1,.ml-complete h1{margin:0;font-size:clamp(1.5rem,3vw,2rem)}.ml-preview__meta{margin:.45rem 0 1.25rem;color:var(--text-secondary);font-size:.95rem}.ml-complete__stats li{padding:.85rem 1rem;border-radius:1rem;background:var(--bg-surface);border:1px solid var(--border)}.ml-preview__list{list-style:none;margin:0 0 1.25rem;padding:0;display:grid;gap:.65rem}.ml-preview__list li{display:grid;grid-template-columns:auto 1fr auto;gap:.75rem;align-items:center;padding:.9rem 1rem;border-radius:1rem;border:1px solid var(--border);background:var(--bg-surface)}.ml-preview__list li:not(:has(.ml-preview__type)){grid-template-columns:1fr auto}.ml-preview__type{font-size:.75rem;font-weight:700;text-transform:uppercase;color:var(--primary-dark)}.ml-preview__mins{color:var(--text-muted);font-size:.85rem}.ml-preview__actions,.ml-complete__actions,.ml-item-card__actions,.ml-state__actions{display:flex;flex-wrap:wrap;gap:.75rem}.ml-preview__empty{padding:1rem;border-radius:1rem;background:var(--warning-bg);color:var(--warning-text)}.ml-preview__math-fallback{margin:.5rem 0 0}.ml-preview__math-fallback .ml-dash-card{margin-bottom:.75rem}.ml-player{display:flex;flex-direction:column;gap:1rem;padding:.5rem 0 1.5rem;min-height:0}.focus-shell .ml-player{flex:1;overflow-y:auto;-webkit-overflow-scrolling:touch;overscroll-behavior:contain}.ml-player__header{display:flex;justify-content:space-between;gap:.75rem}.ml-session-progress__row{display:flex;justify-content:space-between;gap:.75rem;margin-bottom:.4rem;font-size:.9rem}.ml-session-progress__eta{color:var(--text-muted)}.ml-item-card{padding:1.25rem;border-radius:1.25rem;border:1px solid var(--border);background:var(--bg-surface)}.ml-item-card__eyebrow{display:inline-flex;align-items:center;gap:.45rem;color:var(--primary-dark);font-weight:700;font-size:.85rem}.ml-item-card__context{margin:.35rem 0 0;color:var(--text-secondary);font-size:.9rem}.ml-item-card__chip{margin-left:.35rem;padding:.15rem .5rem;border-radius:999px;background:var(--primary-soft);font-size:.7rem}.ml-item-card__title{margin:.45rem 0 .35rem;font-size:clamp(1.2rem,2.5vw,1.55rem)}.ml-item-card__desc{margin:0;color:var(--text-secondary)}.ml-item-card__facts{margin:1rem 0;padding-left:1.1rem;color:var(--text-secondary)}.ml-item-card__unsupported{margin:1rem 0;padding:.9rem 1rem;border-radius:.9rem;background:var(--info-bg);color:var(--info-text)}.ml-item-card__actions{margin-top:1.25rem}.ml-item-card__actions button{min-height:44px}.ml-feedback{padding:.85rem 1rem;border-radius:.9rem;border:1px solid var(--border)}.ml-feedback p{margin:.25rem 0 0}.ml-feedback--success{background:var(--success-bg);color:var(--success-text);border-color:var(--success-border)}.ml-feedback--warn{background:var(--warning-bg);color:var(--warning-text)}.ml-feedback--error{background:var(--error-bg);color:var(--error-text);border-color:var(--error-border)}.ml-state{display:grid;gap:.75rem;justify-items:start;padding:1.5rem 0}.ml-state__title{margin:0;font-size:1.35rem}.ml-state__message{margin:0;color:var(--text-secondary)}.ml-state__spinner{width:1.5rem;height:1.5rem;border-radius:999px;border:2px solid var(--border);border-top-color:var(--primary);animation:ml-spin .8s linear infinite}@keyframes ml-spin{to{transform:rotate(360deg)}}.ml-complete__lead{color:var(--text-secondary)}.ml-complete__stats{list-style:none;margin:1.25rem 0;padding:0;display:grid;gap:.65rem}.ml-complete__stats li{display:flex;justify-content:space-between;gap:1rem;align-items:baseline}.ml-complete__mono{font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:.9rem}.ml-player__done{display:grid;gap:.75rem;justify-items:start}.ml-mcq-options{display:grid;gap:.55rem;margin:1rem 0}.ml-mcq-option{display:grid;grid-template-columns:auto auto 1fr;gap:.65rem;align-items:start;padding:.75rem .85rem;border:1px solid var(--border);border-radius:.85rem;background:var(--bg-surface);cursor:pointer}.ml-mcq-option--selected{border-color:color-mix(in srgb,var(--primary) 45%,var(--border));background:color-mix(in srgb,var(--primary-soft) 70%,white)}.ml-mcq-option__key{font-weight:700;min-width:1.25rem}.ml-activity-feedback{margin:.85rem 0;padding:.85rem 1rem;border-radius:.85rem;border:1px solid var(--border)}.ml-activity-feedback--ok{background:color-mix(in srgb,var(--success-bg, #e8f7ee) 80%,white)}.ml-activity-feedback--warn{background:color-mix(in srgb,var(--warning-bg, #fff4e5) 80%,white)}.ml-short-label{display:block;margin:.75rem 0 .35rem;font-weight:600;color:var(--text-primary)}.ml-short-input{width:100%;min-height:44px;padding:.65rem .85rem;border-radius:.75rem;border:1px solid var(--border);background:var(--bg-surface);color:var(--text-primary);font-size:1rem}.ml-short-input:focus{outline:2px solid color-mix(in srgb,var(--primary) 55%,white);outline-offset:1px}.ml-short-hint{margin:.35rem 0 0;font-size:.85rem;color:var(--text-muted)}.ml-kit-progress{margin:0 0 .75rem;font-size:.85rem;font-weight:600;color:var(--text-secondary)}.ml-kit-section__title{margin:0 0 .5rem;font-size:1.05rem;color:var(--text-primary)}@media(max-width:640px){.ml-preview__list li{grid-template-columns:1fr;gap:.25rem}.ml-dash-card,.ml-item-card{padding:1rem}}.learning-profile-card{display:grid;gap:1rem;padding:1.1rem 1.2rem;border-radius:1rem;background:linear-gradient(160deg,#0f766e14,#ffffffe6);border:1px solid rgba(15,23,42,.08)}.learning-profile-card__header{display:flex;align-items:center;gap:.5rem;flex-wrap:wrap}.learning-profile-card__header h2,.learning-profile-section h3{margin:0;font-size:1.05rem}.learning-profile-trend{margin-left:auto;font-size:.78rem;font-weight:600;color:#0f766e;background:#0f766e1f;border-radius:999px;padding:.2rem .55rem}.learning-profile-section{display:grid;gap:.55rem}.learning-profile-section h3{display:flex;align-items:center;gap:.35rem;font-size:.92rem;color:#0f172a}.learning-profile-insights{margin:0;padding-left:1.1rem;display:grid;gap:.35rem;color:#334155;font-size:.92rem}.learning-profile-empty,.learning-profile-footnote,.learning-profile-empty-state p{margin:0;color:#64748b;font-size:.85rem}.learning-profile-empty-state{display:grid;gap:.75rem;justify-items:start}.learning-profile-teacher-summary{display:grid;gap:.35rem;padding:.75rem .85rem;border-radius:.75rem;background:#fffc;border:1px solid rgba(15,23,42,.06);font-size:.9rem}.learning-profile-teacher-summary p{margin:0}.learning-profile-metric__head{display:flex;justify-content:space-between;gap:.75rem;font-size:.86rem;margin-bottom:.25rem}.learning-profile-metric__value{color:#475569;white-space:nowrap}.learning-profile-metric__track{height:.45rem;border-radius:999px;background:#0f172a14;overflow:hidden}.learning-profile-metric__fill{height:100%;border-radius:inherit}.learning-profile-focus{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:.65rem;padding:.7rem .8rem;border-radius:.75rem;background:#ffffffbf;border:1px solid rgba(15,23,42,.06)}.learning-profile-focus p{margin:0;flex:1 1 14rem;font-size:.9rem;color:#0f172a}.learning-profile-expand{display:inline-flex;align-items:center;gap:.35rem;border:0;background:transparent;color:#0f766e;font-size:.86rem;font-weight:600;cursor:pointer;padding:.25rem 0}@media(max-width:640px){.learning-profile-card{padding:.95rem}}/*! tailwindcss v4.3.1 | 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)))){*,:before,:after,::backdrop{--tw-translate-x:0;--tw-translate-y:0;--tw-translate-z:0;--tw-scale-x:1;--tw-scale-y:1;--tw-scale-z:1;--tw-rotate-x:initial;--tw-rotate-y:initial;--tw-rotate-z:initial;--tw-skew-x:initial;--tw-skew-y:initial;--tw-space-y-reverse:0;--tw-divide-y-reverse:0;--tw-border-style:solid;--tw-gradient-position:initial;--tw-gradient-from:#0000;--tw-gradient-via:#0000;--tw-gradient-to:#0000;--tw-gradient-stops:initial;--tw-gradient-via-stops:initial;--tw-gradient-from-position:0%;--tw-gradient-via-position:50%;--tw-gradient-to-position:100%;--tw-leading:initial;--tw-font-weight:initial;--tw-tracking:initial;--tw-ordinal:initial;--tw-slashed-zero:initial;--tw-numeric-figure:initial;--tw-numeric-spacing:initial;--tw-numeric-fraction:initial;--tw-shadow:0 0 #0000;--tw-shadow-color:initial;--tw-shadow-alpha:100%;--tw-inset-shadow:0 0 #0000;--tw-inset-shadow-color:initial;--tw-inset-shadow-alpha:100%;--tw-ring-color:initial;--tw-ring-shadow:0 0 #0000;--tw-inset-ring-color:initial;--tw-inset-ring-shadow:0 0 #0000;--tw-ring-inset:initial;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-offset-shadow:0 0 #0000;--tw-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}}}@layer theme{:root,:host{--font-sans:"Plus Jakarta Sans", Inter, "Segoe UI", system-ui, sans-serif;--font-mono:ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;--color-orange-50:oklch(98% .016 73.684);--color-orange-100:oklch(95.4% .038 75.164);--color-orange-400:oklch(75% .183 55.934);--color-orange-500:oklch(70.5% .213 47.604);--color-orange-950:oklch(26.6% .079 36.259);--color-amber-50:oklch(98.7% .022 95.277);--color-amber-100:oklch(96.2% .059 95.617);--color-amber-200:oklch(92.4% .12 95.746);--color-amber-300:oklch(87.9% .169 91.605);--color-amber-400:oklch(82.8% .189 84.429);--color-amber-500:oklch(76.9% .188 70.08);--color-amber-700:oklch(55.5% .163 48.998);--color-amber-800:oklch(47.3% .137 46.201);--color-amber-900:oklch(41.4% .112 45.904);--color-amber-950:oklch(27.9% .077 45.635);--color-green-50:oklch(98.2% .018 155.826);--color-green-100:oklch(96.2% .044 156.743);--color-green-300:oklch(87.1% .15 154.449);--color-green-600:oklch(62.7% .194 149.214);--color-green-700:oklch(52.7% .154 150.069);--color-green-800:oklch(44.8% .119 151.328);--color-green-900:oklch(39.3% .095 152.535);--color-green-950:oklch(26.6% .065 152.934);--color-emerald-50:oklch(97.9% .021 166.113);--color-emerald-100:oklch(95% .052 163.051);--color-emerald-200:oklch(90.5% .093 164.15);--color-emerald-300:oklch(84.5% .143 164.978);--color-emerald-400:oklch(76.5% .177 163.223);--color-emerald-500:oklch(69.6% .17 162.48);--color-emerald-600:oklch(59.6% .145 163.225);--color-emerald-700:oklch(50.8% .118 165.612);--color-emerald-800:oklch(43.2% .095 166.913);--color-emerald-900:oklch(37.8% .077 168.94);--color-emerald-950:oklch(26.2% .051 172.552);--color-sky-50:oklch(97.7% .013 236.62);--color-sky-100:oklch(95.1% .026 236.824);--color-sky-200:oklch(90.1% .058 230.902);--color-sky-500:oklch(68.5% .169 237.323);--color-sky-800:oklch(44.3% .11 240.79);--color-sky-900:oklch(39.1% .09 240.876);--color-sky-950:oklch(29.3% .066 243.157);--color-violet-50:oklch(96.9% .016 293.756);--color-violet-100:oklch(94.3% .029 294.588);--color-violet-200:oklch(89.4% .057 293.283);--color-violet-500:oklch(60.6% .25 292.717);--color-violet-800:oklch(43.2% .232 292.759);--color-violet-900:oklch(38% .189 293.745);--color-violet-950:oklch(28.3% .141 291.089);--color-rose-100:oklch(94.1% .03 12.58);--color-rose-500:oklch(64.5% .246 16.439);--color-rose-950:oklch(27.1% .105 12.094);--color-slate-100:oklch(96.8% .007 247.896);--color-slate-800:oklch(27.9% .041 260.031);--color-neutral-500:oklch(55.6% 0 0);--color-neutral-600:oklch(43.9% 0 0);--color-black:#000;--color-white:#fff;--spacing:.25rem;--container-xs:20rem;--container-sm:24rem;--container-md:28rem;--container-lg:32rem;--container-xl:36rem;--container-2xl:42rem;--container-3xl:48rem;--container-4xl:56rem;--container-6xl:72rem;--text-xs:.75rem;--text-xs--line-height:calc(1 / .75);--text-sm:.875rem;--text-sm--line-height:calc(1.25 / .875);--text-base:1rem;--text-base--line-height: 1.5 ;--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: 1.2 ;--text-4xl:2.25rem;--text-4xl--line-height:calc(2.5 / 2.25);--font-weight-normal:400;--font-weight-medium:500;--font-weight-semibold:600;--font-weight-bold:700;--font-weight-extrabold:800;--tracking-tight:-.025em;--tracking-wide:.025em;--tracking-wider:.05em;--tracking-widest:.1em;--leading-snug:1.375;--leading-relaxed:1.625;--radius-md:.625rem;--radius-lg:.875rem;--radius-xl:1.125rem;--radius-2xl:1rem;--shadow-md:0 4px 6px -1px #0000001a, 0 2px 4px -2px #0000001a;--ease-out:cubic-bezier(0, 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)}}@layer base{*,:after,:before,::backdrop{box-sizing:border-box;border:0 solid;margin:0;padding:0}::file-selector-button{box-sizing:border-box;border:0 solid;margin:0;padding:0}html,:host{-webkit-text-size-adjust:100%;-moz-tab-size:4;tab-size:4;line-height:1.5;font-family:var(--default-font-family,ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji");font-feature-settings:var(--default-font-feature-settings,normal);font-variation-settings:var(--default-font-variation-settings,normal);-webkit-tap-highlight-color:transparent}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;-webkit-text-decoration:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:var(--default-mono-font-family,ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace);font-feature-settings:var(--default-mono-font-feature-settings,normal);font-variation-settings:var(--default-mono-font-variation-settings,normal);font-size:1em}small{font-size:80%}sub,sup{vertical-align:baseline;font-size:75%;line-height:0;position:relative}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}:-moz-focusring{outline:auto}progress{vertical-align:baseline}summary{display:list-item}ol,ul,menu{list-style:none}img,svg,video,canvas,audio,iframe,embed,object{vertical-align:middle;display:block}img,video{max-width:100%;height:auto}button,input,select,optgroup,textarea{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}::file-selector-button{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}:where(select:is([multiple],[size])) optgroup{font-weight:bolder}:where(select:is([multiple],[size])) optgroup option{padding-inline-start:20px}::file-selector-button{margin-inline-end:4px}::placeholder{opacity:1}@supports (not ((-webkit-appearance:-apple-pay-button))) or (contain-intrinsic-size:1px){::placeholder{color:currentColor}@supports (color:color-mix(in lab,red,red)){::placeholder{color:color-mix(in oklab,currentcolor 50%,transparent)}}}textarea{resize:vertical}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-date-and-time-value{min-height:1lh;text-align:inherit}::-webkit-datetime-edit{display:inline-flex}::-webkit-datetime-edit-fields-wrapper{padding:0}::-webkit-datetime-edit{padding-block:0}::-webkit-datetime-edit-year-field{padding-block:0}::-webkit-datetime-edit-month-field{padding-block:0}::-webkit-datetime-edit-day-field{padding-block:0}::-webkit-datetime-edit-hour-field{padding-block:0}::-webkit-datetime-edit-minute-field{padding-block:0}::-webkit-datetime-edit-second-field{padding-block:0}::-webkit-datetime-edit-millisecond-field{padding-block:0}::-webkit-datetime-edit-meridiem-field{padding-block:0}::-webkit-calendar-picker-indicator{line-height:1}:-moz-ui-invalid{box-shadow:none}button,input:where([type=button],[type=reset],[type=submit]){-webkit-appearance:button;-moz-appearance:button;appearance:button}::file-selector-button{-webkit-appearance:button;-moz-appearance:button;appearance:button}::-webkit-inner-spin-button{height:auto}::-webkit-outer-spin-button{height:auto}[hidden]:where(:not([hidden=until-found])){display:none!important}html{font-family:var(--font-sans)}}@layer components;@layer utilities{.collapse{visibility:collapse}.invisible{visibility:hidden}.visible{visibility:visible}.sr-only{clip-path:inset(50%);white-space:nowrap;border-width:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.\!absolute{position:absolute!important}.\!fixed{position:fixed!important}.absolute{position:absolute}.fixed{position:fixed}.relative{position:relative}.static{position:static}.sticky{position:sticky}.inset-0{top:0;right:0;bottom:0;left:0}.inset-x-0{inset-inline:0}.-top-1\.5{top:calc(var(--spacing) * -1.5)}.top-0{top:0}.top-4{top:calc(var(--spacing) * 4)}.-right-1{right:calc(var(--spacing) * -1)}.right-4{right:calc(var(--spacing) * 4)}.bottom-0{bottom:0}.bottom-2{bottom:calc(var(--spacing) * 2)}.bottom-\[calc\(var\(--page-footer-nav-h\,0px\)\+12px\)\]{bottom:calc(var(--page-footer-nav-h,0px) + 12px)}.left-1\/2{left:50%}.left-\[calc\(50\%-0\.35rem\)\]{left:calc(50% - .35rem)}.isolate{isolation:isolate}.-z-10{z-index:-10}.z-10{z-index:10}.z-20{z-index:20}.z-\[100\]{z-index:100}.z-\[101\]{z-index:101}.z-\[120\]{z-index:120}.m-0{margin:0}.-mx-1{margin-inline:calc(var(--spacing) * -1)}.mx-0\.5{margin-inline:calc(var(--spacing) * .5)}.mx-auto{margin-inline:auto}.mt-0\.5{margin-top:calc(var(--spacing) * .5)}.mt-1{margin-top:var(--spacing)}.mt-1\.5{margin-top:calc(var(--spacing) * 1.5)}.mt-2{margin-top:calc(var(--spacing) * 2)}.mt-3{margin-top:calc(var(--spacing) * 3)}.mt-4{margin-top:calc(var(--spacing) * 4)}.mt-5{margin-top:calc(var(--spacing) * 5)}.mt-6{margin-top:calc(var(--spacing) * 6)}.mr-1\.5{margin-right:calc(var(--spacing) * 1.5)}.mb-1{margin-bottom:var(--spacing)}.mb-1\.5{margin-bottom:calc(var(--spacing) * 1.5)}.mb-2{margin-bottom:calc(var(--spacing) * 2)}.mb-3{margin-bottom:calc(var(--spacing) * 3)}.mb-4{margin-bottom:calc(var(--spacing) * 4)}.mb-5{margin-bottom:calc(var(--spacing) * 5)}.mb-6{margin-bottom:calc(var(--spacing) * 6)}.mb-8{margin-bottom:calc(var(--spacing) * 8)}.ml-1{margin-left:var(--spacing)}.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}.flex{display:flex}.grid{display:grid}.hidden{display:none}.inline{display:inline}.inline-block{display:inline-block}.inline-flex{display:inline-flex}.table{display:table}.aspect-square{aspect-ratio:1}.size-4{width:calc(var(--spacing) * 4);height:calc(var(--spacing) * 4)}.size-5{width:calc(var(--spacing) * 5);height:calc(var(--spacing) * 5)}.h-0{height:0}.h-0\.5{height:calc(var(--spacing) * .5)}.h-1{height:var(--spacing)}.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-8{height:calc(var(--spacing) * 8)}.h-9{height:calc(var(--spacing) * 9)}.h-10{height:calc(var(--spacing) * 10)}.h-11{height:calc(var(--spacing) * 11)}.h-12{height:calc(var(--spacing) * 12)}.h-24{height:calc(var(--spacing) * 24)}.h-28{height:calc(var(--spacing) * 28)}.h-32{height:calc(var(--spacing) * 32)}.h-44{height:calc(var(--spacing) * 44)}.h-56{height:calc(var(--spacing) * 56)}.h-auto{height:auto}.h-full{height:100%}.h-px{height:1px}.max-h-40{max-height:calc(var(--spacing) * 40)}.max-h-48{max-height:calc(var(--spacing) * 48)}.max-h-56{max-height:calc(var(--spacing) * 56)}.max-h-60{max-height:calc(var(--spacing) * 60)}.max-h-64{max-height:calc(var(--spacing) * 64)}.max-h-72{max-height:calc(var(--spacing) * 72)}.max-h-\[70vh\]{max-height:70vh}.max-h-\[90vh\]{max-height:90vh}.max-h-\[min\(40vh\,18rem\)\]{max-height:min(40vh,18rem)}.max-h-\[min\(50vh\,24rem\)\]{max-height:min(50vh,24rem)}.min-h-0{min-height:0}.min-h-9{min-height:calc(var(--spacing) * 9)}.min-h-10{min-height:calc(var(--spacing) * 10)}.min-h-11{min-height:calc(var(--spacing) * 11)}.min-h-12{min-height:calc(var(--spacing) * 12)}.min-h-16{min-height:calc(var(--spacing) * 16)}.min-h-24{min-height:calc(var(--spacing) * 24)}.min-h-\[3rem\]{min-height:3rem}.min-h-\[72px\]{min-height:72px}.min-h-\[80px\]{min-height:80px}.min-h-\[100px\]{min-height:100px}.min-h-\[120px\]{min-height:120px}.min-h-\[140px\]{min-height:140px}.min-h-\[180px\]{min-height:180px}.min-h-\[220px\]{min-height:220px}.min-h-screen{min-height:100vh}.w-0{width:0}.w-1{width:var(--spacing)}.w-1\/3{width:33.3333%}.w-2\.5{width:calc(var(--spacing) * 2.5)}.w-2\/3{width:66.6667%}.w-3{width:calc(var(--spacing) * 3)}.w-3\.5{width:calc(var(--spacing) * 3.5)}.w-3\/4{width:75%}.w-4{width:calc(var(--spacing) * 4)}.w-5{width:calc(var(--spacing) * 5)}.w-8{width:calc(var(--spacing) * 8)}.w-9{width:calc(var(--spacing) * 9)}.w-10{width:calc(var(--spacing) * 10)}.w-11{width:calc(var(--spacing) * 11)}.w-12{width:calc(var(--spacing) * 12)}.w-24{width:calc(var(--spacing) * 24)}.w-28{width:calc(var(--spacing) * 28)}.w-32{width:calc(var(--spacing) * 32)}.w-36{width:calc(var(--spacing) * 36)}.w-40{width:calc(var(--spacing) * 40)}.w-44{width:calc(var(--spacing) * 44)}.w-56{width:calc(var(--spacing) * 56)}.w-full{width:100%}.w-px{width:1px}.max-w-2xl{max-width:var(--container-2xl)}.max-w-3xl{max-width:var(--container-3xl)}.max-w-4xl{max-width:var(--container-4xl)}.max-w-6xl{max-width:var(--container-6xl)}.max-w-\[11rem\]{max-width:11rem}.max-w-full{max-width:100%}.max-w-lg{max-width:var(--container-lg)}.max-w-md{max-width:var(--container-md)}.max-w-sm{max-width:var(--container-sm)}.max-w-xl{max-width:var(--container-xl)}.max-w-xs{max-width:var(--container-xs)}.min-w-0{min-width:0}.min-w-8{min-width:calc(var(--spacing) * 8)}.min-w-10{min-width:calc(var(--spacing) * 10)}.min-w-12{min-width:calc(var(--spacing) * 12)}.min-w-\[1\.85rem\]{min-width:1.85rem}.min-w-\[2\.75rem\]{min-width:2.75rem}.min-w-\[2rem\]{min-width:2rem}.min-w-\[7rem\]{min-width:7rem}.min-w-\[8rem\]{min-width:8rem}.min-w-\[10rem\]{min-width:10rem}.min-w-\[12rem\]{min-width:12rem}.min-w-\[200px\]{min-width:200px}.min-w-\[220px\]{min-width:220px}.min-w-\[720px\]{min-width:720px}.min-w-max{min-width:max-content}.flex-1{flex:1}.flex-shrink{flex-shrink:1}.shrink-0{flex-shrink:0}.grow{flex-grow:1}.caption-bottom{caption-side:bottom}.origin-left{transform-origin:0}.-translate-x-1\/2{--tw-translate-x: -50% ;translate:var(--tw-translate-x) var(--tw-translate-y)}.scale-90{--tw-scale-x:90%;--tw-scale-y:90%;--tw-scale-z:90%;scale:var(--tw-scale-x) var(--tw-scale-y)}.scale-\[0\.97\]{scale:.97}.scale-\[0\.98\]{scale:.98}.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-spin{animation:var(--animate-spin)}.cursor-not-allowed{cursor:not-allowed}.cursor-pointer{cursor:pointer}.resize{resize:both}.resize-y{resize:vertical}.scroll-mt-24{scroll-margin-top:calc(var(--spacing) * 24)}.\[scrollbar-width\:thin\]{scrollbar-width:thin}.\[scrollbar-color\:var\(--border-strong\)_transparent\]{scrollbar-color:var(--border-strong) transparent}.list-decimal{list-style-type:decimal}.list-disc{list-style-type:disc}.list-none{list-style-type:none}.grid-cols-4{grid-template-columns:repeat(4,minmax(0,1fr))}.grid-cols-\[1fr_7rem\]{grid-template-columns:1fr 7rem}.grid-cols-\[1fr_auto_1fr\]{grid-template-columns:1fr auto 1fr}.flex-col{flex-direction:column}.flex-col-reverse{flex-direction:column-reverse}.flex-row{flex-direction:row}.flex-wrap{flex-wrap:wrap}.place-items-center{place-items:center}.items-baseline{align-items:baseline}.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{gap:0}.gap-0\.5{gap:calc(var(--spacing) * .5)}.gap-1{gap:var(--spacing)}.gap-1\.5{gap:calc(var(--spacing) * 1.5)}.gap-2{gap:calc(var(--spacing) * 2)}.gap-2\.5{gap:calc(var(--spacing) * 2.5)}.gap-3{gap:calc(var(--spacing) * 3)}.gap-4{gap:calc(var(--spacing) * 4)}.gap-6{gap:calc(var(--spacing) * 6)}:where(.space-y-0>:not(:last-child)){--tw-space-y-reverse:0;margin-block:0}: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(var(--spacing) * var(--tw-space-y-reverse));margin-block-end:calc(var(--spacing) * 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-5>:not(:last-child)){--tw-space-y-reverse:0;margin-block-start:calc(calc(var(--spacing) * 5) * var(--tw-space-y-reverse));margin-block-end:calc(calc(var(--spacing) * 5) * calc(1 - var(--tw-space-y-reverse)))}:where(.space-y-6>:not(:last-child)){--tw-space-y-reverse:0;margin-block-start:calc(calc(var(--spacing) * 6) * var(--tw-space-y-reverse));margin-block-end:calc(calc(var(--spacing) * 6) * calc(1 - var(--tw-space-y-reverse)))}.gap-x-4{column-gap:calc(var(--spacing) * 4)}.gap-y-1{row-gap:var(--spacing)}: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-\[var\(--border\)\]>:not(:last-child)){border-color:var(--border)}.self-center{align-self:center}.truncate{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.overflow-auto{overflow:auto}.overflow-hidden{overflow:hidden}.overflow-x-auto{overflow-x:auto}.overflow-y-auto{overflow-y:auto}.overscroll-contain{overscroll-behavior:contain}.rounded{border-radius:.25rem}.rounded-2xl{border-radius:var(--radius-2xl)}.rounded-full{border-radius:3.40282e38px}.rounded-lg{border-radius:var(--radius-lg)}.rounded-md{border-radius:var(--radius-md)}.rounded-xl{border-radius:var(--radius-xl)}.border{border-style:var(--tw-border-style);border-width:1px}.border-0{border-style:var(--tw-border-style);border-width:0}.border-2{border-style:var(--tw-border-style);border-width:2px}.border-x-\[10px\]{border-inline-style:var(--tw-border-style);border-inline-width:10px}.border-y-\[7px\]{border-block-style:var(--tw-border-style);border-block-width:7px}.border-t{border-top-style:var(--tw-border-style);border-top-width:1px}.border-t-2{border-top-style:var(--tw-border-style);border-top-width:2px}.border-b{border-bottom-style:var(--tw-border-style);border-bottom-width:1px}.border-b-\[16px\]{border-bottom-style:var(--tw-border-style);border-bottom-width:16px}.border-l-2{border-left-style:var(--tw-border-style);border-left-width:2px}.border-l-4{border-left-style:var(--tw-border-style);border-left-width:4px}.border-l-\[12px\]{border-left-style:var(--tw-border-style);border-left-width:12px}.border-dashed{--tw-border-style:dashed;border-style:dashed}.border-\[var\(--border\)\]{border-color:var(--border)}.border-\[var\(--border-input\)\]{border-color:var(--border-input)}.border-\[var\(--danger\)\]\/25{border-color:var(--danger)}@supports (color:color-mix(in lab,red,red)){.border-\[var\(--danger\)\]\/25{border-color:color-mix(in oklab,var(--danger) 25%,transparent)}}.border-\[var\(--danger\)\]\/30{border-color:var(--danger)}@supports (color:color-mix(in lab,red,red)){.border-\[var\(--danger\)\]\/30{border-color:color-mix(in oklab,var(--danger) 30%,transparent)}}.border-\[var\(--primary\)\],.border-\[var\(--primary\)\]\/30{border-color:var(--primary)}@supports (color:color-mix(in lab,red,red)){.border-\[var\(--primary\)\]\/30{border-color:color-mix(in oklab,var(--primary) 30%,transparent)}}.border-amber-200{border-color:var(--color-amber-200)}.border-amber-500{border-color:var(--color-amber-500)}.border-amber-500\/25{border-color:#f99c0040}@supports (color:color-mix(in lab,red,red)){.border-amber-500\/25{border-color:color-mix(in oklab,var(--color-amber-500) 25%,transparent)}}.border-amber-500\/30{border-color:#f99c004d}@supports (color:color-mix(in lab,red,red)){.border-amber-500\/30{border-color:color-mix(in oklab,var(--color-amber-500) 30%,transparent)}}.border-amber-500\/35{border-color:#f99c0059}@supports (color:color-mix(in lab,red,red)){.border-amber-500\/35{border-color:color-mix(in oklab,var(--color-amber-500) 35%,transparent)}}.border-amber-500\/40{border-color:#f99c0066}@supports (color:color-mix(in lab,red,red)){.border-amber-500\/40{border-color:color-mix(in oklab,var(--color-amber-500) 40%,transparent)}}.border-amber-500\/50{border-color:#f99c0080}@supports (color:color-mix(in lab,red,red)){.border-amber-500\/50{border-color:color-mix(in oklab,var(--color-amber-500) 50%,transparent)}}.border-emerald-500\/30{border-color:#00bb7f4d}@supports (color:color-mix(in lab,red,red)){.border-emerald-500\/30{border-color:color-mix(in oklab,var(--color-emerald-500) 30%,transparent)}}.border-emerald-500\/40{border-color:#00bb7f66}@supports (color:color-mix(in lab,red,red)){.border-emerald-500\/40{border-color:color-mix(in oklab,var(--color-emerald-500) 40%,transparent)}}.border-emerald-500\/50{border-color:#00bb7f80}@supports (color:color-mix(in lab,red,red)){.border-emerald-500\/50{border-color:color-mix(in oklab,var(--color-emerald-500) 50%,transparent)}}.border-emerald-600{border-color:var(--color-emerald-600)}.border-green-600{border-color:var(--color-green-600)}.border-green-600\/30{border-color:#00a5444d}@supports (color:color-mix(in lab,red,red)){.border-green-600\/30{border-color:color-mix(in oklab,var(--color-green-600) 30%,transparent)}}.border-green-600\/40{border-color:#00a54466}@supports (color:color-mix(in lab,red,red)){.border-green-600\/40{border-color:color-mix(in oklab,var(--color-green-600) 40%,transparent)}}.border-green-600\/60{border-color:#00a54499}@supports (color:color-mix(in lab,red,red)){.border-green-600\/60{border-color:color-mix(in oklab,var(--color-green-600) 60%,transparent)}}.border-neutral-500{border-color:var(--color-neutral-500)}.border-orange-400\/40{border-color:#ff8b1a66}@supports (color:color-mix(in lab,red,red)){.border-orange-400\/40{border-color:color-mix(in oklab,var(--color-orange-400) 40%,transparent)}}.border-sky-500\/30{border-color:#00a5ef4d}@supports (color:color-mix(in lab,red,red)){.border-sky-500\/30{border-color:color-mix(in oklab,var(--color-sky-500) 30%,transparent)}}.border-sky-500\/50{border-color:#00a5ef80}@supports (color:color-mix(in lab,red,red)){.border-sky-500\/50{border-color:color-mix(in oklab,var(--color-sky-500) 50%,transparent)}}.border-transparent{border-color:#0000}.border-violet-500\/30{border-color:#8d54ff4d}@supports (color:color-mix(in lab,red,red)){.border-violet-500\/30{border-color:color-mix(in oklab,var(--color-violet-500) 30%,transparent)}}.border-violet-500\/50{border-color:#8d54ff80}@supports (color:color-mix(in lab,red,red)){.border-violet-500\/50{border-color:color-mix(in oklab,var(--color-violet-500) 50%,transparent)}}.border-x-transparent{border-inline-color:#0000}.border-y-transparent{border-block-color:#0000}.border-t-\[var\(--primary\)\]{border-top-color:var(--primary)}.border-l-green-600{border-left-color:var(--color-green-600)}.bg-\[var\(--bg-surface\)\]{background-color:var(--bg-surface)}.bg-\[var\(--bg-surface-muted\)\],.bg-\[var\(--bg-surface-muted\)\]\/60{background-color:var(--bg-surface-muted)}@supports (color:color-mix(in lab,red,red)){.bg-\[var\(--bg-surface-muted\)\]\/60{background-color:color-mix(in oklab,var(--bg-surface-muted) 60%,transparent)}}.bg-\[var\(--border\)\]{background-color:var(--border)}.bg-\[var\(--btn-danger\)\]{background-color:var(--btn-danger)}.bg-\[var\(--danger\)\],.bg-\[var\(--danger\)\]\/10{background-color:var(--danger)}@supports (color:color-mix(in lab,red,red)){.bg-\[var\(--danger\)\]\/10{background-color:color-mix(in oklab,var(--danger) 10%,transparent)}}.bg-\[var\(--danger-soft\)\]{background-color:var(--danger-soft)}.bg-\[var\(--primary\)\],.bg-\[var\(--primary\)\]\/8{background-color:var(--primary)}@supports (color:color-mix(in lab,red,red)){.bg-\[var\(--primary\)\]\/8{background-color:color-mix(in oklab,var(--primary) 8%,transparent)}}.bg-\[var\(--primary\)\]\/10{background-color:var(--primary)}@supports (color:color-mix(in lab,red,red)){.bg-\[var\(--primary\)\]\/10{background-color:color-mix(in oklab,var(--primary) 10%,transparent)}}.bg-\[var\(--primary-soft\)\]{background-color:var(--primary-soft)}.bg-\[var\(--success\)\]{background-color:var(--success)}.bg-\[var\(--success-soft\)\]{background-color:var(--success-soft)}.bg-\[var\(--surface\)\]{background-color:var(--surface)}.bg-\[var\(--surface-muted\,var\(--surface\)\)\]{background-color:var(--surface-muted,var(--surface))}.bg-\[var\(--warning-soft\)\]{background-color:var(--warning-soft)}.bg-amber-50{background-color:var(--color-amber-50)}.bg-amber-50\/50{background-color:#fffbeb80}@supports (color:color-mix(in lab,red,red)){.bg-amber-50\/50{background-color:color-mix(in oklab,var(--color-amber-50) 50%,transparent)}}.bg-amber-50\/70{background-color:#fffbebb3}@supports (color:color-mix(in lab,red,red)){.bg-amber-50\/70{background-color:color-mix(in oklab,var(--color-amber-50) 70%,transparent)}}.bg-amber-50\/80{background-color:#fffbebcc}@supports (color:color-mix(in lab,red,red)){.bg-amber-50\/80{background-color:color-mix(in oklab,var(--color-amber-50) 80%,transparent)}}.bg-amber-100{background-color:var(--color-amber-100)}.bg-amber-500{background-color:var(--color-amber-500)}.bg-amber-500\/10{background-color:#f99c001a}@supports (color:color-mix(in lab,red,red)){.bg-amber-500\/10{background-color:color-mix(in oklab,var(--color-amber-500) 10%,transparent)}}.bg-amber-500\/20{background-color:#f99c0033}@supports (color:color-mix(in lab,red,red)){.bg-amber-500\/20{background-color:color-mix(in oklab,var(--color-amber-500) 20%,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-emerald-50{background-color:var(--color-emerald-50)}.bg-emerald-50\/50{background-color:#ecfdf580}@supports (color:color-mix(in lab,red,red)){.bg-emerald-50\/50{background-color:color-mix(in oklab,var(--color-emerald-50) 50%,transparent)}}.bg-emerald-50\/60{background-color:#ecfdf599}@supports (color:color-mix(in lab,red,red)){.bg-emerald-50\/60{background-color:color-mix(in oklab,var(--color-emerald-50) 60%,transparent)}}.bg-emerald-50\/70{background-color:#ecfdf5b3}@supports (color:color-mix(in lab,red,red)){.bg-emerald-50\/70{background-color:color-mix(in oklab,var(--color-emerald-50) 70%,transparent)}}.bg-emerald-50\/80{background-color:#ecfdf5cc}@supports (color:color-mix(in lab,red,red)){.bg-emerald-50\/80{background-color:color-mix(in oklab,var(--color-emerald-50) 80%,transparent)}}.bg-emerald-100{background-color:var(--color-emerald-100)}.bg-emerald-500{background-color:var(--color-emerald-500)}.bg-emerald-500\/10{background-color:#00bb7f1a}@supports (color:color-mix(in lab,red,red)){.bg-emerald-500\/10{background-color:color-mix(in oklab,var(--color-emerald-500) 10%,transparent)}}.bg-emerald-500\/20{background-color:#00bb7f33}@supports (color:color-mix(in lab,red,red)){.bg-emerald-500\/20{background-color:color-mix(in oklab,var(--color-emerald-500) 20%,transparent)}}.bg-emerald-600{background-color:var(--color-emerald-600)}.bg-green-50{background-color:var(--color-green-50)}.bg-green-50\/50{background-color:#f0fdf480}@supports (color:color-mix(in lab,red,red)){.bg-green-50\/50{background-color:color-mix(in oklab,var(--color-green-50) 50%,transparent)}}.bg-green-50\/90{background-color:#f0fdf4e6}@supports (color:color-mix(in lab,red,red)){.bg-green-50\/90{background-color:color-mix(in oklab,var(--color-green-50) 90%,transparent)}}.bg-green-600{background-color:var(--color-green-600)}.bg-neutral-500{background-color:var(--color-neutral-500)}.bg-orange-50\/90{background-color:#fff7ede6}@supports (color:color-mix(in lab,red,red)){.bg-orange-50\/90{background-color:color-mix(in oklab,var(--color-orange-50) 90%,transparent)}}.bg-rose-100{background-color:var(--color-rose-100)}.bg-rose-500{background-color:var(--color-rose-500)}.bg-sky-50\/50{background-color:#f0f9ff80}@supports (color:color-mix(in lab,red,red)){.bg-sky-50\/50{background-color:color-mix(in oklab,var(--color-sky-50) 50%,transparent)}}.bg-sky-50\/80{background-color:#f0f9ffcc}@supports (color:color-mix(in lab,red,red)){.bg-sky-50\/80{background-color:color-mix(in oklab,var(--color-sky-50) 80%,transparent)}}.bg-sky-500\/15{background-color:#00a5ef26}@supports (color:color-mix(in lab,red,red)){.bg-sky-500\/15{background-color:color-mix(in oklab,var(--color-sky-500) 15%,transparent)}}.bg-slate-100{background-color:var(--color-slate-100)}.bg-transparent{background-color:#0000}.bg-violet-50\/80{background-color:#f5f3ffcc}@supports (color:color-mix(in lab,red,red)){.bg-violet-50\/80{background-color:color-mix(in oklab,var(--color-violet-50) 80%,transparent)}}.bg-violet-500\/15{background-color:#8d54ff26}@supports (color:color-mix(in lab,red,red)){.bg-violet-500\/15{background-color:color-mix(in oklab,var(--color-violet-500) 15%,transparent)}}.bg-gradient-to-br{--tw-gradient-position:to bottom right in oklab;background-image:linear-gradient(var(--tw-gradient-stops))}.bg-gradient-to-r{--tw-gradient-position:to right in oklab;background-image:linear-gradient(var(--tw-gradient-stops))}.from-emerald-50\/90{--tw-gradient-from:#ecfdf5e6}@supports (color:color-mix(in lab,red,red)){.from-emerald-50\/90{--tw-gradient-from:color-mix(in oklab, var(--color-emerald-50) 90%, transparent)}}.from-emerald-50\/90{--tw-gradient-stops:var(--tw-gradient-via-stops,var(--tw-gradient-position), var(--tw-gradient-from) var(--tw-gradient-from-position), var(--tw-gradient-to) var(--tw-gradient-to-position))}.to-transparent{--tw-gradient-to:transparent;--tw-gradient-stops:var(--tw-gradient-via-stops,var(--tw-gradient-position), var(--tw-gradient-from) var(--tw-gradient-from-position), var(--tw-gradient-to) var(--tw-gradient-to-position))}.fill-current{fill:currentColor}.fill-none{fill:none}.fill-orange-500{fill:var(--color-orange-500)}.fill-sky-500{fill:var(--color-sky-500)}.stroke-emerald-600{stroke:var(--color-emerald-600)}.object-contain{object-fit:contain}.object-cover{object-fit:cover}.\!p-3\.5{padding:calc(var(--spacing) * 3.5)!important}.p-0{padding:0}.p-1{padding:var(--spacing)}.p-2{padding:calc(var(--spacing) * 2)}.p-3{padding:calc(var(--spacing) * 3)}.p-4{padding:calc(var(--spacing) * 4)}.p-5{padding:calc(var(--spacing) * 5)}.p-6{padding:calc(var(--spacing) * 6)}.px-0\.5{padding-inline:calc(var(--spacing) * .5)}.px-1{padding-inline:var(--spacing)}.px-1\.5{padding-inline:calc(var(--spacing) * 1.5)}.px-2{padding-inline:calc(var(--spacing) * 2)}.px-2\.5{padding-inline:calc(var(--spacing) * 2.5)}.px-3{padding-inline:calc(var(--spacing) * 3)}.px-3\.5{padding-inline:calc(var(--spacing) * 3.5)}.px-4{padding-inline:calc(var(--spacing) * 4)}.px-5{padding-inline:calc(var(--spacing) * 5)}.px-6{padding-inline:calc(var(--spacing) * 6)}.py-0\.5{padding-block:calc(var(--spacing) * .5)}.py-1{padding-block:var(--spacing)}.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-5{padding-block:calc(var(--spacing) * 5)}.py-8{padding-block:calc(var(--spacing) * 8)}.py-12{padding-block:calc(var(--spacing) * 12)}.pt-0{padding-top:0}.pt-1{padding-top:var(--spacing)}.pt-2{padding-top:calc(var(--spacing) * 2)}.pt-3{padding-top:calc(var(--spacing) * 3)}.pt-4{padding-top:calc(var(--spacing) * 4)}.pt-5{padding-top:calc(var(--spacing) * 5)}.pt-6{padding-top:calc(var(--spacing) * 6)}.pr-1{padding-right:var(--spacing)}.pr-3{padding-right:calc(var(--spacing) * 3)}.pr-8{padding-right:calc(var(--spacing) * 8)}.pb-0{padding-bottom:0}.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-4{padding-left:calc(var(--spacing) * 4)}.pl-5{padding-left:calc(var(--spacing) * 5)}.text-center{text-align:center}.text-left{text-align:left}.text-right{text-align:right}.align-baseline{vertical-align:baseline}.align-middle{vertical-align:middle}.align-top{vertical-align:top}.font-mono{font-family:var(--font-mono)}.font-sans{font-family:var(--font-sans)}.text-2xl{font-size:var(--text-2xl);line-height:var(--tw-leading,var(--text-2xl--line-height))}.text-3xl{font-size:var(--text-3xl);line-height:var(--tw-leading,var(--text-3xl--line-height))}.text-4xl{font-size:var(--text-4xl);line-height:var(--tw-leading,var(--text-4xl--line-height))}.text-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-\[0\.7rem\]{font-size:.7rem}.text-\[0\.95rem\]{font-size:.95rem}.text-\[9px\]{font-size:9px}.text-\[10px\]{font-size:10px}.text-\[11px\]{font-size:11px}.text-\[12px\]{font-size:12px}.leading-relaxed{--tw-leading:var(--leading-relaxed);line-height:var(--leading-relaxed)}.leading-snug{--tw-leading:var(--leading-snug);line-height:var(--leading-snug)}.font-bold{--tw-font-weight:var(--font-weight-bold);font-weight:var(--font-weight-bold)}.font-extrabold{--tw-font-weight:var(--font-weight-extrabold);font-weight:var(--font-weight-extrabold)}.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-\[0\.2em\]{--tw-tracking:.2em;letter-spacing:.2em}.tracking-\[0\.25em\]{--tw-tracking:.25em;letter-spacing:.25em}.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-normal{white-space:normal}.whitespace-nowrap{white-space:nowrap}.whitespace-pre-line{white-space:pre-line}.whitespace-pre-wrap{white-space:pre-wrap}.text-\[var\(--danger\)\]{color:var(--danger)}.text-\[var\(--error-text\)\]{color:var(--error-text)}.text-\[var\(--muted-foreground\)\]{color:var(--muted-foreground)}.text-\[var\(--primary\)\]{color:var(--primary)}.text-\[var\(--success\)\]{color:var(--success)}.text-\[var\(--text-muted\)\]{color:var(--text-muted)}.text-\[var\(--text-on-primary\)\]{color:var(--text-on-primary)}.text-\[var\(--text-primary\)\]{color:var(--text-primary)}.text-\[var\(--text-secondary\)\]{color:var(--text-secondary)}.text-\[var\(--warning\)\]{color:var(--warning)}.text-amber-700{color:var(--color-amber-700)}.text-amber-800{color:var(--color-amber-800)}.text-amber-800\/80{color:#953d00cc}@supports (color:color-mix(in lab,red,red)){.text-amber-800\/80{color:color-mix(in oklab,var(--color-amber-800) 80%,transparent)}}.text-amber-900{color:var(--color-amber-900)}.text-amber-950{color:var(--color-amber-950)}.text-emerald-700{color:var(--color-emerald-700)}.text-emerald-800{color:var(--color-emerald-800)}.text-emerald-800\/80{color:#005f46cc}@supports (color:color-mix(in lab,red,red)){.text-emerald-800\/80{color:color-mix(in oklab,var(--color-emerald-800) 80%,transparent)}}.text-emerald-900{color:var(--color-emerald-900)}.text-emerald-950{color:var(--color-emerald-950)}.text-green-700{color:var(--color-green-700)}.text-green-800{color:var(--color-green-800)}.text-green-900{color:var(--color-green-900)}.text-orange-950{color:var(--color-orange-950)}.text-rose-950{color:var(--color-rose-950)}.text-sky-800{color:var(--color-sky-800)}.text-sky-800\/80{color:#005986cc}@supports (color:color-mix(in lab,red,red)){.text-sky-800\/80{color:color-mix(in oklab,var(--color-sky-800) 80%,transparent)}}.text-sky-900{color:var(--color-sky-900)}.text-sky-950{color:var(--color-sky-950)}.text-slate-800{color:var(--color-slate-800)}.text-violet-800{color:var(--color-violet-800)}.text-violet-900{color:var(--color-violet-900)}.text-violet-950{color:var(--color-violet-950)}.text-violet-950\/80{color:#2f0d68cc}@supports (color:color-mix(in lab,red,red)){.text-violet-950\/80{color:color-mix(in oklab,var(--color-violet-950) 80%,transparent)}}.text-white{color:var(--color-white)}.capitalize{text-transform:capitalize}.uppercase{text-transform:uppercase}.italic{font-style:italic}.tabular-nums{--tw-numeric-spacing:tabular-nums;font-variant-numeric:var(--tw-ordinal,) var(--tw-slashed-zero,) var(--tw-numeric-figure,) var(--tw-numeric-spacing,) var(--tw-numeric-fraction,)}.line-through{text-decoration-line:line-through}.no-underline{text-decoration-line:none}.underline{text-decoration-line:underline}.underline-offset-2{text-underline-offset:2px}.underline-offset-4{text-underline-offset:4px}.opacity-50{opacity:.5}.opacity-60{opacity:.6}.opacity-70{opacity:.7}.opacity-80{opacity:.8}.opacity-90{opacity:.9}.shadow{--tw-shadow:0 1px 3px 0 var(--tw-shadow-color,#0000001a), 0 1px 2px -1px var(--tw-shadow-color,#0000001a);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.shadow-\[0_8px_24px_rgba\(15\,23\,42\,0\.06\)\]{--tw-shadow:0 8px 24px var(--tw-shadow-color,#0f172a0f);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.shadow-inner{--tw-shadow:inset 0 2px 4px 0 var(--tw-shadow-color,#0000000d);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.shadow-lg{--tw-shadow:0 10px 15px -3px var(--tw-shadow-color,#0000001a), 0 4px 6px -4px var(--tw-shadow-color,#0000001a);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.shadow-none{--tw-shadow:0 0 #0000;box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.shadow-sm{--tw-shadow:0 1px 3px 0 var(--tw-shadow-color,#0000001a), 0 1px 2px -1px var(--tw-shadow-color,#0000001a);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.shadow-xl{--tw-shadow:0 20px 25px -5px var(--tw-shadow-color,#0000001a), 0 8px 10px -6px var(--tw-shadow-color,#0000001a);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.shadow-xs{--tw-shadow:0 1px 2px 0 var(--tw-shadow-color,#0000000d);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.ring,.ring-1{--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)}.ring-2{--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)}.ring-\[var\(--primary\)\]\/30{--tw-ring-color:var(--primary)}@supports (color:color-mix(in lab,red,red)){.ring-\[var\(--primary\)\]\/30{--tw-ring-color:color-mix(in oklab, var(--primary) 30%, transparent)}}.ring-black\/\[0\.03\]{--tw-ring-color:#00000008}@supports (color:color-mix(in lab,red,red)){.ring-black\/\[0\.03\]{--tw-ring-color:color-mix(in oklab, var(--color-black) 3%, transparent)}}.ring-emerald-500\/50{--tw-ring-color:#00bb7f80}@supports (color:color-mix(in lab,red,red)){.ring-emerald-500\/50{--tw-ring-color:color-mix(in oklab, var(--color-emerald-500) 50%, transparent)}}.ring-green-600\/30{--tw-ring-color:#00a5444d}@supports (color:color-mix(in lab,red,red)){.ring-green-600\/30{--tw-ring-color:color-mix(in oklab, var(--color-green-600) 30%, transparent)}}.outline{outline-style:var(--tw-outline-style);outline-width:1px}.blur{--tw-blur:blur(8px);filter:var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,) var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,) var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,)}.filter{filter:var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,) var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,) var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,)}.backdrop-blur{--tw-backdrop-blur:blur(8px);-webkit-backdrop-filter:var(--tw-backdrop-blur,) var(--tw-backdrop-brightness,) var(--tw-backdrop-contrast,) var(--tw-backdrop-grayscale,) var(--tw-backdrop-hue-rotate,) var(--tw-backdrop-invert,) var(--tw-backdrop-opacity,) var(--tw-backdrop-saturate,) var(--tw-backdrop-sepia,);backdrop-filter:var(--tw-backdrop-blur,) var(--tw-backdrop-brightness,) var(--tw-backdrop-contrast,) var(--tw-backdrop-grayscale,) var(--tw-backdrop-hue-rotate,) var(--tw-backdrop-invert,) var(--tw-backdrop-opacity,) var(--tw-backdrop-saturate,) var(--tw-backdrop-sepia,)}.backdrop-blur-\[2px\]{--tw-backdrop-blur:blur(2px);-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-75{--tw-duration:75ms;transition-duration:75ms}.duration-200{--tw-duration:.2s;transition-duration:.2s}.duration-500{--tw-duration:.5s;transition-duration:.5s}.duration-1000{--tw-duration:1s;transition-duration:1s}.ease-linear{--tw-ease:linear;transition-timing-function:linear}.ease-out{--tw-ease:var(--ease-out);transition-timing-function:var(--ease-out)}.outline-none{--tw-outline-style:none;outline-style:none}.select-none{-webkit-user-select:none;user-select:none}.placeholder\:text-\[var\(--text-muted\)\]::placeholder{color:var(--text-muted)}.first\:border-t-0:first-child{border-top-style:var(--tw-border-style);border-top-width:0}.first\:pt-0:first-child{padding-top:0}.last\:border-0:last-child{border-style:var(--tw-border-style);border-width:0}@media(hover:hover){.hover\:border-\[var\(--primary\)\]\/40:hover{border-color:var(--primary)}@supports (color:color-mix(in lab,red,red)){.hover\:border-\[var\(--primary\)\]\/40:hover{border-color:color-mix(in oklab,var(--primary) 40%,transparent)}}.hover\:border-\[var\(--primary\)\]\/50:hover{border-color:var(--primary)}@supports (color:color-mix(in lab,red,red)){.hover\:border-\[var\(--primary\)\]\/50:hover{border-color:color-mix(in oklab,var(--primary) 50%,transparent)}}.hover\:border-\[var\(--primary\)\]\/55:hover{border-color:var(--primary)}@supports (color:color-mix(in lab,red,red)){.hover\:border-\[var\(--primary\)\]\/55:hover{border-color:color-mix(in oklab,var(--primary) 55%,transparent)}}.hover\:bg-\[var\(--bg-surface\)\]:hover{background-color:var(--bg-surface)}.hover\:bg-\[var\(--bg-surface-muted\)\]:hover{background-color:var(--bg-surface-muted)}.hover\:bg-\[var\(--primary-soft\)\]:hover{background-color:var(--primary-soft)}.hover\:underline:hover{text-decoration-line:underline}.hover\:opacity-90:hover{opacity:.9}.hover\:opacity-100:hover{opacity:1}.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)}.hover\:brightness-95:hover{--tw-brightness:brightness(95%);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,)}.hover\:brightness-110:hover{--tw-brightness:brightness(110%);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,)}}.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-\[var\(--primary\)\]:focus{--tw-ring-color:var(--primary)}.focus\:outline-none:focus{--tw-outline-style:none;outline-style:none}.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-\[var\(--primary\)\]:focus-visible{--tw-ring-color:var(--primary)}.focus-visible\:ring-offset-1:focus-visible{--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)}.focus-visible\:ring-offset-2:focus-visible{--tw-ring-offset-width:2px;--tw-ring-offset-shadow:var(--tw-ring-inset,) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color)}.focus-visible\:outline-none:focus-visible{--tw-outline-style:none;outline-style:none}.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}.disabled\:opacity-60:disabled{opacity:.6}.disabled\:opacity-70:disabled{opacity:.7}@media(min-width:40rem){.sm\:col-span-2{grid-column:span 2/span 2}.sm\:inline{display:inline}.sm\:h-12{height:calc(var(--spacing) * 12)}.sm\:h-14{height:calc(var(--spacing) * 14)}.sm\:w-12{width:calc(var(--spacing) * 12)}.sm\:w-14{width:calc(var(--spacing) * 14)}.sm\:max-w-\[14rem\]{max-width:14rem}.sm\:max-w-lg{max-width:var(--container-lg)}.sm\:max-w-md{max-width:var(--container-md)}.sm\:max-w-xs{max-width:var(--container-xs)}.sm\:min-w-10{min-width:calc(var(--spacing) * 10)}.sm\:min-w-\[2\.1rem\]{min-width:2.1rem}.sm\:min-w-\[2\.35rem\]{min-width:2.35rem}.sm\:grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.sm\:grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.sm\:flex-row{flex-direction:row}.sm\:flex-wrap{flex-wrap:wrap}.sm\:items-center{align-items:center}.sm\:items-end{align-items:flex-end}.sm\:items-start{align-items:flex-start}.sm\:justify-between{justify-content:space-between}.sm\:justify-end{justify-content:flex-end}.sm\:gap-1{gap:var(--spacing)}.sm\:gap-2{gap:calc(var(--spacing) * 2)}.sm\:gap-2\.5{gap:calc(var(--spacing) * 2.5)}.sm\:gap-3{gap:calc(var(--spacing) * 3)}:where(.sm\: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(.sm\:space-y-5>:not(:last-child)){--tw-space-y-reverse:0;margin-block-start:calc(calc(var(--spacing) * 5) * var(--tw-space-y-reverse));margin-block-end:calc(calc(var(--spacing) * 5) * calc(1 - var(--tw-space-y-reverse)))}.sm\:gap-x-3{column-gap:calc(var(--spacing) * 3)}.sm\:gap-y-2{row-gap:calc(var(--spacing) * 2)}.sm\:p-4{padding:calc(var(--spacing) * 4)}.sm\:p-5{padding:calc(var(--spacing) * 5)}.sm\:px-2{padding-inline:calc(var(--spacing) * 2)}.sm\:px-4{padding-inline:calc(var(--spacing) * 4)}.sm\:px-5{padding-inline:calc(var(--spacing) * 5)}.sm\:py-3{padding-block:calc(var(--spacing) * 3)}.sm\:text-2xl{font-size:var(--text-2xl);line-height:var(--tw-leading,var(--text-2xl--line-height))}.sm\:text-3xl{font-size:var(--text-3xl);line-height:var(--tw-leading,var(--text-3xl--line-height))}.sm\:text-4xl{font-size:var(--text-4xl);line-height:var(--tw-leading,var(--text-4xl--line-height))}.sm\:text-lg{font-size:var(--text-lg);line-height:var(--tw-leading,var(--text-lg--line-height))}.sm\:text-sm{font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height))}.sm\:text-xl{font-size:var(--text-xl);line-height:var(--tw-leading,var(--text-xl--line-height))}}@media(min-width:48rem){.md\:col-span-2{grid-column:span 2/span 2}.md\:max-w-xs{max-width:var(--container-xs)}.md\:grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.md\:\!p-5{padding:calc(var(--spacing) * 5)!important}}@media(min-width:64rem){.lg\:sticky{position:sticky}.lg\:top-14{top:calc(var(--spacing) * 14)}.lg\:block{display:block}.lg\:hidden{display:none}.lg\:h-\[3\.25rem\]{height:3.25rem}.lg\:w-\[3\.25rem\]{width:3.25rem}.lg\:w-full{width:100%}.lg\:max-w-none{max-width:none}.lg\:min-w-\[2\.35rem\]{min-width:2.35rem}.lg\:grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.lg\:grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.lg\:grid-cols-4{grid-template-columns:repeat(4,minmax(0,1fr))}.lg\:grid-cols-\[minmax\(0\,1fr\)_minmax\(280px\,360px\)\]{grid-template-columns:minmax(0,1fr) minmax(280px,360px)}.lg\:items-start{align-items:flex-start}.lg\:text-xl{font-size:var(--text-xl);line-height:var(--tw-leading,var(--text-xl--line-height))}}@media(min-width:80rem){.xl\:grid-cols-4{grid-template-columns:repeat(4,minmax(0,1fr))}.xl\:grid-cols-\[minmax\(0\,1\.1fr\)_minmax\(300px\,380px\)\]{grid-template-columns:minmax(0,1.1fr) minmax(300px,380px)}.xl\:gap-6{gap:calc(var(--spacing) * 6)}}@media(prefers-color-scheme:dark){.dark\:border-neutral-600{border-color:var(--color-neutral-600)}.dark\:border-orange-500\/35{border-color:#fe6e0059}@supports (color:color-mix(in lab,red,red)){.dark\:border-orange-500\/35{border-color:color-mix(in oklab,var(--color-orange-500) 35%,transparent)}}.dark\:bg-amber-950\/20{background-color:#46190133}@supports (color:color-mix(in lab,red,red)){.dark\:bg-amber-950\/20{background-color:color-mix(in oklab,var(--color-amber-950) 20%,transparent)}}.dark\:bg-amber-950\/25{background-color:#46190140}@supports (color:color-mix(in lab,red,red)){.dark\:bg-amber-950\/25{background-color:color-mix(in oklab,var(--color-amber-950) 25%,transparent)}}.dark\:bg-amber-950\/30{background-color:#4619014d}@supports (color:color-mix(in lab,red,red)){.dark\:bg-amber-950\/30{background-color:color-mix(in oklab,var(--color-amber-950) 30%,transparent)}}.dark\:bg-amber-950\/40{background-color:#46190166}@supports (color:color-mix(in lab,red,red)){.dark\:bg-amber-950\/40{background-color:color-mix(in oklab,var(--color-amber-950) 40%,transparent)}}.dark\:bg-emerald-900\/40{background-color:#004e3b66}@supports (color:color-mix(in lab,red,red)){.dark\:bg-emerald-900\/40{background-color:color-mix(in oklab,var(--color-emerald-900) 40%,transparent)}}.dark\:bg-emerald-950{background-color:var(--color-emerald-950)}.dark\:bg-emerald-950\/20{background-color:#002c2233}@supports (color:color-mix(in lab,red,red)){.dark\:bg-emerald-950\/20{background-color:color-mix(in oklab,var(--color-emerald-950) 20%,transparent)}}.dark\:bg-emerald-950\/30{background-color:#002c224d}@supports (color:color-mix(in lab,red,red)){.dark\:bg-emerald-950\/30{background-color:color-mix(in oklab,var(--color-emerald-950) 30%,transparent)}}.dark\:bg-green-950\/20{background-color:#032e1533}@supports (color:color-mix(in lab,red,red)){.dark\:bg-green-950\/20{background-color:color-mix(in oklab,var(--color-green-950) 20%,transparent)}}.dark\:bg-green-950\/25{background-color:#032e1540}@supports (color:color-mix(in lab,red,red)){.dark\:bg-green-950\/25{background-color:color-mix(in oklab,var(--color-green-950) 25%,transparent)}}.dark\:bg-green-950\/30{background-color:#032e154d}@supports (color:color-mix(in lab,red,red)){.dark\:bg-green-950\/30{background-color:color-mix(in oklab,var(--color-green-950) 30%,transparent)}}.dark\:bg-neutral-600{background-color:var(--color-neutral-600)}.dark\:bg-orange-950\/25{background-color:#44130640}@supports (color:color-mix(in lab,red,red)){.dark\:bg-orange-950\/25{background-color:color-mix(in oklab,var(--color-orange-950) 25%,transparent)}}.dark\:bg-sky-950\/20{background-color:#052f4a33}@supports (color:color-mix(in lab,red,red)){.dark\:bg-sky-950\/20{background-color:color-mix(in oklab,var(--color-sky-950) 20%,transparent)}}.dark\:bg-violet-950\/20{background-color:#2f0d6833}@supports (color:color-mix(in lab,red,red)){.dark\:bg-violet-950\/20{background-color:color-mix(in oklab,var(--color-violet-950) 20%,transparent)}}.dark\:from-emerald-950\/30{--tw-gradient-from:#002c224d}@supports (color:color-mix(in lab,red,red)){.dark\:from-emerald-950\/30{--tw-gradient-from:color-mix(in oklab, var(--color-emerald-950) 30%, transparent)}}.dark\:from-emerald-950\/30{--tw-gradient-stops:var(--tw-gradient-via-stops,var(--tw-gradient-position), var(--tw-gradient-from) var(--tw-gradient-from-position), var(--tw-gradient-to) var(--tw-gradient-to-position))}.dark\:to-transparent{--tw-gradient-to:transparent;--tw-gradient-stops:var(--tw-gradient-via-stops,var(--tw-gradient-position), var(--tw-gradient-from) var(--tw-gradient-from-position), var(--tw-gradient-to) var(--tw-gradient-to-position))}.dark\:text-amber-50{color:var(--color-amber-50)}.dark\:text-amber-100{color:var(--color-amber-100)}.dark\:text-amber-200{color:var(--color-amber-200)}.dark\:text-amber-200\/80{color:#fee685cc}@supports (color:color-mix(in lab,red,red)){.dark\:text-amber-200\/80{color:color-mix(in oklab,var(--color-amber-200) 80%,transparent)}}.dark\:text-amber-300{color:var(--color-amber-300)}.dark\:text-amber-400{color:var(--color-amber-400)}.dark\:text-emerald-50{color:var(--color-emerald-50)}.dark\:text-emerald-100{color:var(--color-emerald-100)}.dark\:text-emerald-200{color:var(--color-emerald-200)}.dark\:text-emerald-200\/80{color:#a4f4cfcc}@supports (color:color-mix(in lab,red,red)){.dark\:text-emerald-200\/80{color:color-mix(in oklab,var(--color-emerald-200) 80%,transparent)}}.dark\:text-emerald-300{color:var(--color-emerald-300)}.dark\:text-emerald-400{color:var(--color-emerald-400)}.dark\:text-green-100{color:var(--color-green-100)}.dark\:text-green-300{color:var(--color-green-300)}.dark\:text-orange-100{color:var(--color-orange-100)}.dark\:text-sky-50{color:var(--color-sky-50)}.dark\:text-sky-100{color:var(--color-sky-100)}.dark\:text-sky-200{color:var(--color-sky-200)}.dark\:text-sky-200\/80{color:#b8e6fecc}@supports (color:color-mix(in lab,red,red)){.dark\:text-sky-200\/80{color:color-mix(in oklab,var(--color-sky-200) 80%,transparent)}}.dark\:text-violet-50{color:var(--color-violet-50)}.dark\:text-violet-50\/80{color:#f5f3ffcc}@supports (color:color-mix(in lab,red,red)){.dark\:text-violet-50\/80{color:color-mix(in oklab,var(--color-violet-50) 80%,transparent)}}.dark\:text-violet-100{color:var(--color-violet-100)}.dark\:text-violet-200{color:var(--color-violet-200)}.dark\:ring-white\/\[0\.04\]{--tw-ring-color:#ffffff0a}@supports (color:color-mix(in lab,red,red)){.dark\:ring-white\/\[0\.04\]{--tw-ring-color:color-mix(in oklab, var(--color-white) 4%, transparent)}}}.\[\&_tr\]\:border-b tr{border-bottom-style:var(--tw-border-style);border-bottom-width:1px}.\[\&_tr\:last-child\]\:border-0 tr:last-child{border-style:var(--tw-border-style);border-width:0}.\[\&\:\:-webkit-details-marker\]\:hidden::-webkit-details-marker{display:none}.animate-fade-in{animation:.25s ease-out ui-fade-in}.animate-scale-in{animation:.25s cubic-bezier(.22,1,.36,1) ui-scale-in}.scroll-x-auto{-webkit-overflow-scrolling:touch;overflow-x:auto}.scroll-y-auto{-webkit-overflow-scrolling:touch;overflow-y:auto}.scroll-both-auto{-webkit-overflow-scrolling:touch;overflow:auto}.glass-panel{background:var(--bg-surface)}@supports (color:color-mix(in lab,red,red)){.glass-panel{background:color-mix(in srgb,var(--bg-surface) 82%,transparent)}}.glass-panel{-webkit-backdrop-filter:blur(14px);border:1px solid var(--border)}@supports (color:color-mix(in lab,red,red)){.glass-panel{border:1px solid color-mix(in srgb,var(--border) 70%,transparent)}}.glass-panel{box-shadow:0 1px 2px #0f172a0a,0 8px 32px #0f172a0f}[data-theme=dark] .glass-panel{background:var(--bg-surface)}@supports (color:color-mix(in lab,red,red)){[data-theme=dark] .glass-panel{background:color-mix(in srgb,var(--bg-surface) 78%,transparent)}}[data-theme=dark] .glass-panel{box-shadow:0 1px 2px #0003,0 12px 40px #00000059}.premium-card{border-radius:var(--radius-xl);background:var(--bg-surface);border:1px solid var(--border);transition:box-shadow .2s cubic-bezier(.22,1,.36,1),transform .2s cubic-bezier(.22,1,.36,1);box-shadow:0 4px 24px #0f172a0f}.premium-card:hover{box-shadow:0 8px 32px #0f172a1a}[data-theme=dark] .premium-card{box-shadow:0 4px 24px #00000047}[data-theme=dark] .premium-card:hover{box-shadow:0 8px 32px #0006}.tap-scale{transition:transform .14s cubic-bezier(.22,1,.36,1)}.tap-scale:active{transform:scale(.97)}.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}.page-gradient-bg{background:radial-gradient(ellipse 80% 50% at 50% -20%,var(--primary),transparent),var(--bg-page)}@supports (color:color-mix(in lab,red,red)){.page-gradient-bg{background:radial-gradient(ellipse 80% 50% at 50% -20%,color-mix(in srgb,var(--primary) 12%,transparent),transparent),var(--bg-page)}}.student-shell--premium .page-footer-nav{background:var(--bg-surface)}@supports (color:color-mix(in lab,red,red)){.student-shell--premium .page-footer-nav{background:color-mix(in srgb,var(--bg-surface) 88%,transparent)}}.student-shell--premium .page-footer-nav{-webkit-backdrop-filter:blur(16px);border-top:1px solid var(--border)}@supports (color:color-mix(in lab,red,red)){.student-shell--premium .page-footer-nav{border-top:1px solid color-mix(in srgb,var(--border) 80%,transparent)}}.nav-lucide-icon{opacity:.85;flex-shrink:0}.bottom-nav-item.active .nav-lucide-icon,.side-nav-item.active .nav-lucide-icon{opacity:1;color:var(--primary)}}@keyframes ui-fade-in{0%{opacity:0}to{opacity:1}}@keyframes ui-scale-in{0%{opacity:0;transform:scale(.96)}to{opacity:1;transform:scale(1)}}@keyframes shimmer{0%{background-position:-200% 0}to{background-position:200% 0}}.skeleton-shimmer{background:linear-gradient(90deg,var(--bg-inset) 0%,var(--bg-surface-muted) 50%,var(--bg-inset) 100%)}@supports (color:color-mix(in lab,red,red)){.skeleton-shimmer{background:linear-gradient(90deg,var(--bg-inset) 0%,color-mix(in srgb,var(--bg-surface-muted) 90%,white) 50%,var(--bg-inset) 100%)}}.skeleton-shimmer{background-size:200% 100%;animation:1.4s ease-in-out infinite shimmer}@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-gradient-position{syntax:"*";inherits:false}@property --tw-gradient-from{syntax:"<color>";inherits:false;initial-value:#0000}@property --tw-gradient-via{syntax:"<color>";inherits:false;initial-value:#0000}@property --tw-gradient-to{syntax:"<color>";inherits:false;initial-value:#0000}@property --tw-gradient-stops{syntax:"*";inherits:false}@property --tw-gradient-via-stops{syntax:"*";inherits:false}@property --tw-gradient-from-position{syntax:"<length-percentage>";inherits:false;initial-value:0%}@property --tw-gradient-via-position{syntax:"<length-percentage>";inherits:false;initial-value:50%}@property --tw-gradient-to-position{syntax:"<length-percentage>";inherits:false;initial-value:100%}@property --tw-leading{syntax:"*";inherits:false}@property --tw-font-weight{syntax:"*";inherits:false}@property --tw-tracking{syntax:"*";inherits:false}@property --tw-ordinal{syntax:"*";inherits:false}@property --tw-slashed-zero{syntax:"*";inherits:false}@property --tw-numeric-figure{syntax:"*";inherits:false}@property --tw-numeric-spacing{syntax:"*";inherits:false}@property --tw-numeric-fraction{syntax:"*";inherits:false}@property --tw-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-shadow-color{syntax:"*";inherits:false}@property --tw-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-inset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-shadow-color{syntax:"*";inherits:false}@property --tw-inset-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-ring-color{syntax:"*";inherits:false}@property --tw-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-ring-color{syntax:"*";inherits:false}@property --tw-inset-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-ring-inset{syntax:"*";inherits:false}@property --tw-ring-offset-width{syntax:"<length>";inherits:false;initial-value:0}@property --tw-ring-offset-color{syntax:"*";inherits:false;initial-value:#fff}@property --tw-ring-offset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-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}@keyframes spin{to{transform:rotate(360deg)}}@keyframes pulse{50%{opacity:.5}}:root,[data-theme=light]{color-scheme:light;--page-header-h: 64px;--page-footer-h: 44px;--page-footer-nav-h: 64px;--page-gutter: 20px;--shell-max-width: 100%;--content-list-inset-left: 0px;--content-list-inset-right: 0px;--bg-page: #f4f5fb;--bg-surface: #ffffff;--bg-surface-muted: #f7f6ff;--bg-inset: #eeeef8;--text-primary: #1a1535;--text-muted: #6b7280;--text-secondary: #4b5563;--text-nav: #374151;--border: #e5e7ef;--border-input: #d1d5e0;--border-light: #eef0f7;--primary: #7c5dfa;--primary-dark: #5b46e0;--primary-soft: #eee9ff;--primary-border: #c4b5fd;--primary-hover-border: #a78bfa;--btn-secondary: #486581;--btn-danger: #c92a2a;--success-bg: #ebfbee;--success-text: #2b8a3e;--success-border: #8fd19e;--warning-bg: #fff9db;--warning-text: #8a6d00;--error-bg: #fff5f5;--error-text: #c92a2a;--error-banner: #9b1c1c;--error-border: #f9caca;--info-bg: #eee9ff;--info-text: #4c1d95;--toast-bg: #102a43;--toast-success: #0b7285;--modal-backdrop: rgba(16, 42, 67, .45);--text-on-primary: #ffffff;--chart-mcq: #0b69a3;--chart-short: #2b8a3e;--chart-long: #c97a00;--chart-essay: #7048e8;--chart-vocab: #0b7285;--surface: var(--bg-surface);--vm-panel-soft: #f4f6fb;--vm-border: #e2e8f0;color:var(--text-primary);background:var(--bg-page);font-family:Plus Jakarta Sans,Inter,Segoe UI,system-ui,sans-serif;line-height:1.5}[data-theme=dark]{color-scheme:dark;--bg-page: #0b1118;--bg-surface: #151d2b;--bg-surface-muted: #1a2435;--bg-inset: #243044;--text-primary: #e8eef6;--text-muted: #9aabc0;--text-secondary: #b0c0d4;--text-nav: #c5d4e3;--border: #2a3a4f;--border-input: #3d5068;--border-light: #223044;--primary: #2b8fc4;--primary-dark: #1f7aab;--primary-soft: #1a3050;--primary-border: #2d5a80;--primary-hover-border: #4d8ab8;--btn-secondary: #5a7a94;--btn-danger: #e55c5c;--success-bg: #1a3324;--success-text: #6fcf97;--success-border: #3d7a50;--warning-bg: #3d3520;--warning-text: #e8c547;--error-bg: #3d2020;--error-text: #f08080;--error-banner: #f0a0a0;--error-border: #5a3030;--info-bg: #1a3050;--info-text: #7ec8f0;--toast-bg: #1e2a3d;--toast-success: #2a8a9a;--modal-backdrop: rgba(0, 0, 0, .65);--text-on-primary: #ffffff;--chart-mcq: #3d9fd4;--chart-short: #6fcf97;--chart-long: #e8b84a;--chart-essay: #a78bfa;--chart-vocab: #4ecdc4;--surface: var(--bg-surface);--vm-panel-soft: #1a2435;--vm-border: #2a3a4f;color:var(--text-primary);background:var(--bg-page)}*{box-sizing:border-box}html{font-size:15px}body{margin:0;min-height:100vh;color:var(--text-primary);background:var(--bg-page);font-size:.9375rem}h1,h2,p{margin:0}.page-shell{min-height:100vh;width:100%;background:var(--bg-page)}.page-header-fixed{position:fixed;top:0;left:0;right:0;z-index:20;height:var(--page-header-h);background:var(--bg-surface);border-bottom:1px solid var(--border);overflow:visible}.shell-frame{width:100%;max-width:var(--shell-max-width);margin:0 auto;padding-inline:var(--page-gutter);box-sizing:border-box}.shell-header-row{height:var(--page-header-h);display:flex;align-items:center;justify-content:space-between;gap:12px}.page-header-start{display:flex;align-items:center;gap:8px;min-width:0}.page-header-brand-block{min-width:0}.mobile-menu-btn{display:inline-flex;flex-shrink:0}.student-shell.student-menu-open .page-body{overflow:hidden}.page-body{min-height:100vh;padding-top:calc(var(--page-header-h) + 16px);padding-bottom:calc(var(--page-footer-h) + 16px)}.page-body>.shell-frame{width:100%}.page-body-center{display:grid;place-items:center;width:100%}.page-body.page-body-center>.shell-frame{width:min(640px,100%);margin-inline:auto}.page-footer-fixed{position:fixed;left:0;right:0;bottom:0;z-index:20;background:var(--bg-surface);border-top:1px solid var(--border)}.page-footer-simple{height:var(--page-footer-h)}.shell-footer-simple{height:var(--page-footer-h);display:flex;align-items:center;justify-content:center;font-size:.82rem}.page-footer-nav{height:var(--page-footer-nav-h);z-index:22}.shell-footer-nav{height:var(--page-footer-nav-h);display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:4px;padding-block:8px}.student-shell .page-body{padding-bottom:calc(var(--page-footer-nav-h) + 16px)}.student-shell .page-footer-simple{display:none}.app-brand{font-size:1rem;font-weight:700}.app-user{font-size:.82rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.app-content{width:100%;min-width:0;box-sizing:border-box;padding-left:var(--content-list-inset-left);padding-right:var(--content-list-inset-right)}.student-body,.student-layout-grid,.monitor-body{width:100%}.side-nav{display:none;position:relative;z-index:12}.student-sidebar{display:flex;flex-direction:column;gap:.85rem;height:100%}.student-sidebar-brand{display:flex;align-items:center;gap:.75rem;padding:.15rem .25rem}.student-sidebar-brand-mark{display:inline-flex;height:2.4rem;width:2.4rem;flex-shrink:0;align-items:center;justify-content:center;border-radius:.9rem;background:var(--primary);color:var(--text-on-primary)}.student-sidebar-profile{display:flex;align-items:center;gap:.75rem;padding:.85rem;border-radius:1.1rem;background:var(--bg-surface-muted);border:1px solid var(--border)}.student-sidebar-search{margin-bottom:.15rem}.student-sidebar-scroll{display:flex;flex-direction:column;gap:.85rem;flex:1;min-height:0;overflow:auto}.student-sidebar-group{display:flex;flex-direction:column;gap:.3rem}.student-sidebar-group-label{padding:.45rem .65rem .2rem;font-size:.68rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--text-muted)}.student-sidebar-group-items{display:flex;flex-direction:column;gap:.22rem}.student-sidebar-premium{margin-top:auto;padding:1rem;border-radius:1.15rem;background:linear-gradient(145deg,var(--primary),color-mix(in srgb,var(--primary-dark) 78%,#0b1118));box-shadow:0 10px 22px color-mix(in srgb,var(--primary) 22%,transparent)}.student-top-avatar-btn{border:none;background:transparent;padding:0;cursor:pointer;border-radius:999px}.student-top-search{display:inline-flex;flex-direction:row;flex-wrap:nowrap;align-items:center;gap:.55rem;width:min(420px,100%);max-width:100%;height:2.5rem;margin-inline:auto;padding:0 .9rem;border-radius:999px;border:1px solid var(--border);background:var(--bg-surface);color:var(--text-muted);box-sizing:border-box;overflow:hidden;font-weight:500;font-size:inherit}.student-top-search>svg{flex:0 0 auto;width:1.125rem;height:1.125rem;display:block}.student-top-search input[data-search-input],.student-top-search input{flex:1 1 auto;min-width:0;width:auto;height:100%;margin:0;padding:0;border:0;border-radius:0;outline:none;background:transparent;box-shadow:none;color:var(--text-primary);font:inherit;font-size:.9rem;font-weight:500;line-height:1.2;-moz-appearance:none;appearance:none;-webkit-appearance:none}.student-top-search input[type=search]::-webkit-search-decoration,.student-top-search input[type=search]::-webkit-search-cancel-button,.student-top-search input[type=search]::-webkit-search-results-button,.student-top-search input[type=search]::-webkit-search-results-decoration{display:none;-webkit-appearance:none}.page-header-center{display:flex;justify-content:center;align-items:center;min-width:0;align-self:stretch}.student-dashboard-grid{display:grid;grid-template-columns:minmax(0,1fr);gap:1.5rem;width:100%}.dash-greeting h1{margin:0;font-size:clamp(1.35rem,2.1vw,1.75rem);font-weight:800;letter-spacing:-.035em;color:var(--text-primary)}.dash-greeting-sub{margin:.45rem 0 0;max-width:36rem;color:var(--text-muted);font-size:.88rem;line-height:1.45}.dash-greeting p{margin:.35rem 0 0;color:var(--text-muted);font-size:.85rem}.dash-stat-row{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.85rem}.dash-stat-card{display:flex;flex-direction:column;align-items:flex-start;gap:.85rem;min-width:0;padding:1rem 1.05rem;border-radius:1.35rem;background:var(--bg-surface);border:1px solid var(--border);box-shadow:0 10px 28px #0f172a0b;transition:transform .2s ease,box-shadow .2s ease,border-color .2s ease}.dash-stat-card--row{flex-direction:row;align-items:center;gap:.9rem;padding:.95rem 1.05rem}.dash-stat-card:hover{transform:translateY(-2px);box-shadow:0 14px 30px #0f172a12;border-color:color-mix(in srgb,var(--primary) 22%,var(--border))}.dash-stat-icon{display:inline-flex;height:2.65rem;width:2.65rem;flex-shrink:0;align-items:center;justify-content:center;border-radius:.95rem;background:var(--bg-surface-muted);color:var(--text-primary)}.dash-stat-ring{position:relative;height:2.85rem;width:2.85rem;flex-shrink:0;border-radius:999px;display:grid;place-items:center}.dash-stat-ring:before{content:"";position:absolute;top:.32rem;right:.32rem;bottom:.32rem;left:.32rem;border-radius:inherit;background:var(--bg-surface)}.dash-stat-ring span{position:relative;z-index:1;font-size:.62rem;font-weight:800;color:var(--text-primary)}.dash-stat-card--accent .dash-stat-icon{background:var(--primary-soft);color:var(--primary)}.dash-stat-card--success .dash-stat-icon{background:var(--success-bg);color:var(--success-text)}.dash-stat-card--warn .dash-stat-icon{background:var(--warning-bg);color:var(--warning-text)}.dash-stat-body{min-width:0;width:100%}.dash-stat-card--row .dash-stat-body{width:auto;flex:1}.dash-stat-value{font-size:clamp(1rem,1.5vw,1.2rem);font-weight:800;letter-spacing:-.03em;line-height:1.15;color:var(--text-primary);overflow-wrap:anywhere}.dash-stat-label{margin-top:.2rem;font-size:.7rem;font-weight:600;color:var(--text-muted)}.dash-stat-hint{margin:.35rem 0 0;font-size:.66rem;line-height:1.4;color:var(--text-muted)}.dash-badge-hero{display:flex;align-items:center;gap:1rem;margin:0 0 1rem;padding:.85rem 1.1rem;border-radius:1.15rem;border:1px solid var(--border);background:color-mix(in srgb,var(--bg-surface) 90%,#5b7c99)}.dash-badge-hero--bronze{background:color-mix(in srgb,var(--bg-surface) 88%,#b87333)}.dash-badge-hero--silver{background:color-mix(in srgb,var(--bg-surface) 88%,#8a8f98)}.dash-badge-hero--gold{background:color-mix(in srgb,var(--bg-surface) 88%,#c9a227)}.dash-badge-hero--platinum{background:color-mix(in srgb,var(--bg-surface) 86%,#5b7c99)}.dash-badge-hero__art{width:5.75rem;height:5.75rem;object-fit:contain;flex-shrink:0;filter:drop-shadow(0 8px 18px color-mix(in srgb,#0f172a 28%,transparent))}.dash-badge-hero__copy{min-width:0}.dash-badge-hero__eyebrow{margin:0;font-size:.72rem;letter-spacing:.06em;text-transform:uppercase;color:var(--text-muted)}.dash-badge-hero__title{display:block;margin:.2rem 0;font-size:1.35rem;line-height:1.2;color:var(--text)}.dash-badge-hero__meta{margin:0;font-size:.88rem;color:var(--text-muted)}.dash-stat-badge-art{width:2.55rem;height:2.55rem;flex-shrink:0;display:grid;place-items:center}.dash-stat-badge-art img{width:2.55rem;height:2.55rem;object-fit:contain}.dash-weekly-badge__art{width:2.1rem;height:2.1rem;object-fit:contain;flex-shrink:0}.dash-weekly-badge{margin:0 0 1rem;padding:.9rem 1.1rem;border-radius:1rem;border:1px solid var(--border);background:color-mix(in srgb,var(--bg-surface) 92%,#c9a227)}.dash-weekly-badge--bronze{background:color-mix(in srgb,var(--bg-surface) 88%,#b87333)}.dash-weekly-badge--silver{background:color-mix(in srgb,var(--bg-surface) 88%,#8a8f98)}.dash-weekly-badge--gold{background:color-mix(in srgb,var(--bg-surface) 88%,#c9a227)}.dash-weekly-badge--platinum{background:color-mix(in srgb,var(--bg-surface) 88%,#5b7c99)}.dash-weekly-badge--none{background:color-mix(in srgb,var(--bg-surface) 94%,#6b7280)}.dash-weekly-badge__head{display:flex;align-items:center;gap:.5rem;flex-wrap:wrap;font-size:.92rem}.dash-weekly-badge__head span{color:var(--text-muted);font-size:.82rem}.dash-weekly-badge__progress{margin-top:.55rem;height:.4rem;border-radius:999px;background:color-mix(in srgb,var(--border) 70%,transparent);overflow:hidden}.dash-weekly-badge__bar{height:100%;border-radius:inherit;background:var(--primary)}.dash-weekly-badge__note{margin:.55rem 0 0;font-size:.78rem;line-height:1.45;color:var(--text-muted)}.dash-hero{display:grid;gap:1.15rem;padding:1.45rem 1.5rem;border-radius:1.5rem;background:radial-gradient(circle at 88% 18%,color-mix(in srgb,var(--hero-accent, var(--primary)) 24%,transparent),transparent 42%),linear-gradient(135deg,color-mix(in srgb,var(--hero-accent, var(--primary)) 12%,var(--bg-surface)),var(--bg-surface) 55%);border:1px solid color-mix(in srgb,var(--hero-accent, var(--primary)) 16%,var(--border));box-shadow:0 16px 36px #0f172a0f;overflow:hidden;transition:transform .2s ease,box-shadow .2s ease}.dash-hero:hover{transform:translateY(-2px);box-shadow:0 20px 40px #0f172a14}.dash-hero-eyebrow{margin:0;font-size:.7rem;font-weight:700;letter-spacing:.04em;text-transform:uppercase;color:var(--hero-accent, var(--primary))}.dash-hero-title{margin:.35rem 0 0;font-size:clamp(1.15rem,1.8vw,1.5rem);font-weight:800;letter-spacing:-.03em;color:var(--text-primary)}.dash-hero-desc{margin:.45rem 0 0;max-width:36rem;color:var(--text-muted);font-size:.82rem;line-height:1.5}.dash-hero-cta{box-shadow:0 6px 14px color-mix(in srgb,var(--primary) 18%,transparent)}.dash-hero-footer{margin-top:1.1rem;display:grid;gap:.55rem}.dash-hero-progress-label,.dash-hero-meta{font-size:.7rem;color:var(--text-muted)}.dash-hero-art{position:relative;min-height:10rem;border-radius:1.35rem;background:radial-gradient(circle at 70% 30%,color-mix(in srgb,var(--hero-accent, var(--primary)) 18%,transparent),transparent 55%),color-mix(in srgb,var(--hero-soft, var(--primary-soft)) 70%,var(--bg-surface-muted));overflow:hidden;display:grid;place-items:center;color:var(--hero-accent, var(--primary))}.dash-hero-art-frame{position:relative;width:100%;height:100%;min-height:10rem;display:grid;place-items:center}.dash-hero-icon-badge{position:relative;z-index:1;display:grid;place-items:center;width:4.5rem;height:4.5rem;border-radius:1.25rem;background:color-mix(in srgb,var(--bg-surface) 82%,var(--hero-soft, var(--primary-soft)));border:1px solid color-mix(in srgb,var(--hero-accent, var(--primary)) 22%,transparent);box-shadow:0 12px 28px color-mix(in srgb,var(--hero-accent, var(--primary)) 16%,transparent);color:var(--hero-accent, var(--primary))}.dash-hero-svg{position:relative;z-index:1;width:min(100%,240px);height:auto}.dash-hero-blob{position:absolute;border-radius:999px;opacity:.85}.dash-hero-blob-a{width:8.5rem;height:8.5rem;right:6%;top:-12%;background:color-mix(in srgb,var(--primary) 32%,transparent)}.dash-hero-blob-b{width:6.5rem;height:6.5rem;left:10%;bottom:-22%;background:color-mix(in srgb,var(--primary) 20%,transparent)}.dash-hero-blob-c{width:4.5rem;height:4.5rem;left:44%;top:30%;background:color-mix(in srgb,var(--primary) 16%,transparent)}.dash-hero-stack,.dash-hero-illus,.dash-hero-book,.dash-hero-plant{display:none}.dash-action-row{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.85rem}.dash-action-card{display:flex;flex-direction:column;gap:.7rem;min-height:9.25rem;padding:1rem;border-radius:1.35rem;text-decoration:none;text-align:left;border:1px solid var(--border);background:var(--bg-surface);box-shadow:0 10px 28px #0f172a0b;color:inherit;cursor:pointer;transition:transform .2s ease,box-shadow .2s ease,border-color .2s ease}.dash-action-card:hover{transform:translateY(-3px);box-shadow:0 16px 32px #0f172a14;border-color:color-mix(in srgb,var(--primary) 20%,var(--border))}.dash-action-card:focus-visible{outline:2px solid var(--primary);outline-offset:3px}.dash-action-icon{display:inline-flex;height:3rem;width:3rem;align-items:center;justify-content:center;border-radius:1rem}.dash-action--primary .dash-action-icon{background:var(--primary-soft);color:var(--primary)}.dash-action--blue .dash-action-icon{background:color-mix(in srgb,var(--chart-mcq) 16%,transparent);color:var(--chart-mcq)}.dash-action--green .dash-action-icon{background:var(--success-bg);color:var(--success-text)}.dash-action--orange .dash-action-icon{background:var(--warning-bg);color:var(--warning-text)}.dash-action--rose .dash-action-icon{background:color-mix(in srgb,var(--btn-danger) 12%,transparent);color:var(--btn-danger)}.dash-action--slate .dash-action-icon{background:color-mix(in srgb,var(--text-secondary) 16%,transparent);color:var(--text-secondary)}.dash-action-copy{flex:1}.dash-action-copy h3{margin:0;font-size:.85rem;font-weight:700;color:var(--text-primary)}.dash-action-copy p{margin:.3rem 0 0;font-size:.7rem;line-height:1.4;color:var(--text-muted)}.dash-action-cta{display:inline-flex;align-items:center;gap:.3rem;font-size:.72rem;font-weight:700;color:var(--primary)}.game-hub-grid{display:grid;grid-template-columns:repeat(1,minmax(0,1fr));gap:.75rem}@media(min-width:640px){.game-hub-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(min-width:1024px){.game-hub-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}.game-hub-section__title{display:inline-flex;align-items:center;gap:.45rem;margin:0;font-size:.72rem;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--text-muted)}.game-hub-card{display:flex;flex-direction:column;gap:.65rem;min-height:8.5rem;padding:1rem;border-radius:1.25rem;text-decoration:none;text-align:left;border:1px solid var(--border);background:linear-gradient(145deg,color-mix(in srgb,var(--game-hub-accent, var(--primary)) 8%,var(--bg-surface)),var(--bg-surface) 55%);box-shadow:0 8px 22px #0f172a0a;color:inherit;transition:transform .2s ease,box-shadow .2s ease,border-color .2s ease}.game-hub-card:hover{transform:translateY(-2px);border-color:color-mix(in srgb,var(--game-hub-accent, var(--primary)) 35%,var(--border));box-shadow:0 14px 28px #0f172a14}.game-hub-card:focus-visible{outline:2px solid var(--primary);outline-offset:3px}.game-hub-card__top{display:flex;align-items:flex-start;justify-content:space-between;gap:.5rem}.game-hub-card__icon{display:inline-flex;height:2.65rem;width:2.65rem;align-items:center;justify-content:center;border-radius:.9rem;background:color-mix(in srgb,var(--game-hub-accent, var(--primary)) 16%,transparent);color:var(--game-hub-accent, var(--primary))}.game-hub-card__badge{border-radius:999px;padding:.15rem .55rem;font-size:.62rem;font-weight:700;letter-spacing:.04em;text-transform:uppercase;background:color-mix(in srgb,var(--game-hub-accent, var(--primary)) 12%,transparent);color:var(--game-hub-accent, var(--primary))}.game-hub-card__copy{flex:1}.game-hub-card__copy h3{margin:0;font-size:.95rem;font-weight:700;color:var(--text-primary)}.game-hub-card__copy p{margin:.3rem 0 0;font-size:.78rem;line-height:1.4;color:var(--text-muted)}.game-hub-card__cta{display:inline-flex;align-items:center;gap:.3rem;font-size:.75rem;font-weight:700;color:var(--game-hub-accent, var(--primary))}.game-hub-card--primary{--game-hub-accent: var(--primary)}.game-hub-card--blue{--game-hub-accent: var(--chart-mcq)}.game-hub-card--green{--game-hub-accent: var(--success-text)}.game-hub-card--orange{--game-hub-accent: var(--warning-text)}.game-hub-card--rose{--game-hub-accent: var(--btn-danger)}.game-hub-card--slate{--game-hub-accent: var(--text-secondary)}.game-hub-card--teal{--game-hub-accent: #0d9488}.game-hub-card--violet{--game-hub-accent: #7c3aed}.game-hub-card--amber{--game-hub-accent: #d97706}.game-hub-nav{display:flex;flex-wrap:wrap;align-items:center;gap:.45rem}.game-hub-nav__link{display:inline-flex;align-items:center;gap:.35rem;border-radius:999px;border:1px solid transparent;padding:.4rem .85rem;font-size:.8rem;font-weight:600;text-decoration:none;color:var(--text-muted);transition:background .15s ease,color .15s ease,border-color .15s ease}.game-hub-nav__link:hover{background:color-mix(in srgb,var(--primary) 8%,transparent);color:var(--text-primary)}.game-hub-nav__link[aria-current=page],.game-hub-nav__link.is-active{background:color-mix(in srgb,var(--primary) 14%,transparent);border-color:color-mix(in srgb,var(--primary) 28%,transparent);color:var(--text-primary)}.game-hub-nav__chip{display:inline-flex;align-items:center;gap:.35rem;margin-left:auto;border-radius:999px;padding:.35rem .75rem;font-size:.75rem;font-weight:600;background:color-mix(in srgb,var(--primary) 10%,transparent);color:var(--text-primary)}.game-hub-tabs{display:inline-flex;flex-wrap:wrap;gap:.35rem;padding:.3rem;border-radius:999px;background:color-mix(in srgb,var(--text-secondary) 8%,transparent)}.game-hub-tabs__btn{display:inline-flex;align-items:center;gap:.35rem;border:0;border-radius:999px;padding:.45rem .95rem;font-size:.85rem;font-weight:600;background:transparent;color:var(--text-muted);cursor:pointer;transition:background .15s ease,color .15s ease,box-shadow .15s ease}.game-hub-tabs__btn.is-active{background:var(--bg-surface);color:var(--text-primary);box-shadow:0 4px 12px #0f172a14}.game-play-panel{border-radius:1.35rem;border:1px solid color-mix(in srgb,var(--primary) 18%,var(--border));background:linear-gradient(160deg,color-mix(in srgb,var(--primary) 7%,var(--bg-surface)),var(--bg-surface) 50%);padding:1.25rem 1.1rem;box-shadow:0 10px 28px #0f172a0d}.game-lives{display:inline-flex;align-items:center;justify-content:center;gap:.25rem}.game-lives__heart{color:#e11d48}.game-lives__heart.is-empty{color:color-mix(in srgb,var(--text-muted) 55%,transparent)}.dash-weak-row{display:grid;gap:.75rem}.dash-weak-bar-card{display:grid;gap:.55rem;padding:.95rem 1.05rem;border-radius:1.25rem;text-decoration:none;background:var(--bg-surface);border:1px solid var(--border);box-shadow:0 8px 22px #0f172a0a;transition:transform .18s ease,border-color .18s ease,box-shadow .18s ease}.dash-weak-bar-card:hover{transform:translateY(-1px);border-color:color-mix(in srgb,var(--primary) 20%,var(--border));box-shadow:0 12px 26px #0f172a0f}.dash-weak-bar-head{display:flex;align-items:flex-start;justify-content:space-between;gap:.75rem}.dash-weak-pct{flex-shrink:0;font-size:.78rem;font-weight:800;color:var(--primary)}.dash-weak-chip{display:flex;align-items:center;gap:.85rem;padding:.85rem 1rem;border-radius:999px;text-decoration:none;background:var(--bg-surface);border:1px solid var(--border);box-shadow:0 8px 22px #0f172a0a}.dash-weak-ring{position:relative;height:2.75rem;width:2.75rem;flex-shrink:0;border-radius:999px;display:grid;place-items:center}.dash-weak-ring:before{content:"";position:absolute;top:.28rem;right:.28rem;bottom:.28rem;left:.28rem;border-radius:inherit;background:var(--bg-surface)}.dash-weak-ring span{position:relative;z-index:1;font-size:.68rem;font-weight:800;color:var(--text-primary)}.dash-weak-title{font-size:.9rem;font-weight:700;color:var(--text-primary)}.dash-weak-sub{margin-top:.15rem;font-size:.75rem;color:var(--text-muted)}.dash-subject-card{position:relative;overflow:hidden;padding:1.3rem;border-radius:1.45rem;color:var(--text-on-primary);background:linear-gradient(160deg,color-mix(in srgb,var(--subject-accent, var(--primary)) 78%,#0f172a),color-mix(in srgb,var(--subject-accent, var(--primary-dark)) 48%,#111827));box-shadow:0 14px 28px color-mix(in srgb,var(--subject-accent, var(--primary)) 18%,transparent);transition:transform .2s ease,box-shadow .2s ease}.dash-subject-card:hover{transform:translateY(-2px);box-shadow:0 22px 42px color-mix(in srgb,var(--primary) 32%,transparent)}.dash-subject-card--soft{color:var(--text-primary);background:var(--bg-surface);border:1px solid var(--border);box-shadow:0 10px 28px #0f172a0b}.dash-subject-card--soft:hover{box-shadow:0 14px 32px #0f172a12;border-color:color-mix(in srgb,var(--primary) 20%,var(--border))}.dash-subject-card--soft .dash-subject-kicker,.dash-subject-card--soft .dash-subject-sub,.dash-subject-card--soft .dash-subject-meta,.dash-subject-card--soft .dash-subject-progress-row{opacity:1;color:var(--text-muted)}.dash-subject-card--soft .dash-subject-title{color:var(--text-primary)}.dash-subject-card--soft .dash-subject-art{inset:auto .85rem .85rem auto;width:auto;height:auto}.dash-subject-soft-icon{display:inline-flex;height:2.75rem;width:2.75rem;align-items:center;justify-content:center;border-radius:.95rem;background:var(--primary-soft);color:var(--primary)}.dash-subject-academic{position:absolute;right:1.35rem;top:1.35rem;display:inline-flex;height:2.5rem;width:2.5rem;align-items:center;justify-content:center;border-radius:.85rem;background:#ffffff24;color:#ffffffeb}.dash-subjects-grid{display:grid;grid-template-columns:minmax(0,1fr);gap:.85rem}.dash-subject-stats{position:relative;margin-top:.85rem;display:flex;flex-wrap:wrap;gap:.75rem 1.15rem}.dash-subject-stat{display:grid;gap:.1rem}.dash-subject-stat strong{font-size:.92rem;font-weight:800;letter-spacing:-.02em}.dash-subject-stat span{font-size:.66rem;opacity:.85}.dash-streak-week{padding:1.1rem 1.15rem;border-radius:1.15rem;background:linear-gradient(165deg,color-mix(in srgb,#e8590c 10%,var(--bg-surface)) 0%,var(--bg-surface) 55%);border:1px solid color-mix(in srgb,#e8590c 28%,var(--border));box-shadow:0 10px 28px color-mix(in srgb,#e8590c 8%,transparent)}.dash-streak-week-head{display:flex;align-items:center;gap:.75rem;margin-bottom:.9rem}.dash-streak-week-icon{display:grid;place-items:center;width:2.35rem;height:2.35rem;border-radius:.85rem;background:color-mix(in srgb,#e8590c 14%,var(--bg-surface));color:#e8590c;flex-shrink:0}.dash-streak-week-title{margin:0;font-size:.88rem;font-weight:750;color:var(--text-primary)}.dash-streak-week-copy{min-width:0}.dash-streak-week-title-row{display:flex;align-items:center;gap:.35rem}.dash-streak-help.hint-tooltip:after,.dash-stat-help.hint-tooltip:after{max-width:min(22rem,85vw);width:22rem}.dash-stat-label-row{display:inline-flex;align-items:center;gap:.35rem}.dash-streak-week-sub{margin:.15rem 0 0;font-size:.75rem;color:var(--text-muted)}.dash-streak-week-days{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:.35rem}.dash-streak-day{display:grid;justify-items:center;gap:.35rem}.dash-streak-day-label{font-size:.68rem;font-weight:650;color:var(--text-muted)}.dash-streak-day-dot{display:grid;place-items:center;height:1.9rem;width:1.9rem;border-radius:999px;font-size:.7rem;font-weight:800;background:color-mix(in srgb,#e8590c 10%,var(--bg-inset));color:transparent;border:1px solid color-mix(in srgb,#e8590c 28%,var(--border))}.dash-streak-day--done .dash-streak-day-dot{background:#e8590c;border-color:#e8590c;color:#fff}.dash-streak-day--today .dash-streak-day-dot{box-shadow:0 0 0 2px #e8590c47}.dash-streak-day--future .dash-streak-day-dot{opacity:.4}.dash-activity-row{display:flex;align-items:flex-start;gap:.75rem;padding:.7rem .15rem}.dash-activity-icon{height:2.25rem;width:2.25rem}.dash-activity-title{font-size:.9rem;font-weight:650;color:var(--text-primary);line-height:1.35}.dash-activity-meta{margin-top:.15rem;font-size:.75rem;color:var(--text-muted);line-height:1.4}.dash-activity-time{font-size:.72rem;color:var(--text-muted);padding-top:.15rem}.dash-subject-art{position:absolute;inset:auto -6% -8% auto;width:11rem;height:11rem;pointer-events:none}.dash-subject-orb{position:absolute;top:1.2rem;right:1.2rem;bottom:1.2rem;left:1.2rem;border-radius:999px;background:radial-gradient(circle at 35% 30%,rgba(255,255,255,.55),transparent 42%),color-mix(in srgb,white 22%,transparent);box-shadow:0 0 40px #ffffff2e}.dash-subject-wave{position:absolute;left:-10%;right:-10%;bottom:2.6rem;height:28px;border-radius:999px;background:transparent;border-bottom:2px solid rgba(255,255,255,.55);transform:rotate(-8deg);opacity:.9}.dash-subject-kicker,.dash-subject-sub,.dash-subject-meta,.dash-subject-progress-row{position:relative;opacity:.86}.dash-subject-kicker{margin:0;font-size:.72rem;font-weight:700;letter-spacing:.06em;text-transform:uppercase}.dash-subject-title{position:relative;margin:.4rem 0 0;font-size:1.05rem;font-weight:800;letter-spacing:-.02em}.dash-subject-sub,.dash-subject-meta{margin:.3rem 0 0;font-size:.74rem}.dash-subject-progress{position:relative;margin-top:1rem}.dash-subject-progress-row{display:flex;justify-content:space-between;margin-bottom:.35rem;font-size:.75rem}.dash-subject-card .progress-bar-track{background:#ffffff38}.dash-ai-promo{background:linear-gradient(145deg,var(--primary),color-mix(in srgb,var(--primary-dark) 72%,#0b1118))!important;border:none!important;color:var(--text-on-primary)!important;min-height:8.5rem!important}.dash-ai-promo .dash-action-icon{background:#ffffff2e!important;color:var(--text-on-primary)!important}.dash-ai-promo .dash-action-copy h3,.dash-ai-promo .dash-action-cta{color:var(--text-on-primary)!important}.dash-ai-promo .dash-action-copy p{color:color-mix(in srgb,var(--text-on-primary) 88%,transparent)!important}.dash-library-mini{padding:1rem 1.05rem;border-radius:1.15rem;background:var(--bg-surface);border:1px solid var(--border)}.dash-library-mini-label{font-size:.75rem;font-weight:700;text-transform:uppercase;letter-spacing:.05em;color:var(--text-muted)}.dash-library-mini-stats{margin-top:.45rem;display:flex;flex-wrap:wrap;gap:.75rem;font-size:.9rem;font-weight:650;color:var(--text-primary)}@media(min-width:720px){.dash-stat-row{grid-template-columns:repeat(4,minmax(0,1fr))}.dash-action-row{grid-template-columns:repeat(3,minmax(0,1fr))}.dash-weak-row,.dash-subjects-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.dash-hero{grid-template-columns:1.25fr .85fr;align-items:stretch}.dash-hero-art{min-height:100%}}@media(min-width:1100px){.student-dashboard-grid{grid-template-columns:minmax(0,1.7fr) minmax(280px,.9fr);gap:1.5rem}.student-dashboard-aside{position:sticky;top:calc(var(--page-header-h) + 12px)}.student-dashboard-main{gap:1.35rem}.dash-stat-row{grid-template-columns:repeat(4,minmax(0,1fr))}.dash-action-row{grid-template-columns:repeat(5,minmax(0,1fr))}.dash-weak-row{grid-template-columns:1fr}.dash-subjects-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(min-width:1280px){.dash-stat-row{grid-template-columns:repeat(4,minmax(0,1fr))}.dash-subjects-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}@media(min-width:900px){.student-shell.student-shell--studio .student-layout-grid{display:grid;grid-template-columns:260px minmax(0,1fr);gap:1.35rem;align-items:start}.student-shell.student-shell--studio .side-nav.student-sidebar{position:sticky;top:calc(var(--page-header-h) + 16px);width:auto;height:calc(100vh - var(--page-header-h) - 40px);max-height:calc(100vh - var(--page-header-h) - 40px);margin:0;padding:1rem .9rem 1.1rem;border-radius:1.25rem;border:1px solid var(--border);background:var(--bg-surface);z-index:12;overflow:hidden;box-shadow:0 12px 28px #0f172a0a}.student-shell.student-shell--studio .app-content{min-width:0;width:100%}.student-shell.student-shell--studio .page-body{padding-top:calc(var(--page-header-h) + 18px)}.student-shell.student-shell--studio .side-nav-item.student-nav-item{border-radius:.95rem;padding:.7rem .8rem}.student-shell.student-shell--studio .side-nav-item.student-nav-item.active{background:var(--primary);color:var(--text-on-primary)}.student-shell.student-shell--studio .side-nav-item.student-nav-item.active .nav-lucide-icon,.student-shell.student-shell--studio .side-nav-item.student-nav-item.active .nav-bell-icon{color:var(--text-on-primary)}}.bottom-nav-item{position:relative;border:none;background:transparent;color:var(--text-muted);font:inherit;font-size:.78rem;font-weight:600;padding:10px 4px;border-radius:10px;text-align:center;text-decoration:none;cursor:pointer;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:2px;min-width:0}.bottom-nav-item .nav-link-label{max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.nav-link-start{display:inline-flex;align-items:center;gap:8px;min-width:0}.nav-link-label{line-height:1.2}.nav-badge{min-width:18px;height:18px;padding:0 5px;border-radius:999px;background:var(--btn-danger);color:var(--text-on-primary);font-size:.68rem;font-weight:700;display:inline-flex;align-items:center;justify-content:center;line-height:1}.bottom-nav-badge{position:absolute;top:4px;right:6px}.btn-with-badge{gap:8px}.topbar-actions .icon-action-btn{position:relative;padding:8px 10px;min-width:40px;overflow:visible}.icon-action-glyph{display:block}.message-bell-badge{position:absolute;top:-4px;right:-4px;z-index:2;min-width:17px;height:17px;padding:0 4px;border-radius:999px;background:var(--btn-danger);color:var(--text-on-primary);font-size:.65rem;font-weight:700;line-height:1;display:inline-flex;align-items:center;justify-content:center;border:2px solid var(--bg-surface);pointer-events:none}.billing-cart-badge{position:absolute;top:-4px;right:-4px;z-index:2;min-width:17px;height:17px;padding:0 4px;border-radius:999px;background:var(--primary);color:var(--text-on-primary);font-size:.65rem;font-weight:700;line-height:1;display:inline-flex;align-items:center;justify-content:center;border:2px solid var(--bg-surface);pointer-events:none}.nav-bell-icon{flex-shrink:0}.bottom-nav-item .nav-link-start{flex-direction:column;align-items:center;gap:2px}.mobile-nav-drawer-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:28;border:none;background:var(--modal-backdrop);cursor:pointer;opacity:0;visibility:hidden;pointer-events:none;transition:opacity .22s ease}.mobile-nav-drawer-backdrop.open{opacity:1;visibility:visible;pointer-events:auto}.mobile-nav-drawer{position:fixed;top:0;left:0;bottom:0;z-index:29;width:min(300px,88vw);display:flex;flex-direction:column;background:var(--bg-surface);border-right:1px solid var(--border);box-shadow:12px 0 32px #102a4329;transform:translate(-100%);transition:transform .24s ease;pointer-events:none}.mobile-nav-drawer.open{transform:translate(0);pointer-events:auto}.mobile-nav-drawer-header{display:flex;align-items:center;justify-content:space-between;gap:12px;min-height:var(--page-header-h);padding:12px 12px 12px 16px;border-bottom:1px solid var(--border)}.mobile-nav-drawer-title{font-size:1rem;font-weight:700}.mobile-nav-drawer-close{display:inline-flex;align-items:center;justify-content:center;width:20px;height:20px;font-size:1.5rem;line-height:1}.mobile-nav-drawer-search{padding:12px 12px 0}.mobile-nav-drawer-links{display:flex;flex-direction:column;gap:4px;padding:12px;overflow-y:auto}.nav-menu-search{position:relative;display:block;margin-bottom:8px;font-weight:500;font-size:inherit}.nav-menu-search-icon{position:absolute;top:50%;left:12px;transform:translateY(-50%);color:var(--text-muted);pointer-events:none}.nav-menu-search input[data-search-input],.nav-menu-search input{width:100%;box-sizing:border-box;height:40px;margin:0;padding:8px 12px 8px 36px;border:1px solid var(--border-input);border-radius:10px;background:var(--bg-surface);color:var(--text-primary);font:inherit;font-size:.875rem;font-weight:500;-moz-appearance:none;appearance:none;-webkit-appearance:none}.nav-menu-search input::placeholder{color:var(--text-muted)}.nav-menu-search input:focus{outline:none;border-color:var(--primary);box-shadow:0 0 0 2px var(--primary-soft)}.nav-menu-search-empty{margin:4px 0 0;padding:12px 8px;color:var(--text-muted);font-size:.875rem;font-weight:500;text-align:center}.side-nav-item{display:flex;align-items:center;justify-content:space-between;gap:8px;padding:12px 16px;border-radius:10px;color:var(--text-nav);font-weight:600;text-decoration:none}.side-nav-item.active{background:var(--primary-soft);color:var(--primary)}.message-card.message-unread{border-color:var(--primary);box-shadow:inset 3px 0 0 var(--primary)}.message-title-row{display:flex;align-items:center;gap:8px}.message-dot{width:8px;height:8px;border-radius:999px;background:var(--primary);flex-shrink:0}.message-body{margin:8px 0;color:var(--text-secondary);white-space:pre-wrap}.message-meta{display:grid;gap:6px;margin-top:10px;font-size:.84rem;color:var(--text-secondary)}.message-meta>div{display:flex;flex-wrap:wrap;gap:6px 10px}.message-meta-label{color:var(--text-muted);font-weight:600;min-width:96px}@media(min-width:900px){.message-meta{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.message-meta>div{flex-direction:column;gap:4px}.message-meta-label{min-width:0}}.bottom-nav-item.active{background:var(--primary-soft);color:var(--primary)}.card{background:var(--bg-surface);border:1px solid var(--border);border-radius:14px;padding:16px;margin-bottom:12px}.stack{display:grid;gap:12px}.page-header{display:flex;justify-content:space-between;align-items:flex-start;gap:12px;margin-bottom:16px}.page-header h1{font-size:1.25rem}.section-block{margin-top:8px}.section-title{font-size:.92rem;margin-bottom:10px}.muted{color:var(--text-muted)}.label-muted{font-size:.85rem;color:var(--text-muted);margin-bottom:4px}.profile-value{font-weight:600}.stack label:not(.toggle-row):not(.policy-confirm-row):not(.chapter-option):not(.student-top-search):not(.nav-menu-search),label:not(.toggle-row):not(.policy-confirm-row):not(.chapter-option):not(.student-top-search):not(.nav-menu-search){display:grid;gap:6px;font-weight:600;font-size:.92rem}input:not([type=checkbox]):not([type=radio]):not([data-search-input]),select,textarea{font:inherit;border:1px solid var(--border-input);border-radius:10px;padding:10px 12px;width:100%;background:var(--bg-surface);color:var(--text-primary)}input[type=checkbox],input[type=radio]{width:16px;height:16px;margin:0;padding:0;flex:0 0 16px;border:1px solid var(--border-input);border-radius:4px;background:var(--bg-surface);accent-color:var(--primary);cursor:pointer}input[type=radio]{border-radius:50%}input[type=checkbox]:disabled,input[type=radio]:disabled{cursor:not-allowed;opacity:.55}textarea{resize:vertical}.btn{border:none;border-radius:10px;padding:11px 16px;background:var(--primary);color:var(--text-on-primary);font:inherit;font-weight:600;cursor:pointer;text-align:center;display:inline-flex;align-items:center;justify-content:center;width:auto;max-width:100%}.btn-sm{padding:7px 11px;font-size:.85rem;border-radius:8px}.btn-block{width:100%}.btn-secondary{background:var(--btn-secondary)}.btn-danger{background:var(--btn-danger)}.btn:disabled{opacity:.55;cursor:not-allowed}.btn-tooltip-wrap{display:inline-flex;max-width:100%}.actions-row,.modal-actions,.list-card{display:flex;gap:10px;align-items:center;justify-content:space-between;flex-wrap:wrap}.action-buttons{display:flex;gap:10px;flex-wrap:wrap}.test-footer-actions{display:flex;justify-content:flex-start;margin-top:0}.test-player-footer .test-footer-actions{padding-bottom:2px}.list-card-main{flex:1;min-width:0}.list-card-actions{display:flex;gap:10px;align-items:center;flex-wrap:wrap}.question-review-note{margin-top:6px;font-size:.88rem}.question-submission-meta{margin-top:4px;font-size:.84rem}.question-submission-answer{margin-top:8px;font-size:.92rem;line-height:1.45}.question-submission-label{display:block;margin-bottom:2px;font-size:.78rem;font-weight:600;color:var(--text-secondary);text-transform:uppercase;letter-spacing:.03em}.question-submission-detail{margin-top:6px;font-size:.88rem;line-height:1.4}.list-card-title{font-weight:600}.banner{border-radius:10px;padding:10px 12px;margin-bottom:12px;border:1px solid transparent}.banner.error{color:var(--error-banner);background:var(--error-bg);border-color:var(--error-border)}.banner.info{color:var(--info-text);background:var(--info-bg);border-color:var(--primary-border)}.login-extra{display:flex;justify-content:center;margin-top:4px}.login-page .page-header-brand-block{letter-spacing:-.02em}.login-card__header{gap:.35rem;padding-bottom:.25rem}.login-card__brand{margin:0;font-size:.75rem;font-weight:650;letter-spacing:.08em;text-transform:uppercase;color:var(--primary)}.login-card__title{margin:0;font-size:1.75rem;line-height:1.15;letter-spacing:-.03em}.login-card__lead{margin:.15rem 0 0;font-size:.95rem;line-height:1.45;color:var(--text-muted)}.login-card__body{padding-top:.25rem}.login-actions{display:flex;flex-wrap:wrap;align-items:center;justify-content:center;gap:.35rem .55rem;padding-top:.35rem;font-size:.875rem}.login-actions__sep{color:var(--text-muted);-webkit-user-select:none;user-select:none}.login-text-action{display:block;width:100%;text-align:center}.login-legal{display:flex;flex-wrap:wrap;align-items:center;justify-content:center;gap:.35rem .85rem;width:100%}.login-legal a{color:var(--text-muted);text-decoration:none;font-size:.75rem}.login-legal a:hover{color:var(--primary);text-decoration:underline}.text-link{border:none;background:none;padding:0;font:inherit;font-size:.875rem;color:var(--primary);text-decoration:underline;text-underline-offset:2px;cursor:pointer}.text-link:hover{color:var(--primary-dark)}.text-link:focus-visible{outline:2px solid var(--primary-border);outline-offset:2px;border-radius:2px}.question-jump{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:14px}.test-player .question-jump{flex-wrap:nowrap;overflow-x:auto;margin-bottom:0;padding-bottom:1px;scrollbar-width:thin}.test-player .question-jump-wrap{min-width:0;display:flex;flex-direction:column;gap:4px}.test-player .question-jump-label{margin-bottom:0;white-space:nowrap}.test-player .question-jump-btn{min-width:32px;height:32px;flex-shrink:0;font-size:.84rem;border-radius:8px;padding:0 8px}@media(max-height:800px){.focus-shell .page-body{padding-top:calc(var(--page-header-h) + 4px);padding-bottom:calc(var(--page-footer-h) + 4px)}.test-player{gap:4px}.test-player-title,.test-countdown-inline .test-countdown{font-size:.95rem}.test-player .question-jump-btn{min-width:30px;height:30px;font-size:.8rem}}.question-jump-btn{min-width:40px;height:40px;border:1px solid var(--border-input);border-radius:10px;background:var(--bg-surface);color:var(--text-nav);font:inherit;font-weight:700;cursor:pointer;padding:0 10px}.question-jump-btn.answered{background:var(--success-bg);border-color:var(--success-border);color:var(--success-text)}.question-jump-btn.correct{background:var(--success-bg);border-color:var(--success-border);color:var(--success-text);font-weight:800}.question-jump-btn.wrong{background:var(--error-bg);border-color:var(--error-border);color:var(--error-text);font-weight:800}.question-jump-btn.current{background:var(--primary);border-color:var(--primary);color:var(--text-on-primary);box-shadow:0 0 0 2px color-mix(in srgb,var(--primary) 35%,transparent)}.question-jump-btn.current.answered,.question-jump-btn.current.correct{background:var(--success-bg);border-color:var(--success-border);color:var(--success-text);box-shadow:0 0 0 2px var(--primary)}.question-jump-btn.current.wrong{background:var(--error-bg);border-color:var(--error-border);color:var(--error-text);box-shadow:0 0 0 2px var(--primary)}.test-player .question-jump-btn.answered:not(.current){background:var(--success-bg);border-color:var(--success-border);color:var(--success-text)}.test-player .question-jump-btn.correct:not(.current){background:color-mix(in srgb,var(--success-bg) 92%,#22c55e);border-color:var(--success-border);color:var(--success-text)}.test-player .question-jump-btn.wrong:not(.current){background:var(--error-bg);border-color:var(--error-border);color:var(--error-text)}.question-jump-btn.repeat:not(.current){box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--warning-border, #f0d58a) 65%,transparent)}.english-q-nav-strip{display:flex;flex-wrap:wrap;gap:.375rem;padding:.5rem;border-radius:var(--radius-lg, .75rem);border:1px solid color-mix(in srgb,var(--border) 60%,transparent);background:color-mix(in srgb,var(--bg-surface) 80%,transparent)}.english-q-nav-btn{min-height:2.25rem;min-width:2.25rem;padding:.375rem .5rem;border-radius:.5rem;border:1px solid var(--border-input);background:var(--bg-surface);color:var(--text-muted);font:inherit;font-size:.875rem;font-weight:700;cursor:pointer;transition:background .15s ease,border-color .15s ease,color .15s ease,box-shadow .15s ease}.english-q-nav-btn:hover:not(:disabled){border-color:var(--primary-border);background:var(--bg-surface-muted)}.english-q-nav-btn.unanswered{background:var(--bg-surface-muted);border-color:var(--border);color:var(--text-muted)}.english-q-nav-btn.correct{background:var(--success-bg);border-color:var(--success-border);color:var(--success-text)}.english-q-nav-btn.wrong{background:var(--error-bg);border-color:var(--error-border);color:var(--error-text)}.english-q-nav-btn.current{box-shadow:0 0 0 2px var(--primary)}.english-q-nav-btn.current.unanswered{background:var(--bg-surface);border-color:var(--primary);color:var(--text-primary)}.english-q-nav-btn.current.correct{background:var(--success-bg);border-color:var(--success-border);color:var(--success-text)}.english-q-nav-btn.current.wrong{background:var(--error-bg);border-color:var(--error-border);color:var(--error-text)}.monitor-line{margin-top:6px;font-size:.92rem;color:var(--text-secondary);font-weight:600}.filter-row{margin-bottom:12px}.filter-toolbar{display:flex;flex-wrap:wrap;gap:12px;align-items:flex-end;margin-bottom:12px}.compact-filter-toolbar{display:grid;gap:10px;margin-bottom:12px;padding:10px 12px;background:var(--bg-surface);border:1px solid var(--border);border-radius:12px}@media(min-width:640px){.compact-filter-toolbar{grid-template-columns:minmax(0,1fr) minmax(160px,220px);align-items:end}}.compact-filter-toolbar .filter-row,.compact-filter-toolbar .subject-filter{margin-bottom:0}.compact-filter-panel{margin-bottom:12px}.compact-filter-panel__body{display:grid;gap:10px;padding:12px 14px!important}.compact-filter-grid{display:grid;grid-template-columns:1fr;gap:10px 12px;align-items:end}@media(min-width:540px){.compact-filter-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(min-width:900px){.compact-filter-grid--3{grid-template-columns:repeat(3,minmax(0,1fr))}}.compact-filter-block{padding-top:8px;border-top:1px solid var(--border-light)}.compact-filter-field{display:grid;gap:4px;margin:0;font-size:.82rem;font-weight:600;color:var(--text-secondary)}.compact-filter-field select,.compact-filter-field input{width:100%;font-weight:400}.compact-filter-hint{margin:0;font-size:.86rem}.compact-filter-panel .subject-filter-label{margin-bottom:4px;font-size:.82rem}.chapter-scope-control--compact.launcher-section,.chapter-scope-control--compact{margin-top:0}.chapter-scope-control--compact .launcher-label{font-size:.82rem;margin-bottom:6px}.chapter-scope-control--compact .filter-row{margin-bottom:8px}.chapter-scope-control--compact .launcher-field{margin-top:0}.chapter-scope-control--compact .launcher-note{margin:6px 0 0;font-size:.86rem}.filter-toolbar .filter-row{margin-bottom:0;flex:1 1 280px}.subject-filter{flex:0 1 220px;min-width:180px}.list-search-field{flex:1 1 240px;min-width:200px;margin-bottom:0}.list-pagination{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:12px;margin-top:16px;padding-top:12px;border-top:1px solid var(--border-light)}.list-pagination-meta-only{justify-content:flex-start}.list-pagination-meta,.list-pagination-page{font-size:.875rem;color:var(--text-muted)}.list-pagination-actions{display:flex;flex-wrap:wrap;align-items:center;gap:8px}.test-sync-status{font-size:.82rem;color:var(--text-secondary)}.test-sync-status-error{color:var(--danger, #b42318)}.subject-filter-label{display:block;margin-bottom:6px;font-size:.82rem;font-weight:600;color:var(--text-secondary)}.subject-filter-select{width:100%}.status-pill{display:inline-flex;align-items:center;padding:6px 12px;border-radius:999px;font-size:.82rem;font-weight:700;white-space:nowrap}.status-pending{background:var(--warning-bg);color:var(--warning-text)}.status-approved{background:var(--success-bg);color:var(--success-text)}.status-rejected{background:var(--error-bg);color:var(--error-text)}.mcq-options-grid{display:grid;gap:12px}.score-pill{display:inline-flex;align-items:center;justify-content:center;min-width:52px;padding:6px 12px;border-radius:999px;font-size:.9rem;font-weight:700}.score-good{background:var(--success-bg);color:var(--success-text)}.score-mid{background:var(--warning-bg);color:var(--warning-text)}.score-low{background:var(--error-bg);color:var(--error-text)}.topbar-actions{display:flex;gap:8px;flex-wrap:nowrap;justify-content:flex-end;align-items:center;flex-shrink:0}.topbar-actions .btn{white-space:nowrap;flex-shrink:0}.policy-card{width:min(640px,100%)}.policy-block{border:1px solid var(--border);border-radius:12px;padding:14px;background:var(--bg-surface-muted)}.policy-version{margin-bottom:8px;font-size:.9rem}.policy-confirm-row{display:flex;align-items:flex-start;gap:10px;font-weight:600}.policy-confirm-row input[type=checkbox]{margin-top:4px}.policy-scroll-panel{border:1px solid var(--border);border-radius:12px;background:var(--bg-surface-muted);overflow:hidden}.policy-scroll-header{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:10px 14px;border-bottom:1px solid var(--border);background:var(--bg-surface)}.policy-scroll-title{font-weight:600}.policy-scroll-hint{font-size:.82rem;color:var(--text-secondary)}.policy-scroll-body{max-height:min(280px,42vh);overflow-y:auto;padding:14px;-webkit-overflow-scrolling:touch}.policy-scroll-section+.policy-scroll-section{margin-top:20px;padding-top:16px;border-top:1px dashed var(--border)}.policy-scroll-section-head{display:flex;align-items:baseline;justify-content:space-between;gap:12px;margin-bottom:10px}.policy-scroll-section-head h2{margin:0;font-size:1rem}.policy-markdown{font-size:.92rem;line-height:1.55;color:var(--text-primary)}.policy-markdown-h2{margin:0 0 8px;font-size:1.05rem}.policy-markdown-h3{margin:14px 0 6px;font-size:.98rem}.policy-markdown-p{margin:0 0 10px}.policy-markdown-list{margin:0 0 12px 1.1rem;padding:0}.policy-markdown-list li{margin-bottom:6px}.attempt-timing{display:grid;gap:4px;margin-top:8px;font-size:.88rem;color:var(--text-secondary)}.attempt-timing.compact{margin-top:6px;font-size:.84rem}.attempt-timing-alert{color:var(--error-text);font-weight:600}@media(min-width:900px){.mcq-options-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}.auth-card{width:min(480px,100%);max-width:100%;margin-inline:auto}.register-card{width:min(640px,100%)}.register-card h2{font-size:1rem;margin:0 0 12px}.register-steps{display:flex;gap:8px;flex-wrap:wrap;margin:12px 0 16px;font-size:.85rem}.register-steps span{padding:4px 10px;border-radius:999px;border:1px solid var(--border-light);color:var(--text-muted)}.register-steps span.active{border-color:var(--primary);color:var(--primary);font-weight:600}.register-steps span.done{color:var(--text)}.register-tabs{display:flex;gap:8px;margin:16px 0}.register-tabs button{flex:1;padding:10px 12px;border-radius:8px;border:1px solid var(--border-light);background:transparent;color:var(--text-muted);cursor:pointer;font-weight:500}.register-tabs button.active{border-color:var(--primary);color:var(--primary);background:color-mix(in srgb,var(--primary) 8%,transparent)}.register-card .form-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:12px}.register-card .checkbox-row{display:flex;align-items:flex-start;gap:10px;font-size:.95rem}.register-card .helper-note{margin-top:8px;font-size:.9rem}.register-card .field-hint{display:block;margin-top:4px;font-size:.8rem;color:var(--text-muted)}.register-card .section-title-row{display:flex;align-items:center;gap:6px;margin-bottom:8px}.register-card h2.section-title{margin:0}.checkbox-grid,.option-card-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:10px;margin-top:10px}.field-label-row{display:inline-flex;align-items:center;gap:4px}.hint-tooltip{display:inline-flex;align-items:center;justify-content:center;width:1.1rem;height:1.1rem;color:var(--text-muted);cursor:help;vertical-align:middle;position:relative;outline:none}.hint-tooltip svg{display:block}.hint-tooltip:after{content:attr(data-tooltip);position:absolute;left:50%;bottom:calc(100% + 6px);transform:translate(-50%);width:max-content;max-width:min(20rem,80vw);padding:8px 12px;border-radius:8px;background:var(--tooltip-bg, #1e293b);color:var(--tooltip-fg, #f8fafc);font-size:.78rem;font-weight:400;line-height:1.4;white-space:normal;text-align:left;box-shadow:var(--shadow-md);opacity:0;pointer-events:none;transition:opacity .15s ease;z-index:50}.hint-tooltip:focus-visible{outline:2px solid var(--primary);outline-offset:2px;border-radius:9999px}.hint-tooltip:hover:after,.hint-tooltip:focus-visible:after{opacity:1}.selection-toolbar{display:flex;flex-wrap:wrap;align-items:center;gap:8px 12px;margin-top:8px}.selection-toolbar .text-link{font-size:.88rem}.filter-panel{display:grid;gap:12px}.register-error{white-space:pre-line}.profile-colors-card{margin-top:12px}.profile-theme-row{display:flex;align-items:center;justify-content:space-between;gap:12px;padding-top:8px;border-top:1px solid var(--border-light)}.profile-theme-hint{font-size:.9rem;margin-top:2px}.color-theme-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.color-theme-option{border:2px solid var(--border);border-radius:12px;padding:12px 10px;background:var(--bg-surface-muted);color:var(--text-primary);font:inherit;cursor:pointer;text-align:center}.color-theme-option.selected{border-color:var(--primary);box-shadow:inset 0 0 0 1px var(--primary);background:var(--primary-soft)}.color-theme-swatch{display:block;width:40px;height:40px;border-radius:999px;margin:0 auto 8px;border:2px solid rgba(255,255,255,.65);box-shadow:0 0 0 1px var(--border)}.color-theme-label{display:block;font-size:.88rem;font-weight:600}@media(min-width:640px){.color-theme-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}.auth-card .btn-block{width:100%}.tab-row{display:flex;gap:8px;flex-wrap:wrap;margin:16px 0}.tab-btn{border:1px solid var(--border-input);background:var(--bg-surface);color:var(--text-nav);border-radius:999px;padding:8px 14px;font:inherit;font-weight:600;cursor:pointer}.tab-btn.active{background:var(--primary);border-color:var(--primary);color:var(--text-on-primary)}.modal-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;background:var(--modal-backdrop);display:grid;place-items:center;padding:16px;z-index:100}.modal{width:min(420px,100%);background:var(--bg-surface);border-radius:14px;padding:20px;border:1px solid var(--border)}.modal-wide{width:min(560px,100%);max-height:85vh;overflow:auto}.modal-title{font-size:1.15rem;margin-bottom:8px}.modal-message{color:var(--text-secondary);margin-bottom:16px}.picker-list{display:grid;gap:8px;margin:12px 0;max-height:280px;overflow:auto}.picker-row{display:flex;justify-content:space-between;align-items:center;gap:10px;padding:10px 0;border-bottom:1px solid var(--border-light)}.empty-state,.loading-block{text-align:center;padding:28px 16px}.empty-state h2{margin-bottom:8px}.toast{position:fixed;left:50%;bottom:calc(var(--page-footer-nav-h) + 12px);transform:translate(-50%);background:var(--toast-bg);color:var(--text-on-primary);padding:10px 16px;border-radius:999px;z-index:120;font-weight:600}.toast-success{background:var(--toast-success)}.focus-shell .page-body{height:100vh;box-sizing:border-box;padding-top:calc(var(--page-header-h) + 8px);padding-bottom:calc(var(--page-footer-h) + 8px);overflow:hidden;display:flex;flex-direction:column}.focus-shell .page-body>.shell-frame{flex:1;min-height:0;display:flex;flex-direction:column}.focus-shell .focus-content{flex:1;min-height:0;max-width:none;display:flex;flex-direction:column}.test-player{display:flex;flex-direction:column;flex:1;min-height:0;gap:6px}.test-player-header{flex-shrink:0;display:grid;gap:6px}.test-player-policy-note{margin:0;padding:6px 10px;font-size:.78rem;line-height:1.35;border-radius:8px;background:color-mix(in srgb,var(--primary) 8%,var(--bg-surface));border:1px solid var(--border);color:var(--text-secondary)}.test-player-toolbar{display:grid;gap:8px;align-items:center;grid-template-columns:minmax(0,1fr) auto;grid-template-areas:"info timer" "jump jump"}.test-player-toolbar__info{grid-area:info;min-width:0;overflow:hidden}.test-player-toolbar__jump{grid-area:jump;min-width:0;position:relative;z-index:1}.test-player-toolbar__timer{grid-area:timer;justify-self:end;align-self:start;display:flex;flex-wrap:wrap;align-items:center;justify-content:flex-end;gap:8px}.question-read-aloud-toggle{white-space:nowrap}.question-read-aloud{display:flex;flex-wrap:wrap;align-items:center;gap:8px}.question-read-aloud__voice{display:inline-flex;flex-wrap:wrap;align-items:center;gap:6px}.test-player-title{margin:0;display:flex;align-items:center;gap:.5rem;min-width:0;max-width:100%;font-size:1rem;font-weight:700;line-height:1.25}.test-player-title__text{min-width:0;flex:1 1 auto;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.test-player-meta{display:flex;flex-wrap:wrap;align-items:center;gap:4px 10px;margin-top:2px;font-size:.78rem;color:var(--text-secondary)}.test-player-mode-pill{display:inline-flex;align-items:center;padding:1px 7px;border-radius:999px;font-size:.7rem;font-weight:700;text-transform:uppercase;letter-spacing:.04em;background:var(--bg-surface);border:1px solid var(--border);color:var(--primary)}.test-sync-pill{font-size:.75rem;color:var(--text-secondary)}.test-sync-pill--error{color:var(--danger, #b42318)}.test-player-main{flex:1 1 auto;min-height:0;overflow-y:auto;padding-right:2px}.test-player-footer{flex-shrink:0;display:grid;gap:4px;padding-top:6px;border-top:1px solid var(--border);background:var(--bg-page)}.test-player-nav{display:flex;flex-wrap:wrap;align-items:center;gap:8px;padding:4px 0 2px}.test-player-nav .test-player-leave{margin-left:auto}.test-question-card{margin-bottom:0}.test-countdown-wrap{flex:0 0 auto;text-align:center;padding:8px 14px;border-radius:12px;background:var(--bg-surface);border:1px solid var(--border)}.test-countdown-inline{display:inline-flex;align-items:baseline;gap:6px;padding:4px 10px;border-radius:8px;background:var(--bg-surface);border:1px solid var(--border);white-space:nowrap}.test-countdown-inline__label{font-size:.68rem;font-weight:700;letter-spacing:.05em;text-transform:uppercase;color:var(--text-muted)}.test-countdown-inline .test-countdown{font-size:1.05rem}.test-countdown-label{font-size:.72rem;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--text-muted);margin-bottom:4px}.test-countdown{font-family:ui-monospace,Cascadia Mono,Segoe UI Mono,Consolas,monospace;font-variant-numeric:tabular-nums;font-size:1.65rem;font-weight:700;line-height:1;letter-spacing:.06em;color:var(--text-primary)}.test-countdown.warning{color:var(--warning-text)}.test-countdown.critical,.test-countdown.expired{color:var(--error-text)}.test-player-progress{height:4px}@media(min-width:720px){.test-player-toolbar{grid-template-columns:minmax(0,1fr) minmax(0,2fr) auto;grid-template-areas:"info jump timer";gap:10px 14px}.test-player-title{font-size:1.05rem}.test-countdown-inline .test-countdown{font-size:1.2rem}}@media(min-width:1024px){.test-player-toolbar{grid-template-columns:minmax(0,1.1fr) minmax(0,2.4fr) auto}}.question-type{font-size:.8rem;font-weight:700;color:var(--primary);text-transform:uppercase}.test-question-meta{display:flex;flex-wrap:wrap;align-items:center;gap:8px}.question-repeat-badge{display:inline-flex;align-items:center;padding:2px 8px;border-radius:999px;font-size:.76rem;font-weight:700;color:var(--text-secondary);background:var(--bg-surface-muted);border:1px solid var(--border)}.question-repeat-badge--first{color:var(--text-muted)}.question-repeat-badge:not(.question-repeat-badge--first){color:var(--warning-text, #9a6700);background:color-mix(in srgb,var(--warning-soft, #fff8e6) 80%,white);border-color:color-mix(in srgb,var(--warning-border, #f0d58a) 70%,var(--border))}.test-question-head{display:flex;flex-wrap:wrap;align-items:flex-start;gap:10px}.test-question-head .question-text{flex:1 1 220px}.test-question-head__actions{display:flex;flex-wrap:wrap;align-items:center;gap:8px}.answer-dictation{display:flex;flex-wrap:wrap;align-items:center;gap:10px 12px;margin-top:4px;padding:10px 12px;border:1px solid var(--border);border-radius:10px;background:var(--bg-surface, var(--card, #fff))}.answer-dictation--active{border-color:color-mix(in srgb,var(--primary, #2563eb) 45%,var(--border));background:color-mix(in srgb,var(--primary, #2563eb) 6%,transparent)}.answer-dictation__copy{display:grid;gap:2px;flex:1 1 180px;min-width:0;font-size:.85rem;color:var(--text-muted)}.answer-dictation__copy strong{color:var(--text, inherit);font-size:.9rem}.answer-dictation__status{flex:1 1 100%;font-size:.85rem;color:var(--text-muted)}.answer-dictation__error{flex:1 1 100%;font-size:.85rem;color:var(--danger-text, #b42318)}.question-text{font-size:1.05rem;font-weight:600}.question-stimulus{margin:0;display:flex;justify-content:center}.question-stimulus__image{max-width:100%;max-height:320px;object-fit:contain;border-radius:8px;background:var(--surface-muted, #f4f6f8)}.option-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.english-mcq-options{display:flex;flex-direction:column;gap:.5rem}.english-mcq-options-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.5rem}@media(max-width:520px){.option-grid,.english-mcq-options-grid{grid-template-columns:1fr}}.option-choice{display:flex;align-items:flex-start;gap:12px;width:100%;text-align:left;border:1px solid var(--border-input);border-radius:12px;padding:12px 14px;background:var(--bg-surface);color:var(--text-primary);font:inherit;cursor:pointer;transition:border-color .15s ease,background-color .15s ease}.option-choice:hover{border-color:var(--primary-hover-border);background:var(--bg-surface-muted)}.option-choice.selected{border-color:var(--primary);background:var(--primary-soft);box-shadow:inset 0 0 0 1px var(--primary)}.option-key{flex:0 0 auto;width:28px;height:28px;border-radius:999px;background:var(--bg-inset);color:var(--text-nav);font-weight:700;display:grid;place-items:center;font-size:.9rem}.option-choice.selected .option-key{background:var(--primary);color:var(--text-on-primary)}.option-choice.correct{border-color:#16a34a;background:color-mix(in srgb,#16a34a 12%,var(--bg-surface))}.option-choice.wrong{border-color:#dc2626;background:color-mix(in srgb,#dc2626 10%,var(--bg-surface))}.option-choice.correct .option-key{background:#16a34a;color:#fff}.option-choice.wrong .option-key{background:#dc2626;color:#fff}.confidence-picker{display:grid;gap:8px}.confidence-picker-label{font-size:.9rem;color:var(--text-muted)}.question-chapter-link{font-size:.9rem;color:var(--primary);text-decoration:none}.question-chapter-link:hover{text-decoration:underline}.test-feedback-banner{border-radius:12px;padding:12px 14px;font-weight:600}.test-feedback-banner.correct{background:color-mix(in srgb,#16a34a 14%,var(--bg-surface));color:#166534}.test-feedback-banner.wrong{background:color-mix(in srgb,#dc2626 12%,var(--bg-surface));color:#991b1b}.test-feedback-explanation{margin-top:8px;font-weight:400}.test-hint-panel{display:grid;gap:10px}.test-hint-body{border:1px solid var(--border-input);border-radius:12px;padding:12px 14px;background:var(--bg-surface-muted)}.test-hint-text{white-space:pre-wrap}.option-text{flex:1;padding-top:3px;line-height:1.45}.result-hero{text-align:center}.hero-number{font-size:2.6rem;font-weight:700;margin:6px 0}.hero-text{font-size:1.1rem;font-weight:600}.result-flag{display:inline-block;font-weight:700;font-size:.85rem;padding:4px 10px;border-radius:999px}.result-flag.wrong{background:var(--error-bg);color:var(--error-text)}.result-flag.correct{background:var(--success-bg);color:var(--success-text)}.why-line{color:var(--text-secondary);font-size:.95rem}.test-result-toolbar{display:flex;flex-wrap:wrap;align-items:flex-start;justify-content:space-between;gap:12px;margin:12px 0 14px;position:sticky;top:calc(var(--page-header-h) + 8px);z-index:15;padding:10px 0;background:color-mix(in srgb,var(--bg-surface, #fff) 92%,transparent);-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px)}.test-result-toolbar-actions{display:flex;flex-wrap:wrap;align-items:center;justify-content:flex-end;gap:10px}.test-result-scroll-panel{max-height:calc(100vh - var(--page-header-h) - var(--page-footer-nav-h) - 220px);overflow-y:auto;overflow-x:hidden;-webkit-overflow-scrolling:touch;padding-right:4px}@media(min-width:900px){.test-result-scroll-panel{max-height:calc(100vh - var(--page-header-h) - var(--page-footer-h) - 220px)}.test-result-toolbar{top:calc(var(--page-header-h) + 16px)}}.test-result-summary-chips{display:flex;flex-wrap:wrap;gap:8px}.test-result-chip{display:inline-flex;align-items:center;padding:4px 10px;border-radius:999px;background:var(--bg-surface-muted);font-size:.82rem;font-weight:600}.test-result-chip-wrong{color:var(--error-text);background:var(--error-bg)}.test-result-chip-correct{color:var(--success-text);background:var(--success-bg)}.test-result-filters{display:inline-flex;gap:6px;padding:4px;border-radius:999px;background:var(--bg-surface-muted)}.test-result-filters button{border:0;background:transparent;color:inherit;padding:6px 12px;border-radius:999px;font-size:.85rem;font-weight:600;cursor:pointer}.test-result-filters button.is-active{background:var(--bg-inset);color:var(--text-primary);box-shadow:0 1px 2px #00000014}.test-result-list{display:flex;flex-direction:column;gap:10px}.test-result-row{border:1px solid var(--border);border-radius:12px;padding:12px 14px;background-color:var(--bg-surface);color:var(--text-primary)}.test-result-row-wrong{border-color:color-mix(in srgb,var(--error-text) 35%,var(--border));background-color:var(--bg-surface);box-shadow:inset 3px 0 0 var(--error-text)}.test-result-row-correct{border-color:color-mix(in srgb,var(--success-text) 28%,var(--border));background-color:var(--bg-surface);box-shadow:inset 3px 0 0 var(--success-text)}.test-result-row-head{display:flex;flex-wrap:wrap;align-items:center;gap:8px;margin-bottom:8px}.test-result-qno{font-weight:700;font-size:.9rem;color:var(--text-primary)}.test-result-type{font-size:.75rem;font-weight:700;letter-spacing:.04em;text-transform:uppercase;color:var(--text-secondary)}.test-result-status{font-size:.75rem;font-weight:700;padding:2px 8px;border-radius:999px}.test-result-status.is-wrong{color:var(--error-text);background:var(--error-bg)}.test-result-status.is-correct{color:var(--success-text);background:var(--success-bg)}.test-result-status.is-pending{color:var(--text-secondary);background:var(--bg-surface-muted)}.test-result-marks{margin-left:auto;font-size:.82rem;color:var(--text-secondary)}.test-result-question{font-weight:600;line-height:1.45;margin-bottom:10px;color:var(--text-primary)}.test-result-facts{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:8px 14px;margin:0}.test-result-fact{margin:0}.test-result-fact-wide{grid-column:1 / -1}.test-result-fact dt{margin:0 0 2px;font-size:.72rem;font-weight:700;letter-spacing:.05em;text-transform:uppercase;color:var(--text-secondary)}.test-result-fact dd{margin:0;line-height:1.45;white-space:pre-wrap;color:var(--text-primary)}[data-theme=dark] .test-result-row,[data-theme=dark] .test-result-row-wrong,[data-theme=dark] .test-result-row-correct{background:#151d2b;background-color:#151d2b;color:#e8eef6;border-color:#2a3a4f}[data-theme=dark] .test-result-row-wrong{border-color:#5a3030;box-shadow:inset 3px 0 #f08080}[data-theme=dark] .test-result-row-correct{border-color:#3d7a50;box-shadow:inset 3px 0 #6fcf97}[data-theme=dark] .test-result-question,[data-theme=dark] .test-result-qno,[data-theme=dark] .test-result-fact dd{color:#e8eef6}[data-theme=dark] .test-result-type,[data-theme=dark] .test-result-marks,[data-theme=dark] .test-result-fact dt{color:#a8b8cc}[data-theme=dark] .test-result-filters button.is-active{background-color:#243044;color:#e8eef6}@media(max-width:899px){.action-buttons .btn{flex:1 1 100%}.actions-row .btn{flex:1 1 auto}.topbar-actions{gap:6px}.topbar-actions .btn{padding:8px 12px;font-size:.875rem;border-radius:8px}.topbar-actions .btn-with-badge{gap:6px}.topbar-actions .nav-badge{min-width:16px;height:16px;padding:0 4px;font-size:.62rem}.topbar-actions .icon-action-btn{padding:7px 9px;min-width:36px}.topbar-actions .icon-action-glyph{width:18px;height:18px}.topbar-actions .message-bell-badge{min-width:15px;height:15px;font-size:.6rem;top:1px;right:1px}}@media(max-width:640px){.topbar-actions{gap:4px}.topbar-actions .btn{padding:6px 9px;font-size:.8rem}.page-header-start .app-brand{font-size:1rem}.page-header-start .app-user{font-size:.78rem}}@media(max-width:480px){.topbar-actions .btn{padding:5px 8px;font-size:.75rem}.topbar-actions .icon-action-btn{padding:6px 8px;min-width:34px}}@media(max-width:1100px)and (min-width:900px){.topbar-actions{gap:6px}.topbar-actions .btn{padding:9px 13px;font-size:.9rem}}@media(min-width:900px){:root,[data-theme=light],[data-theme=dark]{--page-gutter: 24px;--shell-max-width: min(1360px, calc(100vw - 48px) );--content-list-inset-left: 0px;--content-list-inset-right: 0px}.btn-block{width:auto;min-width:0}.page-body{padding-top:calc(var(--page-header-h) + 24px);padding-bottom:calc(var(--page-footer-h) + 24px)}.student-shell .page-body{padding-bottom:calc(var(--page-footer-h) + 24px)}.monitor-body,.focus-body{width:100%}.mobile-menu-btn,.mobile-nav-drawer-backdrop,.mobile-nav-drawer{display:none}.student-shell.student-menu-open .page-body{overflow:visible}.student-shell .page-footer-nav{display:none}.student-shell .page-footer-simple{display:flex}.student-shell .side-nav{display:flex;flex-direction:column;gap:.85rem;padding:14px;background:var(--bg-surface);border:1px solid var(--border);border-radius:18px;position:sticky;top:calc(var(--page-header-h) + 16px);max-height:calc(100vh - var(--page-header-h) - 32px);overflow:auto}.student-layout-grid{display:grid;grid-template-columns:248px minmax(0,1fr);gap:28px;width:100%;align-items:start}.toast{bottom:calc(var(--page-footer-h) + 12px)}.card.list-card{padding:16px 24px}.list-card{flex-wrap:nowrap;gap:16px}.section-block{padding-inline:4px}.list-card .btn{flex-shrink:0;margin-right:4px}.page-header .btn{margin-right:4px}.topbar-actions{padding-right:4px}.action-buttons .btn{min-width:180px}}@media(min-width:1200px){:root,[data-theme=light],[data-theme=dark]{--page-gutter: 28px;--shell-max-width: min(1560px, calc(100vw - 56px) )}.student-layout-grid{gap:28px;grid-template-columns:240px minmax(0,1fr)}}@media(min-width:1600px){:root,[data-theme=light],[data-theme=dark]{--page-gutter: 32px;--shell-max-width: min(1720px, calc(100vw - 64px) )}.student-layout-grid{gap:32px}}.focus-content{width:100%;max-width:820px;margin:0 auto}.stat-row{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin-bottom:12px}.stat-row--compact{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin-bottom:10px}@media(min-width:768px){.stat-row--compact.billing-overview{grid-template-columns:repeat(4,minmax(0,1fr))}}.stat-row--compact .stat-card{padding:10px;text-align:left}.stat-row--compact .stat-value{font-size:1.1rem;margin-bottom:2px}.stat-row--compact .label-muted{font-size:.76rem;margin-bottom:2px}.stat-row--compact .stat-card .muted{font-size:.76rem;line-height:1.35;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.stat-card{background:var(--bg-surface);border:1px solid var(--border);border-radius:12px;padding:14px 12px;text-align:center}.stat-value{font-size:1.4rem;font-weight:700;margin-bottom:4px}.section-lead{margin:4px 0 12px}.page-footer-link{margin-top:16px;font-size:.92rem}.page-footer-actions{margin-top:16px;display:flex;flex-wrap:wrap;gap:10px}.launcher-section{margin:14px 0}.launcher-label{font-weight:600;margin-bottom:8px}.launcher-head{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:8px}.launcher-head-actions{display:flex;flex-wrap:wrap;gap:8px;justify-content:flex-end}.launcher-hint{margin:8px 0 0;font-size:.86rem}.launcher-note{font-size:.92rem}.launcher-field{margin-bottom:10px}.launcher-limits{display:grid;gap:10px;grid-template-columns:repeat(auto-fit,minmax(140px,1fr));margin-top:12px}.chapter-waiting-kickoff{overflow:hidden}.chapter-waiting-kickoff-body{text-align:center;padding:12px 8px 4px;background:radial-gradient(ellipse 80% 60% at 50% 0%,color-mix(in srgb,var(--primary, #0f766e) 18%,transparent),transparent 70%),linear-gradient(180deg,color-mix(in srgb,var(--surface, #fff) 92%,#e8f5f2),var(--surface, #fff));border-radius:12px;margin-bottom:8px}.chapter-waiting-kickoff-kicker{margin:0 0 8px;font-size:.92rem;font-weight:600;color:var(--text-muted, #64748b)}.chapter-waiting-kickoff-number{margin:0;font-size:clamp(3.5rem,12vw,5rem);font-weight:800;line-height:1;letter-spacing:-.04em;color:var(--primary, #0f766e);animation:chapter-waiting-pop .55s cubic-bezier(.22,1,.36,1)}.chapter-waiting-kickoff-number--muted{color:var(--text-muted, #64748b);font-size:clamp(2.5rem,8vw,3.5rem)}.chapter-waiting-kickoff-headline{margin:10px 0 0;font-size:1.2rem;font-weight:700;letter-spacing:-.02em;color:var(--text, #0f172a);animation:chapter-waiting-fade .45s ease .08s both}.chapter-waiting-kickoff-sub{margin:8px auto 0;max-width:28rem;font-size:.95rem;line-height:1.45;color:var(--text-muted, #64748b);animation:chapter-waiting-fade .45s ease .16s both}.chapter-waiting-kickoff-actions{margin-top:8px}@keyframes chapter-waiting-pop{0%{opacity:0;transform:translateY(12px) scale(.86)}to{opacity:1;transform:translateY(0) scale(1)}}@keyframes chapter-waiting-fade{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:translateY(0)}}.chapter-picker-list{display:grid;gap:8px;max-height:180px;overflow:auto;margin-top:8px;padding-right:2px}.chapter-option{display:flex;align-items:flex-start;gap:12px;padding:12px 14px;border:1px solid var(--border);border-radius:12px;background:var(--bg-surface);cursor:pointer;transition:border-color .15s ease,background .15s ease}.chapter-option:hover{border-color:var(--primary-border)}.chapter-option.selected{border-color:var(--primary);background:color-mix(in srgb,var(--primary) 8%,var(--bg-surface))}.chapter-option-input{margin-top:3px}.chapter-option-body{display:grid;gap:2px;min-width:0;flex:1}.chapter-option-title{font-weight:600;line-height:1.35}.chapter-option-meta{font-size:.86rem}.tab-btn:disabled{opacity:.45;cursor:not-allowed}.chapter-scope-control{margin-top:4px}.vocabulary-filters{margin-bottom:12px}.vocabulary-filter-extras{display:grid;gap:8px;padding-top:8px;border-top:1px solid var(--border-light)}.vocabulary-filter-extras .launcher-section{margin-top:0}.vocabulary-filter-extras .filter-row{margin-bottom:0}.vocabulary-toggle-group--compact{display:flex;flex-wrap:wrap;gap:6px 16px;margin-top:0}.vocabulary-toggle-group--compact .toggle-row.compact{width:auto;font-size:.86rem}.vocabulary-card{gap:10px}.vocabulary-card-header{display:flex;justify-content:space-between;align-items:flex-start;gap:12px;flex-wrap:wrap}.vocabulary-word{margin:0;font-size:1.35rem;line-height:1.2}.vocabulary-badges{display:flex;flex-wrap:wrap;gap:8px}.status-badge.muted-badge{background:var(--bg-inset);color:var(--text-secondary);border:1px solid var(--border)}.vocabulary-label{font-size:.78rem;font-weight:700;letter-spacing:.04em;text-transform:uppercase;color:var(--text-muted);margin-bottom:4px}.vocabulary-meaning-block p,.vocabulary-example-block p{margin:0}.vocabulary-example{font-style:italic;color:var(--text-secondary)}.vocabulary-extra{margin:0;font-size:.92rem}label.toggle-row,.toggle-row{display:inline-flex;flex-direction:row;align-items:center;gap:10px;width:100%;font-weight:600;cursor:pointer}.toggle-row.compact{font-size:.95rem}.toggle-row input[type=checkbox],.toggle-row input[type=radio]{flex-shrink:0}.toggle-row span{flex:1;min-width:0;line-height:1.4;font-weight:500}.vocabulary-toggle-group{display:grid;gap:8px;margin-top:4px}.study-kit-filters{margin-bottom:14px}.study-kit-summary p{margin:0;white-space:pre-wrap}.study-kit-points{margin:0;padding-left:1.2rem}.study-kit-points li+li{margin-top:6px}.formula-list{display:grid;gap:12px}.formula-card{gap:8px}.formula-name{font-weight:600}.formula-expression{margin:0;padding:12px 14px;border-radius:8px;background:color-mix(in srgb,var(--primary) 8%,var(--bg-surface));border:1px solid var(--border);overflow-x:auto;text-align:center}.formula-expression .katex-display{margin:0}.formula-expression .katex{font-size:1.05rem}.test-criteria-card{margin:12px 0;border:1px solid var(--border);border-radius:12px;background:var(--bg-surface-muted);overflow:hidden}.test-criteria-card.test-criteria-footer{margin:0}.test-criteria-card.test-criteria-footer .test-criteria-summary{padding:8px 12px;font-size:.88rem}.test-criteria-card.test-criteria-footer .test-criteria-body{padding:0 12px 10px 24px;gap:8px;max-height:140px;overflow-y:auto;font-size:.86rem}.test-criteria-summary{list-style:none;cursor:pointer;padding:12px 14px;font-weight:600;color:var(--text-primary)}.test-criteria-summary::-webkit-details-marker{display:none}.test-criteria-summary:before{content:"▸";display:inline-block;margin-right:8px;color:var(--text-muted)}.test-criteria-card[open] .test-criteria-summary:before{transform:rotate(90deg)}.test-criteria-body{display:grid;gap:10px;padding:0 14px 14px 28px;font-size:.92rem}.test-criteria-row{display:grid;gap:4px}.test-criteria-label{font-size:.8rem;font-weight:600;color:var(--text-muted);text-transform:uppercase;letter-spacing:.03em}.test-criteria-chapters{line-height:1.45}.test-criteria.compact{font-size:.86rem;color:var(--text-muted);display:grid;gap:2px}.subject-chart-list{display:grid;gap:14px}.subject-chart-row{padding:14px 16px;border:1px solid var(--border);border-radius:12px;background:var(--bg-surface)}.subject-chart-head{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:8px}.subject-chart-label{font-weight:600}.subject-chart-value{font-weight:700;font-variant-numeric:tabular-nums}.subject-chart-track{height:12px;background:var(--border);border-radius:999px;overflow:hidden}.subject-chart-fill{height:100%;border-radius:999px;min-width:4px;transition:width .25s ease}.subject-chart-fill.good{background:var(--success-text)}.subject-chart-fill.mid{background:var(--warning-text)}.subject-chart-fill.low{background:var(--error-text)}.subject-chart-meta{margin-top:6px;font-size:.84rem;color:var(--text-muted)}.subject-chart-empty{font-size:.95rem}.subject-comparison-chart{display:grid;gap:12px}.subject-comparison-legend{display:flex;flex-wrap:wrap;justify-content:space-between;gap:8px 12px;font-size:.84rem}.subject-comparison-legend-markers{display:flex;flex-wrap:wrap;gap:10px}.subject-comparison-marker{display:inline-flex;align-items:center;gap:6px}.subject-comparison-marker:before{content:"";width:10px;height:10px;border-radius:3px;background:var(--primary)}.subject-comparison-marker.good:before{background:var(--success-text)}.subject-comparison-marker.mid:before{background:var(--warning-text)}.subject-comparison-marker.low:before{background:var(--error-text)}.subject-comparison-stage{position:relative;padding-top:8px}.subject-comparison-guide{position:absolute;left:0;right:0;border-top:1px dashed var(--border-input);pointer-events:none;z-index:1}.subject-comparison-guide span{position:absolute;right:0;top:-10px;font-size:.72rem;color:var(--text-muted);background:var(--bg-surface);padding-left:6px}.subject-comparison-guide-70{bottom:calc(70% + 42px)}.subject-comparison-guide-50{bottom:calc(50% + 42px)}.subject-comparison-bars{display:flex;align-items:flex-end;gap:10px;min-height:220px;padding:0 4px 4px;overflow-x:auto;scrollbar-width:thin;position:relative;z-index:2}.subject-comparison-item{flex:1 1 72px;min-width:72px;max-width:120px;display:grid;gap:6px;justify-items:center;text-align:center}.subject-comparison-item.best .subject-comparison-value{color:var(--success-text)}.subject-comparison-value{font-size:.88rem;font-weight:700;font-variant-numeric:tabular-nums}.subject-comparison-track{width:100%;height:180px;display:flex;align-items:flex-end;justify-content:center;border-radius:12px;background:color-mix(in srgb,var(--border) 55%,transparent);padding:8px 10px}.subject-comparison-bar{width:100%;max-width:52px;border-radius:10px 10px 6px 6px;min-height:8px;transition:height .25s ease}.subject-comparison-bar.good{background:var(--success-text)}.subject-comparison-bar.mid{background:var(--warning-text)}.subject-comparison-bar.low{background:var(--error-text)}.subject-comparison-label{font-size:.82rem;font-weight:600;line-height:1.2;word-break:break-word}.subject-comparison-meta{font-size:.74rem;color:var(--text-muted);line-height:1.2}.progress-bar-track{height:12px;background:var(--border);border-radius:999px;overflow:hidden}.progress-bar-track.progress-bar-sm{height:8px}.progress-bar-fill{height:100%;border-radius:999px;min-width:0;transition:width .25s ease}.progress-bar-fill[data-has-value=true]{min-width:4px}.progress-bar-fill.good{background:var(--success-text)}.progress-bar-fill.mid{background:var(--warning-text)}.progress-bar-fill.low{background:var(--error-text)}.learning-progress{display:grid;gap:18px}.learning-progress-empty{font-size:.95rem}.learning-progress-charts{display:grid;gap:14px;grid-template-columns:1fr}.learning-progress-chart-panel{padding:14px 16px;border:1px solid var(--border);border-radius:12px;background:var(--bg-surface)}.learning-progress-chart-title{margin:0 0 12px;font-size:.95rem;font-weight:700}.question-type-donut{display:grid;gap:16px;align-items:center}.question-type-donut-visual{display:flex;justify-content:center}.question-type-donut-ring{width:148px;height:148px;border-radius:50%;display:grid;place-items:center;position:relative}.question-type-donut-hole{width:92px;height:92px;border-radius:50%;background:var(--bg-surface);display:grid;place-content:center;text-align:center;line-height:1.15}.question-type-donut-total{font-size:1.35rem;font-weight:700;font-variant-numeric:tabular-nums}.question-type-donut-total-label{font-size:.72rem;color:var(--text-muted);text-transform:uppercase;letter-spacing:.04em}.question-type-donut-legend{list-style:none;margin:0;padding:0;display:grid;gap:8px}.question-type-donut-legend-item{display:grid;grid-template-columns:12px 1fr auto;gap:8px;align-items:center;font-size:.9rem}.question-type-donut-swatch{width:12px;height:12px;border-radius:3px}.question-type-donut-legend-label{font-weight:600}.question-type-donut-legend-value{font-variant-numeric:tabular-nums;font-weight:600}.question-type-donut-empty{font-size:.95rem}.learning-progress-chart-panel-wide{grid-column:1 / -1}.student-analytics-dashboard{display:grid;gap:18px}.weak-area-chart-list{display:grid;gap:12px}.weak-area-chart-row{padding:0}.weak-area-fill{height:100%;border-radius:999px;min-width:4px}.weak-area-fill.high{background:var(--error-text)}.weak-area-fill.medium{background:var(--warning-text)}.weak-area-fill.low{background:var(--primary)}.score-trend-chart{display:grid;gap:10px}.score-trend-bars{display:flex;align-items:flex-end;gap:8px;min-height:160px;padding:8px 4px 0;border-bottom:1px solid var(--border)}.score-trend-item{flex:1 1 0;min-width:0;display:grid;gap:6px;justify-items:center}.score-trend-bar{width:100%;max-width:42px;border-radius:8px 8px 4px 4px;min-height:12px;transition:height .2s ease}.score-trend-bar.good{background:var(--success-text)}.score-trend-bar.mid{background:var(--warning-text)}.score-trend-bar.low{background:var(--error-text)}.score-trend-label{font-size:.72rem;font-weight:700;color:var(--text-muted);font-variant-numeric:tabular-nums}.score-trend-foot{font-size:.84rem}@media(min-width:768px){.learning-progress-charts{grid-template-columns:minmax(0,1.2fr) minmax(0,.8fr);align-items:start}.question-type-donut{grid-template-columns:auto 1fr;gap:20px}}.learning-progress-subjects{display:grid;gap:12px}.chapter-progress-dashboard{display:grid;gap:18px}.chapter-progress-product-panel{border:1px solid color-mix(in srgb,var(--primary) 22%,var(--border));border-radius:18px;padding:16px;background:linear-gradient(135deg,color-mix(in srgb,var(--primary) 12%,var(--bg-surface)),color-mix(in srgb,#8b5cf6 10%,var(--bg-surface)));box-shadow:0 10px 28px color-mix(in srgb,var(--primary) 8%,transparent)}.chapter-progress-product-panel-row{display:flex;align-items:flex-end;justify-content:space-between;gap:16px;flex-wrap:wrap}.chapter-progress-product-panel-head{display:flex;align-items:flex-start;gap:10px;color:var(--primary);flex:1 1 220px}.chapter-progress-product-select-wrap{flex:1 1 280px;max-width:420px;margin:0}.chapter-progress-product-select{width:100%;min-height:44px;border-radius:14px;border:1px solid color-mix(in srgb,var(--primary) 35%,var(--border));background:var(--bg-surface);padding:10px 36px 10px 14px;font-size:.9rem;font-weight:700;color:var(--text-primary);box-shadow:0 8px 20px color-mix(in srgb,var(--primary) 10%,transparent);cursor:pointer;-webkit-appearance:none;-moz-appearance:none;appearance:none;background-image:linear-gradient(45deg,transparent 50%,var(--primary) 50%),linear-gradient(135deg,var(--primary) 50%,transparent 50%);background-position:calc(100% - 18px) calc(50% + 2px),calc(100% - 12px) calc(50% + 2px);background-size:6px 6px,6px 6px;background-repeat:no-repeat}.chapter-progress-product-select:hover{border-color:color-mix(in srgb,var(--primary) 55%,var(--border))}.chapter-progress-product-select:focus-visible{outline:2px solid color-mix(in srgb,var(--primary) 45%,transparent);outline-offset:2px}.chapter-progress-scope-hint{margin:-6px 0 0;font-size:.82rem}.chapter-progress-product-panel-title{margin:0;font-size:.88rem;font-weight:700;color:var(--text-primary)}.chapter-progress-product-panel-sub{margin:2px 0 0;font-size:.74rem;color:var(--text-muted)}.chapter-progress-kpi-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}@media(min-width:900px){.chapter-progress-kpi-grid{grid-template-columns:repeat(4,minmax(0,1fr))}}.chapter-progress-kpi{display:flex;align-items:center;gap:12px;border-radius:16px;padding:14px;border:1px solid var(--border);background:var(--bg-surface);box-shadow:0 8px 20px color-mix(in srgb,var(--text-primary) 4%,transparent)}.chapter-progress-kpi-icon{display:grid;place-items:center;width:40px;height:40px;border-radius:12px;flex-shrink:0}.chapter-progress-kpi-value{font-size:1.15rem;font-weight:800;line-height:1.1;color:var(--text-primary)}.chapter-progress-kpi-label{margin-top:2px;font-size:.7rem;color:var(--text-muted)}.chapter-progress-kpi.kpi-blue .chapter-progress-kpi-icon{color:#2563eb;background:color-mix(in srgb,#2563eb 14%,transparent)}.chapter-progress-kpi.kpi-green .chapter-progress-kpi-icon{color:#059669;background:color-mix(in srgb,#059669 14%,transparent)}.chapter-progress-kpi.kpi-amber .chapter-progress-kpi-icon{color:#d97706;background:color-mix(in srgb,#d97706 14%,transparent)}.chapter-progress-kpi.kpi-rose .chapter-progress-kpi-icon{color:#e11d48;background:color-mix(in srgb,#e11d48 14%,transparent)}.chapter-progress-mode-row{display:grid;gap:12px}@media(min-width:768px){.chapter-progress-mode-row{grid-template-columns:repeat(3,minmax(0,1fr))}}.chapter-progress-mode-card{border-radius:16px;padding:16px;border:1px solid var(--border);background:var(--bg-surface)}.chapter-progress-mode-card-head{display:flex;align-items:center;gap:8px;margin-bottom:8px}.chapter-progress-mode-icon{display:grid;place-items:center;width:32px;height:32px;border-radius:10px}.chapter-progress-mode-label{font-size:.82rem;font-weight:700}.chapter-progress-mode-value{font-size:1rem;font-weight:800;color:var(--text-primary)}.chapter-progress-mode-hint{margin:6px 0 0;font-size:.68rem;color:var(--text-muted)}.chapter-progress-mode-practice{border-color:color-mix(in srgb,#2563eb 28%,var(--border));background:linear-gradient(160deg,color-mix(in srgb,#2563eb 10%,var(--bg-surface)),var(--bg-surface))}.chapter-progress-mode-practice .chapter-progress-mode-icon{color:#2563eb;background:color-mix(in srgb,#2563eb 14%,transparent)}.chapter-progress-mode-assisted{border-color:color-mix(in srgb,#7c3aed 28%,var(--border));background:linear-gradient(160deg,color-mix(in srgb,#7c3aed 10%,var(--bg-surface)),var(--bg-surface))}.chapter-progress-mode-assisted .chapter-progress-mode-icon{color:#7c3aed;background:color-mix(in srgb,#7c3aed 14%,transparent)}.chapter-progress-mode-exam{border-color:color-mix(in srgb,#ea580c 28%,var(--border));background:linear-gradient(160deg,color-mix(in srgb,#ea580c 10%,var(--bg-surface)),var(--bg-surface))}.chapter-progress-mode-exam .chapter-progress-mode-icon{color:#ea580c;background:color-mix(in srgb,#ea580c 14%,transparent)}.chapter-progress-attention{overflow:hidden;border:1px solid color-mix(in srgb,#f59e0b 35%,var(--border));background:linear-gradient(135deg,color-mix(in srgb,#f59e0b 12%,var(--bg-surface)),color-mix(in srgb,#ef4444 8%,var(--bg-surface)))}.chapter-progress-attention-head{padding:14px 16px 0}.chapter-progress-attention-title{display:flex;align-items:center;gap:8px;font-size:1rem;color:#b45309}.chapter-progress-attention-body{display:grid;gap:8px;padding:12px 16px 16px}.chapter-progress-attention-item{display:flex;flex-wrap:wrap;gap:6px;font-size:.88rem}.chapter-progress-attention-item span{color:var(--text-muted)}.chapter-progress-filters{display:flex;flex-wrap:wrap;align-items:center;gap:8px}.chapter-progress-subjects{display:grid;gap:14px}.chapter-progress-subject-card{overflow:hidden;border:1px solid var(--border)}.chapter-progress-subject-head{padding:14px 16px;border-bottom:1px solid var(--border);background:var(--bg-surface-muted)}.chapter-progress-subject-title{font-size:.95rem}.chapter-progress-subject-meta{display:block;margin-top:4px;font-size:.72rem;color:var(--text-muted);font-weight:500}.chapter-progress-subject-body{display:grid;gap:12px;padding:14px}.chapter-progress-subject-tone-0{border-left:4px solid #2563eb}.chapter-progress-subject-tone-1{border-left:4px solid #059669}.chapter-progress-subject-tone-2{border-left:4px solid #7c3aed}.chapter-progress-subject-tone-3{border-left:4px solid #ea580c}.chapter-progress-row{border:1px solid var(--border);border-radius:14px;padding:12px;background:var(--bg-surface)}.chapter-progress-row-head{display:flex;flex-wrap:wrap;align-items:flex-start;justify-content:space-between;gap:8px}.chapter-progress-row-title{margin:0;font-size:.98rem;font-weight:700}.chapter-progress-score-pill{border-radius:999px;padding:4px 10px;font-size:.82rem;font-weight:800}.chapter-progress-score-good{color:#047857;background:color-mix(in srgb,#10b981 16%,transparent)}.chapter-progress-score-mid{color:#b45309;background:color-mix(in srgb,#f59e0b 16%,transparent)}.chapter-progress-score-low{color:#be123c;background:color-mix(in srgb,#f43f5e 16%,transparent)}.chapter-progress-mode-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin-top:10px}.chapter-progress-mode-stat{border-radius:10px;padding:8px;border:1px solid var(--border);background:var(--bg-surface-muted)}.chapter-progress-mode-stat-label{display:block;font-size:.68rem;font-weight:700;text-transform:uppercase;letter-spacing:.04em;color:var(--text-muted)}.chapter-progress-mode-stat-value{display:block;margin-top:4px;font-size:.82rem;font-weight:700}.chapter-progress-mode-stat.chapter-progress-mode-practice{border-color:color-mix(in srgb,#2563eb 24%,var(--border));background:color-mix(in srgb,#2563eb 7%,var(--bg-surface-muted))}.chapter-progress-mode-stat.chapter-progress-mode-assisted{border-color:color-mix(in srgb,#7c3aed 24%,var(--border));background:color-mix(in srgb,#7c3aed 7%,var(--bg-surface-muted))}.chapter-progress-mode-stat.chapter-progress-mode-exam{border-color:color-mix(in srgb,#ea580c 24%,var(--border));background:color-mix(in srgb,#ea580c 7%,var(--bg-surface-muted))}.chapter-progress-row-actions{display:flex;flex-wrap:wrap;gap:8px;margin-top:10px}.chapter-progress-action-practice{border-color:color-mix(in srgb,#2563eb 30%,var(--border))}.chapter-progress-action-assisted{border-color:color-mix(in srgb,#7c3aed 30%,var(--border))}.chapter-progress-action-exam{border-color:color-mix(in srgb,#ea580c 30%,var(--border))}.chapter-progress-empty{border-style:dashed}.chapter-progress-status-pill,.chapter-progress-weak-pill{display:inline-flex;align-items:center;border-radius:999px;padding:2px 8px;font-weight:600;font-size:.72rem}.chapter-progress-status-muted{background:var(--bg-surface-muted);color:var(--text-muted)}.chapter-progress-status-progress{background:color-mix(in srgb,#2563eb 14%,transparent);color:#1d4ed8}.chapter-progress-status-exam{background:color-mix(in srgb,#059669 14%,transparent);color:#047857}.chapter-progress-status-needs-exam{background:color-mix(in srgb,#f59e0b 18%,transparent);color:#b45309}.chapter-progress-weak-high{background:color-mix(in srgb,#ef4444 16%,transparent);color:#b91c1c}.chapter-progress-weak-medium{background:color-mix(in srgb,#f59e0b 18%,transparent);color:#b45309}.chapter-progress-weak-low{background:color-mix(in srgb,#6366f1 14%,transparent);color:#4338ca}.progress-subject-card{border:1px solid var(--border);border-radius:12px;background:var(--bg-surface);overflow:hidden}.progress-subject-summary{list-style:none;cursor:pointer;padding:14px 16px;display:flex;align-items:flex-start;gap:4px;color:var(--text-primary);text-decoration:none}.progress-subject-summary-main{flex:1;min-width:0}.progress-subject-summary::-webkit-details-marker{display:none}.progress-subject-summary:before{content:"▸";display:inline-block;margin-right:8px;color:var(--text-muted);transition:transform .15s ease}.progress-subject-card[open] .progress-subject-summary:before{transform:rotate(90deg)}.progress-subject-head{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:8px}.progress-subject-name{font-weight:600}.progress-subject-score{font-weight:700;font-variant-numeric:tabular-nums}.progress-subject-meta{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:8px;margin-top:8px;font-size:.84rem}.progress-chapter-list{display:grid;gap:10px;padding:0 16px 16px 28px;border-top:1px solid var(--border)}.progress-chapter-row{padding:12px 0 0}.progress-chapter-head{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:6px}.progress-chapter-name{font-size:.95rem;font-weight:500}.progress-chapter-score{font-size:.95rem;font-weight:600;font-variant-numeric:tabular-nums}.progress-chapter-meta{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:8px;margin-top:6px;font-size:.82rem}.progress-chapter-empty{margin:0 16px 16px;font-size:.9rem}.question-type-tags{display:flex;flex-wrap:wrap;gap:6px}.question-type-tags.compact{gap:4px}.question-type-tag{display:inline-flex;align-items:center;padding:2px 8px;border-radius:999px;font-size:.75rem;font-weight:600;letter-spacing:.02em;background:color-mix(in srgb,var(--primary) 14%,transparent);color:var(--primary)}.progress-track{height:6px;background:var(--border);border-radius:999px;margin-bottom:14px;overflow:hidden}.test-player .progress-track{margin-bottom:0}.progress-fill{height:100%;background:var(--primary);border-radius:999px;transition:width .2s ease}@media(min-width:900px){.focus-content{max-width:900px}}.student-shell.student-shell--ask .page-body{display:flex;flex-direction:column;min-height:0;height:100dvh;overflow:hidden;padding-top:var(--page-header-h);padding-bottom:var(--page-footer-nav-h)}.student-shell.student-shell--ask .page-body>.shell-frame{flex:1;min-height:0;display:flex;flex-direction:column}.student-shell .student-layout-grid--ask{flex:1;min-height:0;display:flex;flex-direction:column}.student-shell .app-content--ask{flex:1;min-height:0;display:flex;flex-direction:column;overflow:hidden}.student-shell .app-content--ask>*{flex:1;min-height:0}.tutor-chat-page{display:flex;flex-direction:column;flex:1;min-height:0;height:100%;gap:8px;overflow:hidden}.tutor-chat-page>header{flex-shrink:0;margin-bottom:0}.tutor-chat-page>header h1{font-size:1.35rem}.tutor-chat-page>header p{font-size:.88rem}.tutor-chat-body{flex:1;min-height:0;display:flex;flex-direction:column;gap:8px;padding-bottom:0;overflow:hidden}.tutor-chat-body>*+*{margin-top:0}.tutor-chat-page .banner{flex-shrink:0}.tutor-chat-header-actions{display:flex;flex-wrap:wrap;gap:8px;justify-content:flex-end}.tutor-chat-setup{display:grid;gap:4px;flex-shrink:0}.tutor-chat-setup-summary{display:flex;align-items:center;gap:8px;min-width:0}.tutor-chat-setup-summary-main{flex:1;min-width:0;display:flex;align-items:center;gap:8px;border:none;background:transparent;padding:0;text-align:left;cursor:pointer;color:inherit;font:inherit}.tutor-chat-setup-summary-label{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:.9rem;font-weight:600;color:var(--text-primary)}.tutor-chat-setup-summary-mode{flex-shrink:0;border:1px solid var(--border);border-radius:999px;padding:2px 8px;font-size:.75rem;font-weight:600;color:var(--text-muted);background:var(--bg-inset)}.tutor-chat-setup-expanded-tools{display:flex;flex-wrap:wrap;align-items:center;gap:8px;justify-content:space-between}.tutor-chat-setup-expanded-tools .tutor-chat-mode-row{margin:0;flex:1;min-width:0}.tutor-chat-setup-collapse-btn{flex-shrink:0}.tutor-chat-setup--collapsed .stack{gap:0;padding:8px 10px}.tutor-chat-field{display:grid;gap:6px}.tutor-chat-topic-fields{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.4fr);gap:12px}@media(max-width:720px){.tutor-chat-topic-fields{grid-template-columns:minmax(0,1fr)}}.tutor-chat-field-label{font-size:.86rem;font-weight:600;color:var(--text-muted)}.tutor-chat-select{width:100%;padding:10px 12px;border:1px solid var(--border-input);border-radius:10px;background:var(--bg-surface);color:var(--text-primary);font:inherit}.tutor-chat-mode-row{margin:8px 0 0}.tutor-chat-past-panel{flex-shrink:0;max-height:min(28vh,220px);overflow:hidden;display:flex;flex-direction:column;min-height:0}.tutor-chat-past-panel .premium-card,.tutor-chat-past-panel .glass-panel{min-height:0}.tutor-chat-past-list{list-style:none;margin:0;padding:10px 12px;display:grid;gap:6px;flex:1;min-height:0;overflow-y:auto}.tutor-chat-past-item{width:100%;border:1px solid var(--border);border-radius:10px;background:var(--bg-surface);padding:10px 12px;text-align:left;cursor:pointer;display:grid;gap:2px;font:inherit;color:inherit}.tutor-chat-past-item.active{border-color:var(--primary);background:color-mix(in srgb,var(--primary) 8%,var(--bg-surface))}.tutor-chat-past-title{font-weight:600;line-height:1.35}.tutor-chat-past-meta{font-size:.82rem}.tutor-chat-shell{display:flex;flex-direction:column;flex:1;min-height:0;gap:0;padding:0;overflow:hidden}.tutor-chat-shell-content{display:flex;flex:1;flex-direction:column;min-height:0}.tutor-chat-thread--switching{opacity:.72;pointer-events:none}.tutor-chat-thread{display:grid;gap:12px;align-content:start;flex:1;min-height:0;padding:14px 14px 8px;overflow-y:auto;overflow-anchor:none;scroll-behavior:auto}.tutor-chat-bubble{max-width:min(100%,640px);padding:12px 14px;border-radius:14px;line-height:1.45;word-break:break-word}.tutor-chat-bubble-user{justify-self:end;background:var(--primary);color:var(--text-on-primary);border-bottom-right-radius:4px}.tutor-chat-bubble-assistant{justify-self:start;background:var(--bg-inset);border:1px solid var(--border);border-bottom-left-radius:4px}.tutor-chat-bubble-content{margin:0}.rich-math-text,.tutor-answer-content{white-space:normal}.tutor-answer-markdown{display:grid;gap:10px}.tutor-answer-heading{margin:0;font-weight:700;line-height:1.35;color:var(--text-primary)}.tutor-answer-heading-1{font-size:1.08rem}.tutor-answer-heading-2{font-size:1rem}.tutor-answer-heading-3{font-size:.96rem}.tutor-answer-paragraph{margin:0;line-height:1.55}.tutor-answer-list{margin:0;padding-left:1.2rem;display:grid;gap:6px}.tutor-answer-list li{line-height:1.5}.tutor-answer-list-ordered{padding-left:1.35rem}.tutor-answer-content strong{font-weight:700}.tutor-answer-content .katex{font-size:1.02em}.tutor-answer-content .rich-math-inline{display:inline}.tutor-answer-content .rich-math-inline .katex{font-size:1em}.tutor-answer-content .rich-math-block{display:block;margin:8px 0;overflow-x:auto}.tutor-answer-content .rich-math-block .katex-display{margin:0}.rich-math-text .rich-math-inline .katex{font-size:1em}.rich-math-text .rich-math-block{display:block;margin:8px 0;overflow-x:auto}.rich-math-text .rich-math-block .katex-display{margin:0}.tutor-chat-expand-btn,.tutor-chat-sources-toggle{margin-top:8px;border:none;background:transparent;color:var(--primary);font:inherit;font-size:.86rem;font-weight:600;cursor:pointer;padding:0}.tutor-chat-sources-list{margin:8px 0 0;padding-left:1.1rem;font-size:.84rem;color:var(--text-secondary)}.tutor-chat-followups,.tutor-chat-quick-actions{display:flex;flex-wrap:wrap;gap:6px;align-items:center;padding:0 14px 10px;flex-shrink:0}.tutor-chat-quick-actions--hidden{display:none}.tutor-chat-status{flex-shrink:0;min-height:32px;padding:6px 14px 0;font-size:.88rem;color:var(--text-muted);font-style:italic}.tutor-chat-status--idle{display:none;min-height:0;padding:0}.tutor-chat-quick-label{font-size:.82rem;margin-right:2px}.tutor-chat-followup-btn{border:1px solid var(--border-input);background:var(--bg-surface);color:var(--text-nav);border-radius:999px;padding:5px 10px;font:inherit;font-size:.78rem;font-weight:600;cursor:pointer}.tutor-chat-followup-btn:disabled{opacity:.45;cursor:not-allowed}.tutor-chat-compose{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:10px;align-items:end;padding:12px 14px;border-top:1px solid var(--border);background:var(--bg-surface-muted);flex-shrink:0}.searchable-select{position:relative}.searchable-select input{width:100%;padding:10px 34px 10px 12px;border:1px solid var(--border-input);border-radius:10px;background:var(--bg-surface);color:var(--text-primary);font:inherit;line-height:1.4}.searchable-select.is-disabled input{opacity:.6;cursor:not-allowed}.searchable-select__clear{position:absolute;top:50%;right:8px;transform:translateY(-50%);width:22px;height:22px;display:grid;place-items:center;border:none;border-radius:50%;background:transparent;color:var(--text-muted);font-size:1rem;line-height:1;cursor:pointer}.searchable-select__clear:hover{background:var(--bg-surface-muted);color:var(--text-primary)}.searchable-select__dropdown{position:absolute;top:calc(100% + 4px);left:0;right:0;z-index:40;max-height:260px;overflow-y:auto;padding:4px;border:1px solid var(--border);border-radius:10px;background:var(--bg-surface);box-shadow:0 10px 30px #00000024}.searchable-select__option{display:block;width:100%;padding:8px 10px;border:none;border-radius:8px;background:transparent;color:var(--text-primary);font:inherit;font-size:.92rem;text-align:left;cursor:pointer}.searchable-select__option:hover{background:var(--bg-surface-muted)}.searchable-select__option.is-selected{background:var(--accent-soft, var(--bg-surface-muted));font-weight:600}.searchable-select__empty{margin:0;padding:10px 12px;color:var(--text-muted);font-size:.9rem}.tutor-chat-symbols{grid-column:1 / -1;display:flex;gap:4px;overflow-x:auto;scrollbar-width:thin;padding-bottom:2px}.tutor-chat-symbol-btn{flex-shrink:0;min-width:34px;padding:4px 8px;border:1px solid var(--border);border-radius:8px;background:var(--bg-surface);color:var(--text-primary);font-size:.92rem;line-height:1.2;cursor:pointer;transition:background .15s ease,border-color .15s ease}.tutor-chat-symbol-btn:hover:not(:disabled){background:var(--bg-surface-hover, var(--bg-surface-muted));border-color:var(--accent, var(--border))}.tutor-chat-symbol-btn:disabled{opacity:.45;cursor:not-allowed}.tutor-chat-input{width:100%;resize:vertical;min-height:44px;max-height:140px;padding:10px 12px;border:1px solid var(--border-input);border-radius:10px;background:var(--bg-surface);color:var(--text-primary);font:inherit;line-height:1.4}.tutor-chat-typing{font-size:.92rem;color:var(--text-muted);font-style:italic}@media(max-height:720px)and (orientation:landscape){.tutor-chat-page{gap:4px}.tutor-chat-page>header p{display:none}.tutor-chat-body{gap:4px}.tutor-chat-setup .stack{gap:8px;padding:8px 10px}.tutor-chat-field{gap:4px}.tutor-chat-field-label{font-size:.78rem}.tutor-chat-mode-row{margin-top:2px}.tutor-chat-thread{gap:8px;padding:8px 10px 6px}.tutor-chat-bubble{padding:8px 10px}.tutor-chat-quick-actions{padding:0 10px 6px}.tutor-chat-compose{gap:6px;padding:8px 10px}.tutor-chat-symbols{gap:3px}.tutor-chat-symbol-btn{min-width:30px;padding:2px 6px;font-size:.82rem}.tutor-chat-input{min-height:36px;max-height:88px;padding:8px 10px}.tutor-chat-past-panel{max-height:min(22vh,160px)}}@media(min-width:900px){.student-shell.student-shell--ask .page-body{padding-bottom:var(--page-footer-h)}.student-shell .student-layout-grid--ask,.student-shell.student-shell--studio .student-layout-grid.student-layout-grid--ask{display:grid;grid-template-columns:220px minmax(0,1fr);grid-template-rows:minmax(0,1fr);align-items:stretch}.student-shell .student-layout-grid--ask .app-content--ask{min-height:0}.student-shell.student-shell--lesson .student-layout-grid--lesson,.student-shell.student-shell--studio.student-shell--lesson .student-layout-grid--lesson{display:flex;flex-direction:column;grid-template-columns:minmax(0,1fr);flex:1;min-height:0}.student-shell.student-shell--lesson .side-nav,.student-shell.student-shell--studio.student-shell--lesson .side-nav.student-sidebar{display:none}.student-shell.student-shell--lesson .app-content--lesson{flex:1;min-height:0;display:flex;flex-direction:column;overflow:visible}.student-shell.student-shell--lesson .app-content--lesson>*{flex:1 1 auto;min-height:0;display:flex;flex-direction:column;overflow:visible}}.student-shell.student-shell--lesson .page-body{display:flex;flex-direction:column;height:100dvh;max-height:100dvh;min-height:0;overflow:hidden;padding-top:var(--page-header-h);padding-bottom:0}.student-shell.student-shell--lesson .page-body>.shell-frame{flex:1 1 auto;min-height:0;display:flex;flex-direction:column;overflow:visible}.student-shell.student-shell--lesson .page-footer-nav,.student-shell.student-shell--lesson .mobile-menu-btn{display:none}.student-shell .student-layout-grid--lesson{flex:1;min-height:0}@media(max-width:899px){.student-shell.student-shell--lesson .page-body{height:auto;max-height:none;min-height:100dvh;overflow-x:hidden;overflow-y:auto;padding-bottom:12px}}.billing-overview .billing-stat-text{font-size:.95rem;line-height:1.2}.stat-row--compact.billing-overview .billing-stat-text{font-size:.9rem}.billing-section__header{display:flex;justify-content:space-between;align-items:flex-start;gap:12px;margin-bottom:12px}.billing-section__header h2{font-size:1.1rem;margin-bottom:4px}.billing-provider-select{min-width:140px}.billing-provider-select span,.billing-subject-search span{display:block;margin-bottom:6px;font-size:.88rem;font-weight:600}.billing-subject-search{margin-bottom:12px}.billing-subject-list{display:grid;gap:10px}.billing-subject-row{display:grid;grid-template-columns:minmax(0,1fr);gap:12px 16px;align-items:start;padding:14px 16px;border:1px solid var(--border);border-radius:12px;background:var(--bg-surface-muted)}.billing-subject-row--selected{border-color:color-mix(in srgb,var(--primary) 45%,var(--border));background:color-mix(in srgb,var(--primary) 6%,var(--bg-surface-muted));box-shadow:0 0 0 1px color-mix(in srgb,var(--primary) 12%,transparent)}.billing-subject-row--readonly{grid-template-columns:minmax(0,1fr);opacity:.92}.billing-subject-row__controls{display:flex;flex-wrap:wrap;align-items:flex-start;justify-content:flex-start;gap:10px 14px;min-width:0}.billing-subject-row__control-label{display:block;margin-bottom:4px;font-size:.72rem;font-weight:600;letter-spacing:.04em;text-transform:uppercase;color:var(--text-muted)}.billing-subject-row__interval{min-width:108px}.billing-subject-row__interval-select{width:100%;min-height:36px;padding:6px 10px;border:1px solid var(--border);border-radius:8px;background:var(--bg-surface);color:var(--text);font-size:.88rem}.billing-qty-stepper{display:grid;gap:4px;justify-items:center}.billing-qty-stepper__label{font-size:.72rem;font-weight:600;letter-spacing:.04em;text-transform:uppercase;color:var(--text-muted)}.billing-qty-stepper__controls{display:inline-flex;align-items:center;border:1px solid var(--border);border-radius:999px;overflow:hidden;background:var(--bg-surface)}.billing-qty-stepper__btn{display:inline-flex;align-items:center;justify-content:center;width:34px;height:34px;border:0;background:transparent;color:var(--text);font-size:1.1rem;line-height:1;cursor:pointer}.billing-qty-stepper__btn:hover:not(:disabled){background:color-mix(in srgb,var(--primary) 10%,var(--bg-surface))}.billing-qty-stepper__btn:disabled{opacity:.35;cursor:not-allowed}.billing-qty-stepper__value{min-width:2.25rem;text-align:center;font-size:.95rem;font-weight:700;font-variant-numeric:tabular-nums}.billing-subject-price-hint{margin:2px 0 0;font-size:.78rem}.billing-subject-row__scope{margin:4px 0 0;font-size:.86rem;overflow-wrap:break-word;word-break:normal}.billing-selection-toolbar{margin-top:4px}.billing-scope-hint,.billing-select-hint{margin:0;font-size:.86rem}.billing-cart-bar{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:12px;padding:14px 16px;border:1px solid var(--border);border-radius:12px;background:var(--bg-surface)}.billing-cart-bar__summary{display:grid;gap:4px}.billing-cart-bar__total{font-size:1.05rem}.billing-cart-bar__note{font-size:.86rem}.billing-checkout-card{max-width:760px}.billing-checkout-gateway-banner{margin-bottom:12px}.billing-checkout-address{display:grid;gap:12px}.billing-checkout-address__title{margin:0;font-size:1rem;font-weight:600}.billing-checkout-address__hint{margin:0;font-size:.88rem}.billing-checkout-address__required-notice{margin:0;padding:.65rem .8rem;border-radius:8px;border:1px solid color-mix(in srgb,var(--danger, #c0392b) 35%,transparent);background:color-mix(in srgb,var(--danger, #c0392b) 10%,transparent);color:var(--danger, #c0392b);font-size:.88rem}.required-asterisk{margin-left:.2em;color:var(--danger, #c0392b);font-weight:700;text-decoration:none}.billing-checkout-address__field.is-invalid select,.billing-checkout-address__field.is-invalid input{border-color:var(--danger, #c0392b)}.billing-checkout-address__grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.billing-checkout-address__field{display:grid;gap:6px;font-size:.88rem}.billing-checkout-address__field--full{grid-column:1 / -1}.billing-checkout-address__field select,.billing-checkout-address__field input{width:100%}.billing-checkout-lines{list-style:none;margin:0;padding:0;display:grid;gap:12px}.billing-checkout-line{display:flex;flex-wrap:wrap;align-items:flex-start;justify-content:space-between;gap:12px;padding:12px 0;border-bottom:1px solid var(--border)}.billing-checkout-line__thumb,.billing-cart-panel__thumb,.billing-subject-row__thumb{width:56px;height:56px;max-width:56px;flex:0 0 56px;border-radius:8px;object-fit:cover;border:1px solid var(--border);background:color-mix(in srgb,var(--border) 35%,transparent)}.billing-subject-row__thumb--icon{width:88px;height:88px;max-width:88px;flex:0 0 88px;object-fit:contain;border:none;border-radius:50%;background:transparent}.billing-subject-row__main{display:flex;align-items:flex-start;gap:12px;min-width:0}.billing-subject-row__copy{min-width:0;flex:1 1 auto}.billing-checkout-line:last-child{border-bottom:none}.billing-checkout-line__main{min-width:0;flex:1 1 220px}.billing-checkout-line__amount{display:grid;justify-items:end;gap:6px;font-weight:600}.billing-checkout-remove,.billing-cart-panel__remove,.billing-remove-btn{min-height:0;min-width:0;padding:4px;height:auto;color:var(--text-muted)}.billing-remove-btn:hover{color:var(--danger, #c53030)}.billing-subject-pagination,.billing-checkout-lines-pagination,.billing-cart-panel__pagination{margin-top:12px}.billing-checkout-remove{min-height:0;padding:4px}.billing-checkout-tax-summary{display:grid;gap:8px;margin-bottom:12px}.billing-checkout-tax-row{display:flex;justify-content:space-between;align-items:center;gap:12px;color:var(--text-muted);font-size:.95rem}.billing-checkout-total{display:flex;justify-content:space-between;align-items:center;gap:12px;font-size:1.08rem}.billing-checkout-total-stack{display:grid;justify-items:end;gap:4px}.billing-checkout-currency-warning{margin-bottom:0}.invoice-page__actions{display:flex;flex-wrap:wrap;gap:10px}.invoice-preview-card .invoice-preview{padding:8px 4px 0}.invoice-preview-card .invoice-preview-frame{display:block;width:100%;min-height:720px;border:1px solid var(--border);border-radius:8px;background:#fff}@media print{.invoice-page__actions,.invoice-preview-card .card-header{display:none!important}.invoice-preview-card .invoice-preview-frame{min-height:auto;border:none}}.invoice-preview .invoice-meta-grid{display:grid;gap:20px;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));margin:0 0 24px}.invoice-preview h2{margin:0 0 8px;font-size:.82rem;font-weight:700;letter-spacing:.05em;text-transform:uppercase;color:var(--text-muted)}.invoice-preview .invoice-facts{display:grid;gap:8px;margin:0}.invoice-preview .invoice-facts div{display:grid;grid-template-columns:110px 1fr;gap:10px}.invoice-preview .invoice-facts dt{margin:0;color:var(--text-muted);font-size:.88rem}.invoice-preview .invoice-facts dd{margin:0;font-weight:600}.invoice-preview .invoice-table{width:100%;border-collapse:collapse;margin:0 0 20px}.invoice-preview .invoice-table th,.invoice-preview .invoice-table td{border-bottom:1px solid var(--border);padding:10px 8px;text-align:left;vertical-align:top}.invoice-preview .invoice-table th.num,.invoice-preview .invoice-table td.num{text-align:right;white-space:nowrap}.invoice-preview .invoice-totals{display:flex;justify-content:flex-end}.invoice-preview .invoice-totals dl{min-width:260px;margin:0;display:grid;gap:8px}.invoice-preview .invoice-totals div{display:flex;justify-content:space-between;gap:16px}.invoice-preview .invoice-totals dt{margin:0;color:var(--text-muted)}.invoice-preview .invoice-totals dd{margin:0;font-weight:600}.invoice-preview .invoice-totals__grand{padding-top:8px;border-top:1px solid var(--border);font-size:1.05rem}.billing-checkout-actions{display:flex;flex-wrap:wrap;gap:10px;justify-content:flex-end}.billing-checkout-footnote{margin:0;font-size:.88rem}.billing-subject-row__main h3{font-size:1rem;margin-bottom:4px;overflow-wrap:break-word;word-break:normal}.billing-subject-row__status{display:flex;flex-wrap:wrap;align-items:center;gap:8px 12px}.billing-pill{display:inline-flex;align-items:center;padding:4px 10px;border-radius:999px;font-size:.78rem;font-weight:700;letter-spacing:.02em}.billing-pill--active{background:var(--success-bg);color:var(--success-text)}.billing-pill--expired,.billing-pill--blocked{background:var(--error-bg);color:var(--error-text)}.billing-pill--neutral{background:var(--info-bg);color:var(--info-text)}.billing-expiry{font-size:.88rem;font-weight:600}.billing-expiry--soon{color:var(--warning-text)}.billing-expiry--past{color:var(--error-text)}.billing-subject-row__action{display:flex;flex-direction:column;align-items:flex-start;gap:4px;justify-self:stretch;width:100%;min-width:0}.billing-interval-select{display:flex;flex-direction:column;gap:4px;font-size:.82rem;width:100%}.billing-interval-select select{width:100%}.billing-subject-price{font-weight:700;font-size:1rem;text-align:right}.billing-list-price{font-weight:500;font-size:.85rem}.billing-proration-note{font-size:.78rem;line-height:1.35;text-align:right;width:100%}.billing-ready-label{font-size:.88rem;font-weight:600;color:var(--success-text)}.billing-other-subscriptions{margin-top:16px;padding-top:14px;border-top:1px solid var(--border)}.billing-other-list{list-style:none;margin:0;padding:0;display:grid;gap:10px}.billing-other-list li{display:flex;flex-wrap:wrap;justify-content:space-between;gap:8px;padding:10px 12px;border:1px solid var(--border);border-radius:10px;background:var(--bg-surface)}.billing-plan-grid{display:grid;gap:12px;grid-template-columns:repeat(auto-fit,minmax(min(100%,240px),1fr))}.billing-plan-card{display:grid;gap:8px;padding:14px;border:1px solid var(--border);border-radius:12px;background:var(--bg-surface-muted)}.billing-plan-card h3{font-size:1rem}.billing-plan-price{font-size:1.25rem;font-weight:700}.billing-plan-features{margin:0;padding-left:18px;color:var(--text-secondary);font-size:.92rem}.billing-action-row{display:flex;flex-wrap:wrap;gap:10px;margin-top:10px}.billing-history-modal__header{display:flex;justify-content:space-between;align-items:flex-start;gap:12px;margin-bottom:8px}.billing-history-modal__lead{margin-top:4px;font-size:.92rem}.billing-history-section+.billing-history-section{margin-top:18px;padding-top:16px;border-top:1px solid var(--border)}.billing-history-section__title{font-size:.95rem;margin-bottom:10px}.billing-detail-grid{display:grid;gap:10px;grid-template-columns:repeat(auto-fit,minmax(140px,1fr));margin:0}.billing-detail-grid div{padding:10px 12px;border:1px solid var(--border);border-radius:10px;background:var(--bg-surface-muted)}.billing-detail-grid dt{font-size:.78rem;font-weight:600;color:var(--text-muted);margin-bottom:4px}.billing-detail-grid dd{margin:0;font-weight:600}.billing-history-table-wrap{overflow:auto;border:1px solid var(--border);border-radius:10px}.billing-history-table{width:100%;border-collapse:collapse;font-size:.88rem}.billing-history-table th,.billing-history-table td{padding:10px 12px;text-align:left;border-bottom:1px solid var(--border-light)}.billing-history-table th{background:var(--bg-surface-muted);font-size:.8rem;color:var(--text-muted)}.billing-history-table tr:last-child td{border-bottom:none}@media(min-width:720px){.billing-subject-row{grid-template-columns:minmax(0,1fr) minmax(7.5rem,max-content);align-items:start}.billing-subject-row--readonly{grid-template-columns:minmax(0,1fr) minmax(7.5rem,max-content)}.billing-subject-row__action{align-items:flex-end;text-align:right;justify-self:end}.billing-subject-row__controls{grid-column:1 / -1;justify-content:flex-start}}@media(min-width:1280px){.billing-subject-row{grid-template-columns:minmax(0,1fr) auto minmax(10rem,13rem)}.billing-subject-row--readonly{grid-template-columns:minmax(0,1fr) minmax(10rem,13rem)}.billing-subject-row__controls{grid-column:auto;justify-content:flex-end}}@media(max-width:719px){.billing-section__header{flex-direction:column}.billing-provider-select{width:100%}.billing-action-row .btn{flex:1 1 100%}.billing-history-modal__header{flex-direction:column}.billing-checkout-layout,.billing-checkout-address__grid{grid-template-columns:1fr}.billing-subject-row__controls{justify-content:space-between;width:100%}.billing-subject-row__action{text-align:left}}.billing-store{display:grid;grid-template-columns:minmax(0,1fr);gap:20px;align-items:start;margin-bottom:20px}.billing-store__catalog{min-width:0}.billing-store__cart{position:static;min-width:0}@media(min-width:1280px){.billing-store{grid-template-columns:minmax(0,1fr) minmax(280px,340px)}.billing-store__cart{position:sticky;top:16px}}.billing-store__cart-note{margin-top:10px;font-size:.88rem}.billing-product-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(min(100%,280px),1fr));gap:16px}.billing-product-card{height:100%;display:flex;flex-direction:column;min-width:0;border:1px solid var(--border);overflow:hidden;transition:border-color .16s ease,box-shadow .16s ease}.billing-product-card__media{aspect-ratio:16 / 9;background:color-mix(in srgb,var(--border) 35%,transparent);border-bottom:1px solid var(--border)}.billing-product-card__image{display:block;width:100%;height:100%;object-fit:cover}.billing-product-card__media--icon{aspect-ratio:auto;display:flex;align-items:center;justify-content:center;padding:1.25rem 0 .5rem;background:transparent;border-bottom:none}.billing-product-card__subject-icon{display:block;width:190px;height:190px;max-width:80%;object-fit:contain}.billing-product-card--in-cart{border-color:color-mix(in srgb,var(--primary) 50%,var(--border));box-shadow:0 0 0 1px color-mix(in srgb,var(--primary) 18%,transparent)}.billing-product-card__header{display:flex;flex-direction:column;align-items:stretch;gap:8px;min-width:0}.billing-product-card__title-row{display:flex;align-items:flex-start;justify-content:space-between;gap:10px;min-width:0}.billing-product-card__title{flex:1 1 auto;min-width:0;font-size:1.05rem;line-height:1.3;overflow-wrap:break-word;word-break:normal}.billing-product-card__scope{margin:0;min-width:0;max-width:100%;overflow-wrap:break-word;word-break:normal;white-space:normal}.billing-product-card__description{margin:0;font-size:.92rem;line-height:1.45}.billing-product-card__expiry{margin:0;font-size:.86rem}.billing-product-card__interval{display:grid;gap:6px;font-size:.88rem;font-weight:600;min-width:0}.billing-product-card__interval select{width:100%;min-width:0;max-width:100%}.billing-product-card__price-block{display:grid;gap:4px}.billing-product-card__price{margin:0;font-size:1.35rem;font-weight:700;color:var(--text-primary)}.billing-product-card__footer{margin-top:auto;display:flex;flex-direction:column;gap:8px}.billing-product-card__cta{width:100%}.billing-product-card__qty{width:100%;display:flex;flex-direction:row;align-items:center;justify-content:space-between;gap:12px}.billing-cart-panel{border:1px solid var(--border)}.billing-cart-panel__body{display:grid;gap:12px}.billing-cart-panel__empty{display:grid;gap:6px;padding:8px 0}.billing-cart-panel__items{list-style:none;margin:0;padding:0;display:grid;gap:10px}.billing-cart-panel__item{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;padding-bottom:10px;border-bottom:1px solid var(--border)}.billing-cart-panel__item:last-child{border-bottom:none;padding-bottom:0}.billing-cart-panel__item-main{display:grid;gap:2px;min-width:0}.billing-cart-panel__item-side{display:grid;justify-items:end;gap:4px;text-align:right;white-space:nowrap}.billing-cart-panel__remove{min-height:auto;padding:4px;height:auto}.billing-cart-panel__total{display:flex;justify-content:space-between;align-items:center;font-size:1.05rem}.billing-cart-panel__totals-stack{display:grid;gap:8px}.billing-cart-panel__currency-note{margin:0;font-size:.82rem;line-height:1.4}.billing-cart-panel__footer{display:grid;gap:8px}.billing-cart-panel__checkout{width:100%}.billing-checkout-steps{list-style:none;margin:0 0 16px;padding:0;display:flex;flex-wrap:wrap;gap:10px}.billing-checkout-step{display:inline-flex;align-items:center;gap:8px;padding:8px 12px;border-radius:999px;border:1px solid var(--border);background:var(--bg-surface-muted);color:var(--text-muted);font-size:.9rem;font-weight:600}.billing-checkout-step--active{border-color:color-mix(in srgb,var(--primary) 45%,var(--border));background:color-mix(in srgb,var(--primary) 8%,var(--bg-surface));color:var(--text-primary)}.billing-checkout-step--done{color:var(--text-secondary)}.billing-checkout-step__index{display:inline-flex;align-items:center;justify-content:center;width:22px;height:22px;border-radius:999px;background:var(--bg-surface);border:1px solid var(--border);font-size:.78rem}.billing-checkout-layout{display:grid;grid-template-columns:minmax(0,1fr) minmax(260px,320px);gap:20px;align-items:start}.billing-checkout-layout__cart{position:sticky;top:16px}.billing-payment-options{display:grid;gap:12px}.billing-payment-option{display:flex;align-items:center;gap:12px;width:100%;padding:14px 16px;border:1px solid var(--border);border-radius:12px;background:var(--bg-surface-muted);text-align:left;cursor:pointer;transition:border-color .16s ease,background .16s ease,box-shadow .16s ease}.billing-payment-option:hover:not(.billing-payment-option--disabled){border-color:color-mix(in srgb,var(--primary) 35%,var(--border))}.billing-payment-option--selected{border-color:color-mix(in srgb,var(--primary) 55%,var(--border));background:color-mix(in srgb,var(--primary) 7%,var(--bg-surface-muted));box-shadow:0 0 0 1px color-mix(in srgb,var(--primary) 16%,transparent)}.billing-payment-option--logos{width:auto;min-width:min(100%,320px)}.billing-payment-option--disabled{opacity:.62;cursor:not-allowed}.billing-payment-option__radio{width:18px;height:18px;border-radius:999px;border:2px solid var(--border);flex-shrink:0}.billing-payment-option__icon{display:inline-flex;align-items:center;justify-content:center;width:42px;height:42px;border-radius:10px;background:color-mix(in srgb,var(--primary) 8%,var(--bg-surface));color:var(--primary);flex-shrink:0}.billing-payment-option__brands{display:flex;align-items:center;flex-shrink:0;margin-top:0}.billing-brand-row{display:inline-flex;flex-wrap:wrap;align-items:center;gap:6px}.billing-brand-badge{display:inline-flex;align-items:center;justify-content:center;gap:3px;min-height:28px;padding:0 8px;border-radius:6px;border:1px solid var(--border);background:#fff;color:#0f172a;font-size:.68rem;font-weight:700;letter-spacing:.02em;line-height:1;white-space:nowrap}.billing-brand-badge--visa{padding:0 6px;background:#fff}.billing-brand-badge--mc{padding:2px 4px;background:#fff}.billing-brand-badge--amex{background:#016fd0;border-color:#016fd0;color:#fff;letter-spacing:.04em}.billing-brand-badge--apple{background:#111;border-color:#111;color:#fff;font-size:.72rem;padding:0 9px}.billing-brand-badge--upi{background:#0a3d62;border-color:#0a3d62;color:#fff}.billing-brand-badge--netbank{background:#f8fafc;color:#334155;font-weight:600}.billing-payment-option--disabled .billing-payment-option__icon,.billing-payment-option--disabled .billing-payment-option__brands{opacity:.7;color:var(--text-muted)}.billing-payment-option--disabled .billing-brand-badge{filter:grayscale(.35)}.billing-payment-option--selected .billing-payment-option__radio{border-color:var(--primary);background:radial-gradient(circle at center,var(--primary) 48%,transparent 50%)}.billing-payment-option__body{display:grid;gap:4px}.billing-payment-option__note{font-size:.86rem;color:var(--text-muted)}.test-proctor-summary-card,.test-analysis-card{margin-bottom:16px}.test-analysis-grid{display:grid;gap:16px}.test-analysis-list{margin:8px 0 0;padding-left:1.1rem;display:grid;gap:6px}.test-exam-policy-banner{margin-bottom:12px}.card{border-radius:1.125rem;box-shadow:0 4px 24px #0f172a0f;transition:box-shadow .2s cubic-bezier(.22,1,.36,1),transform .2s cubic-bezier(.22,1,.36,1)}.card:hover{box-shadow:0 8px 32px #0f172a1a}[data-theme=dark] .card{box-shadow:0 8px 24px #00000059}[data-theme=dark] .card:hover{box-shadow:0 12px 36px #00000073}.stack{gap:1rem}input:not([type=checkbox]):not([type=radio]),select,textarea{border-radius:.75rem;transition:border-color .15s ease,box-shadow .15s ease}input:not([type=checkbox]):not([type=radio]):focus,select:focus,textarea:focus{outline:none;border-color:var(--primary);box-shadow:0 0 0 3px color-mix(in srgb,var(--primary) 22%,transparent)}.table-scroll-wrap,.billing-history-table-wrap,.list-card-scroll,.tutor-thread-scroll,.policy-scroll-panel,.picker-list,.modal-wide{overflow:auto;-webkit-overflow-scrolling:touch;max-width:100%}.table-scroll-wrap,.billing-history-table-wrap{overflow-x:auto;overflow-y:auto;border-radius:.875rem;border:1px solid var(--border)}.modal-backdrop{-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px)}.modal{border-radius:1.125rem;box-shadow:0 20px 48px #0f172a26;animation:ui-modal-in .25s cubic-bezier(.22,1,.36,1)}@keyframes ui-modal-in{0%{opacity:0;transform:scale(.96) translateY(8px)}to{opacity:1;transform:scale(1) translateY(0)}}.tab-btn{border-radius:999px;transition:all .15s ease}.list-card{border-radius:1rem;transition:background .15s ease,box-shadow .15s ease}.list-card:hover{background:var(--bg-surface-muted)}.toast{border-radius:1rem;box-shadow:0 12px 32px #0f172a2e;animation:ui-toast-in .3s cubic-bezier(.22,1,.36,1)}@keyframes ui-toast-in{0%{opacity:0;transform:translate(-50%,12px)}to{opacity:1;transform:translate(-50%)}}.viva-coach-page{max-width:1080px}.viva-coach-stepper{display:flex;flex-wrap:wrap;gap:10px;margin:0 0 18px;padding:0;list-style:none}.viva-coach-stepper__item{display:inline-flex;align-items:center;gap:8px;padding:8px 12px 8px 8px;border-radius:999px;border:1px solid var(--border-subtle);background:var(--bg-surface);color:var(--text-muted);font-size:.84rem;font-weight:600}.viva-coach-stepper__index{display:grid;place-items:center;width:1.5rem;height:1.5rem;border-radius:50%;background:var(--bg-surface-muted);font-size:.78rem;line-height:1}.viva-coach-stepper__item--active{color:var(--text-primary);border-color:color-mix(in srgb,var(--accent) 45%,var(--border-subtle));background:color-mix(in srgb,var(--accent) 8%,var(--bg-surface))}.viva-coach-stepper__item--active .viva-coach-stepper__index{background:var(--accent);color:var(--accent-contrast, #fff)}.viva-coach-stepper__item--done{color:var(--text-secondary)}.viva-coach-stepper__item--done .viva-coach-stepper__index{background:color-mix(in srgb,var(--success-text, #15803d) 18%,var(--bg-surface-muted));color:var(--success-text, #15803d)}.viva-coach-layout{display:grid;gap:14px}@media(min-width:900px){.viva-coach-layout{grid-template-columns:repeat(2,minmax(0,1fr));align-items:start}.viva-coach-layout--results .viva-coach-results{grid-column:1 / -1}}.viva-coach-panel{height:100%;border:1px solid var(--border);box-shadow:0 1px 2px #0f172a0a}.viva-coach-panel__body{display:flex;flex-direction:column;gap:14px;padding:18px 20px!important}.viva-coach-results .viva-coach-panel__header{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:10px}.viva-coach-panel__header{display:grid;gap:6px;padding-bottom:10px;border-bottom:1px solid var(--border-light)}.viva-coach-panel__title{margin:0;font-size:.95rem;font-weight:700;letter-spacing:.01em}.viva-coach-panel__subtitle{margin:0;font-size:.86rem;line-height:1.45}.viva-coach-card__meta{display:flex;flex-wrap:wrap;gap:8px;font-size:.8rem;color:var(--text-muted)}.viva-coach-card__meta span:not(:last-child):after{content:"·";margin-left:8px;color:var(--border-subtle)}.viva-coach-question{margin:0;font-size:1.12rem;line-height:1.55;font-weight:600;color:var(--text-primary)}.viva-coach-card__actions{display:flex;flex-wrap:wrap;gap:8px;align-items:center;margin-top:8px}.viva-coach-hints__toggle{border:0;background:none;padding:0;color:var(--accent);font-size:.92rem;font-weight:600;cursor:pointer;text-align:left}.viva-coach-hints__toggle:hover{text-decoration:underline}.viva-coach-results__title-row{display:flex;flex-wrap:wrap;gap:10px;align-items:center}.viva-coach-coverage{display:inline-flex;align-items:center;padding:4px 10px;border-radius:999px;background:color-mix(in srgb,var(--danger, #c0392b) 10%,var(--bg-surface));color:var(--text-primary);font-size:.78rem;font-weight:700}.viva-coach-coverage--partial{background:color-mix(in srgb,var(--accent) 12%,var(--bg-surface))}.viva-coach-coverage--full{background:color-mix(in srgb,var(--success, #1f8a4c) 14%,var(--bg-surface))}.viva-coach-field{display:grid;gap:6px;margin:0}.viva-coach-field__label{font-size:.82rem;font-weight:600;color:var(--text-secondary)}.viva-coach-field__input{width:100%;min-height:6.5rem;resize:vertical}.viva-coach-hints{padding:12px 14px;border-radius:12px;border:1px solid color-mix(in srgb,var(--accent) 22%,var(--border-subtle));background:color-mix(in srgb,var(--accent) 6%,var(--bg-surface-muted))}.viva-coach-hints__title{margin:0 0 4px;font-size:.88rem;font-weight:700}.viva-coach-hints__lead{margin:0 0 8px;font-size:.84rem}.viva-coach-hints ul{margin:0;padding-left:1.2rem;display:grid;gap:6px}.viva-coach-hints li{line-height:1.45;font-size:.92rem}.viva-coach-results__summary{padding:14px 16px;border-radius:12px;background:color-mix(in srgb,var(--accent) 7%,var(--bg-surface-muted));border:1px solid color-mix(in srgb,var(--accent) 18%,var(--border-subtle))}.viva-coach-results__grid{display:grid;gap:12px}@media(min-width:760px){.viva-coach-results__grid{grid-template-columns:minmax(0,1.1fr) minmax(0,.9fr);gap:14px}}.viva-coach-results__block{padding:14px 16px;border-radius:12px;border:1px solid var(--border-light);background:var(--bg-surface-muted)}.viva-coach-results__block--points{display:grid;gap:12px}.viva-coach-results__heading{margin:0 0 8px;font-size:.78rem;font-weight:700;letter-spacing:.04em;text-transform:uppercase;color:var(--text-muted)}.viva-coach-results__text{margin:0;line-height:1.55;white-space:pre-wrap}.viva-coach-expected{padding:14px 16px;border-radius:12px;border:1px solid color-mix(in srgb,var(--accent) 28%,var(--border));background:var(--bg-surface)}.viva-coach-expected__header{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:8px;margin-bottom:10px}.viva-coach-expected__actions{display:flex;flex-wrap:wrap;align-items:center;gap:8px}.viva-coach-expected__speaking{font-size:.85rem}.viva-coach-expected__text{margin:0;line-height:1.6;white-space:pre-wrap;color:var(--text-primary)}.viva-coach-recorder{align-items:flex-start}.viva-coach-mic{position:relative;width:56px;height:56px;display:grid;place-items:center}.viva-coach-mic__dot{width:18px;height:18px;border-radius:50%;background:var(--accent)}.viva-coach-mic__ring{position:absolute;top:0;right:0;bottom:0;left:0;border-radius:50%;border:2px solid color-mix(in srgb,var(--accent) 35%,transparent)}.viva-coach-mic--active .viva-coach-mic__ring{animation:viva-coach-pulse 1.2s ease-out infinite}.viva-coach-mic--briefing .viva-coach-mic__ring{animation:viva-coach-briefing 1.6s ease-in-out infinite}.viva-coach-mic--briefing .viva-coach-mic__dot{background:color-mix(in srgb,var(--accent) 70%,#6366f1)}@keyframes viva-coach-briefing{0%,to{transform:scale(.92);opacity:.55}50%{transform:scale(1.08);opacity:.95}}.viva-coach-recorder__status{margin:0;font-size:.92rem;font-weight:600;color:var(--text-secondary)}.viva-coach-recorder__status--live{color:var(--accent)}@keyframes viva-coach-pulse{0%{transform:scale(.85);opacity:.9}to{transform:scale(1.35);opacity:0}}.viva-coach-recorder__actions{display:flex;flex-wrap:wrap;gap:8px;align-items:center}.viva-coach-recorder__saved{font-size:.88rem;color:var(--success-text, #15803d)}.viva-coach-live-transcript{width:100%;padding:10px 12px;border-radius:10px;border:1px dashed var(--border-subtle);background:var(--bg-surface-muted);font-size:.92rem;line-height:1.45}.viva-coach-feedback__line{font-size:1.05rem;line-height:1.5;margin:0}.viva-coach-feedback__encourage{margin:0;color:var(--text-secondary)}.viva-coach-points ul{margin:0;padding-left:1.15rem;display:grid;gap:6px}.viva-coach-points--good{color:var(--text-primary)}.viva-coach-points--good .viva-coach-results__heading{color:var(--success-text, #15803d)}.viva-coach-points--grow{color:var(--text-primary)}.viva-coach-points--grow .viva-coach-results__heading{color:var(--text-secondary)}.viva-coach-feedback__actions{display:flex;flex-wrap:wrap;gap:8px;padding-top:4px;border-top:1px solid var(--border-light)}.viva-answer-panel .viva-recorder-row{display:flex;flex-wrap:wrap;gap:10px;align-items:center}.viva-recorder-status{font-size:.88rem;color:var(--text-muted)}.pricing-page{display:grid;gap:1.25rem}.pricing-page--empty{justify-items:start;max-width:32rem;padding:1.5rem;border:1px solid var(--border);border-radius:14px;background:var(--bg-surface)}.pricing-page--empty h2{margin:0}.pricing-hero{display:grid;gap:1.25rem;padding:1.35rem 1.4rem;border:1px solid var(--border);border-radius:16px;background:linear-gradient(135deg,color-mix(in srgb,var(--primary) 10%,var(--bg-surface)) 0%,var(--bg-surface) 55%)}@media(min-width:900px){.pricing-hero{grid-template-columns:minmax(0,1.5fr) minmax(16rem,.85fr);align-items:stretch}}.pricing-hero__copy h2{margin:.35rem 0 .55rem;font-size:clamp(1.35rem,2.4vw,1.85rem);line-height:1.2;letter-spacing:-.02em}.pricing-hero__eyebrow{margin:0;font-size:.78rem;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--primary)}.pricing-hero__perks{margin:.9rem 0 0;padding-left:1.1rem;display:grid;gap:.35rem;color:var(--text-muted);font-size:.92rem}.pricing-hero__summary{display:grid;gap:.75rem;align-content:start;padding:1rem;border:1px solid var(--border);border-radius:14px;background:color-mix(in srgb,var(--bg-surface) 92%,#fff)}.pricing-hero__stat{display:flex;align-items:baseline;justify-content:space-between;gap:.75rem}.pricing-hero__stat strong{font-size:1.15rem}.pricing-hero__manage{text-align:center;font-size:.9rem}.pricing-layout{display:grid;gap:1.1rem}@media(min-width:1024px){.pricing-layout{grid-template-columns:minmax(0,1fr) 20rem;align-items:start}.pricing-layout__aside{position:sticky;top:1rem}}.pricing-filters{display:grid;gap:.65rem;margin-bottom:1rem}@media(min-width:720px){.pricing-filters{grid-template-columns:minmax(0,1.4fr) minmax(9.5rem,.9fr) minmax(9.5rem,.9fr)}}.pricing-filters select{min-width:0;width:100%;min-height:2.5rem;padding:.5rem .7rem;border:1px solid var(--border);border-radius:10px;background:var(--bg-surface);color:var(--text-primary);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.pricing-empty{padding:1.5rem;border:1px dashed var(--border);border-radius:14px;background:var(--bg-surface-muted)}.pricing-empty h3{margin:0 0 .35rem}.pricing-grid{margin-bottom:1rem}.legal-doc-page{display:grid;gap:0}.legal-doc-nav--wrap{flex-wrap:wrap}.legal-index-header{margin-bottom:1rem}.legal-index-header h1{margin:0 0 .35rem;font-size:1.35rem}.legal-index-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:12px}.legal-index-card{text-decoration:none;color:inherit}.legal-index-card__title{margin:0 0 .35rem;font-size:1rem;font-weight:700}.legal-index-card__subtitle{margin:0;font-size:.88rem}.legal-doc-nav{display:flex;flex-wrap:wrap;gap:.5rem;margin-bottom:1rem}.legal-doc-nav__link{display:inline-flex;align-items:center;min-height:2.2rem;padding:.35rem .85rem;border:1px solid var(--border);border-radius:999px;background:var(--bg-surface);color:var(--text-muted);font-size:.88rem;font-weight:600;text-decoration:none}.legal-doc-nav__link:hover{border-color:color-mix(in srgb,var(--primary) 35%,var(--border));color:var(--text-primary)}.legal-doc-nav__link--active{border-color:color-mix(in srgb,var(--primary) 45%,var(--border));background:color-mix(in srgb,var(--primary) 10%,var(--bg-surface));color:var(--primary)}.legal-doc-card{border:1px solid var(--border);border-radius:14px;background:var(--bg-surface);overflow:hidden}.legal-doc-card__header{padding:1.1rem 1.25rem;border-bottom:1px solid var(--border);background:color-mix(in srgb,var(--primary) 6%,var(--bg-surface))}.legal-doc-card__header h2{margin:0 0 .25rem;font-size:1.2rem}.legal-doc-card__body{padding:1.15rem 1.25rem 1.4rem;max-width:48rem}.legal-doc-card__body h2,.legal-doc-card__body h3{margin-top:1.25rem}.legal-doc-card__body h2:first-child,.legal-doc-card__body h3:first-child{margin-top:0}.legal-doc-footer{margin:1rem 0 0;font-size:.9rem}.legal-doc-shell .page-content{max-width:52rem;margin:0 auto}.curriculum-feedback-card{margin-bottom:1rem}.feedback-stars{display:flex;gap:.35rem}.feedback-star{border:none;background:transparent;color:var(--text-muted);font-size:1.75rem;line-height:1;padding:.1rem;cursor:pointer}.feedback-star.is-active{color:var(--primary)}.feedback-star:disabled{cursor:not-allowed;opacity:.6}.feedback-star:focus-visible{outline:2px solid var(--primary-border);outline-offset:2px;border-radius:.25rem}.cookie-consent-root{position:fixed;inset:auto 0 0 0;z-index:80;pointer-events:none;padding:1rem;display:flex;justify-content:center}.cookie-consent-panel{pointer-events:auto;width:min(40rem,100%);border:1px solid var(--primary-border);border-radius:1rem;background:color-mix(in srgb,var(--surface, #fff) 94%,var(--primary-soft));box-shadow:0 18px 48px #102a432e;padding:1.1rem 1.2rem 1rem;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.cookie-consent-brand{display:flex;gap:.85rem;align-items:flex-start}.cookie-consent-mark{display:inline-flex;align-items:center;justify-content:center;width:2.25rem;height:2.25rem;border-radius:.65rem;background:var(--primary);color:var(--text-on-primary);font-weight:700;flex-shrink:0}.cookie-consent-title{margin:0;font-size:1.05rem;color:var(--text-primary)}.cookie-consent-subtitle{margin:.3rem 0 0;color:var(--text-muted);font-size:.9rem;line-height:1.45}.cookie-consent-purposes{display:grid;gap:.65rem;margin-top:.95rem}.cookie-consent-purposes--page{margin-top:0}.cookie-consent-purpose{display:flex;align-items:flex-start;justify-content:space-between;gap:1rem;padding:.75rem .85rem;border:1px solid var(--primary-border);border-radius:.75rem;background:color-mix(in srgb,var(--surface, #fff) 88%,transparent)}.cookie-consent-purpose.is-locked{opacity:.92}.cookie-consent-purpose-copy{display:grid;gap:.2rem}.cookie-consent-purpose-label{font-weight:600;color:var(--text-primary)}.cookie-consent-purpose-desc{font-size:.85rem;color:var(--text-muted);line-height:1.4}.cookie-consent-purpose input{margin-top:.2rem;accent-color:var(--primary);width:1.1rem;height:1.1rem}.cookie-consent-actions{display:flex;flex-wrap:wrap;gap:.55rem;margin-top:.95rem;align-items:center}.cookie-consent-link-btn{border:none;background:transparent;color:var(--primary);font-weight:600;font-size:.9rem;cursor:pointer;padding:.4rem .2rem}.cookie-consent-link-btn:disabled{opacity:.6;cursor:not-allowed}.cookie-consent-legal{margin:.75rem 0 0;font-size:.8rem;color:var(--text-muted)}.cookie-consent-error{margin:.75rem 0 0;color:#b42318;font-size:.85rem}@media(max-width:640px){.cookie-consent-root{padding:.65rem}.cookie-consent-panel{border-radius:.85rem;padding:.95rem}.cookie-consent-actions{flex-direction:column;align-items:stretch}.cookie-consent-link-btn{text-align:left}}.student-shell.student-shell--studio{--studio-surface: var(--bg-page);--studio-card-radius: 1.4rem;--studio-shadow: 0 1px 2px color-mix(in srgb, var(--text-primary) 6%, transparent);--studio-shadow-lg: 0 2px 8px color-mix(in srgb, var(--text-primary) 8%, transparent);background:var(--studio-surface);color:var(--text-primary);font-size:1.02rem}.student-shell.student-shell--studio.page-gradient-bg{background:var(--studio-surface)}.student-shell.student-shell--studio .page-header-fixed{background:var(--bg-surface);backdrop-filter:none;-webkit-backdrop-filter:none;border-bottom-color:var(--border);box-shadow:none}.student-shell.student-shell--studio .student-top-search{width:min(36vw,560px);max-width:100%;height:2.65rem;margin-inline:auto;padding:0 1.2rem;gap:.65rem;border-radius:999px;background:var(--bg-inset);border:1px solid var(--border);box-shadow:0 1px 2px color-mix(in srgb,var(--text-primary) 5%,transparent);color:var(--text-muted);transition:border-color .18s ease,box-shadow .18s ease,background .18s ease}.student-shell.student-shell--studio .student-top-search input{font-size:.9375rem;color:var(--text-primary)}.student-shell.student-shell--studio .student-top-search input::placeholder{color:var(--text-muted);opacity:1}.student-shell.student-shell--studio .student-top-search:focus-within{background:var(--bg-surface);border-color:color-mix(in srgb,var(--border) 70%,var(--text-muted));box-shadow:0 1px 3px color-mix(in srgb,var(--text-primary) 8%,transparent)}.student-shell.student-shell--studio .page-header-center{display:flex;justify-content:center;align-items:center}.student-shell.student-shell--studio .student-sidebar-profile{gap:.7rem;padding:.8rem .75rem}.student-shell.student-shell--studio .student-sidebar-profile-name{font-size:1rem;font-weight:750}.student-shell.student-shell--studio .side-nav-item.student-nav-item{font-size:.98rem;font-weight:600}.student-shell.student-shell--studio .dash-greeting h1{font-size:clamp(2rem,3.2vw,2.65rem);letter-spacing:-.03em;line-height:1.12}.student-shell.student-shell--studio .dash-greeting-sub{font-size:1.02rem;max-width:38rem}.student-shell.student-shell--studio .dash-stat-card{flex-direction:column;gap:.75rem;min-height:7.8rem;padding:1.2rem 1.25rem;border-radius:var(--studio-card-radius);background:var(--bg-surface);border:1px solid color-mix(in srgb,var(--border) 80%,transparent);box-shadow:var(--studio-shadow)}.student-shell.student-shell--studio .dash-stat-icon{height:3rem;width:3rem;border-radius:1rem}.student-shell.student-shell--studio .dash-stat-value{font-size:2rem;letter-spacing:-.03em}.student-shell.student-shell--studio .dash-stat-label{font-size:.9rem;font-weight:650}.student-shell.student-shell--studio .dash-hero{min-height:15.5rem;padding:1.7rem 1.75rem;border-radius:1.65rem;border:1px solid color-mix(in srgb,var(--primary) 18%,var(--border));box-shadow:var(--studio-shadow-lg);background:linear-gradient(125deg,color-mix(in srgb,var(--primary) 14%,var(--bg-surface)),var(--bg-surface) 55%)}.student-shell.student-shell--studio .dash-stat-card:hover,.student-shell.student-shell--studio .dash-action-card:hover,.student-shell.student-shell--studio .premium-card:hover{transform:none;box-shadow:var(--studio-shadow)}.student-shell.student-shell--studio .dash-hero-title{font-size:clamp(1.55rem,2.4vw,2rem);letter-spacing:-.025em}.student-shell.student-shell--studio .dash-hero-desc{font-size:1rem}.student-shell.student-shell--studio .dash-hero-art{min-height:12.5rem;border-radius:1.4rem;overflow:hidden;background:linear-gradient(160deg,color-mix(in srgb,var(--primary) 18%,transparent),transparent 70%),linear-gradient(180deg,var(--primary-soft),var(--bg-surface-muted))}.student-shell.student-shell--studio .dash-hero--photo .dash-hero-art{align-self:stretch;min-height:100%;background:color-mix(in srgb,var(--hero-soft, var(--primary-soft)) 55%,var(--bg-surface-muted))}.student-shell.student-shell--studio .dash-hero-art-frame--photo{position:absolute;top:0;right:0;bottom:0;left:0;display:block;padding:0;min-height:0;background:transparent;border:0;box-shadow:none}.student-shell.student-shell--studio .dash-hero-illustration{display:block;width:100%;height:100%;max-height:none;object-fit:cover;object-position:left center}.dash-hero-blob-c{width:4.5rem;height:4.5rem;left:42%;top:28%;background:color-mix(in srgb,var(--primary) 18%,transparent)}.student-shell.student-shell--studio .dash-action-card{min-height:12.25rem;border-radius:var(--studio-card-radius);padding:1.15rem;background:var(--bg-surface);border:1px solid color-mix(in srgb,var(--border) 85%,transparent);box-shadow:var(--studio-shadow)}.student-shell.student-shell--studio .dash-action-card h3{font-size:1.05rem}.student-shell.student-shell--studio .dash-action-cta{display:inline-flex;align-items:center;justify-content:center;gap:.35rem;width:fit-content;margin-top:auto;padding:.55rem .9rem;border-radius:.85rem;font-size:.8rem;font-weight:700;color:var(--text-on-primary);background:var(--primary)}.student-shell.student-shell--studio .dash-action--blue .dash-action-cta{background:#1d6fa5;color:#fff}.student-shell.student-shell--studio .dash-action--green .dash-action-cta{background:#1f7a45;color:#fff}.student-shell.student-shell--studio .dash-action--orange .dash-action-cta{background:#a16207;color:#fff}.student-shell.student-shell--studio .dash-action--rose .dash-action-cta{background:#b91c1c;color:#fff}.student-shell.student-shell--studio .dash-action--slate .dash-action-cta{background:#475569;color:#fff}.student-shell.student-shell--studio .dash-ai-promo .dash-action-cta{background:#fff;color:color-mix(in srgb,var(--primary-dark) 55%,#0b1118)!important}.student-shell.student-shell--studio .dash-action-card--illustrated{gap:.75rem}.student-shell.student-shell--studio .dash-action-illustration{width:100%;min-height:8.25rem;border-radius:1.1rem;overflow:hidden;background:linear-gradient(160deg,color-mix(in srgb,var(--primary) 28%,var(--bg-inset)),var(--primary-soft));display:block}.student-shell.student-shell--studio .dash-action-illustration img{display:block;width:100%;height:8.5rem;object-fit:cover;object-position:left bottom}.dash-weak-title-row{display:flex;align-items:center;gap:.45rem}.dash-weak-dot{width:.45rem;height:.45rem;border-radius:999px;background:var(--warning-text, #b45309)}.student-shell.student-shell--studio .dash-weak-chip{border-radius:1.25rem;padding:.95rem 1.05rem;background:var(--bg-surface);box-shadow:var(--studio-shadow)}.student-shell.student-shell--studio .dash-subject-card{min-height:16rem;border-radius:1.55rem;box-shadow:var(--studio-shadow-lg);overflow:hidden}.dash-subject-body{position:relative;z-index:1;min-width:0}.student-shell.student-shell--studio .dash-subject-card--illustrated{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(7.5rem,.95fr);align-items:stretch;gap:.85rem;padding-right:.85rem}.student-shell.student-shell--studio .dash-subject-card--illustrated .dash-subject-art{position:relative;inset:auto;align-self:stretch;width:auto;height:auto;min-height:12.5rem;margin:.55rem .15rem .55rem 0;border-radius:1.2rem;overflow:hidden;pointer-events:none;background:color-mix(in srgb,white 14%,transparent)}.student-shell.student-shell--studio .dash-subject-illustration{width:100%;height:100%;object-fit:cover;object-position:left center;border-radius:1.2rem;display:block}.student-shell.student-shell--studio .dash-subject-title{font-size:1.05rem}.student-shell.student-shell--studio .student-dashboard-aside .dash-ai-promo{min-height:auto;background:linear-gradient(145deg,var(--primary),color-mix(in srgb,var(--primary-dark) 72%,#0b1118))!important;border:0;color:var(--text-on-primary);box-shadow:var(--studio-shadow-lg)}@media(min-width:1100px){.student-shell.student-shell--studio .student-dashboard-aside{position:static}}@media(min-width:900px){.student-shell.student-shell--studio .student-layout-grid{display:grid;grid-template-columns:272px minmax(0,1fr);gap:1.5rem;align-items:start}.student-shell.student-shell--studio .side-nav.student-sidebar{display:flex;position:sticky;top:calc(var(--page-header-h) + 16px);left:auto;width:auto;height:calc(100vh - var(--page-header-h) - 40px);max-height:calc(100vh - var(--page-header-h) - 40px);margin:0;padding:1.1rem .95rem 1.15rem;border-radius:1.35rem;border:1px solid color-mix(in srgb,var(--border) 85%,transparent);background:var(--bg-surface);box-shadow:var(--studio-shadow);z-index:12;overflow:hidden}.student-shell.student-shell--studio .app-content{min-width:0;width:100%}.student-shell.student-shell--studio .page-body{padding-top:calc(var(--page-header-h) + 20px)}.student-shell.student-shell--studio .side-nav-item.student-nav-item{border-radius:.95rem;padding:.72rem .85rem}.student-shell.student-shell--studio .side-nav-item.student-nav-item.active{background:var(--primary);color:var(--text-on-primary);box-shadow:0 4px 12px color-mix(in srgb,var(--primary) 22%,transparent)}.student-shell.student-shell--studio .side-nav-item.student-nav-item.active .nav-lucide-icon,.student-shell.student-shell--studio .side-nav-item.student-nav-item.active .nav-bell-icon{color:var(--text-on-primary)}.student-shell.student-shell--studio .student-sidebar-premium{margin-top:auto}}@media(min-width:1100px){.student-shell.student-shell--studio .student-dashboard-grid{grid-template-columns:minmax(0,1.75fr) minmax(300px,.95fr)}}@media(max-width:899px){.student-shell.student-shell--studio .student-top-search{width:min(280px,100%);height:2.4rem;padding:0 .9rem}}.eng-page{--eng-ink: #1a2332;--eng-muted: #5b6b7c;--eng-green: #1b7a4e;--eng-green-soft: #e8f6ee;--eng-mint: #eef8f1;--eng-card: #f4f6f8;--eng-flame: #e8590c;--eng-gold: #d97706;--eng-purple: #7c3aed;--eng-blue: #2563eb;--eng-pink: #db2777;font-family:Plus Jakarta Sans,Inter,Segoe UI,system-ui,sans-serif;color:var(--eng-ink)}.eng-tone-flame{color:var(--eng-flame)}.eng-tone-gold{color:var(--eng-gold)}.eng-tone-green{color:var(--eng-green)}.eng-tone-purple{color:var(--eng-purple)}.eng-tone-blue{color:var(--eng-blue)}.eng-tone-pink{color:var(--eng-pink)}.eng-guide{display:grid;gap:1.75rem;margin-bottom:1.75rem}.eng-guide-hero{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(0,.85fr);gap:1.25rem;align-items:center;padding:1.35rem 1.4rem;border-radius:1.25rem;background:radial-gradient(circle at 92% 12%,rgba(27,122,78,.12),transparent 42%),linear-gradient(165deg,#fff,#f7faf8);border:1px solid #d7e8de}.eng-guide-eyebrow{display:inline-flex;align-items:center;gap:.4rem;margin:0 0 .55rem;font-size:.75rem;font-weight:700;letter-spacing:.04em;text-transform:uppercase;color:var(--eng-green)}.eng-guide-title,.eng-page-title{margin:0;font-size:clamp(1.55rem,2.4vw,2.05rem);font-weight:800;letter-spacing:-.03em;line-height:1.15;color:var(--eng-ink)}.eng-guide-title span,.eng-page-title span{color:var(--eng-green)}.eng-guide-lead,.eng-page-lead{margin:.65rem 0 0;max-width:36rem;font-size:.95rem;line-height:1.55;color:var(--eng-muted)}.eng-guide-tip{margin:.55rem 0 0;max-width:36rem;font-size:.88rem;line-height:1.45;color:var(--eng-accent, #1b7a4e);font-weight:600}.eng-guide-hero-art{border-radius:1rem;overflow:hidden;border:1px solid #e2e8f0;background:var(--eng-soft, #e8f6ee);box-shadow:0 14px 32px #0f172a0f;min-height:160px;display:grid;place-items:center;position:relative}.eng-art-orb{position:absolute;top:18%;right:22%;bottom:18%;left:22%;border-radius:999px;background:color-mix(in srgb,var(--eng-accent, #1b7a4e) 18%,transparent)}.eng-art-icon{position:relative;z-index:1;display:grid;place-items:center;width:5rem;height:5rem;border-radius:1.25rem;background:#fff;color:var(--eng-accent, #1b7a4e);border:1px solid color-mix(in srgb,var(--eng-accent, #1b7a4e) 22%,#e2e8f0);box-shadow:0 10px 24px #0f172a14}.eng-subject-chips{display:flex;flex-wrap:wrap;gap:.45rem;margin-top:.9rem}.eng-subject-chip{display:inline-flex;align-items:center;gap:.35rem;padding:.3rem .6rem;border-radius:999px;font-size:.75rem;font-weight:700}.eng-pillar-grid--4{grid-template-columns:repeat(4,minmax(0,1fr))}.eng-flow-steps{margin:0;padding:0;list-style:none;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:.65rem}.eng-flow-steps li{display:flex;align-items:center;gap:.45rem;padding:.75rem .85rem;border-radius:.85rem;background:#f4f6f8;border:1px solid #e8ecf0;font-size:.82rem;font-weight:650;color:var(--eng-ink)}.eng-guide-hero-img{display:none}@media(max-width:1100px){.eng-pillar-grid--4,.eng-flow-steps{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:560px){.eng-pillar-grid--4,.eng-flow-steps{grid-template-columns:1fr}}.dash-subject-soft-icon{color:var(--subject-accent, var(--primary));background:var(--subject-soft, var(--primary-soft))}.eng-guide-section-title{display:flex;align-items:center;gap:.55rem;margin:0 0 .85rem;font-size:1.05rem;font-weight:750;color:var(--eng-ink)}.eng-guide-section-icon{flex-shrink:0}.eng-pillar-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:.75rem}.eng-pillar-card{padding:1rem .95rem;border-radius:.9rem;background:var(--eng-card);border:1px solid #e8ecf0}.eng-pillar-icon{display:grid;place-items:center;width:2.35rem;height:2.35rem;margin-bottom:.7rem;border-radius:.75rem;background:#fff;border:1px solid #e8ecf0}.eng-pillar-icon.eng-tone-flame{background:#fff1e6;border-color:#ffd8a8}.eng-pillar-icon.eng-tone-gold{background:#fff8e6;border-color:#ffe8a3}.eng-pillar-icon.eng-tone-green{background:#e8f6ee;border-color:#b7e0c7}.eng-pillar-icon.eng-tone-purple{background:#f3e8ff;border-color:#e0c8ff}.eng-pillar-icon.eng-tone-blue{background:#e8f1ff;border-color:#c5d9ff}.eng-pillar-card h4{margin:0 0 .45rem;font-size:.92rem;font-weight:750}.eng-pillar-card ul{margin:0;padding:0;list-style:none;display:grid;gap:.25rem}.eng-pillar-card li{font-size:.78rem;color:var(--eng-muted);padding-left:.85rem;position:relative}.eng-pillar-card li:before{content:"•";position:absolute;left:0;color:#94a3b8}.eng-study-day-box{padding:1.1rem 1.15rem;border-radius:1rem;background:var(--eng-mint);border:1px solid #cfe8d8}.eng-study-day-label{margin:0 0 .85rem;font-size:.8rem;font-weight:700;color:var(--eng-green)}.eng-study-day-grid{margin:0;padding:0;list-style:none;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.75rem 1rem}.eng-study-day-grid li{display:flex;align-items:flex-start;gap:.55rem}.eng-check{flex-shrink:0;margin-top:.1rem;color:var(--eng-green)}.eng-study-day-grid strong{display:block;font-size:.86rem;font-weight:700;color:var(--eng-ink)}.eng-study-day-grid span{display:block;font-size:.75rem;color:var(--eng-muted)}.eng-rules-grid{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(0,.85fr);gap:.9rem}.eng-panel-stack{display:grid;gap:.75rem}.eng-panel{padding:1rem 1.05rem;border-radius:1rem;background:#fff;border:1px solid #e5e9ef;box-shadow:0 8px 22px #0f172a08}.eng-panel h2,.eng-panel h4{display:flex;align-items:center;gap:.45rem;margin:0 0 .75rem;font-size:.95rem;font-weight:750}.eng-table{width:100%;border-collapse:collapse;font-size:.82rem}.eng-table th,.eng-table td{padding:.45rem .35rem;text-align:left;border-bottom:1px solid #eef1f5}.eng-table th{background:#f4f6f8;font-weight:700;color:var(--eng-muted)}.eng-table td:last-child{font-weight:700;color:var(--eng-green);white-space:nowrap}.eng-limits{margin-top:.85rem;padding:.75rem .85rem;border-radius:.75rem;background:#f0f7ff;border:1px solid #d7e6f8}.eng-limits-title{margin:0 0 .4rem;font-size:.78rem;font-weight:750;color:var(--eng-blue)}.eng-limits ul,.eng-bullet-list,.eng-flow-list{margin:0;padding-left:1.1rem;display:grid;gap:.3rem;font-size:.82rem;color:var(--eng-muted)}.eng-balance-bar{display:flex;flex-wrap:wrap;align-items:center;gap:.75rem;margin-bottom:1.35rem}.eng-balance-chip{display:flex;align-items:center;gap:.65rem;padding:.7rem .95rem;border-radius:.9rem;background:#fff;border:1px solid #e5e9ef;min-width:10rem}.eng-balance-chip.eng-tone-gold{background:#fff8e6;border-color:#ffe8a3;color:var(--eng-gold)}.eng-balance-chip.eng-tone-flame{background:#fff1e6;border-color:#ffd8a8;color:var(--eng-flame)}.eng-balance-label{display:block;font-size:.7rem;font-weight:650;color:var(--eng-muted)}.eng-balance-chip strong{font-size:1.05rem;font-weight:800;color:var(--eng-ink)}.eng-balance-link{margin-left:auto;font-size:.85rem;font-weight:700;color:var(--eng-green);text-decoration:none}.eng-balance-link:hover{text-decoration:underline}.eng-store-head{margin-bottom:1rem}.eng-store-head h2{display:flex;align-items:center;gap:.5rem;margin:0;font-size:1.2rem;font-weight:800}.eng-store-head p{margin:.4rem 0 0;color:var(--eng-muted);font-size:.9rem}.eng-reward-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:.9rem}.eng-reward-card{display:flex;flex-direction:column;padding:1.1rem;border-radius:1rem;background:#fff;border:1px solid #e5e9ef;box-shadow:0 10px 26px #0f172a0a}.eng-reward-card--locked{opacity:.85;background:#f8fafc;border-style:dashed}.eng-reward-lock-hint{margin:.45rem 0 0!important;color:#b45309!important;font-weight:600}.eng-reward-icon{display:grid;place-items:center;width:2.6rem;height:2.6rem;margin-bottom:.75rem;border-radius:.85rem;background:#e8f6ee;border:1px solid #b7e0c7}.eng-reward-type{font-size:.68rem;font-weight:750;letter-spacing:.05em;text-transform:uppercase;color:var(--eng-muted)}.eng-reward-card h3{margin:.35rem 0 0;font-size:1.05rem;font-weight:750}.eng-reward-card p{margin:.4rem 0 0;flex:1;font-size:.85rem;color:var(--eng-muted)}.eng-reward-footer{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:.65rem;margin-top:1rem}.eng-reward-cost{font-size:1rem;font-weight:800;color:var(--eng-green)}.eng-reward-btn{background:var(--eng-green)!important;border-color:var(--eng-green)!important}.eng-page-header{display:flex;flex-wrap:wrap;align-items:flex-start;justify-content:space-between;gap:1rem;margin-bottom:1.35rem}.eng-history-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem}.eng-history-panel h2{display:flex;align-items:center;gap:.45rem;margin-bottom:.85rem}.eng-badge-row{display:flex;align-items:center;gap:.85rem}.eng-badge-art{width:5.5rem;height:5.5rem;object-fit:contain;flex-shrink:0;filter:drop-shadow(0 6px 14px color-mix(in srgb,#0f172a 22%,transparent))}.eng-ledger-list{margin:0;padding:0;list-style:none;display:grid;gap:.55rem}.eng-ledger-list>li{display:flex;align-items:center;justify-content:space-between;gap:.75rem;padding:.75rem .85rem;border-radius:.75rem;background:#f8fafb;border:1px solid #eef1f5}.eng-ledger-block{flex-direction:column!important;align-items:stretch!important}.eng-ledger-row{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:.5rem;width:100%}.eng-ledger-reason{font-weight:700;font-size:.9rem}.eng-ledger-meta{font-size:.75rem;color:var(--eng-muted)}.eng-ledger-plus{font-weight:800;color:var(--eng-green)}.eng-ledger-minus{font-weight:800;color:#c92a2a}.eng-status{font-size:.68rem;font-weight:750;letter-spacing:.04em;text-transform:uppercase;padding:.2rem .45rem;border-radius:999px;background:#f1f5f9;color:var(--eng-muted)}.eng-status--fulfilled{background:#e8f6ee;color:var(--eng-green)}.eng-status--pending{background:#fff8e6;color:var(--eng-gold)}.eng-code{margin-top:.45rem;font-size:.85rem;font-weight:650}.eng-code code{padding:.1rem .35rem;border-radius:.35rem;background:#eef2f6}@media(max-width:1100px){.eng-pillar-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}@media(max-width:900px){.eng-guide-hero,.eng-rules-grid,.eng-history-grid,.eng-study-day-grid{grid-template-columns:1fr}.eng-pillar-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.eng-balance-link{margin-left:0}}@media(max-width:560px){.eng-pillar-grid{grid-template-columns:1fr}.eng-guide-hero-img{max-height:160px}}.badge-unlock-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:80;display:grid;place-items:center;padding:1.25rem;background:color-mix(in srgb,#0f172a 55%,transparent);animation:badge-unlock-fade-in .35s ease-out}.badge-unlock-burst{position:absolute;top:0;right:0;bottom:0;left:0;pointer-events:none;background:radial-gradient(circle at 20% 30%,color-mix(in srgb,#c9a227 35%,transparent),transparent 28%),radial-gradient(circle at 80% 25%,color-mix(in srgb,#8a8f98 30%,transparent),transparent 26%),radial-gradient(circle at 50% 80%,color-mix(in srgb,#5b7c99 28%,transparent),transparent 32%);animation:badge-unlock-burst 1.2s ease-out}.badge-unlock-card{position:relative;width:min(22rem,100%);padding:1.75rem 1.5rem 1.4rem;border-radius:1.35rem;text-align:center;background:var(--bg-surface, #fff);border:1px solid var(--border);box-shadow:0 18px 48px color-mix(in srgb,#0f172a 28%,transparent);animation:badge-unlock-pop .55s cubic-bezier(.22,1.2,.36,1)}.badge-unlock-medal{width:5.5rem;height:5.5rem;margin:0 auto .85rem;display:grid;place-items:center;border-radius:999px;color:#fff;animation:badge-unlock-spin .9s ease-out}.badge-unlock-art{width:10.5rem;height:10.5rem;margin:0 auto .85rem;object-fit:contain;filter:drop-shadow(0 14px 28px color-mix(in srgb,#0f172a 35%,transparent));animation:badge-unlock-spin .9s ease-out}.badge-unlock-medal--bronze{background:linear-gradient(145deg,#d4a574,#b87333)}.badge-unlock-medal--silver{background:linear-gradient(145deg,#d0d4da,#8a8f98)}.badge-unlock-medal--gold{background:linear-gradient(145deg,#e8c84a,#c9a227)}.badge-unlock-medal--platinum{background:linear-gradient(145deg,#9bb4c9,#5b7c99)}.badge-unlock-eyebrow{margin:0;font-size:.72rem;letter-spacing:.08em;text-transform:uppercase;color:var(--text-muted)}.badge-unlock-title{margin:.35rem 0 .4rem;font-size:1.85rem;line-height:1.15;color:var(--text)}.badge-unlock-tagline{margin:0;font-size:.95rem;line-height:1.45;color:var(--text-muted)}.badge-unlock-points{margin:.65rem 0 0;font-size:.85rem;font-weight:650;color:var(--text)}.badge-unlock-dismiss{margin-top:1.15rem;padding:.55rem 1.35rem;border:0;border-radius:999px;font:inherit;font-weight:650;cursor:pointer;color:#fff;background:var(--primary, #1d4ed8)}.badge-unlock-dismiss:hover{filter:brightness(1.05)}@keyframes badge-unlock-fade-in{0%{opacity:0}to{opacity:1}}@keyframes badge-unlock-pop{0%{opacity:0;transform:scale(.72) translateY(12px)}to{opacity:1;transform:scale(1) translateY(0)}}@keyframes badge-unlock-spin{0%{transform:rotate(-18deg) scale(.6);opacity:0}to{transform:rotate(0) scale(1);opacity:1}}@keyframes badge-unlock-burst{0%{opacity:0;transform:scale(.9)}to{opacity:1;transform:scale(1)}}@media(prefers-reduced-motion:reduce){.badge-unlock-overlay,.badge-unlock-burst,.badge-unlock-card,.badge-unlock-medal,.badge-unlock-art{animation:none}}
