.mini-game{border:1px solid var(--line);background:var(--paper-raised);text-align:center;border-radius:22px;justify-items:center;gap:18px;padding:clamp(16px,3vw,28px);display:grid}.mini-controls{flex-wrap:wrap;justify-content:center;align-items:end;gap:10px;display:flex}.mini-controls label{text-align:left;gap:4px;font-size:14px;font-weight:700;display:grid}.mini-controls select{border:1px solid var(--line);background:var(--paper);min-height:44px;color:var(--ink);font:inherit;border-radius:12px;padding:6px 10px}.mini-game button{border:1px solid var(--line);min-height:44px;color:var(--ink);font:inherit;cursor:pointer;background:0 0;border-radius:999px;padding:8px 18px;font-weight:700}.mini-game .mini-primary{border-color:var(--brand-dark);background:var(--brand-dark);color:var(--brand-ink);padding:12px 28px;font-size:18px}.mini-game button:disabled{opacity:.5;cursor:not-allowed}.mini-result{min-height:1.6em;font-family:var(--display);margin:0;font-size:clamp(20px,3vw,28px);font-weight:700}.mini-result.is-win{color:#2e9d62}.mini-result.is-lose{color:var(--brand)}.mini-stats{text-align:left;width:min(100%,520px)}.mini-stats h3{margin:12px 0 6px;font-size:16px}.mini-stats p,.mini-score{color:var(--ink-soft);margin:0}.coin-stage{flex-wrap:wrap;justify-content:center;align-items:center;gap:12px;min-height:132px;display:flex}.coin{color:#4a3300;width:120px;height:120px;font-family:var(--display);background:radial-gradient(circle at 35% 30%,#ffe58a,#d4a017 60%,#a87b0a);border:6px solid #b8860b;border-radius:50%;place-items:center;font-size:22px;font-weight:800;display:grid;box-shadow:inset 0 0 0 4px #ffffff59,0 8px 18px #00000040}.coin-stage:has(.coin:nth-child(2)) .coin{border-width:4px;width:72px;height:72px;font-size:14px}.coin.is-tails{color:#2a2f35;background:radial-gradient(circle at 35% 30%,#f3f3f3,#b9bec4 60%,#8b9198);border-color:#7b8189}@media (prefers-reduced-motion:no-preference){.coin.is-flipping{animation:.7s ease-in-out coin-flip}}@keyframes coin-flip{0%{transform:rotateY(0)translateY(0)}50%{transform:rotateY(900deg)translateY(-40px)}to{transform:rotateY(1800deg)translateY(0)}}.coin-bar{background:#b9bec4;border-radius:999px;height:12px;overflow:hidden}.coin-bar span{background:#d4a017;height:100%;display:block}.coin-history{flex-wrap:wrap;gap:6px;margin:0;padding:0;list-style:none;display:flex}.coin-history li{border-radius:999px;padding:3px 10px;font-size:13px;font-weight:700}.coin-history li.is-heads{color:#4a3300;background:#fbe7a6}.coin-history li.is-tails{color:#2a2f35;background:#dde1e5}.rps-board{justify-content:center;align-items:center;gap:clamp(16px,5vw,48px);display:flex}.rps-hand{gap:6px;display:grid}.rps-hand span{color:var(--ink-soft);font-weight:700}.rps-hand strong{font-size:clamp(56px,12vw,88px);line-height:1}.rps-vs{color:var(--brand);font-family:var(--display);font-size:22px;font-weight:800}.rps-moves{flex-wrap:wrap;justify-content:center;gap:10px;display:flex}.rps-moves button{min-width:120px;font-size:18px}.rps-moves button span{font-size:24px}.counter-field{text-align:left;gap:6px;width:100%;font-weight:700;display:grid}.counter-field textarea{border:1px solid var(--line);background:var(--paper);width:100%;min-height:140px;color:var(--ink);font:inherit;resize:vertical;border-radius:14px;padding:12px;font-weight:400}.counter-field small{color:var(--ink-soft);font-weight:400}.counter-grid{grid-template-columns:repeat(auto-fit,minmax(130px,1fr));gap:10px;width:100%;display:grid}.counter-tile{border:1px solid var(--line);background:var(--paper);border-radius:14px;gap:2px;padding:12px;display:grid}.counter-tile strong{font-family:var(--display);font-size:28px}.counter-tile span{color:var(--ink-soft);font-size:13px}.counter-limits{gap:8px;margin:0;padding:0;list-style:none;display:grid}.counter-limits li{grid-template-columns:minmax(0,1.4fr) minmax(60px,1fr) auto;align-items:center;gap:10px;font-size:14px;display:grid}.counter-bar{background:var(--line);border-radius:999px;height:8px;overflow:hidden}.counter-bar span{background:#2e9d62;height:100%;display:block}.counter-limits li.is-over .counter-bar span{background:var(--brand)}.counter-limits li.is-over strong{color:var(--brand)}.picker-layout{grid-template-columns:minmax(0,1fr) minmax(0,1fr);align-items:center;gap:20px;width:100%;display:grid}.picker-wheel-wrap{place-items:center;display:grid;position:relative}.picker-pointer{z-index:2;color:var(--ink);font-size:26px;position:absolute;top:-6px}.picker-wheel{aspect-ratio:1;border:6px solid var(--paper);border-radius:50%;width:min(100%,320px);position:relative;box-shadow:0 10px 28px #00000040}@media (prefers-reduced-motion:no-preference){.picker-wheel.is-spinning{transition:transform 3.1s cubic-bezier(.15,.8,.2,1)}}.picker-label{color:#fff;text-shadow:0 1px 2px #00000080;pointer-events:none;justify-content:center;padding-top:6%;font-size:13px;font-weight:800;display:flex;position:absolute;inset:0}.picker-check{grid-auto-flow:column;align-items:center;gap:8px;min-height:44px;font-weight:600!important;display:inline-flex!important}.picker-check input{width:20px;height:20px}@media (max-width:720px){.picker-layout{grid-template-columns:1fr}}.dice-stage{flex-wrap:wrap;justify-content:center;gap:12px;min-height:96px;display:flex}.die{border:2px solid var(--line);color:#0a1418;width:84px;height:84px;font-family:var(--display);background:#fff;border-radius:18px;place-items:center;font-size:30px;font-weight:800;display:grid;box-shadow:0 8px 18px #0003}.die-pips{grid-template-columns:repeat(3,14px);gap:6px;display:grid}.die-pips i{border-radius:50%;width:14px;height:14px}.die-pips i.on{background:#0a1418}@media (prefers-reduced-motion:no-preference){.die.is-rolling{animation:.6s ease-in-out die-roll}}@keyframes die-roll{0%{transform:rotate(0)}50%{transform:rotate(200deg)scale(.9)}to{transform:rotate(360deg)}}.dice-history{color:var(--ink-soft);gap:4px;margin:0;padding-left:20px;display:grid}.number-tool input{border:1px solid var(--line);background:var(--paper);width:120px;min-height:44px;color:var(--ink);font:inherit;border-radius:12px;padding:6px 10px}.number-output{overflow-wrap:anywhere;max-width:100%;font-family:var(--display);margin:0;font-size:clamp(24px,4vw,40px);font-weight:800}
