.dice-page{--dice-pip:color-mix(in srgb, var(--color-ink) 7%, transparent);--dice-glow:color-mix(in srgb, var(--color-accent) 17%, transparent);--dice-hair:var(--color-dim)}.dice-bg{z-index:-1;pointer-events:none;position:fixed;inset:0;overflow:hidden}.dice-bg-pips{background-size:180px 180px;background-image:radial-gradient(circle at 22px 22px, var(--dice-pip) 3.5px, transparent 4px), radial-gradient(circle at 46px 22px, var(--dice-pip) 3.5px, transparent 4px), radial-gradient(circle at 34px 34px, var(--dice-pip) 3.5px, transparent 4px), radial-gradient(circle at 22px 46px, var(--dice-pip) 3.5px, transparent 4px), radial-gradient(circle at 46px 46px, var(--dice-pip) 3.5px, transparent 4px), radial-gradient(circle at 112px 96px, var(--dice-pip) 3.5px, transparent 4px), radial-gradient(circle at 124px 108px, var(--dice-pip) 3.5px, transparent 4px), radial-gradient(circle at 136px 120px, var(--dice-pip) 3.5px, transparent 4px), radial-gradient(circle at 60px 146px, var(--dice-pip) 3.5px, transparent 4px), radial-gradient(circle at 84px 164px, var(--dice-pip) 3.5px, transparent 4px);animation:90s linear infinite dice-drift;position:absolute;inset:-180px}@keyframes dice-drift{0%{transform:translate(0,0)}to{transform:translate(-180px,-180px)}}.dice-bg-glow{background:radial-gradient(circle, var(--dice-glow) 0%, transparent 60%);border-radius:50%;width:110vmax;height:110vmax;margin:-55vmax 0 0 -55vmax;transition:transform 1.8s cubic-bezier(.4,0,.2,1);position:absolute;top:0;left:0;transform:translate(80vw,35vh)}.dice-bg[data-step="2"] .dice-bg-glow{transform:translate(65vw,80vh)}.dice-bg[data-step="3"] .dice-bg-glow{transform:translate(85vw,70vh)}.dice-bg[data-step="4"] .dice-bg-glow{transform:translate(30vw,85vh)}.dice-bg[data-step="5"] .dice-bg-glow{transform:translate(10vw,40vh)}.dice-flow{z-index:4;pointer-events:none;width:14px;height:0;position:fixed;top:0;left:0}.dice-flow[hidden]{display:none}.dice-shaft{background:repeating-linear-gradient(to bottom, var(--color-accent) 0 8px, transparent 8px 14px);width:2px;animation:.8s linear infinite dice-flow;position:absolute;top:0;bottom:3px;left:6px}.dice-flow:after{content:"";border-right:2px solid var(--color-accent);border-bottom:2px solid var(--color-accent);width:10px;height:10px;position:absolute;bottom:1px;left:2px;transform:rotate(45deg)}@keyframes dice-flow{0%{background-position:0 0}to{background-position:0 14px}}.dice-step{color:var(--color-ink-muted);transition:color .3s}.dice-step[data-on]{color:var(--color-ink)}.dice-n{color:var(--color-ink-muted);border:1px solid var(--color-line);border-radius:var(--radius-full);flex:none;place-items:center;width:30px;height:30px;transition:background-color .3s,color .3s,border-color .3s;display:inline-grid;transform:translateY(-4px)}.dice-step[data-on] .dice-n{background:var(--color-accent);border-color:var(--color-accent);color:var(--color-accent-ink)}.dice-stage-col{top:calc(env(safe-area-inset-top,0px) + 9vh);position:sticky}.dice-stage{background:var(--color-surface-raised);border-radius:var(--radius-sm);gap:18px;padding:24px;display:grid}.dice-zone{font-family:var(--font-numeric);letter-spacing:.12em;text-transform:uppercase;color:var(--color-ink-muted);justify-content:space-between;gap:12px;font-size:11px;display:flex}.dice-zone b{color:var(--color-accent-bright);font-weight:400}.dice-vault{gap:8px;display:grid;position:relative}.dice-hex{grid-template-columns:repeat(4,auto);justify-content:start;gap:4px 16px;font-size:19px;transition:filter .5s,opacity .5s;display:grid}.dice-stage[data-step="2"] .dice-hex,.dice-stage[data-step="3"] .dice-hex{filter:blur(7px);opacity:.55}.dice-lock{opacity:0;pointer-events:none;width:56px;height:64px;margin:-32px 0 0 -28px;transition:opacity .4s,transform .4s;position:absolute;top:58%;left:50%;transform:scale(.7)}.dice-shackle{border:6px solid var(--color-ink);transform-origin:26px 34px;border-bottom:0;border-radius:16px 16px 0 0;width:32px;height:34px;transition:transform .5s;position:absolute;top:0;left:12px}.dice-body{background:var(--color-accent);border-radius:var(--radius-sm);width:56px;height:38px;position:absolute;bottom:0;left:0}.dice-body:after{content:"";background:var(--color-board-frame);border-radius:3px;width:6px;height:13px;position:absolute;top:12px;left:25px}.dice-stage[data-step="2"] .dice-lock,.dice-stage[data-step="3"] .dice-lock{opacity:1;transform:scale(1)}.dice-stage[data-step="4"] .dice-lock{opacity:1;transform:scale(1)translateY(-6px)}.dice-stage[data-step="4"] .dice-shackle{transform:translateY(-12px)rotate(-28deg)}.dice-fp{word-break:break-all;color:var(--color-ink-muted);border:1px solid var(--dice-hair);border-radius:var(--radius-sm);padding:10px 12px;font-size:13px;line-height:1.5;transition:border-color .4s,color .4s}.dice-stage[data-step="5"] .dice-fp{border-color:var(--color-success);color:var(--color-ink)}.dice-calc{color:var(--color-ink-muted);word-break:break-all;min-height:3em;font-size:13px;line-height:1.5}.dice-calc em{color:var(--color-accent-bright);font-style:normal}.dice-tray{border:8px solid var(--color-board-frame);background:var(--color-board-field);border-radius:var(--radius-sm);place-items:center;height:116px;display:grid;position:relative;overflow:hidden}.dice-tray svg{width:100%;height:100%;position:absolute;inset:0}.dice-pd{fill:var(--color-point-dark)}.dice-pl{fill:var(--color-point-light)}.dice-tray-dice{gap:10px;display:flex;position:relative}.dice-pair{gap:3px;display:flex}.dice-die{--s:32px;width:var(--s);height:var(--s);border-radius:calc(var(--s) * .18);background:var(--color-checker-you);border:1px solid var(--color-checker-them-edge);padding:calc(var(--s) * .12);grid-template-rows:repeat(3,1fr);grid-template-columns:repeat(3,1fr);display:grid;position:relative}.dice-die i{border-radius:var(--radius-full);margin:14%}.dice-die i.dice-pip{background:var(--color-checker-them)}.dice-die.dice-empty{border:1px dashed var(--color-checker-you);opacity:.6;background:0 0}.dice-deal{animation:.3s ease-out both dice-deal}@keyframes dice-deal{0%{transform:translateY(-14px)rotate(-25deg)scale(.8)}to{transform:translateY(0)rotate(0)scale(1)}}.dice-tray .dice-die:after{content:"";border-radius:calc(var(--s) * .26);border:2px solid var(--color-checker-you);opacity:0;transition:opacity .25s;position:absolute;inset:-5px}.dice-stage[data-step="5"] .dice-die:after{opacity:1}.dice-stage[data-step="5"] .dice-pair:nth-child(2) .dice-die:after{transition-delay:.24s}.dice-stage[data-step="5"] .dice-pair:nth-child(3) .dice-die:after{transition-delay:.48s}.dice-stage[data-step="5"] .dice-pair:nth-child(4) .dice-die:after{transition-delay:.72s}.dice-band{--dice-band:color-mix(in srgb, var(--color-surface-raised) 70%, transparent);background:var(--dice-band);box-shadow:0 0 0 100vmax var(--dice-band);clip-path:inset(0 -100vmax)}.dice-log{background:var(--color-surface);border-radius:var(--radius-sm);gap:2px;padding:12px;display:grid}.dice-row{border-radius:var(--radius-sm);font-family:var(--font-numeric);grid-template-columns:70px auto minmax(0,1fr);align-items:center;gap:14px;padding:6px 10px;font-size:13px;display:grid}.dice-st{color:var(--color-ink-muted);text-align:right}.dice-row[data-state=ok] .dice-st{color:var(--color-success)}.dice-row[data-state=bad]{background:color-mix(in srgb, var(--color-danger) 22%, var(--color-surface))}.dice-row[data-state=bad] .dice-st{color:var(--color-danger-text)}.dice-row .dice-pair{gap:6px}.dice-row button.dice-die{--s:34px;cursor:pointer;font:inherit}.dice-row button.dice-die:hover{border-color:var(--color-accent)}.dice-row button.dice-die:focus-visible{outline:2px solid var(--color-focus);outline-offset:3px}.dice-row button.dice-die[data-changed]{border:2px solid var(--color-danger-text)}.dice-verdict{min-height:3.2em;padding:14px 4px 4px;font-size:1.25rem}.dice-verdict[data-state=ok]{color:var(--color-success)}.dice-verdict[data-state=bad]{color:var(--color-danger-text)}.dice-pre{background:var(--color-surface);border:1px solid var(--dice-hair);border-radius:var(--radius-sm);color:var(--color-ink);margin:0;padding:12px 14px;line-height:1.7;overflow-x:auto}@media (width>=760px) and (width<=1060px){.dice-stage{gap:12px;padding:16px}.dice-hex{grid-template-columns:repeat(2,auto);gap:2px 14px;font-size:16px}.dice-fp,.dice-calc{font-size:12px}.dice-tray{border-width:6px;height:96px}.dice-tray .dice-die{--s:28px}.dice-tray-dice{gap:8px}}@media (width<=759px){.dice-stage-col{top:env(safe-area-inset-top,0px);z-index:5;background:var(--color-surface);margin-inline:-4px;padding-block:8px}.dice-stage{gap:10px;padding:14px}.dice-hex{gap:2px 8px;font-size:13px}.dice-fp,.dice-calc{font-size:11px}.dice-calc{min-height:3.2em}.dice-tray{border-width:6px;height:84px}.dice-tray .dice-die{--s:27px}.dice-tray-dice{gap:7px}.dice-row{grid-template-columns:52px auto minmax(0,1fr);gap:10px;padding:6px 4px}.dice-row button.dice-die{--s:36px}}
