:root{--night: #160c24;--well: #241536;--lantern: #ff9a4a;--ember: #ff5a36;--gold: #f4c14a;--moss: #5ee0b0;--paper: #f3e7d3;--mist: #b7a4d4;--ink: #0a0612;--frame: #6b3a22;color-scheme:dark}*{box-sizing:border-box}html,body{margin:0;min-height:100%;background:radial-gradient(1200px 600px at 50% -10%,#3a1a40 0%,transparent 55%),var(--night);color:var(--paper);font-family:Kiwi Maru,Hiragino Maru Gothic ProN,Yu Gothic,Noto Sans CJK JP,Noto Sans JP,sans-serif}body{min-height:100dvh}button{font-family:inherit;cursor:pointer}#app{width:min(1120px,100%);margin:0 auto;padding:16px 16px 28px;display:grid;gap:14px}.topbar{display:flex;justify-content:space-between;align-items:center;gap:12px}.brand{display:flex;gap:12px;align-items:center}.mark{width:42px;height:42px;display:grid;place-items:center;border-radius:12px;background:linear-gradient(160deg,var(--lantern),var(--ember));color:var(--ink);font-size:22px;box-shadow:0 0 24px #ff9a4a73}.eyebrow{margin:0;color:var(--lantern);font-size:11px;letter-spacing:.18em}h1,h2{margin:0;font-family:Reggae One,Kiwi Maru,serif;font-weight:400;letter-spacing:.04em}h1{font-size:28px;line-height:1.1}.stats{display:flex;gap:8px;align-items:center}.pill,.ghost{border:1px solid rgba(243,231,211,.16);background:#0a06128c;color:var(--paper);border-radius:999px;padding:6px 12px;font-size:13px}.pill.gold{color:var(--gold);border-color:#f4c14a59}.stage{display:grid;grid-template-columns:minmax(280px,460px) minmax(240px,1fr);gap:16px;align-items:start}.well-wrap{position:relative;background:var(--well);border:8px solid #4a2618;box-shadow:0 0 0 3px #c9843c,0 18px 50px #00000073,inset 0 0 80px #00000059;border-radius:18px;overflow:hidden;display:flex;flex-direction:column}#well{display:block;width:100%;height:auto;flex:1 1 auto;background:#12081c}.hud-float{position:absolute;top:14px;left:14px;pointer-events:none}.big-num{font-family:Share Tech Mono,monospace;font-size:42px;color:var(--gold);line-height:1;text-shadow:0 0 18px rgba(244,193,74,.35)}.big-num span{font-size:14px;margin-left:4px;color:var(--mist)}.muted{color:var(--mist);font-size:12px;margin-top:4px}.controls{display:grid;grid-template-columns:auto 1fr;gap:10px;padding:12px;background:linear-gradient(180deg,#0a061200,#0a0612eb 30%)}.die-btn{border:none;background:transparent;padding:0;width:92px;height:92px}.scene{width:72px;height:72px;margin:10px auto 0;perspective:420px}.die{width:72px;height:72px;position:relative;transform-style:preserve-3d;transform:rotateX(-18deg) rotateY(20deg);transition:transform .22s ease}.die.spinning{animation:tumble .7s linear infinite}.face{position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(160deg,#fff8ec,#f0d2a4);border:2px solid #c47a3a;border-radius:10px;display:grid;place-items:center;backface-visibility:hidden;box-shadow:inset 0 0 10px #783c1426}.f1{transform:rotateY(0) translateZ(36px)}.f6{transform:rotateY(180deg) translateZ(36px)}.f3{transform:rotateY(90deg) translateZ(36px)}.f4{transform:rotateY(-90deg) translateZ(36px)}.f2{transform:rotateX(90deg) translateZ(36px)}.f5{transform:rotateX(-90deg) translateZ(36px)}.pips{display:grid;width:46px;height:46px;place-items:center}.pips i{width:9px;height:9px;border-radius:50%;background:#2a1230;box-shadow:inset 0 1px #ffffff40}.p2,.p3,.p4,.p5,.p6{display:grid;gap:6px}.p2{grid-template-columns:1fr 1fr}.p3{grid-template-columns:1fr 1fr 1fr}.p4,.p5,.p6{grid-template-columns:1fr 1fr}.ctrl-col,.steer{display:grid;gap:6px}.steer{grid-column:1 / -1;grid-template-columns:1fr 1fr}.aim-chip{grid-column:1 / -1;margin:0;padding:6px 10px;border-radius:999px;background:#0a06129e;border:1px solid rgba(244,193,74,.28);color:var(--gold);font-size:12px;text-align:center;line-height:1.5}.aim-chip.hidden{display:none}.giveup{margin-top:12px;width:100%;background:#5ee0b014!important;color:var(--moss)!important;border:1px dashed rgba(94,224,176,.5)!important;font-size:13px}.ctrl-col button,.steer button,.sheet button,.shop button{border:0;border-radius:12px;padding:10px 12px;background:var(--lantern);color:var(--ink);font-weight:500}.ctrl-col button:nth-child(2){background:var(--moss)}.ctrl-col button.warn{background:#e07070;color:#1a0810}.ctrl-col button:nth-child(3),.steer button{background:#3a2448;color:var(--paper)}.steer button.on{box-shadow:0 0 0 2px var(--gold),0 0 16px #f4c14a59;background:#4a3060}.steer button.danger:not(:disabled){box-shadow:0 0 0 2px #ff5d8fb3;color:#ffc4d4}.steer button.on.danger:not(:disabled){box-shadow:0 0 0 2px var(--gold),0 0 14px #ff5d8f59}button:disabled{opacity:.38;cursor:not-allowed}button:focus-visible{outline:2px solid var(--gold);outline-offset:2px}.shop{background:#140a20b8;border:1px solid rgba(243,231,211,.1);border-radius:18px;padding:16px}.shop-lead{color:var(--mist);font-size:13px;margin:8px 0 0}.shop ul{list-style:none;margin:14px 0 0;padding:0;display:grid;gap:10px}.shop li{background:#0a061273;border-radius:14px;padding:12px;display:grid;gap:8px}.card-top{display:flex;justify-content:space-between;align-items:baseline}.shop h3{margin:0;font-size:16px}.lv{color:var(--gold);font-family:Share Tech Mono,monospace;font-size:12px}.shop p{margin:0;color:var(--mist);font-size:12px;line-height:1.6}.shop .effect{color:var(--gold);font-size:11px;letter-spacing:.02em}.shop .effect.next{color:var(--moss)}.modal{position:fixed;top:0;right:0;bottom:0;left:0;background:#06020c9e;display:grid;place-items:center;padding:20px;z-index:5}.modal.hidden{display:none}.sheet{width:min(420px,100%);background:linear-gradient(180deg,#2a1636,#160c24);border:1px solid rgba(255,154,74,.35);border-radius:20px;padding:28px 24px;text-align:center;box-shadow:0 20px 60px #00000073}.sheet h2{font-size:36px;margin:8px 0 12px}.sheet h2 small{font-size:16px;margin-left:6px;color:var(--mist)}.sheet p{color:var(--mist);line-height:1.7}.sheet.cashout{border-color:#5ee0b073;box-shadow:0 20px 60px #00000073,0 0 40px #5ee0b01f}.sheet.cashout .eyebrow{color:var(--moss)}.sheet.fall{border-color:#ff5d8f66}.sheet button{margin-top:12px;min-width:180px;font-size:16px}@keyframes tumble{to{transform:rotateX(420deg) rotateY(620deg)}}@media(max-width:820px){.stage{grid-template-columns:1fr}h1{font-size:22px}}@media(prefers-reduced-motion:reduce){.die,.die.spinning{animation:none;transition:none}}
