.roll-bank{padding:16px 0;border-top:1px solid #425764;border-bottom:1px solid #425764;margin:12px 0 18px;text-align:center}
.dice-pair{display:inline-flex;gap:18px;padding:12px 22px;background:#0b1823;border:1px solid #627c89;border-radius:14px;perspective:400px}
.dice-pair:disabled{opacity:1;cursor:default}.dice-pair:not(:disabled):hover{border-color:#e4bc74;box-shadow:0 0 18px #e4bc7433}.dice-pair:focus-visible{outline:3px solid #e4bc74;outline-offset:4px}
.die{display:grid;grid-template-columns:repeat(3,1fr);grid-template-rows:repeat(3,1fr);gap:4px;width:58px;height:58px;padding:10px;box-sizing:border-box;border-radius:10px;background:linear-gradient(135deg,#fff8e7,#ddcdaa);box-shadow:3px 5px 0 #9a8768,5px 8px 14px #0008;transform:rotate(-7deg)}
.die:nth-child(2){transform:rotate(8deg);background:linear-gradient(135deg,#e4f9ff,#96bacb);box-shadow:3px 5px 0 #537887,5px 8px 14px #0008}
.pip{border-radius:50%;background:#152330;display:block}.pip.empty{visibility:hidden}.roll-status{min-height:2.4em;font-size:13px!important;margin:12px 0 6px;color:#e1edf2!important}.bank-heading{font:600 12px system-ui!important;letter-spacing:.5px!important;margin:8px 0 12px!important;color:#b7cbd6}
.bank-stacks{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:8px;padding:0 3px}.bank-stack{position:relative;border:1px solid var(--card-color);border-radius:6px;background:linear-gradient(145deg,var(--card-color),#152732);box-shadow:2px 3px 0 #14232d,3px 4px 0 var(--card-color);padding:9px 1px 7px;min-width:0}.bank-icon{display:block;font-size:22px;color:#fff6df}.bank-name{display:block;font:10px system-ui;color:#fff;margin-top:4px}.harvest-receipts{display:flex;flex-wrap:wrap;gap:6px;margin-top:12px;justify-content:center}.harvest-receipts:empty{margin:0}.harvest-recipient{border:1px solid;border-radius:6px;background:#12232e;padding:6px 9px;font-size:12px;color:#eef6f8}
.flying-resource{position:fixed;z-index:1000;pointer-events:none;width:44px;height:60px;border:2px solid #ffe6ac;border-radius:6px;background:linear-gradient(135deg,var(--card-color),#132431);display:grid;place-items:center;color:white;font:bold 18px system-ui;box-shadow:0 6px 15px #0008}
.rolling .die{animation:dice-tumble .3s linear infinite}.rolling .die:nth-child(2){animation-direction:reverse;animation-delay:-.13s}
@keyframes dice-tumble{0%{transform:translateY(0) rotate(-15deg)}50%{transform:translateY(-10px) rotate(20deg)}100%{transform:translateY(0) rotate(-15deg)}}
@media(prefers-reduced-motion:reduce){.rolling .die{animation:none}}
