.open-count{margin:18px 0}.count-grid{display:grid;grid-template-columns:repeat(10,minmax(0,1fr));gap:6px;margin-top:9px}.count-grid button{padding:12px 0;min-height:44px;font-size:16px}.batch-results{padding:20px 0}.batch-results h2{font-size:21px}.batch-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.batch-item{display:grid;gap:8px;padding:16px;min-width:0}.batch-item b{font-size:clamp(14px,3.4vw,21px);font-variant-numeric:tabular-nums}.batch-item span,.batch-item small{font-size:14px}.batch-item button{font-size:14px;padding:10px}.upgrade-arena{text-align:center;background:radial-gradient(ellipse at center,#7b43b547,transparent 70%),#1b1127;border:1px solid #71509077;border-radius:28px;padding:28px 18px;margin:20px 0}.upgrade-dial{position:relative;width:230px;height:230px;border-radius:50%;margin:0 auto 18px;background:conic-gradient(from -90deg,#ce9dff 0deg var(--chance),#372344 var(--chance) 360deg);box-shadow:0 0 55px #a450f530,inset 0 0 0 2px #e6c6ff33;display:grid;place-items:center}.upgrade-core{position:absolute;inset:20px;border-radius:50%;background:radial-gradient(circle at 30% 20%,#492862,#1e102e);display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;z-index:1}.upgrade-core b{font-size:40px;color:#f0dfff}.upgrade-core span{font-size:14px;color:#c6b0db}.upgrade-needle{position:absolute;inset:0;z-index:2;pointer-events:none}.upgrade-needle::after{content:'';position:absolute;top:5px;left:calc(50% - 4px);width:8px;height:20px;border-radius:4px;background:white;box-shadow:0 0 18px #f0c4ff}.upgrade-dial.turning .upgrade-needle{animation:upgrade-spin .7s linear infinite}.upgrade-options{display:flex;gap:8px;flex-wrap:wrap}.upgrade-options button{flex:1;min-width:48px;min-height:46px}.upgrade-pair{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;margin-top:18px}.upgrade-pair .sim{min-width:0;padding:18px}.upgrade-pair h2{font-size:clamp(16px,3.8vw,22px);overflow-wrap:anywhere}.upgrade-pair .value{font-size:21px}.upgrade-pair small{font-size:14px;color:#c2aad7}.upgrade-start{width:100%;min-height:54px;font-size:18px}.upgrade-result{border-radius:18px;padding:16px;border:1px solid #8c60ae;background:#332045}.upgrade-result h2{margin:0;font-size:22px}.upgrade-result.won{border-color:#caa0ff;box-shadow:0 0 30px #b475ff22}.upgrade-result.lost{border-color:#a75b80}.upgrade-result p{overflow-wrap:anywhere}.upgrade-result b{font-size:16px}@keyframes upgrade-spin{to{transform:rotate(360deg)}}@media(max-width:420px){.count-grid{grid-template-columns:repeat(5,minmax(0,1fr))}.batch-grid{grid-template-columns:1fr}.batch-item b{font-size:20px}.upgrade-pair{grid-template-columns:1fr}.upgrade-pair h2{font-size:22px}}@media(prefers-reduced-motion:reduce){.upgrade-dial.turning .upgrade-needle{animation:none}}
@media(max-width:650px){.row-actions{flex-wrap:wrap}.row-actions button{flex:1 1 42%;min-width:0}}
/* One coordinate system: sector and pointer both begin at twelve o'clock. */
.upgrade-dial{background:conic-gradient(from 0deg,#ce9dff 0deg var(--chance),#372344 var(--chance) 360deg)}.upgrade-needle{will-change:transform}.upgrade-dial.turning .upgrade-needle{animation:none}.under-overlay{pointer-events:none;user-select:none}body:has(#spinOverlay:not([hidden])){overflow:hidden}#spinOverlay[hidden]{display:none}#spinOverlay{position:fixed;inset:0;z-index:100;display:flex;align-items:center;justify-content:center;padding:24px 14px calc(24px + env(safe-area-inset-bottom));background:#08030ed1;backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px);overscroll-behavior:contain}.spin-dialog{width:min(100%,480px);max-height:85dvh;overflow-y:auto;overscroll-behavior:contain;border:1px solid #b183e375;background:radial-gradient(ellipse at top,#52306a90,transparent 70%),#1c102b;border-radius:28px;padding:22px;box-shadow:0 25px 100px #0009,inset 0 1px #ead2ff29;animation:spin-enter .22s ease-out;scrollbar-width:thin}.spin-dialog.multi-dialog{width:min(100%,760px)}.spin-heading{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:20px}.spin-heading h2{margin:0;font-size:22px;line-height:1.25}.spin-heading button{font-size:14px;padding:8px 12px}.spin-dialog .upgrade-dial{margin:20px auto}.spin-dialog .upgrade-core b{font-size:44px}.spin-dialog .digit-reveal{margin:16px auto 8px}.spin-dialog .digit-line{font-size:clamp(27px,7vw,40px)}.spin-dialog .digit-window.spinning{transform:none;box-shadow:0 0 18px #b866ff45}.spin-dialog .digit-window{contain:layout paint}.spin-dialog .digit-track{backface-visibility:hidden;transform:translateZ(0)}.spin-dialog .reel-label{font-size:14px;letter-spacing:0;text-align:center}.spin-dialog .fixed-prefix{text-align:center}.modal-reels,.modal-results{display:grid;gap:12px}.many-reels,.many-results{grid-template-columns:repeat(2,minmax(0,1fr))}.modal-reel{min-width:0}.many-reels .modal-reel{background:#160b21;border:1px solid #77539655;border-radius:18px;padding:12px}.many-reels .digit-reveal{border:0;padding:8px 0;margin:0;box-shadow:none;background:none}.many-reels .digit-line{font-size:clamp(18px,4.5vw,30px);gap:2px}.many-reels .fixed-prefix{font-size:17px;margin-bottom:14px;letter-spacing:1px}.many-reels .reel-label{display:none}.many-reels .reveal-meter{width:75%;margin:14px auto 3px}.modal-sim{border:1px solid #73529277;border-top:3px solid var(--tier);background:#2c1a3d;border-radius:18px;padding:18px;text-align:center;min-width:0}.modal-sim>b{display:block;font-size:clamp(21px,5.7vw,28px);font-variant-numeric:tabular-nums;margin:14px 0}.modal-sim p{margin:8px 0;color:#dbbafa;font-size:16px}.many-results .modal-sim{padding:12px}.many-results .modal-sim>b{font-size:clamp(15px,3.6vw,22px);white-space:nowrap;letter-spacing:-.4px}.many-results .rarity{font-size:14px}.spin-dialog .actions{margin-top:18px;display:flex;gap:10px;flex-wrap:wrap}.spin-dialog .actions button{flex:1;min-width:135px}.spin-dialog>#spinDone{width:100%;margin-top:20px}.spin-caption,.modal-loading{text-align:center;color:#d3b5f0;font-size:16px}.modal-loading{padding:30px 0;min-height:100px}.modal-upgrade-result{text-align:center;border:1px solid #8053a7;border-radius:18px;padding:14px;background:#352043}.modal-upgrade-result p{font-size:21px;margin:6px 0 12px;font-variant-numeric:tabular-nums}.modal-upgrade-result.lost{border-color:#a75b80}.modal-upgrade-result.won{border-color:#c39afa}.modal-upgrade-result b{font-size:16px}@keyframes spin-enter{from{opacity:0;transform:translateY(12px) scale(.97)}to{opacity:1;transform:translateY(0) scale(1)}}@media(max-width:400px){.spin-dialog{padding:18px 14px}.spin-dialog.multi-dialog{padding:18px 10px}.spin-heading h2{font-size:20px}.many-reels,.many-results{gap:8px}.many-reels .modal-reel{padding:9px 5px}.many-results .modal-sim{padding:10px 5px}.many-results .modal-sim>b{font-size:14px}.many-reels .digit-line{font-size:19px;gap:1px}.many-reels .fixed-prefix{font-size:15px}}@media(prefers-reduced-motion:reduce){.spin-dialog{animation:none}.spin-dialog .digit-window{transition:none}}
#modal-stage-content>#spinDone{width:100%;margin-top:20px}.spin-dialog .spin-heading #spin-controls{flex-shrink:0}.speed-switch button{flex:1;min-width:0;font-size:15px}.speed-switch small{display:block;font-size:14px;margin-top:3px;color:inherit;opacity:.75}.spin-dialog .upgrade-needle{transition:none}.spin-dialog .upgrade-dial{contain:layout style}

.upgrade-arena{background:#151c24;border-color:#2b3845;border-radius:20px;padding:22px 12px}
.upgrade-dial{width:min(240px,68vw);height:auto;aspect-ratio:1;isolation:isolate;background:conic-gradient(#72dbc2 0deg var(--chance),#293744 var(--chance) 360deg);box-shadow:0 0 0 1px #536273;overflow:visible}
.upgrade-ticks{position:absolute;inset:3px;border-radius:50%;background:repeating-conic-gradient(#11192299 0deg 1deg,transparent 1deg 6deg)}
.upgrade-dial .upgrade-core{inset:15px;background:#171f29;border:1px solid #415263;gap:3px}
.upgrade-dial .upgrade-core b{color:#f1f7fc;font-size:clamp(28px,9vw,44px);font-variant-numeric:tabular-nums}
.upgrade-dial .upgrade-core span{color:#adc1d0;font-size:13px}
.upgrade-dial .upgrade-needle::after{top:-8px;left:calc(50% - 8px);width:16px;height:17px;border-radius:0;background:#fff4d4;clip-path:polygon(0 0,100% 0,50% 100%);box-shadow:none}
.upgrade-result.won,.modal-upgrade-result.won{border-color:#72dbc2}
