:root{--bg:#e9eef1;--paper:#fbfcfd;--ink:#14223a;--muted:#5b6878;--line:#cbd4dc;--hl:#ffe35a;--hl-ink:#14223a;--tap:#d6e4ff;--good:#0e7a6b;--good-soft:#d7efea;--bad:#b4402b;--bad-soft:#f6e1dc;--flip:#6b4fb3;--shadow:0 1px 0 #14223a0f;--serif:"Source Serif 4", Georgia, "Times New Roman", serif;--sans:"Atkinson Hyperlegible", "Segoe UI", system-ui, -apple-system, sans-serif;box-sizing:border-box;padding-top:env(safe-area-inset-top,0px);padding-bottom:env(safe-area-inset-bottom,0px)}@media (prefers-color-scheme:dark){:root:not([data-theme=light]){--bg:#0e1622;--paper:#162233;--ink:#e6ecf3;--muted:#97a5b6;--line:#2a3a4f;--hl:#e8c93a;--hl-ink:#14223a;--tap:#24406e;--good:#3cc2ac;--good-soft:#123a36;--bad:#f07b63;--bad-soft:#3a1f1b;--flip:#a98cf0}}:root[data-theme=dark]{--bg:#0e1622;--paper:#162233;--ink:#e6ecf3;--muted:#97a5b6;--line:#2a3a4f;--hl:#e8c93a;--hl-ink:#14223a;--tap:#24406e;--good:#3cc2ac;--good-soft:#123a36;--bad:#f07b63;--bad-soft:#3a1f1b;--flip:#a98cf0}*,:before,:after{box-sizing:inherit}html{scroll-padding-top:env(safe-area-inset-top,0px)}body{background:var(--bg);color:var(--ink);font-family:var(--sans);-webkit-font-smoothing:antialiased;margin:0;font-size:16px;line-height:1.5}button{font:inherit;color:inherit}:focus-visible{outline-offset:2px;border-radius:6px;outline:3px solid #3b82f6}.wrap{max-width:1180px;margin:0 auto;padding:20px 20px 150px}header.top{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:16px;margin-bottom:18px;display:flex}.brand{font-size:15px;font-weight:700}.brand span{color:var(--muted);font-weight:400}.phases{gap:6px;margin:0;padding:0;list-style:none;display:flex}.phases li{color:var(--muted);border:1px solid var(--line);border-radius:999px;padding:6px 12px;font-size:14px}.phases li.on{background:var(--ink);color:var(--paper);border-color:var(--ink)}.phases li.done{color:var(--good);border-color:var(--good)}.grid{grid-template-columns:minmax(0,1.35fr) minmax(0,1fr);align-items:start;gap:20px;display:grid}@media (width<=860px){.grid{grid-template-columns:1fr}}.sheet{background:var(--paper);border:1px solid var(--line);box-shadow:var(--shadow);border-radius:14px;padding:26px 28px}.meta{color:var(--muted);justify-content:space-between;margin-bottom:14px;font-size:14px;display:flex}.stem{font-family:var(--serif);max-width:68ch;margin:0 0 22px;font-size:19px;line-height:1.7}.q{font-family:var(--serif);font-weight:600}.clue{background-image:linear-gradient(transparent 8%, var(--hl) 8%, var(--hl) 92%, transparent 92%);background-position:0 0;background-repeat:no-repeat;background-size:0% 100%;border-radius:3px;padding:0 1px;transition:background-size .7s cubic-bezier(.6,.1,.2,1)}.clue.lit{color:var(--hl-ink);background-size:100% 100%}.attempting .clue{cursor:pointer;border-bottom:1.5px dotted var(--muted)}.attempting .clue:hover{background-color:color-mix(in srgb,var(--tap) 60%,transparent)}.clue.tapped{background-color:var(--tap);border-bottom-color:#0000}.opts{gap:8px;margin:0;padding:0;list-style:none;display:grid}.opt{border:1.5px solid var(--line);cursor:pointer;text-align:left;background:0 0;border-radius:10px;grid-template-columns:28px 1fr;gap:6px 8px;width:100%;padding:11px 14px;transition:border-color .2s,background .2s,opacity .3s;display:grid}.opt .k{color:var(--muted);font-weight:700}.opt:hover{border-color:var(--ink)}.opt.sel{border-color:var(--ink);background:color-mix(in srgb,var(--tap) 55%,transparent)}.opt[disabled]{cursor:default}.opt[disabled]:hover{border-color:var(--line)}.opt.sel[disabled]:hover{border-color:var(--ink)}.opt .why{color:var(--bad);grid-column:2;font-size:14.5px;display:none}.opt.struck{opacity:.62}.opt.struck .txt{text-decoration:line-through;-webkit-text-decoration-color:var(--bad);text-decoration-color:var(--bad);text-decoration-thickness:2px}.opt.struck .why{display:block}.opt.right{border-color:var(--good);background:var(--good-soft);opacity:1}.opt.right .k{color:var(--good)}.side{gap:16px;display:grid}.panel{background:var(--paper);border:1px solid var(--line);border-radius:14px;padding:20px 22px}.panel h2{margin:0 0 4px;font-size:17px}.panel p.sub{color:var(--muted);margin:0 0 14px;font-size:14.5px}.conf{flex-wrap:wrap;gap:8px;display:flex}.pill{border:1.5px solid var(--line);cursor:pointer;background:0 0;border-radius:999px;padding:7px 14px;font-size:15px}.pill.sel{background:var(--ink);color:var(--paper);border-color:var(--ink)}.tapcount{color:var(--muted);margin:12px 0 0;font-size:14.5px}.btn{background:var(--ink);color:var(--paper);cursor:pointer;border:0;border-radius:10px;padding:11px 18px;font-size:15.5px;font-weight:700}.btn[disabled]{opacity:.35;cursor:not-allowed}.btn.ghost{color:var(--ink);border:1.5px solid var(--line);background:0 0}.row{flex-wrap:wrap;gap:10px;margin-top:16px;display:flex}.verdict{border-radius:12px;margin-bottom:12px;padding:16px 18px}.verdict.owned{background:var(--good-soft)}.verdict.lucky,.verdict.close{background:color-mix(in srgb,var(--hl) 30%,var(--paper))}.verdict.gap{background:var(--bad-soft)}.verdict b{margin-bottom:2px;font-size:20px;display:block}.quad{grid-template-columns:auto 1fr 1fr;gap:4px;margin-top:10px;font-size:13px;display:grid}.quad div{border:1px solid var(--line);color:var(--muted);text-align:center;border-radius:6px;padding:6px 8px}.quad .h{border:0;font-weight:700}.quad .me{background:var(--ink);color:var(--paper);border-color:var(--ink)}.levels{border:1.5px solid var(--line);border-radius:10px;margin-bottom:14px;display:flex;overflow:hidden}.levels button{cursor:pointer;background:0 0;border:0;flex:1;padding:8px 6px;font-size:14.5px}.levels button.sel{background:var(--ink);color:var(--paper)}.chain{margin:0;padding:0;list-style:none;position:relative}.chain li{border:1px solid var(--line);background:var(--paper);border-radius:10px;margin:0 0 18px;padding:10px 12px 10px 14px;font-size:15px;animation:.35s in;position:relative}.chain li:after{content:"";background:var(--line);width:2px;height:18px;position:absolute;bottom:-19px;left:22px}.chain li:last-child:after{display:none}.chain li.clue-n{border-left:5px solid var(--hl)}.chain li.inf{border-left:5px solid var(--muted)}.chain li.ans{border-left:5px solid var(--good);background:var(--good-soft);font-weight:700}.chain li.flip{border:1.5px dashed var(--flip);color:var(--flip)}.chain .lab{color:var(--muted);font-size:12.5px;font-weight:400;display:block}.chain:empty:before{content:"The reasoning builds here as the walkthrough plays.";color:var(--muted);font-size:14.5px}@keyframes in{0%{opacity:0;transform:translateY(4px)}to{opacity:1;transform:none}}.check{border:2px solid var(--ink);border-radius:12px;margin-top:4px;padding:14px 16px}.check p{margin:0 0 10px;font-weight:700}.check .choices{gap:6px;display:grid}.check .choices button{text-align:left;border:1.5px solid var(--line);cursor:pointer;background:0 0;border-radius:8px;padding:8px 12px}.check .choices button:hover{border-color:var(--ink)}.check .choices button.ok{border-color:var(--good);background:var(--good-soft)}.check .choices button.no{border-color:var(--bad);background:var(--bad-soft)}.check .fb{margin-top:8px;font-size:14.5px}.next{display:none}.next.show{display:block}.mastery{gap:6px;margin:8px 0 12px;display:flex}.mastery i{background:var(--line);border-radius:4px;flex:1;height:8px}.mastery i.on{background:var(--good)}.variant{font-family:var(--serif);color:var(--muted);border-left:3px solid var(--line);filter:blur();margin:0;padding-left:12px;font-size:15.5px}.variant.locked{filter:blur(3.5px);-webkit-user-select:none;user-select:none}.player{background:var(--paper);border-top:1px solid var(--line);padding:10px 20px calc(12px + env(safe-area-inset-bottom,0px));z-index:5;transition:transform .35s;position:fixed;bottom:0;left:0;right:0;transform:translateY(110%)}.player.show{transform:none}.pin{grid-template-columns:auto 1fr auto;align-items:center;gap:10px 16px;max-width:1180px;margin:0 auto;display:grid}.play{background:var(--ink);width:46px;height:46px;color:var(--paper);cursor:pointer;border:0;border-radius:50%;place-items:center;display:grid}.play svg{fill:currentColor;width:18px;height:18px}.caption{min-height:24px;font-size:15.5px;line-height:1.4}.track{grid-column:2;align-items:center;gap:3px;display:flex}.track button{background:var(--line);cursor:pointer;border:0;border-radius:4px;flex:1;height:7px;padding:0}.track button.past{background:var(--ink)}.track button.now{background:var(--hl)}.track button.cp{height:12px}.ctrls{grid-area:1/3/3;align-items:center;gap:6px;display:flex}.ctrls button{border:1.5px solid var(--line);cursor:pointer;background:0 0;border-radius:8px;padding:6px 10px;font-size:14px}.ctrls button[aria-pressed=true]{background:var(--ink);color:var(--paper);border-color:var(--ink)}@media (width<=620px){.pin{grid-template-columns:auto 1fr}.ctrls{grid-area:auto/1/auto/3;justify-content:flex-end}.sheet{padding:20px 18px}.stem{font-size:17.5px}}.hidden{display:none!important}@media (prefers-reduced-motion:reduce){*{transition:none!important;animation:none!important}}.caption .w{color:var(--muted);transition:color .12s}.caption .w.said{color:var(--ink)}.caption .w.now{color:var(--ink);background:color-mix(in srgb,var(--hl) 55%,transparent);border-radius:3px}.vbadge{color:var(--muted);font-size:12.5px}.ctrls .citechip{border-color:var(--good);color:var(--good);font-weight:700}.sheet-scrim{z-index:10;background:#0a121e59;justify-content:flex-end;display:flex;position:fixed;inset:0}.citesheet{background:var(--paper);width:min(440px,100%);height:100%;padding:20px 22px calc(24px + env(safe-area-inset-bottom,0px));border-left:1px solid var(--line);flex-direction:column;gap:12px;animation:.25s slidein;display:flex;overflow:auto}.citesheet h2{margin:0;font-size:17px}.citesheet .sub{color:var(--muted);margin:0;font-size:14px}.citesheet-head{justify-content:space-between;align-items:center;gap:12px;display:flex}.citesheet .btn.ghost{text-align:center;padding:7px 12px;font-size:14px;text-decoration:none}.excerpt{font-family:var(--serif);border-left:3px solid var(--line);margin:0;padding-left:12px;font-size:16px;line-height:1.65}.excerpt mark{background:color-mix(in srgb,var(--hl) 70%,transparent);color:var(--hl-ink);border-radius:3px;padding:0 1px}.disclaimer{color:var(--muted);margin:0;font-size:12.5px}@keyframes slidein{0%{opacity:0;transform:translate(24px)}to{opacity:1;transform:none}}
