:root{--bg:#07040f;--bg-2:#0f0a22;--panel:#160e30d1;--panel-solid:#160e30;--line:#8b3dff59;--purple:#8b3dff;--magenta:#e040fb;--cyan:#22e6ff;--gold:#ffc83d;--red:#ff3b5c;--green:#3dffa8;--text:#ecebff;--muted:#9a94c4;--radius:14px;--font:"Segoe UI", system-ui, -apple-system, "Helvetica Neue", Arial, sans-serif;--display:"Trebuchet MS", "Segoe UI", system-ui, sans-serif;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}*{box-sizing:border-box}[hidden]{display:none!important}html,body{background:radial-gradient(1200px 600px at 20% -10%, #8b3dff40, transparent 60%), radial-gradient(900px 500px at 110% 10%, #22e6ff1f, transparent 60%), var(--bg);min-height:100%;color:var(--text);font-family:var(--font);-webkit-font-smoothing:antialiased;margin:0}a{color:var(--cyan)}button{font:inherit}#app{flex-direction:column;min-height:100vh;display:flex}.site-header{z-index:50;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-bottom:1px solid var(--line);background:#07040fd1;align-items:center;gap:18px;padding:10px clamp(12px,3vw,28px);display:flex;position:sticky;top:0}.brand{align-items:center;text-decoration:none;display:flex}.brand img{width:auto;height:44px;display:block}.header-actions{align-items:center;gap:10px;display:flex}.beta-badge{letter-spacing:.12em;text-transform:uppercase;color:#120a24;background:linear-gradient(135deg, var(--gold), #ff8a3d);border-radius:999px;margin-left:-10px;padding:3px 8px;font-size:10px;font-weight:900;text-decoration:none;box-shadow:0 0 12px #ffaa5059}.beta-line{color:var(--muted);margin:14px 0 0;font-size:12px}.beta-line strong{color:#ffb066;letter-spacing:.06em;text-transform:uppercase}.nav{flex:1;gap:4px;display:flex}.nav a{color:var(--muted);letter-spacing:.04em;text-transform:uppercase;border-radius:10px;padding:8px 12px;font-size:13px;font-weight:700;text-decoration:none}.nav a:hover{color:var(--text);background:#8b3dff26}.nav a.active{color:var(--text);background:linear-gradient(90deg,#8b3dff66,#22e6ff33)}.auth-slot{align-items:center;gap:8px;display:flex}.btn{appearance:none;cursor:pointer;letter-spacing:.03em;color:#120a24;background:linear-gradient(180deg, #ffe17a, var(--gold) 55%, #e59a12);white-space:nowrap;border:0;border-radius:12px;justify-content:center;align-items:center;gap:8px;padding:11px 20px;font-weight:800;text-decoration:none;transition:transform 80ms,filter .15s;display:inline-flex;box-shadow:0 4px #9a5d00,0 10px 24px #ffc83d40}.btn:hover{filter:brightness(1.08)}.btn:active{transform:translateY(2px);box-shadow:0 2px #9a5d00}.btn:disabled{cursor:not-allowed;filter:grayscale(.7)brightness(.7)}.btn.secondary{color:var(--text);box-shadow:0 3px 0 #0c0820, inset 0 0 0 1px var(--line);background:linear-gradient(#2d2160,#1b1340)}.btn.ghost{color:var(--text);box-shadow:inset 0 0 0 1px var(--line);background:0 0}.btn.small{border-radius:10px;padding:7px 12px;font-size:13px}.btn.big{padding:16px 34px;font-size:20px}.btn.ii{color:#fff;background:linear-gradient(90deg,#29abe2,#7b3fe4 45%,#ed1e79 75%,#f15a24);box-shadow:0 4px #3a1470,0 10px 24px #7b3fe459}.icon-btn{appearance:none;cursor:pointer;width:42px;height:42px;color:var(--text);box-shadow:inset 0 0 0 1px var(--line);background:#0f0a22b3;border:0;border-radius:12px;place-items:center;font-size:18px;display:grid}.icon-btn:hover{background:#8b3dff4d}.chip{box-shadow:inset 0 0 0 1px var(--line);color:var(--text);background:#8b3dff2e;border-radius:999px;align-items:center;gap:8px;padding:6px 10px 6px 6px;font-size:13px;font-weight:700;text-decoration:none;display:inline-flex}.chip img{object-fit:cover;border-radius:50%;width:26px;height:26px}.mono{font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace}main{flex:1;width:100%}.page{max-width:1080px;margin:0 auto;padding:clamp(16px,4vw,40px) clamp(12px,3vw,28px) 60px}.page h1{font-family:var(--display);background:linear-gradient(90deg, var(--gold), #ff8a3d 40%, var(--cyan));color:#0000;-webkit-background-clip:text;background-clip:text;margin:0 0 6px;font-size:clamp(28px,5vw,44px);font-style:italic;font-weight:900}.page .lead{color:var(--muted);margin:0 0 28px;font-size:17px;line-height:1.5}.panel{background:var(--panel);border-radius:var(--radius);box-shadow:inset 0 0 0 1px var(--line), 0 20px 50px #00000059;padding:20px}.panel h2{letter-spacing:.03em;margin:0 0 12px;font-size:18px}.grid-2{grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:18px;display:grid}.notice{color:#ffe9b0;background:#ffc83d1a;border-radius:12px;padding:12px 14px;font-size:14px;line-height:1.5;box-shadow:inset 0 0 0 1px #ffc83d66}.notice.info{color:#c9f8ff;background:#22e6ff14;box-shadow:inset 0 0 0 1px #22e6ff59}.notice.error{color:#ffc7d1;background:#ff3b5c1f;box-shadow:inset 0 0 0 1px #ff3b5c73}.muted{color:var(--muted)}.site-footer{border-top:1px solid var(--line);color:var(--muted);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px 24px;padding:16px clamp(12px,3vw,28px) 22px;font-size:13px;line-height:1.5;display:flex}.footer-main{flex-wrap:wrap;flex:420px;justify-content:flex-end;align-items:center;gap:10px 16px;display:flex}.socials{gap:8px;display:flex}.socials a{width:34px;height:34px;color:var(--muted);box-shadow:inset 0 0 0 1px var(--line);background:#ffffff0d;border-radius:50%;place-items:center;transition:color .15s,box-shadow .15s;display:grid}.socials a:hover{color:var(--text);box-shadow:inset 0 0 0 1px var(--cyan)}.socials svg{fill:currentColor;width:16px;height:16px}.powered-by{color:var(--muted);letter-spacing:.1em;text-transform:uppercase;opacity:.85;align-items:center;gap:10px;font-size:11px;font-weight:800;text-decoration:none;display:inline-flex}.powered-by img{width:auto;height:20px;display:block}.powered-by:hover{color:var(--text);opacity:1}.launchpad{color:var(--muted);letter-spacing:.1em;text-transform:uppercase;background:#ffffff0a;border-radius:999px;align-items:center;gap:10px;padding:7px 14px;font-size:11px;font-weight:800;text-decoration:none;display:inline-flex;box-shadow:inset 0 0 0 1px #ffd27a4d}.launchpad img{width:auto;height:18px;display:block}.launchpad:hover{color:var(--text);box-shadow:inset 0 0 0 1px #ffd27ab3}@media (max-width:720px){.site-footer,.footer-main{text-align:center;flex-direction:column;justify-content:center}.footer-main{flex-basis:auto}}a.btn{text-decoration:none}.token-icon{vertical-align:middle;border-radius:5px;flex:none;width:20px;height:20px}.token-icon.lg{vertical-align:-.35em;border-radius:.3em;width:1.4em;height:1.4em;margin-right:.4em;box-shadow:0 0 14px #54d6ff59}.play-wrap{width:100%;min-width:300px;max-width:calc(177.778vh - 248.889px);margin:16px auto 0;padding:0 clamp(8px,2vw,20px)}.game-frame{aspect-ratio:16/9;touch-action:none;-webkit-user-select:none;user-select:none;-webkit-touch-callout:none;background:#07040f;border-radius:16px;width:100%;position:relative;overflow:hidden;box-shadow:0 0 0 2px #8b3dff80,0 0 40px #8b3dff40,0 30px 60px #00000080}.game-canvas{position:absolute;inset:0}.game-canvas canvas{display:block}.hud{pointer-events:none;z-index:5;justify-content:space-between;align-items:flex-start;padding:clamp(6px,1.4vw,14px);display:flex;position:absolute;inset:0 0 auto}.hud-stats{flex-wrap:wrap;gap:clamp(4px,1vw,10px);display:flex}.hud-stat{box-shadow:inset 0 0 0 1px var(--line);background:#07040fb8;border-radius:10px;min-width:70px;padding:4px 10px}.hud-stat .label{color:var(--muted);text-transform:uppercase;letter-spacing:.08em;font-size:clamp(9px,1vw,11px);font-weight:700}.hud-stat .value{font-variant-numeric:tabular-nums;font-size:clamp(14px,2vw,22px);font-weight:900}.hud-stat.score .value{color:var(--gold)}.hud-stat.coins .value{color:#ffd76a}.hud-powerups{gap:6px;margin-top:6px;display:flex}.pu-chip{background:#22e6ff33;border-radius:999px;padding:3px 9px;font-size:12px;font-weight:800;box-shadow:inset 0 0 0 1px #22e6ff99}.hud-actions{pointer-events:auto;gap:8px;display:flex}.mode-tag{letter-spacing:.1em;text-transform:uppercase;color:var(--muted);pointer-events:none;z-index:5;background:#07040fa6;border-radius:999px;padding:3px 10px;font-size:11px;font-weight:800;position:absolute;bottom:8px;left:50%;transform:translate(-50%)}.overlay{z-index:10;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);background:radial-gradient(#0f08288c,#05020ce0);place-items:center;padding:16px;display:grid;position:absolute;inset:0;overflow:auto}.overlay[hidden]{display:none}.overlay-card{text-align:center;width:100%;max-width:560px}.overlay-card .logo{filter:drop-shadow(0 8px 30px #8b3dff80);width:min(380px,70%);height:auto}.overlay-card h2{font-family:var(--display);letter-spacing:.02em;margin:0 0 4px;font-size:clamp(20px,3.6vw,40px);font-style:italic;font-weight:900}.overlay-actions{flex-wrap:wrap;justify-content:center;gap:12px;margin-top:clamp(8px,1.5vw,16px);display:flex}@media (max-height:560px),(max-width:720px){.overlay-card .btn.big{padding:11px 24px;font-size:17px}[data-overlay=over] .controls-hint{display:none}.overlay-card .badge{margin-bottom:2px}}.controls-hint{color:var(--muted);margin-top:14px;font-size:13.5px;line-height:1.6}kbd{color:var(--text);background:#ffffff14;border-radius:6px;padding:1px 7px;font-family:inherit;font-size:12px;display:inline-block;box-shadow:inset 0 -2px #0006,inset 0 0 0 1px #ffffff26}.best-line{color:var(--gold);margin-top:10px;font-weight:700}.results{grid-template-columns:repeat(4,1fr);gap:8px;margin:10px 0 6px;display:grid}.results>div{box-shadow:inset 0 0 0 1px var(--line);background:#07040f99;border-radius:12px;padding:6px 4px}.results .label{color:var(--muted);text-transform:uppercase;letter-spacing:.08em;font-size:clamp(9px,1.1vw,11px);font-weight:700}.results .value{font-variant-numeric:tabular-nums;font-size:clamp(15px,2.4vw,24px);font-weight:900}.final-score{background:linear-gradient(180deg, #fff3b0, var(--gold) 60%, #e5850f);color:#0000;-webkit-background-clip:text;background-clip:text;font-size:clamp(34px,6.5vw,68px);font-style:italic;font-weight:900;line-height:1}.badge{letter-spacing:.08em;text-transform:uppercase;background:linear-gradient(90deg, var(--magenta), var(--purple));color:#fff;border-radius:999px;margin-bottom:8px;padding:4px 12px;font-size:12px;font-weight:900;display:inline-block}.submit-status{min-height:20px;color:var(--muted);font-size:13.5px}.submit-status.ok{color:var(--green)}.submit-status.err{color:#ff9aae}.rotate-hint{display:none}@media (max-width:720px){.nav a{padding:8px;font-size:12px}.brand img{height:34px}.site-header{flex-wrap:wrap;gap:8px}.beta-badge{margin-left:-2px}.header-actions{margin-left:auto}.nav{flex-basis:100%;order:3;justify-content:space-between}.play-wrap{max-width:100%;padding:0 6px}.overlay-card .logo{width:min(240px,55%)}}@media (max-width:720px) and (orientation:portrait){.rotate-hint{width:-moz-fit-content;width:fit-content;color:var(--text);background:#22e6ff1a;border-radius:999px;justify-content:center;align-items:center;gap:10px;margin:14px auto;padding:9px 16px;font-size:14px;font-weight:700;display:flex;box-shadow:inset 0 0 0 1px #22e6ff73}.rotate-icon{font-size:20px;animation:2.4s ease-in-out infinite rotate-phone;display:inline-block}}@keyframes rotate-phone{0%,30%{transform:rotate(0)}55%,85%{transform:rotate(-90deg)}to{transform:rotate(0)}}@media (prefers-reduced-motion:reduce){.rotate-icon{animation:none}}.touch-hint{display:none}@media (pointer:coarse){.controls-hint{display:none}.touch-hint{color:var(--muted);margin:10px 0 0;font-size:13px;display:block}}@media (pointer:coarse) and (orientation:portrait){.overlay{padding:8px}.overlay-card .logo{width:min(160px,42%)}.overlay-card p{margin:4px 0;font-size:13px}.pilot-line{gap:8px;margin-bottom:6px;padding:3px 12px 3px 3px;font-size:13px}.pilot-line img{width:26px;height:26px}.overlay-card .btn.big{padding:8px 22px;font-size:16px}.overlay-actions{gap:8px;margin-top:6px}.overlay-actions .btn{padding:7px 16px;font-size:14px}.touch-hint,.beta-line,.best-line{display:none}.overlay-card h2{font-size:18px}.overlay-card .badge{padding:2px 10px;font-size:10px}.final-score{font-size:28px}.results{gap:6px;margin:4px 0}.results>div{border-radius:9px;padding:3px 2px}.results .value{font-size:14px}.submit-status{min-height:16px;font-size:12px}}@media (max-width:420px){.nav a{letter-spacing:.02em;padding:7px 5px;font-size:11px}}@media (pointer:coarse) and (orientation:landscape) and (max-height:540px){.overlay-card .logo{width:min(300px,42%)}body[data-route=play] .site-header,body[data-route=play] .site-footer{display:none}body[data-route=play] .play-wrap{width:min(100vw - env(safe-area-inset-left) - env(safe-area-inset-right), 100dvh * 16 / 9);align-items:center;min-width:0;max-width:none;height:100dvh;margin:0 auto;padding:0;display:flex}body[data-route=play] .game-frame{box-shadow:none;border-radius:0}}.board-layout{grid-template-columns:2fr 1fr;align-items:start;gap:18px;display:grid}@media (max-width:760px){.board-layout{grid-template-columns:1fr}}table.board{border-collapse:collapse;font-variant-numeric:tabular-nums;width:100%}table.board th,table.board td{text-align:left;border-bottom:1px solid #8b3dff2e;padding:10px 8px}table.board th{text-transform:uppercase;letter-spacing:.08em;color:var(--muted);font-size:12px}table.board td.num,table.board th.num{text-align:right}table.board tr.me td{background:#ffc83d14}.rank-1{color:var(--gold);font-weight:900}.rank-2{color:#d9e2ff;font-weight:900}.rank-3{color:#ff9a5a;font-weight:900}.inline-form{flex-wrap:wrap;gap:8px;display:flex}.input{min-width:160px;box-shadow:inset 0 0 0 1px var(--line);color:var(--text);font:inherit;background:#07040fb3;border:0;border-radius:10px;outline:none;flex:1;padding:10px 12px}.input:focus{box-shadow:inset 0 0 0 2px var(--purple)}.addr{box-shadow:inset 0 0 0 1px var(--line);background:#07040fa6;border-radius:10px;align-items:center;gap:8px;margin:6px 0 14px;padding:10px 12px;display:flex}.addr code{word-break:break-all;flex:1;font-size:13px}.balance{font-variant-numeric:tabular-nums;font-size:34px;font-weight:900}.balance small{color:var(--muted);font-size:16px;font-weight:700}.kv{grid-template-columns:auto 1fr;gap:6px 16px;font-size:14px;display:grid}.kv dt{color:var(--muted)}.kv dd{text-align:right;margin:0;font-weight:700}.send-form{gap:6px;max-width:640px;display:grid}.send-form label{margin-top:6px;font-size:13px}.send-form .input{box-sizing:border-box;width:100%}.send-form .btn[type=submit]{justify-self:start;margin-top:8px}.amount-row{align-items:center;gap:8px;display:flex}.amount-row .input{min-width:0}.amount-row .unit{color:var(--muted);font-weight:800}.send-fee{margin:2px 0;font-size:12.5px}.send-summary{max-width:640px;margin:10px 0 14px}.send-summary dd code{word-break:break-all;font-size:12px;font-weight:600;display:block}.send-summary dd .muted{font-size:11px;font-weight:600;display:block}.large-ok{color:var(--gold);cursor:pointer;align-items:flex-start;gap:10px;margin:12px 0 4px;font-size:14px;font-weight:700;display:flex}.large-ok input{width:16px;height:16px;margin-top:3px}.hero-banner{border-radius:var(--radius);width:100%;box-shadow:0 0 0 1px var(--line), 0 20px 50px #0006;margin-bottom:28px;display:block}.timeline{gap:18px;padding-left:28px;display:grid;position:relative}.timeline:before{content:"";background:linear-gradient(180deg, var(--green), var(--cyan), var(--purple), var(--magenta));border-radius:3px;width:3px;position:absolute;top:6px;bottom:6px;left:9px}.phase{position:relative}.phase:before{content:"";background:var(--bg);width:15px;height:15px;box-shadow:0 0 0 3px var(--purple);border-radius:50%;position:absolute;top:22px;left:-26px}.phase.live:before{background:var(--green);box-shadow:0 0 0 3px var(--green), 0 0 18px var(--green)}.phase-head{flex-wrap:wrap;align-items:center;gap:10px;margin-bottom:8px;display:flex}.phase-head h3{margin:0;font-size:19px}.status{letter-spacing:.08em;text-transform:uppercase;color:#d8c4ff;background:#8b3dff40;border-radius:999px;padding:3px 9px;font-size:11px;font-weight:900}.status.live{color:var(--green);background:#3dffa82e}.status.next{color:var(--cyan);background:#22e6ff2e}.phase ul{color:#d6d3f5;margin:0;padding-left:18px;line-height:1.7}.utility-grid{grid-template-columns:repeat(auto-fit,minmax(170px,1fr));gap:14px;display:grid}.utility{box-shadow:inset 0 0 0 1px var(--line);background:#07040f8c;border-radius:12px;padding:16px}.utility .emoji{font-size:26px}.utility h4{margin:8px 0 6px}.utility p{color:var(--muted);margin:0;font-size:14px;line-height:1.5}.skins{grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:12px;display:grid}.skins figure{text-align:center;margin:0}.skins img{border-radius:12px;width:100%;display:block}.skins figcaption{letter-spacing:.06em;text-transform:uppercase;color:var(--muted);margin-top:6px;font-size:13px;font-weight:800}.section-title{margin:40px 0 14px;font-size:24px}.skins figure.locked img{filter:grayscale(.6)brightness(.6)}.pilot-grid{grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:16px;display:grid}.pilot-card{flex-direction:column;gap:10px;padding:14px;display:flex}.pilot-card.selected{box-shadow:inset 0 0 0 2px var(--gold), 0 0 28px #ffc83d40}.pilot-card p{flex:1;margin:0;font-size:14px;line-height:1.5}.pilot-art{aspect-ratio:185/151;object-fit:cover;border-radius:10px;width:100%;display:block}.pilot-art.mystery{box-shadow:inset 0 0 0 1px var(--line);background:radial-gradient(circle at 50% 40%,#8b3dff59,#07040fe6);position:relative;overflow:hidden}.pilot-art.mystery img{object-fit:contain;filter:brightness(0)invert(22%)sepia()saturate(6)hue-rotate(225deg)drop-shadow(0 0 8px #22e6ff8c);opacity:.9;width:64%;height:64%;position:absolute;inset:18%}.pilot-art.mystery span{font:900 72px var(--display);color:var(--cyan);text-shadow:0 0 18px #22e6ffcc;place-items:center;display:grid;position:absolute;inset:0}.pilot-head{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:6px 8px;display:flex}.pilot-head h3{white-space:nowrap;margin:0;font-size:20px}.pilot-head .status{white-space:nowrap}.pilot-line{color:var(--text);box-shadow:inset 0 0 0 1px var(--line);background:#8b3dff2e;border-radius:999px;align-items:center;gap:10px;margin-bottom:14px;padding:6px 14px 6px 6px;font-size:15px;text-decoration:none;display:inline-flex}.pilot-line img{object-fit:cover;border-radius:50%;width:34px;height:34px}.pilot-line .change{color:var(--cyan);font-size:13px;font-weight:700}.pilot-line:hover{box-shadow:inset 0 0 0 1px var(--cyan)}.toast{z-index:100;background:var(--panel-solid);box-shadow:inset 0 0 0 1px var(--line), 0 12px 30px #00000080;border-radius:12px;padding:10px 16px;font-size:14px;font-weight:700;position:fixed;bottom:24px;left:50%;transform:translate(-50%)}
