:root{--ground:#07090d;--ink:#f2f5f8;--muted:#9aa7b6;--line:#e2ecf824;--panel:#090d13d1;--green:#7cc253}*{box-sizing:border-box}html,body{background:var(--ground);color:var(--ink);margin:0;font-family:Open Sans,system-ui,sans-serif}html{scroll-behavior:smooth}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}}a{color:inherit}:focus-visible{outline:2px solid var(--green);outline-offset:3px}.stage{z-index:0;position:fixed;inset:0}.stage canvas{width:100%;height:100%;font-family:Open Sans,system-ui,sans-serif;display:block}.track{z-index:1;pointer-events:none;position:relative}.track section{height:100svh}.bar{z-index:3;background:linear-gradient(var(--ground),#07090d00);justify-content:space-between;align-items:center;gap:16px;padding:18px 24px;display:flex;position:fixed;top:0;left:0;right:0}.brand{flex-direction:column;text-decoration:none;display:flex}.brand b{letter-spacing:.02em;font-size:17px;font-weight:800}.brand span{color:var(--muted);font-size:12px}.bar-actions{gap:10px;display:flex}.btn{appearance:none;border:1px solid var(--line);background:var(--panel);color:var(--ink);cursor:pointer;border-radius:999px;align-items:center;gap:8px;height:40px;padding:0 16px;font:600 14px/1 Open Sans,sans-serif;text-decoration:none;display:inline-flex}.btn:hover{border-color:#e2ecf859}.btn.solid{background:var(--green);border-color:var(--green);color:#0d1a08}.card{z-index:2;pointer-events:auto;width:min(440px,36vw);position:fixed;top:50%;left:48px;transform:translateY(-50%)}.card .chapter{letter-spacing:.18em;text-transform:uppercase;color:var(--muted);font-size:12px;font-weight:700}.card .name{letter-spacing:.16em;text-transform:uppercase;margin-top:14px;font-size:13px;font-weight:700}.card h2{letter-spacing:-.01em;text-wrap:balance;margin:10px 0 0;font-size:clamp(28px,3vw,44px);font-weight:800;line-height:1.1}.card .more{border-bottom:1px solid;margin-top:22px;padding-bottom:2px;font-size:15px;font-weight:700;text-decoration:none;display:inline-flex}.card .count{color:var(--muted);font-variant-numeric:tabular-nums;margin-top:26px;font-size:13px}.card.swap{animation:.5s both swap}@keyframes swap{0%{opacity:0;transform:translateY(calc(10px - 50%))}to{opacity:1;transform:translateY(-50%)}}.intro{z-index:2;text-align:center;pointer-events:none;background:linear-gradient(#07090d00,var(--ground)38%);place-items:end center;padding:120px 24px 7vh;display:grid;position:fixed;bottom:0;left:0;right:0}.intro>div{pointer-events:auto;max-width:760px}.intro h1{letter-spacing:-.02em;margin:0;font-size:clamp(40px,6vw,84px);font-weight:800;line-height:1}.intro p{color:#c9d2dc;text-wrap:balance;max-width:560px;margin:18px auto 0;font-size:clamp(17px,1.6vw,21px);line-height:1.55}.intro .row{flex-wrap:wrap;justify-content:center;gap:12px;margin-top:28px;display:flex}.intro .hint{color:var(--muted);margin-top:22px;font-size:13px}.rail{z-index:2;flex-direction:column;gap:8px;display:flex;position:fixed;top:50%;right:22px;transform:translateY(-50%)}.rail button{cursor:pointer;background:#e2ecf838;border:0;border-radius:50%;width:10px;height:10px;padding:0;transition:transform .2s}.rail button[aria-current=step]{transform:scale(1.6)}@media (max-width:860px){.bar{padding:14px 16px}.bar .btn.ghost-hide{display:none}.card{background:var(--panel);border:1px solid var(--line);border-radius:16px;width:auto;padding:16px 18px;top:76px;left:16px;right:16px;transform:none}.card.swap{animation:none}.card h2{font-size:22px}.card .count{display:none}.rail{gap:6px;right:8px}.rail button{width:7px;height:7px}}.stage-intro{bottom:34vh}@media (max-width:860px){.stage-intro{top:40px;bottom:42vh}}
