@font-face{font-family:Atkinson Hyperlegible Next Variable;font-style:normal;font-display:swap;font-weight:200 800;src:url(/assets/atkinson-hyperlegible-next-latin-ext-wght-normal-C6vrW8VD.woff2)format("woff2-variations");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Atkinson Hyperlegible Next Variable;font-style:normal;font-display:swap;font-weight:200 800;src:url(/assets/atkinson-hyperlegible-next-latin-wght-normal-BcXVPD7q.woff2)format("woff2-variations");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Atkinson Hyperlegible Mono Variable;font-style:normal;font-display:swap;font-weight:200 800;src:url(/assets/atkinson-hyperlegible-mono-latin-ext-wght-normal-CXgNM06D.woff2)format("woff2-variations");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Atkinson Hyperlegible Mono Variable;font-style:normal;font-display:swap;font-weight:200 800;src:url(/assets/atkinson-hyperlegible-mono-latin-wght-normal-CoA7y8X5.woff2)format("woff2-variations");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Atkinson Fallback;font-weight:100 549;src:local(Arial),local(ArialMT),local(Roboto),local(Liberation Sans);size-adjust:99%;ascent-override:99%;descent-override:32.3%;line-gap-override:0%}@font-face{font-family:Atkinson Fallback;font-weight:550 799;src:local(Arial Bold),local(Arial-BoldMT),local(Roboto Bold),local(Roboto-Bold),local(Liberation Sans Bold);size-adjust:99%;ascent-override:99%;descent-override:32.3%;line-gap-override:0%}@font-face{font-family:Atkinson Fallback;font-weight:800 1000;src:local(Arial Bold),local(Arial-BoldMT),local(Roboto Bold),local(Roboto-Bold),local(Liberation Sans Bold);size-adjust:95.2%;ascent-override:102.9%;descent-override:33.6%;line-gap-override:0%}@font-face{font-family:Chivo Fallback;font-weight:100 1000;src:local(Arial Bold),local(Arial-BoldMT),local(Roboto Bold),local(Roboto-Bold),local(Liberation Sans Bold);size-adjust:101%;ascent-override:93.1%;descent-override:24.8%;line-gap-override:0%}:root{--paper:#fbfcfd;--surface:#fff;--grid:#e8edf3;--premium:#8a6414;--flair-fill:#e3b341;--flair-edge:#8a6414;--line:#d5dde6;--switch-off:#78788033;--ink:#262a2f;--ink-2:#4a5561;--muted:#616d7b;--field-line:#78838f;--pencil:#f2c12e;--pencil-soft:#fdf1c7;--red:#c8372d;--green:#2f7a4a;--brand:#284e90;--logo-l:#262a2f;--logo-r:#284e90;--logo-s:#ff7a2f;--m-bg:#fbfcfd;--m-ring:#d5dde6;--m-body:#a7b0bb;--m-ear:#8a95a1;--m-muzzle:#fff;--m-frames:#16305a;--m-thought:#74c6ff;--fig-paper:#fff;--fig-ink:#1b1e22;--fig-1:#cbd3dc;--fig-2:#8a95a1;--fig-3:#525c68;--fig-missing:#fdf1c7;--fig-muted:#6b7785;--fig-mark:#2a78d6;--s1:#2a78d6;--s2:#eb6834;--s3:#1baf7a;--s4:#eda100;--s5:#e87ba4;--btn-ink:#fbfcfd;--hl-bg:var(--pencil-soft);--hl-edge:transparent;--ease-out:cubic-bezier(.23, 1, .32, 1);--sans:"Atkinson Hyperlegible Next Variable", "Atkinson Fallback", system-ui, sans-serif;--mono:"Atkinson Hyperlegible Mono Variable", ui-monospace, monospace;--series-1:#2a78d6;--series-2:#eb6834;--series-3:#1baf7a;--bar-part:#256abf;--bar-rest:#86b6ef;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light dark}@media (prefers-color-scheme:dark){:root{--lightningcss-light: ;--lightningcss-dark:initial}:root:not([data-theme=light]){--paper:#171b20;--series-1:#3987e5;--series-2:#d95926;--series-3:#199e70;--bar-part:#6da7ec;--bar-rest:#1c5cab;--surface:#1e242b;--grid:#232a32;--line:#313a45;--switch-off:#78788066;--premium:#dcbb66;--field-line:#74808d;--ink:#e9edf1;--ink-2:#bcc5ce;--muted:#8f9aa6;--pencil:#f2c12e;--pencil-soft:#4d4118;--red:#ff6b5e;--green:#5cc98a;--brand:#6b98e0;--logo-l:#e2f2ff;--logo-r:#ff7a2f;--logo-s:#fff;--m-bg:#16305a;--m-ring:#2c4673;--m-body:#8a95a1;--m-ear:#6b7785;--m-muzzle:#e3e7ec;--m-frames:#fff;--m-thought:#74c6ff;--s1:#3987e5;--s2:#d95926;--s3:#199e70;--s4:#c98500;--s5:#d55181;--btn-ink:#171b20;--hl-bg:var(--surface);--hl-edge:var(--pencil)}}:root[data-theme=dark]{--paper:#171b20;--series-1:#3987e5;--series-2:#d95926;--series-3:#199e70;--bar-part:#6da7ec;--bar-rest:#1c5cab;--surface:#1e242b;--grid:#232a32;--line:#313a45;--switch-off:#78788066;--premium:#dcbb66;--field-line:#74808d;--ink:#e9edf1;--ink-2:#bcc5ce;--muted:#8f9aa6;--pencil:#f2c12e;--pencil-soft:#4d4118;--red:#ff6b5e;--green:#5cc98a;--brand:#6b98e0;--logo-l:#e2f2ff;--logo-r:#ff7a2f;--logo-s:#fff;--m-bg:#16305a;--m-ring:#2c4673;--m-body:#8a95a1;--m-ear:#6b7785;--m-muzzle:#e3e7ec;--m-frames:#fff;--m-thought:#74c6ff;--s1:#3987e5;--s2:#d95926;--s3:#199e70;--s4:#c98500;--s5:#d55181;--btn-ink:#171b20;--hl-bg:var(--surface);--hl-edge:var(--pencil);--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}:root[data-theme=light]{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}*{box-sizing:border-box}html{-webkit-tap-highlight-color:transparent;-webkit-text-size-adjust:100%}html.no-overscroll{overscroll-behavior:none}body{background:var(--paper);color:var(--ink);font:400 16px/1.55 var(--sans);font-variant-numeric:tabular-nums;margin:0}main{max-width:760px;padding:calc(20px + env(safe-area-inset-top,0px)) calc(16px + env(safe-area-inset-right,0px)) calc(56px + env(safe-area-inset-bottom,0px)) calc(16px + env(safe-area-inset-left,0px));--cell:min(116px, calc((100vw - 32px - 18px) / 4));min-height:100vh;margin:0 auto}h1,h2,h3{letter-spacing:-.01em;font-weight:750;line-height:1.2}h1{margin:0 0 6px;font-size:28px}h2{margin:0 0 10px;font-size:20px}h3{margin:0;font-size:16px}p{margin:0 0 10px}section{margin-bottom:36px}a{color:var(--ink);-webkit-text-decoration-color:var(--pencil);text-decoration-color:var(--pencil);text-underline-offset:3px;text-decoration-thickness:2px}[hidden]{display:none!important}.meta{color:var(--muted);font-size:14px}.good{color:var(--green)}.bad{color:var(--red)}:focus-visible{outline:3px solid var(--pencil);outline-offset:2px;border-radius:4px}button,a,[role=button],summary,label.btn{touch-action:manipulation}button,.btn,.choice,.option{-webkit-user-select:none;user-select:none}.btn{border:1.5px solid var(--ink);background:var(--ink);min-height:40px;color:var(--btn-ink);font:600 15px/1 var(--sans);cursor:pointer;transition:transform .16s var(--ease-out);border-radius:8px;align-items:center;gap:8px;padding:8px 16px;text-decoration:none;display:inline-flex}.btn.ghost{color:var(--ink);border-color:var(--line);background:0 0}.btn:active:not(:disabled){transform:scale(.97)}.btn:disabled{opacity:.45;cursor:not-allowed}.actions{flex-wrap:wrap;gap:8px;display:flex}#sub-actions,#sub-note{margin-top:10px}.tag.premium,.profile .who .tag.premium{letter-spacing:.14em;text-transform:uppercase;white-space:nowrap;color:var(--premium);background:0 0;border:0;border-radius:0;align-items:center;gap:5px;margin:2px 0 2px 8px;padding:0;font-size:10px;font-weight:700;line-height:1.5;display:inline-flex}.profile .who .tag.premium{margin-left:0}.tag.premium:before{content:"";background:currentColor;flex:none;width:5px;height:5px;transform:rotate(45deg)}.signed-in-row{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:8px 16px;display:flex}.signed-in-row p{margin:0}.btn.small{min-height:36px;padding:6px 12px;font-size:14px}.plans{border-top:1px solid var(--line);margin:12px 0 0;padding:0;list-style:none}.plans li{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;gap:16px;padding:12px 0;display:flex}.plans p{margin:2px 0 0}@media (hover:hover) and (pointer:fine){.btn.ghost:hover{border-color:var(--ink)}}.page-head{margin-bottom:24px}.back{color:var(--muted);margin-bottom:10px;padding:4px 0;font-size:14px;text-decoration:none;display:inline-block}.back:before{content:"‹ "}.head-row{color:var(--muted);flex-wrap:wrap;align-items:center;gap:6px 18px;font-size:14px;display:flex}.head-row a{color:var(--ink-2)}.head-row .pace{color:var(--red);font-weight:600}.head-row .pace:empty{display:none}.limit,.level-pick{align-items:center;gap:6px;display:inline-flex}.level-pick select{min-height:32px;font:600 16px var(--sans);color:var(--ink);background:var(--surface);border:1px solid var(--line);border-radius:6px;padding:2px 8px}.pick-note{margin:-4px 0 12px}.limit input{width:4.2em;min-height:32px;font:600 16px var(--sans);color:var(--ink);background:var(--surface);border:1px solid var(--line);border-radius:6px;padding:2px 8px}.tag{background:var(--pencil-soft);color:var(--ink);vertical-align:4px;border-radius:999px;margin-left:6px;padding:1px 8px;font-size:12px;font-weight:600;display:inline-block}.bubbles{vertical-align:middle;gap:4px;display:inline-flex}.bubbles i{border:1.5px solid var(--ink-2);border-radius:50%;width:11px;height:11px}.bubbles i.on{background:var(--ink);border-color:var(--ink)}.plate{background-color:var(--surface);background-image:linear-gradient(var(--grid) 1px, transparent 1px), linear-gradient(90deg, var(--grid) 1px, transparent 1px);box-shadow:inset 0 0 0 1px var(--line);background-position:-1px -1px;background-size:10px 10px;border-radius:10px;flex:none}.plate svg{width:100%;height:auto;display:block}.plate-lg{width:176px}.plate-sm{width:96px}.art-ink{fill:none;stroke:var(--ink);stroke-width:2px;stroke-linecap:round;stroke-linejoin:round}.art-thin{stroke-width:1.4px}.art-joined{stroke-linejoin:miter}.art-solid{fill:var(--ink)}.art-mark{fill:var(--pencil)}.art-under{opacity:.85}.art-dim{opacity:.35}.art-num{font:700 17px var(--mono);fill:var(--ink)}.art-small{font:600 10px var(--sans);fill:var(--ink-2)}.art-q{font:800 15px var(--sans);fill:var(--ink)}.art-word{font:800 11px var(--sans);fill:var(--ink);letter-spacing:.04em}.art-exam{font:900 36px var(--sans);fill:var(--ink);letter-spacing:.06em}.intro{margin-bottom:28px}.brand{align-items:center;gap:.4em;display:flex}.brand .logo{flex:none;width:1.3em;height:1.3em;position:relative;top:-.15em}.intro p{max-width:52ch;color:var(--ink-2)}.intro nav{flex-wrap:wrap;gap:18px;font-size:15px;display:flex}.feature{border-radius:14px;align-items:center;gap:20px;margin-bottom:20px;padding:18px;display:flex}.feature.lead{background:var(--hl-bg);box-shadow:inset 4px 0 0 var(--hl-edge)}.feature.plain{border-bottom:1px solid var(--line);border-radius:0;margin-bottom:36px;padding:4px 0 18px}.feature h2{margin-bottom:4px}.feature p{color:var(--ink-2);text-wrap:pretty;max-width:52ch}.feature .plate{background-color:var(--surface)}.chapter{grid-template-columns:176px 1fr;grid-template-areas:"plate head""guide guide""body body";gap:12px 22px;margin-bottom:44px;display:grid}.chapter>.plate{grid-area:plate;align-self:start}.chapter-head{grid-area:head}.chapter-body{grid-area:body}.chapter-head{align-self:center}.chapter-guide{grid-area:guide}.chapter-guide .guide-card{display:flex}.chapter-head h2{margin-bottom:2px}.chapter-head p{color:var(--ink-2);margin-bottom:8px}.actions.quick{align-items:center;margin:4px 0 8px}.actions.quick .meta{margin:0}details.chapter.panel{overflow-anchor:none;border:1px solid var(--line);background:var(--surface);border-radius:18px;margin:0 0 12px;padding:0;display:block;overflow:clip}details.chapter.panel>summary{cursor:pointer;-webkit-tap-highlight-color:transparent;grid-template-columns:64px 1fr 18px;align-items:center;gap:14px;padding:20px 16px;list-style:none;display:grid}details.chapter.panel>summary::-webkit-details-marker{display:none}details.chapter.panel>summary:active{background:color-mix(in srgb, var(--ink) 4%, transparent)}details.chapter.panel>summary:focus-visible{outline:2px solid var(--brand);outline-offset:-2px;border-radius:18px}details.chapter.panel .plate-lg{width:64px}details.chapter.panel .plate,details.chapter.panel .chapter-head{grid-area:auto;align-self:center}details.chapter.panel .chapter-guide,details.chapter.panel .chapter-body{grid-area:auto}details.chapter.panel .chapter-head h2{margin:0 0 2px;font-size:17px}details.chapter.panel .chapter-head p{color:var(--muted);-webkit-line-clamp:2;-webkit-box-orient:vertical;margin:0;font-size:14px;line-height:1.4;display:-webkit-box;overflow:hidden}details.chapter.panel .chev{border-right:2px solid var(--muted);border-bottom:2px solid var(--muted);justify-self:end;width:9px;height:9px;transition:transform .3s cubic-bezier(.32,.72,0,1);transform:translateY(-2px)rotate(45deg)}details.chapter.panel[open] .chev{transform:translateY(2px)rotate(-135deg)}details.chapter.panel.shutting .chev{transform:translateY(-2px)rotate(45deg)}details.chapter.panel>.panel-body{padding:0 16px 16px}details.chapter.panel .chapter-guide{margin:4px 0 6px}@media (prefers-reduced-motion:reduce){details.chapter.panel .chev{transition:none}}.tracks{border-top:1px solid var(--line);margin:12px 0 0;padding:0;list-style:none}.track{border-bottom:1px solid var(--line);grid-template-columns:1fr auto;align-items:center;gap:4px 12px;padding:12px 0;display:grid}.track-title{font-weight:650;line-height:1.3}.track-sub{color:var(--muted);align-items:center;gap:10px;font-size:13px;display:flex}.diag-panel{padding:14px 0 4px}.diag-panel .panel-head{justify-content:space-between;align-items:center;gap:12px;display:flex}.diag-panel .panel-head .btn{justify-content:center;min-width:88px}.track-sub{flex-wrap:wrap;row-gap:2px}.track.tap{grid-template-columns:1fr auto auto;gap:4px 8px;padding:0;position:relative}.track.tap:not(:has(>:nth-child(3))){grid-template-columns:1fr auto}.track.tap .track-main{color:var(--ink);flex-direction:column;gap:3px;min-width:0;padding:13px 0;text-decoration:none;display:flex}.track.tap .track-main:after{content:"";position:absolute;inset:0}.track.tap .track-title{display:block}.track.tap:active{background:color-mix(in srgb, var(--ink) 4%, transparent)}.track.tap .track-main:focus-visible{outline:none}.track.tap:has(.track-main:focus-visible){outline:2px solid var(--brand);outline-offset:-2px;border-radius:8px}.timed-btn{z-index:1;border:1.5px solid var(--line);background:var(--surface);width:38px;height:38px;color:var(--ink);-webkit-tap-highlight-color:transparent;transition:transform .14s var(--ease-out), border-color .14s;border-radius:50%;place-items:center;text-decoration:none;display:grid;position:relative}.timed-btn .icon{width:19px;height:19px}.timed-btn:active{transform:scale(.9)}@media (hover:hover) and (pointer:fine){.timed-btn:hover{border-color:var(--ink)}}.row-play{z-index:1;-webkit-tap-highlight-color:transparent;background:var(--ink);width:38px;height:38px;transition:transform .14s var(--ease-out);border-radius:50%;place-items:center;margin-left:4px;display:grid;position:relative}.row-play:before{content:"";background:var(--btn-ink);clip-path:polygon(0 0,100% 50%,0 100%);width:12px;height:13px;margin-left:3px}.track.tap:active .row-play,.row-play:active{transform:scale(.9)}.settings{border-top:1px solid var(--line);padding-top:18px}@media (width<=560px){.chapter{grid-template-columns:104px 1fr;gap:10px 14px}.chapter .plate-lg{width:104px}.chapter-head h2{font-size:19px}.chapter-head p{font-size:15px}.feature{flex-direction:column;align-items:flex-start;gap:14px}.feature.plain{flex-direction:row;align-items:flex-start}.feature .plate-lg{width:132px}.feature.plain .plate-lg{width:104px}.track .btn{min-height:36px;padding:6px 12px;font-size:14px}}@media (width<=360px){.track{grid-template-columns:1fr}}.panel{background:var(--surface);border:1px solid var(--line);border-radius:10px;padding:14px 16px}.panel-head{justify-content:space-between;align-items:center;margin-bottom:8px;display:flex}.panel-head h2,.panel-head h3{margin:0}table.diag{border-collapse:collapse;width:100%;font-size:14px}.diag th,.diag td{text-align:left;border-bottom:1px solid var(--line);padding:7px 10px 7px 0}.diag th{color:var(--muted);font-size:13px;font-weight:600}.grid,.options{gap:6px;margin-bottom:20px;display:grid}.grid{grid-template-columns:repeat(3, var(--cell))}.options{grid-template-columns:repeat(4, var(--cell))}.cell{aspect-ratio:1;background:var(--fig-paper);border:1px solid var(--line);color:var(--fig-muted);border-radius:6px;place-items:center;padding:0;font-size:28px;display:grid;position:relative}.cell.missing{background-color:var(--fig-missing);border-style:dashed;border-color:var(--ink-2);color:var(--fig-ink)}.cell svg{width:100%;height:100%}.row-hl{outline:2px solid var(--pencil);outline-offset:-2px}button.cell{cursor:pointer;font:inherit;transition:transform .14s var(--ease-out)}button.cell:active:not(:disabled){transform:scale(.97)}button.cell:disabled{cursor:default}button.cell.correct{box-shadow:inset 0 0 0 2px var(--green);border-color:var(--green)}button.cell.wrong{box-shadow:inset 0 0 0 2px var(--red);border-color:var(--red)}@media (hover:hover) and (pointer:fine){button.cell:hover:not(:disabled){border-color:var(--ink)}}.key{min-width:18px;height:18px;font:600 11px/1 var(--sans);border:1.2px solid var(--line);background:var(--surface);color:var(--muted);border-radius:50%;place-items:center;display:grid;position:absolute;top:3px;left:3px}.btn .key{min-width:0;height:auto;color:inherit;opacity:.65;background:0 0;border:0;border-radius:0;font-size:12px;font-weight:500;display:inline;position:static}@media (pointer:coarse){.btn .key,.cell.option .key{display:none}}.mx-shape,.mx-line{stroke:var(--fig-ink);stroke-linejoin:round;stroke-linecap:round}.mx-dot{fill:var(--fig-ink)}.mx-fill-0{fill:none}.mx-fill-1{fill:var(--fig-1)}.mx-fill-2{fill:var(--fig-2)}.mx-fill-3{fill:var(--fig-3)}.mx-poly{fill:var(--fig-1);stroke:var(--fig-ink);stroke-width:1.2px}.timer{background:var(--line);border-radius:2px;height:4px;margin-bottom:14px;overflow:hidden}.timer-bar{background:var(--ink);transform-origin:0;height:100%}.timer-bar.low{background:var(--red)}.prompt{max-width:64ch;margin-bottom:18px;font-size:17px}.prompt .big{letter-spacing:.01em;font-size:26px;font-weight:700}.prompt .story{font-size:19px;font-weight:500;line-height:1.5}.prompt .story .marked{background:var(--pencil-soft);color:inherit;border-radius:3px;padding:0 .15em;font-weight:750}.prompt table,.guide .example table{border-collapse:collapse;background:var(--surface);margin:8px 0 12px;font-size:15px}.prompt th,.prompt td,.guide .example th,.guide .example td{border:1px solid var(--line);text-align:right;padding:5px 12px}.prompt th:first-child,.prompt td:first-child,.guide .example th:first-child,.guide .example td:first-child{text-align:left;white-space:nowrap}.prompt th,.guide .example th{font-weight:650}.prompt table.qc{table-layout:fixed;width:100%;max-width:30em;font-size:18px}.prompt table.qc th,.prompt table.qc td{text-align:center;white-space:normal;padding:8px 10px}.prompt table.qc th{color:var(--muted);font-size:14px}.prompt table.chain .uses{text-align:left;min-width:8em}@media (width<=520px){.prompt table.chain,.prompt .research table{font-size:13.5px}.prompt table.chain th,.prompt table.chain td,.prompt .research th,.prompt .research td{padding:4px 6px}.prompt table.chain th:first-child,.prompt table.chain td:first-child,.prompt .research th:first-child,.prompt .research td:first-child{white-space:normal}}.prompt .premise{margin:2px 0}.prompt .conclusion{margin-top:12px;font-weight:700}.prompt ol.rules{margin:8px 0 4px;padding-left:26px}.prompt ol.rules li{margin:3px 0}.series-terms,.digits,.digit{font-family:var(--mono)}blockquote.passage{background:var(--surface);border-left:3px solid var(--pencil);border-radius:0 6px 6px 0;margin:8px 0 14px;padding:12px 16px;line-height:1.65}blockquote.passage p{margin:0 0 10px}blockquote.passage p:last-child{margin-bottom:0}.choices{gap:8px;max-width:520px;margin-bottom:20px;display:grid}.choice{text-align:left;background:var(--surface);min-height:48px;color:var(--ink);border:1px solid var(--line);font:inherit;cursor:pointer;transition:transform .14s var(--ease-out);border-radius:8px;align-items:center;gap:12px;padding:8px 12px;font-size:16px;display:flex;position:relative}.choice .key{border:1.5px solid var(--ink-2);width:26px;height:26px;color:var(--ink-2);background:0 0;flex:none;font-size:13px;position:static}.choice-body{flex:1}.choice-body svg{width:100%;height:auto;display:block}.choice:active:not(:disabled){transform:scale(.98)}.choice:disabled{cursor:default}.choice.correct{border-color:var(--green);box-shadow:inset 0 0 0 1px var(--green)}.choice.correct .key{background:var(--ink);border-color:var(--ink);color:var(--btn-ink)}.choice.wrong{border-color:var(--red);box-shadow:inset 0 0 0 1px var(--red)}.choice.wrong .key{border-color:var(--red);color:var(--red)}@media (hover:hover) and (pointer:fine){.choice:hover:not(:disabled){border-color:var(--ink)}}.choices.figures{grid-template-columns:repeat(auto-fill,minmax(96px,1fr));max-width:640px}.choices.figures .choice{flex-direction:column;padding:26px 8px 8px}.choices.figures .choice .key{width:20px;height:20px;font-size:11px;position:absolute;top:5px;left:5px}.choices.panels{grid-template-columns:repeat(6,minmax(0,1fr));gap:4px;max-width:540px}.choices.panels .choice{padding:2px}.choices.panels .choice .key{order:2;position:static}.choice-body .cell{background:0 0;border:0;width:100%}.target-figure{background:var(--fig-paper);border:1px solid var(--line);border-radius:8px;width:120px;margin:8px 0 4px;padding:6px}.choices.figures .choice-body{background:var(--fig-paper);border-radius:6px}.target-figure svg{width:100%;height:auto;display:block}.strip{grid-template-columns:repeat(6,minmax(0,1fr));gap:4px;max-width:540px;margin:8px 0;display:grid}.strip .cell{font-size:20px}.numeric{flex-wrap:wrap;align-items:center;gap:8px;margin-bottom:20px;display:flex}.numeric input{font:600 20px var(--mono);border:1.5px solid var(--line);background:var(--surface);width:10em;min-height:48px;color:var(--ink);border-radius:8px;padding:8px 12px}.numeric input:focus{border-color:var(--ink);box-shadow:0 0 0 3px var(--pencil-soft);outline:none}.numeric .unit{color:var(--muted)}.feedback{background:var(--surface);border:1px solid var(--line);border-radius:10px;max-width:640px;padding:14px 16px;transition:opacity .15s ease-out}@starting-style{.feedback{opacity:0}}.feedback-head{flex-wrap:wrap;align-items:baseline;gap:12px;margin-bottom:8px;display:flex}.feedback-head h2{align-self:center;align-items:center;gap:.4em;margin:0;font-size:18px;display:inline-flex}.feedback-head .logo{flex:none;width:1em;height:1em;position:relative;top:-.14em}.logo .hand-l{fill:var(--logo-l)}.logo .hand-r{fill:var(--logo-r)}.logo .sparks{fill:none;stroke:var(--logo-s);stroke-width:4.5px;stroke-linecap:round}.logo.solve{overflow:visible}.logo.solve .hand-l,.logo.solve .hand-r{transform-box:view-box;animation:.52s cubic-bezier(.45,0,.2,1) 30ms both clap}.logo.solve .hand-l{transform-origin:38px 88px;--open:-14deg;--hit:3deg}.logo.solve .hand-r{transform-origin:62px 88px;--open:14deg;--hit:-3deg}.logo.solve .sparks path{stroke-dasharray:1;animation:spark-out .24s var(--ease-out) both}.logo.solve .sparks path:first-child{animation-delay:.38s}.logo.solve .sparks path:nth-child(2),.logo.solve .sparks path:nth-child(3){animation-delay:.43s}.logo.solve .sparks{transform-box:view-box;transform-origin:50px 30px;animation:spark-ring .36s var(--ease-out) .46s both}@keyframes clap{0%{transform:rotate(0)}38%{transform:rotate(var(--open))}72%{transform:rotate(var(--hit))}to{transform:rotate(0)}}@keyframes spark-out{0%{stroke-dashoffset:1px;opacity:.4}to{stroke-dashoffset:0;opacity:1}}@keyframes spark-ring{50%{transform:scale(1.14)}}@media (prefers-reduced-motion:reduce){.logo.solve .hand-l,.logo.solve .hand-r,.logo.solve .sparks,.logo.solve .sparks path{animation:none}}.feedback-head .meta{font-size:13px}.feedback ul{margin:0 0 14px;padding-left:18px}.feedback li{margin-bottom:4px}.feedback .pick{color:var(--red)}.venn{margin:10px 0 6px}.venn svg{max-width:100%;height:auto;display:block}.venn svg.venn-2{width:220px}.venn svg.venn-3{width:250px}.venn svg.venn-4{width:360px}.venn figcaption{color:var(--muted);margin-top:4px;font-size:13px}.venn-set{fill:none;stroke:var(--ink);stroke-width:2px}.venn-set.venn-g0{stroke:var(--s1)}.venn-set.venn-g1{stroke:var(--s2)}.venn-set.venn-g2{stroke:var(--s3)}.venn-set.venn-g3{stroke:var(--s5)}.venn-key.venn-g0{fill:var(--s1)}.venn-key.venn-g1{fill:var(--s2)}.venn-key.venn-g2{fill:var(--s3)}.venn-key.venn-g3{fill:var(--s5)}.venn-steps{grid-template-columns:repeat(auto-fit,minmax(150px,1fr));align-items:end;gap:10px 14px;margin:10px 0 4px;display:grid}.venn-steps .venn{grid-template-rows:1fr auto;height:100%;margin:0;display:grid}.venn-steps .venn svg{align-self:end}.venn-steps figcaption{min-height:3.2em;color:var(--ink-2)}.venn-title{color:var(--muted);margin:12px 0 0;font-size:13px;font-weight:650}.venn-hatch{stroke:var(--muted);stroke-width:1.5px}.venn-focus{fill:var(--pencil);fill-opacity:.45}.venn-x{fill:none;stroke:var(--ink);stroke-width:2.4px;stroke-linecap:round}.venn-link{fill:none;stroke:var(--ink);stroke-width:1.2px}.venn-label{font:600 13px var(--sans);fill:var(--ink)}.venn-row{grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:8px 14px;margin:14px 0 20px;display:grid}.venn-row .venn{margin:0}.memory-stage{background-color:var(--surface);background-image:linear-gradient(var(--grid) 1px, transparent 1px), linear-gradient(90deg, var(--grid) 1px, transparent 1px);min-height:150px;box-shadow:inset 0 0 0 1px var(--line);background-size:16px 16px;border-radius:10px;place-items:center;margin-bottom:16px;display:grid}.memory-stage .digit{font-size:76px;font-weight:700}.memory-stage .digits{letter-spacing:.06em;font-size:clamp(24px,7vw,44px);font-weight:700}.icon{fill:none;stroke:currentColor;stroke-width:1.8px;stroke-linejoin:round;stroke-linecap:round;flex:none;width:18px;height:18px}.guide-hero{margin-bottom:26px}.guide-hero-inner{align-items:center;gap:22px;display:flex}.guide-hero-inner>div:not(.plate){flex:1;min-width:0}.guide-hero h1{letter-spacing:-.02em;text-wrap:balance;margin-bottom:8px;font-size:34px}.guide-hero .dek{color:var(--ink-2);max-width:44ch;margin-bottom:8px;font-size:19px;line-height:1.45}@media (width<=560px){.guide-hero-inner{flex-direction:column;align-items:flex-start;gap:14px}.guide-hero .plate-lg{width:132px}.guide-hero h1{font-size:28px}.guide-hero .dek{font-size:17px}}.toc{background:var(--surface);border:1px solid var(--line);border-radius:12px;max-width:44rem;margin-bottom:8px;padding:14px 18px}.toc h2{color:var(--muted);margin:0 0 8px;font-size:15px;font-weight:650}.toc ol{counter-reset:toc;columns:2 220px;column-gap:24px;margin:0;padding:0;list-style:none}.toc li{counter-increment:toc;break-inside:avoid;align-items:baseline;gap:10px;padding:3px 0;display:flex}.toc li:before{content:counter(toc);border:1.5px solid var(--ink-2);width:20px;height:20px;font:650 11px/1 var(--sans);color:var(--ink-2);border-radius:50%;flex:none;place-items:center;display:grid;translate:0 3px}.toc a{text-decoration:none}@media (hover:hover) and (pointer:fine){.toc a:hover{text-decoration:underline;-webkit-text-decoration-color:var(--pencil);text-decoration-color:var(--pencil)}}.guide{counter-reset:sec;max-width:44rem;font-size:17px}.guide h2{counter-increment:sec;align-items:center;gap:12px;margin:46px 0 12px;scroll-margin-top:16px;font-size:23px;display:flex}.guide h2:before{content:counter(sec);background:var(--ink);width:30px;height:30px;color:var(--btn-ink);font:750 15px/1 var(--sans);border-radius:50%;flex:none;place-items:center;display:grid}.guide h3{margin:28px 0 8px;font-size:18px}.guide p,.guide li{line-height:1.7}.guide ul,.guide ol{margin:0 0 16px;padding-left:0;list-style:none}.guide li{margin-bottom:10px;padding-left:30px;position:relative}.guide ul>li:before{content:"";border:2px solid var(--ink-2);border-radius:50%;width:12px;height:12px;position:absolute;top:.5em;left:4px}.guide ol{counter-reset:step}.guide ol>li{counter-increment:step}.guide ol>li:before{content:counter(step);background:var(--pencil);color:#262a2f;width:22px;height:22px;font:750 12px/1 var(--sans);border-radius:50%;place-items:center;display:grid;position:absolute;top:.2em;left:0}.guide li strong:first-child{font-weight:700}:is(.guide ul:has(+div[hidden]),.guide ol:has(+div[hidden])){margin-bottom:0}.guide .guide-index>li{margin:0;padding-left:0}.guide .guide-index>li:before{content:none}.guide .example,.guide .solved,.guide .rot-example{border:1px solid var(--line);background-color:var(--surface);background-image:linear-gradient(var(--grid) 1px, transparent 1px), linear-gradient(90deg, var(--grid) 1px, transparent 1px);background-position:-1px -1px;background-size:12px 12px;border-radius:10px;margin:14px 0 22px;padding:14px 16px}.guide p.example{font-size:16px}.guide p.example strong{font-family:var(--mono);margin-right:4px;font-size:18px}.guide .example .grid{grid-template-columns:repeat(3, min(96px, var(--cell)))}.guide .note{background:var(--hl-bg);box-shadow:inset 4px 0 0 var(--pencil);border-radius:10px;margin:20px 0;padding:14px 18px}.guide cite{color:var(--muted);font-size:14px;font-style:normal}.guide cite span{white-space:nowrap}.guide table.major{border-collapse:collapse;margin:8px 0 12px;font-size:15px}.guide table.major th,.guide table.major td{border-bottom:1px solid var(--line);text-align:left;padding:5px 14px 5px 0}.guide .rot-example{flex-wrap:wrap;align-items:flex-end;gap:12px;display:flex}.guide .rot-example .target-figure{width:96px}.ink-demo{color:#2f6fdc;letter-spacing:.04em;font-weight:800}.practise{background:var(--hl-bg);box-shadow:inset 4px 0 0 var(--hl-edge);border-radius:12px;max-width:44rem;margin:40px 0 28px;padding:18px}.practise h2{font-size:19px}.toc li.locked{color:var(--muted)}.toc li.locked:after{content:"Unlimited access";font:600 11px/1 var(--sans);color:var(--muted);border:1px solid var(--line);border-radius:999px;margin-left:2px;padding:3px 7px}.guide-locked{max-width:44rem;margin:20px 0}.guide-locked ul{margin:0 0 12px;padding-left:20px}.guide-locked li{padding:2px 0}.refs-wrap{max-width:44rem}.refs-wrap h2{font-size:17px}.refs{color:var(--muted);padding-left:20px;font-size:14px}.refs li{margin-bottom:8px;line-height:1.5}.guide-nav{border-top:1px solid var(--line);grid-template-columns:1fr 1fr;gap:12px;max-width:44rem;padding-top:16px;display:grid}.guide-nav a{border:1px solid var(--line);border-radius:10px;flex-direction:column;gap:2px;padding:10px 12px;font-weight:650;text-decoration:none;display:flex}.guide-nav a.next{text-align:right;grid-column:2}@media (hover:hover) and (pointer:fine){.guide-nav a:hover{border-color:var(--ink)}}.turns{flex-wrap:wrap;align-items:center;gap:6px;margin:10px 0 4px;display:flex}.turns .cell{width:var(--cell)}.turns .turn-arrow{color:var(--muted);font-size:20px}.turns.matrix-steps{align-items:flex-start}.matrix-step{width:min(96px, var(--cell));margin:0}.matrix-step figcaption{color:var(--muted);text-align:center;margin-top:4px;font-size:12px;line-height:1.3}.guide .example .turns .cell,.feedback .turns .cell{width:min(96px, var(--cell))}.feedback .turns+.meta{margin-bottom:6px;font-size:13px;display:block}.advanced-sequence{width:min(100%,300px);margin:12px 0 8px}.matrix-sequence-grid{grid-template-columns:repeat(3,minmax(0,1fr));align-items:start;gap:6px;display:grid}.advanced-sequence[data-sequence-layout=column]{width:min(100%,96px)}.advanced-sequence[data-sequence-layout=column] .matrix-sequence-grid{grid-template-columns:minmax(0,1fr)}.matrix-sequence-slot{grid-template-rows:auto auto;min-width:0;margin:0;font-size:12px;display:grid}.matrix-sequence-slot .cell{width:100%}.matrix-sequence-caption{color:var(--muted);text-align:center;padding-top:4px;line-height:1.3}.matrix-sequence-blank .cell{opacity:.4;background:0 0;border-style:dashed}.turn-from,.turn-to,.turn-arc{fill:none;stroke-linecap:round}.turn-from{stroke:var(--fig-ink);stroke-width:1.6px}.turn-to{stroke:var(--fig-mark);stroke-width:1.8px;stroke-dasharray:4 3.5}.turn-arc{stroke:var(--fig-mark);stroke-width:1.2px}.turn-pivot{fill:var(--fig-ink)}.turn-point{fill:var(--fig-mark);stroke:var(--fig-paper);stroke-width:1.2px}.turn-hand{stroke:var(--fig-mark);stroke-width:2.6px;stroke-linecap:round}.turn-side{stroke:var(--fig-mark);stroke-width:3.4px;stroke-linecap:round}.turn-miss{stroke:var(--fig-2);stroke-width:1.1px;stroke-dasharray:1.5 2.5;stroke-linecap:round}.clock-face{fill:none;stroke:var(--fig-1);stroke-width:1.5px}.clock-tick{stroke:var(--fig-2);stroke-width:1.4px;stroke-linecap:round}.clock-tick.major{stroke:var(--fig-ink);stroke-width:2.4px}.clock-hand{stroke:var(--fig-ink);stroke-width:4px;stroke-linecap:round}.turn-pair{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;display:grid}.turn-pair figure{margin:0}.turn-pair .cell{width:min(132px,100%)}.turn-pair figcaption{color:var(--ink-2);flex-direction:column;gap:2px;margin-top:6px;font-size:14px;line-height:1.4;display:flex}.turn-pair figcaption strong{color:var(--ink)}.turn-sheet{grid-template-columns:repeat(auto-fill,minmax(70px,1fr));gap:10px 6px;display:grid}.turn-sheet figure{margin:0}.turn-sheet figcaption{text-align:center;color:var(--ink-2);flex-direction:column;align-items:center;margin-top:4px;font-size:12px;line-height:1.25;display:flex}.turn-sheet figcaption strong{color:var(--ink);font-size:13px}.choices.figures:has(.cell.turn){grid-template-columns:repeat(4,minmax(0,1fr));max-width:560px}.choices.figures .cell.turn{border:0}@media (width<=480px){.choices.figures:has(.cell.turn){grid-template-columns:repeat(2,minmax(0,1fr));max-width:300px}}.drills-head{margin:22px 0 2px;font-size:15px}.drills-head+.meta{margin:0}.read-mode{gap:6px;margin-bottom:20px;display:flex}.lesson{max-width:44rem;min-height:calc(100dvh - 96px);scroll-margin-top:16px}.lesson.last{min-height:0}.lesson-steps{margin-bottom:22px}.lesson-steps summary{cursor:pointer;align-items:center;gap:12px;padding:4px 0;list-style:none;display:flex}.lesson-steps summary::-webkit-details-marker{display:none}.lesson-steps summary .meta{font-variant-numeric:tabular-nums;flex:none;margin:0}.lesson-steps .level-bar{flex:1;display:block}.lesson-steps .level-bar span{transition:width .24s var(--ease-out)}.lesson-steps-all{font:600 13px/1 var(--sans);color:var(--ink-2);border:1px solid var(--line);border-radius:999px;flex:none;padding:5px 10px}.lesson-steps[open] .lesson-steps-all{background:var(--ink);color:var(--btn-ink);border-color:var(--ink)}.lesson-steps ol{counter-reset:lstep;background:var(--surface);border:1px solid var(--line);border-radius:12px;margin:10px 0 0;padding:6px;list-style:none}.lesson-steps li{counter-increment:lstep}.lesson-steps li button,.lesson-steps li.locked{width:100%;color:var(--ink);font:500 15px/1.35 var(--sans);text-align:left;background:0 0;border:0;border-radius:8px;align-items:baseline;gap:10px;padding:8px 10px;display:flex}.lesson-steps li button{cursor:pointer}.lesson-steps li button:before,.lesson-steps li.locked:before{content:counter(lstep);border:1.5px solid var(--ink-2);width:20px;height:20px;font:650 11px/1 var(--sans);color:var(--ink-2);border-radius:50%;flex:none;place-items:center;display:grid;translate:0 3px}.lesson-steps li button.seen:before{background:var(--ink-2);color:var(--btn-ink)}.lesson-steps li button[aria-current]{background:var(--hl-bg);box-shadow:inset 3px 0 0 var(--pencil);font-weight:650}.lesson-steps li.locked{color:var(--muted)}.lesson-steps li.locked:after{content:"Unlimited access";font:600 11px/1 var(--sans);color:var(--muted);border:1px solid var(--line);border-radius:999px;flex:none;margin-left:auto;padding:3px 7px}@media (hover:hover) and (pointer:fine){.lesson-steps li button:hover{background:var(--grid)}.lesson-steps summary:hover .lesson-steps-all{border-color:var(--ink)}}.lesson-step{transition:opacity .18s ease-out}@starting-style{.lesson-step{opacity:0}}.lesson-step .kicker{font:650 13px/1.3 var(--sans);letter-spacing:.04em;text-transform:uppercase;color:var(--muted);margin:0 0 4px}.lesson-step h2{outline:none;margin-top:0}.lesson-step h2:before{content:none}.try{border-top:1px solid var(--line);margin-top:26px;padding-top:20px}.try h3{margin:0 0 2px;font-size:18px}.try>.meta{margin:0 0 14px}.lesson-score{color:var(--ink-2);margin:22px 0 0;font-size:15px}.lesson-score:empty{display:none}.lesson-nav{margin:28px 0 8px;scroll-margin-bottom:84px}.lesson-nav [data-go="1"]{margin-left:auto}#guide-end:not(:empty){margin-bottom:28px}.try-feedback .feedback-head .meta{display:none}@media (prefers-reduced-motion:reduce){.lesson-step,.lesson-steps .level-bar span{transition:none}}.guide-index{grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:12px;margin:0;padding:0;list-style:none;display:grid}.guide-index a{border:1px solid var(--line);background:var(--surface);height:100%;transition:transform .16s var(--ease-out);border-radius:12px;align-items:center;gap:14px;padding:14px;text-decoration:none;display:flex}.guide-index a:active{transform:scale(.98)}.gi-text{flex-direction:column;gap:4px;display:flex}.guide-group{color:var(--muted);text-transform:uppercase;letter-spacing:.04em;margin:28px 0 10px;font-size:15px;font-weight:750}.guide-group:first-of-type{margin-top:8px}.learn-kind{margin:36px 0 4px;font-size:22px;font-weight:750}.learn-kind:first-of-type{margin-top:12px}.courses{gap:12px;display:grid}.course{border:1px solid var(--line);background:var(--surface);border-radius:12px}.course>summary{cursor:pointer;align-items:center;gap:14px;padding:14px 18px 14px 14px;list-style:none;display:flex}.course>summary::-webkit-details-marker{display:none}.course>summary:after{content:"";border-right:2px solid var(--muted);border-bottom:2px solid var(--muted);width:10px;height:10px;transition:transform .16s var(--ease-out);flex:none;margin-left:auto;transform:rotate(45deg)}.course[open]>summary:after{transform:rotate(-135deg)}.course-text{flex-direction:column;gap:3px;display:flex}.course-text strong{font-size:20px}.course-text>span:not(.meta){color:var(--ink-2);font-size:15px}.course-body{grid-template-columns:repeat(auto-fit,minmax(min(100%,300px),1fr));gap:18px;padding:0 18px 18px;display:grid}.course-body>.actions{grid-column:1/-1;align-items:center}.course-part h3{text-transform:uppercase;letter-spacing:.04em;color:var(--muted);margin:4px 0 6px;font-size:13px}.course-part ol{margin:0;padding:0;list-style:none}.course-part li a{border-top:1px solid var(--line);justify-content:space-between;align-items:baseline;gap:12px;padding:9px 0;text-decoration:none;display:flex}.course-part li:first-child a{border-top:0}.cr-title{font-size:15px;font-weight:600}.course-part li a .meta{white-space:nowrap}@media (hover:hover) and (pointer:fine){.course-part li a:hover .cr-title{text-decoration:underline}}.read-mark{background:color-mix(in srgb, var(--green) 14%, transparent);color:var(--green);letter-spacing:0;text-transform:none;vertical-align:1px;white-space:nowrap;border-radius:999px;align-items:center;gap:3px;margin-left:6px;padding:1px 7px 1px 5px;font-size:12px;font-weight:700;display:inline-flex}.progress-mark{background:color-mix(in srgb, var(--ink) 8%, transparent);color:var(--ink-2);letter-spacing:0;text-transform:none;vertical-align:1px;white-space:nowrap;border-radius:999px;align-items:center;margin-left:6px;padding:1px 7px;font-size:12px;font-weight:650;display:inline-flex}.read-mark svg{fill:none;stroke:currentColor;stroke-width:2.4px;stroke-linecap:round;stroke-linejoin:round;width:12px;height:12px}.gi-text strong{font-size:17px}.gi-text>span:not(.meta){color:var(--ink-2);font-size:15px;line-height:1.45}@media (width<=1079.98px){.gi-text>span:not(.meta){-webkit-line-clamp:2;color:var(--muted);-webkit-box-orient:vertical;font-size:14px;line-height:1.4;display:-webkit-box;overflow:hidden}.gi-text strong{font-size:16px}}@media (hover:hover) and (pointer:fine){.guide-index a:hover{border-color:var(--ink)}}.guide-card{background:var(--hl-bg);box-shadow:inset 3px 0 0 var(--pencil);transition:transform .16s var(--ease-out);border-radius:10px;align-items:center;gap:10px;margin-top:2px;padding:9px 14px 9px 12px;text-decoration:none;display:inline-flex}.guide-card:active{transform:scale(.98)}.guide-card .icon{width:22px;height:22px}.guide-card>span{flex-direction:column;line-height:1.3;display:flex}.guide-card strong{font-size:15px}.guide-card>span>span{color:var(--ink-2);font-size:13px}.chapter-head .guide-card{font-size:inherit}.guide-chip{border:1px solid var(--line);color:var(--ink);border-radius:999px;align-items:center;gap:6px;padding:3px 10px 3px 8px;font-weight:600;text-decoration:none;display:inline-flex}.guide-chip .icon{width:16px;height:16px}@media (hover:hover) and (pointer:fine){.guide-chip:hover{border-color:var(--ink)}}details.review{border-bottom:1px solid var(--line);padding:10px 0}details.review summary{cursor:pointer;font-size:15px}details.review .prompt,details.review .example{margin-top:10px}details.review .choice{cursor:default}.level-bar{background:var(--line);border-radius:2px;height:4px;overflow:hidden}.level-bar span{background:var(--ink);height:100%;display:block}.stats{flex-wrap:wrap;gap:8px 28px;margin:8px 0 14px;display:flex}.stats div{flex-direction:column;display:flex}.stats strong{font-size:22px;font-weight:750}.stats span{color:var(--muted);font-size:13px}.track-card{margin-bottom:12px}.charts{grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:14px;display:grid}.chart{margin:0}.chart figcaption{margin-bottom:4px;font-size:14px;font-weight:650}.chart svg{width:100%;height:auto;display:block;overflow:visible}.ch-wrap{position:relative}.ch-grid{stroke:var(--line);stroke-width:1px}.ch-tick{fill:var(--muted);font:12px var(--sans)}.ch-end{fill:var(--ink);font:600 12px var(--sans)}.ch-line{fill:none;stroke:var(--ink);stroke-width:2px;stroke-linejoin:round;stroke-linecap:round;vector-effect:non-scaling-stroke}.ch-dot,.ch-hover{fill:var(--pencil);stroke:var(--ink);stroke-width:1.5px}.ch-cross{stroke:var(--muted);stroke-width:1px;vector-effect:non-scaling-stroke}.ch-barfill{fill:var(--ink)}@media (hover:hover) and (pointer:fine){.ch-bar:hover .ch-barfill{fill:var(--ink-2)}}.ch-tip{background:var(--surface);border:1px solid var(--line);white-space:nowrap;pointer-events:none;border-radius:6px;flex-direction:column;padding:4px 8px;font-size:12px;display:flex;position:absolute;top:-6px;transform:translate(-50%,-100%)}.ch-tip[hidden]{display:none}.ch-tip strong{font-size:14px}.ch-tip span{color:var(--muted)}.ch-colfill{fill:var(--ink)}.ch-colhollow{fill:var(--paper);stroke:var(--ink);stroke-width:1.5px;vector-effect:non-scaling-stroke}.ch-hit{fill:#0000}@media (hover:hover) and (pointer:fine){.ch-col:hover .ch-hit{fill:var(--hl-bg)}}.ch-ref{stroke:var(--muted);stroke-width:1px;stroke-dasharray:4 3;vector-effect:non-scaling-stroke}.ch-axis{stroke:var(--muted);stroke-width:1px;vector-effect:non-scaling-stroke}.ch-legend{color:var(--muted);gap:16px;margin-bottom:6px;font-size:13px;display:flex}.ch-legend span{align-items:center;gap:6px;display:inline-flex}.ch-legend .sw{border:1.5px solid var(--ink);border-radius:2px 2px 0 0;width:10px;height:12px}.ch-legend .sw.fill{background:var(--ink)}.pacing ul{margin:12px 0 0;padding-left:18px}.pacing li+li{margin-top:6px}.ch-table summary{color:var(--muted);cursor:pointer;margin-top:4px;font-size:13px}.ch-table table{border-collapse:collapse;margin-top:4px;font-size:13px}.ch-table td,.ch-table th{text-align:left;padding:2px 10px 2px 0}.save-warning{left:12px;right:12px;bottom:calc(12px + env(safe-area-inset-bottom,0px));background:var(--surface);border:1.5px solid var(--red);border-radius:10px;align-items:center;gap:12px;max-width:640px;margin:0 auto;padding:12px 14px;display:flex;position:fixed;box-shadow:0 6px 24px #0000001f}.save-warning p{margin:0;font-size:14px}@media (prefers-reduced-motion:reduce){.btn,.choice,button.cell{transition:none}.btn:active,.choice:active,button.cell:active{transform:none}}.game-stage{--stage:#1b2026;--stage-2:#262d35;--stage-line:#3a444f;--stage-ink:#eef2f5;--stage-muted:#9aa6b2;--c-red:#ff6257;--c-blue:#6aa8ff;--c-yellow:#f5c518;background:var(--stage);color:var(--stage-ink);-webkit-user-select:none;user-select:none;touch-action:manipulation;border-radius:14px;flex-direction:column;gap:12px;min-height:min(62dvh,520px);padding:14px;display:flex}.countdown{color:var(--stage-muted);margin:auto;font-size:22px;font-weight:700}.stage-msg{text-align:center;min-height:1.6em;color:var(--stage-muted);margin:0;font-weight:600}.stage-rule{text-align:center;color:var(--stage-muted);margin:0;font-size:14px}.game-quit{margin-top:12px}.pads{flex:1;gap:10px;display:grid}.pads.n1{grid-template-columns:1fr}.pads.n2{grid-template-columns:1fr 1fr}.pads.n4{grid-template-columns:repeat(4,1fr)}@media (width<=480px){.pads.n4{grid-template-columns:1fr 1fr}}.pads.sides{flex:none;min-height:88px}.pad{border:1.5px solid var(--stage-line);background:var(--stage-2);min-height:96px;color:var(--stage-ink);font:600 15px var(--sans);cursor:pointer;transition:transform .1s var(--ease-out);border-radius:12px;align-content:center;place-items:center;gap:6px;display:grid;position:relative}.pad:active{transform:scale(.97)}.pad.on{background:var(--c-yellow);border-color:var(--c-yellow);color:#1b2026}.pad svg{fill:none;stroke:currentColor;stroke-width:3.5px;stroke-linecap:round;stroke-linejoin:round;width:34px;height:34px}.pad-key{opacity:.75;font-size:13px}@media (pointer:coarse){.pads.sides .pad-key,.bin .pad-key{display:none}}.tap-count{font:800 56px/1 var(--mono)}.fall-area{background:var(--stage-2);border-radius:10px;flex:1;min-height:240px;position:relative;overflow:hidden}.fall-word{font:800 34px/1 var(--sans);letter-spacing:.04em;border-radius:8px;padding:8px 12px;position:absolute;top:8px;left:50%;translate:-50%}.fall-word.framed{outline:3px solid var(--stage-ink);outline-offset:0}.ink-red{color:var(--c-red)}.ink-blue{color:var(--c-blue)}.ink-yellow{color:var(--c-yellow)}.bins{grid-template-columns:repeat(3,1fr);gap:8px;display:grid}.bin{border:1.5px solid var(--stage-line);background:var(--stage-2);min-height:72px;color:var(--stage-ink);font:600 15px var(--sans);cursor:pointer;transition:transform .1s var(--ease-out);border-radius:10px;align-content:center;place-items:center;gap:4px;display:grid}.bin:active{transform:scale(.97)}.bin.ok{border-color:#5cc98a;box-shadow:inset 0 0 0 2px #5cc98a}.bin.bad{border-color:var(--c-red);box-shadow:inset 0 0 0 2px var(--c-red)}.bin.missed{border-style:dashed;border-color:var(--stage-ink)}.swatch{border-radius:3px;width:28px;height:10px}.swatch.c-red{background:var(--c-red)}.swatch.c-blue{background:var(--c-blue)}.swatch.c-yellow{background:var(--c-yellow)}.arrow-area{background:var(--stage-2);border-radius:10px;flex:1;place-items:center;min-height:200px;display:grid}.arrow-row{border-radius:10px;align-items:center;gap:6px;padding:14px 18px;display:flex}.arrow-row.band{background:var(--c-yellow);color:#1b2026}.arrow svg{fill:none;stroke:currentColor;stroke-width:3.5px;stroke-linecap:round;stroke-linejoin:round;width:44px;height:44px;display:block}@media (width<=400px){.arrow svg{width:36px;height:36px}}.fixation{font:600 28px var(--sans);color:var(--stage-muted)}.mark{color:var(--stage-muted);font-size:18px;font-weight:700}.mark.ok{color:#5cc98a}.mark.bad{color:var(--c-red)}.stop-circle{border:4px solid var(--stage-line);text-align:center;border-radius:50%;place-items:center;width:120px;height:120px;display:grid}.stop-circle svg{fill:none;width:60px;height:60px;stroke:var(--stage-ink);stroke-width:3.5px;stroke-linecap:round;stroke-linejoin:round}.stop-circle.stop{border-color:var(--c-red);background:color-mix(in srgb, var(--c-red) 22%, transparent)}.stop-circle.stop svg{stroke:var(--c-red)}kbd{font:600 13px var(--sans);border:1px solid var(--line);background:var(--surface);border-bottom-width:2px;border-radius:4px;padding:0 5px}.game-intro{max-width:60ch}.game-intro .btn{margin-top:8px}.framed-demo{outline:2px solid var(--ink);border-radius:3px;padding:0 4px;font-weight:700}.band-demo{background:var(--pencil);color:#1b2026;border-radius:3px;padding:0 4px}.stop-demo{color:var(--red);font-weight:700}.game-result .note{background:var(--hl-bg);box-shadow:inset 3px 0 0 var(--hl-edge);border-radius:8px;padding:12px 16px}.result-metric{flex-direction:column;margin-bottom:8px;display:flex}.result-metric strong{font:800 44px/1.1 var(--sans);letter-spacing:-.02em}.result-metric span{color:var(--muted);font-size:14px}.game-result table{max-width:520px;margin:14px 0 18px}.risk-top{color:var(--stage-muted);justify-content:space-between;font-size:14px;display:flex}.risk-top strong{color:var(--stage-ink);font-size:17px}.balloon-area{background:var(--stage-2);border-radius:10px;flex:1;place-items:end center;min-height:240px;padding-bottom:8px;display:grid;overflow:hidden}.balloon{transform-origin:50% 100%;width:200px;transition:transform 90ms var(--ease-out)}.balloon svg{width:100%;height:auto;display:block}.balloon ellipse,.balloon path:not(.string){fill:var(--balloon,var(--c-red))}.balloon.orange,.swatch.orange{--balloon:#ff9a3c}.balloon.yellow,.swatch.yellow{--balloon:var(--c-yellow,#f5c518)}.balloon.blue,.swatch.blue{--balloon:var(--c-blue,#6aa8ff)}.swatch{background:var(--balloon);vertical-align:-.05em;border-radius:50%;width:.8em;height:.8em;margin-right:.45em;display:inline-block}.balloon .string{fill:none;stroke:var(--stage-muted);stroke-width:2px}.balloon.popped{animation:pop .22s var(--ease-out) forwards}@keyframes pop{to{opacity:0;scale:1.25}}@media (prefers-reduced-motion:reduce){.balloon{transition:none}.balloon.popped{opacity:.2;animation:none}}.card-info{color:var(--stage-muted);flex-wrap:wrap;justify-content:center;gap:6px 16px;font-size:15px;display:flex}.card-info strong{color:var(--stage-ink);font-size:18px}.card-grid{grid-template-columns:repeat(8,1fr);gap:6px;display:grid}@media (width<=480px){.card-grid{gap:4px}}.card{aspect-ratio:3/4;border:1.5px solid var(--stage-line);background:var(--stage-2) repeating-linear-gradient(45deg, transparent 0 5px, #ffffff0d 5px 7px);color:var(--stage-ink);font:700 12px var(--sans);cursor:pointer;transition:transform .1s var(--ease-out);border-radius:6px;padding:0}.card:active:not(:disabled){transform:scale(.95)}.card:disabled{cursor:default}.card.gain{color:#1b2026;background:#e9edf1;border-color:#e9edf1}.card.loss{background:var(--c-red);color:#1b2026;border-color:var(--c-red)}.card.loss.ghost{color:var(--c-red);background:0 0;border-style:dashed}.boxes{grid-template-columns:repeat(10,1fr);gap:6px;display:grid}@media (width<=480px){.boxes{grid-template-columns:repeat(5,1fr)}}.box{aspect-ratio:1;border-radius:6px}.box.c-red{background:var(--c-red)}.box.c-blue{background:var(--c-blue)}.box.token{outline:3px solid var(--c-yellow);outline-offset:2px;background-image:radial-gradient(circle, var(--c-yellow) 0 28%, transparent 30%)}.box-count{text-align:center;color:var(--stage-muted);margin:0;font-size:14px}.bet-controls{min-height:88px}.bet-row{grid-template-columns:repeat(5,1fr);gap:6px;display:grid}.bet-row .pad{min-height:72px;font-size:17px}@media (width<=480px){.bet-row .pad{min-height:64px;font-size:15px}.bet-row .pad-key{font-size:11px;display:block}}.pad .swatch{width:22px;height:8px}.game-result .note+table,.game-result table+.note{margin-top:12px}.swatches{border-collapse:collapse}.swatches th{color:var(--muted);text-align:left;padding:4px 8px;font-size:13px;font-weight:600}.swatches td{padding:4px}.swatches .cell{width:96px}.swatches .cell.illegible{opacity:.55;border-style:dashed}.gallery-q{border-top:1px solid var(--line);flex-wrap:wrap;align-items:center;gap:6px 18px;padding:10px 0;display:flex}.gallery-q>.meta{flex:none;width:56px;margin:0}.gallery-q .prompt{flex:100%}.gallery-q .prompt:has(>p:only-child){display:none}.gallery-q .choices{flex:0 430px;gap:4px;margin:0}.gallery-q .choices.figures .choice{padding:20px 4px 4px}.gallery-q .feedback{opacity:1;flex:260px;padding:8px 12px;font-size:14px}.gallery-q .feedback ul{margin:0}.decks{flex:1;grid-template-columns:repeat(4,1fr);gap:10px;min-height:200px;display:grid}.deck{border:1.5px solid var(--stage-line);background:var(--stage-2) repeating-linear-gradient(45deg, transparent 0 6px, #ffffff0d 6px 9px);color:var(--stage-ink);cursor:pointer;transition:transform .1s var(--ease-out);border-radius:10px;align-content:center;place-items:center;gap:6px;display:grid}.deck:active{transform:scale(.97)}.deck.ok{border-color:#5cc98a}.deck.bad{border-color:var(--c-red)}.deck-id{font:800 30px var(--sans)}@media (pointer:coarse){.deck .pad-key{display:none}}.deck-msg .gain{color:#5cc98a}.deck-msg .lossv{color:var(--c-red)}.point-area{background:var(--stage-2);touch-action:none;cursor:default;border-radius:10px;flex:1;min-height:min(56dvh,460px);position:relative}.ring-dot{border:2px solid var(--stage-line);pointer-events:none;background:0 0;border-radius:50%;position:absolute}.ring-dot.on{background:var(--c-yellow);border-color:var(--c-yellow)}.rt-hint{font-size:13px}.sort-area{--dn-h:clamp(22px, 5.2dvh, 40px);grid-template-columns:repeat(var(--sticks), minmax(0, 1fr));background:var(--stage-2);min-height:calc(var(--dn-h) * 5.6 + 40px);border-radius:10px;flex:1;align-items:end;gap:clamp(4px,1.5vw,14px);padding:14px clamp(6px,2vw,18px) 10px;display:grid}.sort-stick{height:calc(var(--dn-h) * 5.6 + 22px);color:var(--stage-muted);cursor:pointer;touch-action:manipulation;-webkit-tap-highlight-color:transparent;background:0 0;border:0;border-radius:8px;flex-direction:column-reverse;justify-content:flex-start;align-items:center;padding:0 0 22px;display:flex;position:relative}.sort-stick:after{content:"";background:var(--stage-line);border-radius:3px;height:5px;position:absolute;bottom:18px;left:4%;right:4%}.sort-stick .rod{width:6px;height:calc(var(--dn-h) * 4.6);background:var(--stage-line);border-radius:3px 3px 0 0;margin-left:-3px;position:absolute;bottom:20px;left:50%}.sort-stick .pad-key{text-align:center;font-size:12px;position:absolute;bottom:0;left:0;right:0}.sort-stick.picked{background:color-mix(in srgb, var(--stage-ink) 7%, transparent)}.sort-stick:focus-visible{outline:2px solid var(--stage-ink);outline-offset:2px}.dn{width:min(100%,68px);height:var(--dn-h);background:var(--dn);color:#00000073;font-size:calc(var(--dn-h) * .42);transition:transform .14s var(--ease-out);border-radius:999px;place-items:center;margin-top:2px;line-height:1;display:grid;position:relative;box-shadow:inset 0 -4px #00000038,inset 0 3px #ffffff2e}.dn.up{transform:translateY(calc(var(--dn-h) * -.9))}.dn.c-red{--dn:var(--c-red)}.dn.c-blue{--dn:var(--c-blue)}.dn.c-yellow{--dn:var(--c-yellow)}.dn.c-green{--dn:#5cc98a}.dn.c-purple{--dn:#a77bff}.dn.c-orange{--dn:#ff9a3c}.dn.c-pink{--dn:#f7a8d8}.dn.c-teal{--dn:#2ec4c4}.sort-area.done .dn{animation:dn-done .5s var(--ease-out)}@keyframes dn-done{50%{transform:scale(1.08)}}@media (prefers-reduced-motion:reduce){.dn{transition:none}.sort-area.done .dn{animation:none}}@media (pointer:coarse){.sort-stick .pad-key{display:none}.sort-stick{padding-bottom:8px}.sort-stick:after{bottom:4px}.sort-stick .rod{bottom:6px}}.pc-target{background:var(--stage-2);border-radius:10px;margin-bottom:8px;padding:8px clamp(6px,2vw,18px) 10px}.pc-target-label{color:var(--stage-muted);margin-bottom:4px;font-size:13px;display:block}.pc-target-plates{--pc-h:clamp(13px, 2.6dvh, 18px);grid-template-columns:repeat(3,minmax(0,1fr));gap:clamp(6px,2vw,18px);display:grid}.pc-mini{height:calc(var(--pc-h) * var(--n) + var(--n) * 1px + 6px);border-bottom:4px solid var(--stage-line);flex-direction:column-reverse;align-items:center;padding-bottom:3px;display:flex}.pc-mini .pc{font-size:calc(var(--pc-h) * .7);margin-top:1px;box-shadow:inset 0 -2px #5a2d0047}.pc-area{--pc-h:clamp(18px, 3.6dvh, 30px);background:var(--stage-2);border-radius:10px;flex:1;grid-template-columns:repeat(3,minmax(0,1fr));align-items:end;gap:clamp(6px,2vw,18px);padding:14px clamp(6px,2vw,18px) 10px;display:grid}.pc-plate{height:calc(var(--pc-h) * (var(--n) + 1.6) + 26px);color:var(--stage-muted);cursor:pointer;touch-action:manipulation;-webkit-tap-highlight-color:transparent;background:0 0;border:0;border-radius:8px;flex-direction:column-reverse;align-items:center;padding:0 0 26px;display:flex;position:relative}.pc-plate:after{content:"";background:var(--stage-line);border-radius:3px;height:6px;position:absolute;bottom:18px;left:2%;right:2%}.pc-plate .pad-key{text-align:center;font-size:12px;position:absolute;bottom:0;left:0;right:0}.pc-plate.picked{background:color-mix(in srgb, var(--stage-ink) 7%, transparent)}.pc-plate:focus-visible{outline:2px solid var(--stage-ink);outline-offset:2px}.pc{--t:calc(var(--w) / max(1, var(--n) - 1));width:calc(34% + 62% * var(--t));height:var(--pc-h);background:hsl(34deg 78% calc(74% - 22% * var(--t)));color:#3c1e00b3;font:700 calc(var(--pc-h) * .5) / 1 var(--sans);transition:transform .14s var(--ease-out);border-radius:999px;place-items:center;margin-top:2px;display:grid;box-shadow:inset 0 -4px #5a2d0047,inset 0 3px #ffffff40}.pc.up{transform:translateY(calc(var(--pc-h) * -1.1))}.pc-area.done .pc{animation:dn-done .5s var(--ease-out)}@media (prefers-reduced-motion:reduce){.pc{transition:none}.pc-area.done .pc{animation:none}}@media (pointer:coarse){.pc-plate .pad-key{display:none}.pc-plate{padding-bottom:10px}.pc-plate:after{bottom:4px}}.check-area{background:var(--stage-2);border-radius:10px;flex-direction:column;flex:1;justify-content:center;gap:14px;min-height:240px;padding:18px clamp(12px,3vw,28px);display:flex}.cp-row{gap:4px;display:grid}.cp-label{letter-spacing:.06em;text-transform:uppercase;color:var(--stage-muted);font-size:12px;font-weight:700}.cp-text{font:600 clamp(17px, 2.6vw, 23px)/1.45 var(--sans);white-space:pre-wrap;overflow-wrap:anywhere;color:var(--stage-ink);letter-spacing:.01em}.check-area.taps .cp-copy span{cursor:pointer;border-radius:3px}@media (hover:hover){.check-area.taps .cp-copy span:hover{background:color-mix(in srgb, var(--stage-ink) 16%, transparent)}}.cp-text .slip{background:var(--c-yellow);color:#1b2026;box-shadow:0 0 0 2px var(--c-yellow);border-radius:3px}.check-mark{text-align:center;color:var(--stage-muted);margin:0;font-weight:700}.check-mark.ok{color:#5cc98a}.check-mark.bad{color:var(--c-red)}.check-timer{background:var(--stage-line);transform-origin:0;height:4px;animation:check-timer var(--ms) linear forwards;border-radius:2px}@keyframes check-timer{0%{transform:scaleX(1)}to{transform:scaleX(0)}}@media (prefers-reduced-motion:reduce){.check-timer{animation:none}}.count-row{grid-template-columns:repeat(4,1fr);gap:8px;display:grid}.count-row .pad{min-height:64px;font-size:22px}.odd-rows{gap:8px;display:grid}.odd-row{text-align:left;border:1.5px solid var(--stage-line);background:var(--stage);color:var(--stage-ink);cursor:pointer;touch-action:manipulation;border-radius:10px;align-items:baseline;gap:12px;padding:10px 14px;display:flex}.odd-row .pad-key{flex:none;width:1.2em}.odd-row.is-odd{border-color:var(--c-yellow)}@media (hover:hover){.odd-row:hover{border-color:var(--stage-muted)}}@media (pointer:coarse){.odd-row .pad-key{display:none}}.qchart{max-width:420px;margin:4px 0 14px}.qchart figcaption{margin-bottom:4px;font-size:14px;font-weight:650}.qchart .qc-unit{color:var(--muted);font-weight:400}.qchart svg{width:100%;height:auto;display:block;overflow:visible}.qchart-pair{flex-wrap:wrap;gap:8px 24px;display:flex}.qchart-pair .qchart{flex:300px}.qc-s1{fill:var(--s1)}.qc-s2{fill:var(--s2)}.qc-s3{fill:var(--s3)}.qc-s4{fill:var(--s4)}.qc-s5{fill:var(--s5)}.qc-slice{stroke:var(--paper);stroke-width:2px;stroke-linejoin:round}.qc-leader{stroke:var(--muted);stroke-width:1px;fill:none}.qc-label{font:12.5px var(--sans);fill:var(--ink)}.qc-strong{font-weight:700}.qc-grid{stroke:var(--line);stroke-width:1px}.qc-tick{font:12px var(--sans);fill:var(--muted)}.qc-value{font:600 12px var(--sans);fill:var(--ink)}.qc-value.qc-small{font-size:10.5px}.qc-line{fill:none;stroke:var(--s1);stroke-width:2px;stroke-linejoin:round}.qc-dot{fill:var(--s1);stroke:var(--paper);stroke-width:2px}.corner{top:calc(14px + env(safe-area-inset-top,0px));right:calc(14px + env(safe-area-inset-right,0px));z-index:5;gap:8px;display:flex;position:absolute}@media (width>=1360px){.corner{position:fixed}}.theme-toggle,.account-button,.tour-button{border:1px solid var(--line);background:var(--surface);width:40px;height:40px;color:var(--ink);cursor:pointer;transition:transform .14s var(--ease-out);border-radius:50%;place-items:center;display:grid}.theme-toggle:active,.account-button:active,.tour-button:active{transform:scale(.94)}.theme-toggle .icon,.account-button .icon,.tour-button .icon{width:20px;height:20px}@media (hover:hover) and (pointer:fine){.theme-toggle:hover,.account-button:hover,.tour-button:hover{border-color:var(--ink)}}.account-button{text-decoration:none}.install-button{text-decoration:none;display:none}@media (width<=1079.98px){html:not(.app) .install-button{border:1px solid var(--line);background:var(--surface);width:40px;height:40px;color:var(--ink);transition:transform .14s var(--ease-out);border-radius:50%;place-items:center;display:grid}html:not(.app) .install-button:active{transform:scale(.94)}html:not(.app) .install-button .icon{width:20px;height:20px}html:not(.app) .intro h1,html:not(.app) .page-head h1{padding-right:104px}}html.app .install-link,html.app .install-button,html.app .site-foot{display:none}html.app main{min-height:0}@media (display-mode:standalone){.install-link,.install-button{display:none!important}html:not(.app) .intro h1,html:not(.app) .page-head h1{padding-right:56px}}.install-lead{color:var(--ink-2);max-width:52ch;font-size:17px}.install-how{margin:0 0 16px}.install-how h2{margin-bottom:4px}.install-steps{gap:12px;margin:12px 0;padding:0;list-style:none;display:grid}.install-steps li{grid-template-columns:26px 40px 1fr;align-items:center;gap:10px;display:grid}.install-n{background:var(--ink);width:26px;height:26px;color:var(--btn-ink);font:700 14px var(--sans);border-radius:50%;place-items:center;display:grid}.install-ico{width:40px;height:40px;color:var(--brand);background:color-mix(in srgb, var(--brand) 14%, var(--surface));border-radius:11px;place-items:center;display:grid}.install-ico .icon{width:24px;height:24px}.tour-button{background:var(--ink);border-color:var(--ink);width:auto;min-width:40px;color:var(--paper);font:650 14px var(--sans);border-radius:999px;grid-auto-flow:column;gap:6px;padding:0 14px 0 10px}.tour-button .icon{width:18px;height:18px}@media (hover:hover) and (pointer:fine){.tour-button:hover{background:var(--brand);border-color:var(--brand);color:#fff}}@media (width<=480px){.tour-button{width:40px;padding:0}.tour-label{display:none}}.account-button.signed-in{background:var(--brand);border-color:var(--brand);color:#fff;font-size:17px;font-weight:750}.intro h1,.page-head h1{padding-right:190px}@media (width<=480px){.intro h1,.page-head h1{padding-right:140px}}.intro .brand{flex-wrap:wrap;row-gap:2px}.chapter{scroll-margin-top:16px}.notice{background:var(--surface);border-bottom:1px solid var(--line);color:var(--muted);font-size:13px;line-height:1.4}.notice[hidden]{display:none}.notice>div{max-width:760px;padding:calc(4px + env(safe-area-inset-top,0px)) calc(8px + env(safe-area-inset-right,0px)) 4px calc(16px + env(safe-area-inset-left,0px));justify-content:space-between;align-items:center;gap:8px;margin:0 auto;display:flex}.notice p{margin:0}.notice a{color:var(--ink-2);white-space:nowrap;font-weight:650}.notice button{width:32px;height:32px;color:var(--muted);cursor:pointer;background:0 0;border:0;border-radius:50%;flex:none;font-size:17px;line-height:1}.notice button:focus-visible{outline:2px solid var(--brand);outline-offset:2px}@media (hover:hover) and (pointer:fine){.notice button:hover{color:var(--ink)}}html.has-notice main{padding-top:20px}html.has-notice .corner{top:calc(14px + var(--notice-h,0px))}html.focus .notice{display:none}html.focus.has-notice main{padding-top:calc(20px + env(safe-area-inset-top,0px))}html.focus.has-notice .corner{top:calc(14px + env(safe-area-inset-top,0px))}dialog.gift{border:1px solid var(--line);background:var(--surface);width:min(440px,100vw - 24px);color:var(--ink);border-radius:18px;padding:28px 28px 24px;box-shadow:0 16px 48px #0a0e123d}dialog.gift::backdrop{background:#0a0e1280}body:has(dialog.gift[open]){overflow:hidden}.gift .tour-x{margin:0;position:absolute;top:12px;right:12px}.gift .logo{width:56px;height:56px;margin-bottom:18px;display:block}.gift .tag.premium{margin:0 0 6px;font-size:11px}.gift h2{letter-spacing:-.02em;margin:0 0 10px;font-size:30px;line-height:1.1}.gift p{color:var(--ink-2);margin:0 0 18px}.gift ul{gap:10px;margin:0 0 24px;padding:0;list-style:none;display:grid}.gift li{align-items:baseline;gap:12px;display:flex}.gift li:before{content:"";background:var(--flair-fill);flex:none;width:7px;height:7px;transform:translateY(-2px)rotate(45deg)}.gift .actions{flex-direction:column;align-items:stretch;gap:10px}.gift .actions .btn{justify-content:center;min-height:48px}@media (width<=560px){dialog.gift{width:auto;max-width:none;height:auto;max-height:none;padding:calc(24px + env(safe-area-inset-top,0px)) calc(28px + env(safe-area-inset-right,0px)) calc(32px + env(safe-area-inset-bottom,0px)) calc(28px + env(safe-area-inset-left,0px));background:var(--paper);box-shadow:none;border:0;border-radius:0;margin:0;inset:0}dialog.gift[open]{flex-direction:column;justify-content:center;display:flex}dialog.gift::backdrop{background:var(--paper)}.gift .tour-x{top:calc(10px + env(safe-area-inset-top,0px));right:calc(14px + env(safe-area-inset-right,0px))}.gift .logo{width:72px;height:72px;margin-bottom:22px}.gift h2{font-size:34px}.gift p,.gift li{font-size:18px}.gift .actions .btn{min-height:52px;font-size:17px}}.site-foot{max-width:760px;padding:18px calc(16px + env(safe-area-inset-right,0px)) calc(28px + env(safe-area-inset-bottom,0px)) calc(16px + env(safe-area-inset-left,0px));border-top:1px solid var(--line);color:var(--muted);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:6px 20px;margin:0 auto;font-size:13px;display:flex}.site-foot nav{flex-wrap:wrap;justify-content:center;gap:8px 16px;width:100%;display:flex}.site-foot a{color:var(--ink-2);white-space:nowrap}@media (width<=1079.98px){html:not(.focus) main{padding-bottom:0}html:not(.focus) main>:last-child{margin-bottom:20px}html:not(.focus) main>:has(+.home-settings){margin-bottom:20px}.site-foot{padding-top:14px;padding-bottom:16px}.site-foot a[href="#/account"]{display:none}}main{padding-bottom:calc(32px + env(safe-area-inset-bottom,0px))}.welcome{z-index:9;right:calc(12px + env(safe-area-inset-right,0px));bottom:calc(68px + env(safe-area-inset-bottom,0px));left:calc(12px + env(safe-area-inset-left,0px));background:var(--surface);border:1px solid var(--line);border-radius:14px;max-width:440px;margin-left:auto;padding:14px 18px 16px;position:fixed;box-shadow:0 8px 28px #0a0e1229}.welcome-head{justify-content:space-between;align-items:center;display:flex}.welcome h2{margin:0;font-size:18px}.welcome p{margin:2px 0 12px}.welcome .actions{flex-wrap:wrap}html.focus .welcome{display:none}body:has(.welcome) main{padding-bottom:calc(220px + env(safe-area-inset-bottom,0px))}@media (width>=1080px){.welcome{left:auto;bottom:calc(20px + env(safe-area-inset-bottom,0px));right:20px}body:has(.welcome) main{padding-bottom:200px}}.settings h3{margin:14px 0 8px}.settings h3:first-child{margin-top:0}.info h2:before{content:none}.info h2{margin-top:30px;font-size:20px;display:block}.loading{text-align:center;padding:32px 0}.skeleton-line{background:var(--grid);border-radius:7px;width:70%;height:14px;margin:10px 0;animation:1.1s ease-in-out infinite alternate skeleton;display:block}.skeleton-line.short{width:45%}.skeleton-line.button{border-radius:10px;width:140px;height:40px;margin-top:18px}@keyframes skeleton{to{opacity:.45}}@media (prefers-reduced-motion:reduce){.skeleton-line{animation:none}}.load-error p{margin-top:0}.signin{grid-template-columns:minmax(0,1fr);gap:8px;max-width:380px;margin:12px 0;display:grid}.signin label{font-weight:600}.signin input,#invite input{font:500 16px var(--sans);border:1.5px solid var(--line);background:var(--surface);min-height:48px;color:var(--ink);border-radius:8px;padding:8px 12px}.signin input#code{font:600 22px var(--mono);letter-spacing:.3em;max-width:9em}.signin input:focus,#invite input:focus{border-color:var(--ink);box-shadow:0 0 0 3px var(--pencil-soft);outline:none}.signin .btn{justify-self:start}.actions.social{margin-top:4px}.agree{color:var(--ink-2);margin:12px 0 0;font-size:14px}.form-error{color:var(--red);min-height:1.4em;margin:8px 0 0}.form-error:empty{display:none}.btn.danger{color:var(--red)}#account h3{margin-top:28px}.rail{display:none}@media (width>=1080px){:root{--rail:264px}body{padding-left:var(--rail)}.corner #account-corner{display:none}.intro h1,.page-head h1{padding-right:150px}.rail{width:var(--rail);padding:calc(20px + env(safe-area-inset-top,0px)) 14px 16px calc(14px + env(safe-area-inset-left,0px));overscroll-behavior:contain;background:var(--surface);border-right:1px solid var(--line);flex-direction:column;gap:18px;font-size:15px;display:flex;position:fixed;inset:0 auto 0 0;overflow-y:auto}.rail-brand{font:750 20px/1 var(--sans);letter-spacing:-.01em;color:var(--ink);align-items:center;gap:10px;padding:2px 8px;text-decoration:none;display:flex}.rail-brand .logo{width:34px;height:34px;position:relative;top:-4px}.profile{border:1px solid var(--line);background:var(--paper);color:var(--ink);border-radius:12px;grid-template-columns:auto 1fr;align-items:center;gap:4px 12px;padding:12px;text-decoration:none;display:grid}.profile .who{min-width:0;line-height:1.3;display:grid}.profile .who strong{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.profile .who span{color:var(--muted);text-overflow:ellipsis;white-space:nowrap;font-size:13px;overflow:hidden}.profile.signed-out .who span{white-space:normal}.profile .btn{grid-column:1/-1;justify-content:center;margin-top:8px}.profile[aria-current]{border-color:var(--ink)}@media (hover:hover) and (pointer:fine){a.profile:hover{border-color:var(--ink)}}.avatar{background:var(--brand);color:#fff;width:44px;height:44px;font:750 19px/1 var(--sans);border-radius:50%;place-items:center;display:grid}.avatar.empty{background:var(--grid);color:var(--ink-2)}.avatar .icon{width:24px;height:24px}.sync{align-items:center;gap:6px;display:flex}.dot{background:var(--muted);border-radius:50%;flex:none;width:7px;height:7px}.dot.ok{background:var(--green)}.dot.warn{background:var(--pencil)}.dot.busy{background:var(--brand);animation:1s ease-in-out infinite alternate pulse}@keyframes pulse{to{opacity:.3}}@media (prefers-reduced-motion:reduce){.dot.busy{animation:none}}.rail-nav,.rail-sections{gap:2px;display:grid}.rail-nav a,.rail-sections a{min-height:38px;color:var(--ink-2);border-radius:8px;align-items:center;gap:10px;padding:6px 10px;text-decoration:none;display:flex}.rail-nav .icon{flex:none;width:18px;height:18px}.rail-nav a[aria-current]{background:var(--hl-bg);box-shadow:inset 3px 0 0 var(--pencil);color:var(--ink);font-weight:650}@media (hover:hover) and (pointer:fine){.rail-nav a:hover,.rail-sections a:hover{background:var(--grid);color:var(--ink)}}.badge{background:var(--red);color:#fff;text-align:center;border-radius:11px;min-width:22px;margin-left:auto;padding:1px 7px;font-size:12px;font-weight:700}.rail-sections h2{color:var(--muted);letter-spacing:0;margin:0 10px 4px;font-size:13px;font-weight:650}.rail-sections a{min-height:32px;padding:4px 10px;font-size:14px}.rail-sections a.here{color:var(--ink);box-shadow:inset 2px 0 0 var(--pencil);border-radius:0 8px 8px 0;font-weight:600}.rail-foot{flex-wrap:wrap;gap:6px 14px;margin-top:auto;padding:0 10px;font-size:13px;display:flex}.rail-foot a{color:var(--muted)}}.rail a:focus-visible,.account-button:focus-visible{outline:2px solid var(--brand);outline-offset:2px}.numeric .sign{min-width:48px;min-height:48px;font:600 20px var(--mono);padding:0 12px}@media (hover:hover) and (pointer:fine){.numeric .sign{display:none}}.numeric .numeric-hint{flex-basis:100%;margin:0}.inline-field{gap:8px;display:flex}.inline-field input{flex:1;min-width:0}.form-note{min-height:1.4em;color:var(--ink-2);margin:0;font-size:14px}#topup-note:empty,#buy-note:empty{min-height:0}#username-form{margin-top:18px}#username-form .meta{margin:0}.check{cursor:pointer;align-items:center;gap:10px;margin-top:12px;font-weight:600;display:flex}.check input{width:20px;height:20px;accent-color:var(--brand)}.switch-row{cursor:pointer;justify-content:space-between;align-items:center;gap:16px;margin-top:12px;font-weight:600;display:flex}.switch{appearance:none;background:var(--switch-off);cursor:pointer;width:51px;height:31px;transition:background-color .2s var(--ease-out);border-radius:16px;flex:none;margin:0;position:relative}.switch:before{content:"";width:27px;height:27px;transition:transform .25s var(--ease-out);background:#fff;border-radius:50%;position:absolute;top:2px;left:2px;box-shadow:0 2px 4px #0003,0 0 1px #00000026}.switch:checked{background:var(--brand)}.switch:checked:before{transform:translate(20px)}.switch:focus-visible{outline:2px solid var(--brand);outline-offset:2px}.switch:disabled{opacity:.5}@media (prefers-reduced-motion:reduce){.switch,.switch:before{transition:none}}table.board tr.me td{background:var(--hl-bg);font-weight:700}.board-nav{margin-top:14px}.today-band{background:var(--grid);border-radius:20px;margin:0 0 40px;padding:14px}.today-band .feature.lead{margin-bottom:14px}.feature.tile{background:var(--surface);border-radius:14px;flex-direction:row;align-items:flex-start;gap:14px;margin:0;padding:18px}.feature.tile .plate{background-color:var(--paper)}.feature.tile .plate-lg{width:104px}.feature.tile>div:not(.plate){flex-direction:column;flex:1;align-items:flex-start;display:flex}.feature.tile .actions{flex-wrap:wrap}.feature.tile .actions,.feature.tile>div:not(.plate)>.btn{margin-top:auto}.part-title{color:var(--muted);letter-spacing:0;margin:0 0 18px;font-size:15px;font-weight:650}.group-title{margin-top:40px}.test-filter+.group-title,.test-filter-note+.group-title{margin-top:8px}.test-filter{border:1.5px solid color-mix(in srgb, var(--brand) 35%, var(--line));background:color-mix(in srgb, var(--brand) 7%, var(--surface));border-radius:14px;margin:0 0 28px;padding:0 16px}.test-filter:has(+.test-filter-note){margin-bottom:0}.test-filter[open]{padding-bottom:14px}.test-filter summary{cursor:pointer;min-height:64px;color:var(--ink-2);align-items:center;gap:14px;font-size:16px;list-style:none;display:flex}.test-filter summary::-webkit-details-marker{display:none}.test-filter summary strong{color:var(--ink)}.test-filter-ico{width:40px;height:40px;color:var(--brand);background:color-mix(in srgb, var(--brand) 14%, var(--surface));border-radius:11px;flex:none;place-items:center;display:grid}.test-filter-ico svg{fill:none;stroke:currentColor;stroke-width:1.8px;width:24px;height:24px}.test-filter-text{flex-direction:column;gap:2px;display:flex}.test-filter-text small{color:var(--muted);font-size:14px}.test-filter-change{border:1.5px solid var(--brand);color:var(--brand);border-radius:999px;flex:none;margin-left:auto;padding:7px 14px;font-size:15px;font-weight:650}.test-filter[open] .test-filter-change{visibility:hidden}.test-filter[open] .chip-groups{margin-top:6px}.chip-groups{grid-template-columns:minmax(0,1fr);gap:14px;display:grid}.chip-group{min-width:0}.chip-group-label{color:var(--muted);font:700 12px/1.2 var(--sans);letter-spacing:.06em;text-transform:uppercase;margin:0 0 8px}.exam-chips{flex-wrap:wrap;gap:8px;display:flex}.test-filter .exams .chip{border:1.5px solid var(--brand);color:var(--brand);background:color-mix(in srgb, var(--brand) 7%, var(--surface))}.test-filter .exams .chip[aria-pressed=true]{background:var(--brand);border-color:var(--brand);color:var(--paper)}.chip-all{color:var(--ink-2);font:600 14px var(--sans);text-underline-offset:3px;cursor:pointer;background:0 0;border:0;margin-top:10px;padding:6px 0;text-decoration:underline}@media (width>=1080px){.chip-groups{grid-template-columns:auto 1fr;gap:0}.chip-group.exams{border-right:1px solid var(--line);margin-right:20px;padding-right:20px}.exam-chips{flex-direction:column;align-items:stretch}}.test-filter-note{max-width:64ch;margin:10px 0 28px}.test-filter-note:has(+.plan-mismatch){margin-bottom:4px}.test-filter .chips,.plan-form .chips{flex-wrap:wrap;gap:8px;display:flex}.test-filter .chip,.plan-form .chip{border:1px solid var(--line);background:var(--surface);min-height:36px;color:var(--ink);font:600 14px var(--sans);cursor:pointer;border-radius:999px;padding:4px 14px}.test-filter .chip[aria-pressed=true],.plan-form .chip[aria-pressed=true]{background:var(--ink);border-color:var(--ink);color:var(--btn-ink)}.test-filter .chip-row{display:contents}@media (width<=1079.98px){.test-filter .chips{overscroll-behavior-x:contain;scrollbar-width:none;flex-flow:column;margin:0 -16px;padding:0 16px 2px;scroll-padding-inline:16px;overflow-x:auto}.test-filter .chips::-webkit-scrollbar{display:none}.test-filter .chip-row{gap:8px;width:max-content;display:flex}.test-filter .chip-row>.chip{flex:none}}.tag.for-test{background:var(--surface);border:1px solid var(--line)}details.fold{border-top:1px solid var(--line)}details.fold:last-of-type{border-bottom:1px solid var(--line);margin-bottom:44px}details.fold>summary{cursor:pointer;flex-wrap:wrap;align-items:baseline;gap:4px 12px;padding:12px 0;list-style:none;display:flex}details.fold>summary::-webkit-details-marker{display:none}details.fold>summary:before{content:"+";width:1ch;color:var(--muted);font-weight:650}details.fold[open]>summary:before{content:"−"}details.fold>summary .fold-title{font-weight:650}details.fold>summary .meta{flex:24ch;margin:0}details.fold[open]>.chapter{margin-top:8px}@media (width<=560px){.today-band{border-radius:16px;margin-left:-6px;margin-right:-6px;padding:10px}.feature.tile{padding:14px}}@media (width>=1080px){.intro .brand{clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}}.visually-hidden{clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.pic{width:100%;height:100%;display:block}.avatar.has-pic{background:0 0}.account-button.has-pic{background:0 0;border-color:#0000;padding:0;overflow:hidden}.account-button.has-pic .pic{width:100%;height:100%}.avatar-picker{border:0;min-width:0;margin:18px 0 0;padding:0}.avatar-picker legend{padding:0;font-weight:650}.avatar-picker .meta{margin:0 0 10px}.avatar-grid{grid-template-columns:repeat(6,44px);gap:10px;display:grid}@media (width<=360px){.avatar-grid{grid-template-columns:repeat(6,40px);gap:8px}.avatar-grid label{width:40px;height:40px}}.avatar-grid label{cursor:pointer;width:44px;height:44px;transition:transform .12s var(--ease-out);border-radius:50%;position:relative}.avatar-grid label:active{transform:scale(.94)}.avatar-grid label:has(input:checked){box-shadow:0 0 0 2px var(--surface), 0 0 0 4px var(--ink)}.avatar-grid label:has(input:focus-visible){outline:2px solid var(--brand);outline-offset:5px}.avatar-grid .initial{background:var(--brand);color:#fff;width:100%;height:100%;font:750 18px/1 var(--sans);border-radius:50%;place-items:center;display:grid}.board td.name{align-items:center;gap:8px;display:flex}.board td.name .pic{flex:none;width:22px;height:22px}.link-btn{color:var(--muted);font:inherit;text-underline-offset:3px;cursor:pointer;background:0 0;border:0;padding:0;font-size:14px;text-decoration:underline}@media (hover:hover) and (pointer:fine){.link-btn:hover{color:var(--ink)}}.report-row{margin:12px 0 0}.save-star{border:1px solid var(--line);background:var(--surface);width:36px;height:36px;color:var(--muted);cursor:pointer;transition:transform .12s var(--ease-out);border-radius:50%;flex:none;place-items:center;margin-left:auto;padding:0;display:inline-grid}.save-star svg{fill:none;stroke:currentColor;stroke-width:1.6px;stroke-linejoin:round;width:20px;height:20px}.save-star[aria-pressed=true]{color:var(--flair-edge)}.save-star[aria-pressed=true] svg{fill:var(--flair-fill)}.save-star:active{transform:scale(.92)}@media (hover:hover) and (pointer:fine){.save-star:hover{border-color:var(--ink);color:var(--ink)}}.save-note{margin:8px 0 0;font-size:14px}.daily-choice{margin:0 0 12px}.save-note:empty{display:none}.saved-list{gap:10px;margin:0;padding:0;list-style:none;display:grid}.saved-list li{border:1px solid var(--line);background:var(--surface);border-radius:12px;align-items:center;gap:14px;padding:12px 14px;display:flex}.saved-list a{flex:1;gap:2px;min-width:0;text-decoration:none;display:grid}@media (hover:hover) and (pointer:fine){.saved-list li:hover{border-color:var(--ink)}}.report-form{gap:8px;max-width:460px;margin-top:4px;display:grid}.report-sent{background:color-mix(in srgb, var(--green) 14%, transparent);color:var(--green);border-radius:8px;padding:6px 12px;font-size:14px;font-weight:650;display:inline-block}.report-form fieldset{border:0;gap:4px;margin:0;padding:0;display:grid}.report-form legend{margin-bottom:4px;font-weight:650}.report-form textarea{width:100%;font:inherit;border:1px solid var(--line);background:var(--surface);color:var(--ink);border-radius:8px;padding:8px;font-size:16px}.board td.name .report{margin-left:auto}.board td.name .report .link-btn{font-size:12px}.sentence{max-width:52ch;font-size:19px;line-height:1.6}.sentence .gap{border-bottom:2px solid var(--ink);color:#0000;min-width:4.5em;line-height:1;display:inline-block}body.page:not(.framed){padding-left:0}.page-top{max-width:760px;padding:calc(16px + env(safe-area-inset-top,0px)) calc(16px + env(safe-area-inset-right,0px)) 0 calc(16px + env(safe-area-inset-left,0px));justify-content:space-between;align-items:center;margin:0 auto;display:flex}.page-top .brand-link{font:750 20px/1 var(--sans);color:var(--ink);align-items:center;gap:10px;text-decoration:none;display:flex}.page-top .brand-link .logo{width:34px;height:34px;position:relative;top:-4px}.page-top .theme-toggle{position:static}.page-nav{font:600 15px var(--sans);align-items:center;gap:18px;margin-left:auto;margin-right:14px;display:flex}.page-nav a:not(.btn){color:var(--ink-2);text-decoration:none}.page-nav a:not(.btn):hover,.page-nav a[aria-current=page]{color:var(--ink)}.page-nav a[aria-current=page]{text-decoration:underline;-webkit-text-decoration-color:var(--pencil);text-decoration-color:var(--pencil);text-underline-offset:5px;text-decoration-thickness:2px}@media (width<=480px){.page-nav{gap:12px;margin-right:8px}.page-nav a[href="/#/guide"]{display:none}}.article-list .guide-index{grid-template-columns:1fr}.course-link{color:var(--ink);transition:transform .16s var(--ease-out);align-items:center;gap:14px;padding:14px 18px 14px 14px;text-decoration:none;display:flex}.course-link:after{content:"";border-right:2px solid var(--muted);border-bottom:2px solid var(--muted);flex:none;width:10px;height:10px;margin-left:auto;transform:rotate(-45deg)}.course-link:active{transform:scale(.98)}@media (hover:hover) and (pointer:fine){.course-link:hover{border-color:var(--ink)}}body[data-page=articles] .guide{max-width:none}.facts{border-collapse:collapse;width:100%;margin:12px 0 8px;font-size:16px}.facts th,.facts td{text-align:left;border-bottom:1px solid var(--line);vertical-align:top;padding:9px 0}.facts th{padding-right:16px;font-weight:650}.facts:not(:has(th:nth-child(3))) th{width:38%}.facts:has(th:nth-child(3)) td{padding-right:16px}.cta{flex-wrap:wrap;gap:10px;margin:18px 0 8px;display:flex}.crumbs{color:var(--muted);margin:0 0 6px;font-size:14px}.sources{color:var(--ink-2);font-size:14px}.sources li{margin-bottom:4px}.tabbar{display:none}@media (width<=1079.98px){.tabbar{z-index:10;padding:0 calc(6px + env(safe-area-inset-right,0px)) env(safe-area-inset-bottom,0px) calc(6px + env(safe-area-inset-left,0px));background:color-mix(in srgb, var(--paper) 90%, transparent);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);border-top:1px solid var(--line);grid-template-columns:repeat(5,minmax(0,1fr));display:grid;position:fixed;bottom:0;left:0;right:0}.tabbar a{min-height:56px;color:var(--muted);-webkit-touch-callout:none;flex-direction:column;justify-content:center;align-items:center;gap:3px;font-size:11px;font-weight:600;line-height:1;text-decoration:none;display:flex;position:relative}.tabbar .icon{width:23px;height:23px}.tabbar a[aria-current]{color:var(--ink)}.tabbar a[aria-current]:before{content:"";background:var(--pencil);border-radius:0 0 3px 3px;width:28px;height:3px;position:absolute;top:-1px}.tabbar a:active .icon{transform:scale(.92)}.tabbar a:focus-visible{outline:2px solid var(--brand);outline-offset:-4px}.tabbar .badge{background:var(--red);color:#fff;text-align:center;border-radius:9px;min-width:17px;height:17px;padding:0 5px;font-size:10.5px;font-weight:700;line-height:17px;position:absolute;top:6px;left:calc(50% + 7px)}body{padding-bottom:calc(57px + env(safe-area-inset-bottom,0px))}html.focus .tabbar{display:none}html:has(input:not([type=checkbox],[type=radio],[type=file]):focus,textarea:focus) .tabbar{display:none}html.focus body{padding-bottom:0}}html.native-tabs .tabbar{display:none}html.native-tabs body{padding-bottom:env(safe-area-inset-bottom,0px)}html.native-tabs.focus body{padding-bottom:0}html.native-head:not(.focus) main{padding-top:var(--native-head)}html.native-head:not(.focus) #account-corner,html.native-head:not(.focus) main>.intro,html.native-head:not(.focus) main>.page-head>a.back,html.native-head:not(.focus) main>.page-head>h1,html.native-head:not(.focus) main>.plan-layout>.plan-main>.page-head>a.back,html.native-head:not(.focus) main>.plan-layout>.plan-main>.page-head>h1,html.native-head:not(.focus) main>.guide-hero>a.back{display:none}.table-scroll{-webkit-overflow-scrolling:touch;overflow-x:auto}.diag td.num,.diag th.num{font-variant-numeric:tabular-nums;white-space:nowrap}table.history td:first-child{white-space:nowrap}.after-actions{margin-top:36px}#more-runs{margin-top:10px}@media (width<=560px){h1{font-size:26px}.page-head{margin-bottom:18px}section{margin-bottom:30px}.feature.lead,.feature.tile{padding:16px;display:block}.feature.lead>.plate,.feature.tile>.plate{float:right;width:72px;margin:0 0 6px 12px}.feature.lead>div:not(.plate),.feature.tile>div:not(.plate){display:block}.feature .actions,.feature.tile>div>.btn{margin-top:12px}.today-band .feature.lead{margin-bottom:10px}.panel{padding:12px 14px}.diag th,.diag td{padding-right:8px}.admin-panel table.diag{max-width:100%;display:block;overflow-x:auto}.limit input,.level-pick select{min-height:40px}.intro .brand{margin-bottom:8px}details.review summary{line-height:1.4}}.review-options{margin-top:10px}.review-options .cell{position:relative}.cell.correct{box-shadow:inset 0 0 0 2px var(--green);border-color:var(--green)}.cell.wrong{box-shadow:inset 0 0 0 2px var(--red);border-color:var(--red)}.pick-tag{font:700 11px/1.2 var(--sans);color:var(--paper);white-space:nowrap;border-radius:999px;padding:2px 6px}.pick-tag.right{background:var(--green)}.pick-tag.yours{background:var(--red)}.review-options .pick-tag{text-overflow:ellipsis;max-width:calc(100% - 6px);position:absolute;bottom:4px;left:50%;overflow:hidden;translate:-50%}.choice .pick-tag{flex:none;align-self:center;margin-left:auto}.choices.figures .choice .pick-tag{margin:6px auto 0}@media (width<=560px){.review-options .pick-tag{padding:1px 4px;font-size:9.5px}}dialog.tour{width:min(440px,100vw - 24px);height:min(var(--tour-h), calc(100dvh - 24px));border:1px solid var(--line);background:var(--surface);max-height:none;color:var(--ink);border-radius:14px;padding:20px 22px 18px;overflow:hidden}dialog.tour[open]{flex-direction:column;display:flex}:root{--tour-h:400px}.tour-body{overscroll-behavior:contain;flex:1;min-height:0;overflow-y:auto}dialog.tour::backdrop{background:#0a0e1280}.tour-head{justify-content:space-between;align-items:center;margin:0 0 6px;display:flex}.tour-x{width:36px;height:36px;color:var(--muted);cursor:pointer;background:0 0;border:0;border-radius:50%;margin-right:-8px;font-size:24px;line-height:1}.tour h2{margin:0 0 8px;font-size:22px}.tour p{margin:0 0 10px}.tour-dots{justify-content:center;gap:6px;margin:14px 0 16px;display:flex}.tour-dots i{background:var(--line);border-radius:50%;width:7px;height:7px}.tour-dots i.on{background:var(--ink)}.tour-actions{justify-content:flex-end}dialog.tour{overflow:visible}.tour-guide{filter:drop-shadow(0 4px 10px #00000038);pointer-events:none;width:76px;height:76px;position:absolute;top:-44px;left:16px}.tour-guide .mascot{display:block}.tour-head{min-height:36px;padding-left:84px}.tour-guide.hop{animation:.46s cubic-bezier(.34,1.4,.64,1) tour-hop}.tour-guide.wave{transform-origin:50% 90%;animation:.46s cubic-bezier(.34,1.4,.64,1) tour-hop,.9s ease-in-out .38s 2 tour-wave}@keyframes tour-hop{0%{opacity:0;transform:translateY(18px)scale(.86)}}@keyframes tour-wave{25%{rotate:-9deg}75%{rotate:9deg}}@media (prefers-reduced-motion:reduce){.tour-guide.hop,.tour-guide.wave{animation:none}}.tour-actions .btn{flex:none}@media (width<=560px){dialog.tour{margin:auto 12px calc(12px + env(safe-area-inset-bottom,0px));--tour-h:480px;width:auto;max-width:none}.tour-actions{flex-wrap:wrap;justify-content:space-between}.tour-actions [data-go]{flex:1 0 100%;order:-1}.tour-actions .btn{justify-content:center;min-height:48px}.tour-actions [data-back],.tour-actions [data-next]{flex:1 1 0}}input:not([type=checkbox],[type=radio],[type=range],[type=file],[type=hidden]),select,textarea{border-color:var(--field-line)}input:not([type=checkbox],[type=radio],[type=range],[type=file],[type=hidden]):focus,select:focus,textarea:focus{border-color:var(--ink)}.skip-link{z-index:100;background:var(--ink);color:var(--btn-ink);border-radius:8px;padding:10px 16px;font-weight:650;text-decoration:none;position:absolute;top:-80px;left:12px}.skip-link:focus{top:12px}h1[tabindex="-1"]:focus,main[tabindex="-1"]:focus{outline:none}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.001ms!important;animation-duration:.001ms!important;animation-iteration-count:1!important}}.jump{z-index:4;scrollbar-width:none;background:var(--paper);border-bottom:1px solid var(--line);gap:8px;margin:0 -16px 10px;padding:8px 16px;display:flex;position:sticky;top:0;overflow-x:auto}.jump::-webkit-scrollbar{display:none}.welcome-mark{display:none}@media (width<=1079.98px){#tour-button,#theme-toggle,.intro>p,.intro nav,.home-settings{display:none}.intro{margin-bottom:18px}.intro h1,.page-head h1{padding-right:56px}.welcome{z-index:60;max-width:none;padding:calc(24px + env(safe-area-inset-top,0px)) calc(28px + env(safe-area-inset-right,0px)) calc(32px + env(safe-area-inset-bottom,0px)) calc(28px + env(safe-area-inset-left,0px));background:var(--paper);box-shadow:none;border:0;border-radius:0;flex-direction:column;justify-content:center;margin:0;display:flex;inset:0}.welcome-mark{display:block}.welcome-mark .logo{width:72px;height:72px;margin-bottom:20px}.welcome h2{letter-spacing:-.02em;font-size:34px}.welcome p{max-width:34ch;margin:12px 0 28px;font-size:19px;line-height:1.5}.welcome .tour-x{top:calc(10px + env(safe-area-inset-top,0px));right:calc(14px + env(safe-area-inset-right,0px));margin:0;position:absolute}.welcome .actions{flex-direction:column;align-items:stretch;gap:12px;max-width:420px}.welcome .actions .btn{justify-content:center;min-height:52px;font-size:17px}body:has(.welcome){overflow:hidden}body:has(.welcome) main{padding-bottom:calc(32px + env(safe-area-inset-bottom,0px))}}html.app .jump{top:env(safe-area-inset-top,0px)}html.app body:before{content:"";height:env(safe-area-inset-top,0px);background:var(--paper);z-index:40;pointer-events:none;position:fixed;inset:0 0 auto}.jump .chip{border:1px solid var(--line);background:var(--surface);min-height:36px;color:var(--ink);font:600 14px var(--sans);cursor:pointer;border-radius:999px;flex:none;padding:4px 14px}.jump .chip.on{background:var(--ink);border-color:var(--ink);color:var(--btn-ink)}main section[id^=p-]{scroll-margin-top:64px}@media (width>=1080px){.home-jump{display:none}}@media (width<=1079.98px){.chapter,.today-band{scroll-margin-top:64px}}.to-top{right:calc(16px + env(safe-area-inset-right,0px));bottom:calc(84px + env(safe-area-inset-bottom,0px));z-index:6;border:1px solid var(--line);background:var(--surface);min-height:40px;color:var(--ink);font:650 14px var(--sans);cursor:pointer;border-radius:999px;padding:6px 16px;position:fixed;box-shadow:0 2px 8px #0a0e1224}@media (width>=1080px){.to-top{bottom:24px}}@media (width<=1079.98px){.to-top,html.tab-root .page-head>.back{display:none}}.flair{vertical-align:-.15em;flex:none;width:1.05em;height:1.05em;margin-left:5px}.profile .who strong{align-items:center;min-width:0;display:flex}.profile .who strong .nm{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.flair-grid label svg.flair{width:28px;height:28px;margin:0}.flair-grid label{background:var(--surface);border:1px solid var(--line);place-items:center;display:grid}.flair-grid label:has(input:disabled){opacity:.5;cursor:not-allowed}.flair-picker legend .tag.premium{margin-left:8px}.flair-grid .initial{background:var(--surface);color:var(--muted);border:1px dashed var(--field-line);font:600 11px var(--sans);letter-spacing:.02em}.sort-fig{max-width:360px;margin:8px 0 14px}.sort-fig svg{background:var(--fig-paper);border:1px solid var(--line);border-radius:8px;width:100%;height:auto;padding:8px;display:block}.sort-fig .sf-rod{fill:var(--line)}.sort-fig .sf-letter{font:700 11px var(--sans);fill:#0000008c}.sort-fig .sf-num{font:600 11px var(--sans);fill:var(--muted)}.sort-fig figcaption{color:var(--muted);margin-top:4px;font-size:14px}.mech{background:var(--fig-paper);border:1px solid var(--line);border-radius:8px;margin:8px 0;padding:8px}.mech svg{max-width:100%;height:auto;margin:0 auto;display:block}.mech-pulley svg{width:auto;height:min(40vh,340px)}.mech-gear-body{fill:var(--fig-1);stroke:var(--fig-ink);stroke-width:1.5px;stroke-linejoin:round}.mech-belt{fill:none;stroke:var(--fig-3);stroke-width:4px;stroke-linejoin:round}.mech-wheel-body{fill:var(--fig-1);stroke:var(--fig-ink);stroke-width:2px}.mech-axle{stroke:var(--fig-3);stroke-width:7px;stroke-linecap:round}.mech-letter{font-family:var(--sans);fill:var(--fig-ink);font-weight:700}.mech-teeth{font-family:var(--sans);fill:var(--fig-muted)}.mech-arrow{fill:none;stroke:var(--fig-mark);stroke-width:3px;stroke-linecap:round}.mech-arrowhead{fill:var(--fig-mark)}.mech-beam{fill:var(--fig-3)}.mech-pivot{fill:var(--fig-2);stroke:var(--fig-ink);stroke-width:1.5px;stroke-linejoin:round}.mech-tick{stroke:var(--fig-ink);stroke-width:1.5px}.mech-mark{font-family:var(--sans);fill:var(--fig-muted)}.mech-string{stroke:var(--fig-ink);stroke-width:1.5px}.mech-box{fill:var(--fig-1);stroke:var(--fig-ink);stroke-width:1.5px}.mech-unknown .mech-box{fill:var(--fig-missing);stroke-dasharray:4 3}.mech figcaption{color:var(--fig-muted);text-align:center;margin-top:2px;font-size:13px}.mech-kg{font-family:var(--sans);fill:var(--fig-ink);font-weight:700}.mech-rope{fill:none;stroke:var(--fig-ink);stroke-width:2.5px;stroke-linecap:round}.mech-sheave{fill:var(--fig-1);stroke:var(--fig-ink);stroke-width:1.5px}.mech-pin{fill:var(--fig-ink)}.mech-block{fill:var(--fig-2);fill-opacity:.35;stroke:var(--fig-ink);stroke-width:1.5px}.mech-ceiling{fill:var(--fig-3)}.mech-knot,.mech-handle{fill:var(--fig-ink)}.mech-pull{fill:none;stroke:var(--fig-mark);stroke-width:3px;stroke-linecap:round;stroke-linejoin:round}.mb-top{flex-wrap:wrap;gap:4px 12px}.mb-grid{grid-template-columns:repeat(var(--w), minmax(0, 1fr));width:min(100%, calc(var(--w) * 58px));gap:3px;margin:0 auto;display:grid}.mb-cell{aspect-ratio:1;background:var(--stage-2);min-width:0;color:var(--stage-ink);font:700 clamp(13px, 3.6vw, 18px) var(--sans);cursor:pointer;touch-action:manipulation;-webkit-tap-highlight-color:transparent;border:0;border-radius:6px;place-items:center;padding:0;display:grid;position:relative}.mb-cell.rock{cursor:default;background:#0e1115;box-shadow:inset 0 0 0 1px #2b333c}.mb-cell.gate{box-shadow:inset 0 0 0 2px var(--c-blue)}.mb-cell.dome{background:var(--c-yellow);color:#1b2026}.mb-cell.on-route{background:#2f3843}.mb-cell.drain-1{background:color-mix(in srgb, var(--c-blue) 16%, var(--stage-2))}.mb-cell.drain-2{background:color-mix(in srgb, var(--c-blue) 28%, var(--stage-2))}.mb-cell.drain-3{background:color-mix(in srgb, var(--c-blue) 40%, var(--stage-2))}.mb-cell.in-range{box-shadow:inset 0 0 0 2px var(--c-yellow)}.mb-cell.cursor{outline:2px solid var(--stage-ink);outline-offset:1px;z-index:1}.mb-cell:focus-visible{outline:3px solid var(--stage-ink);outline-offset:1px;z-index:1}.mb-cell .mb-arrow{color:var(--stage-muted);font-size:.68em;line-height:1;position:absolute;top:1px;left:3px}.mb-cell .mb-drain{color:#cfe0ff;font-size:.6em;line-height:1;position:absolute;top:1px;right:3px}.mb-cell .mb-gate{color:var(--c-blue)}.mb-cell .mb-dome{font-size:1.2em}.mb-ico{color:#1b2026;border-radius:5px;place-items:center;width:80%;height:80%;line-height:1;display:grid}.mb-ico.t-crate{background:#c9a46a}.mb-ico.t-dust{color:#1b2026;background:repeating-radial-gradient(circle at 30% 30%,#b8ad98 0 2px,#8a8170 2px 5px)}.mb-ico.t-beam{background:var(--c-blue);border-radius:50%}.mb-ico.t-zapper{clip-path:polygon(50% 0,100% 50%,50% 100%,0 50%);background:#ff9a3c}.mb-cell.t-dust .mb-ico{opacity:.85;width:100%;height:100%}.mb-rover{background:var(--c-red);color:#1b2026;text-align:center;min-width:58%;box-shadow:0 0 0 2px var(--stage);border-radius:999px;padding:1px 3px;font-size:.72em;line-height:1.3;position:absolute;inset:auto 2px 2px auto}.mb-rover sup{font-size:.75em}.mb-tools{flex-wrap:wrap;justify-content:center;gap:6px;display:flex}.mb-tool{border:1.5px solid var(--stage-line);background:var(--stage-2);min-height:44px;color:var(--stage-ink);font:600 14px var(--sans);cursor:pointer;border-radius:10px;align-items:center;gap:6px;padding:4px 10px 4px 6px;display:flex;position:relative}.mb-tool .mb-ico{width:26px;height:26px;font-size:14px}.mb-tool .mb-cost{background:var(--stage);min-width:20px;color:var(--c-yellow);border-radius:999px;padding:0 5px;font-size:13px}.mb-tool .pad-key{font-size:11px}.mb-tool[aria-checked=true]{border-color:var(--c-yellow);box-shadow:inset 0 0 0 1.5px var(--c-yellow)}.mb-tool:focus-visible{outline:2px solid var(--stage-ink);outline-offset:2px}.mb-actions{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;display:grid}.mb-actions .pad{gap:2px;min-height:56px;font-size:14px}.mb-actions .pad:disabled{opacity:.45;cursor:default}.game-stage.mb-busy .mb-actions .pad,.game-stage.mb-busy .mb-tool{opacity:.55}.mb-end{text-align:center;justify-items:center;gap:8px;display:grid}.mb-end p{margin:0}.mb-end .pad{width:min(100%,260px);min-height:52px}.mb-plan{color:var(--stage-muted);font-size:14px}.mb-mini{grid-template-columns:repeat(var(--w), 22px);gap:2px;display:grid}.mb-mini-cell{background:var(--stage-2);color:#1b2026;width:22px;height:22px;font:700 12px var(--sans);border-radius:4px;place-items:center;display:grid}.mb-mini-cell sup{font-size:8px}.mb-mini-cell.rock{background:#0e1115;box-shadow:inset 0 0 0 1px #2b333c}.mb-mini-cell.gate{color:var(--c-blue);box-shadow:inset 0 0 0 1.5px var(--c-blue)}.mb-mini-cell.dome{background:var(--c-yellow)}.mb-mini-cell.t-crate{background:#c9a46a}.mb-mini-cell.t-dust{background:#a39882}.mb-mini-cell.t-beam{background:var(--c-blue)}.mb-mini-cell.t-zapper{background:#ff9a3c}@media (pointer:coarse){.mb-tool .pad-key,.mb-actions .pad-key,.mb-end .pad-key{display:none}}@media (width<=480px){.mb-tool .mb-tname{font-size:12px}.mb-tool{gap:4px;padding:4px 8px 4px 4px}}.moon-fig{max-width:280px;margin:8px 0 14px}.moon-fig svg{background:var(--fig-paper);border:1px solid var(--line);border-radius:8px;width:100%;height:auto;padding:6px;display:block}.moon-fig .mf-floor{fill:var(--fig-paper);stroke:var(--fig-1)}.moon-fig .mf-route{fill:var(--fig-missing);stroke:var(--fig-2)}.moon-fig .mf-rock{fill:var(--fig-3)}.moon-fig .mf-dome{fill:#f5c518}.moon-fig .mf-text{font:700 14px var(--sans);fill:var(--fig-ink)}.moon-fig .mf-dark{font:700 14px var(--sans);fill:#1b2026}.moon-fig .mf-num{font:600 10px var(--sans);fill:var(--fig-muted)}.moon-fig figcaption{color:var(--muted);margin-top:4px;font-size:14px}.fig-pair{flex-wrap:wrap;gap:0 18px;display:flex}.fig-pair .moon-fig{flex:200px;max-width:240px}.plan-form{gap:22px;max-width:720px;display:grid}.plan-form fieldset{border:0;min-width:0;margin:0;padding:0}.plan-form legend{padding:0}.plan-form legend h2{margin:0 0 10px}.plan-fields{flex-wrap:wrap;gap:16px;display:flex}.plan-fields label{gap:6px;font-weight:600;display:grid}.plan-fields input,.plan-fields select{font:500 16px var(--sans);border:1.5px solid var(--field-line);background:var(--surface);min-height:48px;color:var(--ink);border-radius:8px;padding:8px 12px}.plan-picks{margin:0;padding:0;list-style:none}.plan-picks .check{flex-wrap:wrap;gap:2px 10px;margin-top:10px}.plan-picks .meta,.plan-covers .meta{font-size:14px;font-weight:400}.plan-covers{margin:8px 0 20px;padding-left:20px}.plan-covers li{margin:4px 0}.plan-today .track-sub{flex-wrap:wrap;row-gap:2px}.plan-days{flex-wrap:wrap;gap:4px;margin:4px 0 6px;padding:0;list-style:none;display:flex}.plan-days li,.plan-days-key span{width:14px;height:14px;box-shadow:inset 0 0 0 1.5px var(--field-line);border-radius:3px}.plan-days .done,.plan-days-key .done{background:var(--brand);box-shadow:none}.plan-days .some,.plan-days-key .some{background:color-mix(in srgb, var(--brand) 45%, var(--surface));box-shadow:none}.plan-days .today{outline:2px solid var(--ink);outline-offset:1px}.plan-days-key{flex-wrap:wrap;align-items:center;gap:6px 8px;margin:0 0 14px;font-size:13px;display:flex}.plan-days-key span{margin-left:6px;display:inline-block}.plan-days-key span:first-child{margin-left:0}.plan-drills{margin:4px 0 14px}.coach-panel{border-top:1px solid var(--line);margin-top:28px;padding-top:4px}.meter{background:var(--line);border-radius:4px;max-width:420px;height:8px;margin:10px 0 6px;overflow:hidden}.meter span{background:var(--brand);border-radius:4px;min-width:2px;height:100%;display:block}.meter.high span{background:var(--red)}.plan-days .rest,.plan-days-key .rest{box-shadow:inset 0 0 0 1.5px var(--line);background:repeating-linear-gradient(135deg, transparent 0 3px, var(--line) 3px 4px)}.plan-rest-legend{margin-bottom:4px;font-weight:600}.plan-rest{flex-wrap:wrap;gap:4px 18px;display:flex}.plan-rest .check{margin-top:6px;font-weight:500}.coach-note{border-left:3px solid var(--brand);background:var(--surface);border-radius:0 8px 8px 0;margin:0 0 18px;padding:12px 14px}.coach-note p{margin:4px 0 0}.coach-ask{gap:8px;max-width:640px;margin:10px 0 14px;display:grid}.coach-ask textarea{font:500 16px var(--sans);border:1.5px solid var(--field-line);background:var(--surface);color:var(--ink);resize:vertical;border-radius:8px;padding:10px 12px}.coach-ask .actions{align-items:center}.coach-log{border:1px solid var(--line);background:color-mix(in srgb, var(--ink) 3%, var(--paper));overscroll-behavior:contain;border-radius:14px;flex-direction:column;gap:8px;max-height:340px;margin:4px 0 12px;padding:10px;display:flex;overflow-y:auto}.said{white-space:pre-wrap;overflow-wrap:anywhere;border-radius:10px;margin:0;padding:10px 12px;font-size:15px;line-height:1.45}.said .who{color:var(--muted);margin-bottom:2px;font-size:12px;font-weight:700;display:block}.said.you{background:var(--surface);border:1px solid var(--line);align-self:flex-end;max-width:88%}.said.coach{background:color-mix(in srgb, var(--brand) 10%, var(--surface));border:1px solid color-mix(in srgb, var(--brand) 30%, var(--line));align-self:flex-start;max-width:92%}.said.pending{color:var(--muted);font-style:italic}.coach-foot .meter{margin-top:0}.coach-ask .coach-row{flex-wrap:nowrap;gap:14px}.coach-row .btn{flex:none}.coach-usage{flex:1;min-width:0;max-width:320px}.coach-usage .meter{max-width:none;margin:0 0 5px}.coach-usage .meta{margin:0;font-size:12.5px;line-height:1.35}.coach-usage .meta+.meta{margin-top:4px}.coach-foot .meta:empty{display:none}.coach-drawer{--coach-w:380px;z-index:20;width:min(var(--coach-w), 100vw);padding:calc(18px + env(safe-area-inset-top,0px)) 20px calc(14px + env(safe-area-inset-bottom,0px));border-left:1px solid var(--line);background:var(--surface);visibility:hidden;transition:transform .16s var(--ease-out), visibility 0s linear .16s;flex-direction:column;display:flex;position:fixed;top:0;bottom:0;right:0;transform:translate(100%);box-shadow:-14px 0 36px #00000024}html.coach-drawn .coach-drawer{visibility:visible;transition:transform .2s var(--ease-out), visibility 0s;transform:none}.coach-drawer-x{z-index:1;top:calc(12px + env(safe-area-inset-top,0px));width:36px;height:36px;color:var(--ink-2);cursor:pointer;background:0 0;border:0;border-radius:50%;font-size:24px;line-height:1;position:absolute;right:12px}@media (hover:hover) and (pointer:fine){.coach-drawer-x:hover{background:color-mix(in srgb, var(--ink) 7%, transparent);color:var(--ink)}}.coach-drawer .coach-panel{border:0;flex-direction:column;flex:1;min-height:0;margin:0;padding:0;display:flex}.coach-drawer .coach-panel h2{flex:none;margin-bottom:12px;padding-right:44px}.coach-drawer .coach-log{background:0 0;border:0;border-radius:0;flex:auto;min-height:0;max-height:none;margin:0 -4px 12px 0;padding:2px 4px 2px 0}.coach-drawer .coach-log>:first-child{margin-top:auto}.coach-drawer .coach-ask,.coach-drawer .coach-foot{flex:none}.coach-drawer .coach-ask{margin:0 0 8px}.coach-drawer .coach-foot .meta{margin:0;font-size:12.5px}.coach-drawer .said.you,.coach-drawer .coach-ask textarea{background:var(--paper)}.coach-drawer .coach-panel .meter,.coach-drawer .coach-usage{max-width:none}@media (width>=1400px){body{transition:padding-right .16s var(--ease-out)}.corner{transition:right .16s var(--ease-out)}.coach-drawer{box-shadow:none}html.coach-drawn body{padding-right:380px;transition-duration:.2s}html.coach-drawn .corner{right:calc(394px + env(safe-area-inset-right,0px));transition-duration:.2s}}@media (prefers-reduced-motion:reduce){.coach-drawer,html.coach-drawn .coach-drawer,body,.corner{transition:none}}.rail-nav .tag.small{vertical-align:0;margin-left:auto;padding:0 6px;font-size:10px}.plan-week{grid-template-columns:repeat(7,minmax(0,1fr));gap:8px;margin:4px 0 8px;padding:0;list-style:none;display:grid}.wd{border-radius:8px;flex-direction:column;gap:4px;min-width:0;padding:8px 6px;display:flex}.wd.today{background:var(--surface);box-shadow:inset 0 0 0 1.5px var(--ink)}.wd-name{font-size:13px;font-weight:650}.wd.before .wd-name,.wd.after .wd-name{color:var(--muted);font-weight:500}.wd-bar{border-bottom:1px solid var(--line);height:72px;position:relative}.wd-plan,.wd-done{border-radius:4px 4px 0 0;position:absolute;bottom:0;left:18%;right:18%}.wd-plan{box-shadow:inset 0 0 0 1.5px var(--field-line)}.wd-done{background:var(--brand);left:30%;right:30%}.wd.rest .wd-bar{background:repeating-linear-gradient(135deg, transparent 0 5px, var(--line) 5px 6px);border-radius:4px 4px 0 0}.wd-num{color:var(--muted);white-space:nowrap;font-size:12px}.wd.today .wd-num{color:var(--ink);font-weight:600}.wd-drills{color:var(--ink-2);margin:2px 0 0;padding:0;font-size:12px;line-height:1.35;list-style:none}.wd-drills li{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.wd.past .wd-drills,.wd.future .wd-drills{color:var(--muted)}.plan-days-key .planned{box-shadow:inset 0 0 0 1.5px var(--field-line)}.plan-days-key .spent{background:var(--brand);box-shadow:none}@media (width<=640px){.plan-week{gap:3px}.wd{padding:6px 2px}.wd-drills{display:none}.wd-name{white-space:nowrap;text-overflow:clip;font-size:11px;overflow:hidden}.wd-num{font-size:11px}.wd-unit{display:none}}.plan-today+.meta{margin-top:8px}.not-started{margin-top:4px}.not-started a{white-space:nowrap}.explain{max-width:640px;margin:12px 0 16px}.explain .explain-log{max-height:360px;margin:0 0 8px}.explain .explain-log:empty{display:none}.explain-ask{gap:8px;margin-bottom:4px;display:grid}.explain-ask textarea{font:500 16px var(--sans);border:1.5px solid var(--field-line);background:var(--surface);color:var(--ink);resize:vertical;border-radius:8px;padding:10px 12px}.explain-ask .actions{position:relative}html.landing body{background:#fff;padding-left:0}html.landing .rail,html.landing .corner,html.landing .tabbar,html.landing .notice,html.landing .site-foot{display:none}html.landing main#app{max-width:none;margin:0;padding:0}html.dash body{padding-left:0}html.dash main#app{max-width:1200px}html.dash .dash-bar{justify-content:flex-end;align-items:center;margin-bottom:8px}.dash-nav{border:1px solid var(--line);background:var(--surface);border-radius:14px;flex-wrap:wrap;gap:4px;margin:0 0 14px;padding:4px;display:flex}.dash-nav a{color:var(--ink-2);font:600 15px var(--sans);border-radius:10px;align-items:center;gap:6px;padding:8px 14px;text-decoration:none;display:inline-flex}.dash-nav a:hover{color:var(--ink);background:var(--paper)}.dash-nav a[aria-current=page]{background:var(--ink);color:var(--btn-ink)}.dash-count{background:var(--brand);min-width:20px;color:var(--paper);font:700 12px/18px var(--sans);text-align:center;border-radius:999px;padding:1px 6px}.dash-range{margin:4px 0 8px}.dash-tiles{grid-template-columns:repeat(auto-fill,minmax(190px,1fr));gap:12px;margin:8px 0 18px;display:grid}.dash-tile{border:1px solid var(--line);background:var(--paper);border-radius:14px;flex-direction:column;gap:4px;padding:14px 16px;display:flex}.dash-tile strong{font-variant-numeric:tabular-nums;font-size:28px;font-weight:750;line-height:1.1}.dash-tile span{color:var(--muted);font-size:13px}.dash-todo{margin:6px 0 14px;padding-left:20px}.dash-todo li{margin:4px 0;font-weight:600}.viz-legend{color:var(--ink-2);flex-wrap:wrap;gap:6px 18px;margin:6px 0 8px;font-size:13px;display:flex}.viz-legend span{align-items:center;gap:6px;display:inline-flex}.viz-key-line{border-radius:1px;width:14px;height:2px;display:inline-block}.viz-key-box{border-radius:2px;width:10px;height:10px;display:inline-block}.viz-plot{margin:0 0 10px;position:relative}.viz-plot svg{touch-action:pan-y;max-width:100%;height:auto;display:block}.viz-grid{stroke:var(--line);stroke-width:1px}.viz-tick{fill:var(--muted);font:12px var(--sans);font-variant-numeric:tabular-nums}.viz-end{fill:var(--ink-2);font:600 12px var(--sans)}.viz-ring{stroke:var(--surface);stroke-width:2px}.viz-cross{stroke:var(--muted);stroke-width:1px}.viz-tip{border:1px solid var(--line);background:var(--paper);pointer-events:none;min-width:130px;color:var(--ink-2);border-radius:10px;padding:8px 10px;font-size:13px;position:absolute;top:8px;box-shadow:0 4px 14px #0000001f}.viz-tip p{align-items:center;gap:6px;margin:2px 0;display:flex}.viz-tip strong{color:var(--ink);font-variant-numeric:tabular-nums}.viz-tip-day{color:var(--muted);font-size:12px}.viz-bars{gap:8px;margin:4px 0 12px;padding:0;list-style:none;display:grid}.viz-bars li{grid-template-columns:minmax(120px,15rem) minmax(0,1fr) minmax(0,15rem);align-items:center;gap:12px;font-size:14px;display:grid}.viz-bar-label{overflow-wrap:anywhere;color:var(--ink)}.viz-bar-track{min-width:0;display:block}.viz-bar{gap:2px;min-width:4px;height:14px;display:flex}.viz-bar-part{background:var(--bar-part);border-radius:0 4px 4px 0;height:100%}.viz-bar-part:not(:last-child){border-radius:0}.viz-bar-rest{background:var(--bar-rest);border-radius:0 4px 4px 0;flex:1;min-width:2px;height:100%}.viz-bar-note{color:var(--muted);font-variant-numeric:tabular-nums;font-size:13px}@media (width<=700px){.viz-bars li{grid-template-columns:minmax(0,1fr);gap:4px}}.dash-table{margin:4px 0 18px}.dash-table summary{cursor:pointer;color:var(--ink-2);font-size:14px;font-weight:600}th .th-sort{color:inherit;font:inherit;cursor:pointer;text-align:left;background:0 0;border:0;padding:0}th .th-sort:hover{color:var(--ink);text-underline-offset:3px;text-decoration:underline}.sheet-tiles{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;display:grid}.sheet-tile{border:1px solid var(--line);background:var(--surface);min-height:0;color:var(--ink);font:inherit;text-align:left;cursor:pointer;-webkit-tap-highlight-color:transparent;transition:transform .16s var(--ease-out);border-radius:18px;flex-direction:column;align-items:flex-start;gap:4px;padding:14px;display:flex}.sheet-tile:active{transform:scale(.97)}.sheet-tile:focus-visible{outline:2px solid var(--brand);outline-offset:2px}.sheet-tile .plate-lg{width:64px;margin-bottom:8px}.sheet-tile-title{font-size:16px;font-weight:700;line-height:1.25}.sheet-tile-sum{color:var(--muted);font-size:13px;line-height:1.35}dialog.sheet{inset:calc(10px + env(safe-area-inset-top,0px)) 10px calc(10px + env(safe-area-inset-bottom,0px));border:1px solid var(--line);background:var(--surface);width:auto;max-width:720px;height:auto;max-height:none;color:var(--ink);transform-origin:0 0;border-radius:24px;margin:0 auto;padding:0;position:fixed;overflow:hidden;box-shadow:0 20px 60px #0a0e124d}dialog.sheet[open]{flex-direction:column;display:flex}dialog.sheet::backdrop{background:#0a0e1273;transition:opacity .3s ease-out;animation:.3s ease-out sheet-dim}dialog.sheet.leaving::backdrop{opacity:0}@keyframes sheet-dim{0%{opacity:0}}body:has(dialog.sheet[open]){overflow:hidden}.sheet-head{touch-action:none;cursor:grab;flex:none;justify-content:space-between;align-items:center;gap:12px;padding:18px 12px 10px 20px;display:flex;position:relative}.sheet-head h2{letter-spacing:-.01em;margin:0;font-size:22px}.sheet-head .tour-x{margin:0}.grabber{background:var(--line);border-radius:3px;width:36px;height:5px;margin-left:-18px;position:absolute;top:6px;left:50%}.sheet-body{overscroll-behavior:contain;min-height:0;padding:0 20px calc(20px + env(safe-area-inset-bottom,0px));flex:1;overflow-y:auto}.sheet-body>.panel{border:0;border-top:1px solid var(--line);background:0 0;border-radius:0;padding-left:0;padding-right:0}@media (prefers-reduced-motion:reduce){dialog.sheet::backdrop{transition:none;animation:none}.sheet-tile{transition:none}}.tabbar{view-transition-name:tabbar}.rail{view-transition-name:rail}.corner{view-transition-name:corner}::view-transition-old(root){animation-duration:.28s;animation-timing-function:cubic-bezier(.32,.72,0,1)}::view-transition-new(root){animation-duration:.28s;animation-timing-function:cubic-bezier(.32,.72,0,1)}::view-transition-old(root){animation-name:vt-out}::view-transition-new(root){animation-name:vt-in}html[data-nav=back]::view-transition-old(root){animation-name:vt-out-back}html[data-nav=back]::view-transition-new(root){animation-name:vt-in-back}@keyframes vt-out{to{opacity:0;transform:translate(-20px)}}@keyframes vt-in{0%{opacity:0;transform:translate(28px)}}@keyframes vt-out-back{to{opacity:0;transform:translate(28px)}}@keyframes vt-in-back{0%{opacity:0;transform:translate(-20px)}}.daily-limit h2{margin:0 0 4px;font-size:20px}.premium-cta{flex-wrap:wrap;align-items:center;gap:6px 12px;margin-top:10px;display:flex}.premium-cta .meta{margin:0}.premium-cta .btn[aria-busy=true]{opacity:.7;pointer-events:none}.daily-limit .actions{margin:12px 0 14px}.daily-limit>p:last-child{margin-bottom:0}:is(h2:has(>.info-tip),h3:has(>.info-tip)){position:relative}.info-tip{vertical-align:.12em;margin-left:8px;display:inline-block}.info-tip>summary{border:1.5px solid var(--muted);width:20px;height:20px;color:var(--muted);cursor:pointer;-webkit-tap-highlight-color:transparent;border-radius:50%;place-items:center;font:italic 700 12px/1 Georgia,Times New Roman,serif;list-style:none;display:grid}.info-tip>summary::-webkit-details-marker{display:none}.info-tip>summary:after{content:"";position:absolute;inset:-12px}.info-tip>summary{position:relative}.info-tip[open]>summary{background:var(--ink);border-color:var(--ink);color:var(--btn-ink)}.info-tip>.info-body{z-index:6;border:1px solid var(--line);background:var(--surface);color:var(--ink-2);font:400 15px/1.5 var(--sans);letter-spacing:normal;text-transform:none;animation:info-in .18s var(--ease-out);border-radius:14px;padding:14px 16px;position:absolute;top:calc(100% + 8px);left:0;right:0;box-shadow:0 12px 32px #0a0e1229}.info-tip .info-body p{max-width:none;margin:0 0 8px}.info-tip .info-body p:last-child{margin-bottom:0}@keyframes info-in{0%{opacity:0;transform:translateY(-4px)}}@media (prefers-reduced-motion:reduce){.info-tip>.info-body{animation:none}}details.coach-note>summary{cursor:pointer;list-style:none}details.coach-note>summary::-webkit-details-marker{display:none}details.coach-note:not([open]) p{-webkit-line-clamp:2;-webkit-box-orient:vertical;display:-webkit-box;overflow:hidden}dialog.bsheet{box-sizing:border-box;border:1px solid var(--line);background:var(--surface);width:auto;max-width:760px;height:56dvh;max-height:none;color:var(--ink);box-shadow:0 -8px 40px #0a0e122e, 0 140px 0 0 var(--surface);border-bottom:0;border-radius:22px 22px 0 0;outline:none;margin:0 auto;padding:0;position:fixed;inset:auto 0 0;overflow:hidden}dialog.bsheet[data-detent=large]{height:calc(100dvh - env(safe-area-inset-top,0px) - 10px)}dialog.bsheet[open]{flex-direction:column;display:flex}dialog.bsheet::backdrop{background:#0a0e1266;transition:opacity .26s ease-out;animation:.3s ease-out sheet-dim}dialog.bsheet.leaving::backdrop{opacity:0}body:has(dialog.bsheet[open]){overflow:hidden}.bsheet-head{touch-action:none;cursor:grab;flex:none;height:30px;position:relative}.bsheet-head .grabber{top:8px}.bsheet-head .tour-x{z-index:1;margin:0;position:absolute;top:6px;right:8px}.bsheet-body:focus{outline:none}.bsheet-body{overscroll-behavior:contain;min-height:0;padding:0 20px calc(20px + env(safe-area-inset-bottom,0px));flex:1;overflow-y:auto}.bsheet-body>.coach-panel{border:0;margin:0;padding:0}@media (prefers-reduced-motion:reduce){dialog.bsheet::backdrop{transition:none;animation:none}}.coach-open{margin:0 0 18px}.coach-open .icon{width:18px;height:18px}.mascot{vertical-align:middle;flex:none;display:inline-block}.mascot .m-bg{fill:var(--m-bg);stroke:var(--m-ring);stroke-width:3px}.mascot .m-body{fill:var(--m-body)}.mascot .m-ear{fill:var(--m-ear)}.mascot .m-muzzle{fill:var(--m-muzzle)}.mascot .m-white{fill:#fff}.mascot .m-ink{fill:#1b1e22}.mascot .m-mouth{fill:none;stroke:#1b1e22;stroke-width:2.3px;stroke-linecap:round;stroke-linejoin:round}.mascot .m-frames{fill:none;stroke:var(--m-frames);stroke-width:3.6px;stroke-linecap:round}.mascot .m-sparks{fill:none;stroke:#ff7a2f;stroke-width:4.5px;stroke-linecap:round}.mascot .m-thought{fill:var(--m-thought)}.said.coach .who{align-items:center;gap:6px;display:flex}.explain-open .mascot,.coach-open .mascot{margin-left:-4px}.coach-sheet .bsheet-body{flex-direction:column;display:flex;overflow:hidden}.coach-sheet .coach-panel:not([hidden]){flex-direction:column;flex:1;min-height:0;display:flex}.coach-sheet .coach-panel>h2{flex:none;margin:0 0 10px}.coach-sheet .coach-log{flex:auto;min-height:60px;max-height:none;margin:0 0 10px}.coach-sheet .coach-log>:first-child{margin-top:auto}.coach-sheet .coach-ask{flex:none;margin:0}.coach-sheet .coach-ask textarea{min-height:0}.coach-sheet .coach-note,.coach-sheet .coach-foot{flex:none}.coach-sheet .coach-foot .meta{margin:4px 0 0;font-size:12.5px}.coach-sheet .bsheet-body{padding-bottom:calc(10px + env(safe-area-inset-bottom,0px))}html.app .coach-sheet .bsheet-body{padding-bottom:max(8px, calc(env(safe-area-inset-bottom,0px) - 22px))}.today-h{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.streak{border:1px solid var(--line);background:var(--surface);color:var(--muted);font:700 14px/1 var(--sans);font-variant-numeric:tabular-nums;border-radius:999px;align-items:center;gap:3px;margin-left:auto;padding:3px 10px 3px 7px;display:inline-flex}.streak .flame,.streak-line .flame{fill:none;stroke:currentColor;stroke-width:1.8px;stroke-linejoin:round;width:16px;height:16px}.streak.lit{color:#fff;background:#ff7a2f;border-color:#0000}.streak.lit .flame{fill:#ffd27a;stroke:#fff}.streak-line{align-items:center;gap:8px;font-weight:600;display:flex}.streak-line.lit .flame{fill:#ff7a2f;stroke:#ff7a2f}.streak-stats{margin:0 0 16px}.geo{background:var(--fig-paper);border:1px solid var(--line);border-radius:8px;max-width:360px;margin:8px 0 12px;padding:8px}.geo svg{width:100%;height:auto;max-height:300px;margin:0 auto;display:block;overflow:visible}.geo figcaption{color:var(--fig-muted);margin-top:4px;font-size:13px}.geo-shape{fill:var(--fig-paper);stroke:var(--fig-ink);stroke-width:2px;stroke-linejoin:round}.geo-line{stroke:var(--fig-ink);stroke-width:2px;stroke-linecap:round}.geo-thin{fill:none;stroke:var(--fig-ink);stroke-width:1.4px}.geo-dash{stroke-dasharray:6 5}.geo-arc{fill:none;stroke:var(--fig-mark);stroke-width:1.8px}.geo-mark{fill:none;stroke:var(--fig-mark);stroke-width:5px;stroke-linecap:round}.geo-fill{fill:var(--fig-1);stroke:var(--fig-ink);stroke-width:1.5px}.geo-fill-2{fill:var(--fig-2);fill-opacity:.5;stroke:var(--fig-ink);stroke-width:1.5px}.geo-dot{fill:var(--fig-ink)}.geo-point{fill:var(--fig-mark);stroke:var(--fig-paper);stroke-width:1.5px}.geo-grid{stroke:var(--fig-1);stroke-width:1px}.geo-axis{stroke:var(--fig-3);stroke-width:1.6px}.geo-fit{stroke:var(--fig-3);stroke-width:2.2px;stroke-dasharray:8 5}.geo-label{font:600 15px var(--sans);fill:var(--fig-ink)}.geo-name{font:italic 600 14px var(--sans);fill:var(--fig-muted)}.geo-tick{font:12px var(--sans);fill:var(--fig-muted)}.geo-halo{paint-order:stroke;stroke:var(--fig-paper);stroke-width:4px;stroke-linejoin:round}.chapters{margin:8px 0 28px}.chapters h2{margin:0 0 10px;font-size:20px}.chapters .guide-index strong{font-size:16px}.guide-ask{margin:18px 0 6px}.coach-fab{right:calc(18px + env(safe-area-inset-right,0px));bottom:calc(22px + env(safe-area-inset-bottom,0px));z-index:9;border:1px solid var(--line);background:var(--surface);cursor:pointer;border-radius:50%;place-items:center;width:52px;height:52px;padding:0;transition:transform .16s ease-out;display:grid;position:fixed;box-shadow:0 4px 14px #00000024}.coach-fab[hidden]{display:none}.coach-fab:active{transform:scale(.95)}@media (hover:hover){.coach-fab:hover{transform:translateY(-1px)}}.coach-fab:focus-visible{outline:3px solid var(--focus,var(--ink));outline-offset:2px}@media (width<=1079.98px){.coach-fab{bottom:calc(56px + 14px + env(safe-area-inset-bottom,0px));right:calc(14px + env(safe-area-inset-right,0px));width:48px;height:48px}html:has(input:not([type=checkbox],[type=radio],[type=file]):focus,textarea:focus) .coach-fab{display:none}}html.native-tabs .coach-fab{bottom:calc(14px + env(safe-area-inset-bottom,0px));transition:transform .16s ease-out}.coach-fab .coach-ai{border:1.5px solid var(--paper);background:var(--brand);color:var(--paper);font:800 9.5px/14px var(--sans);letter-spacing:.05em;pointer-events:none;border-radius:8px;padding:0 4px;position:absolute;bottom:-3px;right:-4px}@media (prefers-reduced-motion:reduce){.coach-fab{transition:none}}@media (width<=1079.98px){html:has(.coach-fab:not([hidden])) #app{padding-bottom:64px}}.welcome.funnel{z-index:60;max-width:none;padding:calc(10px + env(safe-area-inset-top,0px)) calc(20px + env(safe-area-inset-right,0px)) calc(24px + env(safe-area-inset-bottom,0px)) calc(20px + env(safe-area-inset-left,0px));background:var(--paper);box-shadow:none;overscroll-behavior:contain;border:0;border-radius:0;flex-direction:column;margin:0;display:flex;inset:0;overflow-y:auto}body:has(.welcome.funnel){overflow:hidden}.funnel-top{align-items:center;gap:12px;width:100%;max-width:520px;min-height:44px;margin:0 auto;display:flex}.funnel-top .tour-x{margin:0 -8px 0 0;position:static}.funnel-back{color:var(--ink-2);font:600 15px/1 var(--sans);cursor:pointer;background:0 0;border:0;padding:8px 4px}.funnel-back:before{content:"‹ "}.funnel-back[hidden]{visibility:hidden;display:block}.funnel-dots{flex:1;justify-content:center;gap:6px;display:flex}.funnel-dots i{background:var(--line);border-radius:2px;width:22px;height:4px}.funnel-dots i.on{background:var(--ink)}.funnel-body{flex-direction:column;flex:1;width:100%;max-width:520px;margin:0 auto;padding:clamp(16px,7vh,72px) 0 0;display:flex}.funnel-body h2+p.funnel-text{margin-top:14px}.funnel-body h2{letter-spacing:-.02em;outline:none;margin:0;font-size:clamp(28px,7vw,36px);line-height:1.12}.funnel-mark .logo{width:56px;height:56px;margin-bottom:18px}.funnel p.funnel-lead{color:var(--ink-2);margin:10px 0 22px;font-size:18px}.funnel p.funnel-eyebrow{color:var(--muted);font:700 13px/1.2 var(--sans);letter-spacing:.06em;text-transform:uppercase;margin:0 0 10px}.funnel-opts{gap:10px;margin:0;padding:0;list-style:none;display:grid}.funnel-try{margin-top:20px}.funnel-try-after:empty{display:none}.funnel-body .funnel-try-after .feedback-head h2{font-size:18px;line-height:inherit;letter-spacing:0}.funnel-opts.grid{grid-template-columns:1fr 1fr}.funnel-opt{border:1.5px solid var(--line);background:var(--surface);width:100%;min-height:64px;color:var(--ink);font:inherit;text-align:left;cursor:pointer;transition:border-color .15s, transform .1s var(--ease-out);border-radius:14px;justify-content:space-between;align-items:center;gap:12px;padding:12px 14px 12px 18px;display:flex}.funnel-opt.small{min-height:52px;padding:10px 10px 10px 14px}.funnel-opt strong{font-size:17px;display:block}.funnel-opt small{color:var(--muted);margin-top:3px;font-size:14px;display:block}.funnel-opt svg{width:20px;height:20px;color:var(--muted);flex:none}.funnel-opt-text{flex:1}.funnel-opt:has(.funnel-ico){gap:14px;padding-left:14px}.funnel-ico{width:44px;height:44px;color:var(--ico);background:color-mix(in srgb, var(--ico) 15%, var(--surface));border-radius:12px;flex:none;place-items:center;display:grid}.funnel-ico.blue{--ico:var(--brand)}.funnel-ico.green{--ico:var(--green)}.funnel-ico.gold{--ico:var(--premium)}.funnel-opt .funnel-ico svg{width:24px;height:24px;color:inherit;fill:none;stroke:currentColor;stroke-width:1.8px;stroke-linecap:round;stroke-linejoin:round}.funnel-opt:active{transform:scale(.98)}@media (hover:hover){.funnel-opt:hover{border-color:var(--ink)}}.funnel-big{color:var(--brand);font-size:clamp(40px,11vw,60px)!important}.funnel p.funnel-big-label{color:var(--ink-2);margin:6px 0 18px;font-size:17px}.funnel p.funnel-text{margin:0 0 14px;font-size:18px;line-height:1.5}.funnel p.funnel-source{color:var(--muted);margin:0 0 8px;font-size:14px}.funnel-list{gap:16px;margin:22px 0 8px;padding:0;list-style:none;display:grid}.funnel-list li{align-items:flex-start;gap:12px;font-size:18px;line-height:1.4;display:flex}.funnel-list svg{width:24px;height:24px;color:var(--green);flex:none;margin-top:1px}.funnel-actions{flex-direction:column;align-items:stretch;gap:6px;margin-top:auto;padding-top:26px;display:flex}.funnel-actions .btn{border-radius:12px;justify-content:center;min-height:54px;font-size:17px}.funnel-signin{text-decoration:none}.funnel-top[hidden]{display:none}.funnel-hello{text-align:center;flex-direction:column;flex:1;justify-content:center;align-items:center;padding-top:24px;display:flex}.funnel-hello h2{max-width:14ch}.funnel-hello .funnel-lead{max-width:30ch;margin-left:auto;margin-right:auto}.hello-coach{margin-bottom:26px}.funnel-actions a.funnel-guest{text-align:center}.hello-coach .mascot{width:176px;height:176px;display:block}.mascot.hello{animation:4.5s ease-in-out infinite coach-float}.mascot.hello .m-eyes{transform-box:fill-box;transform-origin:50%;animation:5s infinite coach-blink}.mascot.hello .m-sparks{animation:2.4s ease-in-out infinite coach-sparks}@keyframes coach-float{0%,to{transform:translateY(0)}50%{transform:translateY(-8px)}}@keyframes coach-blink{0%,94%,to{transform:scaleY(1)}97%{transform:scaleY(.1)}}@keyframes coach-sparks{0%,to{opacity:1}50%{opacity:.35}}.funnel-opt.picked{border-color:var(--brand);background:color-mix(in srgb, var(--brand) 14%, var(--surface));transform:scale(.98)}.funnel-body.enter{animation:funnel-in .26s var(--ease-out,ease-out)}.funnel-body.enter-back{animation:funnel-in-back .26s var(--ease-out,ease-out)}@keyframes funnel-in{0%{opacity:0;transform:translate(28px)}}@keyframes funnel-in-back{0%{opacity:0;transform:translate(-28px)}}@media (prefers-reduced-motion:reduce){.mascot.hello,.mascot.hello .m-eyes,.mascot.hello .m-sparks,.funnel-body.enter,.funnel-body.enter-back{animation:none}}.funnel-signin:before{content:none}.funnel-guest{color:var(--ink-2);font:600 16px/1 var(--sans);text-underline-offset:3px;cursor:pointer;background:0 0;border:0;padding:14px;text-decoration:underline}@media (width<=380px){.funnel-opts.grid{grid-template-columns:1fr}}.buy-alert{border:1.5px solid var(--flair-fill);background:var(--pencil-soft);color:var(--ink);border-radius:12px;margin:0 0 14px;padding:12px 14px}.premium-offer{border:1.5px solid var(--flair-fill);background:var(--pencil-soft);color:var(--ink);border-radius:14px;margin:-4px -4px 22px;padding:18px 18px 14px}.premium-offer h2{margin:0 0 8px;font-size:22px}.premium-offer ul{margin:0 0 10px;padding-left:20px}.premium-offer li{margin:4px 0}.premium-offer .actions{align-items:center;gap:16px}.premium-offer .btn{min-height:46px;padding:10px 22px}.offer-later{color:var(--ink-2)}@media (width>=1080px){.welcome.funnel .funnel-body{padding-top:12vh}.funnel-actions{max-width:360px;margin-top:0;padding-top:32px}}.word-card{border:1px solid var(--line);background:var(--surface);text-align:center;border-radius:14px;flex-direction:column;justify-content:center;align-items:center;gap:8px;min-height:220px;margin-bottom:16px;padding:22px 18px;display:flex}.word-card p{margin:0}.word-card .kind{color:var(--muted);text-transform:uppercase;letter-spacing:.06em;font-size:12px;font-weight:700}.word-big{font-size:30px;font-weight:750;line-height:1.2}.word-big .meta{font-size:14px;font-weight:500}.word-meaning{max-width:34ch;font-size:19px;font-weight:650}.word-sentence{max-width:40ch;font-size:18px}.word-sentence strong{color:var(--brand)}.word-back{border-top:1px solid var(--line);flex-direction:column;align-items:center;gap:8px;width:100%;margin-top:6px;padding-top:12px;display:flex}.word-why{color:var(--ink-2);max-width:46ch;font-size:15px}.word-reveal{justify-content:center}.grades{grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;display:grid}.grades .btn{flex-direction:column;justify-content:center;gap:2px;min-height:58px;padding:8px 4px}.grades .btn small{color:var(--muted);font-size:12px;font-weight:500}.grades .btn.again{color:var(--red)}.word-how{margin-top:20px}.word-how summary{cursor:pointer;font-weight:650}.prompt .notes{margin:0 0 12px;padding-left:20px;font-size:17px;line-height:1.45}.prompt .notes li{margin-bottom:4px}.choice.picked{border-color:var(--ink);box-shadow:inset 0 0 0 1px var(--ink);background:var(--pencil-soft)}.choice.picked .key{background:var(--ink);border-color:var(--ink);color:var(--btn-ink)}.choice.picked:disabled{background:var(--surface)}.choice[aria-pressed=false].correct .key{border-color:var(--green);color:var(--green);background:0 0}.blanks{grid-template-columns:repeat(var(--n,2), minmax(0, 1fr));gap:12px;max-width:640px;margin-bottom:20px;display:grid}@media (width<=560px){.blanks{grid-template-columns:1fr}}.blanks .group-label{margin:0 0 6px;font-weight:600}.blanks.rows{grid-template-columns:1fr;gap:14px}.blanks.rows .blank{border-bottom:1px solid var(--line);grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:8px 12px;padding-bottom:12px;display:grid}.blanks.rows .group-label{margin:0;font-weight:500}.blanks.rows .choices{grid-template-columns:repeat(2,minmax(84px,auto))}@media (width<=560px){.blanks.rows .blank{grid-template-columns:1fr}}.blanks .choices{margin-bottom:0}.blanks .blank>.meta{margin:0 0 6px}.multi-hint{margin:0 0 12px}.choices.sentences{max-width:640px;font-size:18px;line-height:1.7;display:block}.choices.sentences .choice.sentence{min-height:0;font-size:inherit;line-height:inherit;-webkit-text-decoration:underline dotted var(--ink-2);text-decoration:underline dotted var(--ink-2);text-underline-offset:4px;-webkit-box-decoration-break:clone;box-decoration-break:clone;background:0 0;border:0;border-radius:4px;padding:2px 3px;display:inline}.choices.sentences .choice.sentence .choice-body{display:inline}.choices.sentences .choice.sentence:active{transform:none}.choices.sentences .choice.sentence[aria-disabled=true]{cursor:default}.choices.sentences .choice.sentence.correct{box-shadow:none;background:color-mix(in srgb, var(--green) 22%, transparent);text-decoration:none}.choices.sentences .choice.sentence.wrong{box-shadow:none;background:color-mix(in srgb, var(--red) 18%, transparent);text-decoration:none}.choices.sentences .choice.sentence .pick-tag{margin-left:6px;display:inline-block}@media (hover:hover) and (pointer:fine){.choices.sentences .choice.sentence:not([aria-disabled]):hover{background:var(--pencil-soft)}}.prompt ol.ds{margin:0 0 12px;padding:0;font-size:17px;line-height:1.5;list-style:none}.prompt ol.ds li{margin-bottom:4px}.choice.picked.wrong{border-color:var(--red);box-shadow:inset 0 0 0 1px var(--red)}.choice.picked.wrong .key{background:var(--red);border-color:var(--red);color:var(--btn-ink)}.choice.picked.correct{border-color:var(--green);box-shadow:inset 0 0 0 1px var(--green)}.two-part{border-collapse:collapse;margin:0 0 20px;font-size:16px}.two-part th,.two-part td{text-align:center;border-bottom:1px solid var(--line);padding:4px 10px}.two-part thead th{vertical-align:bottom;max-width:120px;font-size:14px;font-weight:600}.two-part tbody th{text-align:left;padding-left:14px;font-weight:500}.two-part .choice{border-radius:50%;justify-content:center;width:36px;height:36px;min-height:0;margin:0 auto;padding:0}.two-part .choice .key,.two-part .choice .pick-tag{display:none}.two-part .choice .choice-body{clip:rect(0 0 0 0);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.two-part .choice.picked{background:var(--ink)}.review-end{margin:28px 0 12px}@supports (corner-shape:squircle){.btn,.panel,.feature,.plate,.choice,.feedback,.course,.deck,.guide-card,.word-card,.sheet-tile,.toc,.premium-offer,.test-filter,.today-band,.practise,.welcome,.numeric input,.memory-stage,.game-stage,.saved-list li,.coach-log,dialog.sheet,dialog.bsheet,dialog.tour,dialog.gift{corner-shape:squircle}}@keyframes rise-in{0%{opacity:0;translate:0 18px}}@supports (animation-timeline:view()){@media (prefers-reduced-motion:no-preference){.courses>.course,.guide-index>li,.sheet-tiles>.sheet-tile{animation:linear both rise-in;animation-timeline:view();animation-range:entry entry 70%}}}.author-box{border:1px solid var(--line);background:var(--surface);border-radius:12px;margin-top:32px;padding:16px 18px}.author-box p{margin:0 0 6px}.article-draft>summary{cursor:pointer}.article-preview{border:1px dashed var(--line);border-radius:10px;max-height:70vh;margin:12px 0;padding:12px 16px;overflow:auto}.article-reason{gap:6px;margin-top:8px;display:grid}.article-add{gap:6px;max-width:40rem;margin-top:12px;display:grid}.q-progress{display:none}html.app{--card:color-mix(in srgb, var(--ink) 5%, var(--paper));--card-press:color-mix(in srgb, var(--ink) 10%, var(--paper))}html.app .btn{border-radius:999px;min-height:42px;padding:10px 20px;font-weight:650}html.app .btn.small{min-height:34px;padding:6px 14px;font-size:14px}html.app .btn.ghost{background:var(--card);border-color:#0000}html.app .key{display:none}html.app .panel{background:var(--card);border-color:#0000;border-radius:18px;padding:18px}html.app.focus .page-head{margin-bottom:18px}html.app.focus .page-head>.back{background:var(--card);width:36px;height:36px;color:var(--ink-2);border-radius:50%;place-items:center;margin:0 0 10px;padding:0;font-size:0;display:inline-grid}html.app.focus .page-head>.back:before{content:"×";font-size:24px;font-weight:400;line-height:1}html.app.focus .page-head:has(.q-progress){grid-template-columns:36px 1fr;align-items:center;column-gap:14px;display:grid}html.app.focus .page-head:has(.q-progress)>:not(.back,.q-progress){grid-column:1/-1}html.app .q-progress{background:var(--card-press);border-radius:999px;height:10px;margin-bottom:10px;display:block;overflow:hidden}html.app .q-progress i{border-radius:inherit;background:var(--green);min-width:10px;height:100%;transition:width .4s var(--ease-out);display:block}html.app.focus .page-head h1{margin:4px 0 2px;font-size:20px}html.app .choices{gap:10px}html.app .choice{background:var(--card);border:2px solid #0000;border-radius:16px}html.app .choices:not(.figures,.panels) .choice{min-height:52px;padding:12px 18px;font-size:17px}html.app .choices:is(.figures,.panels) .choice{background:0 0;border-radius:12px;padding:2px}html.app .choices:is(.figures,.panels) .choice:is(.correct,.wrong){background:0 0}html.app .choice:active:not(:disabled){background:var(--card-press)}html.app .choice.correct{border-color:var(--green);box-shadow:none;background:color-mix(in srgb, var(--green) 16%, var(--paper))}html.app .choice.wrong{border-color:var(--red);box-shadow:none;background:color-mix(in srgb, var(--red) 13%, var(--paper))}html.app .feedback{background:var(--card);border:0;border-radius:20px;padding:18px}html.app .feedback:has(.feedback-head .good){background:color-mix(in srgb, var(--green) 12%, var(--paper))}html.app .feedback:has(.feedback-head .bad){background:color-mix(in srgb, var(--red) 10%, var(--paper))}html.app .feedback-head h2{font-size:22px}html.app .feedback #next{justify-content:center;width:100%;min-height:46px;margin-top:14px;display:flex}html.app .feedback .report-row{text-align:center;margin:12px 0 0}html.app .feedback:has(.feedback-head .good) #next{background:var(--green);border-color:var(--green);color:#fff}html.app.focus .corner{display:none}html.app.focus .guide-hero>.back{background:var(--card);width:36px;height:36px;color:var(--ink-2);border-radius:50%;flex:none;place-items:center;margin:0;padding:0;font-size:0;display:inline-grid}html.app.focus .guide-hero>.back:before{content:"×";font-size:24px;font-weight:400;line-height:1}html.app.lesson-mode .guide-hero{justify-content:space-between;align-items:center;gap:12px;margin-bottom:18px;display:flex}html.app.lesson-mode .guide-hero-inner,html.app.lesson-mode .chapters{display:none}html.app .guide-hero .read-mode{margin:0}html.app:not(.lesson-mode) .guide-hero .read-mode{margin-top:16px}html.app.lesson-mode .lesson{min-height:0}html.app.lesson-mode .lesson-steps .level-bar{border-radius:999px;height:10px}html.app.lesson-mode .lesson-steps .level-bar>span{border-radius:inherit;background:var(--green)}html.app body:has(.coach-fab:not([hidden])) main{padding-bottom:calc(84px + env(safe-area-inset-bottom,0px))}html.app .lesson-nav{scroll-margin-bottom:calc(84px + env(safe-area-inset-bottom,0px))}html.app .btn.ghost.explain-open{border:1px solid color-mix(in srgb, var(--ink) 18%, transparent);background:color-mix(in srgb, var(--paper) 55%, transparent)}.lesson-coach,html.app.lesson-mode .coach-fab{display:none}html.app.lesson-mode body:has(.coach-fab) main{padding-bottom:calc(32px + env(safe-area-inset-bottom,0px))}html.app.lesson-mode .lesson-nav{grid-template-columns:1fr auto 1fr;align-items:center;display:grid}html.app.lesson-mode .lesson-nav [data-go="-1"]{grid-column:1;justify-self:start}html.app.lesson-mode .lesson-nav [data-go="1"]{grid-column:3;justify-self:end}html.app.lesson-mode .lesson-coach{grid-column:2;padding-left:10px;display:inline-flex}html.app.lesson-mode body:has(.coach-fab[hidden]) .lesson-coach{display:none}html.app .guide-ask>.explain-open{display:none}html.app .grid{justify-content:center}html.app .strip{justify-content:center;margin-inline:auto;display:flex}html.app .strip>.cell{flex:0 0 calc(16.6667% - 3.33333px)}html.app .turns{justify-content:center}html.app .btn.ghost{background:color-mix(in srgb, var(--ink) 9%, transparent)}.fmt-time:before{content:" · "}html.app .actions:has(.fmt-time){grid-template-columns:1fr 1fr;display:grid}html.app .btn:has(.fmt-time){flex-direction:column;justify-content:center;gap:2px;min-height:52px}html.app .fmt-time{opacity:.75;font-size:13px;font-weight:500}html.app .fmt-time:before{content:none}html.app dialog.tour.visiting::backdrop{background:#0a0e1238}html.app dialog.tour.visiting{--tour-h:340px}.tour-spot{outline:3px solid var(--brand);outline-offset:4px;border-radius:18px;animation:1.6s ease-in-out infinite alternate tour-spot}@keyframes tour-spot{to{outline-color:color-mix(in srgb, var(--brand) 35%, transparent)}}@media (prefers-reduced-motion:reduce){.tour-spot{animation:none}}.premium-pitch{max-width:34rem}.premium-hero{align-items:center;gap:14px;margin:4px 0 8px;display:flex}.premium-eyebrow{margin:0}.premium-title{letter-spacing:-.02em;margin:6px 0 18px;font-size:28px;line-height:1.15}.premium-lines{gap:14px;margin:0 0 20px;padding:0;list-style:none;display:grid}.premium-lines li{align-items:flex-start;gap:12px;display:flex}.premium-lines svg{width:22px;height:22px;color:var(--green);flex:none;margin-top:1px}.premium-lines strong{font-size:17px;display:block}.premium-lines small{color:var(--muted);margin-top:2px;font-size:15px;line-height:1.4;display:block}.premium-price{color:var(--ink-2);margin:0 0 16px;font-size:16px}.premium-actions{gap:8px;max-width:34rem;display:grid}.premium-actions .btn,.funnel .premium-buy{justify-content:center;width:100%}main:has(>.premium-layout){max-width:1200px}body:has(main>.premium-layout)>.site-foot a:is([href="#/privacy"],[href="#/terms"]){display:none}@media (width>=1080px){body:has(main>.premium-layout)>.site-foot{display:none}body:has(main>.premium-layout) .rail-foot a:is([href="#/privacy"],[href="#/terms"]){display:none}}.premium-layout{grid-template-columns:minmax(0,1fr) minmax(0,1fr);align-items:start;gap:clamp(32px,4vw,64px);padding:14px 0 28px;display:grid}.premium-layout .premium-title{max-width:18ch;margin-bottom:16px;font-size:clamp(32px,3.4vw,48px)}.premium-intro{color:var(--ink-2);max-width:42ch;margin:0 0 26px;font-size:17px;line-height:1.55}.premium-layout .premium-lines{gap:20px}@media (width>=801px){.premium-layout .premium-renewal{min-height:3.1em}}.premium-included{color:var(--muted);align-items:center;gap:8px;margin-top:28px;font-size:14px;display:flex}.premium-included svg{width:19px;height:19px;color:var(--green);flex:none}.premium-checkout{background:var(--surface);border:1px solid var(--line);border-radius:20px;justify-self:end;width:100%;max-width:560px;padding:24px;box-shadow:0 10px 32px #0000000a}.premium-card-eyebrow{color:var(--premium);letter-spacing:.07em;text-transform:uppercase;margin:0 0 18px;font-size:13px;font-weight:700}.premium-plans{border:0;gap:12px;min-width:0;margin:0;padding:0;display:grid}.premium-plans legend{letter-spacing:-.02em;margin:0 0 18px;font-size:22px;font-weight:700}.premium-option{border:1.5px solid var(--line);cursor:pointer;background:var(--surface);color:var(--ink);border-radius:12px;align-items:center;gap:11px;padding:16px 13px;transition:border-color .15s,background .15s;display:flex}.premium-option.is-selected{border-color:var(--flair-edge);background:var(--pencil-soft)}.premium-option:focus-within{outline:2px solid var(--brand);outline-offset:3px}.premium-option input{accent-color:var(--premium);flex:none;width:18px;height:18px;margin:0}.premium-option-body{flex:1;min-width:0}.premium-option-top{flex-wrap:wrap;align-items:center;gap:5px 8px;display:flex}.premium-option-top>strong{font-size:17px}.premium-plan-badge{color:var(--paper);background:var(--ink);border-radius:5px;padding:2px 6px;font-size:10px;font-weight:700;line-height:1.5}.premium-plan-badge.best{background:var(--pencil-soft);color:var(--premium)}.premium-option-detail{color:var(--ink-2);margin:4px 0;font-size:12px;line-height:1.45;display:block}.premium-option-rate{color:var(--muted);font-size:12px;display:block}.premium-option-price{text-align:right;flex:none;align-self:center}.premium-option-price strong{letter-spacing:-.035em;font-variant-numeric:tabular-nums;font-size:24px;line-height:1.2;display:block}.premium-option-price small{color:var(--muted);margin-top:3px;font-size:12px;display:block}.premium-renewal{color:var(--ink-2);min-height:4.65em;margin:18px 0 14px;font-size:13px;line-height:1.55}.premium-discount{color:var(--green);font-size:13px}.premium-checkout .premium-buy{justify-content:center;width:100%;min-height:50px;font-size:16px}.premium-assurance{text-align:center;color:var(--muted);margin:10px 0 0;font-size:12px}.premium-trial-detail{color:var(--muted);margin:10px 0;font-size:11px;line-height:1.5}.premium-free{width:fit-content;color:var(--ink-2);margin:18px auto;padding:6px;font-size:14px;display:block}.premium-terms{border-top:1px solid var(--line);color:var(--muted);text-align:center;margin:0;padding-top:14px;font-size:11px;line-height:1.6}@media (width<=800px){.premium-layout{grid-template-columns:1fr;gap:20px;max-width:480px;margin:0 auto}.premium-layout .premium-title{max-width:16ch;font-size:32px}.premium-layout .premium-hero{margin-top:0}.premium-layout .premium-hero svg{width:56px;height:56px}.premium-layout .premium-intro{margin-bottom:18px;font-size:15px}.premium-layout .premium-lines{grid-template-columns:1fr 1fr;gap:14px 16px;margin-bottom:14px}.premium-layout .premium-lines li{gap:7px}.premium-layout .premium-lines strong{font-size:14px}.premium-layout .premium-lines small{font-size:12px}.premium-layout .premium-lines svg{width:17px;height:17px}.premium-included{margin:14px 0 0;font-size:12px}.premium-checkout{border-radius:16px;padding:20px 16px}}@media (prefers-reduced-motion:reduce){.premium-option{transition:none}}@media (width<=800px){.premium-layout{flex-direction:column;gap:14px;display:flex}.premium-story,.premium-layout .premium-pitch{display:contents}.premium-layout .premium-hero{order:0;margin:0}.premium-layout .premium-hero svg{width:40px;height:40px}.premium-layout .premium-title{order:1;margin:0}.premium-layout .premium-intro{order:2;margin:0 0 4px}.premium-checkout{order:3;width:100%}.premium-card-eyebrow{display:none}.premium-layout .premium-lines{order:4;margin:8px 0 0;display:grid}.premium-included{order:5;margin:0}}.level-session-note{border:1px solid var(--line);background:var(--surface);border-radius:10px;margin:0 0 18px;padding:12px 14px}.level-session-note>div{flex-wrap:wrap;justify-content:space-between;gap:5px 12px;font-size:14px;display:flex}.level-session-note>div>span,.level-session-note p{color:var(--muted);font-size:13px}.level-session-note p{margin:7px 0 0}.level-session-note .actions{margin-top:10px}.level-session-note progress{width:100%;height:6px;accent-color:var(--brand);margin-top:9px}.level-session-result{border-left:3px solid var(--pencil);background:var(--wash);border-radius:0 8px 8px 0;margin:12px 0;padding:10px 14px}.level-session-result h2{margin:0 0 5px;font-size:18px}.level-session-result p{margin:0;font-size:14px}
