body.page-github{--bg: #1b1440;--bg-raised: #2a2158;--ink: #fff8ef;--ink-dim: #f3e9ff;--ink-mute: #ddd0ff;--line: rgba(255, 248, 239, .18);--line-strong: rgba(255, 225, 74, .45);--accent: #ffe14a;--accent-hot: #ffd000;--accent-dim: rgba(255, 225, 74, .16);--focus: #ffe14a;--work: #ffe14a;--stage: #3ddec8;--repo: #d7b0ff;--remote: #4cc9f0;--ink-on-bright: #241600;background:radial-gradient(900px 420px at 0% -10%,rgba(255,107,107,.28),transparent 60%),radial-gradient(800px 480px at 100% 0%,rgba(76,201,240,.22),transparent 55%),radial-gradient(700px 500px at 70% 110%,rgba(182,242,92,.14),transparent 50%),var(--bg);color:var(--ink)}body.page-github:before{background-image:radial-gradient(circle,rgba(255,225,74,.28) 1.5px,transparent 1.7px),radial-gradient(circle,rgba(76,201,240,.22) 1.5px,transparent 1.7px);background-size:28px 28px,46px 46px;background-position:0 0,14px 18px;-webkit-mask-image:none;mask-image:none;opacity:.55}body.page-github .site-header{background:#1b1440e6;border-bottom-color:#ffe14a47}body.page-github .nav-links a,body.page-github .mark-name,body.page-github .site-footer{color:var(--ink-dim)}body.page-github .lang-switch button[aria-pressed=true]{background:var(--work);color:var(--ink-on-bright)}body.page-github .btn{border-radius:999px;background:#3a2d78;color:var(--ink);border-color:#fff8ef47;letter-spacing:.06em;min-height:44px}body.page-github .btn-ghost{background:transparent;color:var(--ink)}body.page-github .btn-next{background:var(--work);color:var(--ink-on-bright);border-color:var(--work);font-size:.85rem;padding:.75rem 1.05rem;box-shadow:0 0 0 4px #ffe14a38}body.page-github .kicker{color:var(--stage)}.game-page{padding:clamp(1.2rem,3vw,2.2rem) 0 4.5rem}.game-head h1{margin:0;font-family:var(--serif);font-weight:500;font-size:clamp(2.4rem,6vw,4.4rem);letter-spacing:-.04em;line-height:.95}.game-lede{margin:.75rem 0 0;max-width:40rem;color:var(--ink-dim)}.quest{margin:1.1rem 0 1rem}#quest-label{margin:0;font-family:var(--mono);font-size:.78rem;letter-spacing:.04em;color:var(--ink)}.quest-bar{height:.7rem;margin:.55rem 0 .75rem;border-radius:999px;background:#fff8ef1f;overflow:hidden}#quest-fill{display:block;height:100%;width:0;border-radius:inherit;background:linear-gradient(90deg,var(--work),var(--stage),var(--remote));transition:width .45s var(--ease)}.level-map{display:flex;gap:.45rem;list-style:none;margin:0;padding:0 0 .35rem;overflow-x:auto}.level-map button{-webkit-appearance:none;-moz-appearance:none;appearance:none;min-height:48px;border:2px solid rgba(255,248,239,.2);border-radius:14px;background:#2a2158d9;color:var(--ink);font-family:var(--sans);font-size:.82rem;font-weight:500;padding:.4rem .75rem;cursor:pointer;white-space:nowrap}.level-map button[aria-current=step]{border-color:var(--work);background:var(--work);color:var(--ink-on-bright);box-shadow:0 0 0 3px #ffe14a40}.level-map button.is-done:not([aria-current=step]){border-color:var(--stage);color:var(--stage)}.level-map button:disabled{color:var(--ink-mute);cursor:not-allowed}.game-shell{display:grid;grid-template-columns:minmax(16rem,22rem) minmax(0,1.15fr) minmax(16rem,.95fr);gap:.85rem;align-items:start}.panel{border:2px solid rgba(255,248,239,.16);border-radius:18px;background:#1c1644eb;padding:.9rem .95rem 1rem;min-width:0;box-shadow:0 10px 30px #08041840}.title-row{display:flex;align-items:flex-start;justify-content:space-between;gap:.5rem;position:relative;margin-bottom:.45rem}.panel h2,.zone h3,.graph-card figcaption,.mission h3{margin:0;font-family:var(--sans);font-size:.95rem;font-weight:600;letter-spacing:0;text-transform:none;color:var(--ink)}.tip-btn{-webkit-appearance:none;-moz-appearance:none;appearance:none;flex:0 0 auto;width:2rem;height:2rem;border-radius:999px;border:2px solid var(--remote);background:#123246;color:#e8f9ff;font-size:.95rem;cursor:pointer}.tip-btn[aria-expanded=true]{background:var(--remote);color:#04202a}.title-row .tip-pop{position:absolute;z-index:5;right:0;top:2.3rem;width:min(18rem,100%);margin:0;padding:.7rem .75rem;border-radius:12px;background:#fff8ef;color:#241600;font-size:.92rem;line-height:1.45;box-shadow:0 12px 30px #00000047}#mission-copy p,.pr-panel p,.finale-copy,.onboard-steps{margin:0 0 .7rem;color:var(--ink-dim);font-size:.98rem}.mission{display:grid;gap:.2rem}@media(min-width:1100px){.mission{position:sticky;top:5.2rem;max-height:calc(100svh - 6.4rem);overflow:auto}}.objectives{list-style:none;margin:0 0 .8rem;padding:0;display:grid;gap:.4rem}.objectives li{display:grid;grid-template-columns:auto 1fr;gap:.55rem;align-items:center;color:var(--ink);font-size:.95rem;border:2px solid transparent;border-radius:12px;padding:.35rem .4rem}.objectives li.is-now{border-color:var(--work);background:#ffe14a24}.objectives li.is-done{color:var(--ink-dim)}.step-num{width:1.7rem;height:1.7rem;border-radius:999px;display:grid;place-items:center;background:#3a2d78;color:var(--ink);font-family:var(--mono);font-size:.75rem}.objectives li.is-now .step-num{background:var(--work);color:var(--ink-on-bright)}.objectives li.is-done .step-num{background:var(--stage);color:#04221e}.hints summary,.reset-all summary{cursor:pointer;font-family:var(--sans);font-weight:600;color:var(--remote)}.hints ol{margin:.55rem 0 0;padding-left:1.15rem;color:var(--ink-dim)}.success-banner{border:0;border-radius:14px;background:var(--work);color:var(--ink-on-bright);padding:.8rem .85rem;margin:.2rem 0 .75rem}.success-kicker{margin:0 0 .25rem;font-family:var(--serif);font-size:1.35rem;color:var(--ink-on-bright)}.success-banner p:last-child{margin:0;color:var(--ink-on-bright)}.mission-actions,.pr-actions{display:flex;flex-wrap:wrap;gap:.5rem;margin-top:.45rem}.stack{display:grid;gap:.85rem}.file-tabs{display:flex;flex-wrap:wrap;gap:.35rem;margin-bottom:.45rem}.file-tabs button{-webkit-appearance:none;-moz-appearance:none;appearance:none;min-height:40px;border-radius:999px;border:2px solid rgba(255,225,74,.4);background:transparent;color:var(--ink);font-family:var(--mono);font-size:.75rem;padding:.25rem .7rem;cursor:pointer}.file-tabs button[aria-pressed=true]{background:var(--work);color:var(--ink-on-bright);border-color:var(--work)}.path-note,.zone-help,.pr-meta,.chip-lead{margin:0 0 .45rem;color:var(--ink-dim);font-size:.92rem}.path-note{font-family:var(--mono);font-size:.75rem}.editor{width:100%;min-height:9rem;resize:vertical;border:2px solid var(--work);border-radius:12px;background:#140e28;color:var(--ink);font-family:var(--mono);font-size:16px;line-height:1.45;padding:.75rem}.editor.is-conflict{border-color:var(--work);box-shadow:inset 4px 0 #ff6b6b}.conflict-note{margin:.45rem 0 0;color:#ffd0d0;font-size:.92rem}.term-out{min-height:11rem;max-height:18rem;overflow:auto;background:#120c24;border-radius:12px;padding:.75rem;font-family:var(--mono);font-size:.78rem;line-height:1.45}.term-line{white-space:pre-wrap;overflow-wrap:anywhere;margin:0;color:#efe7ff}.term-line.cmd{color:var(--stage);margin-top:.35rem}.term-line.err{color:#ffd0d0}.term-line.ok{color:#e9ffb8}.term-line.info{color:#c9ecff}.term-form{display:flex;flex-wrap:wrap;gap:.35rem .6rem;align-items:center;margin-top:.45rem}.prompt{font-family:var(--mono);font-size:.75rem;color:var(--stage);overflow-wrap:anywhere}.term-form input{flex:1 1 12rem;min-width:0;min-height:44px;border:0;border-bottom:2px solid rgba(61,222,200,.7);background:transparent;color:var(--ink);font-family:var(--mono);font-size:16px;padding:.35rem .1rem;border-radius:0}.chips{display:flex;flex-wrap:wrap;gap:.4rem}.chips button{-webkit-appearance:none;-moz-appearance:none;appearance:none;max-width:100%;min-height:44px;text-align:left;white-space:normal;border-radius:12px;border:2px solid rgba(255,248,239,.22);background:#322864;color:var(--ink);font-family:var(--mono);font-size:.75rem;padding:.4rem .6rem;cursor:pointer}.chips button.is-next{background:var(--work);color:var(--ink-on-bright);border-color:var(--work);font-weight:600}.chips button:hover,.file-tabs button:hover,.level-map button:hover:not(:disabled){border-color:var(--work)}.branch-legend{display:flex;flex-wrap:wrap;gap:.45rem .8rem;list-style:none;margin:0 0 .6rem;padding:0;color:var(--ink);font-size:.82rem}.branch-legend li{display:inline-flex;align-items:center;gap:.35rem}.swatch{width:.7rem;height:.7rem;border-radius:999px;display:inline-block}.graph-split{display:grid;gap:.75rem}.graph-card figcaption{color:var(--ink);margin-bottom:.35rem}.graph-scroll{overflow-x:auto;background:#140e28;border-radius:12px;border:2px solid rgba(215,176,255,.35)}.graph-card:last-child .graph-scroll{border-color:#4cc9f08c}.graph-scroll svg{width:100%;height:auto;min-height:7rem}svg circle.pop{transform-box:fill-box;transform-origin:center;animation:node-pop .7s var(--ease)}.graph-card.is-flying{animation:remote-pop .7s var(--ease)}.graph-empty{margin:0;padding:.85rem;color:var(--ink-dim);font-size:.9rem}.history-list{margin:.45rem 0 0;padding-left:1.1rem;color:var(--ink-dim);font-family:var(--mono);font-size:.72rem;line-height:1.45}.zones{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.45rem}.zone{border:2px solid rgba(255,248,239,.16);border-radius:14px;padding:.5rem .55rem .6rem;min-width:0;background:#140e28}.zone-work{border-color:var(--work)}.zone-index{border-color:var(--stage)}.zone-repo{border-color:var(--repo)}.zone-work h3{color:var(--work)}.zone-index h3{color:var(--stage)}.zone-repo h3{color:var(--repo)}.zone.flash{animation:zone-pop .55s var(--ease)}.zone-caption,.muted{margin:.2rem 0 .35rem;color:var(--ink-dim);font-size:.78rem}.file-pill{margin:.35rem 0}.file-pill strong{display:block;font-family:var(--mono);font-size:.75rem;font-weight:500;overflow-wrap:anywhere}.file-pill span{color:var(--ink-mute);font-size:.75rem}.file-pill code{display:block;margin-top:.15rem;color:var(--ink);font-family:var(--mono);font-size:.68rem;white-space:pre-wrap;overflow-wrap:anywhere}.pr-panel{margin:0 0 .85rem;border-color:#4cc9f08c}.review{border-left:4px solid var(--remote);padding-left:.75rem;margin:.6rem 0}.reset-all{margin-top:.8rem;color:var(--ink-mute);font-size:.85rem}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}#finale,#onboard{border:0;border-radius:18px;background:#2a2158;color:var(--ink);max-width:min(36rem,calc(100vw - 2rem));padding:1.2rem 1.2rem 1.3rem}#finale::backdrop,#onboard::backdrop{background:#0c081cb8}#finale h2,#onboard h2{margin:0 0 .55rem;font-family:var(--serif);font-weight:500;font-size:2rem;letter-spacing:-.03em;color:var(--work)}.onboard-kicker{margin:0 0 .3rem;font-family:var(--mono);font-size:.75rem;letter-spacing:.08em;text-transform:uppercase;color:var(--stage)}.onboard-steps{padding-left:1.2rem}#finale ol{margin:0 0 .8rem;padding-left:1.2rem;color:var(--ink-dim)}.confetti-layer{pointer-events:none;position:fixed;top:0;right:0;bottom:0;left:0;overflow:hidden;z-index:70}.confetti-bit{position:absolute;top:-16px;width:10px;height:14px;border-radius:2px;animation-name:confetti-fall;animation-timing-function:ease-in;animation-fill-mode:forwards}@keyframes confetti-fall{to{transform:translate(var(--dx),105vh) rotate(520deg);opacity:.15}}@keyframes node-pop{0%{transform:scale(.2)}55%{transform:scale(1.45)}to{transform:scale(1)}}@keyframes zone-pop{0%{transform:translateY(4px)}40%{transform:translateY(-3px)}to{transform:none}}@keyframes remote-pop{0%{transform:translate(10px)}to{transform:none}}@media(max-width:1100px){.game-shell{grid-template-columns:1fr 1fr}.mission{grid-column:1 / -1;position:static;max-height:none}}@media(max-width:720px){.game-shell,.zones{grid-template-columns:1fr}.mission-actions .btn-next{flex:1 1 100%}}@media(prefers-reduced-motion:reduce){#quest-fill,svg circle.pop,.zone.flash,.graph-card.is-flying,.confetti-bit{animation:none;transition:none}}
