/*! tailwindcss v4.3.3 | MIT License | https://tailwindcss.com */
@layer theme{:root,:host{--font-sans:-apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", "Noto Sans", Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";--font-mono:"JetBrains Mono", ui-monospace, "SF Mono", Menlo, monospace;--text-xs:.82rem;--text-sm:.92rem;--text-base:1rem;--text-lg:1.25rem;--text-xl:1.45rem;--text-2xl:1.85rem;--text-3xl:2.4rem;--default-font-family:var(--font-sans);--default-mono-font-family:var(--font-mono);--color-bg:#e9eef8;--color-surface:#fff;--color-ink:#0f172a;--color-muted:#54606f;--color-hairline:#dbe3ef;--color-accent:#5b6ee8;--color-accent-deep:#3b4cc7;--color-accent-soft:#eef0ff;--color-on-accent:#fff;--color-on-accent-muted:#ffffffe0;--color-sun:#f0cb75;--color-sun-soft:#fff4d6;--color-mint:#1bc196;--color-mint-soft:#d4f8ec;--color-peach:#f09274;--color-pink:#f07aa2;--color-sky:#5cc5d2;--color-grape:#ac96ef;--color-danger:#ef6e88;--color-danger-soft:#ffe1e8;--color-go:#10b981;--step-1:#5b86e5;--step-2:#06d6a0;--step-3:#f0a202;--step-4:#ff5e7e;--step-5:#9b7ede;--step-6:#00b4d8;--step-7:#f4795b;--step-8:#7cb518;--step-9:#c77dff;--step-10:#e5989b;--tier-easy-bg:#57cc9926;--tier-easy-ink:#1d7a55;--tier-medium-bg:#f2c14e33;--tier-medium-ink:#8a6100;--tier-hard-bg:#ef646122;--tier-hard-ink:#a02422;--radius-card:24px;--radius-card-sm:14px;--radius-pill:999px;--shadow-card:0 2px 6px var(--_accent), 0 10px 28px var(--_accent)}@supports (color:color-mix(in lab, red, red)){:root,:host{--shadow-card:0 2px 6px color-mix(in srgb, var(--_accent) 9%, transparent), 0 10px 28px color-mix(in srgb, var(--_accent) 11%, transparent)}}:root,:host{--font-display:"Space Grotesk", "Noto Sans Khmer", system-ui, sans-serif;--font-body:"Space Grotesk", "Noto Sans Khmer", system-ui, sans-serif;--text-2xs:.75rem;--text-md:1.1rem;--w-medium:clamp(500, calc(500 + (var(--edux-tscale,1) - 1) * 120), 600);--w-semi:clamp(600, calc(600 + (var(--edux-tscale,1) - 1) * 130), 700);--w-bold:clamp(700, calc(700 + (var(--edux-tscale,1) - 1) * 150), 800);--w-xbold:clamp(800, calc(800 + (var(--edux-tscale,1) - 1) * 150), 900);--w-black:clamp(900, calc(900 + (var(--edux-tscale,1) - 1) * 100), 950);--bar-h:max(72px, calc(56px * var(--edux-tscale,1)));--content-max:1400px;--content:min(var(--content-max), 100%);--gutter:clamp(22px, 4vw, 56px);--space-section:40px;--gap-grid:16px;--space-band:64px}}@layer base{*,:after,:before,::backdrop{box-sizing:border-box;border:0 solid;margin:0;padding:0}::file-selector-button{box-sizing:border-box;border:0 solid;margin:0;padding:0}html,:host{-webkit-text-size-adjust:100%;tab-size:4;line-height:1.5;font-family:var(--default-font-family,-apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", "Noto Sans", Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji");font-feature-settings:var(--default-font-feature-settings,normal);font-variation-settings:var(--default-font-variation-settings,normal);-webkit-tap-highlight-color:transparent}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:var(--default-mono-font-family,ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace);font-feature-settings:var(--default-mono-font-feature-settings,normal);font-variation-settings:var(--default-mono-font-variation-settings,normal);font-size:1em}small{font-size:80%}sub,sup{vertical-align:baseline;font-size:75%;line-height:0;position:relative}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}:-moz-focusring:where(:not(iframe)){outline:auto}progress{vertical-align:baseline}summary{display:list-item}ol,ul,menu{list-style:none}img,svg,video,canvas,audio,iframe,embed,object{vertical-align:middle;display:block}img,video{max-width:100%;height:auto}button,input,select,optgroup,textarea{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}::file-selector-button{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}:where(select:is([multiple],[size])) optgroup{font-weight:bolder}:where(select:is([multiple],[size])) optgroup option{padding-inline-start:20px}::file-selector-button{margin-inline-end:4px}::placeholder{opacity:1}@supports (not ((-webkit-appearance:-apple-pay-button))) or (contain-intrinsic-size:1px){::placeholder{color:currentColor}@supports (color:color-mix(in lab, red, red)){::placeholder{color:color-mix(in oklab, currentcolor 50%, transparent)}}}textarea{resize:vertical}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-date-and-time-value{min-height:1lh;text-align:inherit}::-webkit-datetime-edit{display:inline-flex}::-webkit-datetime-edit-fields-wrapper{padding:0}::-webkit-datetime-edit{padding-block:0}::-webkit-datetime-edit-year-field{padding-block:0}::-webkit-datetime-edit-month-field{padding-block:0}::-webkit-datetime-edit-day-field{padding-block:0}::-webkit-datetime-edit-hour-field{padding-block:0}::-webkit-datetime-edit-minute-field{padding-block:0}::-webkit-datetime-edit-second-field{padding-block:0}::-webkit-datetime-edit-millisecond-field{padding-block:0}::-webkit-datetime-edit-meridiem-field{padding-block:0}::-webkit-calendar-picker-indicator{line-height:1}:-moz-ui-invalid{box-shadow:none}button,input:where([type=button],[type=reset],[type=submit]){appearance:button}::file-selector-button{appearance:button}::-webkit-inner-spin-button{height:auto}::-webkit-outer-spin-button{height:auto}[hidden]:where(:not([hidden=until-found])){display:none!important}}@layer components;@layer utilities{.sr-only{clip-path:inset(50%);white-space:nowrap;border-width:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.container{width:100%}@media (min-width:40rem){.container{max-width:40rem}}@media (min-width:48rem){.container{max-width:48rem}}@media (min-width:64rem){.container{max-width:64rem}}@media (min-width:80rem){.container{max-width:80rem}}@media (min-width:96rem){.container{max-width:96rem}}}@media (max-width:47.99rem){:root{--text-sm:.98rem;--text-xs:.86rem}}:root{--_accent:var(--level,var(--color-accent));--_accent-deep:var(--level-deep,var(--color-accent-deep));--_accent-soft:var(--level-soft,var(--color-accent-soft));--_accent-ink:var(--_accent-deep)}@supports (color:color-mix(in lab, red, red)){:root{--_accent-ink:color-mix(in srgb, var(--_accent-deep) 80%, #000)}}:root{--_accent-chip:var(--_accent-deep)}@supports (color:color-mix(in lab, red, red)){:root{--_accent-chip:color-mix(in srgb, var(--_accent-deep) 52%, #000)}}:root{--focus-ring:var(--_accent-ink)}*,:before,:after{box-sizing:border-box}html{font-size:calc(17px * var(--edux-tscale,1));scroll-behavior:smooth;scroll-padding-top:calc(var(--bar-h-live,var(--bar-h)) + 16px)}body{font-family:var(--font-body);background:var(--color-bg);color:var(--color-ink);letter-spacing:.005em;margin:0;font-size:1rem;line-height:1.65}.app-header{background:radial-gradient(120% 130% at 14% -12%, #ffffff24, transparent 55%), radial-gradient(95% 95% at 88% 122%, var(--_accent-deep), transparent 60%), linear-gradient(152deg, var(--banner-from,var(--_accent-deep)) 0%, var(--banner-mid,var(--_accent-deep)) 58%, var(--banner-to,var(--_accent)) 100%);position:relative;overflow:hidden}@supports (color:color-mix(in lab, red, red)){.app-header{background:radial-gradient(120% 130% at 14% -12%, #ffffff24, transparent 55%), radial-gradient(95% 95% at 88% 122%, color-mix(in srgb, var(--_accent-deep) 65%, #000 12%), transparent 60%), linear-gradient(152deg, var(--banner-from,color-mix(in srgb, var(--_accent-deep) 92%, #000)) 0%, var(--banner-mid,var(--_accent-deep)) 58%, var(--banner-to,var(--_accent)) 100%)}}.app-header{color:var(--color-on-accent);padding:28px var(--gutter) 32px;box-shadow:inset 0 -1px #ffffff40}.app-header:before{content:"";pointer-events:none;opacity:.06;z-index:1;background-image:radial-gradient(#fff 1px,#0000 1.6px);background-size:22px 22px;position:absolute;inset:0}.app-header:after{content:"";pointer-events:none;background:radial-gradient(circle,#ffffff2e,#0000 70%);border-radius:50%;width:240px;height:240px;position:absolute;top:-90px;right:-50px}.app-header__inner{max-width:var(--content);z-index:2;align-items:center;gap:18px;margin:0 auto;display:flex;position:relative}.app-header__text{flex:1;min-width:0}.app-header__title{font-family:var(--font-display);font-size:var(--text-2xl);font-weight:var(--w-bold);letter-spacing:-.01em;margin:0 0 4px}.app-header__topic{font-size:var(--text-base);opacity:.95;white-space:nowrap;text-overflow:ellipsis;margin:-6px;padding:6px;font-weight:400;overflow:hidden}.app-header__meta{font-size:var(--text-sm);font-weight:var(--w-bold);letter-spacing:.06em;text-transform:uppercase;background:var(--chip-on-accent-bg,#0000003d);border-radius:var(--radius-pill);border:1px solid var(--chip-on-accent-border,#ffffff38);margin-bottom:10px;padding:5px 18px;display:inline-block}.mascot{width:88px;height:88px;box-shadow:0 10px 26px var(--_accent-deep), 0 0 0 4px #fff6;background:#fff;border-radius:50%;flex:none;justify-content:center;align-items:center;display:flex}@supports (color:color-mix(in lab, red, red)){.mascot{box-shadow:0 10px 26px color-mix(in srgb, var(--_accent-deep) 48%, transparent), 0 0 0 4px #fff6}}.mascot{cursor:pointer;text-decoration:none;transition:transform .15s,box-shadow .15s;animation:2.4s ease-in-out infinite edu-bob}.mascot:hover{box-shadow:0 14px 34px var(--_accent-deep), 0 0 0 6px #ffffff80;transform:scale(1.08)}@supports (color:color-mix(in lab, red, red)){.mascot:hover{box-shadow:0 14px 34px color-mix(in srgb, var(--_accent-deep) 56%, transparent), 0 0 0 6px #ffffff80}}.mascot img{width:70px;height:70px}@keyframes edu-bob{0%,to{transform:translateY(0)}50%{transform:translateY(-6px)}}.app-header__progress{border-radius:var(--radius-pill);background:#ffffff4d;width:100%;height:8px;margin-top:10px;overflow:hidden}.app-header__progress-fill{border-radius:var(--radius-pill);background:#fff;height:100%;transition:width .5s}.progress-bar{z-index:100;background:var(--bar-bg,#ffffffd6);-webkit-backdrop-filter:saturate(1.5)blur(10px);backdrop-filter:saturate(1.5)blur(10px);min-height:var(--bar-h);justify-content:center;align-items:center;padding:10px 12px 11px;display:flex;position:sticky;top:-1px;box-shadow:0 4px 10px #0000000f}.progress-inner{width:100%;max-width:var(--content);flex-wrap:nowrap;justify-content:safe center;align-items:center;gap:clamp(3px,.6vw,8px);padding:4px;scroll-padding-inline:12px;display:flex;overflow-x:auto}.progress-inner::-webkit-scrollbar{display:none}.prog-step{min-width:0;min-height:44px;font-size:var(--prog-step-fs,var(--text-xs));font-weight:var(--w-medium);letter-spacing:.005em;padding:var(--prog-step-pad,5px clamp(6px, 1.1vw, 13px));border-radius:var(--prog-step-radius,var(--radius-pill));color:var(--color-muted);border:1px solid var(--color-hairline);white-space:nowrap;cursor:pointer;background:#fff;flex:none;justify-content:center;align-items:center;gap:6px;text-decoration:none;transition:background .15s,color .15s,border-color .15s;display:inline-flex}.prog-step .pico{font-size:var(--text-base);flex:none;line-height:1}.prog-step--go{color:var(--_accent-ink,var(--color-muted));background:var(--color-surface,#fff);border-style:dashed}.prog-step--go:hover{background:var(--_accent-soft,#fff);border-color:var(--_accent,var(--color-hairline))}.progress-bar[data-edux-tabs-more]>.progress-inner{--tabs-fade-l:0px;--tabs-fade-r:0px;-webkit-mask-image:linear-gradient(90deg, #0000, #000 var(--tabs-fade-l), #000 calc(100% - var(--tabs-fade-r)), #0000);-webkit-mask-image:linear-gradient(90deg, #0000, #000 var(--tabs-fade-l), #000 calc(100% - var(--tabs-fade-r)), #0000);mask-image:linear-gradient(90deg, #0000, #000 var(--tabs-fade-l), #000 calc(100% - var(--tabs-fade-r)), #0000)}.progress-bar[data-edux-tabs-more~=start]>.progress-inner{--tabs-fade-l:56px}.progress-bar[data-edux-tabs-more~=end]>.progress-inner{--tabs-fade-r:56px}.progress-bar[data-edux-tabs-over]>.progress-inner{scroll-padding-inline:56px}.prog-more{z-index:2;cursor:pointer;border-radius:var(--radius-pill);border:1px solid var(--color-hairline);background:var(--color-surface,#fff);width:44px;height:44px;color:var(--_accent-ink,var(--color-ink));font:var(--w-bold) var(--text-xl)/1 var(--font-display);justify-content:center;align-items:center;padding:0;display:none;position:absolute;box-shadow:0 2px 8px #0f172a29}.progress-bar[data-edux-tabs-more~=start]>.prog-more--prev,.progress-bar[data-edux-tabs-more~=end]>.prog-more--next{display:inline-flex}.prog-pos{min-width:2.6em;font-size:var(--text-xs);font-weight:var(--w-bold);font-variant-numeric:tabular-nums;color:var(--color-muted);white-space:nowrap;flex:none;justify-content:center;margin-left:6px;display:none}.progress-bar[data-edux-tabs-over]>.prog-pos{display:inline-flex}@media print{.prog-more,.prog-pos{display:none!important}}.font-medium{font-weight:var(--w-medium)}.font-semibold{font-weight:var(--w-semi)}.font-bold{font-weight:var(--w-bold)}.font-extrabold{font-weight:var(--w-xbold)}.font-black{font-weight:var(--w-black)}.prog-step .ptext{white-space:nowrap}.prog-step:hover{background:var(--_accent-soft);color:var(--_accent-ink);border-color:var(--_accent)}@supports (color:color-mix(in lab, red, red)){.prog-step:hover{border-color:color-mix(in srgb, var(--_accent) 40%, #fff)}}.prog-step.seen:not(.active){background:#f5f6f6}@supports (color:color-mix(in lab, red, red)){.prog-step.seen:not(.active){background:color-mix(in srgb, var(--color-ink) 4%, var(--color-surface,#fff))}}.prog-step.seen:not(.active){border-color:#6b707c}@supports (color:color-mix(in lab, red, red)){.prog-step.seen:not(.active){border-color:color-mix(in srgb, var(--color-ink) 60%, color-mix(in srgb, var(--color-ink) 4%, var(--color-surface,#fff)))}}.prog-step.done:not(.active){color:#2e7d32;background:#e8f5e9;border-color:#4caf50}.prog-step.active,.prog-step[aria-current=true]{background:var(--_accent-deep)}@supports (color:color-mix(in lab, red, red)){.prog-step.active,.prog-step[aria-current=true]{background:color-mix(in srgb, var(--_accent-deep) 88%, #000)}}.prog-step.active,.prog-step[aria-current=true]{color:var(--color-on-accent);border-color:var(--_accent-deep)}@supports (color:color-mix(in lab, red, red)){.prog-step.active,.prog-step[aria-current=true]{border-color:color-mix(in srgb, var(--_accent-deep) 88%, #000)}}.prog-step.active,.prog-step[aria-current=true]{font-weight:var(--w-semi)}.subtabs{flex-wrap:wrap;gap:8px;margin:0 0 16px;display:flex}.subtab{min-height:36px;padding:var(--subtab-pad,8px 16px);border:1px solid var(--color-hairline);border-radius:var(--subtab-radius,var(--radius-pill));background:var(--color-surface);color:var(--color-muted);font:inherit;font-size:var(--subtab-fs,var(--text-sm));font-weight:var(--w-semi);cursor:pointer;flex:auto;transition:background .18s,color .18s,border-color .18s}.subtab:hover{border-color:var(--_accent);color:var(--_accent-ink)}.subtab.is-on,.subtab[aria-selected=true]{background:var(--_accent-deep)}@supports (color:color-mix(in lab, red, red)){.subtab.is-on,.subtab[aria-selected=true]{background:color-mix(in srgb, var(--_accent-deep) 88%, #000)}}.subtab.is-on,.subtab[aria-selected=true]{border-color:var(--_accent-deep)}@supports (color:color-mix(in lab, red, red)){.subtab.is-on,.subtab[aria-selected=true]{border-color:color-mix(in srgb, var(--_accent-deep) 88%, #000)}}.subtab.is-on,.subtab[aria-selected=true]{color:var(--color-on-accent)}.pager{flex-wrap:wrap;align-items:center;gap:8px 11px;margin:0 0 13px;display:flex}.pager__n{font-size:var(--text-md);font-weight:var(--w-bold);color:var(--color-ink)}.pager__dots{flex-wrap:wrap;align-items:center;gap:5px;margin-left:auto;display:flex}.pager__dot{border-radius:var(--radius-pill);background:var(--color-hairline);width:9px;height:9px;transition:width .25s,background .25s}.pager__dot.is-done{background:var(--_accent);width:22px}@supports (color:color-mix(in lab, red, red)){.pager__dot.is-done{background:color-mix(in srgb, var(--_accent) 45%, #fff)}}.pager__dot.is-on{background:var(--_accent);width:22px}.sgroup{border-top:1px solid var(--color-hairline);margin:17px 0 0;padding-top:15px}.sgroup:first-child,.subpanel>.sgroup:first-child{border-top:none;margin-top:0;padding-top:0}.subpanel[hidden]{display:none}edux-text-size{background:var(--bar-bg,#ffffffd6);flex:none;padding-left:16px;display:block;position:relative}.tsize{align-items:center;display:inline-flex;position:relative}.tsize__toggle{background:var(--_accent-soft);justify-content:center;align-items:center;min-width:44px;height:44px;padding:0 12px;display:inline-flex}@supports (color:color-mix(in lab, red, red)){.tsize__toggle{background:color-mix(in srgb, var(--_accent-soft) 60%, #fff)}}.tsize__toggle{border:1px solid var(--_accent)}@supports (color:color-mix(in lab, red, red)){.tsize__toggle{border:1px solid color-mix(in srgb, var(--_accent) 18%, #fff)}}.tsize__toggle{border-radius:var(--radius-pill);font-family:var(--font-display);font-size:14px;font-weight:var(--w-bold);color:var(--_accent-ink);cursor:pointer;line-height:1;transition:background .15s,color .15s,border-color .15s}.tsize.is-open .tsize__toggle{background:var(--_accent-deep)}@supports (color:color-mix(in lab, red, red)){.tsize.is-open .tsize__toggle{background:color-mix(in srgb, var(--_accent-deep) 88%, #000)}}.tsize.is-open .tsize__toggle{color:var(--color-on-accent);border-color:var(--_accent-deep)}@supports (color:color-mix(in lab, red, red)){.tsize.is-open .tsize__toggle{border-color:color-mix(in srgb, var(--_accent-deep) 88%, #000)}}.tsize__ico{display:none}.tsize__steps{z-index:120;border:1px solid var(--_accent);background:#fff;align-items:center;gap:1px;padding:4px 6px;display:none;position:absolute;top:calc(100% + 10px);right:0}@supports (color:color-mix(in lab, red, red)){.tsize__steps{border:1px solid color-mix(in srgb, var(--_accent) 16%, #fff)}}.tsize__steps{border-radius:var(--radius-pill);box-shadow:0 10px 28px #28285a38}.tsize.is-open .tsize__steps{display:inline-flex}.tsize.is-open .tsize__steps:after{content:"";border-left:1px solid var(--_accent);background:#fff;width:10px;height:10px;position:absolute;top:-5px;right:15px}@supports (color:color-mix(in lab, red, red)){.tsize.is-open .tsize__steps:after{border-left:1px solid color-mix(in srgb, var(--_accent) 16%, #fff)}}.tsize.is-open .tsize__steps:after{border-top:1px solid var(--_accent)}@supports (color:color-mix(in lab, red, red)){.tsize.is-open .tsize__steps:after{border-top:1px solid color-mix(in srgb, var(--_accent) 16%, #fff)}}.tsize.is-open .tsize__steps:after{transform:rotate(45deg)}.tsize__range{appearance:none;cursor:pointer;background:var(--_accent-deep);width:132px;height:4px;margin:0;padding:0}@supports (color:color-mix(in lab, red, red)){.tsize__range{background:color-mix(in srgb, var(--_accent-deep) 24%, transparent)}}.tsize__range{border-radius:var(--radius-pill);outline:none}.tsize__range::-webkit-slider-thumb{appearance:none;cursor:pointer;background:var(--_accent-deep);border:none;border-radius:50%;width:20px;height:20px}@supports (color:color-mix(in lab, red, red)){.tsize__range::-webkit-slider-thumb{background:color-mix(in srgb, var(--_accent-deep) 88%, #000)}}.tsize__range::-webkit-slider-thumb{box-shadow:0 1px 4px var(--_accent-deep)}@supports (color:color-mix(in lab, red, red)){.tsize__range::-webkit-slider-thumb{box-shadow:0 1px 4px color-mix(in srgb, var(--_accent-deep) 40%, transparent)}}.tsize__range::-moz-range-thumb{cursor:pointer;background:var(--_accent-deep);border:none;border-radius:50%;width:20px;height:20px}@supports (color:color-mix(in lab, red, red)){.tsize__range::-moz-range-thumb{background:color-mix(in srgb, var(--_accent-deep) 88%, #000)}}.tsize__range::-moz-range-thumb{box-shadow:0 1px 4px var(--_accent-deep)}@supports (color:color-mix(in lab, red, red)){.tsize__range::-moz-range-thumb{box-shadow:0 1px 4px color-mix(in srgb, var(--_accent-deep) 40%, transparent)}}.tsize__range:focus-visible{outline:2px solid var(--focus-ring);outline-offset:4px}.tsize__pct{text-align:right;min-width:3.4em;font-family:var(--font-body);font-size:13px;font-weight:var(--w-bold);color:var(--_accent-ink);font-variant-numeric:tabular-nums;line-height:1}.container{max-width:var(--content);padding:28px var(--gutter) 100px;z-index:3;margin:0 auto;position:relative}.media-frame{--media-chrome:calc(var(--bar-h-live,var(--bar-h)) + 160px);max-width:min(100%, calc((100vh - var(--media-chrome)) * 16 / 9));margin-inline:auto}.match-grid{--match-cols:4;--match-rows:3;--match-gap:.5rem;--match-chrome:calc(var(--bar-h-live,var(--bar-h)) + 252px);--match-side:max(120px, calc((100vh - var(--match-chrome) - (var(--match-rows) - 1) * var(--match-gap)) / var(--match-rows)));gap:var(--match-gap);grid-template-columns:repeat(var(--match-cols), 1fr);max-width:calc(var(--match-cols) * var(--match-side) + (var(--match-cols) - 1) * var(--match-gap));margin-inline:auto;display:grid}@supports (height:100svh){.media-frame{max-width:min(100%, calc((100svh - var(--media-chrome)) * 16 / 9))}.match-grid{--match-side:max(120px, calc((100svh - var(--match-chrome) - (var(--match-rows) - 1) * var(--match-gap)) / var(--match-rows)))}}.section-card{box-shadow:none;margin-bottom:var(--space-section);scroll-margin-top:calc(var(--bar-h-live,var(--bar-h)) + 14px);background:0 0;border-radius:0;padding:20px 0 0;position:relative;overflow:visible}.section-card:before{content:"";background:var(--_accent);border-radius:2px;height:3px;position:absolute;top:0;left:0;right:0}.section-card[data-tone=warmup]:before{background:var(--color-sun)}.section-card[data-tone=explore]:before{background:var(--color-sky)}.section-card[data-tone=predict]:before{background:var(--color-grape)}.section-card[data-tone=investigate]:before{background:var(--color-mint)}.section-card[data-tone=plan]:before{background:var(--color-peach)}.section-card[data-tone=build]:before{background:var(--_accent)}.section-card[data-tone=debug]:before{background:var(--color-danger)}.section-card[data-tone=reflect]:before,.section-card[data-tone=extend]:before{background:var(--color-pink)}.section-title{font-family:var(--font-display);font-size:var(--text-xl);font-weight:var(--w-bold);color:var(--color-ink);letter-spacing:-.005em;align-items:center;gap:14px;margin:0 0 18px;display:flex}.section-num{background:var(--_accent);width:46px;height:46px;color:var(--section-num-ink,var(--level-ink,#fff));font-size:var(--text-lg);font-weight:var(--w-semi);box-shadow:0 2px 7px var(--_accent);border-radius:16px;flex:none;justify-content:center;align-items:center;display:flex}@supports (color:color-mix(in lab, red, red)){.section-num{box-shadow:0 2px 7px color-mix(in srgb, var(--_accent) 38%, transparent)}}.section-card[data-tone=warmup] .section-num{background:var(--color-sun);--section-num-ink:#483d23}@supports (color:color-mix(in lab, red, red)){.section-card[data-tone=warmup] .section-num{--section-num-ink:color-mix(in srgb, var(--color-sun) 30%, #000)}}.section-card[data-tone=warmup] .section-num{box-shadow:0 2px 7px #f0cb7561}@supports (color:color-mix(in lab, red, red)){.section-card[data-tone=warmup] .section-num{box-shadow:0 2px 7px color-mix(in srgb, var(--color-sun) 38%, transparent)}}.section-card[data-tone=explore] .section-num{background:var(--color-sky);--section-num-ink:#1c3b3f}@supports (color:color-mix(in lab, red, red)){.section-card[data-tone=explore] .section-num{--section-num-ink:color-mix(in srgb, var(--color-sky) 30%, #000)}}.section-card[data-tone=explore] .section-num{box-shadow:0 2px 7px #5cc5d261}@supports (color:color-mix(in lab, red, red)){.section-card[data-tone=explore] .section-num{box-shadow:0 2px 7px color-mix(in srgb, var(--color-sky) 38%, transparent)}}.section-card[data-tone=predict] .section-num{background:var(--color-grape);--section-num-ink:#342d48}@supports (color:color-mix(in lab, red, red)){.section-card[data-tone=predict] .section-num{--section-num-ink:color-mix(in srgb, var(--color-grape) 30%, #000)}}.section-card[data-tone=predict] .section-num{box-shadow:0 2px 7px #ac96ef61}@supports (color:color-mix(in lab, red, red)){.section-card[data-tone=predict] .section-num{box-shadow:0 2px 7px color-mix(in srgb, var(--color-grape) 38%, transparent)}}.section-card[data-tone=investigate] .section-num{background:var(--color-mint);--section-num-ink:#083a2d}@supports (color:color-mix(in lab, red, red)){.section-card[data-tone=investigate] .section-num{--section-num-ink:color-mix(in srgb, var(--color-mint) 30%, #000)}}.section-card[data-tone=investigate] .section-num{box-shadow:0 2px 7px #1bc19661}@supports (color:color-mix(in lab, red, red)){.section-card[data-tone=investigate] .section-num{box-shadow:0 2px 7px color-mix(in srgb, var(--color-mint) 38%, transparent)}}.section-card[data-tone=plan] .section-num{background:var(--color-peach);--section-num-ink:#482c23}@supports (color:color-mix(in lab, red, red)){.section-card[data-tone=plan] .section-num{--section-num-ink:color-mix(in srgb, var(--color-peach) 30%, #000)}}.section-card[data-tone=plan] .section-num{box-shadow:0 2px 7px #f0927461}@supports (color:color-mix(in lab, red, red)){.section-card[data-tone=plan] .section-num{box-shadow:0 2px 7px color-mix(in srgb, var(--color-peach) 38%, transparent)}}.section-card[data-tone=debug] .section-num{background:var(--color-danger);--section-num-ink:#482129}@supports (color:color-mix(in lab, red, red)){.section-card[data-tone=debug] .section-num{--section-num-ink:color-mix(in srgb, var(--color-danger) 30%, #000)}}.section-card[data-tone=debug] .section-num{box-shadow:0 2px 7px #ef6e8861}@supports (color:color-mix(in lab, red, red)){.section-card[data-tone=debug] .section-num{box-shadow:0 2px 7px color-mix(in srgb, var(--color-danger) 38%, transparent)}}.section-card[data-tone=reflect] .section-num,.section-card[data-tone=extend] .section-num{background:var(--color-pink);--section-num-ink:#482531}@supports (color:color-mix(in lab, red, red)){.section-card[data-tone=reflect] .section-num,.section-card[data-tone=extend] .section-num{--section-num-ink:color-mix(in srgb, var(--color-pink) 30%, #000)}}.section-card[data-tone=reflect] .section-num,.section-card[data-tone=extend] .section-num{box-shadow:0 2px 7px #f07aa261}@supports (color:color-mix(in lab, red, red)){.section-card[data-tone=reflect] .section-num,.section-card[data-tone=extend] .section-num{box-shadow:0 2px 7px color-mix(in srgb, var(--color-pink) 38%, transparent)}}.section-body{--step-num-size:36px;--step-num-radius:12px;--step-num-bg:var(--step-1);--step-num-done:var(--color-go)}.build-step:nth-of-type(10n+1){--step-num-bg:var(--step-1)}.build-step:nth-of-type(10n+2){--step-num-bg:var(--step-2)}.build-step:nth-of-type(10n+3){--step-num-bg:var(--step-3)}.build-step:nth-of-type(10n+4){--step-num-bg:var(--step-4)}.build-step:nth-of-type(10n+5){--step-num-bg:var(--step-5)}.build-step:nth-of-type(10n+6){--step-num-bg:var(--step-6)}.build-step:nth-of-type(10n+7){--step-num-bg:var(--step-7)}.build-step:nth-of-type(10n+8){--step-num-bg:var(--step-8)}.build-step:nth-of-type(10n+9){--step-num-bg:var(--step-9)}.build-step:nth-of-type(10n){--step-num-bg:var(--step-10)}.bd-n,.step-num{width:var(--step-num-size);height:var(--step-num-size);border-radius:var(--step-num-radius);background:var(--step-num-bg);color:var(--step-num-ink,var(--step-num-bg));flex:none;justify-content:center;align-items:center;display:flex}@supports (color:color-mix(in lab, red, red)){.bd-n,.step-num{color:var(--step-num-ink,color-mix(in srgb, var(--step-num-bg) 22%, #000))}}.bd-n,.step-num{font:inherit;font-size:var(--text-sm);font-weight:var(--w-bold);box-shadow:0 3px 0 var(--step-num-bg);border:none;padding:0}@supports (color:color-mix(in lab, red, red)){.bd-n,.step-num{box-shadow:0 3px 0 color-mix(in srgb, var(--step-num-bg) 68%, #000)}}.bd-n{cursor:pointer;position:relative}.bd-n:after{content:"";width:44px;height:44px;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.bd-n:hover{filter:brightness(1.08)}.bd-n:focus-visible{outline:3px solid var(--focus-ring);outline-offset:2px}.build-step.is-checked .bd-n{--step-num-bg:var(--step-num-done)}@media (max-width:640px){.section-body{--step-num-size:32px;--step-num-radius:11px}}.section-icon{font-size:var(--text-xl);line-height:1}.section-label{font-size:var(--text-xs);font-weight:var(--w-bold);color:var(--_accent-ink);letter-spacing:.06em;text-transform:uppercase;border-left:4px solid var(--_accent);align-items:center;gap:6px;margin:16px 0 8px;padding-left:10px;display:flex}.section-body{font-size:var(--text-md);line-height:1.75}.section-body p{margin-bottom:14px}.section-body ul:not([class]),.section-body ol:not([class]){margin:14px 0;padding-inline-start:22px}.section-body li{margin-bottom:6px}.section-body strong{color:var(--_accent-ink);font-weight:var(--w-medium)}.section-body code,code:where(:not([class]):not(pre code)){background:var(--color-sun-soft);color:#7a4d00;font-family:var(--font-mono);font-size:.95em;font-weight:var(--w-medium);border-radius:6px;padding:2px 8px}.section-body :not(pre)>code,code:where(:not([class]):not(pre code)){overflow-wrap:break-word}.card{background:var(--color-surface);border:2px solid var(--color-hairline);border-radius:var(--radius-card-sm);padding:16px 18px}.callout{border-radius:var(--radius-card-sm);background:var(--_accent-soft);border-left:5px solid var(--_accent);align-items:flex-start;gap:12px;margin:14px 0;padding:14px 16px;display:flex}.callout p{margin:0}.callout--go{background:var(--color-mint-soft);border-left-color:var(--color-mint)}.callout--warn{background:var(--color-sun-soft);border-left-color:var(--color-sun)}.callout--danger{background:var(--color-danger-soft);border-left-color:var(--color-danger)}.tip{border-left:4px solid var(--color-sun);border-radius:var(--radius-card-sm);font-size:var(--text-sm);background:#fffde7;align-items:flex-start;gap:10px;margin:14px 0;padding:12px 14px;line-height:1.5;display:flex}.tip .tip-icon{font-size:var(--text-lg);flex-shrink:0;margin-top:1px}.tip p{margin:0}.vocab-grid{grid-template-columns:repeat(var(--vocab-fit,auto-fit), minmax(var(--vocab-min,150px), 1fr));gap:var(--vocab-gap,14px);margin:var(--vocab-margin,18px 0);display:grid}.vocab-card{background:var(--vocab-bg,var(--color-surface));border:var(--vocab-border,3px solid var(--_accent));position:relative}@supports (color:color-mix(in lab, red, red)){.vocab-card{border:var(--vocab-border,3px solid color-mix(in srgb, var(--_accent) 42%, #fff))}}.vocab-card{border-radius:var(--vocab-radius,var(--radius-card-sm));box-shadow:var(--vocab-shadow,0 2px 6px #26324a12);padding:var(--vocab-pad,18px 14px);text-align:var(--vocab-align,center)}.vocab-icon{font-size:var(--vocab-icon-size,2.4rem);margin-bottom:var(--vocab-icon-gap,6px);line-height:1;display:block}.vocab-term{color:var(--vocab-term-color,var(--_accent-ink));font-family:var(--vocab-term-font,inherit);font-size:var(--vocab-term-size,var(--text-base));font-weight:var(--vocab-term-weight,500);text-transform:var(--vocab-term-transform,none);margin-bottom:4px;display:block}.vocab-def{color:var(--vocab-def-color,var(--color-muted));font-size:var(--vocab-def-size,var(--text-sm));line-height:var(--vocab-def-lh,1.45);display:block}.vocab-grid--tap .vocab-card{cursor:pointer;transition:transform .15s,border-color .2s,box-shadow .2s}.vocab-grid--tap .vocab-card:hover,.vocab-grid--tap .vocab-card:focus-visible{border-color:var(--_accent);transform:translateY(-3px);box-shadow:0 6px 14px #26324a1f}.vocab-grid--tap .vocab-def{max-height:0;transition:max-height .3s;overflow:hidden}.vocab-grid--tap .vocab-card.open .vocab-def{max-height:var(--vocab-def-open,16rem);margin-top:6px}.vocab-grid--tap .vocab-card:after{content:var(--vocab-hint,"🔊 tap to hear");font-size:var(--vocab-hint-size,var(--text-2xs));color:var(--vocab-hint-color,var(--_accent-ink));opacity:.8;inset-inline-end:8px;position:absolute;bottom:6px}.vocab-grid--tap .vocab-card.open:after{content:""}[data-nospeech] .vocab-grid--tap .vocab-card:after{content:var(--vocab-hint-quiet,"tap to see")}edux-predict{margin:var(--predict-margin,12px 0 0);display:block}.predict-q{font-weight:var(--w-semi,600);margin:var(--predict-q-margin,12px 0 8px);font-size:var(--predict-q-size,1em);display:var(--predict-q-display,block);align-items:center;gap:var(--predict-q-gap,10px)}.predict-q:before{content:var(--predict-q-icon,none);font-size:var(--predict-q-icon-size,1.5rem)}.predict-card{background:var(--predict-card-bg,none);border:var(--predict-card-border,0 solid);border-radius:var(--predict-card-radius,0);padding:var(--predict-card-pad,0);margin:var(--predict-card-margin,var(--predict-margin,12px 0 0))}.predict-options{gap:var(--predict-gap,8px);margin:var(--predict-options-margin,0 0 10px);flex-wrap:wrap;padding:0;list-style:none;display:flex}.predict-option{min-width:min(100%, var(--predict-opt-min,180px));background:var(--predict-opt-bg,var(--color-surface));border:var(--predict-opt-border,1px solid var(--color-hairline));border-radius:var(--predict-opt-radius,12px);padding:var(--predict-opt-pad,12px 14px);cursor:pointer;flex:auto}button.predict-option{font:inherit;color:inherit;text-align:start;align-items:baseline;gap:var(--predict-opt-gap,10px);transition:box-shadow .12s,transform 80ms;display:flex}.predict-option:hover{border-color:var(--_accent)}.predict-option:active{transform:scale(.99)}.predict-option:focus-visible{outline:3px solid var(--focus-ring);outline-offset:2px}.opt-letter{font-weight:var(--w-bold,700);color:var(--_accent-ink);flex:none}.opt-text{flex:auto}.predict-option.is-correct{background:var(--predict-ok-bg,#e8f5e9);border-color:var(--predict-ok-line,#4caf50)}.predict-option.is-wrong{background:var(--predict-no-bg,#ffebee);border-color:var(--predict-no-line,#ef5350)}.predict-option[aria-disabled=true]{cursor:default}.predict-option.is-locked:not(.is-correct):not(.is-picked){opacity:.55}.predict-option.is-picked{box-shadow:0 0 0 2px var(--_accent)}@supports (color:color-mix(in lab, red, red)){.predict-option.is-picked{box-shadow:0 0 0 2px color-mix(in srgb, var(--_accent) 45%, transparent)}}.predict-fb{min-height:1.4em;font-weight:var(--w-semi,600);font-size:var(--text-sm);margin:8px 0 0}.predict-fb.is-right{color:var(--predict-ok-ink,#2e7d32)}.predict-fb.is-wrong,.predict-fb.is-error{color:var(--predict-no-ink,#c62828)}.predict-why{padding:var(--predict-why-pad,10px 14px);background:var(--predict-why-bg,var(--_accent-soft));border-radius:var(--predict-why-radius,12px);font-size:var(--text-sm);margin:8px 0 0}.predict-why>p{margin:0}.predict-why>p+p{margin-top:6px}.predict-why__trap{font-weight:var(--w-semi,600);color:var(--predict-no-ink,#c62828)}.predict-why:has(>.predict-why__trap):not(:has(>p:not(.predict-why__trap))){background:var(--predict-no-soft,#fdecea)}.predict-again{margin-top:10px}edux-numvary{margin:var(--predict-margin,12px 0 0);display:block}.numvary-pic{margin:var(--numvary-pic-margin,0 0 10px)}.numvary-pic>:last-child{margin-bottom:0}.numvary-row{align-items:center;gap:var(--numvary-gap,8px);margin:var(--numvary-row-margin,10px 0 0);flex-wrap:wrap;display:flex}.numvary-input{width:var(--numvary-input-w,7.5em);font:inherit;font-weight:var(--w-semi,600);text-align:center;padding:var(--predict-opt-pad,12px 14px);border:var(--predict-opt-border,1px solid var(--color-hairline));border-radius:var(--predict-opt-radius,12px);background:var(--predict-opt-bg,var(--color-surface));color:inherit;flex:none}.numvary-input:focus-visible{outline:3px solid var(--focus-ring);outline-offset:2px}.numvary-unit{color:var(--color-muted);font-size:var(--text-sm);flex:none}.seq-strip{align-items:center;gap:var(--seq-gap,8px);margin:var(--seq-margin,10px 0);padding:var(--seq-pad,0);flex-wrap:wrap;display:flex}.seq-step{background:var(--seq-step-bg,var(--_accent-soft));border-radius:var(--seq-step-radius,var(--radius-pill));padding:var(--seq-step-pad,6px 14px);color:var(--seq-step-ink,currentcolor);font-size:var(--seq-step-size,var(--text-sm));font-weight:var(--seq-step-weight,var(--w-semi));box-shadow:var(--seq-step-shadow,none)}.extend-steps{margin:var(--xsteps-margin,8px 0 2px);padding-left:var(--xsteps-indent,1.5em);gap:var(--xsteps-gap,3px);font-size:var(--text-sm);color:var(--color-ink-soft,inherit);list-style:decimal;display:grid}.extend-steps>li{padding-left:2px}.extend-steps>li::marker{color:var(--_accent);font-weight:var(--w-bold)}.bd-steps{margin:10px 0}.bd-body{min-width:0}.bd-check{align-items:center;gap:var(--bd-check-gap,8px);min-height:var(--bd-check-h,44px);cursor:pointer;display:flex}.bd-box{width:var(--bd-box-size,24px);height:var(--bd-box-size,24px);accent-color:var(--_accent);cursor:pointer}.bd-progress{background:var(--bd-track,var(--color-hairline));border-radius:var(--radius-pill);height:8px;overflow:hidden}.bd-progress i{background:var(--_accent);border-radius:var(--radius-pill);width:0;height:100%;transition:width .25s;display:block}.bd-count{font-size:var(--bd-count-size,var(--text-xs));font-weight:var(--bd-count-weight,600);color:var(--bd-count-color,var(--color-muted));margin:6px 0 12px}.bd-open{background:var(--_accent-soft);border:var(--bd-open-border,2px solid var(--_accent-deep));border-radius:var(--bd-open-radius,var(--radius-card-sm));padding:var(--bd-open-pad,14px 18px);margin:var(--bd-open-margin,10px 0 16px);flex-wrap:wrap;align-items:center;gap:14px;display:flex}.bd-open__hint{font-size:var(--text-sm);color:var(--_accent-ink);flex:220px;line-height:1.5}.compare-grid{grid-template-columns:var(--compare-cols,minmax(0, 1fr) minmax(0, 1fr));gap:var(--compare-gap,14px);margin:var(--compare-margin,14px 0);display:grid}.compare-card{border-radius:var(--compare-radius,var(--radius-card-sm));padding:var(--compare-pad,12px);background:var(--compare-bg,none);border:var(--compare-border,0 solid)}.compare-label{font-size:var(--compare-label-size,var(--text-sm));font-weight:var(--compare-label-weight,700);color:var(--compare-label-ink,currentcolor)}.note{background:var(--note-bg,var(--color-sun-soft));border:var(--note-border,2px dashed var(--color-sun));border-radius:var(--radius-card-sm);font-size:var(--text-sm);margin:14px 0;overflow:hidden}.note>summary{cursor:pointer;-webkit-user-select:none;user-select:none;font-weight:var(--w-semi);color:var(--note-ink,#8a6000);font-size:var(--text-xs);letter-spacing:.04em;text-transform:uppercase;align-items:center;gap:8px;padding:10px 14px;list-style:none;display:flex}.note>summary::-webkit-details-marker{display:none}.note>summary:after{content:"▼";font-size:var(--text-2xs);color:var(--note-ink,#8a6000);opacity:.7;margin-left:auto;transition:transform .2s}.note[open]>summary:after{transform:rotate(180deg)}.note>summary:hover{background:var(--note-hover,#ffe08266)}.note__body{color:var(--color-ink);border-top:1px dashed var(--note-rule,#a0700040);padding:10px 14px 14px;line-height:1.55}.note--teacher>summary:before{content:"👩‍🏫"}.lesson-outcomes{border:2px solid var(--_accent);border-radius:var(--radius-card);background:var(--color-surface);box-shadow:var(--shadow-card);margin:0 0 20px;overflow:hidden}.lesson-outcomes>summary{cursor:pointer;-webkit-user-select:none;user-select:none;background:linear-gradient(135deg, var(--_accent-deep), var(--_accent));color:#fff;font-weight:var(--w-bold);align-items:center;gap:8px;padding:13px 18px;list-style:none;display:flex}.lesson-outcomes>summary::-webkit-details-marker{display:none}.lesson-outcomes>summary:after{content:"▼";font-size:var(--text-xs);opacity:.85;margin-left:auto;transition:transform .2s}.lesson-outcomes[open]>summary:after{transform:rotate(180deg)}.lo-head-icon{font-size:var(--text-lg)}.lo-head-title{font-size:var(--text-base);letter-spacing:.02em}.lo-badge{font-size:var(--text-2xs);font-weight:var(--w-semi);color:#ffffffeb;border-radius:var(--radius-pill);border:1px solid #ffffff80;margin-left:6px;padding:2px 10px}.lo-aligned{background:var(--_accent-soft);color:var(--_accent-ink);font-size:var(--text-xs);padding:8px 18px}.lo-aligned a{align-items:center;min-height:44px;display:inline-flex}.lo-table{border-collapse:collapse;width:100%}.lo-table td{font-size:var(--text-sm);border-top:1px solid var(--color-hairline);vertical-align:top;padding:11px 18px}.lo-table tr:first-child td{border-top:none}.lo-table tr:nth-child(2n){background:#dbe3ef59}@supports (color:color-mix(in lab, red, red)){.lo-table tr:nth-child(2n){background:color-mix(in srgb, var(--color-hairline) 35%, transparent)}}.lo-key{color:var(--_accent-ink);font-weight:var(--w-semi);white-space:nowrap;width:38%}.lo-val{color:var(--color-ink)}@keyframes edu-pop{0%{transform:scale(1)}50%{transform:scale(1.04)}to{transform:scale(1)}}.btn{cursor:pointer;font-family:inherit;font-weight:var(--w-bold);font-size:var(--btn-fs,var(--text-sm));background:var(--_accent-deep);align-items:center;gap:8px;display:inline-flex}@supports (color:color-mix(in lab, red, red)){.btn{background:color-mix(in srgb, var(--_accent-deep) 88%, #000)}}.btn{color:var(--color-on-accent);border-radius:var(--radius-pill);padding:var(--btn-pad,10px 22px);border:none;min-height:44px;transition:transform .12s,box-shadow .12s,background .15s;box-shadow:0 2px 5px #00000024}.btn:hover{transform:translateY(-1px);box-shadow:0 4px 10px #0000002e}.btn:active{transform:translateY(0);box-shadow:0 1px 3px #0000001f}.btn--go{background:#127d62}@supports (color:color-mix(in lab, red, red)){.btn--go{background:color-mix(in srgb, var(--color-mint) 65%, #000)}}.btn--go{color:var(--color-on-accent)}.btn--danger{background:#a74d5f}@supports (color:color-mix(in lab, red, red)){.btn--danger{background:color-mix(in srgb, var(--color-danger) 70%, #000)}}.btn--danger{color:var(--color-on-accent)}.btn--ghost{color:var(--_accent-ink);border:2px solid var(--_accent);box-shadow:none;background:0 0}.btn-primary{background:var(--_accent-deep)}@supports (color:color-mix(in lab, red, red)){.btn-primary{background:color-mix(in srgb, var(--_accent-deep) 88%, #000)}}.btn-primary{color:var(--color-on-accent)}.btn-ghost,.btn-secondary{color:var(--_accent-ink);border:3px solid var(--_accent);box-shadow:none;background:#fff}.btn-ghost:hover,.btn-secondary:hover{background:var(--_accent-soft)}.btn:disabled,.btn[disabled],.btn[aria-disabled=true]{color:var(--color-muted);cursor:not-allowed;box-shadow:none;pointer-events:none;background:#d6d3cd;border-color:#d6d3cd;transform:none}.assessment-link{color:#fff;cursor:pointer;font-family:inherit;font-weight:var(--w-semi);font-size:var(--text-base);letter-spacing:.01em;background:linear-gradient(135deg,#ff8a65 0%,#ff6b9d 100%);border:none;border-radius:999px;align-items:center;gap:10px;margin-top:20px;padding:16px 30px;text-decoration:none;transition:transform .15s,box-shadow .15s;display:inline-flex;box-shadow:0 2px 5px #00000024}.assessment-link:hover{transform:translateY(-1px);box-shadow:0 4px 10px #0000002e}.assessment-link:active{transform:translateY(0);box-shadow:0 1px 3px #0000001f}.site-footer{background:linear-gradient(135deg, var(--_accent-deep) 0%, var(--_accent-deep) 100%)}@supports (color:color-mix(in lab, red, red)){.site-footer{background:linear-gradient(135deg, color-mix(in srgb, var(--_accent-deep) 70%, #000) 0%, color-mix(in srgb, var(--_accent-deep) 86%, #000) 100%)}}.site-footer{color:var(--color-on-accent);margin-top:var(--space-band);font-family:var(--font-display);position:relative;overflow:hidden}.site-footer:before{content:"";opacity:.15;background:#fff;border-radius:50%;width:260px;height:260px;position:absolute;bottom:-80px;right:-60px}.footer-inner{max-width:var(--content);padding:34px var(--gutter);z-index:2;text-align:center;flex-direction:column;align-items:center;gap:16px;margin:0 auto;display:flex;position:relative}.footer-brand{align-items:center;gap:12px;display:flex}.footer-home{justify-content:center;align-items:center;min-width:44px;min-height:44px;display:inline-flex}.footer-brand-name{font-size:calc(16px * var(--edux-tscale,1));font-weight:var(--w-bold);letter-spacing:.06em;color:var(--color-on-accent)}.footer-brand-sub{font-size:calc(12px * var(--edux-tscale,1));color:#ffffffd1;letter-spacing:.1em;font-weight:var(--w-medium)}.footer-copy{font-size:calc(13px * var(--edux-tscale,1));color:var(--color-on-accent-muted);font-weight:var(--w-medium);letter-spacing:.02em}.footer-cta{flex-wrap:wrap;justify-content:center;gap:10px;display:flex}.footer-pill{border-radius:var(--radius-pill);min-height:44px;font-size:var(--text-xs);font-weight:var(--w-semi);color:var(--color-on-accent);background:#ffffff24;border:1px solid #ffffff73;align-items:center;gap:7px;padding:8px 17px;text-decoration:none;transition:background .18s,border-color .18s;display:inline-flex}.footer-pill:hover{background:#ffffff42;border-color:#ffffffbf}edux-header,edux-footer,edux-chapter-grid,edux-hero,edux-level-grid,edux-answer-review,edux-chapter-nav,edux-assess-nav,edux-assess-header,edux-dashboard,edux-login,edux-attendance,edux-score-report,edux-progress{display:block}.edux-badge{flex-shrink:0;align-items:center;gap:8px;margin-left:auto;display:inline-flex}.edux-badge__pill{min-height:44px;font-size:var(--text-xs);font-weight:var(--w-bold);color:var(--color-on-accent);border-radius:var(--radius-pill);text-overflow:ellipsis;white-space:nowrap;background:#0000003d;border:1px solid #ffffff57;align-items:center;max-width:160px;padding:5px 15px;text-decoration:none;display:inline-flex;overflow:hidden}.edux-badge__pill:hover{background:#00000057}.edux-badge__logout{cursor:pointer;min-height:44px;font-family:inherit;font-size:var(--text-2xs);font-weight:var(--w-semi);color:var(--color-on-accent);opacity:.86;background:0 0;border:none;padding:4px 2px}.edux-badge__logout:hover,.edux-badge__logout:focus-visible{opacity:1}:is(.app-header:not(.hero),.assess-header-inner) :is(.edux-badge__pill,.edux-badge__logout){background:var(--chip-on-accent-bg,var(--_accent-chip));border:1px solid var(--chip-on-accent-border,#ffffff4d)}:is(.app-header:not(.hero),.assess-header-inner) .edux-badge__logout{border-radius:var(--radius-pill);padding:4px 14px}:is(.app-header:not(.hero),.assess-header-inner) .edux-badge__pill:hover{background:var(--chip-on-accent-bg,var(--_accent-chip));border-color:var(--color-on-accent)}.rank-medal{color:var(--_accent-ink);background:linear-gradient(#fff 0%,#fef9e6 100%);border:2px solid #ffffffd9;border-radius:14px;align-items:stretch;margin-bottom:12px;padding:0;display:inline-flex;position:relative;overflow:hidden;box-shadow:0 4px #0000002e,0 8px 16px #00000026}.rank-medal:before{content:"";background:linear-gradient(#ffe082 0%,#ffb300 100%);width:6px;position:absolute;top:0;bottom:0;left:0}.rank-medal-icon{width:48px;font-size:var(--text-xl);background:linear-gradient(135deg,#fff8d8 0%,#ffe082 100%);border-right:1px solid #0000000f;justify-content:center;align-items:center;display:flex}.rank-medal-text{flex-direction:column;justify-content:center;padding:6px 16px 6px 14px;display:flex}.rank-medal-tier{font-size:var(--text-2xs);font-weight:var(--w-semi);letter-spacing:.12em;text-transform:uppercase;color:var(--_accent-ink);opacity:.7;line-height:1.1}.rank-medal-name{font-size:var(--text-base);font-weight:var(--w-bold);letter-spacing:.01em;color:var(--_accent-ink);line-height:1.15}.lx-main{max-width:var(--content);padding:36px var(--gutter) 72px;margin:0 auto}.lx-label{font-size:var(--text-2xs);font-weight:var(--w-bold);letter-spacing:.14em;text-transform:uppercase;color:var(--_accent-ink);margin-bottom:18px}.lx-grid{gap:var(--gap-grid);grid-template-columns:repeat(auto-fill,minmax(230px,1fr));display:grid}.lx-card{background:var(--color-surface,#fff);color:inherit;box-shadow:0 3px 10px var(--_accent), 0 14px 34px #0000000d;border:2px solid #0000;border-radius:18px;flex-direction:column;gap:5px;padding:20px 22px;text-decoration:none;display:flex;position:relative;overflow:hidden}@supports (color:color-mix(in lab, red, red)){.lx-card{box-shadow:0 3px 10px color-mix(in srgb, var(--_accent) 10%, transparent), 0 14px 34px #0000000d}}.lx-card{transition:transform .2s,box-shadow .2s,border-color .2s}.lx-card:before{content:"";background:linear-gradient(90deg, var(--_accent), var(--_accent-deep));width:100%;height:5px;transition:height .28s;position:absolute;top:0;left:0}.lx-card:hover{box-shadow:0 8px 18px var(--_accent), 0 22px 46px #00000017;transform:translateY(-4px)}@supports (color:color-mix(in lab, red, red)){.lx-card:hover{box-shadow:0 8px 18px color-mix(in srgb, var(--_accent) 16%, transparent), 0 22px 46px #00000017}}.lx-card:hover{border-color:var(--_accent)}@supports (color:color-mix(in lab, red, red)){.lx-card:hover{border-color:color-mix(in srgb, var(--_accent) 45%, #fff)}}.lx-card:hover:before{height:9px}.lx-num{font-size:var(--text-2xs);font-weight:var(--w-bold);letter-spacing:.1em;color:var(--_accent-ink);text-transform:uppercase}.lx-title{font-family:var(--font-display);font-size:var(--text-md);font-weight:var(--w-bold);color:var(--color-ink);line-height:1.3}.lx-desc{font-size:var(--text-xs);color:var(--color-muted);margin-top:4px;font-weight:400;line-height:1.35}.lx-badge{font-size:var(--text-xs);position:absolute;top:14px;right:16px}@media (max-width:640px){.lx-grid{grid-template-columns:1fr 1fr}}@media (max-width:400px){.lx-grid{grid-template-columns:1fr}}.lx-nav{max-width:var(--content);padding:26px var(--gutter) 0;border-top:1px solid var(--color-hairline);margin:56px auto 0}.lx-nav__row{grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:10px;display:grid}.lx-nav__lv{--_accent:var(--level,var(--color-accent));--_accent-deep:var(--level-deep,var(--color-accent-deep));--_accent-soft:var(--level-soft,var(--color-accent-soft));border-radius:var(--radius-card-sm);border:1px solid var(--color-hairline);background:#fff;gap:2px;padding:12px 14px;text-decoration:none;transition:border-color .12s,background .12s;display:grid}.lx-nav__lv:hover,.lx-nav__lv.is-on{border-color:var(--_accent);background:var(--_accent-soft)}.lx-nav__lv.is-on{cursor:default}.lx-nav__lv .lx-title{font-size:var(--text-sm)}.lx-card--taught{border-color:#7cd9ba}@supports (color:color-mix(in lab, red, red)){.lx-card--taught{border-color:color-mix(in srgb, var(--color-go) 55%, #fff)}}.lx-card--locked{opacity:.62;cursor:not-allowed;pointer-events:none}.lx-lock{font-size:var(--text-xs);opacity:.6;position:absolute;top:14px;right:16px}.lx-card--feature{padding:24px}.lx-card--feature .lx-title{font-size:var(--text-lg)}.lx-card--feature .lx-desc{font-size:var(--text-sm)}.align-wrap{width:min(100%, var(--hero-col,1180px));padding:0 var(--gutter,24px) 3rem;margin:0 auto}.align-card{background:var(--align-bg,#fff);border:1px solid var(--align-border,#0f172a1a);border-radius:var(--align-radius,20px);box-shadow:var(--align-shadow,0 10px 30px #0f172a14);flex-wrap:wrap;justify-content:center;align-items:center;gap:22px;padding:24px 26px;display:flex}.align-badge{min-width:var(--align-badge-minw,150px);color:var(--align-badge-ink,#fff);background:var(--align-badge-bg,linear-gradient(135deg, var(--_accent), var(--_accent-deep)));border-radius:16px;flex-direction:column;flex:none;justify-content:center;align-items:center;padding:18px 16px;display:flex}.align-badge .acr{font-family:var(--font-display);font-size:var(--text-xl);letter-spacing:.04em;font-weight:800}.align-badge .scope{font-size:var(--text-2xs);font-weight:var(--w-bold);letter-spacing:.06em;opacity:.86;text-align:center;margin-top:3px}.align-text{flex:1;min-width:250px}.align-text .lead{font-size:var(--text-sm);font-weight:var(--w-bold);color:var(--align-lead-ink,var(--color-ink));margin:0;line-height:1.5}.concepts{flex-wrap:wrap;gap:7px;margin-top:12px;display:flex}.concept{font-size:var(--text-2xs);font-weight:var(--w-semi);color:var(--concept-ink,var(--_accent-ink));background:var(--concept-bg,var(--_accent))}@supports (color:color-mix(in lab, red, red)){.concept{background:var(--concept-bg,color-mix(in srgb, var(--_accent) 12%, #fff))}}.concept{border:1px solid var(--concept-border,var(--_accent))}@supports (color:color-mix(in lab, red, red)){.concept{border:1px solid var(--concept-border,color-mix(in srgb, var(--_accent) 26%, #fff))}}.concept{border-radius:var(--radius-pill);padding:4px 11px}.align-link{font-size:var(--text-xs);font-weight:var(--w-bold);color:var(--align-link-ink,var(--_accent-ink));--tick-ring:var(--align-link-ink,var(--_accent-ink));align-items:center;gap:6px;min-height:44px;margin-top:14px;text-decoration:none;display:inline-flex}.align-link .tick{background:var(--tick-ring);width:16px;height:16px;color:var(--align-bg,#fff);border-radius:50%;flex:none;place-items:center;font-size:.6rem;font-weight:800;display:inline-grid}.align-link:hover{text-decoration:underline}@media (max-width:620px){.align-card{gap:12px;padding:16px}.align-badge{border-radius:12px;flex-direction:row;align-items:baseline;gap:8px;width:100%;min-width:0;padding:10px 14px}.align-badge .acr{font-size:var(--text-md)}.align-text{min-width:0}.align-text .lead{line-height:1.4}.concepts{gap:6px;margin-top:8px;line-height:1.2}.concept{padding:3px 9px}}@media (max-width:560px){.align-card{gap:16px;padding:20px 16px}.align-badge{min-width:100%;padding:15px 12px}.align-text{min-width:0}}body.edux-scene-deep{--align-bg:linear-gradient(158deg, #ffffff0e, #ffffff05);--align-border:#ffffff16;--align-shadow:0 18px 40px #00000061;--align-lead-ink:#fff;--align-desc-ink:#e7ecff9e;--align-link-ink:var(--_accent)}@supports (color:color-mix(in lab, red, red)){body.edux-scene-deep{--align-link-ink:color-mix(in srgb, var(--_accent) 46%, #dbe2f5)}}body.edux-scene-deep{--concept-ink:#e7ecffc7;--concept-bg:#ffffff0e;--concept-border:#ffffff1a}body.edux-scene-deep .align-card{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}body.edux-scene-deep .align-link .tick{color:#0b1020}.stepper{flex-wrap:wrap;justify-content:center;align-items:stretch;gap:.6rem;display:flex}.step{text-align:center;border-radius:var(--radius-card-sm);background:var(--tone,var(--_accent));flex-direction:column;justify-content:center;align-items:center;min-width:120px;padding:.7rem 1.1rem;display:flex}@supports (color:color-mix(in lab, red, red)){.step{background:color-mix(in srgb, var(--tone,var(--_accent)) 9%, #fff)}}.step{border:2px solid var(--tone,var(--_accent))}@supports (color:color-mix(in lab, red, red)){.step{border:2px solid color-mix(in srgb, var(--tone,var(--_accent)) 30%, #fff)}}.step__lvl{font-family:var(--font-display);font-weight:800;font-size:var(--text-md);color:var(--tone,var(--_accent-deep));line-height:1.05}@supports (color:color-mix(in lab, red, red)){.step__lvl{color:color-mix(in srgb, var(--tone,var(--_accent-deep)) 55%, #000)}}.step__cap{font-size:var(--text-2xs);font-weight:var(--w-semi);color:var(--color-muted);margin-top:.25rem}.step-arrow{color:var(--_accent);font-weight:800;font-size:var(--text-lg);align-items:center;display:flex}.home-head{text-align:center;max-width:42rem;margin:0 auto 1.6rem}.home-eyebrow{font-size:var(--text-2xs);letter-spacing:.1em;text-transform:uppercase;color:var(--_accent-ink);font-weight:800}.home-title{font-family:var(--font-display);font-size:var(--text-2xl);letter-spacing:-.01em;color:var(--color-ink);margin-top:.3rem;font-weight:800}.home-sub{font-size:var(--text-sm);color:var(--color-muted);margin-top:.5rem;line-height:1.6}.feature-band{background:var(--tone,var(--_accent))}@supports (color:color-mix(in lab, red, red)){.feature-band{background:color-mix(in srgb, var(--tone,var(--_accent)) 7%, #fff)}}.feature-band{border:2px solid var(--tone,var(--_accent))}@supports (color:color-mix(in lab, red, red)){.feature-band{border:2px solid color-mix(in srgb, var(--tone,var(--_accent)) 22%, #fff)}}.feature-band{border-radius:var(--radius-card);padding:26px}.feature-badge{border-radius:var(--radius-pill);background:var(--tone,var(--_accent));align-items:center;gap:.5rem;padding:.4rem .9rem;display:inline-flex}@supports (color:color-mix(in lab, red, red)){.feature-badge{background:color-mix(in srgb, var(--tone,var(--_accent)) 16%, #fff)}}.feature-badge{color:var(--tone,var(--_accent-deep))}@supports (color:color-mix(in lab, red, red)){.feature-badge{color:color-mix(in srgb, var(--tone,var(--_accent-deep)) 55%, #000)}}.feature-badge{font-weight:800;font-size:var(--text-2xs);letter-spacing:.06em;text-transform:uppercase}.home-mesh{border-radius:var(--radius-card);position:relative;overflow:hidden}.home-mesh__blob{filter:blur(42px);opacity:.5;pointer-events:none;border-radius:50%;position:absolute}.home-mesh__blob--1{background:var(--mesh-1,var(--_accent));width:240px;height:240px;top:-60px;left:-40px}.home-mesh__blob--2{background:var(--mesh-2,var(--_accent-deep));width:220px;height:220px;top:-30px;right:-30px}.home-mesh__blob--3{background:var(--mesh-3,var(--_accent-soft));width:200px;height:200px;bottom:-70px;left:30%}.home-mesh>:not(.home-mesh__blob){z-index:2;position:relative}.app-header.hero .mascot{margin:0 auto 18px}.app-header.hero .stepper{margin-top:18px}.hero-cta{flex-wrap:wrap;justify-content:center;gap:10px;margin-top:20px;display:flex}.app-header.hero:not(.is-light) .hero-step{background:#ffffff29;border-color:#ffffff4d}.app-header.hero:not(.is-light) .hero-step .step__lvl{color:#fff}.app-header.hero:not(.is-light) .hero-step .step__cap{color:#ffffffd1}.app-header.hero:not(.is-light) .step-arrow{color:#fff}.app-header.hero.is-light{color:var(--color-ink);box-shadow:none;background:0 0}.app-header.hero.is-light:before,.app-header.hero.is-light:after{display:none}.app-header.hero.is-light h1{color:var(--color-ink)}.app-header.hero.is-light .word{background:linear-gradient(90deg, var(--_accent), var(--_accent-deep));color:#0000;-webkit-background-clip:text;background-clip:text;animation:none}.app-header.hero.is-light p.sub{color:var(--color-muted)}.app-header.hero.is-light .aux-badge{background:var(--_accent-soft);border:1px solid var(--_accent)}@supports (color:color-mix(in lab, red, red)){.app-header.hero.is-light .aux-badge{border:1px solid color-mix(in srgb, var(--_accent) 30%, #fff)}}.app-header.hero.is-light .aux-badge{color:var(--_accent-ink)}.home-curriculum{max-width:var(--content);padding:8px var(--gutter) 0;margin:0 auto}.home-curriculum .home-head{margin-bottom:1.4rem}.home-band{--_accent:var(--tone,var(--color-accent));--_accent-deep:var(--tone-deep,var(--color-accent-deep));--_accent-soft:var(--tone-soft,var(--color-accent-soft))}.home-band+.home-band{margin-top:28px}.home-band--headed+.home-band--headed{border-top:1px solid var(--color-hairline);margin-top:32px;padding-top:32px}.home-band__title{font-family:var(--font-display);font-size:var(--text-xl);letter-spacing:-.01em;color:var(--_accent-ink);margin:.6rem 0 .3rem;font-weight:800}.home-band__sub{color:var(--color-muted);font-size:var(--text-sm);margin:0 0 1.1rem}.lx-card__count{font-size:var(--text-2xs);letter-spacing:.04em;color:var(--_accent-ink);background:var(--_accent);align-self:flex-start;margin-top:8px;font-weight:800}@supports (color:color-mix(in lab, red, red)){.lx-card__count{background:color-mix(in srgb, var(--_accent) 14%, #fff)}}.lx-card__count{border-radius:var(--radius-pill);padding:3px 11px}.bg-brand{background-color:var(--_accent)}.bg-brand-light{background-color:var(--_accent-soft)}.bg-brand-dark{background-color:var(--_accent-deep)}.text-brand{color:var(--_accent)}.text-brand-dark{color:var(--_accent-ink)}.text-brand\/70{color:var(--_accent)}@supports (color:color-mix(in lab, red, red)){.text-brand\/70{color:color-mix(in srgb, var(--_accent) 70%, transparent)}}.text-white\/70{color:#ffffffb3}.border-brand,.border-brand-border{border-color:var(--_accent)}@supports (color:color-mix(in lab, red, red)){.border-brand-border{border-color:color-mix(in srgb, var(--_accent) 45%, #fff)}}.ring-brand{--tw-ring-color:var(--_accent)}.rounded-card{border-radius:var(--radius-card)}.shadow-card{box-shadow:0 4px 12px var(--_accent)}@supports (color:color-mix(in lab, red, red)){.shadow-card{box-shadow:0 4px 12px color-mix(in srgb, var(--_accent) 14%, transparent)}}.hover\:bg-brand:hover{background-color:var(--_accent)}.hover\:bg-brand-dark:hover{background-color:var(--_accent-deep)}.hover\:bg-brand-light:hover{background-color:var(--_accent-soft)}.hover\:text-brand:hover{color:var(--_accent)}.hover\:border-brand:hover,.focus\:border-brand:focus{border-color:var(--_accent)}html[data-auth=guest] .app-header [role=progressbar]{display:none}.prog-dash .card{border:1.5px solid var(--color-hairline);background:#fff;border-radius:20px;margin-bottom:1rem;padding:1.25rem 1.5rem}.prog-dash .prog-row{align-items:center;gap:1.1rem;display:flex}.prog-dash .login-screen{justify-content:center;align-items:center;min-height:70vh;padding:2rem 1.25rem;display:flex}.prog-dash .login-card{border:2px solid var(--color-hairline);background:#fff;border-radius:20px;width:100%;max-width:22rem;padding:2rem;box-shadow:0 8px 32px #28285a1f}.prog-dash .login-icon{font-size:var(--text-3xl);text-align:center;margin:0}.prog-dash .login-title{font-size:var(--text-md);font-weight:var(--w-bold);color:var(--color-ink);text-align:center;margin:.4rem 0 .3rem}.prog-dash .login-sub{font-size:var(--text-xs);color:var(--color-muted);text-align:center;margin:0 0 1.5rem}.prog-dash .acct-label{font-size:var(--text-2xs);text-transform:uppercase;letter-spacing:.06em;color:var(--_accent-ink);margin:0 0 .5rem;font-weight:800}.prog-dash .acct-label.new{color:var(--color-muted);margin:1.1rem 0 .5rem}.prog-dash .acct-list{flex-direction:column;gap:.4rem;display:flex}.prog-dash .acct-btn{text-align:left;background:var(--_accent-soft);border:1.5px solid var(--_accent);justify-content:space-between;align-items:center;width:100%;display:flex}@supports (color:color-mix(in lab, red, red)){.prog-dash .acct-btn{border:1.5px solid color-mix(in srgb, var(--_accent) 35%, #fff)}}.prog-dash .acct-btn{cursor:pointer;color:var(--_accent-ink);font-family:inherit;font-weight:var(--w-bold);font-size:var(--text-sm);border-radius:12px;padding:.6rem .9rem}.prog-dash .acct-btn:hover{border-color:var(--_accent)}.prog-dash .acct-btn .seen{font-size:var(--text-2xs);font-weight:var(--w-medium)}.prog-dash .login-row{gap:.5rem;margin-bottom:.5rem;display:flex}.prog-dash .login-note{font-size:var(--text-2xs);color:var(--color-muted);text-align:center;margin-top:1rem}.prog-dash .input-field{border:2px solid var(--color-hairline);min-width:0;font-size:var(--text-sm);border-radius:12px;flex:1;padding:.5rem .85rem;font-family:inherit;transition:border-color .15s}.prog-dash .input-field:focus{border-color:var(--_accent)}.prog-dash .btn{background:var(--_accent-deep)}@supports (color:color-mix(in lab, red, red)){.prog-dash .btn{background:color-mix(in srgb, var(--_accent-deep) 88%, #000)}}.prog-dash .btn{color:var(--color-on-accent);font-size:var(--text-sm);font-weight:var(--w-bold);cursor:pointer;border:none;border-radius:12px;padding:.55rem 1.25rem;font-family:inherit;transition:background .15s}.prog-dash .btn:hover{background:var(--_accent-ink)}.prog-dash .btn-outline{color:var(--_accent-ink);border:2px solid var(--_accent);min-height:44px;font-size:var(--text-xs);font-weight:var(--w-bold);cursor:pointer;background:0 0;border-radius:12px;padding:.45rem 1.1rem;font-family:inherit;transition:all .15s}.prog-dash .btn-outline:hover{background:var(--_accent-soft)}.prog-dash .sec-h{font-size:var(--text-base);color:var(--color-ink);align-items:center;gap:.45rem;font-weight:800;line-height:1.1;display:flex}.prog-dash .sec-sub{font-size:var(--text-2xs);color:var(--color-muted);margin:.3rem 0 1.1rem}.prog-dash .stat-n{font-size:var(--text-2xl);letter-spacing:-.01em;font-weight:800;line-height:1}.prog-dash .stat-l{font-size:var(--text-2xs);font-weight:var(--w-semi);color:var(--color-muted);margin-top:.3rem}.prog-dash .ch-grid{grid-template-columns:repeat(4,1fr);gap:.5rem;display:grid}@media (max-width:560px){.prog-dash .ch-grid{grid-template-columns:repeat(2,1fr)}}.prog-dash .ch-cell{background:#fff;border:1.5px solid #edeef6;border-radius:14px;flex-direction:column;gap:.3rem;min-height:72px;padding:.6rem .7rem;transition:transform .14s,box-shadow .14s;display:flex;position:relative}.prog-dash .ch-cell:hover{transform:translateY(-3px);box-shadow:0 10px 22px -10px #28285a61}.prog-dash .ch-bar{background:#edeef6;border-radius:999px;height:5px;margin-top:auto;display:block;overflow:hidden}.prog-dash .ch-bar>i{background:var(--lc,var(--color-accent));border-radius:999px;height:100%;transition:width .2s;display:block}.prog-dash .ch-badge{font-size:var(--text-2xs);color:var(--lc-deep,var(--color-accent-deep));font-weight:800;position:absolute;top:.4rem;right:.5rem}.dash-tabs{gap:.5rem;margin:1.75rem 0 1rem;display:flex}.dash-tab{cursor:pointer;font:inherit;font-size:var(--text-sm);font-weight:var(--w-bold);color:var(--color-muted);background:var(--color-accent-soft);border:1.5px solid #0000;border-radius:14px;flex:1;padding:.7rem 1rem}.dash-tab.active{color:var(--_accent-ink);border-color:var(--color-hairline);background:#fff;box-shadow:0 6px 18px -12px #28285a80}.prog-dash .ch-num{font-size:var(--text-2xs);letter-spacing:.07em;text-transform:uppercase;color:var(--color-muted);font-weight:800}.prog-dash .ch-ttl{font-size:var(--text-xs);font-weight:var(--w-bold);color:var(--color-ink);-webkit-line-clamp:2;-webkit-box-orient:vertical;line-height:1.25;display:-webkit-box;overflow:hidden}.prog-dash .ch-check{font-size:var(--text-xs);font-weight:900;line-height:1;position:absolute;top:.5rem;right:.6rem}.prog-dash .ch-cell.done{background:var(--lc-deep,var(--_accent-deep))}@supports (color:color-mix(in lab, red, red)){.prog-dash .ch-cell.done{background:color-mix(in srgb, var(--lc-deep,var(--_accent-deep)) 88%, #000)}}.prog-dash .ch-cell.done{border-color:#0000}.prog-dash .ch-cell.done .ch-ttl{color:#fff}.prog-dash .ch-cell.done .ch-num{color:var(--color-on-accent)}.prog-dash .ch-cell.done .ch-check{color:#fff}.prog-dash .ch-cell.studied{background:var(--lc-soft,var(--_accent-soft));border-color:var(--lc,var(--_accent))}.prog-dash .ch-cell.studied :is(.ch-ttl,.ch-num){color:var(--lc-deep,var(--_accent-deep))}@supports (color:color-mix(in lab, red, red)){.prog-dash .ch-cell.studied :is(.ch-ttl,.ch-num){color:color-mix(in srgb, var(--lc-deep,var(--_accent-deep)) 80%, #000)}}.prog-dash .ch-cell.new{border-style:dashed}.prog-dash .ch-bar{background:#edeef6;border-radius:999px;width:100%;height:4px;margin-top:auto;overflow:hidden}.prog-dash .ch-bar>span{background:var(--lc,var(--_accent));height:100%;transition:width .4s;display:block}.prog-dash .ch-cell.studied .ch-bar{background:#ffffff80}.prog-dash .lvl-bar{background:var(--_accent-soft);border-radius:999px;height:6px;margin-bottom:1rem;overflow:hidden}.prog-dash .lvl-bar>span{background:var(--lc,var(--_accent));border-radius:999px;height:100%;transition:width .5s;display:block}.prog-dash .lg{font-size:var(--text-2xs);color:var(--color-muted);font-weight:var(--w-semi);align-items:center;gap:.32rem;display:inline-flex}.prog-dash .lg i{border-radius:4px;flex-shrink:0;width:.85rem;height:.85rem;display:inline-block}.prog-dash .tab-btn{cursor:pointer;background:0 0;border:none;border-radius:12px;flex-direction:column;flex:1;align-items:center;gap:.15rem;padding:.6rem .5rem;font-family:inherit;transition:all .18s;display:flex}.chapter-nav{max-width:var(--content);padding:0 var(--gutter);grid-template-columns:1fr auto 1fr;align-items:stretch;gap:12px;margin:32px auto 8px;display:grid}.chapter-nav a{background:var(--color-surface);border:2px solid var(--color-hairline);font-size:var(--text-sm);font-weight:var(--w-semi);color:var(--color-ink);box-shadow:0 2px 8px var(--_accent);border-radius:16px;align-items:center;gap:10px;padding:14px 18px;text-decoration:none;transition:transform .12s,border-color .12s,box-shadow .12s;display:flex}@supports (color:color-mix(in lab, red, red)){.chapter-nav a{box-shadow:0 2px 8px color-mix(in srgb, var(--_accent) 9%, transparent)}}.chapter-nav a{min-height:56px}.chapter-nav a:hover{border-color:var(--_accent);transform:translateY(-1px);box-shadow:0 4px 10px #0000001f}.chapter-nav .nav-prev{justify-content:flex-start}.chapter-nav .nav-next{background:linear-gradient(135deg, var(--_accent-soft), #fff);border-color:var(--_accent);justify-content:flex-end}.chapter-nav .nav-home{background:var(--_accent-soft);border-color:var(--_accent);color:var(--_accent-ink);font-weight:var(--w-bold);justify-content:center}.chapter-nav .nav-home .nav-text small{color:inherit}.chapter-nav a.is-empty,.chapter-nav a[hidden]{visibility:hidden;pointer-events:none;display:flex}.chapter-nav--4{grid-template-columns:1fr auto auto 1fr}@media (max-width:620px){.chapter-nav--4{grid-template-columns:1fr 1fr}.chapter-nav.chapter-nav--4 .nav-home{order:0;grid-column:auto}}.nav-arrow{font-size:var(--text-md);flex:none;line-height:1}.nav-text{flex-direction:column;min-width:0;line-height:1.2;display:flex}.nav-text small{font-size:var(--text-2xs);font-weight:var(--w-medium);color:var(--color-muted);letter-spacing:.05em;text-transform:uppercase}.skip-link{color:var(--_accent-ink);font-weight:var(--w-semi);z-index:200;background:#fff;border-radius:10px;padding:10px 18px;text-decoration:none;position:absolute;top:8px;left:-9999px}.skip-link:focus{left:8px}:where(:focus-visible){outline:3px solid var(--focus-ring);outline-offset:-3px}video:focus-visible{outline:3px solid var(--focus-ring);outline-offset:3px}a:focus-visible,button:focus-visible,[role=button]:focus-visible{outline:3px solid var(--focus-ring);outline-offset:3px;border-radius:6px}input:focus-visible,textarea:focus-visible,select:focus-visible,[contenteditable]:focus-visible{outline:3px solid var(--focus-ring);outline-offset:1px}summary:focus-visible{outline:3px solid var(--focus-ring);outline-offset:2px}.note{--_fold-r:calc(var(--radius-card-sm) - 2px)}.lesson-outcomes{--_fold-r:calc(var(--radius-card) - 2px)}.extend-peek{--_fold-r:calc(var(--radius-pill) - 2px)}.extend-peek[open]{--_fold-r:14px}:is(.note,.lesson-outcomes,.extend-peek)>summary:focus-visible{outline-offset:-3px;border-radius:var(--_fold-r) var(--_fold-r) 0 0}:is(.note,.lesson-outcomes,.extend-peek):not([open])>summary:focus-visible{border-radius:var(--_fold-r)}.lesson-outcomes>summary:focus-visible{--focus-ring:#fff;outline-offset:-6px;box-shadow:inset 0 0 0 3px var(--_accent-chip)}.app-header,.site-footer,#assess-header{--focus-ring:var(--color-on-accent)}.app-header:not(.is-light):not(.is-soft3d) :focus-visible,body:not(.edux-scene-soft) .site-footer :focus-visible,#assess-header :focus-visible{box-shadow:0 0 0 3px var(--_accent-chip)}.app-header.hero.is-light,.app-header.hero.is-soft3d,body.edux-scene-soft .site-footer{--focus-ring:var(--_accent-ink)}.skip-link:focus-visible,.edux-report-btn:focus-visible,.slide-toggle.is-floating:focus-visible,edux-text-size.is-floating .tsize__toggle:focus-visible{--focus-ring:var(--_accent-chip);box-shadow:0 0 0 3px #fff}iframe.edux-frame-focus{outline:3px solid var(--focus-ring);outline-offset:-3px}.edux-tab-escape{z-index:90;pointer-events:none;white-space:nowrap;background:var(--color-ink);color:var(--color-surface);font:600 .75rem/1.4 var(--font-body,system-ui, sans-serif);border-radius:.5rem;padding:.25rem .5rem;display:none;position:fixed;top:0;left:0;box-shadow:0 2px 8px #00000040}.edux-tab-escape.is-on{display:block}.edux-tab-escape.is-armed{background:var(--_accent-chip);color:#fff}.edux-tab-escape kbd{font:inherit;border:1px solid;border-radius:.25rem;padding:0 .3rem}.prog-step:focus-visible{outline:2px solid var(--focus-ring);outline-offset:1px}[x-cloak]{display:none!important}@media (max-width:720px){.prog-step{font-size:var(--prog-step-fs,var(--text-xs))}}@media (max-width:620px){.progress-bar{position:sticky}.progress-bar>edux-text-size{z-index:2;padding-left:0;position:absolute;top:4px;right:6px}}edux-text-size.is-floating,.slide-toggle.is-floating{top:auto;left:auto;bottom:calc(12px + var(--edux-dock-lift,0px));z-index:901;position:fixed}.slide-toggle.is-floating,.is-floating .tsize__toggle{box-shadow:0 6px 20px #0f172a38}edux-text-size.is-floating{background:0 0;padding-left:0;right:12px}.slide-toggle.is-floating{right:68px}html[data-edux-dock-pad=footer] .site-footer,html[data-edux-dock-pad=body] body{padding-bottom:var(--edux-dock-clear,0px)}html{scroll-padding-bottom:var(--edux-dock-clear,0px)}.is-floating .tsize__steps{top:auto;bottom:calc(100% + 10px)}.is-floating .tsize.is-open .tsize__steps:after{border-top:0;border-left:0;border-right:1px solid var(--_accent);top:auto;bottom:-5px}@supports (color:color-mix(in lab, red, red)){.is-floating .tsize.is-open .tsize__steps:after{border-right:1px solid color-mix(in srgb, var(--_accent) 16%, #fff)}}.is-floating .tsize.is-open .tsize__steps:after{border-bottom:1px solid var(--_accent)}@supports (color:color-mix(in lab, red, red)){.is-floating .tsize.is-open .tsize__steps:after{border-bottom:1px solid color-mix(in srgb, var(--_accent) 16%, #fff)}}@media (max-width:360px){.prog-step{padding-left:var(--prog-step-pad-narrow,3px);padding-right:var(--prog-step-pad-narrow,3px);gap:5px}}@media (max-width:640px){body{font-size:.94rem}.app-header__title{font-size:var(--text-xl)}.app-header__inner{flex-wrap:wrap;gap:14px}.app-header__inner .edux-badge{order:-1;justify-content:flex-end;width:100%;margin-left:0}.mascot{width:64px;height:64px}.mascot img{width:48px;height:48px}.container{padding:18px var(--gutter) 80px}.section-card{padding:16px 0 0}.section-title{font-size:var(--text-lg);gap:10px}.section-num{width:40px;height:40px;font-size:var(--text-md);border-radius:14px}.footer-inner{text-align:center;flex-direction:column;align-items:center;gap:12px;padding:28px 20px}.chapter-nav{grid-template-columns:1fr 1fr;gap:10px;padding:0 12px}.chapter-nav .nav-home{order:-1;grid-column:1/-1}.chapter-nav a{font-size:var(--text-sm);padding:12px 14px}.home-curriculum{padding:8px 12px 0}.feature-band{padding:16px 14px}}.assess-title{font-size:calc(26px * var(--edux-tscale,1));font-weight:var(--w-semi);letter-spacing:-.01em}.level-label{font-size:calc(12.5px * var(--edux-tscale,1));font-weight:var(--w-medium);letter-spacing:.06em;text-transform:uppercase}.section-header h2{font-size:calc(24px * var(--edux-tscale,1));font-weight:var(--w-semi);letter-spacing:-.01em}.section-header p{font-size:calc(15px * var(--edux-tscale,1))}.q-num{font-size:calc(11.5px * var(--edux-tscale,1));font-weight:var(--w-semi);text-transform:uppercase;letter-spacing:.08em}.q-text{font-size:calc(17px * var(--edux-tscale,1));font-weight:var(--w-medium);line-height:1.5}.q-card .opt-label{font-size:calc(16px * var(--edux-tscale,1))}.section-header h2 .ico{margin-right:8px}.q-card{background:#fff;border-radius:20px;margin-bottom:16px;padding:22px 20px;box-shadow:0 1px 3px #0000000f,0 6px 16px #0000000d}.q-card .opt-label input[type=radio]{clip-path:inset(50%);white-space:nowrap;border:0;outline:none;width:1px;height:1px;margin:0;padding:0;position:absolute;overflow:hidden}.q-card .opt-label:has(input[type=radio]:focus-visible){outline:3px solid var(--focus-ring);outline-offset:2px}.q-card .opt-letter{background:var(--_accent-soft);width:30px;height:30px;color:var(--_accent-ink);font-weight:var(--w-bold);font-size:var(--text-sm);border-radius:50%;flex:none;justify-content:center;align-items:center;display:flex}.q-card .opt-label.correct .opt-letter{color:#fff;background:#4caf50}.q-card .opt-label.wrong .opt-letter{color:#fff;background:#ef5350}#assess-header{background:linear-gradient(135deg, var(--_accent-deep) 0%, var(--_accent) 100%);color:#fff;text-align:center;padding:28px 16px 32px;position:relative;overflow:hidden}#assess-header:before{content:"";opacity:.15;background:#fff;border-radius:50%;width:140px;height:140px;position:absolute;top:-50px;right:-30px}.assess-header-inner,body:has(#assess-header) .progress-inner{max-width:var(--assess-col,760px)}.assess-header-inner{z-index:2;flex-direction:column;align-items:center;margin:0 auto;display:flex;position:relative}.assess-header-inner .edux-badge{order:-1;align-self:flex-end;margin-bottom:10px}.level-label{opacity:.92;margin-bottom:6px}.assess-nav{flex-wrap:wrap;justify-content:center;gap:10px;margin-top:12px;display:flex}.assess-nav-btn{color:#fff;font-size:var(--text-xs);font-weight:var(--w-semi);background:#ffffff38;border:1px solid #fff6;border-radius:999px;align-items:center;gap:5px;min-height:44px;padding:5px 14px;text-decoration:none;transition:background .15s;display:inline-flex}.assess-nav-btn:hover{background:#ffffff61}.rank-badge{color:var(--_accent-ink);border-radius:var(--radius-pill);font-size:var(--text-xs);letter-spacing:.02em;background:#fffffff2;align-items:center;gap:6px;margin-left:10px;padding:4px 13px;font-weight:800;display:inline-flex;box-shadow:0 2px #0000001f}.rank-badge:empty{display:none}.section-header{text-align:center;margin-bottom:20px}.section-header h2{color:var(--_accent-ink);margin-bottom:4px}.section-header p{color:var(--color-muted)}.q-num{color:var(--_accent-ink);margin-bottom:6px}.q-text{margin-bottom:16px}.q-card .options{flex-direction:column;gap:10px;display:flex}.q-card .opt-label{border:3px solid var(--color-hairline);cursor:pointer;background:#fff;border-radius:14px;align-items:center;gap:12px;padding:14px 16px;transition:all .15s;display:flex}.q-card .opt-label:hover,.q-card .opt-label.selected{border-color:var(--_accent);background:var(--_accent-soft)}.q-card .opt-label.correct{animation:.3s edu-pop;background:#e8f5e9!important;border-color:#4caf50!important}.q-card .opt-label.wrong{background:#ffebee!important;border-color:#ef5350!important}textarea.answer-box{border:3px solid var(--color-hairline);width:100%;min-height:120px;font-size:var(--text-base);resize:vertical;border-radius:14px;padding:14px;font-family:inherit;line-height:1.6;transition:border .2s}textarea.answer-box:focus{border-color:var(--_accent);outline:none}.nav-buttons{max-width:var(--assess-col,760px);justify-content:space-between;gap:12px;margin:24px auto 0;display:flex}.teacher-warn{background:var(--_accent-soft);border:2px solid var(--_accent);align-items:flex-start;gap:14px;display:flex}@supports (color:color-mix(in lab, red, red)){.teacher-warn{border:2px solid color-mix(in srgb, var(--_accent) 45%, #fff)}}.teacher-warn{border-radius:12px;margin:0 0 16px;padding:14px 16px}.teacher-warn-icon{font-size:var(--text-2xl);flex:none;margin-top:2px;line-height:1}.teacher-warn-body strong{font-size:var(--text-base);font-weight:var(--w-bold);color:var(--_accent-ink);margin-bottom:4px;display:block}.teacher-warn-body p{font-size:var(--text-sm);color:var(--_accent-deep)}@supports (color:color-mix(in lab, red, red)){.teacher-warn-body p{color:color-mix(in srgb, var(--_accent-deep) 78%, var(--color-muted))}}.teacher-warn-body p{margin:0;line-height:1.45}edux-admin,edux-teacher-gate{display:block}.adm__tbl{border-collapse:collapse;width:100%;font-size:var(--text-sm);margin:4px 0 12px}.adm__tbl th,.adm__tbl td{border-bottom:1px solid var(--color-hairline);text-align:left;padding:9px 10px}.adm__tbl th{font-size:var(--text-xs);text-transform:uppercase;letter-spacing:.06em;color:var(--color-muted);font-weight:var(--w-semi)}.adm__tbl tr.is-current td{background:var(--_accent-soft)}.adm__tbl td:last-child{text-align:right;white-space:nowrap;width:1%}.adm__tbl td:first-child{overflow-wrap:anywhere;width:100%}.adm__seen{color:var(--color-muted);font-variant-numeric:tabular-nums;white-space:nowrap}.adm__meta{font-size:var(--text-2xs);color:var(--color-muted);line-height:1.4;display:block}.adm__meta>*{margin-top:2px;display:block}.adm__tbl .adm__seen-sub{font-variant-numeric:tabular-nums;display:none}.adm__date{white-space:nowrap}@media (max-width:359px){.adm__tbl th,.adm__tbl td{padding-left:6px;padding-right:6px}.adm__tbl .adm__del{padding-left:10px;padding-right:10px}}@media (max-width:560px){.adm__tbl .adm__seen{display:none}.adm__tbl .adm__seen-sub{display:block}}.adm__now{font-size:var(--text-2xs);font-weight:var(--w-bold);letter-spacing:.06em;text-transform:uppercase;color:var(--_accent-ink);border:1px solid var(--_accent);background:#fff}@supports (color:color-mix(in lab, red, red)){.adm__now{border:1px solid color-mix(in srgb, var(--_accent) 40%, #fff)}}.adm__now{border-radius:var(--radius-pill);white-space:nowrap;margin-left:6px;padding:2px 8px}.adm__msg{font-size:var(--text-sm);color:var(--color-muted);min-height:1.2em;margin:10px 0 0}.btn-outline.adm__danger{color:#9f1239;border-color:#f5a8b8}@supports (color:color-mix(in lab, red, red)){.btn-outline.adm__danger{border-color:color-mix(in srgb, var(--color-danger) 60%, #fff)}}.btn-outline.adm__danger:hover{background:var(--color-danger-soft);border-color:var(--color-danger)}.adm__where{overflow-wrap:normal}.adm__where--raw{overflow-wrap:anywhere;font-family:ui-monospace,SFMono-Regular,Menlo,monospace}edux-assess-submit,edux-assess-result{display:block}.asub{max-width:var(--assess-col,760px);background:var(--color-surface);border:2px solid var(--color-hairline);border-radius:18px;margin:0 auto;padding:22px}.asub__field{margin-bottom:14px}.asub__field label{font-size:var(--text-sm);font-weight:var(--w-bold);color:var(--_accent-ink);margin-bottom:6px;display:block}.asub__field input,.asub__field select{border:2px solid var(--color-hairline);width:100%;font:inherit;font-size:var(--text-base);background:#fff;border-radius:12px;padding:12px 14px}.asub__field input:focus,.asub__field select:focus{border-color:var(--_accent);outline:none}.asub__center{border-top:2px solid var(--color-hairline);text-align:left;margin-top:18px;padding-top:16px}.asub__center .btn{justify-content:center;width:100%}.asub__center-title,.asub__center-who{font-size:var(--text-sm);font-weight:var(--w-bold);color:var(--_accent-ink);margin:0 0 10px}.asub__center-st{font-size:var(--text-sm);color:var(--color-muted);margin:0 0 10px}.asub__center-st[data-state=sent]{color:var(--_accent-ink);font-weight:var(--w-semi)}.asub__center-names{grid-template-columns:repeat(auto-fill,minmax(140px,1fr));gap:8px;margin-top:14px;display:grid}.asub__center-names .asub__center-title{grid-column:1/-1;margin:0}.asub__note{font-size:var(--text-xs);color:var(--color-muted);margin:0 0 14px;line-height:1.5}.asub__err{background:var(--color-danger-soft);border:1.5px solid var(--color-danger);color:#9f1239;font-size:var(--text-sm);border-radius:10px;margin-bottom:12px;padding:10px 13px}.asub__acts{flex-direction:column;gap:10px;display:flex}.asub__acts .btn{justify-content:center;gap:8px;width:100%}.asub__copy{font-size:var(--text-sm);margin-top:14px}.asub__copy summary{cursor:pointer;color:var(--_accent-ink);font-weight:var(--w-semi)}.asub__text{border:2px solid var(--color-hairline);width:100%;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:var(--text-xs);resize:vertical;border-radius:12px;margin-top:10px;padding:11px;line-height:1.5}.ares{max-width:var(--assess-col,760px);text-align:center;margin:0 auto}.ares__score{font-family:var(--font-display);font-size:var(--text-3xl,2rem);font-weight:var(--w-black);color:var(--_accent-ink)}.ares__score b{font-size:1.35em}.ares__grade{font-size:var(--text-sm);font-weight:var(--w-semi);color:var(--color-muted);margin-top:4px;display:block}.ares__sent{font-size:var(--text-sm);color:var(--color-muted);margin:10px 0 18px}.ares__radar{max-width:380px;margin:0 auto 18px}.ares__table{border-collapse:collapse;width:100%;font-size:var(--text-sm);margin-bottom:18px}.ares__table th,.ares__table td{border-bottom:1px solid var(--color-hairline);text-align:left;padding:9px 11px}.ares__table th{font-size:var(--text-xs);text-transform:uppercase;letter-spacing:.06em;color:var(--color-muted)}.level-strong{color:#04785a;font-weight:var(--w-bold,700)}.level-developing{color:#a07000;font-weight:var(--w-bold,700)}.level-needs{color:#a02856;font-weight:var(--w-bold,700)}.ares__advice{text-align:left;background:var(--_accent-soft);font-size:var(--text-sm);border-radius:14px;margin-bottom:18px;padding:15px 17px;line-height:1.55}.ares__advice h3{font-size:var(--text-base);color:var(--_accent-ink);margin:0 0 8px}.ares__advice p{margin:0 0 7px}.ares__review{text-align:left}.ares__acts{margin-top:18px}@media print{.asub,.ares__acts,.asub__center{display:none}}.ansrev{max-width:var(--assess-col,760px);border:2px solid var(--color-hairline);background:#fff;border-radius:14px;margin:20px auto 0}.ansrev--clean{font-size:var(--text-sm);color:var(--color-muted);text-align:center;padding:14px 18px}.ansrev__sum{cursor:pointer;font-size:var(--text-base);color:var(--_accent-ink);border-radius:12px;align-items:center;gap:10px;padding:14px 18px;list-style:none;display:flex}.ansrev__sum::-webkit-details-marker{display:none}.ansrev__sum:after{content:"▾";opacity:.6;margin-left:auto;transition:transform .18s}.ansrev[open] .ansrev__sum:after{transform:rotate(180deg)}.ansrev__sum:hover{background:var(--_accent-soft)}.ansrev__tally{font-size:var(--text-xs);font-weight:var(--w-semi);color:var(--color-muted)}.ansrev__body{flex-direction:column;gap:14px;padding:0 18px 18px;display:flex}.ansrev__q{border:2px solid var(--color-hairline);border-radius:12px;padding:13px 15px}.ansrev__qh{align-items:baseline;gap:9px;margin-bottom:6px;display:flex}.ansrev__qn{font-size:var(--text-sm);font-weight:var(--w-bold);color:var(--_accent-ink)}.ansrev__area{font-size:var(--text-xs);color:var(--color-muted)}.ansrev__prompt{font-size:var(--text-sm);margin:0 0 10px;line-height:1.5}.ansrev__row{font-size:var(--text-sm);border-radius:9px;flex-wrap:wrap;align-items:flex-start;gap:2px 10px;padding:8px 11px;line-height:1.45;display:flex}.ansrev__val{flex:9em;min-width:0}.ansrev__row+.ansrev__row{margin-top:6px}.ansrev__lbl{min-width:92px;font-size:var(--text-xs);font-weight:var(--w-semi);color:var(--color-muted);flex:none;padding-top:1px}.ansrev__ltr{min-width:1.2em;font-weight:var(--w-bold);margin-right:7px;display:inline-block}.ansrev__row.is-mine{background:#ffebee}.ansrev__row.is-want{background:#e8f5e9}.ansrev__row.is-sample{background:var(--_accent-soft)}.ansrev__q--open .ansrev__row.is-mine{background:#ebf0f6}@supports (color:color-mix(in lab, red, red)){.ansrev__q--open .ansrev__row.is-mine{background:color-mix(in srgb, var(--color-hairline) 55%, #fff)}}.ansrev__trap{font-size:var(--text-xs);color:var(--color-muted);background:#0000000f;border-radius:10px;max-width:calc(100% - 8px);margin-left:8px;padding:1px 8px;display:inline-block}.ansrev__why{font-size:var(--text-sm);color:var(--color-muted);margin:10px 0 0;line-height:1.5}.ansrev__why b{color:var(--_accent-ink)}.aux-wrap{max-width:var(--content);padding:0 var(--gutter);margin:0 auto}.aux-section{margin-top:2.5rem}.aux-intro{padding-top:1.5rem}.aux-kicker{font-size:var(--text-2xs);font-weight:var(--w-bold);letter-spacing:.14em;text-transform:uppercase;color:var(--_accent-ink)}.aux-h2{font-family:var(--font-display);font-size:var(--text-xl);letter-spacing:-.01em;color:var(--color-ink);margin:.35rem 0 .5rem;font-weight:800}.aux-h3{font-size:var(--text-base);color:var(--color-ink);margin:1.25rem 0 .5rem;font-weight:800}.aux-lead{color:var(--color-muted);font-size:var(--text-sm);margin-top:.5rem;line-height:1.65}.aux-lead strong,.aux-section>p strong{color:var(--_accent-ink)}.aux-badge{background:var(--_accent-soft);color:var(--_accent-ink);font-weight:var(--w-bold);font-size:var(--text-2xs);letter-spacing:.06em;text-transform:uppercase;border-radius:999px;align-items:center;gap:.5rem;padding:.4rem .9rem;display:inline-flex}.aux-chips{flex-wrap:wrap;gap:8px;margin-top:14px;display:flex}.aux-chip{font-size:var(--text-xs);font-weight:var(--w-bold);color:var(--_accent-ink);background:var(--_accent-soft);border:1px solid var(--_accent)}@supports (color:color-mix(in lab, red, red)){.aux-chip{border:1px solid color-mix(in srgb, var(--_accent) 35%, #fff)}}.aux-chip{white-space:nowrap;border-radius:999px;padding:5px 14px}.aux-chip--soft{color:var(--color-muted);background:#f4f4fb;border-color:#e9e9f4}a.aux-chip,button.aux-chip{align-items:center;min-height:44px;display:inline-flex}.aux-chip--prose{white-space:normal;border-radius:14px;max-width:100%}.aux-card{border:1.5px solid var(--color-hairline);background:#fff;border-radius:20px;margin-top:16px;padding:18px;overflow-x:auto;box-shadow:0 6px 22px -12px #28285a2e}.aux-table{border-collapse:collapse;width:100%;font-size:var(--text-xs);min-width:560px}.aux-table th,.aux-table td{text-align:left;border-bottom:1px solid var(--color-hairline);vertical-align:top;padding:10px 12px}.aux-table th{font-size:var(--text-2xs);text-transform:uppercase;letter-spacing:.04em;color:var(--_accent-ink);background:var(--_accent-soft);font-weight:800}.aux-table td.key{color:var(--_accent-ink);white-space:nowrap;font-weight:800}.aux-table td.code{font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:var(--text-2xs);color:var(--color-muted);white-space:nowrap}.aux-table td .sub{color:var(--color-muted);font-weight:var(--w-bold)}.aux-note{border:1.5px solid var(--color-hairline);font-size:var(--text-sm);color:#555a7a;background:#f6f7fb;border-radius:16px;margin-top:22px;padding:16px 18px;line-height:1.6}.aux-note strong{color:var(--color-ink)}.aux-beats{grid-template-columns:repeat(auto-fit,minmax(15rem,1fr));gap:14px;margin-top:16px;display:grid}.aux-beat{border:1.5px solid var(--color-hairline);border-left:4px solid var(--_accent);background:#fff;border-radius:14px;padding:14px 16px}.aux-beat__head{color:var(--color-ink);font-weight:800;font-size:var(--text-base);align-items:center;gap:8px;display:flex}.aux-beat__ico{font-size:var(--text-md);line-height:1}.aux-beat__n{font-size:var(--text-2xs);color:var(--_accent-ink);background:var(--_accent-soft);border-radius:999px;margin-left:auto;padding:2px 9px;font-weight:800}.aux-beat__what{color:var(--color-muted);font-size:var(--text-sm);margin-top:6px;line-height:1.55}.aux-beat__tip{background:var(--_accent-soft);font-size:var(--text-xs);color:var(--_accent-ink);border-radius:10px;margin-top:8px;padding:8px 10px}.aux-beat__tip b{font-weight:800}.aux-dodont{grid-template-columns:1fr 1fr;gap:12px;margin-top:16px;display:grid}.aux-panel{font-size:var(--text-sm);border-radius:14px;padding:14px 16px;line-height:1.55}.aux-panel h4{margin-bottom:6px;font-weight:800}.aux-panel--do{color:#065f46;background:#ecfdf5;border:1.5px solid #a7f3d0}.aux-panel--dont{color:#9f1239;background:#fff1f2;border:1.5px solid #fecdd3}@media (max-width:560px){.aux-dodont{grid-template-columns:1fr}}.app-header.hero{padding:22px var(--gutter) 64px;text-align:center;box-shadow:0 24px 60px -28px var(--_accent-deep);border-bottom-right-radius:42px;border-bottom-left-radius:42px}@supports (color:color-mix(in lab, red, red)){.app-header.hero{box-shadow:0 24px 60px -28px color-mix(in srgb, var(--_accent-deep) 60%, transparent)}}.app-header.hero .brandbar{max-width:var(--content);z-index:2;flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:10px 12px;margin:0 auto 34px;display:flex;position:relative}.app-header.hero .who{align-items:center;gap:9px;margin-right:auto;display:flex}.app-header.hero a.who{color:inherit;border-radius:12px;justify-content:center;min-width:44px;min-height:44px;text-decoration:none}.app-header.hero a.who:focus-visible{outline-offset:3px;outline:2px solid}.app-header.hero .brandbar .edux-badge{margin-left:0}.app-header.hero .who img{width:30px;height:30px}.app-header.hero .who span{font-size:var(--text-2xs);font-weight:var(--w-semi);letter-spacing:.16em;color:#ffffffd1}.app-header.hero .toplink{font-size:var(--text-xs);font-weight:var(--w-semi);color:#ffffffe6;white-space:nowrap;box-sizing:border-box;background:#ffffff29;border:1px solid #ffffff40;border-radius:999px;align-items:center;min-height:44px;padding:7px 15px;text-decoration:none;transition:background .2s;display:inline-flex}.app-header.hero .toplink:hover{background:#ffffff47}.app-header.hero .hero-inner{z-index:2;max-width:760px;margin:0 auto;position:relative}.app-header.hero .aux-badge{color:#fff;background:#ffffff2e;border:1px solid #ffffff4d}.app-header.hero h1{font-family:var(--font-display);letter-spacing:-.02em;color:#fff;margin-top:14px;font-size:clamp(1.9rem,5vw,2.8rem);font-weight:800;line-height:1.1}.app-header .word,.app-header.hero h1 .word{background:linear-gradient(90deg, var(--hero-word-from,var(--_accent-soft)), #fff 50%, var(--hero-word-to,var(--_accent-soft)))}@supports (color:color-mix(in lab, red, red)){.app-header .word,.app-header.hero h1 .word{background:linear-gradient(90deg, var(--hero-word-from,color-mix(in srgb, var(--_accent-soft) 78%, #fff)), #fff 50%, var(--hero-word-to,color-mix(in srgb, var(--_accent-soft) 78%, #fff)))}}.app-header .word,.app-header.hero h1 .word{color:#0000;background-size:200%;-webkit-background-clip:text;background-clip:text;animation:6s linear infinite edu-shimmer}@keyframes edu-shimmer{0%{background-position:-200%}to{background-position:200%}}.app-header.hero p.sub{font-size:var(--text-base);font-weight:var(--w-medium);color:#fffffff2;white-space:nowrap;text-overflow:ellipsis;margin-top:12px;overflow:hidden}edux-hero .app-header.hero p.sub{white-space:normal;text-overflow:clip;overflow:visible}.app-header.hero p.sub strong{color:#fff;font-weight:800}@media (max-width:560px){.app-header.hero{padding:18px 18px 48px}.app-header.hero .brandbar{margin-bottom:26px}}body.edux-scene-deep{--_scene-a:var(--_accent,#5b6ee8)}@supports (color:color-mix(in lab, red, red)){body.edux-scene-deep{--_scene-a:color-mix(in srgb, var(--_accent,var(--color-accent)) 13%, #06080f)}}body.edux-scene-deep{--_scene-b:var(--_accent,#5b6ee8)}@supports (color:color-mix(in lab, red, red)){body.edux-scene-deep{--_scene-b:color-mix(in srgb, var(--_accent,var(--color-accent)) 21%, #0a0e1c)}}body.edux-scene-deep{--_scene-c:var(--_accent-deep,#3b4cc7)}@supports (color:color-mix(in lab, red, red)){body.edux-scene-deep{--_scene-c:color-mix(in srgb, var(--_accent-deep,var(--color-accent-deep,var(--color-accent))) 11%, #050710)}}body.edux-scene-deep{background:radial-gradient(1100px 620px at 50% -10%, var(--_accent,#5b6ee8), transparent 68%), radial-gradient(760px 520px at 88% 12%, var(--_accent-deep,#3b4cc7), transparent 70%), linear-gradient(180deg, var(--_scene-a,#070b18) 0%, var(--_scene-b,#0a1024) 46%, var(--_scene-c,#060911) 100%)}@supports (color:color-mix(in lab, red, red)){body.edux-scene-deep{background:radial-gradient(1100px 620px at 50% -10%, color-mix(in srgb, var(--_accent,var(--color-accent)) 34%, transparent), transparent 68%), radial-gradient(760px 520px at 88% 12%, color-mix(in srgb, var(--_accent-deep,var(--color-accent-deep)) 30%, transparent), transparent 70%), linear-gradient(180deg, var(--_scene-a,#070b18) 0%, var(--_scene-b,#0a1024) 46%, var(--_scene-c,#060911) 100%)}}body.edux-scene-deep{color:#e7ecff;background-attachment:fixed;min-height:100vh}.app-header.hero.is-deep3d{isolation:isolate;box-shadow:none;background:0 0;border-radius:0;padding:26px 24px 104px;position:relative;overflow:hidden}.app-header.hero.is-deep3d:before,.app-header.hero.is-deep3d:after{display:none}.hero-scene{z-index:0;perspective:620px;pointer-events:none;position:absolute;inset:0;overflow:hidden}.hero-floor,.hero-sky{background-image:linear-gradient(to right, var(--_accent,#5b6ee8) 1px, transparent 1px), linear-gradient(to bottom, var(--_accent,#5b6ee8) 1px, transparent 1px);width:200%;height:72%;position:absolute;left:-50%}@supports (color:color-mix(in lab, red, red)){.hero-floor,.hero-sky{background-image:linear-gradient(to right, color-mix(in srgb, var(--_accent,var(--color-accent)) 62%, transparent) 1px, transparent 1px), linear-gradient(to bottom, color-mix(in srgb, var(--_accent,var(--color-accent)) 62%, transparent) 1px, transparent 1px)}}.hero-floor,.hero-sky{background-size:62px 62px}.hero-floor{transform-origin:50% 100%;opacity:.55;animation:3.2s linear infinite edux-grid-run;bottom:-8%;transform:rotateX(76deg);-webkit-mask-image:linear-gradient(#0000 22%,#000 96%);mask-image:linear-gradient(#0000 22%,#000 96%)}.hero-sky{transform-origin:50% 0;opacity:.16;top:-8%;transform:rotateX(-76deg);-webkit-mask-image:linear-gradient(#000 2%,#0000 68%);mask-image:linear-gradient(#000 2%,#0000 68%)}@keyframes edux-grid-run{to{background-position:0 62px,0 62px}}.hero-glow{aspect-ratio:1/.78;filter:blur(26px);opacity:.5;background:radial-gradient(circle, var(--_accent,#5b6ee8) 0%, transparent 62%);width:min(820px,92%);position:absolute;top:30%;left:50%;translate:-50% -50%}@supports (color:color-mix(in lab, red, red)){.hero-glow{background:radial-gradient(circle, color-mix(in srgb, var(--_accent,var(--color-accent)) 62%, transparent) 0%, transparent 62%)}}.hero-chips{position:absolute;inset:0}.hero-chip{white-space:nowrap;font-family:var(--font-mono);font-size:.8rem;font-weight:var(--w-medium);color:#dbe4ff;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#ffffff12;border:1px solid #ffffff29;border-radius:12px;padding:9px 14px;animation:7s ease-in-out infinite edux-chip-float;position:absolute;box-shadow:0 18px 40px #00000073}@keyframes edux-chip-float{50%{translate:0 -13px}}.hero-chip--1{animation-delay:-.2s;top:12%;right:22%;transform:rotateY(-14deg)rotateX(6deg)}.hero-chip--2{animation-delay:-1.6s;top:18%;right:6%;transform:rotateY(-21deg)rotateX(5deg)}.hero-chip--3{animation-delay:-3.1s;bottom:20%;right:24%;transform:rotateY(-16deg)rotateX(-7deg)}.hero-chip--4{animation-delay:-4.4s;bottom:26%;right:8%;transform:rotateY(-17deg)rotateX(-6deg)}.hero-chip--5{opacity:.72;animation-delay:-2.4s;top:44%;right:18%;transform:rotateY(-20deg)}.hero-chip--6{opacity:.72;animation-delay:-5.2s;top:58%;right:1%;transform:rotateY(-24deg)}@media (max-width:1024px){.hero-chips{display:none}}.app-header.hero.is-deep3d .brandbar,.app-header.hero.is-deep3d .hero-inner{z-index:2}.app-header.hero.is-deep3d .hero-inner{max-width:820px}.app-header.hero.is-deep3d h1{letter-spacing:-.035em;text-shadow:0 14px 44px #0000008c;margin-top:18px;font-size:clamp(2.4rem,6vw,4.2rem)}.app-header.hero.is-deep3d h1 .word{background:linear-gradient(100deg, var(--_accent-soft) 0%, #fff 46%, var(--_accent-soft) 100%)}@supports (color:color-mix(in lab, red, red)){.app-header.hero.is-deep3d h1 .word{background:linear-gradient(100deg, color-mix(in srgb, var(--_accent-soft) 62%, #fff) 0%, #fff 46%, color-mix(in srgb, var(--_accent-soft) 62%, #fff) 100%)}}.app-header.hero.is-deep3d h1 .word{color:#0000;background-size:100%;-webkit-background-clip:text;background-clip:text;animation:none}.app-header.hero.is-deep3d p.sub{color:#e7ecffc2;font-size:var(--text-md);margin-top:16px}.app-header.hero.is-deep3d .aux-badge{color:#e7ecff;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);background:#ffffff14;border:1px solid #ffffff2e}.app-header.hero.is-deep3d .btn{box-shadow:0 14px 34px var(--_accent)}@supports (color:color-mix(in lab, red, red)){.app-header.hero.is-deep3d .btn{box-shadow:0 14px 34px color-mix(in srgb, var(--_accent) 45%, transparent)}}.app-header.hero.is-deep3d .btn--ghost{color:#e7ecff;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);box-shadow:none;background:#ffffff0f;border-color:#ffffff52}.home-curriculum.is-deep .home-eyebrow{color:#99a5f1}@supports (color:color-mix(in lab, red, red)){.home-curriculum.is-deep .home-eyebrow{color:color-mix(in srgb, var(--color-accent) 62%, #fff)}}.home-curriculum.is-deep .home-title{color:#fff}.home-curriculum.is-deep .home-sub,.home-curriculum.is-deep .home-band__sub{color:#e7ecff9e}.home-curriculum.is-deep .home-band__title{color:#fff}body.edux-scene-deep .lx-card,.home-curriculum.is-deep .lx-card{color:#e7ecff;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:linear-gradient(158deg,#ffffff0e,#ffffff05);border:2px solid #ffffff16;transition:transform .3s cubic-bezier(.2,.7,.3,1),box-shadow .3s,border-color .3s,background .3s;transform:perspective(900px)rotateX(5deg);box-shadow:0 18px 40px #00000061}body.edux-scene-deep .lx-card--taught,.home-curriculum.is-deep .lx-card--taught{border-color:#ffffff16}body.edux-scene-deep .lx-card:before,.home-curriculum.is-deep .lx-card:before{opacity:.34}body.edux-scene-deep .lx-card:hover:before,.home-curriculum.is-deep .lx-card:hover:before{opacity:1}body.edux-scene-deep .lx-card:hover,.home-curriculum.is-deep .lx-card:hover{border-color:var(--_accent);background:linear-gradient(158deg,#ffffff16,#ffffff08);transform:perspective(900px)rotateX(0)translateY(-9px)scale(1.025)}@supports (color:color-mix(in lab, red, red)){body.edux-scene-deep .lx-card:hover,.home-curriculum.is-deep .lx-card:hover{border-color:color-mix(in srgb, var(--_accent) 42%, transparent)}}body.edux-scene-deep .lx-card:hover,.home-curriculum.is-deep .lx-card:hover{box-shadow:0 30px 68px #0000008c, 0 0 40px var(--_accent)}@supports (color:color-mix(in lab, red, red)){body.edux-scene-deep .lx-card:hover,.home-curriculum.is-deep .lx-card:hover{box-shadow:0 30px 68px #0000008c, 0 0 40px color-mix(in srgb, var(--_accent) 22%, transparent)}}body.edux-scene-deep .lx-title,.home-curriculum.is-deep .lx-title{color:#fff}body.edux-scene-deep .lx-desc,.home-curriculum.is-deep .lx-desc{color:#e7ecff9e}body.edux-scene-deep .lx-num,.home-curriculum.is-deep .lx-num{color:var(--_accent)}@supports (color:color-mix(in lab, red, red)){body.edux-scene-deep .lx-num,.home-curriculum.is-deep .lx-num{color:color-mix(in srgb, var(--_accent) 68%, #b6c0da)}}body.edux-scene-deep .lx-card__count,.home-curriculum.is-deep .lx-card__count{color:var(--_accent);background:#ffffff0e;border:1px solid #ffffff1a}@supports (color:color-mix(in lab, red, red)){body.edux-scene-deep .lx-card__count,.home-curriculum.is-deep .lx-card__count{color:color-mix(in srgb, var(--_accent) 26%, #c6cee4)}}.hero-orb{aspect-ratio:1;perspective:1000px;pointer-events:none;z-index:0;width:min(44vw,500px);position:absolute;top:50%;right:4%;transform:translateY(-50%)}.orb{position:absolute;inset:0}.orb-canvas{width:100%;height:100%;display:block;position:absolute;inset:0}.orb__halo{inset:var(--_halo-inset,-8%);background:radial-gradient(circle, var(--_accent,#5b6ee8) 0%, transparent 62%);border-radius:50%;position:absolute}@supports (color:color-mix(in lab, red, red)){.orb__halo{background:radial-gradient(circle, color-mix(in srgb, var(--_accent,var(--color-accent)) var(--_halo-alpha,30%), transparent) 0%, transparent 62%)}}.orb[data-scene=gyroscope]{--_halo-inset:20%;--_halo-alpha:13%}.orb[data-scene=lattice]{--_halo-inset:12%}.orb[data-scene=cube]{--_halo-inset:2%}.orb[data-scene=wave],.orb[data-scene=topology]{--_halo-inset:26%}@media (max-width:900px){.hero-orb{opacity:.34;width:min(86vw,460px);right:-14%;-webkit-mask-image:radial-gradient(72% 72% at 62%,#000 40%,#0000 100%);mask-image:radial-gradient(72% 72% at 62%,#000 40%,#0000 100%)}}.app-header__orb{aspect-ratio:1;z-index:0;pointer-events:none;opacity:.42;width:clamp(140px,18vw,260px);height:auto;display:block;position:absolute;top:50%;right:clamp(120px,15%,230px);transform:translateY(-50%)}.app-header:not(.hero) .app-header__orb{--_accent:#fff}.app-header__inner{z-index:1;position:relative}.app-header__orb .orb{position:absolute;inset:0}.orb--mark .orb__halo{display:none}@media (max-width:720px){.app-header__orb{opacity:.6;width:150px;top:auto;bottom:6px;right:-22px;transform:none}}.app-header.hero.is-unified{--hero-col:1180px;padding-bottom:26px;flex-direction:column;min-height:min(60vh,540px);padding-inline:clamp(24px,4.6vw,84px);display:flex}.app-header.hero.is-unified .brandbar,.app-header.hero.is-unified .hero-inner{width:min(100%, var(--hero-col));max-width:var(--hero-col);align-self:center;margin-inline:auto}.app-header.hero.is-unified .hero-scene{width:min(100%, var(--hero-col));left:50%;translate:-50%}.app-header.hero.is-unified .aux-badge{display:none}.app-header.hero.is-unified .hero-inner{text-align:left;flex-direction:column;flex:1 0 auto;justify-content:center;align-items:flex-start;display:flex}.app-header.hero.is-unified .hero-inner>*{max-width:min(560px,100%)}.app-header.hero.is-unified .brandbar{text-align:left;justify-content:flex-end}.app-header.hero.is-unified .hero-cta,.app-header.hero.is-unified .stepper{justify-content:flex-start}.app-header.hero.is-unified .hero-orb{width:min(42vw,480px);right:2%}@media (max-width:900px){.app-header.hero.is-unified .hero-inner{max-width:none}.app-header.hero.is-unified{min-height:0}}body.edux-scene-soft{--_scene-a:var(--_accent,#5b6ee8)}@supports (color:color-mix(in lab, red, red)){body.edux-scene-soft{--_scene-a:color-mix(in srgb, var(--_accent,var(--color-accent)) 9%, #fdfaf4)}}body.edux-scene-soft{--_scene-b:var(--_accent,#5b6ee8)}@supports (color:color-mix(in lab, red, red)){body.edux-scene-soft{--_scene-b:color-mix(in srgb, var(--_accent,var(--color-accent)) 6%, #f4f7fc)}}body.edux-scene-soft{--_scene-c:#eef2f9}@supports (color:color-mix(in lab, red, red)){body.edux-scene-soft{--_scene-c:color-mix(in srgb, var(--color-accent-soft,var(--color-accent)) 8%, #eef2f8)}}body.edux-scene-soft{background:radial-gradient(1100px 620px at 50% -12%, var(--_accent,#5b6ee8), transparent 66%), radial-gradient(820px 560px at 86% 8%, #eef0ffb3, transparent 70%), linear-gradient(180deg, var(--_scene-a,#fbf7ef) 0%, var(--_scene-b,#f2f6fb) 52%, var(--_scene-c,#eef2f8) 100%)}@supports (color:color-mix(in lab, red, red)){body.edux-scene-soft{background:radial-gradient(1100px 620px at 50% -12%, color-mix(in srgb, var(--_accent,var(--color-accent)) 26%, transparent), transparent 66%), radial-gradient(820px 560px at 86% 8%, color-mix(in srgb, var(--color-accent-soft,#fff) 70%, transparent), transparent 70%), linear-gradient(180deg, var(--_scene-a,#fbf7ef) 0%, var(--_scene-b,#f2f6fb) 52%, var(--_scene-c,#eef2f8) 100%)}}body.edux-scene-soft{color:var(--ink,#22222b);background-attachment:fixed;min-height:100vh}.app-header.hero.is-soft3d{color:var(--ink,#22222b)}.app-header.hero.is-soft3d h1{color:var(--ink,#22222b);text-shadow:none}.app-header.hero.is-soft3d h1 .word{color:var(--_accent-ink,var(--color-accent-deep));-webkit-text-fill-color:currentColor}.app-header.hero.is-soft3d p.sub{color:var(--ink,#22222b)}@supports (color:color-mix(in lab, red, red)){.app-header.hero.is-soft3d p.sub{color:color-mix(in srgb, var(--ink,#22222b) 74%, transparent)}}.app-header.hero.is-soft3d .aux-badge{color:var(--ink,#22222b);-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);background:#ffffffb8;border-color:#0f172a1a}.app-header.hero.is-soft3d .btn--ghost{color:var(--_accent-ink,var(--color-accent-deep));background:#fff9;border-color:#0f172a2e}.is-soft3d .hero-floor,.is-soft3d .hero-sky{opacity:.5}.is-soft3d .hero-chip{color:var(--_accent-ink,var(--color-accent-deep));font-weight:var(--w-bold);background:#ffffffc7;border-color:#0f172a1a}.app-header.hero.is-soft3d .hero-step{background:#ffffff9e;border-color:#0f172a1f}.app-header.hero.is-soft3d .hero-step .step__lvl{color:var(--_accent-deep,#3b4cc7)}@supports (color:color-mix(in lab, red, red)){.app-header.hero.is-soft3d .hero-step .step__lvl{color:color-mix(in srgb, var(--_accent-deep,var(--color-accent-deep)) 80%, #22222b)}}.app-header.hero.is-soft3d .hero-step .step__cap{color:var(--ink,#22222b)}@supports (color:color-mix(in lab, red, red)){.app-header.hero.is-soft3d .hero-step .step__cap{color:color-mix(in srgb, var(--ink,#22222b) 70%, transparent)}}.hero-art{pointer-events:none;z-index:0;width:min(40vw,540px);position:absolute;top:50%;right:1.5%;translate:0 -50%}.app-header.hero:has(.hero-art) .hero-inner>*{max-width:min(500px,100%)}.hero-art img{width:100%;height:auto;display:block}@media (prefers-reduced-motion:no-preference){.hero-art{animation:9s ease-in-out infinite hero-art-float}}@keyframes hero-art-float{0%,to{translate:0 calc(-50% - 6px)}50%{translate:0 calc(6px - 50%)}}@media (max-width:900px){.hero-art{display:none}.app-header.hero:has(.hero-art) .hero-inner{max-width:none}}.hero-object{z-index:0;pointer-events:none;height:100%;display:block;position:absolute;top:0;bottom:0;right:0}.app-header.is-deep3d .hero-object,.app-header.is-soft3d .hero-object{width:min(42%,520px);height:82%;inset:9% auto 9% 52%;-webkit-mask-image:radial-gradient(68% 72% at 58%,#000 52%,#0000 100%);mask-image:radial-gradient(68% 72% at 58%,#000 52%,#0000 100%)}.app-header:not(.is-deep3d):not(.is-soft3d) .hero-object{opacity:.62;width:min(420px,46%);height:150px;top:50%;bottom:auto;right:0;translate:0 -50%;-webkit-mask-image:linear-gradient(90deg,#0000,#000 46%);mask-image:linear-gradient(90deg,#0000,#000 46%)}@media (max-width:900px){.app-header.is-deep3d .hero-object,.app-header.is-soft3d .hero-object,.app-header:not(.is-deep3d):not(.is-soft3d) .hero-object{opacity:.32;width:100%;height:100%;inset:0;translate:none;-webkit-mask-image:radial-gradient(115% 92% at 68% 46%,#000 34%,#0000 82%);mask-image:radial-gradient(115% 92% at 68% 46%,#000 34%,#0000 82%)}.app-header.is-soft3d .hero-object{opacity:.5;-webkit-mask-image:radial-gradient(62% 62%,#000 52%,#0000 100%);width:300px;height:260px;inset:96px -60px auto auto;mask-image:radial-gradient(60% 60%,#000 50%,#0000 100%)}.app-header:not(.is-deep3d):not(.is-soft3d) .hero-object{opacity:.7;width:196px;height:168px;inset:50% -28px auto auto;translate:0 -38%;-webkit-mask-image:radial-gradient(60% 60%,#000 50%,#0000 100%);mask-image:radial-gradient(60% 60%,#000 50%,#0000 100%)}}.app-header.hero.is-soft3d .who span{color:var(--ink,#22222b)}@supports (color:color-mix(in lab, red, red)){.app-header.hero.is-soft3d .who span{color:color-mix(in srgb, var(--ink,#22222b) 72%, transparent)}}.app-header.hero.is-soft3d .toplink:hover{background:#fff}:is(.is-soft3d,.is-light) .edux-badge__logout{color:var(--color-ink);opacity:.86;border-radius:var(--radius-pill);background:#ffffffd1;border:1px solid #0f172a1f;padding:4px 14px}:is(.is-soft3d,.is-light) .edux-badge__logout:is(:hover,:focus-visible){opacity:1}.is-soft3d .hero-glow{opacity:.32}body.edux-scene-deep .home-title,body.edux-scene-deep .lx-label,body.edux-scene-deep h2{color:#eef2ff}body.edux-scene-deep .home-sub,body.edux-scene-deep .home-oneline{color:#e7ecffbd}body.edux-scene-deep .home-eyebrow,body.edux-scene-deep .home-kicker{color:#8997ee}@supports (color:color-mix(in lab, red, red)){body.edux-scene-deep .home-eyebrow,body.edux-scene-deep .home-kicker{color:color-mix(in srgb, var(--color-accent) 72%, #fff)}}body.edux-scene-soft .site-footer{color:var(--ink,#22222b);background:0 0;border-top:1px solid #0f172a1a}@supports (color:color-mix(in lab, red, red)){body.edux-scene-soft .site-footer{color:color-mix(in srgb, var(--ink,#22222b) 62%, transparent)}}body.edux-scene-soft .site-footer:before{display:none}body.edux-scene-soft .footer-brand-name,body.edux-scene-soft .footer-brand-sub{color:var(--ink,#22222b)}@supports (color:color-mix(in lab, red, red)){body.edux-scene-soft .footer-brand-sub{color:color-mix(in srgb, var(--ink,#22222b) 62%, transparent)}}body.edux-scene-soft .footer-copy{color:var(--ink,#22222b)}@supports (color:color-mix(in lab, red, red)){body.edux-scene-soft .footer-copy{color:color-mix(in srgb, var(--ink,#22222b) 66%, transparent)}}body.edux-scene-soft .footer-pill{color:var(--_accent-ink,var(--color-accent-deep));background:#ffffffb3;border:1px solid #0f172a1a}body.edux-scene-deep .site-footer{background:0 0;border-top:1px solid #ffffff17}body.edux-scene-deep .footer-brand-name{color:#fff}body.edux-scene-deep .footer-brand-sub{color:#e7ecffb3}body.edux-scene-deep .footer-copy{color:#e7ecff94}body.edux-scene-deep .site-footer:before{display:none}@media (prefers-reduced-motion:reduce){.hero-floor,.hero-chip{animation:none}.home-curriculum.is-deep .lx-card,.home-curriculum.is-deep .lx-card:hover{transition:none}}.teacher-wrap{max-width:42rem;margin:0 auto;padding:1.5rem 1.25rem 4rem}.teacher-head{justify-content:space-between;align-items:baseline;gap:1rem;margin:.5rem 0 1rem;display:flex}.teacher-head h1{font-size:var(--text-md);color:var(--color-ink);margin:0}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}.mascot{animation:none}.mascot:hover,.chapter-nav a:hover{transform:none}}.fc-multi{flex-direction:column;gap:16px;display:flex}.fc-lane{border:1.5px solid var(--color-hairline);background:#f0f3fa;border-radius:12px;padding:8px 12px 12px}@supports (color:color-mix(in lab, red, red)){.fc-lane{background:color-mix(in srgb, var(--color-bg) 70%, #fff)}}.fc-lane-h{font-weight:var(--w-bold);color:var(--_accent-ink);font-size:var(--text-sm);margin:2px 0 8px}.fc-lane .fc-graph{margin:0 auto;display:block}.ds-puzzle{margin:16px 0}.ds-puzzle .ds-frame{flex-direction:column;align-items:flex-start;gap:6px;max-width:100%;margin:0 0 14px;display:flex;overflow-x:auto}.ds-puzzle .ds-frame>svg{display:block}.ds-puzzle .ds-frame__note{font-size:var(--text-sm);font-weight:var(--w-bold);color:var(--muted,#5b6070)}.ds-puzzle .ds-frame__note code{font-size:inherit}.ds-puzzle .ds-container{grid-template-columns:minmax(0,1fr);align-items:start;gap:14px;display:grid}.ds-puzzle .ds-source{border:2px dashed var(--line,#d7d7e2);background:var(--surface,#fff);border-radius:14px;flex-direction:column;align-items:stretch;gap:10px;min-width:0;min-height:80px;padding:10px;display:flex}.ds-puzzle .ds-targets{gap:10px;display:grid}.ds-puzzle .ds-slot{border:2px dashed var(--_accent-soft);background:var(--_accent-soft);border-radius:14px;align-items:center;min-width:0;min-height:72px;padding:10px 10px 10px 40px;transition:border-color .15s,background .15s;display:flex;position:relative}.ds-puzzle .ds-slot>.ds-card{flex:auto;min-width:0}.ds-puzzle .ds-slot.is-over{border-color:var(--_accent);background:var(--surface,#fff)}.ds-puzzle .ds-slot.is-filled{background:var(--surface,#fff);border-style:solid}.ds-puzzle .ds-slot-num{background:var(--_accent-deep);border-radius:8px;place-items:center;width:22px;height:22px;display:grid;position:absolute;top:10px;left:10px}@supports (color:color-mix(in lab, red, red)){.ds-puzzle .ds-slot-num{background:color-mix(in srgb, var(--_accent-deep) 88%, #000)}}.ds-puzzle .ds-slot-num{color:var(--color-on-accent);font-size:var(--text-xs);font-weight:var(--w-bold)}.ds-puzzle .ds-slot-when{font-size:var(--text-xs);font-weight:var(--w-bold);color:var(--_accent-ink);position:absolute;top:12px;left:38px}.ds-puzzle .ds-slot:has(.ds-slot-when){align-items:flex-start;padding-top:34px}.ds-puzzle .ds-slot__hat{max-width:100%;margin:0 0 8px;display:block;overflow-x:auto}.ds-puzzle .ds-slot__hat>svg{display:block}.ds-puzzle .ds-slot:has(.ds-slot__hat){flex-direction:column;align-items:stretch}.ds-puzzle .ds-card{cursor:grab;touch-action:none;background:var(--surface,#fff);border:2px solid var(--line,#e6e6ef);border-radius:12px;min-width:0;max-width:100%;padding:6px;overflow-x:auto;box-shadow:0 1px 3px #0f172a12}.ds-puzzle .ds-slot>.ds-card{box-shadow:none;background:0 0;border-color:#0000}.ds-puzzle .ds-card>svg{pointer-events:none;display:block}.ds-card.is-picked{outline:3px solid var(--_accent);outline-offset:2px;border-color:var(--_accent);box-shadow:0 0 0 3px var(--_accent-soft)}.ds-puzzle .ds-card.is-dragging{cursor:grabbing;opacity:.85;z-index:5;position:relative}.ds-puzzle .ds-card.is-wrong{background:#fdf1f0;border-color:#ef6461}.ds-puzzle .ds-check-row{flex-wrap:wrap;align-items:center;gap:12px;margin-top:14px;display:flex}.ds-puzzle .ds-feedback{font-size:var(--text-sm);font-weight:var(--w-bold)}.ds-puzzle .ds-feedback.is-right{color:#2f9e4f}.ds-puzzle .ds-feedback.is-wrong{color:#d4433a}.ds-puzzle .ds-feedback.is-wait{color:var(--muted,#5b6070)}.ds-puzzle.is-solved .ds-slot{border-color:#2f9e4f}[data-assess-hidden]{display:none!important}.fixit-solve{align-items:flex-start;gap:var(--fixit-gap,18px);flex-wrap:wrap;margin:4px 0 0;display:flex}.fixit-solve>.fixit-goal{min-width:0;max-width:var(--fixit-goal-max,420px);flex:0 auto;margin:0}.fixit-solve>.fixit-solve__puzzle,.fixit-solve>.ds-puzzle{flex:1 1 var(--fixit-puzzle-basis,560px);min-width:0;margin:0}.fixit-reveal{border-top:1px solid var(--line,#e6e6ef);margin:16px 0 0;padding-top:12px}.fixit-reveal>summary{cursor:pointer;font-size:var(--text-sm);font-weight:var(--w-bold);color:var(--_accent-ink);list-style:none}.fixit-reveal>summary::-webkit-details-marker{display:none}.fixit-reveal>summary:before{content:"▶ "}.fixit-reveal[open]>summary:before{content:"▼ "}.fixit-reveal__body{margin-top:12px}.edux-ico{vertical-align:-.16em;width:1.05em;height:1.05em;margin-right:.4em;display:inline-block}.extend-tier-badge{vertical-align:middle;white-space:nowrap;border-radius:var(--radius-pill);font-size:var(--text-xs);font-weight:var(--w-extrabold,800);align-items:center;gap:6px;margin-right:10px;padding:5px 14px;display:inline-flex}.extend-tier-stars{letter-spacing:-1px}.extend-tier-easy .extend-tier-badge{background:var(--tier-easy-bg);color:var(--tier-easy-ink)}.extend-tier-medium .extend-tier-badge{background:var(--tier-medium-bg);color:var(--tier-medium-ink)}.extend-tier-hard .extend-tier-badge{background:var(--tier-hard-bg);color:var(--tier-hard-ink)}.extend-peek{border:2px solid var(--_accent-soft,var(--color-accent-soft));border-radius:var(--radius-pill);width:fit-content;max-width:100%;margin-top:8px;transition:border-radius .18s,border-color .18s}.extend-peek[open]{border-color:var(--_accent,var(--color-accent));border-radius:16px;width:auto}.extend-peek>summary{cursor:pointer;font-size:var(--text-xs);font-weight:var(--w-bold,700);color:var(--_accent-ink,var(--color-accent-deep));padding:10px 16px;list-style:none}.extend-peek>summary::-webkit-details-marker{display:none}.extend-peek>summary:before{content:"▶ "}.extend-peek[open]>summary:before{content:"▼ "}.extend-peek__body{padding:0 14px 14px;overflow-x:auto}.extend-peek__h{font-size:var(--text-sm);font-weight:var(--w-bold,700);margin:12px 0 6px}.extend-peek__h:first-child{margin-top:4px}.is-assess-paged .page{display:none}.is-assess-paged .page.active{animation:.25s eduxAssessFade;display:block}@keyframes eduxAssessFade{0%{opacity:0;transform:translateY(4px)}to{opacity:1;transform:none}}@media (prefers-reduced-motion:reduce){.is-assess-paged .page.active{animation:none}}.is-assess-paged .page>.nav-buttons{margin-top:22px}edux-assess-nav{display:contents}.nav-buttons{flex-wrap:wrap}.nav-buttons>.assess-reason{text-align:right;font-size:var(--text-sm);font-weight:var(--w-bold);color:var(--color-ink);flex:0 0 100%;order:-1}.nav-buttons>.assess-reason:empty{display:none}[data-assess-missing]{outline:3px dashed var(--_accent,var(--color-accent));outline-offset:4px;border-radius:12px}.tg-hint{font-size:var(--text-xs);font-weight:var(--w-medium,500);color:var(--color-muted)}.tg-block__h{align-items:center;gap:var(--tg-block-h-gap,7px);margin:var(--tg-block-h-margin,0);font-size:var(--tg-block-h-size,var(--text-2xs));letter-spacing:var(--tg-block-h-track,.07em);text-transform:uppercase;color:var(--tg-block-h-ink,#8c6414);font-weight:800;display:flex}.tg-block__ico{font-size:var(--tg-block-ico-size,inherit);text-transform:none}.tg-block__note{margin:var(--tg-block-note-margin,0);font-size:var(--tg-block-note-size,var(--text-2xs));color:var(--tg-block-note-ink,#785a1e)}.tg-arc{flex-wrap:wrap;gap:5px;margin:0;padding:0;list-style:none;display:flex}.tg-arc__step{border-radius:var(--radius-pill);border:1px solid var(--tg-line,#a0700038);min-width:0;font-size:var(--text-2xs);background:#fff;align-items:center;gap:6px;padding:5px 9px;display:flex}.tg-arc__n{color:#8c6414;font-variant-numeric:tabular-nums;flex:none;font-weight:800}.tg-arc__t{text-overflow:ellipsis;white-space:nowrap;max-width:15ch;overflow:hidden}.tg-arc__step.is-done{color:var(--color-muted);border-color:var(--tg-line,#a0700038);background:0 0}@supports (color:color-mix(in lab, red, red)){.tg-arc__step.is-done{border-color:color-mix(in srgb, var(--tg-line,#a0700038) 50%, transparent)}}.tg-arc__step.is-done .tg-arc__n{color:inherit}.tg-arc__step.is-now{background:#ffecb3e6;border-color:#a070008c;font-weight:800;box-shadow:0 1px 3px #a0700033}.tg-arc__step.is-now .tg-arc__t{white-space:normal;max-width:none}.tg-min{gap:var(--tg-min-gap,7px);flex-direction:column;display:flex}.tg-min__row{grid-template-columns:var(--tg-min-cols,auto 74px 1fr);gap:var(--tg-min-row-gap,10px);align-items:var(--tg-min-align,start);padding:var(--tg-min-pad,9px 12px);border:1px solid var(--tg-line,#a0700038);border-left:var(--tg-min-stripe,1px solid var(--tg-line,#a0700038));border-radius:var(--tg-min-radius,10px);background:#fff;display:grid}.tg-min__ico{font-size:var(--tg-min-ico-size,inherit);line-height:var(--tg-min-ico-lh,inherit)}.tg-min__lab{font-size:var(--tg-min-lab-size,var(--text-2xs));letter-spacing:.06em;text-transform:uppercase;color:var(--tg-min-lab-ink,var(--color-accent-deep));font-weight:800}.tg-min__txt{grid-column:var(--tg-min-txt-col,auto);color:var(--tg-min-txt-ink,var(--color-ink));font-size:var(--tg-min-txt-size,inherit)}html[data-edux-slide] edux-header,html[data-edux-slide] edux-chapter-nav,html[data-edux-slide] edux-footer{display:none!important}html[data-edux-slide] .progress-bar{top:0}html[data-edux-slide] main.container{min-height:calc(100svh - var(--bar-h-live,var(--bar-h)))}.slide-toggle{background:var(--_accent-soft);flex:none;justify-content:center;place-self:center end;align-items:center;gap:6px;width:max-content;min-width:44px;height:44px;padding:0 14px;display:inline-flex}@supports (color:color-mix(in lab, red, red)){.slide-toggle{background:color-mix(in srgb, var(--_accent-soft) 60%, #fff)}}.slide-toggle{border:1px solid var(--_accent)}@supports (color:color-mix(in lab, red, red)){.slide-toggle{border:1px solid color-mix(in srgb, var(--_accent) 18%, #fff)}}.slide-toggle{border-radius:var(--radius-pill);font-family:var(--font-display);font-size:14px;font-weight:var(--w-bold);color:var(--_accent-ink);cursor:pointer;white-space:nowrap;line-height:1;transition:background .15s,color .15s,border-color .15s}.slide-toggle[aria-pressed=true]{background:var(--_accent-deep)}@supports (color:color-mix(in lab, red, red)){.slide-toggle[aria-pressed=true]{background:color-mix(in srgb, var(--_accent-deep) 88%, #000)}}.slide-toggle[aria-pressed=true]{color:var(--color-on-accent);border-color:var(--_accent-deep)}@supports (color:color-mix(in lab, red, red)){.slide-toggle[aria-pressed=true]{border-color:color-mix(in srgb, var(--_accent-deep) 88%, #000)}}@font-face{font-family:Space Grotesk;font-style:normal;font-weight:400 700;font-display:swap;src:url(../fonts/space-grotesk.woff2)format("woff2")}@font-face{font-family:JetBrains Mono;font-style:normal;font-weight:400 700;font-display:swap;src:url(../fonts/jetbrains-mono.woff2)format("woff2")}:root{--color-accent:#0891b2;--color-accent-deep:#0e7490;--color-accent-soft:#cffafe;--ark-void:#e2e8f4;--ark-sink:#eef2f9;--ark-panel:#fff;--ark-raise:#f1f5f9;--ark-line:#dbe3ef;--ark-lift:0 1px 2px #0f172a0f, 0 4px 14px #0f172a0f;--ark-line-2:#b6c4d8;--ark-txt:#1e293b;--ark-dim:#57647a;--ark-faint:#545d69;--ark-score:#9a6608;--ark-good:#16a34a;--scale-subsup:.7em;--scale-slidetitle:2.25em;--ark-warn:#b45309;--ark-bad:#dc2626;--ark-star:#f59e0b}.docrun:not(.is-target),.sheetrun:not(.is-target),.sliderun:not(.is-target){border:1px solid var(--ark-line);background:var(--ark-panel);border-radius:.75rem;gap:0;overflow:hidden;box-shadow:0 6px 20px #0f172a1a,inset 0 1px #fff}.ok-titlebar{background:linear-gradient(var(--ark-raise),var(--ark-panel));border-bottom:1px solid var(--ark-line);align-items:center;gap:.5rem;padding:.375rem .625rem;display:flex}.ok-tb-dots{flex:none;gap:.25rem;display:flex}.ok-tb-dots i{background:var(--ark-line);border-radius:999px;width:.5rem;height:.5rem}.ok-tb-dots i:first-child{background:#f87171}.ok-tb-dots i:nth-child(2){background:#fbbf24}.ok-tb-dots i:nth-child(3){background:#4ade80}.ok-tb-name{text-align:center;font:600 var(--text-2xs)/1 var(--font-display,inherit);color:var(--ark-txt);text-overflow:ellipsis;white-space:nowrap;flex:1;overflow:hidden}.ok-tb-kind{font:700 var(--text-2xs)/1 var(--font-display,inherit);letter-spacing:.08em;text-transform:uppercase;color:var(--ark-faint);flex:none}.docrun:not(.is-target) .ok-ribbon,.sheetrun:not(.is-target) .ok-ribbon,.sliderun:not(.is-target) .ok-ribbon{box-shadow:none;border:0;border-bottom:1px solid var(--ark-line);border-radius:0}.dr-stage,.slr-stage{background:var(--ark-void)}.docrun:not(.is-target) .dr-stage{padding:1.25rem 1rem}.sliderun:not(.is-target) .slr-stage{padding:.875rem}.dr-status{border-top:1px solid var(--ark-line);background:var(--ark-raise);padding:.375rem .625rem}.ok-ribbon{border:1px solid var(--ark-line);background:var(--ark-panel);box-shadow:var(--ark-lift);border-radius:.75rem;overflow:hidden}.ok-ribbon-tabs{background:var(--level-soft,var(--color-accent-soft));border-bottom:1px solid var(--ark-line);gap:.125rem;padding:.25rem .375rem 0;display:flex;overflow-x:auto}.ok-tab{appearance:none;font:600 var(--text-xs)/1.2 var(--font-body,inherit);color:var(--level-deep,var(--color-accent-deep));cursor:pointer;white-space:nowrap;background:0 0;border:0;border-radius:.5rem .5rem 0 0;padding:.4rem .75rem}.ok-tab:hover{background:#141b2dcc}.ok-tab.is-active{background:var(--ark-panel);box-shadow:0 -1px 0 var(--ark-line) inset}.ok-tab:focus-visible{outline:2px solid var(--focus-ring);outline-offset:-2px}.ok-ribbon-body{align-items:stretch;gap:0;padding:.375rem .25rem;display:flex;overflow-x:auto}.ok-group{border-right:1px solid var(--ark-line);flex-direction:column;gap:.25rem;padding:0 .625rem;display:flex}.ok-group:last-child{border-right:0}.ok-group-cmds{flex:1;align-items:center;gap:.25rem;display:flex}.ok-group-name{font-size:var(--text-2xs);color:var(--ark-dim);text-align:center;letter-spacing:.02em}.ok-cmd-wrap{flex-direction:column;align-items:center;gap:.125rem;display:flex}.ok-cmd-label{font-size:var(--text-2xs);color:var(--ark-dim);text-align:center;max-width:5.5rem;line-height:1.1}.ok-btn{appearance:none;min-width:2rem;height:2rem;color:var(--ark-txt);cursor:pointer;background:0 0;border:1px solid #0000;border-radius:.375rem;place-items:center;padding:0 .5rem;display:grid}.ok-btn:hover{background:var(--level-soft,var(--color-accent-soft));border-color:var(--level,var(--color-accent))}.ok-btn[aria-pressed=true]{background:var(--level,var(--color-accent));color:#fff;border-color:var(--level-deep,var(--color-accent-deep))}.ok-btn:focus-visible{outline:2px solid var(--focus-ring);outline-offset:1px}.ok-cmd-icon{font:600 var(--text-xs)/1 var(--font-display,inherit);color:currentColor;letter-spacing:.01em;white-space:nowrap;font-variant-emoji:text}.ok-cmd-face{font:600 var(--text-2xs)/1 var(--font-display,inherit);color:currentColor;letter-spacing:.01em;white-space:nowrap}.ok-select,.ok-number{border:1px solid var(--ark-line);height:1.875rem;font-size:var(--text-2xs);background:var(--ark-panel);border-radius:.375rem;max-width:8rem;padding:0 .375rem}.ok-number{width:4rem}.ok-color{border:1px solid var(--ark-line);background:var(--ark-panel);cursor:pointer;border-radius:.375rem;width:2rem;height:1.875rem;padding:1px}.ok-swatch{border:1px solid var(--ark-line);cursor:pointer;border-radius:.25rem;width:1.125rem;height:1.125rem;padding:0}.ok-cmd.is-hit{animation:.22s ok-hit}@keyframes ok-hit{0%{box-shadow:0 0 0 0 var(--color-accent)}to{box-shadow:0 0 0 .5rem #0000}}.ok-goals{border:1px solid var(--ark-line);background:var(--ark-panel);box-shadow:var(--ark-lift);border-radius:.75rem;margin-top:.75rem;overflow:hidden}.ok-goals.is-complete{border-color:var(--ark-good);box-shadow:0 0 0 3px #16a34a22}.ok-goals-head{background:var(--ark-raise);border-bottom:1px solid var(--ark-line);font:700 var(--text-2xs)/1.2 var(--font-display,inherit);letter-spacing:.1em;text-transform:uppercase;color:var(--level,var(--color-accent));justify-content:space-between;align-items:center;padding:.5rem .75rem;display:flex}.ok-stars{letter-spacing:.1em;font-size:var(--text-base);color:var(--ark-faint)}.ok-stars.is-earned{color:var(--ark-star)}.ok-goal-list{flex-direction:column;gap:.375rem;margin:0;padding:.5rem .75rem;list-style:none;display:flex}.ok-goal{font-size:var(--text-xs);color:var(--ark-txt);grid-template-columns:1.25rem 1fr;align-items:start;gap:.375rem;display:grid}.ok-goal-mark{color:var(--ark-faint);text-align:center;font-weight:700}.ok-goal.is-done,.ok-goal.is-done .ok-goal-mark{color:var(--ark-good)}.ok-goal.is-done .ok-goal-text{-webkit-text-decoration:line-through #86efac;text-decoration:line-through #86efac}.ok-goal.is-keep{color:var(--ark-muted,#64748b)}.ok-goal.is-keep .ok-goal-mark{color:var(--ark-muted,#64748b);font-size:var(--text-2xs)}.ok-goal.is-keep .ok-goal-text{text-decoration:none}.ok-goal-why{font-size:var(--text-2xs);color:var(--ark-warn);grid-column:2;font-style:italic}.ok-goal-why:empty{display:none}.ok-goals.is-pop{animation:.9s ok-pop}@keyframes ok-pop{0%,to{transform:scale(1)}18%{transform:scale(1.02)}}.ok-toast{opacity:0;background:var(--ark-txt);color:#fff;font-size:var(--text-xs);z-index:60;pointer-events:none;border-radius:.5rem;padding:.5rem .875rem;transition:all .25s;position:fixed;bottom:1.5rem;left:50%;transform:translate(-50%,1rem)}.ok-toast.is-in{opacity:1;transform:translate(-50%)}.sr-task,.dr-task,.tr-task,.slr-task{font-size:var(--text-xs);color:#fcd34d;background:#1b1408;border:1px solid #4a3a10;border-radius:.5rem;gap:.5rem;padding:.5rem .75rem;display:flex}.sr-task,.dr-task{align-items:flex-start}.sr{flex-direction:column;display:flex}.sr-title{font:700 var(--text-sm)/1.2 var(--font-display,inherit);color:var(--color-ink)}.sr-formula-bar{align-items:center;gap:.5rem;display:flex}.sr-namebox{border:1px solid var(--ark-line);min-width:3.5rem;font:600 var(--text-2xs)/1.4 var(--font-mono);text-align:center;background:var(--ark-raise);border-radius:.375rem;padding:.25rem .5rem}.sr-fx-sign{font:italic 700 var(--text-xs)/1 serif;color:var(--ark-dim)}.sr-fx{border:1px solid var(--ark-line);min-width:0;font:var(--text-xs)/1.4 var(--font-mono);border-radius:.375rem;flex:1;padding:.25rem .5rem}.sr-fx:focus{outline:2px solid var(--focus-ring);outline-offset:-1px}.sr-grid-wrap{border:1px solid var(--ark-line);max-height:26rem;box-shadow:var(--ark-lift);border-radius:.5rem;overflow:auto}.sr-grid:focus:not(:focus-visible){outline:none}.sr-grid:focus-visible{outline:2px solid var(--focus-ring);outline-offset:-2px}.sr-table{border-collapse:separate;border-spacing:0;font-size:var(--text-xs);background:var(--ark-panel)}.sr-corner,.sr-colhead,.sr-rowhead{background:var(--ark-raise);color:var(--ark-txt);font:600 var(--text-2xs)/1 var(--font-body,inherit);border-right:1px solid var(--ark-line);border-bottom:1px solid var(--ark-line);position:sticky}.sr-colhead{z-index:2;height:1.5rem;top:0}.sr-corner{z-index:3;width:2.25rem;top:0;left:0}.sr-rowhead{z-index:1;text-align:center;width:2.25rem;left:0}.sr-colgrip{cursor:col-resize;touch-action:none;width:6px;height:100%;position:absolute;top:0;right:-3px}.sr-colgrip:hover{background:var(--color-accent)}.sr-cell{border-right:1px solid var(--ark-line);border-bottom:1px solid var(--ark-line);white-space:pre;text-overflow:ellipsis;cursor:cell;max-width:16rem;height:1.625rem;padding:0 .375rem;position:relative;overflow:hidden}.sr-cell.is-num{text-align:right;font-variant-numeric:tabular-nums}.sr-cell.is-bold{font-weight:700}.sr-cell.is-wrap{white-space:pre-wrap;line-height:1.2}.sr-cell.is-bordered{border:1px solid var(--ark-line-2)}.sr-table tr.is-frozen .sr-cell,.sr-table tr.is-frozen .sr-rowhead{z-index:2;background:var(--ark-raise);box-shadow:0 2px 0 var(--ark-line);position:sticky;top:1.5rem}.sr-cell.is-merged{background:var(--ark-raise);text-align:center;font-weight:600}.sr-cell.is-err{color:var(--ark-bad);font-weight:600}.sr-cell.is-sel{outline:2px solid var(--color-accent);outline-offset:-2px;z-index:1}.sr-cell.is-preview{background:var(--color-accent-soft)}.sr-editor{width:100%;font:inherit;background:var(--ark-panel);outline:2px solid var(--color-accent);outline-offset:-2px;border:0;padding:0 .375rem;position:absolute;inset:0}.sr-fill-handle{background:var(--color-accent);border:1.5px solid var(--ark-line-2);cursor:crosshair;touch-action:none;z-index:3;border-radius:2px;width:9px;height:9px;position:absolute;bottom:-4px;right:-4px}.sr-charts{flex-wrap:wrap;gap:.75rem;display:flex}.sr-chart{background:var(--ark-panel);border:1px solid var(--ark-line);border-radius:.5rem;max-width:100%;height:auto}.sr-chart-title{font:700 var(--text-xs)/1 var(--font-display,inherit);fill:var(--ark-txt)}.sr-axis{stroke:var(--ark-line-2);stroke-width:1px}.sr-tick,.sr-lab{font-size:var(--text-2xs);fill:var(--ark-dim)}.sr-axis-title{font-size:var(--text-xs);fill:var(--ark-txt)}.sr-line{fill:none;stroke:var(--color-accent);stroke-width:2.5px;stroke-linejoin:round}.sr-dot{fill:var(--color-accent)}.sr-bar,.sr-slice{stroke:var(--ark-line-2);stroke-width:1px}.sr-c0{fill:#0891b2}.sr-c1{fill:#f59e0b}.sr-c2{fill:#7c3aed}.sr-c3{fill:#16a34a}.sr-c4{fill:#e11d48}.sr-c5{fill:#64748b}.sr,.slr{width:100%}@media (max-width:640px){.ok-group{padding:0 .375rem}.ok-cmd-label{display:none}.sr-grid-wrap{max-height:20rem}}@media (prefers-reduced-motion:reduce){.ok-goals.is-pop,.ok-cmd.is-hit{animation:none}}.dr{flex-direction:column;display:flex}.dr-title{font:700 var(--text-sm)/1.2 var(--font-display,inherit);color:var(--color-ink)}.dr-stage{grid-template-columns:auto 1fr;align-items:start;gap:.75rem;display:grid}.dr-page,.slr-canvas{--pa-ink:#1e293b;--pa-dim:#64748b;--pa-faint:#94a3b8;--pa-line:#cbd5e1;--pa-tint:#f1f5f9}.dr-page{color:#1e293b;border:1px solid var(--ark-line);background:#fff;border-radius:.25rem;width:100%;min-height:22rem;margin:0 auto;padding:2.5rem 3rem;box-shadow:0 4px 16px #0f172a1a}.dr-page[data-margins=Narrow]{padding:1.25rem 1.5rem}.dr-page[data-margins=Wide]{padding:3rem 5rem}.dr-page.is-landscape{max-width:100%!important}.dr-block{outline:none;margin:0}.dr-block:focus-visible{outline:2px solid var(--focus-ring);outline-offset:3px;border-radius:2px}.dr-run{white-space:pre-wrap}.dr-list{margin:.25rem 0;padding-left:1.5rem}ul.dr-list{list-style:outside}ol.dr-list{list-style:decimal}.dr-li{margin:0}.dr-li.is-sub{display:block}.dr-header,.dr-footer{color:var(--pa-dim);font-size:var(--text-2xs);border-bottom:1px dashed var(--pa-line);justify-content:space-between;margin-bottom:1rem;padding-bottom:.25rem;display:flex}.dr-footer{border-bottom:0;border-top:1px dashed var(--pa-line);margin:1.25rem 0 0;padding:.25rem 0 0}.dr-pagebreak{border-top:1px dashed var(--pa-faint);text-align:center;font-size:var(--text-2xs);color:var(--pa-faint);margin:1rem -1.5rem;padding-top:.25rem}.dr-figure{margin:.75rem 0}.dr-img{border:1px solid var(--pa-line);border-radius:.375rem;max-width:min(100%,17rem);display:block}.dr-img-ph{background:var(--pa-tint);border:1px dashed var(--pa-line);height:5rem;font-size:var(--text-2xl);border-radius:.375rem;place-items:center;display:grid}.dr-alt{font-size:var(--text-xs);color:var(--pa-dim);margin-top:.25rem}.dr-alt.is-missing{color:var(--ark-bad)}.dr-alt-row{align-items:center;gap:.375rem;width:100%;display:flex}.dr-alt-row .dr-input{flex:1;min-width:0}.dr-alt-thumb{object-fit:contain;border:1px solid var(--pa-line);background:#fff;border-radius:.25rem;flex:none;width:2.5rem;height:1.75rem}.dr-table{border-collapse:collapse;width:100%;font-size:var(--text-xs);margin:.75rem 0}.dr-table th,.dr-table td{border:1px solid var(--pa-line);min-width:3rem;padding:.3rem .5rem}.dr-table th{background:var(--pa-tint);font-weight:700}.dr-toc{border:1px solid var(--pa-line);background:var(--pa-tint);border-radius:.375rem;margin-bottom:1.25rem;padding:.75rem 1rem}.dr-toc-title{font-weight:700;font-size:var(--text-xs);margin-bottom:.375rem}.dr-toc-row{font-size:var(--text-2xs);color:var(--pa-ink);align-items:baseline;gap:.375rem;display:flex}.dr-toc-row.is-l2{padding-left:1rem}.dr-toc-dots{border-bottom:1px dotted var(--pa-faint);flex:1;transform:translateY(-.15em)}.dr-outline{width:0;transition:width .2s;overflow:hidden}.dr-outline.is-open{background:var(--ark-raise);border:1px solid var(--ark-line);border-radius:.5rem;width:11rem;padding:.5rem}.dr-outline-head{font:700 var(--text-2xs)/1 var(--font-display,inherit);color:var(--ark-dim);text-transform:uppercase;letter-spacing:.04em;margin-bottom:.375rem}.dr-outline-empty{font-size:var(--text-xs);color:var(--ark-faint);line-height:1.4}.dr-outline-row{text-align:left;width:100%;font-size:var(--text-2xs);color:var(--ark-txt);cursor:pointer;background:0 0;border:0;border-radius:.25rem;padding:.2rem .25rem;display:block}.dr-outline-row:hover{background:var(--color-accent-soft)}.dr-outline-row.is-heading1{font-weight:700}.dr-outline-row.is-heading2{color:var(--ark-dim);padding-left:1rem}.dr-status{font-size:var(--text-2xs);color:var(--ark-dim);flex-wrap:wrap;gap:.75rem;display:flex}.dr-status-warn{color:var(--ark-warn)}.dr-status-file{font-family:var(--font-mono);margin-left:auto}.sr-tabs{flex-wrap:wrap;align-items:center;gap:.25rem;margin-top:.375rem;display:flex}.sr-tab{border:1px solid var(--ark-line);background:var(--ark-raise);min-height:2.75rem;color:var(--ark-txt);font:600 var(--text-2xs)/1 var(--font-display,inherit);cursor:pointer;border-bottom:0;border-radius:.5rem .5rem 0 0;padding:.375rem .875rem}.sr-tab.is-active{background:var(--ark-panel);color:var(--color-ink);border-color:var(--level,var(--color-accent))}.sr-tab:focus-visible{outline-offset:-3px}.sr-tab-add{border:1px dashed var(--ark-line);min-width:2.75rem;min-height:2.75rem;color:var(--ark-txt);font-size:var(--text-base);cursor:pointer;background:0 0;border-radius:.5rem}.sr-cell.is-spill{color:#1d4ed8;font-style:italic}.sr-trend{stroke:#b91c1c;stroke-width:2px;stroke-dasharray:6 4;fill:none}.dr-link{color:#1d4ed8;text-underline-offset:.15em;text-decoration:underline}.dr-href,.slr-href{font-size:var(--text-2xs);color:var(--pa-dim);margin-left:.25em;font-style:normal;font-weight:400;text-decoration:none}.dr-bm-flag{background:var(--pa-tint);font-size:var(--text-2xs);color:var(--pa-ink);vertical-align:middle;border-radius:.25rem;margin-left:.5em;padding:0 .35em;font-weight:600}.dr-cite{color:var(--pa-dim)}.dr-fnref{color:#1d4ed8}.dr-eq{font-family:var(--font-mono,monospace);background:var(--pa-tint);border:1px solid var(--pa-line);border-radius:.25rem;padding:0 .3rem}.dr-eq-frac{vertical-align:middle;flex-direction:column;align-items:center;margin:0 .15rem;line-height:1.15;display:inline-flex}.dr-eq-frac>span:first-child{border-bottom:1px solid;padding:0 .2rem}.dr-eq sub,.dr-eq sup{font-size:var(--scale-subsup);line-height:0}.dr-section{column-gap:2rem;display:block}.dr-sectionbreak{border-top:2px double var(--pa-faint);text-align:center;font-size:var(--text-2xs);color:var(--pa-faint);margin:1rem -1.5rem;padding-top:.25rem}.dr-footnotes{border-top:1px solid var(--pa-line);font-size:var(--text-2xs);color:var(--pa-ink);margin-top:1.5rem;padding-top:.5rem}.dr-footnote{margin:.125rem 0}.dr-bib{margin-top:1.25rem}.dr-bib-title{font-weight:700;font-size:var(--text-sm);margin-bottom:.375rem}.dr-bib-entry{font-size:var(--text-xs);text-indent:-24px;margin:.125rem 0;padding-left:24px;line-height:1.5}.dr-figure.is-wrap{float:left;max-width:45%;margin:.25rem 1rem .5rem 0}.dr-figure.is-break{clear:both}.dr-outline-row.is-heading3{color:var(--ark-faint);padding-left:2rem}.dr-status-bookmark{color:var(--ark-txt)}.dr-char{border:1px solid var(--ark-line);background:var(--ark-panel);min-width:2.75rem;min-height:2.75rem;font-size:var(--text-base);cursor:pointer;border-radius:.375rem}.dr-panels:empty,.sr-panels:empty,.slr-panels:empty{display:none}.dr-panel,.sr-panel,.slr-panel{border:1px solid var(--color-accent);background:var(--color-accent-soft);border-radius:.5rem;flex-direction:column;gap:.375rem;padding:.5rem .75rem;display:flex;position:relative}.dr-panel-title,.sr-panel-title,.slr-panel-title{font:700 var(--text-2xs)/1.2 var(--font-display,inherit);color:var(--level,var(--color-accent))}.dr-panel-body,.sr-panel-body{flex-wrap:wrap;align-items:center;gap:.375rem;display:flex}.dr-panel-body.is-rows{flex-direction:column;align-items:stretch}.sr-panel-label{font-size:var(--text-xs);color:var(--ark-txt)}.dr-input,.sr-input{border:1px solid var(--ark-line);font-size:var(--text-xs);background:var(--ark-panel);border-radius:.375rem;padding:.25rem .5rem}.dr-panel-go,.sr-panel-go{background:var(--color-accent);color:#fff;font-size:var(--text-xs);cursor:pointer;border:0;border-radius:.375rem;align-self:flex-start;padding:.3rem .75rem;font-weight:600}.dr-panel-close,.sr-panel-close,.slr-panel-close{font-size:var(--text-base);color:var(--level,var(--color-accent));cursor:pointer;background:0 0;border:0;line-height:1;position:absolute;top:.25rem;right:.375rem}.ok-picker{grid-template-columns:repeat(auto-fill,minmax(4.75rem,1fr));gap:.375rem;max-height:12rem;padding-right:.25rem;display:grid;overflow-y:auto}.ok-pic{border:1px solid var(--ark-line);background:var(--ark-panel);cursor:pointer;border-radius:.375rem;flex-direction:column;align-items:center;gap:.25rem;padding:.25rem;display:flex}.ok-pic:hover{border-color:var(--color-accent)}.ok-pic:focus-visible{outline:2px solid var(--focus-ring);outline-offset:2px}.ok-pic-img{object-fit:contain;border-radius:.25rem;width:100%;height:2.5rem;display:block}.ok-pic-label{font-size:var(--text-2xs);color:var(--ark-txt);text-align:center;line-height:1.15}.ok-picker-empty{font-size:var(--text-xs);color:var(--ark-dim);margin:0}@media (max-width:640px){.dr-stage{grid-template-columns:1fr}.dr-outline.is-open{width:100%}.dr-page{padding:1.25rem}}.home-topbar .app-header.hero{padding:.5rem var(--gutter)}.home-topbar .app-header.hero .brandbar{margin:0 auto}.home-topbar .app-header.hero .hero-inner{display:none}.home-topbar .edux-badge__pill{color:var(--color-accent-deep);background:var(--ark-panel);border-color:var(--ark-line-2)}.home-topbar .edux-badge__pill:hover{background:var(--ark-raise)}@media (max-width:900px){:root{--mesh-1:var(--color-accent-soft);--mesh-2:var(--color-accent-soft)}}.home-open{text-align:center;padding-top:3.5rem;padding-bottom:2.5rem}.home-kicker{font:700 var(--text-2xs)/1 var(--font-display,inherit);letter-spacing:.14em;text-transform:uppercase;color:var(--_accent-ink);margin:0 0 1rem}.home-subjects{font:800 var(--text-3xl)/1.05 var(--font-display,inherit);letter-spacing:-.02em;color:var(--ark-txt);overflow-wrap:normal;word-break:keep-all;flex-wrap:wrap;justify-content:center;align-items:baseline;gap:0 .35em;margin:0;display:flex}.home-subjects i{color:var(--color-accent);opacity:.55;font-style:normal}.home-oneline{font-size:var(--text-md);color:var(--ark-dim);margin:.875rem 0 0;line-height:1.5}.home-cta{--btn-pad:.75rem 1.5rem;font-family:var(--font-display,inherit);margin-top:1.75rem;text-decoration:none}.home-arcade-bar{background:linear-gradient(120deg,var(--color-accent-deep),var(--ark-txt));color:#fff;border-radius:.75rem;align-items:center;gap:.75rem;margin-top:.625rem;padding:.875rem 1.125rem;text-decoration:none;transition:transform .15s,box-shadow .15s;display:flex}.home-arcade-bar:hover{transform:translateY(-2px);box-shadow:0 8px 20px #0f172a2e}.home-arcade-bar__name{font:800 var(--text-sm)/1 var(--font-display,inherit);flex:none}.home-arcade-bar__what{font-size:var(--text-2xs)}.home-arcade-bar__go{font-size:var(--text-sm);opacity:.7;flex:none;margin-left:auto}.home-path{padding-bottom:3rem}@media (prefers-reduced-motion:reduce){.home-cta:hover,.home-arcade-bar:hover{transform:none}}.home-mesh>.home-object{aspect-ratio:8/7;z-index:0;pointer-events:none;opacity:.8;width:min(32%,330px);height:auto;position:absolute;top:1.5rem;right:1.5%;-webkit-mask-image:radial-gradient(66% 70% at 55% 45%,#000 48%,#0000 100%);mask-image:radial-gradient(66% 70% at 55% 45%,#000 48%,#0000 100%)}.home-object canvas.hero-object{width:100%;height:100%;position:absolute;inset:0}@media (max-width:640px){.home-mesh>.home-object{aspect-ratio:auto;opacity:.92;width:170px;height:118px;top:70px;left:auto;right:-12px;-webkit-mask-image:radial-gradient(62% 62%,#000 52%,#0000 100%);mask-image:radial-gradient(62% 62%,#000 52%,#0000 100%)}}.lv-logo{width:2.5rem;height:2.5rem;color:var(--level,var(--color-accent));margin:.5rem auto 0;display:block}.lv-progress{font-size:var(--text-2xs);color:var(--ark-dim);margin-top:.5rem}.ch-grid{grid-template-columns:repeat(auto-fill,minmax(13rem,1fr));gap:.625rem;margin-top:1.25rem;display:grid}.ch-card{border:1px solid var(--ark-line);background:var(--ark-panel);color:inherit;border-radius:.625rem;flex-direction:column;gap:.2rem;padding:.75rem;text-decoration:none;display:flex}.ch-card:hover{border-color:var(--level,var(--color-accent));box-shadow:0 2px 8px #0f172a14}.ch-card__n{font:700 var(--text-md)/1 var(--font-display,inherit);color:var(--level-deep,var(--color-accent-deep))}.ch-card__k{font-size:var(--text-2xs,.6875rem);letter-spacing:.04em;text-transform:uppercase;color:var(--ark-dim)}.ch-card__t{font-size:var(--text-sm);color:var(--ark-ink,inherit);font-weight:600;line-height:1.25}.ch-card__learn{flex-wrap:wrap;gap:.25rem;margin-top:.15rem;display:flex}.ch-card__f{font-size:var(--text-2xs,.6875rem);background:var(--level-soft,var(--color-accent-soft));color:var(--level-deep,var(--color-accent));white-space:nowrap;border-radius:.3rem;padding:.05rem .375rem;line-height:1.4}.ch-card__note{font-size:var(--text-2xs,.6875rem);color:var(--ark-dim);margin-top:.15rem;line-height:1.35}.ch-card.is-capstone{border-color:var(--level,var(--color-accent));background:var(--level-soft,var(--color-accent-soft))}.ch-card.is-todo{opacity:.45;cursor:not-allowed;border-style:dashed}.ch-card.is-todo:hover{box-shadow:none;border-color:var(--ark-line)}.arc-grid{grid-template-columns:repeat(auto-fit,minmax(16rem,1fr));gap:1rem;margin-top:1.25rem;display:grid}.arc-card{background:var(--ark-panel);border:1px solid var(--ark-line);border-radius:.875rem;padding:1.25rem}.arc-card__title{font:700 var(--text-md)/1.2 var(--font-display,inherit);color:var(--level,var(--color-accent));margin:0 0 .375rem}.arc-card__sub{font-size:var(--text-xs);color:var(--ark-txt);margin:0 0 .75rem;line-height:1.5}.arc-card__meta{font-size:var(--text-xs);color:var(--ark-dim);display:block}.arc-note{font-size:var(--text-xs);color:var(--ark-dim);margin-top:1.25rem}button.arc-card{text-align:left;cursor:pointer;width:100%;font:inherit;transition:border-color .15s,transform .15s}button.arc-card:hover{border-color:var(--level,var(--color-accent));transform:translateY(-2px)}button.arc-card.is-locked{opacity:.55;cursor:not-allowed;transform:none}.arc-panel{margin-top:1.25rem}.arc-back{font:600 var(--text-xs)/1 var(--font-display,inherit);color:var(--ark-dim);cursor:pointer;background:0 0;border:0;padding:.25rem 0}.arc-back:hover{color:var(--level,var(--color-accent))}.arc-panel__body{margin-top:.75rem}.arc-lead{font-size:var(--text-sm);color:var(--ark-txt);margin:0 0 1rem;line-height:1.6}.arc-round{border:1px solid var(--ark-line);background:var(--ark-panel);border-radius:.875rem;transition:border-color .2s;overflow:hidden}.arc-round.is-hit{border-color:var(--color-accent)}.arc-round.is-miss{border-color:#c2410c}.arc-round__head{background:var(--ark-raise);border-bottom:1px solid var(--ark-line);align-items:baseline;gap:.75rem;padding:.75rem 1rem;display:flex}.arc-round__label{font-size:var(--text-xs);color:var(--ark-dim);flex:1}.arc-round__score{font:700 var(--text-lg)/1 var(--font-display,inherit);color:var(--level,var(--color-accent))}.arc-round__time{font-size:var(--text-xs);color:var(--ark-dim);font-variant-numeric:tabular-nums}.arc-round__time:after{content:"s"}.arc-round__body{padding:1.25rem}.arc-ask{font:700 var(--text-lg)/1.25 var(--font-display,inherit);color:var(--ark-txt);margin:0 0 .75rem}.arc-ask__hint{font-size:var(--text-xs);color:var(--ark-dim);margin:0 0 1rem}.arc-keys{font-size:var(--text-sm);color:var(--ark-dim);letter-spacing:.2em}.arc-ribbon-host{margin-top:.75rem}.arc-over{text-align:center;padding:1rem 0}.arc-over__score{font:700 var(--text-3xl)/1 var(--font-display,inherit);color:var(--level,var(--color-accent));margin:0}.arc-over__note{font-size:var(--text-xs);color:var(--ark-dim);margin:.375rem 0 1rem}.arc-over .btn{margin:0 .25rem}.arc-ladder{grid-template-columns:repeat(auto-fill,minmax(15rem,1fr));gap:.5rem;display:grid}.arc-rung{background:var(--ark-panel);border:1px solid var(--ark-line);text-align:left;cursor:pointer;font:inherit;border-radius:.625rem;grid-template-columns:2rem 1fr;align-items:baseline;gap:.125rem .625rem;padding:.625rem .75rem;display:grid}.arc-rung:hover{border-color:var(--level,var(--color-accent))}.arc-rung.is-locked{opacity:.45;cursor:not-allowed}.arc-rung__n{font:700 var(--text-md)/1 var(--font-display,inherit);color:var(--level,var(--color-accent));font-variant-numeric:tabular-nums;grid-row:span 2}.arc-rung__title{font-size:var(--text-xs);color:var(--ark-txt);font-weight:600}.arc-rung__meta{font-size:var(--text-2xs);color:var(--ark-dim)}.arc-sheet{border-collapse:collapse;font-size:var(--text-xs);margin:0 0 1rem}.arc-sheet td{border:1px solid var(--ark-line);min-width:5.5rem;color:var(--ark-txt);padding:.5rem 1.5rem .5rem .5rem;position:relative}.arc-sheet__ref{font-size:var(--text-2xs);color:var(--ark-faint);position:absolute;top:.125rem;right:.25rem}.arc-formula{width:100%;max-width:22rem;font:var(--text-sm)/1.4 var(--font-mono,monospace);color:var(--ark-txt);background:var(--ark-raise);border:1px solid var(--ark-line);border-radius:.5rem;padding:.5rem .625rem}.arc-formula:focus{outline:2px solid var(--focus-ring);outline-offset:1px}.arc-verdict{min-height:1.25rem;font-size:var(--text-xs);color:var(--ark-dim);margin:.5rem 0 0}@media (prefers-reduced-motion:reduce){button.arc-card:hover{transform:none}}.aux-h{font:700 var(--text-sm)/1.3 var(--font-display,inherit);color:var(--level-deep,#3b4cc7);margin:0 0 .375rem}@supports (color:color-mix(in lab, red, red)){.aux-h{color:color-mix(in srgb, var(--level-deep,var(--color-accent-deep)) 80%, #000)}}.ext-list{flex-direction:column;gap:.5rem;margin:.5rem 0;padding:0;list-style:none;display:flex}.ext{font-size:var(--text-xs);background:var(--ark-raise);border-left:3px solid var(--ark-line);border-radius:.5rem;align-items:flex-start;gap:.5rem;padding:.5rem .75rem;line-height:1.5;display:flex}.ext.is-green{border-left-color:var(--ark-good)}.ext.is-amber{border-left-color:var(--ark-star)}.ext.is-red{border-left-color:#dc2626}.ext-dot{flex:none}.real{border:1px solid var(--ark-line);background:var(--ark-panel);border-radius:.75rem;margin-top:1.25rem;padding:1rem 1.125rem}.real .section-label{margin-top:0}.real-task{font:600 var(--text-base)/1.45 var(--font-display,inherit);color:var(--color-ink);margin:.25rem 0 0}.real-twist{font-size:var(--text-sm);color:var(--ark-txt);margin:.375rem 0 0;line-height:1.5}.real-twist b{color:var(--color-ink)}.real-sample{margin-top:.75rem}.real-passage{border-left:3px solid var(--level);background:var(--ark-raise);font-family:var(--font-mono,monospace);font-size:var(--text-sm);color:var(--color-ink);border-radius:.5rem;margin:0;padding:.75rem 1rem;line-height:1.6}.real-do{flex-wrap:wrap;align-items:center;gap:.5rem;margin-top:.75rem;display:flex}.real-check{counter-reset:rc;flex-direction:column;gap:.375rem;margin:.75rem 0 0;padding:0;list-style:none;display:flex}.real-check li{counter-increment:rc}.real-check label{background:var(--ark-raise);border:1px solid var(--ark-line);min-height:2.75rem;font-size:var(--text-sm);color:var(--color-ink);cursor:pointer;border-radius:.5rem;align-items:center;gap:.625rem;padding:.5rem .75rem;line-height:1.45;display:flex;position:relative}.real-check input{opacity:0;cursor:pointer;width:100%;height:100%;margin:0;position:absolute;inset:0}.real-box{border:2px solid var(--ark-line);background:var(--ark-panel);width:1.25rem;height:1.25rem;font-size:var(--text-2xs);color:var(--color-ink);border-radius:.3125rem;flex:none;place-items:center;font-weight:800;display:grid}.real-check input:checked+.real-box{background:var(--ark-good);border-color:var(--ark-good)}.real-check input:checked+.real-box:after{content:"✓";color:var(--ark-panel)}.real-check input:focus-visible+.real-box{outline:2px solid var(--focus-ring);outline-offset:2px}.real-check li.is-done .real-item{color:var(--ark-txt);text-decoration:line-through}.real-mark{font:700 var(--text-2xs)/1 var(--font-display,inherit);background:var(--level-soft);color:var(--level-deep);vertical-align:middle;border-radius:999px;margin-left:.5rem;padding:.25rem .5rem}.real-more{margin-top:.75rem}.real-more>summary{cursor:pointer;font:700 var(--text-2xs)/1.4 var(--font-display,inherit);letter-spacing:.04em;text-transform:uppercase;color:var(--ark-txt)}.real-where{border-collapse:collapse;width:100%;font-size:var(--text-xs);color:var(--color-ink);margin-top:.75rem}.real-where caption{text-align:left;font:700 var(--text-2xs)/1.4 var(--font-display,inherit);letter-spacing:.04em;text-transform:uppercase;color:var(--ark-txt);padding:0 0 .375rem}.real-where td{text-align:left;border-top:1px solid var(--ark-line);vertical-align:top;padding:.375rem .5rem}.real-where td:first-child{white-space:nowrap;font-weight:700}@media (max-width:640px){.real-where,.real-where tbody,.real-where tr,.real-where td{width:auto;display:block}.real-where caption{display:block}.real-where tr{border-top:1px solid var(--ark-line);padding:.5rem 0}.real-where td{border-top:0;padding:.125rem 0}.real-where td:first-child{white-space:normal}.real-where td:empty{display:none}}.real-where td small{font-size:var(--text-2xs);color:var(--ark-txt);margin-top:.125rem;display:block}.real-where kbd{font-size:var(--text-2xs);border:1px solid var(--ark-line);background:var(--ark-raise);font-family:var(--font-mono,monospace);border-radius:.25rem;padding:.0625rem .3125rem}.tr{flex-direction:column;gap:.625rem;display:flex}.tr-title{font:700 var(--text-sm)/1.2 var(--font-display,inherit);color:var(--color-ink)}.tr-stats{flex-wrap:wrap;align-items:flex-start;gap:1.25rem;display:flex}.tr-stat.is-lives .tr-stat-n{overflow-wrap:anywhere}.tr-stat{flex-direction:column;gap:.125rem;line-height:1;display:flex}.tr-stat-n{font:700 var(--text-xl)/1 var(--font-display,inherit);color:var(--color-ink);font-variant-numeric:tabular-nums;letter-spacing:-.02em}.tr-stat-l{font:600 var(--text-2xs)/1 var(--font-display,inherit);letter-spacing:.1em;text-transform:uppercase;color:var(--ark-faint);font-style:normal}.tr-stat.is-score{align-items:flex-end;margin-left:auto}.tr-stat.is-score .tr-stat-n{color:var(--ark-score)}.tr-stat.is-low .tr-stat-n{color:var(--ark-bad)}.tr-line{border:1px solid var(--ark-line);background:var(--ark-sink);font:var(--text-md)/1.95 var(--font-mono);letter-spacing:.02em;word-break:break-word;color:#a3aec2;border-radius:.625rem;padding:1rem 1.125rem;box-shadow:inset 0 2px 6px #0f172a0f}.tr-ch{border-radius:2px}.tr-ch.is-ok{color:var(--level-deep,var(--color-accent-deep));font-weight:700}.tr-ch.is-bad{color:var(--ark-bad);-webkit-text-decoration:underline wavy var(--ark-bad);-webkit-text-decoration:underline wavy var(--ark-bad);text-decoration:underline wavy var(--ark-bad);background:#fee2e2}.tr-ch.is-next{background:var(--level,var(--color-accent));color:#fff;box-shadow:0 0 0 2px var(--level,#5b6ee8)}@supports (color:color-mix(in lab, red, red)){.tr-ch.is-next{box-shadow:0 0 0 2px color-mix(in srgb,var(--level,var(--color-accent)) 30%,transparent)}}.tr-input{border:1px solid var(--ark-line);background:var(--ark-panel);color:var(--color-ink);font:var(--text-base)/1.4 var(--font-mono);caret-color:var(--level,var(--color-accent));border-radius:.625rem;padding:.625rem .75rem}.tr-input:focus{outline:2px solid var(--focus-ring);outline-offset:-1px;box-shadow:0 0 0 4px var(--level,#5b6ee8)}@supports (color:color-mix(in lab, red, red)){.tr-input:focus{box-shadow:0 0 0 4px color-mix(in srgb,var(--level,var(--color-accent)) 16%,transparent)}}.tr-keys{background:var(--ark-void);border:1px solid var(--ark-line);border-radius:.75rem;flex-direction:column;align-items:center;gap:.25rem;padding:.75rem;display:flex;overflow-x:auto;box-shadow:inset 0 2px 6px #0f172a0f;container-type:inline-size}.tr-krow{--kgap:clamp(.125rem,1cqi,.25rem);gap:var(--kgap);--key:clamp(.9rem,calc((100cqi - 12 * var(--kgap)) / 13),1.75rem);display:flex}.tr-key{width:var(--key);height:var(--key);border:1px solid var(--ark-line-2);font:600 var(--text-2xs)/1 var(--font-mono);color:var(--ark-dim);background:linear-gradient(#fff,#eef2f8);border-bottom:2px solid #9aabc4;border-radius:.3rem;place-items:center;display:grid}.tr-key.is-space{width:min(9rem,60cqi);font-size:var(--text-2xs)}.tr-key.is-shift{width:calc(var(--key) * 1.4);font-size:var(--text-2xs)}.tr-key[data-finger$=pinky]{border-bottom-color:#e11d48}.tr-key[data-finger$=ring]{border-bottom-color:#d97706}.tr-key[data-finger$=middle]{border-bottom-color:#16a34a}.tr-key[data-finger$=index]{border-bottom-color:#2563eb}.tr-key.is-home{border-color:var(--level,#5b6ee8)}@supports (color:color-mix(in lab, red, red)){.tr-key.is-home{border-color:color-mix(in srgb,var(--level,var(--color-accent)) 45%,var(--ark-line))}}.tr-key.is-home{color:var(--level-deep,var(--color-accent-deep));background:linear-gradient(180deg,#fff,var(--level-soft,var(--color-accent-soft)));font-weight:700}.tr-key.is-next{background:var(--level-deep,#3b4cc7)}@supports (color:color-mix(in lab, red, red)){.tr-key.is-next{background:color-mix(in srgb,var(--level-deep,var(--color-accent-deep)) 88%,#000)}}.tr-key.is-next{color:#fff;border-color:var(--level-deep,var(--color-accent-deep));box-shadow:0 0 0 3px var(--level,#5b6ee8);border-bottom-width:1px;font-weight:700;transform:translateY(1px)}@supports (color:color-mix(in lab, red, red)){.tr-key.is-next{box-shadow:0 0 0 3px color-mix(in srgb,var(--level,var(--color-accent)) 26%,transparent)}}.tr-actions{gap:.5rem;display:flex}.tr-again{border:2px solid var(--level,var(--color-accent));cursor:pointer;background:var(--ark-panel);min-height:44px;color:var(--level-deep,var(--color-accent-deep));font:800 var(--text-2xs)/1 var(--font-display,inherit);letter-spacing:.08em;text-transform:uppercase;box-shadow:var(--ark-lift);border-radius:999px;padding:.4375rem .9375rem}.tr-again:hover{background:var(--level-soft,var(--color-accent-soft));color:#fff;border-color:var(--level,var(--color-accent))}.slr{flex-direction:column;display:flex}.slr-title{font:700 var(--text-sm)/1.2 var(--font-display,inherit);color:var(--color-ink)}.slr-stage{grid-template-columns:8rem 1fr;align-items:start;gap:.625rem;display:grid}.slr-strip{flex-direction:column;gap:.375rem;max-height:24rem;display:flex;overflow:auto}.slr-thumb{text-align:left;border:1px solid var(--ark-line);background:var(--ark-panel);cursor:pointer;font-size:var(--text-2xs);border-radius:.375rem;align-items:center;gap:.375rem;padding:.375rem .5rem;display:flex}.slr-thumb.is-cur{border-color:var(--level,var(--color-accent));box-shadow:0 0 0 2px var(--level-soft,var(--color-accent-soft))}.slr-thumb-n{background:var(--ark-raise);border-radius:.25rem;flex:none;place-items:center;width:1.125rem;height:1.125rem;font-weight:700;display:grid}.slr-thumb-t{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.slr-canvas{color:#1e293b;border:1px solid var(--ark-line);background:#fff;border-radius:.5rem;padding:1.75rem 2rem;position:relative;overflow:hidden;box-shadow:0 4px 16px #0f172a1a}.slr-slide-title{font:700 var(--text-lg)/1.25 var(--font-display,inherit);outline:none;margin:0 0 .75rem}.slr-slide-title:empty:before{content:attr(data-ph);color:var(--ark-faint);font-weight:400}.slr-bullets{flex-direction:column;gap:.3rem;margin:0;padding-left:1.25rem;display:flex}.slr-canvas.is-two-content .slr-bullets{width:46%}.slr-canvas.is-title,.slr-canvas.is-section{text-align:center;flex-direction:column;justify-content:center;display:flex}.slr-canvas.is-section .slr-title{border-bottom:3px solid;align-self:center;padding-bottom:.5rem}.slr-canvas.is-title-only .slr-title{font-size:var(--scale-slidetitle);margin-top:1.5rem}.slr-canvas.is-blank .slr-title:empty{display:none}.slr-obj.is-selected{outline:2px solid var(--level,var(--color-accent));outline-offset:2px}.slr-obj-x{border:1px solid var(--ark-line);background:var(--ark-panel);width:2.75rem;height:2.75rem;color:var(--ark-txt);font-size:var(--text-sm);cursor:pointer;border-radius:999px;position:absolute;top:-.75rem;right:-.75rem}.slr-bullet{font-size:var(--text-md);outline:none;line-height:1.4}.slr-bullet.is-l1{font-size:var(--text-sm);opacity:.85;margin-left:1.25rem;list-style:circle}.slr-bullet.is-l2{font-size:var(--text-xs);opacity:.75;margin-left:2.5rem;list-style:square}.slr-obj{font-size:var(--text-xs);cursor:grab;touch-action:none;-webkit-user-select:none;user-select:none;border-radius:.375rem;padding:.375rem .625rem;position:absolute;transform:translate(-50%,-50%)}.slr-obj.is-textbox{border:1px dashed var(--pa-faint);background:#ffffffe6}.slr-obj.is-shape{background:var(--level-soft,var(--color-accent-soft));border:2px solid var(--level,var(--color-accent));width:5rem;height:3rem}.slr-obj.is-image{background:var(--pa-tint);border:1px dashed var(--pa-line);font-size:var(--text-xl);place-items:center;padding:0;display:grid}.slr-bullets{counter-reset:sn}.slr-bullet.is-l0{list-style:outside}.slr-bullet.is-number{counter-increment:sn;list-style:none}.slr-bullet.is-number:before{content:counter(sn) ". ";font-weight:700}.slr-bullet.is-l0{counter-reset:sn2}.slr-bullet.is-number.is-l1,.slr-bullet.is-number.is-l2{counter-increment:sn2}.slr-bullet.is-number.is-l1:before,.slr-bullet.is-number.is-l2:before{content:counter(sn2,lower-alpha) ". "}.tgt-view .slr-strip,.tgt-view .sr-tab{pointer-events:auto}.tgt-view .sr-tab-add{display:none}.slr-bullet.is-link{text-underline-offset:.15em;color:#1d4ed8;text-decoration:underline}.slr-obj-text{outline:none;min-height:1em;padding:.25rem;display:block}.slr-obj.is-table{border:1px solid var(--pa-line);cursor:grab;background:#ffffffe6;padding:0}.slr-tbl{border-collapse:collapse;width:100%;font-size:var(--text-xs)}.slr-tbl th,.slr-tbl td{border:1px solid var(--pa-line);cursor:text;min-width:2.5rem;padding:.25rem .5rem}.slr-tbl th{background:var(--pa-tint);font-weight:700}.slr-obj.is-line{background:0 0;border-top:3px solid;border-radius:0;height:0;padding:0}.slr-obj.is-line:before{content:"";position:absolute;inset:-1.375rem 0}.slr-obj.is-line.is-arrow:after{content:"";border:.4375rem solid #0000;border-left:.75rem solid;position:absolute;top:-.5rem;right:-.125rem}.slr-obj.is-crop{overflow:hidden}.slr-obj.is-crop .slr-img{transform-origin:50%}.slr-num{font-size:var(--text-2xs);color:var(--pa-dim);position:absolute;bottom:.5rem;right:.75rem}.slr-thumb.is-skip{opacity:.5;text-decoration:line-through}.slr-present.is-presenter{grid-template-columns:1fr 18rem;align-items:start;gap:1rem;display:grid}.slr-present-aside{background:var(--ark-panel);color:var(--color-ink);border:1px solid var(--ark-line);border-radius:.75rem;flex-direction:column;gap:.5rem;padding:.75rem;display:flex}.slr-present-clock{font:700 var(--text-2xl)/1 var(--font-mono,monospace)}.slr-present-notes{font-size:var(--text-sm);white-space:pre-wrap;line-height:1.5}.slr-present-next{font-size:var(--text-xs);color:var(--ark-txt)}.slr-obj.is-image.has-pic{background:0 0;border:0}.slr-img{object-fit:contain;pointer-events:none;width:100%;height:100%;display:block}.slr-grip{cursor:nwse-resize;touch-action:none;place-items:end;width:min(1.5rem,40%);height:min(1.5rem,40%);display:grid;position:absolute;bottom:0;right:0}.slr-grip:before{content:"";background:var(--level,var(--color-accent));border:1px solid #fff;border-radius:.125rem;width:.5625rem;height:.5625rem;display:block;box-shadow:0 1px 2px #0f172a66}.slr-trans{font-size:var(--text-2xs);color:var(--pa-dim);background:#ffffffe6;border-radius:.25rem;padding:.125rem .375rem;position:absolute;bottom:.5rem;right:.5rem}.slr-notes{border:1px solid var(--ark-line);width:100%;min-height:3.5rem;font-size:var(--text-xs);resize:vertical;border-radius:.5rem;padding:.5rem .75rem}.slr-thumb:focus-visible,.slr-notes:focus-visible{outline-offset:-3px}.slr.is-sorter .slr-stage{grid-template-columns:1fr}.slr.is-sorter .slr-strip{flex-flow:wrap;max-height:none}.slr-present{z-index:80;background:var(--ark-void);cursor:pointer;place-items:center;gap:1rem;padding:2rem;display:grid;position:fixed;inset:0}.slr-present .slr-canvas{aspect-ratio:16/9;background:#fff;width:min(90vw,60rem)}.slr-present-n{color:var(--ark-faint);font-size:var(--text-xs)}@media (max-width:640px){.slr-stage{grid-template-columns:1fr}.slr-strip{flex-direction:row;overflow-x:auto}}.is-play{border:2px dashed var(--level,var(--color-accent));background:var(--level-soft,var(--color-accent-soft));border-radius:.75rem;padding:.75rem}.ok-ticker{border:1px solid var(--ark-line);border-left:4px solid var(--level,var(--color-accent));background:var(--ark-panel);min-height:5rem;box-shadow:var(--ark-lift);color:var(--ark-txt);border-radius:.625rem;margin-top:.625rem;padding:.75rem .875rem}.ok-ticker-line{flex-wrap:wrap;align-items:center;gap:.4375rem;display:flex}.ok-ticker-n{background:var(--level,var(--color-accent));color:#fff;width:1.5rem;height:1.5rem;font:800 var(--text-2xs)/1 var(--font-display,inherit);border-radius:999px;flex:none;place-items:center;display:grid}.ok-ticker-name{font:800 var(--text-lg)/1.15 var(--font-display,inherit);color:var(--color-ink);letter-spacing:-.01em}.ok-ticker-path{font:700 var(--text-2xs)/1 var(--font-display,inherit);letter-spacing:.06em;text-transform:uppercase;color:var(--level-deep,var(--color-accent-deep));background:var(--level-soft,var(--color-accent-soft));border-radius:.3125rem;padding:.25rem .4375rem}.ok-ticker kbd{background:var(--ark-raise);border:1px solid var(--ark-line);font:600 var(--text-2xs)/1 var(--font-mono,ui-monospace,monospace);color:var(--ark-txt);border-bottom-width:2px;border-radius:.3125rem;padding:.1875rem .4375rem}.ok-ticker-teach{color:var(--ark-txt);font-size:var(--text-sm);flex-basis:100%;margin-top:.375rem;line-height:1.5}.ok-ticker.is-pop{animation:.3s ok-tick}@keyframes ok-tick{0%{opacity:.4;transform:translateY(-3px)}to{opacity:1;transform:none}}.spot{border:1px solid var(--ark-line);background:var(--ark-panel);border-radius:.75rem;margin:1rem 0;padding:.875rem 1rem}.tg-block{border:1px solid var(--ark-line);background:var(--ark-raise);border-radius:.75rem;margin-top:1.5rem;overflow:hidden}.tg-summary{cursor:pointer;font:700 var(--text-xs)/1.2 var(--font-display,inherit);color:var(--ark-txt);justify-content:space-between;align-items:center;gap:.5rem;padding:.625rem .875rem;list-style:none;display:flex}.tg-summary::-webkit-details-marker{display:none}.tg-summary:after{content:"▸";color:var(--ark-faint);transition:transform .15s}.tg-block[open] .tg-summary:after{transform:rotate(90deg)}.tg-block{--_fold-r:calc(.75rem - 1px)}.tg-block>summary:focus-visible{outline-offset:-3px;border-radius:var(--_fold-r) var(--_fold-r) 0 0}.tg-block:not([open])>summary:focus-visible{border-radius:var(--_fold-r)}.tg-body{flex-direction:column;gap:.875rem;padding:.25rem .875rem 1rem;display:flex}.tg-time{font-size:var(--text-2xs);color:var(--ark-txt);align-items:center;gap:.375rem;display:flex}.tg-time-chip{background:var(--ark-raise);border:1px solid var(--ark-line);color:var(--ark-txt);border-radius:999px;padding:.15rem .5rem;font-weight:700}.tg-watch h4{font:700 var(--text-2xs)/1 var(--font-display,inherit);color:var(--ark-txt);margin:0 0 .375rem}.tg-watch ul{font-size:var(--text-xs);color:var(--ark-txt);margin:0;padding-left:1.125rem;line-height:1.6}.tr-stat.is-score{color:var(--level,var(--color-accent));margin-left:auto;font-weight:700}.tr-combo{align-items:center;gap:.375rem;min-height:1.75rem;display:flex}.tr-combo-n{font:800 var(--text-lg)/1 var(--font-display,inherit)}.tr-combo-x{font:700 var(--text-sm)/1 var(--font-display,inherit);background:var(--ark-panel);border-radius:999px;padding:.15rem .4rem}.tr-combo[data-tier=cool]{color:#0891b2}.tr-combo[data-tier=warm]{color:var(--ark-star)}.tr-combo[data-tier=hot]{color:var(--ark-bad);animation:.5s infinite alternate tr-pulse}.tr-combo[data-tier=break] .tr-combo-break{font-size:var(--text-2xs);color:var(--ark-bad);font-weight:700}@keyframes tr-pulse{50%{opacity:.45}}.tr-result{background:linear-gradient(135deg,var(--level-deep,var(--color-accent-deep)),var(--ark-txt));color:#fff;border-radius:.75rem;flex-direction:column;align-items:center;gap:.625rem;margin-top:.75rem;padding:1rem;display:flex}.tr-result-stars{font-size:var(--text-2xl);letter-spacing:.15em;color:var(--ark-star)}.tr-result-grid{font-size:var(--text-xs);grid-template-columns:auto auto;gap:.25rem 1.25rem;display:grid}.tr-result-k{color:var(--ark-faint)}.tr-result-v{text-align:right;font-weight:700}.tr-result .tr-again{background:var(--ark-panel);border:0;font-weight:700}@media (prefers-reduced-motion:reduce){.tr-combo[data-tier=hot]{animation:none}}.sr-only{clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.rail{z-index:5;max-width:var(--content);padding:.5rem var(--gutter) .125rem;background:0 0;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:.75rem;margin:0 auto;display:grid;position:relative}.rail-track{grid-column:1;justify-content:space-between;align-items:center;gap:.5rem;min-width:0;padding:.25rem .75rem;display:flex;position:relative}.rail-svg{z-index:1;pointer-events:none;width:100%;height:100%;color:var(--level,var(--color-accent));position:absolute;inset:0}.rail-road{stroke:var(--ark-line);stroke-width:5px;stroke-linecap:round;opacity:.7}.rail-walker{z-index:9;pointer-events:none;width:2.125rem;height:3.375rem;margin:-3.75rem 0 0 -1.0625rem;transition:left .7s cubic-bezier(.2,.8,.3,1),top .7s cubic-bezier(.2,.8,.3,1);position:absolute}.rail-walker svg{filter:drop-shadow(0 2px 5px #0f172a5c);width:100%;height:100%;overflow:visible}.rail-walker .y-ink{stroke:#fff7e6;stroke-width:2.4px;stroke-linejoin:round;paint-order:stroke fill}.rail-walker .y-crown{fill:#f5c53a}.rail-walker .y-face{fill:#c2410c}.rail-walker .y-ear{fill:#e0a520}.rail-walker .y-fang{fill:#fff7e6;stroke:none}.rail-walker .y-body,.rail-walker .y-arm{fill:#9a3412}.rail-walker .y-skirt{fill:#e0a520}.rail-walker .y-leg{fill:#7c2d12}.rail-walker .y-club{fill:#78350f}.rail,.rail-track{overflow:visible}.rail-road-lit{stroke-width:5px;stroke-linecap:round;transition:stroke-dashoffset .7s cubic-bezier(.2,.8,.3,1)}.rail-dot{z-index:3;cursor:pointer;background:0 0;border:0;flex:none;padding:0;line-height:0;display:block;position:relative}.rail-node{place-items:center;width:2.625rem;height:2.625rem;transition:transform .2s cubic-bezier(.2,1.4,.4,1);display:grid;position:relative}.lotus{width:100%;height:100%;overflow:visible}.lotus-bloom{transform-origin:24px 26px;transition:transform .5s cubic-bezier(.2,1.5,.4,1);transform:scale(.62)}.lp{transition:fill .4s,stroke .4s}.lp-back{fill:#c3ccd9;stroke:#98a3b3;stroke-width:.8px}.lp-front{fill:#e8edf4;stroke:#a9b3c1;stroke-width:.8px}.lotus-pod{fill:#b6c0cf;stroke:#8b96a6;stroke-width:.9px;transition:fill .4s,stroke .4s}.ls{fill:#5b6675;transition:fill .4s}.rail-dot.is-clear .lotus-bloom{transform:scale(1)}.rail-dot.is-clear .lp-back{fill:#f0b81f;stroke:#a86a06}.rail-dot.is-clear .lp-front{fill:#fff0b8;stroke:#c98a0c}.rail-dot.is-clear .lotus-pod{fill:#e0a520;stroke:#8f5c05}.rail-dot.is-clear .ls{fill:#4a2f00}.rail-dot.is-clear .lotus{filter:drop-shadow(0 2px 5px #eab30875)}.rail-dot[data-grade="3"] .lotus{filter:drop-shadow(0 0 9px #f59e0b9c)drop-shadow(0 2px 5px #eab308aa)}.rail-dot.k-free .lotus-seeds{display:none}.rail-dot.k-free.is-clear .lp-back{fill:var(--level,var(--color-accent));stroke:var(--level-deep,var(--color-accent-deep))}.rail-dot.k-free.is-clear .lp-front{fill:var(--level-soft,var(--color-accent-soft));stroke:var(--level,var(--color-accent))}.rail-dot.k-free.is-clear .lotus-pod{fill:var(--level,var(--color-accent));stroke:var(--level-deep,var(--color-accent-deep))}.rail-dot.is-cur .rail-node{transform:scale(1.16)}.rail-dot.is-cur .rail-node:after{content:"";border:2px solid var(--level,var(--color-accent));border-radius:999px;animation:2s ease-out infinite node-pulse;position:absolute;inset:.0625rem}@keyframes node-pulse{0%{opacity:.85;transform:scale(.95)}70%{opacity:0;transform:scale(1.3)}to{opacity:0}}.rail-dot:hover .rail-node{transform:scale(1.08)}.rail-dot.is-cur:hover .rail-node{transform:scale(1.2)}.rail-dot.k-real .rail-node{width:3.5rem;height:3.5rem}.rail-dot.k-real .rail-node:after{border-radius:38% 38% 46% 46%/30% 30% 62% 62%}.rail-node.is-pop{animation:.55s cubic-bezier(.2,1.6,.4,1) rail-pop}@keyframes rail-pop{0%{transform:scale(1)}35%{transform:scale(1.5)rotate(-9deg)}65%{transform:scale(.95)rotate(5deg)}to{transform:scale(1)}}.rail-sound{font-size:var(--text-base);cursor:pointer;opacity:.7;background:0 0;border:0;flex:none;min-width:44px;min-height:44px;padding:.25rem;line-height:1}.rail-sound:hover{opacity:1}.rail-rank{border:1px solid var(--ark-line);background:var(--ark-panel);border-radius:999px;align-items:center;gap:.4375rem;padding:.25rem .5rem;display:flex}.rank-bar{background:var(--ark-void);border-radius:999px;width:4.5rem;height:.3125rem;display:block;overflow:hidden;box-shadow:inset 0 1px 2px #0f172a1a}.rank-bar i{background:linear-gradient(90deg,var(--level,var(--color-accent)),var(--ark-star));border-radius:999px;height:100%;transition:width .6s cubic-bezier(.2,.8,.3,1);display:block}.rank-xp{font:600 var(--text-2xs)/1.15 var(--font-display,inherit);color:var(--ark-dim);white-space:nowrap;text-overflow:ellipsis;max-width:6.5rem;overflow:hidden}.rank-xp b{color:var(--ark-score);font-weight:800}.stage-host{max-width:52rem;margin:1rem auto 0;padding:0 1rem}.stage{animation:.22s stage-in}@keyframes stage-in{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:none}}.rail+.container{padding-top:.25rem}.tr-sky{background:linear-gradient(180deg, #10233f 0%, var(--level-deep,#3b4cc7) 44%, #6b3b1e 78%, #b5652a 92%, #e2913f 100%);border-radius:.75rem;height:14rem;margin:.5rem 0;position:relative;overflow:hidden}@supports (color:color-mix(in lab, red, red)){.tr-sky{background:linear-gradient(180deg, #10233f 0%, color-mix(in srgb,var(--level-deep,var(--color-accent-deep)) 70%,#10233f) 44%, #6b3b1e 78%, #b5652a 92%, #e2913f 100%)}}.tr-sky{--focus-ring:#fff;box-shadow:inset 0 2px 12px #00000059}.tr-skyline{fill:#160f1c;opacity:.94;pointer-events:none;width:100%;height:auto;position:absolute;bottom:0;left:0;right:0}.tr-skyline-post{fill:#160f1c;opacity:.55}.tr-sky:before{content:"";opacity:.45;background-image:radial-gradient(#fff 1px,#0000 1.4px);background-size:34px 34px;height:52%;position:absolute;top:0;left:0;right:0;-webkit-mask-image:linear-gradient(#000,#0000);mask-image:linear-gradient(#000,#0000)}.tr-ground{background:repeating-linear-gradient(90deg,#f87171 0 12px,#fbbf24 12px 24px);height:.375rem;position:absolute;bottom:0;left:0;right:0;box-shadow:0 0 12px #f8717199}@media (pointer:fine){.tr.is-fall .tr-input{display:none}}.tr.is-fall .tr-input{border-color:var(--level,var(--color-accent))}.tr-stat.is-lives .tr-stat-n{color:#e11d48;letter-spacing:.0625rem}.tr-stat.is-lives.is-danger .tr-stat-n{animation:1s ease-in-out infinite tr-pulse}@media (prefers-reduced-motion:reduce){.tr-stat.is-lives.is-danger .tr-stat-n{animation:none}}.tr-stat.is-met .tr-stat-n{color:#15803d}.tr-stat.is-met .tr-stat-l{color:#12692f}.tr-stat.is-met:after{content:"✓";color:#16a34a;font:800 var(--text-xs)/1 var(--font-display,inherit);margin-left:.1875rem}.tr-word.is-tap{animation:.12s ease-out tw-tap}@keyframes tw-tap{50%{transform:translate(-50%)scale(1.14)}}.tr-sky.is-shake{animation:.38s cubic-bezier(.36,.07,.19,.97) tw-shake}@keyframes tw-shake{10%,90%{transform:translate(-2px)}20%,80%{transform:translate(4px)}30%,50%,70%{transform:translate(-7px)}40%,60%{transform:translate(7px)}}@media (prefers-reduced-motion:reduce){.tr-word.is-tap,.tr-sky.is-shake{animation:none}}.tr-start{cursor:pointer;z-index:2;color:#fff;background:linear-gradient(160deg,var(--level,var(--color-accent)),var(--level-deep,var(--color-accent-deep)));width:max-content;height:max-content;font:800 var(--text-md)/1 var(--font-display,inherit);letter-spacing:.04em;border:0;border-radius:999px;margin:auto;padding:.8125rem 1.5rem;animation:1.8s ease-in-out infinite tr-beckon;position:absolute;inset:0;box-shadow:0 6px 22px #0006,inset 0 1px #ffffff5c,0 0 0 4px #ffffff2e}.tr-start:hover{filter:brightness(1.08)}@keyframes tr-beckon{0%,to{transform:scale(1)}50%{transform:scale(1.055)}}@media (prefers-reduced-motion:reduce){.tr-start{animation:none}}.tr-word{white-space:nowrap;font:700 var(--text-sm)/1.1 var(--font-mono,ui-monospace,monospace);text-shadow:0 1px 2px #000;background:#0b1020cc;border:1px solid #ffffff2e;border-radius:.375rem;padding:.1875rem .4375rem;position:absolute;top:0;transform:translate(-50%)}.tr-word.is-aim{background:#0b1020;border-color:#4ade80;box-shadow:0 0 0 2px #4ade8066,0 0 14px #4ade8059}.tr-sky.is-miss{animation:.16s tr-miss}@keyframes tr-miss{50%{box-shadow:inset 0 0 0 3px #ef4444cc,inset 0 2px 12px #00000059}}.tr-word-hit{color:#4ade80}.tr-word-rest{color:#e2e8f0;font-style:normal}.tr-word.is-pop{animation:.32s ease-out forwards tw-pop}@keyframes tw-pop{to{opacity:0;filter:blur(2px);transform:translate(-50%)scale(1.7)}}.tr-word.is-boom{animation:.42s ease-out forwards tw-boom}@keyframes tw-boom{0%{background:#ef4444;border-color:#fca5a5}to{opacity:0;transform:translate(-50%)scale(.6)translateY(10px)}}@media (prefers-reduced-motion:reduce){.tr-word.is-pop,.tr-word.is-boom{animation-duration:.01ms}}.ok-struct{border:1px solid var(--ark-line);background:var(--ark-panel);cursor:pointer;font:700 var(--text-2xs)/1 var(--font-display,inherit);color:var(--ark-dim);border-radius:999px;margin-left:auto;padding:.1875rem .5625rem}.ok-struct.is-on{background:var(--level-soft,var(--color-accent-soft));border-color:var(--level,var(--color-accent));color:var(--level-deep,var(--color-accent-deep))}.sr-status,.slr-status{border-top:1px solid var(--ark-line);background:var(--ark-raise);font-size:var(--text-2xs);color:var(--ark-dim);align-items:center;gap:.5rem;padding:.375rem .625rem;display:flex}.is-struct .dr-block,.slr.is-struct .slr-slide-title,.slr.is-struct .slr-bullet,.slr.is-struct .slr-obj{outline:1px solid var(--struct-line,#db2777);outline-offset:2px;position:relative;margin-top:1.05rem!important}.is-struct .dr-block:before,.slr.is-struct .slr-slide-title:before,.slr.is-struct .slr-bullet:before,.slr.is-struct .slr-obj:before{content:attr(data-struct);background:var(--struct-line,#db2777);color:#fff;white-space:nowrap;font:700 var(--text-2xs)/1.35 var(--font-mono,ui-monospace,monospace);letter-spacing:.02em;border-radius:.25rem .25rem 0 0;padding:.0625rem .3125rem;position:absolute;top:-1.05rem;left:-1px}.sr-cell.is-formula{color:#065f46;font-family:var(--font-mono,ui-monospace,monospace);background:#ecfdf5}.sr-cell.is-literal{color:#991b1b;outline-offset:-1px;background:#fef2f2;outline:1px dashed #f87171}.tgt{border:1px solid var(--ark-line);background:var(--ark-panel);box-shadow:var(--ark-lift);border-radius:.75rem;margin-bottom:.75rem;overflow:hidden}.tgt-tabs{background:var(--ark-raise);border-bottom:1px solid var(--ark-line);gap:.25rem;padding:.3125rem .3125rem 0;display:flex}.tgt-tab{cursor:pointer;min-height:2.75rem;font:700 var(--text-2xs)/1.2 var(--font-display,inherit);color:var(--ark-dim);background:0 0;border:1px solid #0000;border-bottom:0;border-radius:.4375rem .4375rem 0 0;padding:.3125rem .625rem}.tgt-tab.is-on{background:var(--ark-panel);border-color:var(--ark-line);color:var(--level-deep,var(--color-accent-deep));margin-bottom:-1px;padding-bottom:.375rem}.tgt-tab.is-new{animation:.55s cubic-bezier(.2,1.6,.4,1) tgt-pop}@keyframes tgt-pop{0%{opacity:0;transform:scale(.85)}55%{transform:scale(1.08)}to{opacity:1;transform:scale(1)}}.tgt-pane{padding:0;display:none}.tgt-pane.is-on{display:block}.tgt-pane[data-pane=names]{padding:.625rem .75rem}.tgt-shade{position:relative}.tgt-view{pointer-events:none;-webkit-user-select:none;user-select:none;background:var(--ark-void);justify-content:center;display:flex;overflow:hidden}.tgt-view .is-target{width:100%}.tgt-view .dr-page,.tgt-view .slr-canvas{min-height:0}.tgt-view .dr-stage,.tgt-view .slr-stage{grid-template-columns:1fr;padding:.75rem;overflow:hidden}.tgt.is-rename .tgt-view .ok-titlebar{display:flex}.tgt-view .ok-titlebar,.tgt-view .dr-status,.tgt-view .dr-outline,.tgt-view .sr-status,.tgt-view .slr-status,.tgt-view .ok-struct{display:none}.tgt.is-peek .tgt-view{filter:blur(9px);opacity:.55}.tgt-peek{cursor:pointer;border:1px solid var(--level,var(--color-accent));background:var(--ark-panel);width:max-content;height:max-content;font:700 var(--text-2xs)/1 var(--font-display,inherit);color:var(--level-deep,var(--color-accent-deep));box-shadow:var(--ark-lift);border-radius:999px;margin:auto;padding:.5rem .875rem;position:absolute;inset:0}.tgt:not(.is-peek) .tgt-peek{display:none}.tgt-names{counter-reset:nm;flex-direction:column;gap:.4375rem;margin:0;padding:0;list-style:none;display:flex}.tgt-name{counter-increment:nm;border:1px dashed var(--level,var(--color-accent));background:var(--level-soft,var(--color-accent-soft));border-radius:.5rem;flex-wrap:wrap;align-items:center;gap:.5rem;padding:.375rem .5rem .375rem 2rem;display:flex;position:relative}.tgt-name:before{content:counter(nm);background:var(--level-deep,var(--color-accent-deep));color:#fff;width:1.125rem;height:1.125rem;font:800 var(--text-2xs)/1 var(--font-display,inherit);border-radius:999px;place-items:center;display:grid;position:absolute;top:.375rem;left:.5rem}.tgt-name b{font:700 var(--text-sm)/1.15 var(--font-display,inherit);color:var(--color-ink)}.tgt-name kbd{font-size:var(--text-2xs);border:1px solid var(--ark-line);background:var(--ark-panel);font-family:var(--font-mono,ui-monospace,monospace);border-bottom-width:2px;border-radius:.3125rem;padding:.0625rem .3125rem}.brief{border:1px solid var(--ark-line);border-left:3px solid var(--level,var(--color-accent));background:var(--ark-panel);box-shadow:var(--ark-lift);border-radius:.625rem;margin-bottom:.625rem;overflow:hidden}.brief-top{background:var(--ark-raise);border-bottom:1px solid var(--ark-line);flex-wrap:wrap;align-items:baseline;gap:.5rem;padding:.4375rem .6875rem;display:flex}.brief-kind{font:700 var(--text-2xs)/1 var(--font-display,inherit);text-transform:uppercase;letter-spacing:.1em;color:var(--level-deep,var(--color-accent-deep));flex:none;align-items:center;gap:.3125rem;display:inline-flex}.brief-kind-icon{font-size:var(--text-sm)}.brief-pos{font:700 var(--text-2xs)/1 var(--font-display,inherit);letter-spacing:.06em;text-transform:uppercase;color:var(--ark-dim);white-space:nowrap;flex:none;margin-left:auto}.brief-pos b{color:var(--level-deep,var(--color-accent-deep))}.brief-title{font:700 var(--text-md)/1.2 var(--font-display,inherit);letter-spacing:-.01em;color:var(--color-ink);flex:100%;margin:.25rem 0 0}.slr-chart{z-index:0;flex-direction:column;align-items:center;gap:.25rem;width:min(62%,26rem);display:flex;position:absolute;top:52%;left:50%;transform:translate(-50%,-50%)}.slr-chart .sr-chart{width:100%;height:auto}.slr-chart-title{text-align:center;min-width:6rem;font-size:var(--text-xs);color:var(--ark-dim);outline:none;font-weight:600}.slr-chart-title:empty:before{content:attr(data-ph);opacity:.55}.slr-master-foot{font-size:var(--text-2xs);color:var(--ark-dim);opacity:.8;border-top:1px solid;justify-content:space-between;padding:.35rem .75rem;display:flex;position:absolute;bottom:0;left:0;right:0}@supports (color:color-mix(in lab, red, red)){.slr-master-foot{border-top:1px solid color-mix(in srgb,currentColor 12%,transparent)}}.slr-anim-badge{background:var(--level,var(--color-accent));color:#fff;min-width:1.05rem;height:1.05rem;font:700 var(--text-2xs)/1 var(--font-display,inherit);white-space:nowrap;border-radius:999px;justify-content:center;align-items:center;gap:.15rem;padding:0 .25rem;display:inline-flex;position:absolute;top:-.45rem;left:-.45rem}.brief-fold{border:1px solid var(--ark-line);min-height:1.75rem;color:var(--ark-dim);cursor:pointer;font:700 var(--text-2xs)/1 var(--font-display,inherit);background:0 0;border-radius:999px;flex:none;align-items:center;gap:.25rem;margin-left:.375rem;padding:.1875rem .5rem;display:inline-flex}.brief-fold:focus-visible{outline:2px solid var(--focus-ring);outline-offset:2px}.brief-fold-caret{display:inline-block}.brief.is-folded .brief-fold-caret{transform:rotate(-90deg)}.brief.is-folded .brief-body{display:none}.brief-peek{font-size:var(--text-xs);color:var(--ark-dim);flex:100%;gap:.375rem;margin:.25rem 0 0;line-height:1.4;display:none}.brief.is-folded .brief-peek{display:flex}.brief-peek b{white-space:nowrap;color:var(--level-deep,var(--color-accent-deep));flex:none}.brief-peek span{white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.brief-task{font-size:var(--text-xs);color:var(--ark-dim);margin:.375rem .6875rem;line-height:1.45}.brief-steps{counter-reset:step;flex-direction:column;gap:.25rem;margin:.4375rem .6875rem .5rem;padding:0;list-style:none;display:flex}.brief-steps li{counter-increment:step;font-size:var(--text-sm);color:var(--ark-txt);padding-left:1.5rem;line-height:1.45;position:relative}.brief-steps li:before{content:counter(step);background:var(--level,var(--color-accent));color:#fff;width:1.125rem;height:1.125rem;font:800 var(--text-2xs)/1 var(--font-display,inherit);border-radius:999px;place-items:center;display:grid;position:absolute;top:.0625rem;left:0}.brief-goals .ok-goals{border-top:1px solid var(--ark-line)}.brief-task.is-free{font-style:italic}.stage[data-kind=repair] .brief-kind-icon{filter:drop-shadow(0 0 6px #f9731655)}.stage.is-clear .brief-title:after{content:" ✓";color:var(--ark-good)}.brief-goals .ok-goals{border:0;border-top:1px solid var(--ark-line);box-shadow:none;background:0 0;border-radius:0;margin:0}.brief-goals .ok-goals.is-complete{box-shadow:none;border-top-color:var(--ark-good)}.brief-goals .ok-goals{padding:.4375rem .6875rem .5rem}.brief-goals .ok-goals-head{background:0 0;border:0;justify-content:space-between;align-items:center;padding:0 0 .3125rem;display:flex}.brief-goals .ok-goals-title{font:800 var(--text-2xs)/1 var(--font-display,inherit);letter-spacing:.1em;text-transform:uppercase;color:var(--ark-dim)}.brief-goals .ok-goal-list{counter-reset:step;flex-direction:column;gap:.1875rem;padding:0;display:flex}.brief-goals .ok-goal{counter-increment:step;font-size:var(--text-sm);color:var(--ark-txt);background:0 0;border:0;border-radius:0;padding:.125rem 0 .125rem 1.625rem;line-height:1.45;transition:color .3s,opacity .3s;display:block;position:relative}.brief-goals .ok-goal .ok-goal-mark{display:none}.brief-goals .ok-goal:before{content:counter(step);background:var(--level,var(--color-accent));color:#fff;width:1.125rem;height:1.125rem;font:800 var(--text-2xs)/1 var(--font-display,inherit);border-radius:999px;place-items:center;transition:background .3s;display:grid;position:absolute;top:.1875rem;left:0}.brief-goals .ok-goal.is-done{color:var(--ark-dim)}.brief-goals .ok-goal.is-done .ok-goal-text{-webkit-text-decoration:line-through #86efac;text-decoration:line-through #86efac;text-decoration-thickness:2px}.brief-goals .ok-goal.is-done:before{content:"✓";background:#16a34a}.brief-goals .ok-goal-why{font-size:var(--text-2xs);margin-top:.125rem;display:block}.brief-goals:empty{display:none}.brief.is-slim{margin-bottom:.5rem}.brief-goals.is-loose{clip-path:inset(50%);width:1px;height:1px;position:absolute;overflow:hidden}@media (min-width:900px){.brief{z-index:15;position:sticky;top:0}.brief.is-stuck{border-radius:0 0 .625rem .625rem;box-shadow:0 6px 16px #0f172a1f}.brief.is-stuck .brief-task{display:none}.brief.is-stuck .brief-title{font-size:var(--text-sm)}.brief.is-stuck .brief-body{overscroll-behavior:contain;max-height:35vh;overflow-y:auto}.stage-foot{z-index:16;pointer-events:none;position:relative}.stage-foot .stage-next{pointer-events:auto}}@media print{.brief.is-folded .brief-body{display:block}.brief-peek,.brief-fold{display:none}}.stage-foot{justify-content:flex-end;margin-top:1rem;display:flex}.stage-next.is-ready{background:var(--level-deep,#3b4cc7)}@supports (color:color-mix(in lab, red, red)){.stage-next.is-ready{background:color-mix(in srgb, var(--level-deep,var(--color-accent-deep)) 88%, #000)}}.stage-next.is-ready{color:#fff;border-color:var(--level-deep,var(--color-accent-deep));box-shadow:0 0 0 4px var(--level,#5b6ee8)}@supports (color:color-mix(in lab, red, red)){.stage-next.is-ready{box-shadow:0 0 0 4px color-mix(in srgb,var(--level,var(--color-accent)) 22%,transparent)}}.stage-next.is-ready{animation:.5s cubic-bezier(.2,1.6,.4,1) next-ready}@keyframes next-ready{0%{transform:scale(1)}45%{transform:scale(1.09)}to{transform:scale(1)}}.stage-next{--btn-pad:.5rem 1.125rem;min-height:44px;font-family:var(--font-display,inherit)}.stage:last-child .stage-next{display:none}.run-done{text-align:center;background:linear-gradient(135deg,var(--level,var(--color-accent)),var(--level-deep,var(--color-accent-deep)) 60%,#0f172a);color:#fff;border:0;border-radius:1rem;max-width:52rem;margin:1.5rem auto;padding:1.5rem;box-shadow:0 12px 32px #0f172a2e}.run-done-stars{font-size:var(--text-2xl);color:var(--ark-star);letter-spacing:.1em}.run-done-text{font:700 var(--text-md)/1 var(--font-display,inherit);margin:.25rem 0 1rem}.run-done .ext-list{text-align:left;max-width:34rem;margin:0 auto}.run-done .ext{color:#e2e8f0;background:#ffffff14}@media (max-width:640px){.rail{gap:.5rem;padding:.5rem}.rail-node{width:2rem;height:2rem}.rail-dot.k-real .rail-node{width:2.625rem;height:2.625rem}.rail-dot{flex:0 44px;place-items:center;min-height:44px;display:grid}.rail-track{gap:0;padding:.125rem}.rail-road,.rail-road-lit{stroke-width:4px}.brief-title{font-size:var(--text-base)}.brief-task{margin:.3125rem .625rem}.stage-host{padding:0}.docrun:not(.is-target) .dr-stage{padding:.5rem}.sliderun:not(.is-target) .slr-stage,.tgt-view .dr-stage,.tgt-view .slr-stage{padding:.375rem}.stage .dr-page{padding:1rem .875rem}.stage .dr-page[data-margins=Narrow]{padding:.5rem}.stage .dr-page[data-margins=Wide]{padding:1.5rem 1.75rem}.real{padding:.75rem .625rem}}@media (max-width:400px){.rail-track{grid-column:1/-1}.rail-right{grid-area:2/1;justify-self:end}.rail>.slide-toggle{grid-area:2/2}}@media (max-width:340px){.rail{padding-left:.25rem;padding-right:.25rem}.rail-track{padding:0}}.fx-layer{z-index:100;pointer-events:none;contain:strict;position:fixed;inset:0;overflow:hidden}.fx-bit{will-change:transform,opacity;display:block;position:absolute}.fx-ring{border:3px solid #fbbf24;border-radius:999px;width:3rem;height:3rem;position:absolute}.fx-wrap{z-index:90;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);opacity:0;background:#0f172a99;place-items:center;padding:1rem;transition:opacity .2s;display:grid;position:fixed;inset:0}.fx-wrap.is-in{opacity:1}.fx-card{text-align:center;color:#f8fafc;background:linear-gradient(160deg,var(--level,var(--color-accent)) 0%,var(--level-deep,var(--color-accent-deep)) 55%,#0f172a 100%);border-radius:1.25rem;width:min(26rem,100%);padding:2rem 1.5rem 1.5rem;transition:transform .32s cubic-bezier(.18,1.5,.4,1);position:relative;overflow:hidden;transform:translateY(18px)scale(.94);box-shadow:0 24px 60px #0f172a59,inset 0 0 0 1px #ffffff2e}.fx-wrap.is-in .fx-card{transform:none}.fx-wrap.is-run .fx-card{background:linear-gradient(160deg,#f59e0b 0%,#b45309 55%,#0f172a 100%)}.fx-wrap.is-medal .fx-card{background:linear-gradient(160deg,#fbbf24 0%,#a16207 55%,#0f172a 100%)}.fx-stars:empty{display:none}.fx-card:after{content:"";background:linear-gradient(90deg,#fff0,#ffffff30,#fff0);width:60%;height:220%;animation:2.6s ease-in-out .35s infinite fx-shine;position:absolute;top:-60%;left:-60%;transform:rotate(18deg)}@keyframes fx-shine{0%{left:-60%}55%,to{left:130%}}.fx-medal{place-items:center;width:5rem;height:5rem;margin:0 auto .75rem;display:grid;position:relative}.fx-medal-icon{z-index:1;font-size:var(--text-3xl);filter:drop-shadow(0 4px 12px #0006);animation:.7s cubic-bezier(.2,1.7,.4,1) both fx-medal;position:relative}@keyframes fx-medal{0%{transform:scale(0)rotate(-40deg)}to{transform:none}}.fx-rays{opacity:.5;background:repeating-conic-gradient(#fbbf2400 0deg 9deg,#fbbf2455 9deg 18deg);border-radius:999px;animation:9s linear infinite fx-spin;position:absolute;inset:-2.25rem;-webkit-mask:radial-gradient(closest-side,#0000 38%,#000 42% 72%,#0000 78%);mask:radial-gradient(closest-side,#0000 38%,#000 42% 72%,#0000 78%)}@keyframes fx-spin{to{transform:rotate(360deg)}}.fx-eyebrow{font:800 var(--text-2xs)/1 var(--font-display,inherit);text-transform:uppercase;letter-spacing:.18em;color:var(--ark-star);margin:0}.fx-card-title{font:800 var(--text-lg)/1.25 var(--font-display,inherit);color:#fff;margin:.375rem 0 .75rem}.fx-stars{background:#0f172a59;border-radius:999px;justify-content:center;gap:.5rem;width:fit-content;margin:.375rem auto .875rem;padding:.375rem .875rem;display:flex}.fx-star{font-size:var(--text-3xl);color:#ffffff26;text-shadow:none;font-style:normal;line-height:1;transition:color .2s}.fx-star.is-on{color:var(--ark-star);text-shadow:0 0 18px #f59e0bcc;animation:.55s cubic-bezier(.2,1.8,.35,1) both fx-star}@keyframes fx-star{0%{transform:scale(0)rotate(-90deg)}60%{transform:scale(1.45)rotate(8deg)}to{transform:scale(1)rotate(0)}}.fx-wrap.is-run .fx-stars{flex-wrap:wrap;gap:.1875rem}.fx-wrap.is-run .fx-star{font-size:var(--text-lg)}.fx-note{font-size:var(--text-xs);color:var(--ark-faint);margin:0 0 1.125rem;line-height:1.5}.fx-cta{z-index:1;cursor:pointer;color:#08131a;font:800 var(--text-sm)/1 var(--font-display,inherit);background:#fbbf24;border:0;border-radius:999px;padding:.6875rem 1.5rem;position:relative;box-shadow:0 6px 18px #f59e0b55}.fx-cta:hover{background:#fcd34d}.fx-cta:focus-visible{outline:3px solid var(--ark-line-2);outline-offset:2px}.run-done.is-pop{animation:.6s cubic-bezier(.2,1.5,.4,1) fx-done}@keyframes fx-done{0%{transform:scale(.9)}55%{transform:scale(1.03)}to{transform:scale(1)}}@media (prefers-reduced-motion:reduce){.stage,.fx-card:after,.fx-rays,.fx-medal-icon,.fx-star.is-on,.rail-node.is-pop,.run-done.is-pop,.rail-dot.is-cur .rail-node:after{animation:none}.fx-card{transition:none;transform:none}}.ok-btn{min-width:44px;height:44px}.ok-select,.ok-number,.ok-color{height:44px}.ok-color{width:44px}.ok-tab,.ok-struct,.brief-fold,.sr-fx,.slr-thumb{min-height:44px}