:root{--bg: #1a0f14;--panel: #2a1820;--line: #452a35;--ink: #f7eaf0;--dim: #c79aab;--accent: #ff7aa2;--die: #f6f0f2;--bust: #ff4d6d}*{box-sizing:border-box}html,body{margin:0;height:100%}body{background:radial-gradient(900px 560px at 50% -8%,#2a141d,var(--bg));color:var(--ink);font-family:system-ui,-apple-system,Segoe UI,sans-serif;display:flex;justify-content:center;-webkit-user-select:none;user-select:none}#app{width:100%;max-width:460px;padding:12px 12px 26px}header{text-align:center;margin-bottom:6px}h1{margin:0;font-size:30px;letter-spacing:6px;font-weight:800;color:var(--accent)}.sub{margin:3px 0 0;color:var(--dim);font-size:13px}.bar{display:flex;gap:8px;justify-content:center;flex-wrap:wrap;align-items:center;margin:8px 0}.seg{display:inline-flex;background:var(--panel);border:1px solid var(--line);border-radius:999px;overflow:hidden}.seg button{background:none;border:none;color:var(--dim);padding:6px 13px;font:600 13px system-ui;cursor:pointer}.seg button.active{background:var(--accent);color:#2a0a14}.btn{background:var(--panel);border:1px solid var(--line);color:var(--ink);padding:9px 18px;border-radius:999px;font:700 14px system-ui;cursor:pointer}.btn:hover:not(:disabled){border-color:var(--accent)}.btn:disabled{opacity:.35;cursor:default}.btn.primary{background:var(--accent);color:#2a0a14;border-color:var(--accent)}.scores{display:flex;gap:12px;justify-content:center;margin:14px 0 6px}.pscore{flex:1;max-width:180px;text-align:center;background:var(--panel);border:2px solid var(--line);border-radius:14px;padding:10px 8px;transition:border-color .15s,transform .15s}.pscore.active{border-color:var(--accent);transform:translateY(-2px);box-shadow:0 4px 16px #ff7aa233}.pname{color:var(--dim);font-size:13px;font-weight:600;letter-spacing:1px;text-transform:uppercase}.pval{font-size:38px;font-weight:800;line-height:1.1;font-variant-numeric:tabular-nums}.pproj{color:var(--accent);font-size:14px;font-weight:700;min-height:18px}.stage{text-align:center;margin:14px 0}.die.big{width:92px;height:92px;margin:0 auto}.die{border-radius:16px;background:var(--die);position:relative;box-shadow:0 4px 10px #00000080}.die.empty{background:#2c1a23;box-shadow:none}.die .pip{position:absolute;width:15px;height:15px;border-radius:50%;background:#2a121b;transform:translate(-50%,-50%)}.die.bust{animation:bustflash .5s ease}@keyframes bustflash{0%{background:var(--bust);transform:rotate(0) scale(1.06)}40%{background:var(--bust)}to{background:var(--die);transform:rotate(0) scale(1)}}.turntotal{margin-top:12px;font-size:18px;color:var(--dim);min-height:24px}.turntotal strong{color:var(--accent);font-size:22px}.bustlabel{color:var(--bust);font-weight:800;letter-spacing:1px}.status{margin-top:6px;color:var(--dim);font-size:14px;min-height:20px}.actions{display:flex;gap:12px;justify-content:center;margin:8px 0 4px}.actions .btn{min-width:120px}.hint{text-align:center;color:var(--dim);font-size:12px;margin-top:14px}.overlay{position:fixed;inset:0;display:flex;align-items:center;justify-content:center;background:#10060acc;backdrop-filter:blur(3px)}.overlay.hidden{display:none}.modal{background:var(--panel);border:1px solid var(--line);border-radius:16px;padding:24px 28px;text-align:center;max-width:320px}.modal h2{margin:0 0 6px;font-size:24px;color:var(--accent)}.modal .big{font-size:40px;font-weight:800;color:var(--ink);margin:8px 0;font-variant-numeric:tabular-nums}.modal p{margin:6px 0;color:var(--dim);font-size:14px}
