.dice-tray{display:flex;flex-wrap:wrap;justify-content:center;align-items:center;gap:24px 28px;padding:30px 18px 16px;margin:16px 0 0;min-height:140px;background:radial-gradient(ellipse,#36403d,#101a1b);border:1px solid #84735b;overflow:hidden;perspective:800px}
.game-die{--size:64px;--half:32px;--face:#e8ddc5;--ink:#20201d;--edge:#82786a;--star:#a42e24;position:relative;width:var(--size);height:98px;margin:9px 6px 0;perspective:600px}
.dice-camera{width:var(--size);height:var(--size);transform-style:preserve-3d;transform:rotateX(-20deg) rotateY(-28deg)}
.dice-cube{position:relative;width:100%;height:100%;transform-style:preserve-3d}
.dice-cube.show-1{transform:rotateX(0deg) rotateY(0deg)}.dice-cube.show-2{transform:rotateX(0deg) rotateY(-90deg)}.dice-cube.show-3{transform:rotateX(-90deg) rotateY(0deg)}.dice-cube.show-4{transform:rotateX(90deg) rotateY(0deg)}.dice-cube.show-5{transform:rotateX(0deg) rotateY(90deg)}.dice-cube.show-6{transform:rotateX(0deg) rotateY(180deg)}
.dice-face{position:absolute;inset:0;border:3px solid var(--edge);border-radius:6px;background:linear-gradient(135deg,#ffffff25,transparent 60%,#00000018),var(--face);backface-visibility:hidden;box-shadow:inset 0 0 0 1px #ffffff35,inset 0 0 0 3px #00000030;overflow:hidden}
.dice-face svg{width:100%;height:100%;fill:var(--ink);padding:1px}.dice-face .dice-star{fill:var(--star);stroke:var(--ink);stroke-width:.7}
.face-1{transform:translateZ(var(--half))}.face-6{transform:rotateY(180deg) translateZ(var(--half))}.face-2{transform:rotateY(90deg) translateZ(var(--half))}.face-5{transform:rotateY(-90deg) translateZ(var(--half))}.face-3{transform:rotateX(90deg) translateZ(var(--half))}.face-4{transform:rotateX(-90deg) translateZ(var(--half))}
.game-die.scarlet{--face:#a92522;--ink:#f7ead1;--edge:#401e1b;--star:#f7ead1}.game-die.mist{--face:#64716f;--ink:#f4ecd9;--edge:#b0b8ac;--star:#fff3d9}.game-die.mist .dice-face{background:radial-gradient(ellipse at 30% 60%,#e1ece655,transparent 70%),linear-gradient(140deg,#d7e1dc44,#263532aa 70%),var(--face);border-color:#a2b0a3}
.dice-value{display:block;text-align:center;color:#d9cfb9;font:700 .85rem Georgia,serif;margin-top:15px;line-height:1.2}.game-die.chosen .dice-value{color:#f7d28a}.game-die.chosen::after{content:'';position:absolute;left:9px;right:9px;bottom:-2px;border-bottom:2px solid #edc378}.game-die.rolling .dice-value{opacity:.35}
.dice-legend{display:flex;justify-content:center;flex-wrap:wrap;gap:6px 16px;font-size:.68rem;color:#77796e;padding:9px 0}.dice-legend span::before{content:'◆';margin-right:5px}.dice-legend .scarlet::before{color:#a92522}.dice-legend .mist::before{color:#778e8c}.dice-legend .ash::before{color:#b2a489}
.dice-bonus-sources{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin-top:12px}.dice-bonus-sources label{font-size:.7rem;display:grid;gap:5px}.dice-bonus-sources select{width:100%;padding:8px;background:#f7f1e6;color:#28302c;border:1px solid #aaa994}.dice-live-status{min-height:24px;text-align:center;font-size:.78rem;color:#7a7364}.roll-dialog.result-dialog{width:min(740px,100%)}
@media(max-width:500px){.game-die{--size:52px;--half:26px;height:86px}.dice-tray{gap:16px 20px;padding-inline:10px}.dice-bonus-sources{grid-template-columns:1fr}}
@media(prefers-reduced-motion:reduce){.dice-cube{transition:none}}
