:root{color-scheme:dark;--bg:#081018;--surface:#0c1923e6;--surface-strong:#112838;--border:#7db1c738;--text:#f4fbff;--muted:#a3bac6;--accent:#fbbf24;--accent-2:#38bdf8;--success:#4ade80;--danger:#fb7185;--shadow:#01080d66}*{box-sizing:border-box}.sr-only{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}body{min-height:100vh;color:var(--text);background:radial-gradient(circle at 15% 10%,#fbbf2424,#0000 30%),radial-gradient(circle at 85% 20%,#38bdf82e,#0000 28%),linear-gradient(#081018,#091722 45%,#071018);margin:0;font-family:Space Grotesk,Segoe UI,sans-serif}button,input{font:inherit}button{cursor:pointer}button:disabled{cursor:not-allowed;opacity:.55}#diceApp{min-height:100vh}.dice-app{gap:1rem;min-height:100vh;padding:clamp(.9rem,2vw,1.5rem);display:grid}.dice-header,.dice-panel,.dice-stage,.dice-history,.dice-metric{border:1px solid var(--border);background:var(--surface);box-shadow:0 24px 54px var(--shadow)}.dice-header,.dice-panel,.dice-stage,.dice-history{border-radius:1rem}.dice-header{flex-wrap:wrap;justify-content:space-between;align-items:flex-end;gap:1rem;padding:1rem 1.15rem;display:flex}.dice-title{letter-spacing:-.03em;margin:0;font-size:clamp(2rem,5vw,4rem);line-height:.95}.dice-subtitle,.muted,.panel-copy{color:var(--muted);line-height:1.55}.dice-subtitle{max-width:50rem;margin:.6rem 0 0}.dice-actions,.panel-actions,.inline-actions,.metrics-grid,.history-grid{flex-wrap:wrap;gap:.75rem;display:flex}.button{border:1px solid var(--border);color:var(--text);background:#08131aeb;border-radius:999px;padding:.8rem 1.1rem;text-decoration:none}.button.primary{background:linear-gradient(135deg, var(--accent), var(--accent-2));color:#061018;border-color:#0000;font-weight:800}.dice-layout,.dice-live-layout{align-items:start;gap:1rem;display:grid}.dice-panel,.dice-history{padding:1rem}.field-grid{gap:.9rem;display:grid}.field{gap:.45rem;display:grid}.field span{color:var(--muted);font-size:.95rem}.field input{border:1px solid var(--border);width:100%;color:var(--text);background:#071219e0;border-radius:.85rem;padding:.9rem 1rem}.status{min-height:1.5rem;color:var(--muted);margin-bottom:.9rem}.status.success{color:var(--success)}.status.error{color:#ffc4cf}.metrics-grid{grid-template-columns:repeat(auto-fit,minmax(9rem,1fr));margin-top:1rem;display:grid}.dice-metric{background:linear-gradient(#112838f5,#08141cf5);border-radius:1rem;padding:1rem}.dice-metric strong{margin-top:.3rem;font-size:1.7rem;display:block}.dice-stage{justify-items:center;gap:1rem;padding:clamp(1rem,2.2vw,1.5rem);display:grid}.stage-head{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:1rem;width:100%;display:flex}.stage-kicker{color:var(--accent);text-transform:uppercase;letter-spacing:.12em;margin:0;font-size:.9rem}.stage-title{margin:.35rem 0 0;font-size:clamp(1.5rem,3vw,2.4rem)}.pill{color:var(--muted);background:#ffffff0d;border-radius:999px;align-items:center;gap:.35rem;padding:.45rem .75rem;display:inline-flex}.dice-machine{aspect-ratio:1;background:radial-gradient(circle at 30% 22%,#ffffff1f,#0000 28%),linear-gradient(#112838f0,#08131afa);border-radius:2rem;place-items:center;width:min(88vw,28rem);display:grid;position:relative;overflow:hidden}.dice-machine:before{content:"";border:1px solid #ffffff14;border-radius:1.7rem;position:absolute;inset:8%}.die{z-index:1;aspect-ratio:1;background:linear-gradient(#fcfdff,#dde7f0);border-radius:1.6rem;grid-template-rows:repeat(3,1fr);grid-template-columns:repeat(3,1fr);gap:.35rem;width:min(54vw,14rem);padding:1rem;transition:transform .64s cubic-bezier(.18,.88,.22,1),opacity .64s;display:grid;position:relative;box-shadow:inset 0 1px #ffffffd9,0 22px 40px #00000042}.die.is-rolling{animation:.24s linear infinite diceSpin}.die.is-settled{box-shadow:inset 0 1px #ffffffd9,0 0 0 14px #fbbf2417,0 22px 40px #00000047}.die-face-dot{opacity:0;background:#0c1720;border-radius:999px;place-self:center;width:.95rem;height:.95rem;transform:scale(.7)}.die-face-dot.visible{opacity:1;transform:scale(1)}.dice-history{width:100%}.history-grid{grid-template-columns:repeat(auto-fill,minmax(4.6rem,1fr));gap:.7rem;margin-top:1rem;display:grid}.history-item{background:linear-gradient(#112838f5,#08131af5);border:1px solid #ffffff14;border-radius:1rem;place-items:center;min-height:4.6rem;font-size:1.5rem;font-weight:800;display:grid}.history-item.latest{border-color:#fbbf246b;animation:.7s cubic-bezier(.18,.88,.22,1) historyPop}.empty-state{color:var(--muted);border:1px dashed #a3bac638;border-radius:1rem;padding:1rem}@keyframes diceSpin{0%{transform:rotate(-5deg)scale(.97)}50%{transform:rotate(6deg)scale(1.03)}to{transform:rotate(-5deg)scale(.97)}}@keyframes historyPop{0%{opacity:0;transform:translateY(-1rem)scale(.8)}to{opacity:1;transform:translateY(0)scale(1)}}@media (width>=900px){.dice-layout{grid-template-columns:minmax(18rem,28rem) minmax(0,1fr)}.dice-live-layout{grid-template-columns:minmax(0,1.3fr) minmax(18rem,24rem)}}@media (width<=640px){.button{text-align:center;width:100%}}