:root{--ink:#16171d;--ink-2:#1e2030;--text:#f3efe6;--muted:#a9a6b8;--pink:#ff4fa3;--yellow:#ffd23f;--teal:#34e0c4;--red:#ff5a4f;--green:#5ee27a;--hair:#ffffff1a;--ui:Figtree, "Avenir Next", "Segoe UI", system-ui, sans-serif;--display:Anton, Impact, "Arial Narrow Bold", sans-serif;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}*{box-sizing:border-box}html{-webkit-text-size-adjust:100%}body{color:var(--text);font:500 17px/1.55 var(--ui);background:#0b0a10;margin:0;overflow-x:hidden}img{max-width:100%;height:auto;display:block}a{color:var(--teal)}.wrap{width:min(1120px,100% - 32px);margin:0 auto}.wm{font-family:var(--display);letter-spacing:2px;white-space:nowrap;font-weight:400;line-height:1}.wm b{color:var(--yellow);font-weight:inherit;text-shadow:3px 3px 0 var(--pink)}.wm i{color:var(--teal);text-shadow:3px 3px 0 var(--ink);margin-left:.18em;font-style:normal}.btn{font:22px var(--display);letter-spacing:1.5px;color:#111;background:var(--yellow);border-radius:14px;align-items:center;gap:10px;padding:14px 26px;text-decoration:none;transition:transform 80ms,box-shadow 80ms;display:inline-flex;box-shadow:0 6px #00000073}.btn:active{transform:translateY(4px);box-shadow:0 2px #00000073}.btn.sm{border-radius:11px;padding:8px 16px;font-size:17px;box-shadow:0 4px #00000073}.btn:focus-visible,a:focus-visible{outline:3px solid var(--teal);outline-offset:3px}.nav{z-index:10;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-bottom:1px solid var(--hair);background:#0b0a10d1;position:sticky;top:0}.nav .wrap{justify-content:space-between;align-items:center;height:62px;display:flex}.brand{align-items:center;gap:10px;font-size:24px;text-decoration:none;display:flex}.brand img{width:32px;height:32px}.hero{background:radial-gradient(circle at 70% 20%,#3a1a52 0,#17121f 45%,#0b0a10 80%);position:relative;overflow:hidden}.hero .wrap{grid-template-columns:1fr 1.25fr;align-items:center;gap:40px;padding:72px 0 88px;display:grid}.hero h1{margin:0 0 18px;font-size:clamp(64px,11vw,132px)}.hero .tag{font:800 clamp(22px, 2.6vw, 30px)/1.25 var(--ui);margin:0 0 30px}.hero .soon{color:var(--muted);margin-top:18px;font-size:15px;font-weight:600;display:block}.shot{background:var(--ink);border:1px solid #ffffff24;border-radius:18px;margin:0;overflow:hidden;box-shadow:0 30px 60px #0000008c,0 10px #00000059}.hero .shot{transform:rotate(-2deg)}.say{padding:96px 0}.say .wrap{grid-template-columns:1fr 1fr;align-items:center;gap:56px;display:grid}.say h2,.final h2{font:normal clamp(38px, 5vw, 58px)/1.02 var(--display);letter-spacing:1px;margin:0 0 14px}.say p{color:var(--muted);max-width:30ch;margin:0;font-size:19px}.demo{background:var(--ink-2);border:1px solid var(--hair);border-radius:22px;justify-items:start;gap:14px;padding:28px;display:grid;box-shadow:0 8px #00000059}.demo .bubble{color:#16171d;background:#f3efe6;border-radius:16px 16px 16px 4px;padding:10px 14px;font-style:italic;font-weight:700}.demo .bubble.npc{background:var(--teal);border-radius:16px 16px 4px;justify-self:end;font-style:normal}.dice{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.die{color:#16171d;width:44px;height:44px;font:26px var(--display);background:#fff;border-radius:10px;place-items:center;animation:2.8s cubic-bezier(.3,1.6,.5,1) infinite tumble;display:grid;box-shadow:0 4px #00000059}.die+.die{animation-delay:.12s}.chip{color:var(--teal);background:#34e0c424;border:1px solid #34e0c473;border-radius:999px;padding:5px 10px;font-size:14px;font-weight:800}.banner{font:34px var(--display);letter-spacing:2px;color:var(--green);text-shadow:3px 3px #00000080;animation:2.8s ease-out infinite land}@keyframes tumble{0%{opacity:0;transform:rotate(-200deg)scale(.6)}18%,to{opacity:1;transform:none}}@keyframes land{0%,30%{opacity:0;transform:scale(1.6)}42%,to{opacity:1;transform:none}}.shots{padding:0 0 96px}.grid{grid-template-columns:repeat(3,1fr);gap:22px;display:grid}.grid figure{margin:0}.grid figcaption{font:22px var(--display);letter-spacing:1px;margin-top:12px}.grid .wide{grid-column:span 2}.city{padding:0 0 96px}.tags{flex-wrap:wrap;justify-content:center;gap:10px;display:flex}.tags span{font:800 16px var(--ui);background:var(--ink-2);border:1px solid var(--hair);border-radius:999px;padding:10px 16px}.tags span:nth-child(3n+1){color:var(--yellow)}.tags span:nth-child(3n+2){color:var(--teal)}.tags span:nth-child(3n){color:var(--pink)}.final{text-align:center;background:radial-gradient(circle at 50% 100%,#3a1a52 0,#0b0a10 65%);padding:88px 0 104px}.final h2{margin-bottom:26px}footer{border-top:1px solid var(--hair);color:var(--muted);padding:28px 0 40px;font-size:14px}footer .wrap{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:14px 22px;display:flex}footer nav{flex-wrap:wrap;gap:8px 20px;display:flex}footer a{color:var(--muted);font-weight:700;text-decoration:none}footer a:hover{color:var(--text)}.doc{padding:56px 0 80px}.doc .wrap{width:min(760px,100% - 32px)}.doc h1{font:normal clamp(40px, 6vw, 60px)/1.05 var(--display);letter-spacing:1px;margin:0 0 6px}.doc .updated{color:var(--muted);margin:0 0 32px;font-size:15px}.doc h2{font:800 22px/1.3 var(--ui);color:var(--yellow);margin:40px 0 10px}.doc h3{font:800 18px/1.3 var(--ui);margin:24px 0 6px}.doc p,.doc li{color:#dcd8cd}.doc ul,.doc ol{padding-left:22px}.doc li{margin:6px 0}.doc table{border-collapse:collapse;width:100%;margin:12px 0;font-size:15px}.doc th,.doc td{text-align:left;vertical-align:top;border-bottom:1px solid var(--hair);padding:10px 10px 10px 0}.doc th{color:var(--muted);font-weight:800}.doc .card{background:var(--ink-2);border:1px solid var(--hair);border-radius:16px;margin:18px 0;padding:18px 20px}.doc .card p:first-child{margin-top:0}.doc .card p:last-child{margin-bottom:0}.doc .steps{counter-reset:s;padding:0;list-style:none}.doc .steps li{counter-increment:s;margin:14px 0;padding-left:44px;position:relative}.doc .steps li:before{content:counter(s);background:var(--yellow);color:#111;width:30px;height:30px;font:18px var(--display);border-radius:9px;place-items:center;display:grid;position:absolute;top:-2px;left:0}.doc code{background:#ffffff14;border-radius:6px;padding:1px 6px}.guide .wrap,.guides .wrap,.about .wrap{width:min(680px,100% - 32px)}.guide h1{margin-bottom:14px;font-size:clamp(36px,6vw,52px);line-height:1.08}.byline{color:var(--muted);margin:0 0 32px;font-size:15px;font-weight:600}.byline a{color:var(--text);font-weight:800;text-decoration:none}.byline a:hover{text-decoration:underline}.prose p,.prose li{font-size:18px;line-height:1.65}.prose h2,.prose h3{scroll-margin-top:80px}.prose a{text-underline-offset:2px}.prose figure{margin:28px 0}.prose img{background:var(--ink);border:1px solid #ffffff24;border-radius:14px}.prose figcaption{color:var(--muted);margin-top:8px;font-size:14px}.prose .table{margin:16px 0 24px;overflow-x:auto}.prose .table table{margin:0}.prose .table th,.prose .table td{min-width:7em}.prose blockquote{border-left:3px solid var(--pink);margin:22px 0;padding:2px 0 2px 18px}.prose pre{background:var(--ink-2);border:1px solid var(--hair);border-radius:12px;padding:14px 16px;font-size:14px;line-height:1.5;overflow-x:auto}.prose pre code{background:0 0;padding:0}.prose hr{border:0;border-top:1px solid var(--hair);margin:36px 0}.cta{text-align:center;border:1px solid var(--hair);background:radial-gradient(circle at 50% 130%, #3a1a52 0, var(--ink-2) 70%);border-radius:22px;margin:56px 0 0;padding:32px 24px}.doc .cta p{font:normal clamp(32px, 5vw, 42px)/1.05 var(--display);letter-spacing:1px;color:var(--text);margin:0 0 20px}.more{margin-top:48px}.more h2 a{color:inherit;text-decoration:none}.more ul{padding:0;list-style:none}.more li a{color:var(--text);font-weight:700;text-decoration:none}.more li a:hover{color:var(--teal)}.doc .guide-list{margin:0;padding:0;list-style:none}.doc .guide-list li{border-bottom:1px solid var(--hair);margin:0;padding:22px 0}.doc .guide-list h2{font:800 21px/1.3 var(--ui);margin:0 0 6px}.guide-list h2 a{color:var(--text);text-decoration:none}.guide-list h2 a:hover{color:var(--teal)}.guide-list p{margin:0 0 6px}.doc .guide-list .meta{color:var(--muted);margin:0;font-size:14px;font-weight:600}.about .links{padding:0;list-style:none}.about .links a{font-weight:800}@media (width<=860px){.hero .wrap,.say .wrap{grid-template-columns:1fr;gap:36px;padding:48px 0 64px}.hero .shot{transform:none}.say{padding:64px 0}.say .wrap{padding:0}.grid{grid-template-columns:1fr}.grid .wide{grid-column:auto}.btn{font-size:20px}}@media (width<=720px){.prose .table table{width:max-content;min-width:100%}.prose .table th,.prose .table td{max-width:16em}}@media (prefers-reduced-motion:reduce){.die,.banner{animation:none}}
