:root{--accent-h: 46;--accent-c: .16;--accent-l: .635;--accent: oklch(var(--accent-l) var(--accent-c) var(--accent-h));--accent-ink: oklch(.45 calc(var(--accent-c) * .83) var(--accent-h));--accent-soft: oklch(.93 .045 var(--accent-h));--accent-glow: oklch(var(--accent-l) var(--accent-c) var(--accent-h) / .32);--display: "Space Grotesk", sans-serif;--body: "Hanken Grotesk", sans-serif;--mono: "JetBrains Mono", monospace;--u: 8px;--ok: oklch(.64 .13 150);--ok-soft: oklch(.93 .05 150);--err: oklch(.58 .18 27);--err-soft: oklch(.93 .06 27);--warn: oklch(.74 .14 75);--radius: 14px;--radius-sm: 9px;--radius-lg: 20px;--shadow-sm: 0 1px 2px oklch(.3 .02 65 / .06), 0 1px 3px oklch(.3 .02 65 / .04);--shadow-md: 0 4px 12px oklch(.3 .02 65 / .08), 0 2px 4px oklch(.3 .02 65 / .05);--shadow-lg: 0 18px 50px oklch(.3 .02 65 / .16), 0 6px 16px oklch(.3 .02 65 / .08)}:root,.theme-light{--bg: oklch(.965 .006 75);--bg-2: oklch(.945 .007 72);--paper: oklch(.99 .004 85);--paper-2: oklch(.975 .005 80);--ink: oklch(.24 .012 65);--ink-2: oklch(.35 .012 65);--muted: oklch(.54 .012 60);--faint: oklch(.7 .01 60);--line: oklch(.9 .008 70);--line-strong: oklch(.83 .01 65);--code-bg: oklch(.255 .014 65);--code-bg-2: oklch(.3 .014 65);--code-ink: oklch(.88 .012 75);--grid-line: oklch(.9 .008 70 / .9);--grid-dot: oklch(.78 .012 70 / .42)}.theme-dark{--bg: oklch(.205 .012 65);--bg-2: oklch(.235 .013 65);--paper: oklch(.255 .013 65);--paper-2: oklch(.285 .014 65);--ink: oklch(.94 .008 75);--ink-2: oklch(.84 .01 72);--muted: oklch(.68 .012 65);--faint: oklch(.52 .012 62);--line: oklch(.34 .013 65);--line-strong: oklch(.42 .015 65);--code-bg: oklch(.18 .012 65);--code-bg-2: oklch(.225 .013 65);--code-ink: oklch(.88 .012 75);--grid-line: oklch(.32 .012 65 / .7);--grid-dot: oklch(.46 .012 65 / .32);--accent-soft: oklch(.36 .07 var(--accent-h));--accent-ink: oklch(.8 .12 var(--accent-h));--ok: oklch(.72 .14 150);--ok-soft: oklch(.33 .06 150);--err: oklch(.7 .17 27);--err-soft: oklch(.32 .07 27);--shadow-lg: 0 18px 50px oklch(0 0 0 / .45), 0 6px 16px oklch(0 0 0 / .3);--shadow-md: 0 4px 12px oklch(0 0 0 / .3);--shadow-sm: 0 1px 3px oklch(0 0 0 / .3)}.density-compact{--u: 6px}.density-regular{--u: 8px}.density-comfy{--u: 10px}@keyframes fadeUp{0%{transform:translateY(10px)}to{transform:none}}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes popIn{0%{transform:scale(.92)}60%{transform:scale(1.02)}to{transform:scale(1)}}@keyframes slideInRight{0%{transform:translate(20px)}to{transform:none}}@keyframes pulseGlow{0%,to{box-shadow:0 0 0 0 var(--accent-glow)}50%{box-shadow:0 0 0 8px transparent}}@keyframes spin{to{transform:rotate(360deg)}}@keyframes shimmer{0%{background-position:-200% 0}to{background-position:200% 0}}@keyframes float{0%,to{transform:translateY(0)}50%{transform:translateY(-6px)}}@keyframes tick{0%{transform:scale(0) rotate(-20deg)}60%{transform:scale(1.15) rotate(0)}to{transform:scale(1)}}@keyframes confettiFall{to{transform:translateY(120px) rotate(360deg);opacity:0}}@keyframes moveToken{0%{transform:translate(0)}to{transform:translate(var(--to))}}@keyframes diagShake{0%,to{transform:translate(0)}20%{transform:translate(-5px)}40%{transform:translate(5px)}60%{transform:translate(-3px)}80%{transform:translate(3px)}}@keyframes dashMove{to{stroke-dashoffset:-16}}.disp{font-family:var(--display)}.mono{font-family:var(--mono)}.blueprint{background-image:radial-gradient(var(--grid-dot) 1.1px,transparent 1.2px);background-size:calc(var(--u) * 4) calc(var(--u) * 4);background-position:center}.chip{font-family:var(--mono);font-size:11px;letter-spacing:.04em;color:var(--ink-2);background:var(--paper);border:1px solid var(--line-strong);padding:5px 10px;border-radius:7px;display:inline-flex;align-items:center;gap:6px;white-space:nowrap}.kicker{font-family:var(--mono);font-size:11px;letter-spacing:.18em;text-transform:uppercase;color:var(--accent-ink)}.btn{font-family:var(--display);font-weight:600;font-size:15px;background:var(--accent);color:#fffbf4;padding:calc(var(--u) * 1.5) calc(var(--u) * 2.75);border-radius:var(--radius-sm);display:inline-flex;align-items:center;gap:9px;transition:transform .12s ease,box-shadow .2s ease,filter .15s ease;box-shadow:0 2px 0 var(--accent-ink),var(--shadow-sm)}.btn:hover{filter:brightness(1.04);transform:translateY(-1px);box-shadow:0 3px 0 var(--accent-ink),var(--shadow-md)}.btn:active{transform:translateY(1px);box-shadow:0 1px 0 var(--accent-ink)}.btn.ghost{background:var(--paper);color:var(--ink);box-shadow:var(--shadow-sm);border:1px solid var(--line-strong)}.btn.ghost:hover{filter:none;border-color:var(--accent);color:var(--accent-ink)}.btn:disabled{opacity:.45;cursor:not-allowed;transform:none;box-shadow:none}.card{background:var(--paper);border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow-sm)}.codeblock{background:var(--code-bg);color:var(--code-ink);padding:calc(var(--u) * 2);border-radius:var(--radius-sm);font-size:13.5px;line-height:1.7;overflow:auto;white-space:pre;-moz-tab-size:4;tab-size:4}.tok-kw{color:#ff958d;color:oklch(.78 .14 25)}.tok-type{color:#e7b369}.tok-string{color:#86d489}.tok-comment{color:#82796e;font-style:italic}.tok-call{color:#6ec3eb}.tok-macro{color:#e3a2f2}.tok-num{color:#f4b581}.inline-code{font-family:var(--mono);background:var(--bg-2);padding:1px 5px;border-radius:4px;font-size:.85em;color:var(--accent-ink)}@media(min-width:680px){.topbar-streak{display:flex!important}}@media(max-width:560px){.topbar-xp{display:none!important}}@media(max-width:820px){.ch-split-grid,.ch-stacked-grid,.ch-checklist-grid,.lab-head-grid,.lab-edit-grid,.wt-editor-grid{grid-template-columns:1fr!important}.ch-checklist-grid>.card{position:static!important}}@media(max-width:820px){.journey-wrap .journey-row{justify-content:flex-start!important}.journey-wrap .journey-card{width:100%!important}.journey-wrap .journey-conn{left:31px!important;transform:none!important}}.screen-gate{height:100%;display:grid;place-items:center;padding:28px;text-align:center}.screen-gate__card{max-width:380px;display:flex;flex-direction:column;align-items:center;gap:18px;padding:calc(var(--u) * 4)}.screen-gate__badge{width:64px;height:64px;border-radius:18px;display:grid;place-items:center;background:var(--accent-soft);color:var(--accent-ink)}*{box-sizing:border-box;margin:0;padding:0}html,body{height:100%}body{font-family:var(--body);background:var(--bg);color:var(--ink);line-height:1.55;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility;overflow:hidden}#root{height:100%}button{font-family:inherit;cursor:pointer;border:none;background:none;color:inherit}input,textarea{font-family:inherit}a{color:inherit}::selection{background:var(--accent-glow)}*::-webkit-scrollbar{width:10px;height:10px}*::-webkit-scrollbar-thumb{background:var(--line-strong);border-radius:10px;border:2px solid var(--bg)}*::-webkit-scrollbar-track{background:transparent}:focus-visible{outline:2px solid var(--accent);outline-offset:2px}@media(prefers-reduced-motion:reduce){*{animation-duration:.001ms!important;animation-iteration-count:1!important;transition-duration:.001ms!important}}.reduce-motion *{animation-duration:.001ms!important;animation-iteration-count:1!important;transition-duration:.001ms!important}
