#game .lbl{display:block;font-size:14px;margin:0 0 4px;opacity:.85}
#game label{font-size:15px;display:inline-flex;align-items:center;gap:6px}
#game input.n,#game .rn-ex{font:inherit;font-size:15px;padding:6px 8px;border-radius:8px;border:1px solid var(--line);background:var(--bg);color:var(--fg);min-height:40px;user-select:text;-webkit-user-select:text}
#game input.n{width:120px}
#game .rn-ex{display:block;width:100%;margin-bottom:12px}
#game .rn-tilde{opacity:.6;font-weight:700}
#game .chk input{width:18px;height:18px;accent-color:var(--accent)}
#game .info{font-size:14px;opacity:.75}
#game button.primary[data-act="draw"]{min-width:140px;font-weight:700}
#game .bar[hidden],#game .rn-hist[hidden]{display:none}
#game input.bad{border-color:#d4483b;outline:2px solid color-mix(in srgb,#d4483b 35%,transparent)}

#game .rn-stage{container-type:inline-size;border:1px solid var(--line);border-radius:14px;background:var(--bg);margin:4px 0 6px;padding:10px 12px 8px;text-align:center}
#game .rn-big{--len:1;font-size:clamp(30px,calc(100cqi / (var(--len) * .62)),120px);font-weight:800;line-height:1.15;font-variant-numeric:tabular-nums;color:var(--accent);min-height:1.15em;white-space:nowrap;overflow:hidden}
#game .rn-stage.spin .rn-big{color:var(--muted);opacity:.75}
#game .rn-stage.land .rn-big{animation:rn-pop .28s ease-out}
#game .rn-step{font-size:14px;opacity:.7;min-height:1.5em}
@keyframes rn-pop{0%{transform:scale(.82)}60%{transform:scale(1.08)}100%{transform:scale(1)}}

#game .out{display:flex;flex-wrap:wrap;gap:6px;margin:6px 0 10px;max-height:360px;overflow:auto}
#game .out:empty{display:none}
#game .num{background:var(--accent-soft,var(--bg));color:var(--fg);border:1px solid var(--line);border-radius:8px;padding:4px 10px;font-size:18px;font-weight:700;font-variant-numeric:tabular-nums;line-height:1.35;max-width:100%;overflow-wrap:anywhere}
#game .num.new{animation:rn-pop .22s ease-out}

#game .rn-hist{border-top:1px solid var(--line);margin-top:8px;padding-top:10px}
#game .rn-hhead{display:flex;justify-content:space-between;align-items:center;gap:8px;margin-bottom:6px}
#game .rn-hhead button{min-height:34px;padding:4px 10px;font-size:14px}
#game .rn-hlist{margin:0;padding-left:28px;max-height:240px;overflow:auto;font-size:14px;line-height:1.55;user-select:text;-webkit-user-select:text}
#game .rn-hlist li{margin-bottom:4px;overflow-wrap:anywhere}
#game .rn-hlist li span{opacity:.7}
@media (max-width:600px){#game input.n{width:96px}#game .num{font-size:16px}}
@media (prefers-reduced-motion:reduce){#game .rn-stage.land .rn-big,#game .num.new{animation:none}}
