:root{--bg: #07050c;--bg-2: #0e0a17;--panel: #110c1c;--panel-2: #181128;--panel-3: #201736;--line: #2a1f3d;--line-2: #3b2b57;--text: #ece6f5;--muted: #8f86a6;--gold: #f6c343;--gold-2: #ffd86b;--magenta: #ff3d9a;--cyan: #29e0f0;--green: #45e08a;--red: #ff4a4a;--purple: #7b3fe4;--accent: var(--gold);--accent-2: var(--magenta);--good: var(--green);--bad: var(--red);--health: var(--magenta);--stamina: var(--cyan);--momentum: var(--gold);--radius: 0;--font: ui-sans-serif, system-ui, -apple-system, "Segoe UI", Roboto, sans-serif;--mono: ui-monospace, SFMono-Regular, Menlo, Consolas, monospace;--px: "Press Start 2P", "Silkscreen", monospace;--px2: "Silkscreen", "Press Start 2P", monospace}*{box-sizing:border-box}html{background:var(--bg);-webkit-text-size-adjust:100%;text-size-adjust:100%}body{margin:0;-webkit-tap-highlight-color:transparent;overscroll-behavior-y:none;color:var(--text);font-family:var(--font);font-size:15px;line-height:1.45;background:radial-gradient(ellipse 900px 420px at 50% -80px,rgba(123,63,228,.22),transparent 70%),radial-gradient(ellipse 600px 300px at 15% 100%,rgba(255,61,154,.08),transparent 70%),radial-gradient(ellipse 600px 300px at 85% 100%,rgba(41,224,240,.06),transparent 70%),var(--bg);min-height:100vh;min-height:100dvh;padding-left:env(safe-area-inset-left);padding-right:env(safe-area-inset-right)}body:before{content:"";position:fixed;top:0;right:0;bottom:0;left:0;pointer-events:none;z-index:100;background:repeating-linear-gradient(0deg,rgba(0,0,0,.1) 0 1px,transparent 1px 3px),radial-gradient(ellipse at center,transparent 55%,rgba(0,0,0,.55) 100%)}button{font:inherit;color:inherit;cursor:pointer;-webkit-appearance:none;appearance:none;border-radius:0;touch-action:manipulation;-webkit-touch-callout:none;-webkit-user-select:none;user-select:none}canvas{-webkit-touch-callout:none;-webkit-user-select:none;user-select:none;touch-action:manipulation}h1,h2,h3{margin:0 0 10px;line-height:1.2;font-family:var(--px);font-weight:400}h1{font-size:22px;letter-spacing:.02em;color:var(--gold);text-shadow:3px 3px 0 #000,0 0 18px rgba(246,195,67,.35)}h2{font-size:13px;color:var(--text);text-shadow:2px 2px 0 #000}h2 .muted{font-family:var(--font);text-shadow:none}h3{font-size:9px;color:var(--muted);text-transform:uppercase;letter-spacing:.1em}h3:before{content:"// ";color:var(--magenta)}p{margin:0 0 8px}.muted{color:var(--muted)}.accent{color:var(--gold)}.good{color:var(--good)}.bad{color:var(--bad)}.small{font-size:13px}.mono{font-family:var(--mono)}.px{font-family:var(--px2)}.row{display:flex;gap:12px;flex-wrap:wrap;align-items:center}.between{justify-content:space-between}.grid{display:grid;gap:14px}.grid-2{grid-template-columns:repeat(auto-fit,minmax(300px,1fr))}.grid-3{grid-template-columns:repeat(auto-fit,minmax(230px,1fr))}#app{max-width:1060px;margin:0 auto;padding:calc(18px + env(safe-area-inset-top)) 16px 70px;position:relative}.panel{position:relative;background:linear-gradient(180deg,var(--panel-2),var(--panel));border:2px solid var(--line-2);padding:16px 18px;box-shadow:0 6px #000,inset 0 0 0 1px #ffffff06}.panel:before,.panel:after{content:"";position:absolute;width:10px;height:10px;border:2px solid var(--gold);pointer-events:none}.panel:before{top:-2px;left:-2px;border-right:0;border-bottom:0}.panel:after{bottom:-2px;right:-2px;border-left:0;border-top:0}.panel+.panel{margin-top:14px}.section{margin-top:18px}.topbar{display:flex;justify-content:space-between;align-items:center;gap:12px;flex-wrap:wrap;margin-bottom:16px;padding:10px 14px;background:linear-gradient(180deg,#160f25,#0c0814);border:2px solid var(--line-2);box-shadow:0 4px #000}.topbar .title{font-family:var(--px);font-size:13px;letter-spacing:.04em;color:var(--text);text-shadow:2px 2px 0 #000;display:flex;align-items:center;gap:14px;flex-wrap:wrap}.topbar .title .logo{color:var(--gold);text-shadow:2px 2px 0 #000,0 0 12px rgba(246,195,67,.45)}.topbar .title .logo span{color:var(--magenta);text-shadow:2px 2px 0 #000,0 0 12px rgba(255,61,154,.5)}.hud{display:flex;gap:10px;flex-wrap:wrap;align-items:center}.chip{font-family:var(--px2);font-size:13px;letter-spacing:.04em;background:#000;border:1px solid var(--line-2);padding:3px 8px;color:var(--muted)}.chip b{color:var(--text);font-weight:400}.chip.money b{color:var(--gold)}.chip.hype b{color:var(--cyan)}.btn{background:linear-gradient(180deg,var(--panel-3),var(--panel-2));border:2px solid var(--line-2);border-bottom-width:4px;padding:10px 14px;text-align:left;transition:transform .05s,border-color .1s,filter .1s;font-family:var(--px2);font-size:15px;letter-spacing:.02em;color:var(--text)}@media(hover:hover){.btn:hover:not(:disabled){border-color:var(--gold);filter:brightness(1.15)}.btn.primary:hover:not(:disabled){filter:brightness(1.08);border-color:#fff0b0}.card.selectable:hover{border-color:var(--gold)}.sell:hover{color:var(--green);border-color:var(--green)}}.btn:active:not(:disabled){transform:translateY(2px);border-bottom-width:2px}.btn:disabled{opacity:.4;cursor:not-allowed}.btn.primary{background:linear-gradient(180deg,var(--gold-2),var(--gold));color:#1a1208;border-color:#b8891a;box-shadow:0 0 14px #f6c34340}.btn.danger{border-color:var(--red)}.btn.block{display:block;width:100%}.btn .sub{display:block;color:var(--muted);font-size:12px;margin-top:4px;font-family:var(--font);letter-spacing:0}.btn.primary .sub{color:#3a2a08}.btn.selected{border-color:var(--cyan);box-shadow:inset 0 0 0 1px var(--cyan),0 0 10px #29e0f040}.btn.small{font-size:12px;padding:6px 10px;border-bottom-width:3px}.card{background:var(--panel-2);border:2px solid var(--line);padding:12px 14px;position:relative}.card.selectable{cursor:pointer}.card.selected{border-color:var(--gold);box-shadow:inset 0 0 0 1px var(--gold),0 0 14px #f6c34326}.card .name{font-family:var(--px2);font-size:18px;letter-spacing:.02em}.card.offer{border-top:4px solid var(--line-2);display:flex;flex-direction:column}.card.offer .btn{margin-top:auto;align-self:flex-start}.card.offer.kind-technique{border-top-color:var(--magenta)}.card.offer.kind-upgrade{border-top-color:var(--green)}.card.offer.kind-gear{border-top-color:var(--cyan)}.card.offer.kind-coach{border-top-color:var(--gold)}.card.offer.kind-supplement{border-top-color:var(--purple)}.tag{display:inline-block;font-family:var(--px2);font-size:11px;text-transform:uppercase;letter-spacing:.1em;color:var(--muted);border:1px solid var(--line-2);background:#000;padding:2px 6px;margin-left:6px;vertical-align:middle}.tag.heavy{color:#ff7a5c;border-color:#6b2a1e}.tag.slick{color:var(--cyan);border-color:#17565c}.tag.mule{color:var(--green);border-color:#1f5a3a}.tag.title{color:var(--gold);border-color:var(--gold)}.stat{display:flex;justify-content:space-between;padding:3px 0;border-bottom:1px dashed var(--line)}.stat b{font-family:var(--px2);font-size:16px;color:var(--gold)}.bar{position:relative;height:12px;background:#000;border:1px solid var(--line-2);overflow:hidden}.bar>i{position:absolute;inset:0 auto 0 0;display:block;transition:width .25s ease;background-image:repeating-linear-gradient(90deg,transparent 0 7px,rgba(0,0,0,.35) 7px 8px)}.bar.health>i{background-color:var(--health);box-shadow:0 0 8px #ff3d9a80}.bar.stamina>i{background-color:var(--stamina);box-shadow:0 0 8px #29e0f080}.bar.momentum>i{background-color:var(--momentum);box-shadow:0 0 8px #f6c34380}.bar.energy>i{background-color:var(--green);box-shadow:0 0 8px #45e08a80}.barlabel{display:flex;justify-content:space-between;font-size:12px;color:var(--muted);margin-bottom:3px;font-family:var(--px2);letter-spacing:.04em}.barlabel b{color:var(--text);font-weight:400}.actions{display:grid;grid-template-columns:repeat(auto-fit,minmax(210px,1fr));gap:10px}.actions .btn{display:flex;gap:12px;align-items:flex-start}.actions .btn canvas.icon{width:32px;height:32px;image-rendering:pixelated;flex:none;margin-top:2px}.actions .btn .body{display:block;flex:1}.slots{display:flex;gap:4px}.slots i{width:22px;height:10px;background:#000;border:1px solid var(--line-2)}.slots i.used{background:var(--gold);box-shadow:0 0 6px #f6c34399}.messages{margin-top:12px;min-height:22px}.messages div{padding:6px 10px;background:#000;border-left:3px solid var(--cyan);margin-bottom:4px;font-size:14px;font-family:var(--mono)}.pill{display:inline-block;padding:3px 9px;background:#000;border:1px solid var(--line-2);font-size:12px;font-family:var(--px2);letter-spacing:.03em}.pill.on{border-color:var(--gold);color:var(--gold)}.pill .lv{color:var(--green);font-size:11px}.sellable{display:inline-flex;align-items:stretch}.sell{background:#000;border:1px solid var(--line-2);border-left:0;color:var(--muted);font-size:11px;padding:0 8px;font-family:var(--px2)}.quirk{margin-top:10px;padding:8px 10px;border-left:3px solid var(--magenta);background:#000}.hint{grid-column:1 / -1;margin:-2px 0 4px}.why{text-align:left;max-width:560px;margin:16px auto;padding:12px 14px;background:#000;border:2px solid var(--line-2)}.why .small{margin-bottom:5px}.strikes{display:inline-flex;gap:4px;vertical-align:middle}.strikes i{width:10px;height:10px;border:1px solid var(--red);display:inline-block;background:#000}.strikes i.hit{background:var(--red);box-shadow:0 0 6px #ff4a4ab3}.gameplan-row{display:grid;grid-template-columns:90px 1fr;gap:8px;align-items:center;margin-bottom:10px}.gameplan-row>b{font-family:var(--px2);font-size:14px}.gameplan-row .opts{display:grid;grid-template-columns:repeat(4,1fr);gap:6px}.ring{background:#000;border:2px solid var(--line-2);overflow:hidden;line-height:0;box-shadow:0 6px #000,0 0 30px #7b3fe42e}.ring canvas{width:100%;height:auto;image-rendering:-webkit-optimize-contrast;image-rendering:crisp-edges;image-rendering:pixelated;display:block}canvas.portrait{width:76px;height:96px;image-rendering:pixelated;border:2px solid var(--line-2);flex:none;background:#000}canvas.portrait.big{width:114px;height:144px}.looks{display:grid;grid-template-columns:repeat(auto-fill,minmax(124px,1fr));gap:8px}.lookcard{text-align:center;padding:8px}.lookcard canvas{margin:0 auto 6px;display:block}canvas.hero{width:100%;max-width:640px;height:auto;image-rendering:pixelated;border:2px solid var(--line-2);display:block;margin:0 auto 14px}.fightcontrols{display:flex;gap:8px;margin-top:12px;align-items:center;flex-wrap:wrap}.log{margin-top:12px;background:#000;border:2px solid var(--line-2);padding:10px 12px;height:240px;overflow-y:auto;font-family:var(--mono);font-size:13px}.log div{padding:2px 0;color:var(--muted)}.log .hit{color:var(--text)}.log .miss{color:var(--muted)}.log .round{color:var(--gold);font-family:var(--px2);font-size:14px;margin-top:8px;border-top:1px dashed var(--line-2);padding-top:6px}.log .signature{color:var(--gold);font-weight:700}.log .crowd{color:#b8a76b;font-style:italic}.log .ko{color:var(--red);font-family:var(--px2);font-size:15px}.log .decision{color:var(--green);font-family:var(--px2);font-size:15px}.log .status{color:var(--cyan)}.log .info{color:var(--muted)}.hero{position:relative;text-align:center;padding:0 0 20px}.hero .attract{width:100%;height:auto;image-rendering:pixelated;display:block;border:2px solid var(--line-2);box-shadow:0 8px #000,0 0 40px #7b3fe440}.hero .logo-wrap{position:absolute;left:0;right:0;top:7%;pointer-events:none}.hero h1.logo{font-size:52px;margin:0;color:var(--gold);text-shadow:4px 4px 0 #000,0 0 24px rgba(246,195,67,.55),0 0 60px rgba(255,61,154,.35);animation:neon 4s infinite}.hero h1.logo span{color:var(--magenta);text-shadow:4px 4px 0 #000,0 0 24px rgba(255,61,154,.7)}.hero .tagline{font-family:var(--px2);font-size:18px;letter-spacing:.25em;color:var(--cyan);text-shadow:2px 2px 0 #000,0 0 12px rgba(41,224,240,.5);margin-top:8px}.hero .blurb{color:var(--muted);font-size:14px;max-width:640px;margin:14px auto 0}@keyframes neon{0%,18%,22%,to{opacity:1}19%,21%{opacity:.55}60%{opacity:1}61%{opacity:.8}62%{opacity:1}}.menu{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:10px;max-width:760px;margin:0 auto}.verdict{text-align:center;padding:22px 18px 26px}.verdict h1{font-size:46px;margin:8px 0 10px}.verdict h1.good{color:var(--green);text-shadow:4px 4px 0 #000,0 0 30px rgba(69,224,138,.5)}.verdict h1.bad{color:var(--red);text-shadow:4px 4px 0 #000,0 0 30px rgba(255,74,74,.5)}.verdict h1.accent{text-shadow:4px 4px 0 #000,0 0 30px rgba(246,195,67,.6)}table{width:100%;border-collapse:collapse;font-size:14px}th,td{text-align:left;padding:7px 8px;border-bottom:1px solid var(--line)}th{color:var(--muted);font-weight:400;font-family:var(--px2);font-size:12px;text-transform:uppercase;letter-spacing:.08em}textarea{width:100%;min-height:80px;background:#000;color:var(--text);border:2px solid var(--line-2);padding:8px;font-family:var(--mono);font-size:12px}input[type=text]{background:#000;color:var(--text);border:2px solid var(--line-2);padding:10px 12px;font:inherit;font-family:var(--px2);font-size:16px;width:100%;max-width:360px;-webkit-appearance:none;appearance:none;border-radius:0}textarea{-webkit-appearance:none;appearance:none;border-radius:0;font-size:16px}input[type=text]:focus{outline:none;border-color:var(--gold)}@media(max-width:640px){.gameplan-row{grid-template-columns:1fr}.gameplan-row .opts{grid-template-columns:repeat(2,1fr)}#app{padding:calc(10px + env(safe-area-inset-top)) 8px calc(96px + env(safe-area-inset-bottom))}.topbar{margin-bottom:10px;padding:8px 10px}.topbar .title{font-size:10px}.chip{font-size:11px}.hero h1.logo{font-size:30px}.hero .tagline{font-size:12px}.log{height:220px;font-size:12px;margin-top:8px}.fightcontrols{position:fixed;left:0;right:0;bottom:0;background:var(--panel);border-top:2px solid var(--line-2);padding:8px 8px calc(8px + env(safe-area-inset-bottom));margin:0;gap:6px;z-index:5}.fightcontrols .btn{padding:9px 6px;font-size:11px;flex:1 1 auto;text-align:center;white-space:nowrap}.wide,.chip.hype{display:none}.topbar .row .btn{font-size:11px;padding:6px 8px}.fightcontrols #fight-status{width:100%;order:10}.fightcontrols #continue-btn{margin-left:auto}.btn{font-size:14px}}@font-face{font-family:"Press Start 2P";font-style:normal;font-display:swap;font-weight:400;src:url(/assets/press-start-2p-latin-400-normal-_wFEWmAB.woff2) format("woff2"),url(/assets/press-start-2p-latin-400-normal-KLytu4cr.woff) format("woff")}@font-face{font-family:Silkscreen;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/silkscreen-latin-400-normal-CtPo2yA5.woff2) format("woff2"),url(/assets/silkscreen-latin-400-normal-D0DfPJut.woff) format("woff")}@font-face{font-family:Silkscreen;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/silkscreen-latin-700-normal-CSE2nhgM.woff2) format("woff2"),url(/assets/silkscreen-latin-700-normal-BjMPLkh0.woff) format("woff")}
