.board{--fd-row:40px;--fd-die:52px;flex-direction:column;gap:10px;min-height:0;padding:6px 10px 0;display:flex}.board.is-loading{opacity:.5}.fd-card{grid-template-columns:1fr 1fr;gap:8px;min-height:0;display:grid}.fd-col{grid-template-rows:repeat(7, var(--fd-row));gap:5px;min-width:0;display:grid}.fd-box,.fd-bonus{background:var(--surface);text-align:left;box-shadow:0 1px 0 var(--shadow);border-radius:12px;grid-template-rows:auto auto;grid-template-columns:minmax(0,1fr) auto;align-content:center;gap:0 8px;padding:0 10px;transition:background .14s,transform .1s,box-shadow .14s;display:grid}.fd-box-name{text-overflow:ellipsis;white-space:nowrap;grid-area:1/1;font-size:.78rem;font-weight:650;line-height:1.15;overflow:hidden}.fd-box-note{color:var(--text-dim);text-overflow:ellipsis;white-space:nowrap;grid-area:2/1;font-size:.6rem;line-height:1.2;overflow:hidden}.fd-box-value{text-align:right;font-variant-numeric:tabular-nums;grid-area:1/2/span 2;align-self:center;min-width:1.6em;font-size:1.02rem;font-weight:750}.fd-box:not(.is-filled) .fd-box-value{color:var(--accent);opacity:.72;font-weight:650}.fd-box.is-blank .fd-box-value{color:var(--text-dim);opacity:.4}.fd-box.is-selected{background:var(--accent-soft);box-shadow:inset 0 0 0 2px var(--accent)}.fd-box.is-selected .fd-box-value{opacity:1;font-weight:800}.fd-box.is-filled{background:color-mix(in srgb, var(--text-dim) 14%, var(--surface));box-shadow:none}.fd-box.is-filled .fd-box-note{visibility:hidden}.fd-box.is-zero .fd-box-value{color:var(--text-dim);text-decoration:line-through;text-decoration-thickness:2px}.fd-box:active:not(:disabled){transform:translateY(1px)}.fd-box.is-hinted{box-shadow:inset 0 0 0 2px var(--accent);animation:1.1s ease-in-out infinite fd-nudge}.fd-bonus{box-shadow:inset 0 0 0 1.5px var(--glass-edge);background:0 0}.fd-bonus .fd-box-value{color:var(--text-dim);font-weight:650}.fd-bonus.is-earned{background:var(--accent-soft);box-shadow:inset 0 0 0 1.5px var(--accent)}.fd-bonus.is-earned .fd-box-value{color:var(--accent);font-weight:800}.fd-foot{justify-content:space-between;align-items:baseline;gap:10px;min-height:24px;padding:0 4px;display:flex}.fd-status{color:var(--text-dim);font-size:.76rem}.fd-grand{color:var(--text-dim);font-variant-numeric:tabular-nums;white-space:nowrap;font-size:.82rem}.fd-grand b{color:var(--text);margin-left:4px;font-size:1.24rem;font-weight:800}.fd-foot{margin-top:auto}.fd-tray{justify-content:center;align-items:flex-end;gap:8px;padding-bottom:10px;display:flex}.fd-die{width:var(--fd-die);height:var(--fd-die);padding:calc(var(--fd-die) * .13);border-radius:calc(var(--fd-die) * .22);background:linear-gradient(160deg, var(--surface-raised), var(--surface));box-shadow:0 3px 0 var(--shadow), inset 0 0 0 1px var(--glass-edge);flex:none;grid-template-rows:repeat(3,1fr);grid-template-columns:repeat(3,1fr);transition:transform .13s,box-shadow .13s;display:grid;position:relative}.fd-die.is-held{background:linear-gradient(160deg, color-mix(in srgb, var(--accent) 26%, var(--surface-raised)), var(--surface));box-shadow:0 2px 0 var(--shadow), inset 0 0 0 2px var(--accent);transform:translateY(9px)}.fd-die:disabled{opacity:.9}.fd-die:active:not(:disabled){transform:translateY(11px)}.fd-die.is-held:active:not(:disabled){transform:translateY(2px)}.fd-pip{aspect-ratio:1;background:var(--text);opacity:0;border-radius:50%;place-self:center;width:64%}.fd-die[data-face="1"] .fd-pip:nth-child(5),.fd-die[data-face="2"] .fd-pip:nth-child(3),.fd-die[data-face="2"] .fd-pip:nth-child(7),.fd-die[data-face="3"] .fd-pip:nth-child(3),.fd-die[data-face="3"] .fd-pip:nth-child(5),.fd-die[data-face="3"] .fd-pip:nth-child(7),.fd-die[data-face="4"] .fd-pip:first-child,.fd-die[data-face="4"] .fd-pip:nth-child(3),.fd-die[data-face="4"] .fd-pip:nth-child(7),.fd-die[data-face="4"] .fd-pip:nth-child(9),.fd-die[data-face="5"] .fd-pip:first-child,.fd-die[data-face="5"] .fd-pip:nth-child(3),.fd-die[data-face="5"] .fd-pip:nth-child(5),.fd-die[data-face="5"] .fd-pip:nth-child(7),.fd-die[data-face="5"] .fd-pip:nth-child(9),.fd-die[data-face="6"] .fd-pip:first-child,.fd-die[data-face="6"] .fd-pip:nth-child(3),.fd-die[data-face="6"] .fd-pip:nth-child(4),.fd-die[data-face="6"] .fd-pip:nth-child(6),.fd-die[data-face="6"] .fd-pip:nth-child(7),.fd-die[data-face="6"] .fd-pip:nth-child(9){opacity:1}.fd-die.is-thrown{animation:.32s cubic-bezier(.3,1.4,.5,1) fd-tumble}@keyframes fd-tumble{0%{transform:translateY(-14px)rotate(-24deg)scale(.88)}60%{transform:translateY(2px)rotate(6deg)scale(1.04)}to{transform:translateY(0)rotate(0)scale(1)}}.fd-card.is-complete{animation:.5s ease-out fd-settle}@keyframes fd-settle{0%{transform:scale(1)}40%{transform:scale(1.014)}to{transform:scale(1)}}@keyframes fd-nudge{0%,to{box-shadow:inset 0 0 0 2px var(--accent)}50%{box-shadow:inset 0 0 0 2px var(--accent), 0 0 0 4px var(--accent-soft)}}.control.is-hinted:not(:disabled){background:var(--accent-soft);box-shadow:inset 0 0 0 2px var(--accent), 0 2px 0 var(--shadow);color:var(--text)}@media (prefers-reduced-motion:reduce){.fd-die.is-thrown,.fd-card.is-complete,.fd-box.is-hinted{animation:none}}.result-line b{font-size:2.1rem}@media (max-width:360px){.fd-box-note{display:none}.fd-box,.fd-bonus{grid-template-rows:auto;align-content:center}.fd-box-name{grid-row:1;font-size:.74rem}.fd-box-value{grid-row:1}}
