@import url('https://fonts.googleapis.com/css2?family=Barlow+Condensed:wght@700;800;900&family=DM+Sans:wght@500;600;700&display=swap');
:root{font-family:'DM Sans',Arial,sans-serif;color:#fff;background:#2425eb;color-scheme:dark;--acid:#e9ff62;--back:#2425eb}*{box-sizing:border-box}html,body{margin:0;width:100%;height:100%;overflow:hidden;overscroll-behavior:none}button{-webkit-tap-highlight-color:transparent;font:inherit}button:focus-visible{outline:3px solid var(--acid);outline-offset:-6px}button{cursor:pointer}.shell{width:100%;height:100%;height:100dvh;min-height:360px;background:var(--back);transition:background .3s;color:white;position:relative;isolation:isolate}.shell > header{height:94px;padding:0 40px;display:flex;align-items:center;justify-content:space-between;position:absolute;top:env(safe-area-inset-top,0px);left:0;right:0;z-index:3;pointer-events:none}.brand{font:900 44px/.9 'Barlow Condensed',Impact,sans-serif;letter-spacing:-1.5px;transform:rotate(-5deg)}.brand span{color:var(--acid)}.tools{display:flex;gap:16px;align-items:center;pointer-events:auto}.best-label{font-size:12px;font-weight:700;letter-spacing:1.5px;display:flex;gap:10px;align-items:center;margin-right:8px}.best-label b{font:800 28px/1 'Barlow Condensed',Impact,sans-serif;letter-spacing:0}.icon{width:40px;height:40px;border:1px solid #ffffff4d;border-radius:50%;background:transparent;color:#fff;display:grid;place-items:center;padding:10px}.icon:hover{background:#ffffff1a}.icon svg{width:20px;height:20px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}.icon[aria-pressed=false]{opacity:.55}.icon[aria-pressed=false] .sound-waves{display:none}#surface{position:absolute;inset:0;width:100%;height:100%;border:0;margin:0;padding:0;background:transparent;display:block;color:#fff;overflow:hidden;touch-action:manipulation;user-select:none;-webkit-user-select:none;text-align:center}canvas{position:absolute;inset:0;width:100%;height:100%;pointer-events:none}.score{position:absolute;top:12%;left:0;width:100%;font:900 clamp(150px,27vh,290px)/1 'Barlow Condensed',Impact,sans-serif;letter-spacing:-10px;opacity:0;color:#ffffff25;transition:opacity .15s;pointer-events:none;transform-origin:center}.playing .score{opacity:1}.score.bump{animation:score-bump .22s ease-out}.intro{position:absolute;top:16%;left:0;width:100%;pointer-events:none}.small{font-size:12px;letter-spacing:2px;font-weight:700}h1{font:900 clamp(66px,11.5vh,122px)/.83 'Barlow Condensed',Impact,sans-serif;letter-spacing:-2px;margin:18px 0 0;transform:rotate(-5deg)}h1 em{font-style:normal;color:var(--acid)}.bottom{position:absolute;bottom:max(26px,env(safe-area-inset-bottom,0px));left:15px;right:15px;pointer-events:none}.cue{display:inline-flex;align-items:center;justify-content:center;gap:35px;padding:16px 28px;min-width:245px;color:#13162b;background:var(--acid);border-radius:100px;font-weight:700;font-size:15px;letter-spacing:.8px;box-shadow:0 5px 0 #00000018}.cue span{font-size:21px;line-height:1}.bottom p{font-size:15px;font-weight:500;margin:13px 0 8px;line-height:1.3}.input-hint{font-size:10px;letter-spacing:2px;color:#ffffff80}.playing .cue{box-shadow:none;background:transparent;color:#ffffff7a;font:900 45px/.9 'Barlow Condensed',Impact,sans-serif;padding:0;min-width:0;letter-spacing:0}.playing .cue.hot{color:var(--acid);transform:scale(1.12)}.playing .bottom p{font-size:13px;color:#ffffffb3;margin:12px 0}.playing .input-hint{visibility:hidden}.reaction{position:absolute;top:33%;left:0;width:100%;font:900 clamp(42px,7vw,75px)/1 'Barlow Condensed',Impact,sans-serif;font-style:italic;color:var(--acid);letter-spacing:-1px;opacity:0;transform:scale(.6) rotate(-8deg);pointer-events:none}.reaction.pop{animation:reaction .6s ease-out both}.end,.paused{position:absolute;top:19%;left:15px;right:15px;pointer-events:none}h2{font:900 clamp(90px,14vh,145px)/.85 'Barlow Condensed',Impact,sans-serif;letter-spacing:-3px;margin:15px 0 18px;transform:rotate(-5deg)}h2 span{color:var(--acid)}.end-score{display:flex;align-items:baseline;justify-content:center;gap:12px}.end-score strong{font:900 62px/1 'Barlow Condensed',Impact,sans-serif}.end-score>span{font-size:12px;letter-spacing:2px}.record{display:inline-block;font-size:11px;font-weight:700;background:var(--acid);color:#13162b;padding:7px 12px;margin-top:12px;border-radius:2px;transform:rotate(-3deg)}.paused{top:29%}.sr-only{position:absolute;width:1px;height:1px;padding:0;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}[hidden]{display:none!important}@keyframes score-bump{0%{transform:scale(1.13)}100%{transform:scale(1)}}@keyframes reaction{0%{opacity:0;transform:scale(.6) rotate(-8deg)}15%{opacity:1;transform:scale(1.12) rotate(-8deg)}30%,65%{opacity:1;transform:scale(1) rotate(-8deg)}100%{opacity:0;transform:scale(1.05) translateY(-12px) rotate(-8deg)}}@media(min-width:1100px){.shell:before,.shell:after{content:'';position:absolute;top:130px;bottom:70px;width:1px;background:#ffffff15;z-index:-1}.shell:before{left:15%}.shell:after{right:15%}.shell > header{padding:0 5%}.bottom{bottom:35px}.intro{top:15%}}@media(max-width:600px){.shell > header{height:80px;padding:0 22px}.brand{font-size:37px}.tools{gap:9px}.best-label{font-size:10px;gap:7px;margin-right:3px}.best-label b{font-size:24px}.icon{height:34px;width:34px;padding:7px}.intro{top:17%}.small{font-size:10px}.score{letter-spacing:-7px;top:15%}h1{font-size:clamp(69px,10vh,100px)}.bottom{bottom:max(21px,env(safe-area-inset-bottom,0px))}.cue{font-size:14px;padding:16px 24px;min-width:225px}.bottom p{font-size:14px}.reaction{top:38%}}@media(max-height:560px){.shell > header{height:58px}.brand{font-size:30px}.intro{top:17%}h1{font-size:55px}.small{font-size:10px}.intro h1{margin-top:10px}.bottom{bottom:12px}.cue{padding:10px 20px;font-size:12px}.bottom p{font-size:12px;margin:8px 0}.input-hint{display:none}.playing .cue{font-size:33px}.end{top:17%}.end h2{font-size:68px;margin:10px}.end-score strong{font-size:42px}.record{margin-top:7px;padding:5px 8px}h2{font-size:70px}}@media(prefers-reduced-motion:reduce){.shell{transition:none}.score.bump{animation:none}.reaction.pop{animation:none;opacity:1;transform:rotate(-5deg)}}

dialog{width:420px;max-width:calc(100vw - 28px);max-height:90svh;padding:28px;border:1px solid #373c52;border-radius:18px;background:#1b1e2c;color:#fff;box-shadow:0 30px 100px #0008}dialog::backdrop{background:#060919ae;backdrop-filter:blur(8px)}.dialog-heading{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:25px}.overline{font-size:10px;letter-spacing:2px;color:#9ba6bb}h2{font-size:29px;letter-spacing:-1px;margin:7px 0 0;font-weight:700}.close{background:#ffffff09;border:0;border-radius:50%;height:30px;width:30px;color:#b5bdd0;font-size:24px;line-height:1}.dialog-balance{color:#9ba6bb;font-size:13px;display:flex;justify-content:space-between;margin:0 0 24px}.dialog-balance strong{color:white}dialog label{display:block;font-size:14px;color:#b6bfd1;margin-bottom:9px}.money-input{display:flex;align-items:center;gap:10px;border:1px solid #444b63;border-radius:8px;background:#121522;padding:4px 16px}.money-input span{color:#9ba6bb}.money-input input{width:100%;padding:12px 0;border:0;background:transparent;font-size:25px;font-weight:600}.money-presets{display:flex;gap:8px;margin:12px 0 20px}.money-presets button{flex:1;border:1px solid #3d455d;border-radius:5px;background:none;padding:8px 3px;font-size:13px}.dialog-submit{background:var(--acid);color:#13181a;border:0;border-radius:8px;font-weight:700;padding:15px;width:100%;margin-top:6px}.design-note{font-size:12px;line-height:1.5;color:#838fa7;margin:17px 0 0}.field-note{font-size:13px;line-height:1.6;color:#a7b1c6}.toggle-row{display:flex;justify-content:space-between;align-items:center;border-top:1px solid #373e53;padding-top:18px;margin-top:24px}.toggle-row input{width:20px;height:20px;accent-color:var(--acid)}.rule-facts{display:grid;gap:10px;border-top:1px solid #373e53;padding-top:17px}.rule-facts span{display:flex;justify-content:space-between;font-size:12px;color:#9da8bd}.rule-facts b{font-weight:500;color:white}ol{padding-left:20px;font-size:15px;line-height:1.65}li{margin-bottom:9px}.toast{position:fixed;bottom:25px;left:50%;transform:translateX(-50%);background:#f0f6e7;color:#182019;padding:13px 22px;border-radius:10px;font-size:14px;box-shadow:0 10px 40px #0006;z-index:10;max-width:90%;text-align:center}.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0)}[hidden]{display:none!important}.balance-pill{display:flex;align-items:center;gap:11px;border:1px solid #ffffff45;border-radius:30px;background:#ffffff0b;padding:8px 11px 8px 15px;color:white;font-size:13px;font-weight:600;white-space:nowrap}.balance-pill>span+span{font-size:18px;line-height:1;opacity:.7}.wallet-total{display:block;font-size:34px;font-weight:600;letter-spacing:-1px;margin-bottom:25px}.wallet-actions{display:flex;gap:10px;margin-bottom:20px}.wallet-actions button{flex:1;margin:0}.secondary{background:#ffffff0c;border:1px solid #ffffff30;border-radius:8px;padding:14px;font-weight:600;color:white}.menu-row{width:100%;border:0;border-top:1px solid #ffffff16;padding:18px 0;display:flex;justify-content:space-between;background:transparent;font-size:14px;color:white}dialog button{color:inherit}dialog .dialog-submit{color:#13181a}.error{font-size:13px;color:#ff9caf;line-height:1.5}.error:empty{display:none}.tools{gap:12px}.best-label{margin-right:0;font-size:10px;gap:6px}.best-label b{font-size:24px}@media(max-width:600px){.best-label{display:none}.tools{gap:8px}.balance-pill{font-size:12px;gap:8px;padding:8px 10px}.brand{font-size:34px}.shell > header{padding:0 18px}.tools .icon{width:30px;height:30px}}
.cash-controls{position:absolute;z-index:4;top:95px;left:50%;transform:translateX(-50%);display:flex;flex-direction:column;align-items:center;gap:8px;white-space:nowrap}.cash-controls button{border:1px solid #ffffff75;border-radius:100px;padding:11px 21px;background:#2425eb77;backdrop-filter:blur(10px);color:white;font-size:11px;letter-spacing:1px;display:flex;align-items:center;gap:17px}.cash-controls strong{font-size:21px;letter-spacing:-.5px}.cash-controls>span{font-size:10px;letter-spacing:1px;color:#ffffffaa}.game-options{position:absolute;z-index:4;bottom:14px;right:25px;display:flex;gap:12px;align-items:center}.game-options button{border:0;background:transparent;color:#ffffffb0;padding:3px;font-size:11px}.game-options #rules{border:1px solid #ffffff50;border-radius:50%;width:20px;height:20px;font-size:11px}.playing .score{opacity:.35}.playing .input-hint{visibility:hidden}@media(max-width:600px){.cash-controls{top:82px;gap:6px}.cash-controls button{padding:9px 17px}.cash-controls strong{font-size:19px}.game-options{bottom:12px;right:16px}.game-options #stake-choice{font-size:10px}.bottom .input-hint{visibility:hidden}}@media(max-height:600px){.cash-controls{top:57px}.cash-controls>span{font-size:9px}.cash-controls button{padding:6px 14px}.cash-controls strong{font-size:17px}.game-options{bottom:8px}}
/* Keep both actions in the same thumb zone, with separate targets and a clear gap. */
.bottom{bottom:76px}.game-options{left:0;right:0;bottom:max(16px,env(safe-area-inset-bottom));justify-content:center;gap:14px}.game-options #stake-choice{font-size:14px;letter-spacing:.5px;color:#fff;background:#ffffff12;border:1px solid #ffffff60;border-radius:100px;padding:9px 19px;min-height:38px;font-weight:700;backdrop-filter:blur(8px)}.game-options #rules{width:27px;height:27px;font-size:13px;color:white}.has-pot .bottom{left:calc(50% - 215px);right:auto;width:170px;bottom:91px}.has-pot .cue{width:100%;min-width:0;background:none;box-shadow:none;padding:0;display:block;line-height:1;color:#ffffff85}.has-pot:not(.playing) .cue{font-size:20px;font-weight:700}.has-pot .cue.hot{color:var(--acid)}.has-pot .bottom p{font-size:12px;line-height:1.4;margin:12px 0 0}.has-pot .input-hint{display:none}.cash-controls{top:auto;bottom:83px;left:calc(50% + 125px);width:205px;gap:9px}.cash-controls button{width:100%;min-height:65px;justify-content:center;flex-direction:column;gap:5px;padding:11px 18px;border:1.5px solid #ffffffc0;background:#ffffff10;box-shadow:0 5px 20px #16137820;touch-action:manipulation}.collect-label{display:flex;align-items:center;gap:10px;font-size:11px;font-weight:700;letter-spacing:1px}.cash-controls strong{font-size:23px;line-height:1.1}.cash-controls kbd{font:600 11px 'DM Sans',sans-serif;border:1px solid #ffffff65;border-bottom-width:2px;border-radius:4px;min-width:19px;padding:1px 4px;color:white}.cash-controls>span{font-size:10px;letter-spacing:.45px}.cash-controls button:hover{background:#ffffff23}.cash-controls button:active{transform:translateY(1px)}
.double-bloom{position:absolute;inset:0;pointer-events:none;opacity:0;background:radial-gradient(ellipse at 50% 62%,#ffe67d7a 0%,#ffc34420 40%,transparent 75%);mix-blend-mode:screen}.double-event{position:absolute;top:22%;left:12px;right:12px;text-align:center;pointer-events:none;opacity:0;transform:scale(.75) rotate(-6deg);color:#fff0a0;text-shadow:0 5px 25px #38257070;z-index:2}.double-event>span{font-size:12px;letter-spacing:3px;font-weight:700}.double-event>strong{font:900 clamp(65px,10vw,110px)/.95 'Barlow Condensed',Impact,sans-serif;display:block;letter-spacing:-2px;margin:6px 0 12px}.double-event>div{display:flex;justify-content:center;gap:15px;align-items:center;font-size:clamp(18px,3vw,30px);font-weight:500}.double-event b{color:#fff;font-weight:700}.double-arrow{opacity:.7}.doubled .double-event{animation:double-pop 1.35s ease-out both}.doubled .double-bloom{animation:double-glow 1.3s ease-out both}.doubled .cash-controls button{border-color:#fff1a0;background:#fff1a033;box-shadow:0 0 35px #fff08550}.doubled .score{opacity:.07!important}@keyframes double-pop{0%{opacity:0;transform:scale(.65) rotate(-6deg)}13%{opacity:1;transform:scale(1.08) rotate(-6deg)}27%,77%{opacity:1;transform:scale(1) rotate(-6deg)}100%{opacity:0;transform:scale(1.03) translateY(-12px) rotate(-6deg)}}@keyframes double-glow{0%{opacity:0}15%{opacity:.95}100%{opacity:0}}@media(max-width:600px){.bottom{bottom:80px}.has-pot .bottom{left:calc(50% - 173px);width:148px;bottom:99px}.cash-controls{left:calc(50% + 94px);top:auto;bottom:87px;width:158px}.cash-controls button{min-height:66px;padding:10px 9px}.cash-controls strong{font-size:21px}.cash-controls>span{font-size:9px;letter-spacing:0}.has-pot .bottom p{font-size:11px;line-height:1.4;margin:12px 0 0}.has-pot .cue{font-size:41px}.has-pot:not(.playing) .cue{font-size:17px}.game-options{bottom:max(18px,env(safe-area-inset-bottom));gap:13px}.game-options #stake-choice{font-size:13px;padding:9px 18px}.double-event{top:22%}.double-event>strong{font-size:72px}.double-event>span{font-size:10px}.double-event>div{font-size:21px}}@media(max-width:360px){.has-pot .bottom{left:14px;width:126px}.cash-controls{left:auto;right:14px;transform:none;width:142px}.cash-controls strong{font-size:19px}.cash-controls>span{font-size:8px}.has-pot .cue{font-size:36px}.double-event>strong{font-size:60px}.double-event>div{font-size:18px}}@media(max-height:600px){.bottom{bottom:72px}.has-pot .bottom{bottom:88px}.cash-controls{top:auto;bottom:76px}.game-options{bottom:13px}.cash-controls button{min-height:56px}.cash-controls>span{font-size:9px}.double-event{top:21%}.double-event>strong{font-size:65px}.double-event>div{font-size:19px}}@media(pointer:coarse){.cash-controls kbd{display:none}}@media(prefers-reduced-motion:reduce){.doubled .double-event{animation:none;opacity:1;transform:none}.doubled .double-bloom{animation:none;opacity:.2}.cash-controls button:active{transform:none}}
.cash-controls>span{font-size:11px;letter-spacing:0}
/* The tap cue stays on the centre axis; Collect is attached to the line's right end. */
.has-pot .bottom{left:15px;right:15px;width:auto;bottom:84px}.has-pot .cue{width:auto;display:inline-block;min-width:0}.has-pot .bottom p{max-width:290px;margin:12px auto 0}.cash-controls{bottom:auto;right:auto;transform:translateX(-50%);gap:7px}.cash-controls button{min-height:58px;padding:10px 9px}.cash-controls strong{font-size:21px}.cash-controls>span{font-size:11px;white-space:nowrap}.game-options{bottom:max(13px,env(safe-area-inset-bottom));gap:18px}.bet-editor{display:flex;align-items:center;gap:15px}.bet-editor>label{font-size:11px;letter-spacing:1.1px;font-weight:600;color:#ffffffbb}.bet-input{display:flex;align-items:center;gap:7px;background:#ffffff0a;border-bottom:1.5px solid #ffffffa0;border-radius:4px 4px 0 0;padding:7px 9px;min-height:37px}.bet-input>span:first-child{font-size:15px;color:#ffffffb8}.bet-input input{width:83px;min-width:0;background:transparent;border:0;color:white;padding:0;font:600 17px 'DM Sans',Arial,sans-serif;font-variant-numeric:tabular-nums;appearance:textfield;outline-offset:6px}.bet-input input::-webkit-inner-spin-button{appearance:none}.bet-input:focus-within{background:#ffffff19;border-bottom-color:var(--acid)}.edit-cue{font-size:16px;opacity:.65}.bet-input input:disabled{opacity:.65;cursor:default}.has-pot .edit-cue{visibility:hidden}.double-event>small{display:block;font-size:12px;font-weight:600;letter-spacing:1.5px;margin-top:12px;color:#fff8d4}@media(max-width:600px){.has-pot .bottom{left:15px;right:15px;width:auto;bottom:90px}.has-pot .cue{font-size:43px}.cash-controls{bottom:auto;right:auto;transform:translateX(-50%)}.cash-controls button{min-height:54px;padding:9px 5px}.cash-controls strong{font-size:18px}.collect-label{font-size:10px;gap:6px}.cash-controls>span{font-size:10px;letter-spacing:0}.bet-editor{gap:11px}.bet-editor>label{font-size:10px}.bet-input{min-height:35px;padding:6px 8px}.bet-input input{width:77px;font-size:16px}.game-options{bottom:max(17px,env(safe-area-inset-bottom))}.double-event>small{font-size:10px;margin-top:10px}}@media(max-width:360px){.has-pot .bottom{left:12px;right:12px;width:auto}.cash-controls{right:auto;transform:translateX(-50%)}.cash-controls strong{font-size:16px}.cash-controls>span{font-size:9px}}@media(max-height:600px){.has-pot .bottom{bottom:85px}.cash-controls{bottom:auto}.game-options{bottom:12px}}
#surface{cursor:default}.cue{border:0;pointer-events:auto;cursor:pointer;touch-action:manipulation;user-select:none;-webkit-user-select:none}.has-pot .cue,.playing .cue{min-width:170px;min-height:56px;padding:6px 20px;border:1px solid #ffffff28;border-radius:100px}.has-pot .cue.hot{border-color:var(--acid);box-shadow:0 0 22px #e9ff6210}.cue:focus-visible{outline:3px solid #fff;outline-offset:5px}.bet-editor{display:inline-flex;align-items:center;gap:13px}.bet-label{font-size:11px;letter-spacing:1px;font-weight:600;color:#ffffffb5}.bet-value{display:inline-flex;align-items:center;gap:4px}.bet-value strong{font-size:18px;font-weight:600;font-variant-numeric:tabular-nums;white-space:nowrap}.game-options #bet-pen{display:grid;place-items:center;width:34px;height:34px;min-width:34px;border:0;border-radius:50%;background:#ffffff10;color:#fff;padding:7px;touch-action:manipulation}.game-options #bet-pen:hover:not(:disabled){background:#ffffff25}.game-options #bet-pen:disabled{opacity:.3;cursor:not-allowed}.game-options #bet-pen svg{width:19px;height:19px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}.edit-actions{display:flex;gap:12px;margin-top:20px}.edit-actions button{flex:1;margin:0}.edit-actions .secondary{font-size:14px}.game-options{gap:17px}@media(max-width:600px){.bet-value strong{font-size:17px}.bet-editor{gap:10px}.has-pot .cue,.playing .cue{min-width:160px;min-height:56px;padding:6px 17px}.game-options #bet-pen{width:34px;height:34px}.bet-label{font-size:10px}}
.watch-replay{display:block;margin:17px auto 0;pointer-events:auto;padding:10px 17px;border:1px solid #ffffff75;border-radius:30px;background:#ffffff10;color:white;font-size:14px;font-weight:600}.watch-replay:hover{background:#ffffff22}#replay-dialog{width:720px;padding:22px;max-height:94svh}#replay-dialog .dialog-heading{margin-bottom:12px}.replay-outcome{font-size:15px;line-height:1.5;color:#e5eaff;margin:0 0 13px}.replay-stage{border-radius:10px;overflow:hidden;background:#2425eb}.replay-stage canvas{position:static;display:block;width:100%;height:min(43svh,380px)}.replay-event{min-height:38px;font-size:14px;line-height:1.4;margin:12px 0 4px;color:#edf0b4}.replay-toolbar{display:flex;align-items:center;gap:8px}.replay-toolbar button{border:1px solid #64708a;border-radius:6px;background:#ffffff08;padding:9px 13px;color:white;font-size:13px}.replay-toolbar button[aria-pressed=true]{border-color:var(--acid);color:var(--acid)}#replay-time{margin-left:auto;font-size:12px;color:#adb7cb;font-variant-numeric:tabular-nums}#replay-seek{width:100%;margin:16px 0 0;accent-color:var(--acid)}.simple-rules{font-size:15px;line-height:1.5;padding-left:23px;color:#edf0f7}.simple-rules li{margin-bottom:10px}.more-rules{border-top:1px solid #ffffff22;margin-top:18px;padding-top:16px}.more-rules summary{cursor:pointer;color:#c8d1e4;font-size:14px}.end .watch-replay:focus-visible{outline-color:white}.tap-confirmation{color:white}@media(max-width:600px){#replay-dialog{padding:18px}.replay-stage canvas{height:35svh;min-height:200px}.replay-event{font-size:13px}.replay-toolbar{gap:6px}.replay-toolbar button{padding:8px 10px}.watch-replay{margin-top:13px;font-size:13px}}

/* Collect sits below the landing line, on the same centre axis as TAP. */
.cash-controls{gap:5px}.cash-controls button{min-height:58px;padding:9px 18px}.cash-controls strong{font-size:21px}.cash-controls>span{font-size:10px}.has-pot .bottom{top:auto;bottom:84px}.has-pot .bottom p{margin-top:10px}@media(max-width:600px){.has-pot .bottom{bottom:90px}}

@media(max-height:560px){.has-pot .bottom{bottom:64px}.has-pot .bottom p,.has-pot .bottom .input-hint,.cash-controls>span{display:none}.cash-controls button{min-height:48px;padding:6px 18px}.cash-controls strong{font-size:18px}}

/* Brief collection celebration; the replay and play controls stay available. */
.end.won>#end-label,.end.won>#end-title,.end.won>.end-score,.end.won>#record{display:none}
.win-banner{display:flex;flex-direction:column;align-items:center;gap:10px;color:var(--acid);animation:win-reveal 3.5s ease both}
.win-check{display:grid;place-items:center;width:48px;height:48px;border:2px solid currentColor;border-radius:50%;font-size:27px;background:#ffffff10}
.win-label{font-size:13px;font-weight:800;letter-spacing:3px}
.win-banner strong{font:900 clamp(36px,8vw,94px)/1 'Barlow Condensed',Impact,sans-serif;letter-spacing:-1px;white-space:nowrap;text-shadow:0 0 35px #e9ff6238;font-variant-numeric:tabular-nums}
.win-note{font-size:13px;color:#ffffffbf}
@keyframes win-reveal{0%{opacity:0;transform:translateY(14px) scale(.88)}12%{opacity:1;transform:translateY(0) scale(1.04)}20%,82%{opacity:1;transform:scale(1)}100%{opacity:0;transform:translateY(-12px)}}
@media(max-height:560px){.win-banner{gap:6px}.win-check{width:30px;height:30px;font-size:20px}.win-banner strong{font-size:clamp(30px,7vw,52px)}.win-label{font-size:10px}.win-note{font-size:11px}.won .watch-replay{margin-top:10px}}
@media(prefers-reduced-motion:reduce){.win-banner{animation:win-fade 3.5s linear both}@keyframes win-fade{0%,85%{opacity:1}100%{opacity:0}}}

/* Legacy layout: rebound mark and a compact forward-leaning wordmark. */
.shell > header .brand{display:flex;align-items:center;gap:8px;flex-shrink:0;transform:none;line-height:1;letter-spacing:0}
.brand-mark{display:block;width:52px;height:52px;object-fit:contain}
.shell > header .brand .brand-name{color:#fff;font:800 italic 37px/.95 'Barlow Condensed',Impact,sans-serif;letter-spacing:.4px}
@media(max-width:600px){.shell > header{padding-left:16px;padding-right:16px}.shell > header .brand{gap:4px}.brand-mark{width:38px;height:38px}.shell > header .brand .brand-name{font-size:26px}.tools{gap:7px}}
@media(max-width:360px){.shell > header{padding-left:12px;padding-right:12px}.brand-mark{width:31px;height:31px}.shell > header .brand .brand-name{font-size:23px}.tools{gap:5px}.balance-pill{padding:7px 8px;gap:5px;font-size:11px}}
@media(max-height:560px) and (min-width:601px){.brand-mark{width:38px;height:38px}.shell > header .brand .brand-name{font-size:30px}}

.win-banner.settled-loss{color:#ffd0d8;animation:none}.win-banner.settled-even{color:#ffffff;animation:none}.win-banner.settled-loss strong,.win-banner.settled-even strong{text-shadow:none}.cash-controls>span{font-size:10px;letter-spacing:0}

/* Run counts stay separate from money and remain on the result screen. */
.doubler-count{position:absolute;top:104px;left:50%;transform:translateX(-50%);display:flex;align-items:center;gap:10px;padding:7px 13px;border:1px solid #ffffff38;border-radius:30px;background:#14133c28;color:var(--acid);pointer-events:none}
.doubler-count span{font-size:10px;font-weight:700;letter-spacing:1.5px}.doubler-count strong{font-size:19px;font-variant-numeric:tabular-nums;line-height:1}.end-doublers{font-size:13px;color:var(--acid);margin:13px 0 0;font-weight:700}
.brand-marquee{position:absolute;top:53%;left:-3%;width:106%;overflow:hidden;transform:rotate(-3deg);background:var(--acid);color:#171747;border-top:1px solid #ffffff55;border-bottom:1px solid #ffffff55;pointer-events:none}
.marquee-track{display:flex;width:max-content;animation:marquee-drift 40s linear infinite}.marquee-group{display:flex;flex-shrink:0;min-width:106vw;justify-content:space-around}.marquee-group span{display:flex;align-items:center;gap:28px;padding:12px 14px;font:800 italic 30px/1 'Barlow Condensed',Impact,sans-serif;white-space:nowrap;letter-spacing:.5px}.marquee-group i{font:normal 17px Arial}
@keyframes marquee-drift{to{transform:translateX(-50%)}}
@media(max-width:600px){.doubler-count{top:85px}.marquee-group span{font-size:25px;padding:11px 14px}.brand-marquee{top:52%}}
@media(max-height:560px){.doubler-count{top:65px;left:18px;transform:none;padding:5px 9px;gap:7px}.doubler-count span{font-size:8px}.doubler-count strong{font-size:16px}.brand-marquee{top:51%}.marquee-group span{font-size:21px;padding:8px 12px}.end-doublers{margin-top:8px;font-size:11px}}
@media(prefers-reduced-motion:reduce){.marquee-track{animation:none}}

/* Shared canvas/UI geometry keeps the landing line and control cluster together. */
.shell{--ui-scale:1;min-height:320px}
.bottom,.has-pot .bottom{top:var(--cue-y);bottom:auto;left:12px;right:12px;width:auto}
.play-row{position:relative;width:var(--cue-width);margin:0 auto;pointer-events:none}
.bottom .cue,.has-pot .cue,.playing .cue{display:flex;align-items:center;justify-content:center;width:100%;min-width:0;height:var(--cue-height);min-height:var(--cue-height);padding:6px 12px;font-size:calc(17px * var(--ui-scale));line-height:1;transform:none}
.playing .cue{font-size:calc(43px * var(--ui-scale))}.has-pot:not(.playing) .cue{font-size:calc(17px * var(--ui-scale))}
.bottom p,.has-pot .bottom p,.playing .bottom p{font-size:calc(12px * var(--ui-scale));max-width:calc(330px * var(--ui-scale));line-height:1.35;margin:calc(10px * var(--ui-scale)) auto 0}
.bottom .input-hint{display:none}
.pause-control{position:absolute;left:calc(100% + 16px * var(--ui-scale));top:50%;transform:translateY(-50%);width:calc(44px * var(--ui-scale));height:calc(54px * var(--ui-scale));border:1px solid #ffffff65;border-radius:calc(14px * var(--ui-scale));background:#ffffff0d;color:white;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:4px;pointer-events:auto;touch-action:manipulation}
.pause-control>span{font-size:calc(20px * var(--ui-scale));line-height:1}.pause-control kbd{font:600 calc(10px * var(--ui-scale)) 'DM Sans',sans-serif;opacity:.7}.pause-control:hover{background:#ffffff25}
.cash-controls{gap:calc(6px * var(--ui-scale))}.cash-controls button{height:var(--collect-height);min-height:var(--collect-height);padding:6px 12px}.cash-controls strong{font-size:calc(23px * var(--ui-scale))}.collect-label{font-size:calc(11px * var(--ui-scale))}.cash-controls kbd{font-size:calc(11px * var(--ui-scale))}.cash-controls>span{font-size:calc(10px * var(--ui-scale));line-height:1.4}
.game-options{top:var(--options-y);bottom:auto;gap:calc(17px * var(--ui-scale))}.bet-value strong{font-size:calc(18px * var(--ui-scale))}.bet-label{font-size:calc(11px * var(--ui-scale))}.game-options #bet-pen{width:calc(34px * var(--ui-scale));height:calc(34px * var(--ui-scale))}.game-options #rules{width:calc(27px * var(--ui-scale));height:calc(27px * var(--ui-scale));font-size:calc(13px * var(--ui-scale))}
.marquee-zone{position:absolute;top:0;left:0;right:0;height:var(--marquee-zone-height);overflow:hidden;pointer-events:none}
.marquee-zone .brand-marquee{top:auto;bottom:var(--marquee-bottom)}
.intro{top:var(--intro-top)}.intro h1{font-size:var(--intro-size);margin-top:calc(14px * var(--ui-scale))}.intro>.small{font-size:calc(11px * var(--ui-scale))}
@media(min-width:601px) and (min-height:561px){.shell > header{height:calc(94px * var(--ui-scale))}.brand-mark{width:calc(52px * var(--ui-scale));height:calc(52px * var(--ui-scale))}.shell > header .brand .brand-name{font-size:calc(37px * var(--ui-scale))}.tools{gap:calc(12px * var(--ui-scale))}.tools .icon{width:calc(40px * var(--ui-scale));height:calc(40px * var(--ui-scale))}.balance-pill{font-size:calc(13px * var(--ui-scale));padding:calc(9px * var(--ui-scale)) calc(14px * var(--ui-scale))}.best-label{font-size:calc(10px * var(--ui-scale))}.best-label b{font-size:calc(24px * var(--ui-scale))}.doubler-count{top:calc(105px * var(--ui-scale));gap:calc(10px * var(--ui-scale));padding:calc(7px * var(--ui-scale)) calc(13px * var(--ui-scale))}.doubler-count span{font-size:calc(10px * var(--ui-scale))}.doubler-count strong{font-size:calc(19px * var(--ui-scale))}.marquee-group span{font-size:calc(30px * var(--ui-scale))}}
@media(max-height:560px){.intro>.small{display:none}.intro h1{margin:0;line-height:1;transform:none}.intro h1 br{display:none}.intro h1 em:before{content:' '}.marquee-zone .brand-marquee{transform:none}.playing .cue{font-size:32px}.bottom p,.has-pot .bottom p{display:none}.pause-control{height:44px}.cash-controls strong{font-size:19px}.cash-controls>span{display:none}}
@media(pointer:coarse){.pause-control kbd{display:none}}
@media(max-height:319px){html,body{overflow:auto}}
@media(max-height:350px){.intro{display:none}}
@media(max-width:360px){.balance-pill #balance{max-width:95px;overflow:hidden;text-overflow:ellipsis}}

/* The balance briefly unfolds into its two real actions on first visit. */
.wallet-anchor{position:relative;pointer-events:auto}.wallet-copy{display:flex;flex-direction:column;align-items:flex-start;gap:3px}.wallet-caption{font-size:calc(8px * var(--ui-scale));font-weight:700;letter-spacing:1.6px;line-height:1;opacity:.65}.wallet-arrows{font-size:calc(21px * var(--ui-scale))!important;line-height:1;color:var(--acid)}.balance-pill.wallet-revealed{border-color:var(--acid);background:#ffffff15;box-shadow:0 0 0 5px #e9ff6215}.balance-pill{transition:border-color .2s,box-shadow .2s,background .2s}
.wallet-discovery{position:absolute;right:0;top:calc(100% + 12px);width:calc(264px * var(--ui-scale));max-width:calc(100vw - 32px);padding:calc(14px * var(--ui-scale));border:1px solid #e9ff6270;border-radius:16px;background:#181949;color:#fff;box-shadow:0 16px 45px #08092a55;text-align:left;transform-origin:85% 0;animation:wallet-unfold .45s cubic-bezier(.2,.8,.2,1) both}
.wallet-discovery:before{content:'';position:absolute;right:28px;top:-6px;width:10px;height:10px;transform:rotate(45deg);background:#181949;border-left:1px solid #e9ff6270;border-top:1px solid #e9ff6270}.wallet-discovery-heading{display:flex;align-items:center;justify-content:space-between;gap:12px;font-size:calc(13px * var(--ui-scale));font-weight:600}.wallet-discovery-heading button{border:0;background:none;color:#ffffffaa;min-width:28px;min-height:28px;font-size:22px;line-height:1;padding:0}
.wallet-discovery-actions{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-top:10px}.wallet-discovery-actions button{display:flex;align-items:center;justify-content:center;gap:8px;min-height:calc(46px * var(--ui-scale));padding:8px 5px;border:1px solid #ffffff35;border-radius:9px;background:#ffffff08;color:#fff;font-size:calc(12px * var(--ui-scale));font-weight:600}.wallet-discovery-actions button:hover{border-color:var(--acid);background:#ffffff15}.wallet-discovery-actions button span{font-size:20px;color:var(--acid)}.wallet-discovery p{font-size:calc(11px * var(--ui-scale));line-height:1.4;color:#ffffff99;margin:12px 0 0}.wallet-guide-replay{border:1px solid #ffffff40;border-radius:8px;background:#ffffff09;padding:10px 13px;color:var(--acid);font-size:13px}
@keyframes wallet-unfold{from{opacity:0;transform:translateY(-8px) scale(.9)}to{opacity:1;transform:none}}
@media(max-height:560px){.wallet-caption{font-size:7px}.wallet-copy{gap:2px}.wallet-discovery{padding:10px}.wallet-discovery p{margin-top:8px}}
@media(prefers-reduced-motion:reduce){.wallet-discovery{animation:none}.balance-pill{transition:none}}

/* StillUp: the artwork includes the name; never add a second wordmark. */
.shell > header .brand-lockup{display:block;width:clamp(160px,19vw,270px);height:auto;max-height:90px;object-fit:contain}
.auth-brand{display:block;width:230px;max-width:75%;height:auto;margin:0 auto 1.25rem}
@media(max-width:600px){.shell > header .brand-lockup{width:150px}.shell > header{gap:8px}.guest-auth{gap:5px}}
@media(max-width:380px){.shell > header .brand-lockup{width:125px}.shell > header{padding-left:10px;padding-right:10px}}
@media(max-height:560px){.shell > header .brand-lockup{width:160px;max-height:54px}}

/* Keep the play field steady when a delayed bonus arrives. */
.double-bloom{display:none!important}
.double-event{left:14px;right:auto;top:clamp(78px,16%,135px);width:min(205px,42%);text-align:left;padding:12px 14px;border:1px solid #fff0a080;border-radius:14px;background:#14192ce8;transform:none;text-shadow:none;box-sizing:border-box;z-index:2}
.double-event>strong{font-size:clamp(24px,4vw,38px);letter-spacing:0;margin:5px 0}
.double-event>span{font-size:10px;letter-spacing:1px}.double-event>div{justify-content:flex-start;gap:7px;font-size:14px;flex-wrap:wrap}.double-event>small{font-size:10px;letter-spacing:.3px;margin-top:7px}
.doubled .double-event{animation:bonus-notice 1.35s ease-out both}.doubled .score{opacity:1!important}
@keyframes bonus-notice{0%{opacity:0;transform:translateY(5px)}12%,82%{opacity:1;transform:none}100%{opacity:0;transform:translateY(-5px)}}
.watch-replay{background:#eeff8b;color:#172114;border:2px solid #f5ffcb;font-size:15px;font-weight:800;padding:12px 22px;box-shadow:0 4px 0 #10152c55,0 0 20px #eeff8b25;animation:replay-invite 2.2s ease-in-out infinite}
.watch-replay:hover{background:#fff;color:#172114;animation:none;transform:scale(1.03)}.watch-replay:focus-visible{outline:3px solid #fff;outline-offset:5px;animation:none}
@keyframes replay-invite{0%,100%{transform:scale(1)}50%{transform:scale(1.045)}}
@media(max-height:560px){.double-event{top:65px;padding:8px 10px}.double-event>strong{font-size:24px}.double-event>span{display:none}}
@media(prefers-reduced-motion:reduce){.watch-replay,.doubled .double-event{animation:none;transform:none}.doubled .double-event{opacity:1}}

/* Account identity resolves after the page geometry; never flash placeholder funds. */
.account-pending .tools,.account-pending .bet-editor{visibility:hidden;pointer-events:none}
#shell[aria-busy="true"] #cue{pointer-events:none;cursor:wait}
