:root{--serif:Georgia, "Times New Roman", serif;--sans:system-ui, -apple-system, "Segoe UI", Roboto, sans-serif;--ink:#e8e8e8;--text:#b9b9b9;--dim:#7a7a7a;--line:#ffffff1f}html,body{background:#000;height:100%;margin:0;overflow:hidden}body{font-family:var(--serif);color:#cfcfcf;-webkit-user-select:none;user-select:none;-webkit-font-smoothing:antialiased}#c{width:100%;height:100%;display:block;position:fixed;inset:0}a{color:inherit}button{font:inherit;color:inherit;cursor:pointer;background:0 0;border:0;padding:0}kbd{font:12px/1 var(--sans);color:#ddd;border:1px solid #ffffff38;border-bottom-width:2px;border-radius:4px;margin:0 2px;padding:3px 6px}.dim{color:var(--dim)}.hide{visibility:hidden;opacity:0!important;pointer-events:none!important}#hud{transition:opacity .6s}#candles{gap:14px;display:flex;position:fixed;top:22px;left:22px}#candles i{background:#3a3a3a;border-radius:2px;width:8px;height:18px;position:relative}#candles i.lit:after{content:"";background:radial-gradient(#fff 0%,#ffffff80 35%,#fff0 70%);border-radius:50%;width:14px;height:14px;animation:2.6s infinite flicker;position:absolute;top:-16px;left:-3px}#candles i.lit{background:#9a9a9a}#prompt{letter-spacing:.08em;color:#bdbdbd;text-shadow:0 0 6px #000;white-space:pre;font-size:16px;position:fixed;bottom:34px;left:50%;transform:translate(-50%)}#hints{font:12.5px/1.65 var(--sans);color:#858585;text-shadow:0 0 4px #000;transition:opacity .5s;position:fixed;bottom:16px;left:18px}#hints b{color:#c8c8c8;font-weight:500}#hints.off{opacity:0}#badge{font:12px/1.5 var(--sans);color:#8a8a8a;text-align:right;white-space:pre;pointer-events:none;text-shadow:0 0 4px #000;transition:opacity .6s;position:fixed;top:14px;right:16px}#badge b{color:#d6d6d6;letter-spacing:.12em;font-weight:600}.screen{text-align:center;background:radial-gradient(at 50% 40%,#0000008c,#000000e0 70%);flex-direction:column;justify-content:center;align-items:center;transition:opacity .7s,visibility .7s;display:flex;position:fixed;inset:0}.screen h1{letter-spacing:.04em;color:var(--ink);margin:0 0 18px;font-size:54px;font-weight:400}.screen>p{margin:0;font-size:19px;line-height:1.6}.small{font:13px var(--sans);color:var(--dim);letter-spacing:.14em;text-transform:lowercase;min-height:1em;margin-top:26px!important}.small.ready{color:#cfcfcf;animation:2.4s ease-in-out infinite breathe}.kicker{font:600 11px var(--sans);letter-spacing:.28em;text-transform:uppercase;color:var(--dim)}#title .kicker{margin-bottom:14px}#title .sub{font:14px/1.6 var(--sans);color:var(--dim);max-width:460px;margin-top:14px}.keys{font:13px var(--sans);color:var(--text);flex-wrap:wrap;justify-content:center;gap:10px 22px;margin:26px 0 0;padding:0;list-style:none;display:flex}.acts{gap:14px;margin-top:30px;display:flex}.acts button{font:14px var(--sans);letter-spacing:.04em;color:#ddd;border:1px solid var(--line);border-radius:999px;padding:10px 18px;transition:border-color .2s,background .2s}.acts button:hover,.acts button:focus-visible{background:#ffffff0d;border-color:#fff6;outline:none}.link{font:13px var(--sans);color:var(--dim);letter-spacing:.06em;margin-top:26px}.link:hover{color:#ccc}#load{width:min(360px,80vw);font:12.5px var(--sans);color:var(--dim);margin-top:30px;transition:opacity .4s}#load .track{background:#ffffff1a;border-radius:2px;height:2px;margin-bottom:10px;overflow:hidden}#load .track i{background:linear-gradient(90deg,#777,#fff);width:0;height:100%;transition:width .25s;display:block;box-shadow:0 0 8px #fff}#load.busy .track i{animation:1.3s ease-in-out infinite sweep;width:30%!important}#load.failed{color:#c9a27a;line-height:1.6}#load.failed .track{display:none}#load .acts{justify-content:center;margin-top:18px}#landing{box-sizing:border-box;background:radial-gradient(at 50% 42%,#00000073,#000000e6 65%);padding:0 24px}.bar{font:13px var(--sans);letter-spacing:.06em;color:#aaa;justify-content:space-between;align-items:center;padding:18px 28px;display:flex;position:absolute;top:0;left:0;right:0}.bar nav{align-items:center;gap:20px;display:flex}.bar a{color:#aaa;text-decoration:none;transition:color .2s;display:inline-flex}.bar a:hover{color:#fff}.mark{color:#ddd}.hero h1{text-shadow:0 0 50px #ffffff24;margin:4px 0 14px;font-size:clamp(52px,10vh,96px)}.lede{color:#dcdcdc;margin:0;font-size:19px;line-height:1.5}.about{font:14px/1.6 var(--sans);color:var(--dim);letter-spacing:.02em;margin:8px 0 0}.flame{width:10px;height:34px;margin:0 auto;position:relative}.flame:before{content:"";background:linear-gradient(#8a8a8a,#3a3a3a);border-radius:1px;width:6px;height:16px;position:absolute;bottom:0;left:2px}.flame i{background:radial-gradient(#fff 0%,#ffffff8c 30%,#fff0 70%);border-radius:50%;width:22px;height:22px;animation:2.2s infinite flicker;position:absolute;bottom:12px;left:-6px}.modes{grid-template-columns:1fr 1fr;gap:14px;width:min(720px,100%);margin:max(28px,6vh) auto 0;display:grid}.mode{text-align:left;background:#00000073;border:1px solid #ffffff24;border-radius:4px;flex-direction:column;align-items:flex-start;gap:6px;padding:18px 20px 16px;transition:border-color .25s,background .25s;display:flex;position:relative;overflow:hidden}.mode:after{content:"";background:#fff;width:0;height:1px;transition:width .45s cubic-bezier(.2,.7,.2,1);position:absolute;top:0;left:0;box-shadow:0 0 10px #fff}.mode:hover,.mode:focus-visible{background:#ffffff0a;border-color:#fff6;outline:none}.mode:hover:after,.mode:focus-visible:after{width:100%}.mode .top{justify-content:space-between;align-items:center;width:100%;display:flex}.mode .go{font:16px var(--sans);color:#777;transition:transform .25s,color .25s}.mode:hover .go{color:#fff;transform:translate(4px)}.mode .name{font:26px var(--serif);color:var(--ink);margin-top:4px}.mode .body{font:13.5px/1.55 var(--sans);color:var(--text)}.mode .foot{font:11.5px var(--sans);color:#666;letter-spacing:.04em;margin-top:6px}.mode .foot.warn{color:#c9a27a}.note{font:13px var(--sans);color:#c9a27a;margin-top:14px}.how-btn{font:12px var(--sans);letter-spacing:.2em;text-transform:uppercase;color:#999;border:1px solid #ffffff1f;border-radius:999px;align-items:center;gap:10px;margin-top:max(24px,5vh);padding:9px 16px;transition:color .2s,border-color .2s;display:inline-flex}.how-btn:hover,.how-btn:focus-visible{color:#fff;border-color:#ffffff59;outline:none}.how-btn .pulse{background:#fff;border-radius:50%;width:6px;height:6px;animation:1.8s ease-in-out infinite breathe;box-shadow:0 0 8px #fff}.foot-bar{font:12px var(--sans);color:#5e5e5e;letter-spacing:.04em;position:absolute;bottom:18px;left:28px}.foot-bar a{color:#8a8a8a;text-decoration:none}.foot-bar a:hover{color:#fff}.modal{z-index:10;background:#000000d1;place-items:center;padding:24px;transition:opacity .35s,visibility .35s;display:grid;position:fixed;inset:0;overflow-y:auto}.modal .panel{box-sizing:border-box;text-align:left;background:#050505;border:1px solid #ffffff1f;border-radius:6px;width:min(1060px,100%);padding:26px 28px 22px;transition:transform .35s;position:relative;transform:translateY(0);box-shadow:0 30px 120px #000000e6}.modal.hide .panel{transform:translateY(10px)}.modal h2{font:normal 32px var(--serif);color:var(--ink);margin:6px 0 8px}.modal .lead{font:14.5px/1.65 var(--sans);color:#a8a8a8;max-width:760px;margin:0 0 18px}.modal .x{color:#888;border-radius:50%;place-items:center;width:34px;height:34px;transition:color .2s,background .2s;display:grid;position:absolute;top:14px;right:14px}.modal .x:hover{color:#fff;background:#ffffff0f}.how-grid{grid-template-columns:1.4fr 1fr;align-items:start;gap:26px;display:grid}.how-side{flex-direction:column;gap:20px;display:flex}.swap{border-top:1px solid #ffffff14;flex-direction:column;gap:7px;padding-top:16px;display:flex}.swap .row{font:12px var(--sans);color:#666;grid-template-columns:62px auto 14px 1fr 14px auto;align-items:center;gap:6px;display:grid}.swap .tag{font:600 10px var(--sans);letter-spacing:.18em;text-transform:uppercase}.swap i{background:#ffffff40;height:1px}.swap .box{text-align:center;color:#777;border:1px solid #ffffff1f;border-radius:3px;padding:5px 8px}.swap .row:not(.net) .box{-webkit-text-decoration:line-through #ffffff59;text-decoration:line-through #ffffff59}.swap .net{color:#bbb}.swap .net .tag{color:#fff}.swap .net .box{color:#fff;border-color:#ffffff80;box-shadow:0 0 18px #ffffff1f}.how-foot{justify-content:flex-end;margin-top:14px;display:flex}.cta{font:600 13px var(--sans);letter-spacing:.06em;color:#000;background:#e8e8e8;border-radius:3px;padding:10px 16px;transition:background .2s}.cta:hover,.cta:focus-visible{background:#fff;outline:none}.plan{margin:0}.plan canvas{border:1px solid #ffffff14;border-radius:3px;width:100%;display:block}.plan figcaption{font:12px var(--sans);color:#777;flex-wrap:wrap;justify-content:space-between;gap:12px;margin-top:8px;display:flex}.legend{white-space:nowrap;align-items:center;gap:6px;display:inline-flex}.legend i{border-radius:50%;width:8px;height:8px;margin-left:8px;display:inline-block}.legend .k{background:#fff}.legend .m{box-sizing:border-box;border:1.5px solid #cfcfcf;width:7px;height:7px}.legend .c{background:#fff;width:5px;height:5px;box-shadow:0 0 6px #fff}.how-steps{counter-reset:s;flex-direction:column;gap:13px;margin:0;padding:0;list-style:none;display:flex}.how-steps li{counter-increment:s;font:13px/1.55 var(--sans);color:#8f8f8f;padding-left:34px;position:relative}.how-steps li:before{content:"0" counter(s);font:11px var(--sans);letter-spacing:.1em;color:#555;position:absolute;top:2px;left:0}.how-steps b{font:normal 17px var(--serif);color:#e2e2e2;margin-bottom:2px;display:block}.strip{margin-top:16px}.strip canvas{border-radius:2px;width:100%;height:30px;display:block}.strip span{font:11.5px var(--sans);letter-spacing:.08em;color:#666;margin-top:7px;display:block}#corner{font:12px var(--sans);color:#888;z-index:5;align-items:center;gap:10px;transition:opacity .5s;display:flex;position:fixed;bottom:14px;right:16px}#corner.quiet{opacity:.35}#corner.quiet:hover{opacity:1}#corner.quiet .credits{display:none}body[data-screen=pause] #hints,body[data-screen=end] #hints,body[data-screen=pause] #prompt,body[data-screen=end] #prompt{opacity:0}#sound{color:#999;border:1px solid #0000;border-radius:50%;place-items:center;width:30px;height:30px;transition:color .2s,border-color .2s;display:grid}#sound:hover{color:#fff;border-color:var(--line)}#sound .off,#sound.muted .on{display:none}#sound.muted .off{display:inline}.credits{outline:none;position:relative}.pill{border:1px solid var(--line);letter-spacing:.06em;cursor:default;border-radius:999px;align-items:center;gap:6px;padding:6px 11px;transition:color .2s,border-color .2s;display:inline-flex}.credits:hover .pill,.credits:focus .pill{color:#eee;border-color:#ffffff4d}.pop{border:1px solid var(--line);width:320px;font:12px/1.65 var(--sans);color:#9a9a9a;text-align:left;-webkit-user-select:text;user-select:text;opacity:0;pointer-events:none;background:#0a0a0af5;border-radius:10px;padding:14px 16px;transition:opacity .2s,transform .2s;position:absolute;bottom:calc(100% + 10px);right:0;transform:translateY(4px)}.pop b{color:#ddd;font-weight:500}.pop a{color:#ccc}.credits:hover .pop,.credits:focus-within .pop{opacity:1;pointer-events:auto;transform:none}@keyframes flicker{0%,to{opacity:1;transform:scale(1)}40%{opacity:.82;transform:scale(.94)}55%{opacity:.95;transform:scale(1.04)}70%{opacity:.86}}@keyframes breathe{0%,to{opacity:.55}50%{opacity:1}}@keyframes sweep{0%{transform:translate(-100%)}to{transform:translate(340%)}}@keyframes pulse{0%{opacity:0;left:0}15%{opacity:1}85%{opacity:1}to{opacity:0;left:100%}}@media (width<=760px){#landing{justify-content:flex-start;padding-top:84px;padding-bottom:110px;overflow-y:auto}.modes,.how-grid{grid-template-columns:1fr}.bar{padding:14px 18px}.foot-bar{margin-top:28px;position:static}.screen h1{font-size:42px}.modal{place-items:start center}}@media (prefers-reduced-motion:reduce){*,:before,:after{transition:none!important;animation:none!important}}@media (height<=760px) and (width>=761px){.flame{display:none}.how-grid{grid-template-columns:1.6fr 1fr;gap:20px}.how-steps{gap:8px}.modal .panel{padding:18px 24px 16px}.modal h2{font-size:27px}.modal .lead{margin-bottom:12px;font-size:13.5px}.strip{margin-top:10px}.strip canvas{height:22px}.how-foot{margin-top:8px}}
