/* Topple: everything lives inside the game window (GAME-FRAME.md). Scene full-bleed; HUD, session strip, readout,
   room and the two bets overlay it. Phones: bets stack at the bottom (portrait) or in a right rail (landscape). */
:root{--bz-accent:#e3ad42;--bz-accent-up:#f0c160;--bz-on-accent:#2a1a04;
  --tp-bg:#06110d;--tp-panel:rgba(6,16,12,.8);--tp-panel-solid:#0b1a15;--tp-line:rgba(242,234,217,.12);--tp-line-up:rgba(242,234,217,.22);
  --tp-cream:#f2ead9;--tp-dim:rgba(242,234,217,.62);--tp-faint:rgba(242,234,217,.42);
  --tp-low:#a9c0dc;--tp-mid:#3cc08e;--tp-high:#f0bd4f;--tp-top:#b591ff;--tp-bust:#ff6b5e;--tp-jade:#2f9e6e;--tp-jade-up:#38b07d;
  --hud-h:56px;--ses-h:36px;--gut:12px}
*{box-sizing:border-box}
html,body{margin:0;height:100%;background:var(--tp-bg);overflow:hidden;overscroll-behavior:none}
body{font:400 14px/1.35 var(--bz-sans);color:var(--tp-cream);-webkit-font-smoothing:antialiased;-webkit-text-size-adjust:100%}
button,input{font:inherit;color:inherit}
.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
.tp{position:fixed;inset:0;width:100vw;height:100dvh;overflow:hidden;isolation:isolate;user-select:none;-webkit-user-select:none;touch-action:manipulation}
#scene{position:absolute;inset:0;width:100%;height:100%;display:block;z-index:0}
.tp-shade{position:absolute;inset:0;z-index:1;pointer-events:none;background:linear-gradient(180deg,rgba(3,9,7,.55) 0,rgba(3,9,7,0) 22%,rgba(3,9,7,0) 62%,rgba(3,9,7,.6) 100%)}
.no-webgl #scene{display:none}.no-webgl{background:radial-gradient(120% 80% at 50% 90%,#145a40 0,#06110d 60%)}

/* HUD */
.hud{position:absolute;z-index:6;top:0;left:0;right:0;height:var(--hud-h);display:flex;align-items:center;gap:10px;padding:0 var(--gut) 0 8px;
  background:linear-gradient(180deg,rgba(4,11,9,.92),rgba(4,11,9,.66));border-bottom:1px solid var(--tp-line);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px)}
.hud-home{flex:none;width:44px;height:44px;display:grid;place-items:center;border:0;border-radius:12px;background:transparent;cursor:pointer;padding:0}
.hud-home img{width:34px;height:34px}
.hud-home[hidden]{display:none}
.hud-title{flex:none;display:grid;line-height:1.05}
.hud-title h1{margin:0;font:600 22px/1 var(--bz-serif);letter-spacing:.01em;color:var(--tp-cream)}
.hud-live{display:flex;align-items:center;gap:5px;font-size:11px;color:var(--tp-dim);white-space:nowrap}
.hud-live i{width:6px;height:6px;border-radius:50%;background:var(--tp-mid);box-shadow:0 0 6px var(--tp-mid);animation:tp-blink 2s infinite}
.is-offline .hud-live i{background:var(--tp-bust);box-shadow:none}
@keyframes tp-blink{50%{opacity:.35}}
.hist{flex:1 1 auto;min-width:0;display:flex;gap:6px;margin:0 6px;padding:0;list-style:none;overflow:hidden;-webkit-mask-image:linear-gradient(90deg,#000 80%,transparent);mask-image:linear-gradient(90deg,#000 80%,transparent)}
.hist li{flex:none}
.pill{display:inline-block;min-height:28px;padding:4px 9px;border:0;border-radius:999px;font:500 12.5px/20px var(--bz-mono);font-variant-numeric:tabular-nums;cursor:pointer;
  background:rgba(96,132,176,.16);color:var(--tp-low);box-shadow:inset 0 0 0 1px rgba(120,160,210,.3)}
.pill.b-mid{background:rgba(60,192,142,.16);color:var(--tp-mid);box-shadow:inset 0 0 0 1px rgba(60,192,142,.35)}
.pill.b-high{background:rgba(240,189,79,.18);color:var(--tp-high);box-shadow:inset 0 0 0 1px rgba(240,189,79,.45)}
.pill.b-top{background:rgba(181,145,255,.2);color:var(--tp-top);box-shadow:inset 0 0 0 1px rgba(181,145,255,.5)}
.hist li:first-child .pill{animation:tp-pop .5s var(--bz-pop)}
@keyframes tp-pop{from{transform:scale(.6);opacity:0}}
.hud-wallet{flex:none;display:grid;justify-items:end;line-height:1.1}
.hud-wallet small{font-size:10.5px;color:var(--tp-faint);text-transform:uppercase;letter-spacing:.08em}
.hud-wallet strong{font:500 18px/1.15 var(--bz-mono);font-variant-numeric:tabular-nums}
.icon{flex:none;width:44px;height:44px;display:grid;place-items:center;border:0;border-radius:12px;background:rgba(242,234,217,.06);color:var(--tp-cream);cursor:pointer}
.icon:hover{background:rgba(242,234,217,.12)}
#sound .s-on{display:none}#sound[aria-pressed=true] .s-on{display:inline}#sound[aria-pressed=true] .s-off{display:none}
.bz-sound-ask{position:absolute;z-index:30;right:var(--ask-right,12px);top:var(--ask-top,60px);display:flex;align-items:center;gap:8px;padding:8px 10px;border-radius:12px;background:var(--tp-panel-solid);box-shadow:0 8px 30px #0008;border:1px solid var(--tp-line-up)}
.bz-sound-ask p{margin:0 4px 0 2px;font-weight:600;color:var(--tp-cream)}
.bz-sound-ask .bz-btn{background:var(--tp-jade);color:#fff}.bz-sound-ask .bz-btn-ghost{background:transparent;color:var(--tp-cream)}

/* Session strip: elapsed time and net position stay on screen (UK RTS 14 since Jan 2025). */
.session{position:absolute;z-index:5;top:var(--hud-h);left:0;right:0;height:var(--ses-h);display:flex;align-items:center;gap:16px;padding:0 var(--gut);
  font-size:12px;background:rgba(4,11,9,.42);border-bottom:1px solid rgba(242,234,217,.06)}
.session span{display:flex;align-items:baseline;gap:6px;white-space:nowrap}
.session small{font-size:10.5px;color:var(--tp-faint);text-transform:uppercase;letter-spacing:.08em}
.session b{font:500 13px var(--bz-mono);font-variant-numeric:tabular-nums}
.session b.up{color:var(--tp-mid)}.session b.down{color:#ff9a8f}
.room-toggle,.fair-chip{height:30px;display:inline-flex;align-items:center;gap:6px;padding:0 12px;border:0;border-radius:999px;background:rgba(242,234,217,.08);font-size:12.5px;font-weight:500;cursor:pointer;white-space:nowrap}
.room-toggle{margin-left:auto}
.room-toggle span{font-family:var(--bz-mono)}
.fair-chip{color:var(--tp-mid)}
.room-docked .room-toggle{display:none}
.room-docked .fair-chip{margin-left:auto}

/* Readout: the big multiplier, centred in the free stage */
.readout{position:absolute;z-index:4;left:var(--free-l,0);top:var(--free-t,92px);width:var(--free-w,100%);display:grid;justify-items:center;padding-top:clamp(4px,3.2vh,40px);pointer-events:none;text-align:center}
.readout::before{content:'';position:absolute;left:50%;top:0;width:min(640px,96%);height:calc(100% + 30px);transform:translateX(-50%);z-index:-1;
  background:radial-gradient(closest-side,rgba(2,6,5,.5),rgba(2,6,5,.28) 55%,transparent);pointer-events:none}
.kicker{margin:0;min-height:1.3em;font:600 clamp(12px,1.6vh,16px)/1.3 var(--bz-sans);text-transform:uppercase;letter-spacing:.16em;color:var(--tp-dim)}
.mult{display:block;font:500 clamp(46px,min(13vw,14vh),150px)/1 var(--bz-mono);font-variant-numeric:tabular-nums;letter-spacing:-.02em;color:var(--tp-cream);
  text-shadow:0 2px 0 rgba(0,0,0,.35),0 0 34px rgba(0,0,0,.6);transition:color .25s;-webkit-text-stroke:1px rgba(0,0,0,.25)}
.mult span{font-size:.5em;margin-left:.06em;opacity:.8}
.mult.b-low{color:#fbf6ea}.mult.b-mid{color:#7ff0bf;text-shadow:0 0 30px rgba(60,192,142,.45),0 2px 0 #0006}
.mult.b-high{color:#ffd77a;text-shadow:0 0 3px #0008,0 3px 12px #0009,0 0 36px rgba(240,189,79,.55)}.mult.b-top{color:#e6dbff;text-shadow:0 0 3px #0009,0 3px 14px #000a,0 0 44px rgba(181,145,255,.7)}
.mult.is-bust{color:var(--tp-bust);text-shadow:0 0 30px rgba(255,107,94,.35),0 2px 0 #0008;animation:tp-shake .45s}
.mult.is-summit{color:#ffe08a;text-shadow:0 0 50px rgba(255,210,110,.8)}
.mult.is-count{font-size:clamp(40px,min(10vw,11vh),112px);color:var(--tp-cream)}
@keyframes tp-shake{20%{transform:translateX(-6px)}40%{transform:translateX(5px)}60%{transform:translateX(-3px)}80%{transform:translateX(2px)}}
.sub{margin:4px 0 0;min-height:1.3em;font-size:clamp(12px,1.6vh,14.5px);color:rgba(242,234,217,.8);text-shadow:0 1px 3px #000,0 0 10px #000c}
.sub.is-note{color:#ffd0a0}
.bar{width:min(240px,50%);height:4px;margin-top:10px;border-radius:4px;background:rgba(242,234,217,.12);overflow:hidden;opacity:0;transition:opacity .2s}
.bar i{display:block;height:100%;background:linear-gradient(90deg,var(--tp-jade),var(--tp-high));transform-origin:left;transform:scaleX(0)}
[data-phase=betting] .bar,[data-phase=ended] .bar{opacity:1}
.milestone{position:absolute;z-index:4;left:var(--free-l,0);width:var(--free-w,100%);top:calc(var(--free-t,92px) + var(--free-h,400px) * .48);margin:0;text-align:center;pointer-events:none;
  font:600 clamp(28px,6vh,60px)/1 var(--bz-serif);color:#ffe7a8;opacity:0;text-shadow:0 0 30px rgba(255,200,90,.7)}
.milestone.is-on{animation:tp-mile 1.4s var(--bz-ease) both}
@keyframes tp-mile{0%{opacity:0;transform:scale(.6)}20%{opacity:1;transform:scale(1.08)}70%{opacity:.9;transform:scale(1)}100%{opacity:0;transform:translateY(-30px) scale(1.05)}}

/* Theme stamp (Snip: DEFUSED 2.43x) over the stage, on your own cash-out */
.stamp{position:absolute;z-index:6;left:calc(var(--free-l,0px) + var(--free-w,100%) / 2);top:calc(var(--free-t,92px) + var(--free-h,400px) * .44);margin:0;padding:8px 18px;
  transform:translate(-50%,-50%) rotate(-6deg);border:3px solid currentColor;border-radius:10px;font:600 clamp(22px,4.6vh,44px)/1 var(--bz-mono);letter-spacing:.06em;
  white-space:nowrap;pointer-events:none;opacity:0;background:rgba(3,10,6,.55)}
.stamp.is-on{animation:tp-stamp 1.5s var(--bz-ease) both}
@keyframes tp-stamp{0%{opacity:0;transform:translate(-50%,-50%) rotate(-6deg) scale(1.8)}14%{opacity:1;transform:translate(-50%,-50%) rotate(-6deg) scale(.96)}22%{transform:translate(-50%,-50%) rotate(-6deg) scale(1)}80%{opacity:1}100%{opacity:0;transform:translate(-50%,-58%) rotate(-6deg) scale(1)}}
@media (prefers-reduced-motion:reduce){.stamp.is-on{animation-duration:1.5s;animation-name:tp-fade}@keyframes tp-fade{0%,100%{opacity:0}15%,80%{opacity:1}}}

/* Ruler ticks and your auto cash-out labels, projected from the scene */
.labels{position:absolute;inset:0;z-index:3;pointer-events:none}
.tick,.marker{position:absolute;left:0;top:0;white-space:nowrap;transition:opacity .2s;will-change:transform}
.tick{font:500 11.5px var(--bz-mono);color:rgba(169,192,220,.7);padding-right:6px;border-right:2px solid rgba(169,192,220,.35)}
.tick.b-mid{color:rgba(60,192,142,.75);border-color:rgba(60,192,142,.5)}.tick.b-high{color:rgba(240,189,79,.8);border-color:rgba(240,189,79,.5)}.tick.b-top{color:rgba(181,145,255,.85);border-color:rgba(181,145,255,.55)}
.marker{font:600 11.5px var(--bz-sans);color:#2a1a04;background:#f6d27a;padding:3px 8px;border-radius:999px;box-shadow:0 0 14px rgba(246,210,122,.6)}

/* The room: live bets, top today, mine */
.room{position:absolute;z-index:8;display:flex;flex-direction:column;background:var(--tp-panel);border:1px solid var(--tp-line);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px)}
.room-docked .room{left:var(--gut);top:calc(var(--hud-h) + var(--ses-h) + 10px);bottom:calc(var(--bets-h,150px) + 18px);width:min(320px,27vw);border-radius:16px}
/* The closed sheet slides out of the window and is hidden once it has (its controls leave the tab order and the window). */
.tp:not(.room-docked) .room{left:0;right:0;bottom:0;top:calc(var(--hud-h) + var(--ses-h));border-radius:18px 18px 0 0;transform:translateY(102%);visibility:hidden;transition:transform .28s var(--bz-ease),visibility 0s .28s;background:rgba(6,16,12,.96);z-index:12}
.tp.room-open:not(.room-docked) .room{transform:none;visibility:visible;transition:transform .28s var(--bz-ease),visibility 0s}
.tp.is-rail:not(.room-docked) .room{left:auto;width:min(380px,60vw);right:0;border-radius:18px 0 0 0;transform:translateX(102%)}
.tp.is-rail.room-open .room{transform:none}
.room-head{display:flex;align-items:center;gap:6px;padding:8px 8px 0}
.room-tabs{display:flex;gap:2px;flex:1;padding:3px;border-radius:12px;background:rgba(242,234,217,.06)}
.room-tabs button{flex:1;min-height:34px;border:0;border-radius:9px;background:transparent;font-size:12.5px;font-weight:600;color:var(--tp-dim);cursor:pointer}
.room-tabs button[aria-selected=true]{background:rgba(242,234,217,.12);color:var(--tp-cream)}
.room-close{width:40px;height:40px;border:0;border-radius:10px;background:rgba(242,234,217,.08);font-size:22px;cursor:pointer}
.room-docked .room-close{display:none}
.room-sum{margin:8px 12px 4px;font-size:11.5px;color:var(--tp-dim)}
.room-list{flex:1;min-height:0;margin:0;padding:0 6px 6px;list-style:none;overflow-y:auto;scrollbar-width:thin;overscroll-behavior:contain}
.room-list li{display:grid;grid-template-columns:minmax(0,1fr) 48px 52px 60px;align-items:center;gap:4px;min-height:30px;padding:3px 8px;border-radius:8px;font-size:12.5px}
.room-list li:nth-child(odd){background:rgba(242,234,217,.03)}
.room-list .who{display:flex;align-items:center;gap:5px;overflow:hidden;white-space:nowrap}
.room-list .who .nm{overflow:hidden;text-overflow:ellipsis}
.room-list .stk,.room-list .mx,.room-list .win{font:500 12px var(--bz-mono);text-align:right;font-variant-numeric:tabular-nums}
.room-list .stk{color:var(--tp-dim)}
.room-list .is-cashed{background:rgba(60,192,142,.1)!important}.room-list .is-cashed .mx,.room-list .is-cashed .win{color:var(--tp-mid)}
.room-list .is-lost{opacity:.5}
.room-list .is-me{box-shadow:inset 3px 0 0 var(--tp-high)}.room-list .is-me .who{color:var(--tp-high);font-weight:600}
.room-list .empty{display:block;color:var(--tp-dim);padding:10px}
.rank{display:inline-grid;place-items:center;width:20px;height:20px;border-radius:50%;background:rgba(242,234,217,.1);font:600 11px var(--bz-mono)}
.demo{flex:none;display:inline-block;padding:0 4px;border-radius:4px;font:600 8.5px/1.5 var(--bz-sans);font-style:normal;letter-spacing:.06em;text-transform:uppercase;color:#cfe3ff;background:rgba(120,160,255,.18);box-shadow:inset 0 0 0 1px rgba(150,180,255,.35)}
.room-note{margin:0;padding:8px 12px 10px;font-size:10.5px;line-height:1.35;color:var(--tp-faint);border-top:1px solid var(--tp-line)}

/* The two bets */
.bets{position:absolute;z-index:9;left:0;right:0;bottom:0;display:grid;grid-template-columns:repeat(2,minmax(0,460px));justify-content:center;gap:10px;padding:8px var(--gut) max(10px,env(safe-area-inset-bottom))}
.bet{container-type:inline-size;padding:10px;border-radius:16px;background:var(--tp-panel);border:1px solid var(--tp-line);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);transition:border-color .2s,box-shadow .2s}
.bet[data-state=cashout]{border-color:rgba(240,189,79,.55);box-shadow:0 0 0 1px rgba(240,189,79,.25),0 0 28px rgba(240,189,79,.18)}
.bet[data-state=cancel]{border-color:rgba(255,140,120,.35)}
.bet-head{display:flex;align-items:center;gap:8px;min-height:30px;margin-bottom:8px}
.bet-name{font:600 13px var(--bz-sans);color:var(--tp-dim);margin-right:auto;white-space:nowrap}
.auto{display:flex;align-items:center;gap:6px;cursor:pointer;font-size:12.5px;white-space:nowrap}
.auto input{appearance:none;width:34px;height:20px;margin:0;border-radius:999px;background:rgba(242,234,217,.18);position:relative;cursor:pointer;transition:background .15s}
.auto input::after{content:'';position:absolute;top:2px;left:2px;width:16px;height:16px;border-radius:50%;background:var(--tp-cream);transition:transform .15s}
.auto input:checked{background:var(--tp-jade)}.auto input:checked::after{transform:translateX(14px)}
.auto-box{display:flex;align-items:center;height:30px;padding:0 8px;border-radius:9px;background:rgba(0,0,0,.35);box-shadow:inset 0 0 0 1px var(--tp-line)}
.auto-box input{width:62px;border:0;background:transparent;font:500 14px var(--bz-mono);text-align:right;outline:none}
.auto-box i{font-style:normal;color:var(--tp-dim);margin-left:1px}
.auto-off .auto-box{opacity:.4}
.repeat{height:30px;padding:0 10px;border:0;border-radius:9px;background:rgba(242,234,217,.07);font-size:12px;font-weight:600;color:var(--tp-dim);cursor:pointer;white-space:nowrap}
.repeat[aria-pressed=true]{background:rgba(60,192,142,.2);color:var(--tp-mid)}
.repeat[hidden]{display:none}
.bet-body{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.15fr) auto;gap:8px;align-items:stretch}
.stake{display:grid;grid-template-columns:44px minmax(0,1fr) 44px;grid-template-rows:44px auto;gap:6px}
.stake .bz-btn{min-height:44px;padding:0;background:rgba(242,234,217,.1);color:var(--tp-cream);font-size:20px}
.st-value{width:100%;min-width:0;height:44px;border:0;border-radius:12px;background:rgba(0,0,0,.35);box-shadow:inset 0 0 0 1px var(--tp-line);text-align:center;font:500 18px var(--bz-mono);outline:none}
.chips{grid-column:1/-1;display:grid;grid-template-columns:repeat(4,1fr);gap:4px}
.chips button{height:28px;border:0;border-radius:8px;background:rgba(242,234,217,.07);font:500 12px var(--bz-mono);color:var(--tp-dim);cursor:pointer}
.chips button:hover,.stake .bz-btn:hover{background:rgba(242,234,217,.16)}
.is-locked .stake,.is-locked .auto,.is-locked .auto-box{opacity:.5}
.main,.half{display:grid;place-content:center;gap:2px;min-height:78px;padding:6px 10px;border-radius:14px;background:var(--tp-jade);color:#fff;text-align:center;box-shadow:inset 0 -3px 0 rgba(0,0,0,.18)}
.main:hover{background:var(--tp-jade-up)}
/* The labels inside are repainted on every change (leaving a stake box repaints them on mousedown): the press must land on
   the button itself, or a click that starts on a replaced label is lost. */
.main *,.half *{pointer-events:none}
.main-top{font:600 17px/1.1 var(--bz-sans);letter-spacing:.01em}
.main-sub{font:500 14px/1.2 var(--bz-mono);opacity:.92}
.bet[data-state=cancel] .main{background:#5a2420;color:#ffd9d2;box-shadow:inset 0 0 0 1.5px rgba(255,140,120,.55)}
.bet[data-state=cashout] .main{background:linear-gradient(180deg,#f6cf6c,#e3a93a);color:#2a1a04}
.bet[data-state=cashout] .main .main-sub{font-size:17px;font-weight:600}
.bet[data-state=done] .main{background:rgba(60,192,142,.18);color:var(--tp-mid);box-shadow:inset 0 0 0 1.5px rgba(60,192,142,.5)}
.bet[data-state=next] .main{background:#244b3c}
.half{min-width:76px;background:#3a2c0c;color:#ffe2a0;box-shadow:inset 0 0 0 1.5px rgba(240,189,79,.6)}
.half[hidden]{display:none}
.main[aria-disabled=true]{opacity:.55;cursor:default}
@container (max-width:360px){.chips{display:none}.stake{grid-template-rows:44px}.main,.half{min-height:52px}.repeat{padding:0 7px;font-size:11px}}

/* Menu */
.menu{width:min(680px,calc(100vw - 24px));max-height:calc(100dvh - 24px);padding:0;border:1px solid var(--tp-line-up);border-radius:18px;background:#0b1a15;color:var(--tp-cream);box-shadow:0 30px 80px #000c;overflow:hidden}
.menu[open]{display:flex;flex-direction:column}
.menu::backdrop{background:rgba(2,6,5,.66);backdrop-filter:blur(3px)}
.menu-head{display:flex;align-items:center;justify-content:space-between;padding:12px 14px 6px}
.menu-head h2{margin:0;font:600 24px var(--bz-serif)}
.close{width:44px;height:44px;border:0;border-radius:12px;background:rgba(242,234,217,.08);font-size:24px;cursor:pointer}
.menu-tabs{display:flex;gap:4px;padding:0 12px 8px;border-bottom:1px solid var(--tp-line)}
.menu-tabs button{flex:1;min-height:40px;border:0;border-radius:10px;background:transparent;font-weight:600;font-size:14px;color:var(--tp-dim);cursor:pointer}
.menu-tabs button[aria-selected=true]{background:rgba(242,234,217,.1);color:var(--tp-cream)}
.menu-body{padding:12px 16px 18px;overflow-y:auto;overscroll-behavior:contain;font-size:14px;line-height:1.5}
.menu-body h3{margin:16px 0 6px;font:600 17px var(--bz-serif);color:#f6d98a}
.menu-body .lead{font-size:15px;margin-top:0}
.steps{padding-left:20px;margin:6px 0}.steps li{margin:4px 0}
.facts,.hashes{display:grid;gap:6px;margin:10px 0}
.facts div,.hashes div{display:grid;grid-template-columns:150px 1fr;gap:10px;padding:6px 10px;border-radius:8px;background:rgba(242,234,217,.04)}
.facts dt,.hashes dt{color:var(--tp-dim)}.facts dd,.hashes dd{margin:0}
.hashes dd{font:12px/1.4 var(--bz-mono);word-break:break-all}
.warn{padding:8px 10px;border-radius:8px;background:rgba(240,189,79,.12);color:#ffe2a0;font-size:13px}
.proofs{list-style:none;margin:0;padding:0;display:grid;gap:4px}
.proofs>li{display:grid;grid-template-columns:86px 64px minmax(0,1fr) auto;align-items:center;gap:8px;padding:4px 6px;border-radius:8px;background:rgba(242,234,217,.03)}
.proofs>li.is-focus{box-shadow:inset 0 0 0 1px rgba(240,189,79,.6)}
.proofs code{font:12px var(--bz-mono);color:var(--tp-dim);overflow:hidden;text-overflow:ellipsis}
.proofs .bz-btn,.manual .bz-btn{background:var(--tp-jade);color:#fff}
.proofs .result{grid-column:1/-1;padding:4px 6px 8px;font-size:13px}
.result p{margin:2px 0}.result ul{margin:4px 0;padding-left:18px}.result .ok{color:var(--tp-mid)}.result .bad{color:var(--tp-bust)}
.result p.ok{font-weight:600}.result .seed code{font-size:11px;word-break:break-all;color:var(--tp-dim)}
.rn{font:12px var(--bz-mono);color:var(--tp-dim)}
.manual{display:grid;grid-template-columns:1fr 1fr auto;gap:6px}
.manual input{min-width:0;height:36px;padding:0 10px;border:0;border-radius:8px;background:rgba(0,0,0,.35);box-shadow:inset 0 0 0 1px var(--tp-line);font:12px var(--bz-mono)}
.manual p{grid-column:1/-1;margin:4px 0 0;font-size:13px}
.setting{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:10px 0;border-bottom:1px solid var(--tp-line)}
.setting[hidden]{display:none}
.setting span{display:grid}.setting small{color:var(--tp-dim);font-size:12.5px}
.toggle{min-width:86px;padding:0 14px;background:rgba(242,234,217,.1);color:var(--tp-cream)}
.toggle[aria-pressed=true]{background:var(--tp-jade);color:#fff}
.bz-seg{background:rgba(242,234,217,.06)}.bz-seg button{color:var(--tp-dim)}.bz-seg button[aria-pressed=true]{background:var(--tp-jade);color:#fff}
.demo-note{margin-top:14px;font-size:12px;color:var(--tp-faint)}
.mine{width:100%;border-collapse:collapse;font-size:13px}.mine th,.mine td{padding:5px 6px;text-align:left;border-bottom:1px solid var(--tp-line)}
.mine th{color:var(--tp-dim);font-weight:500}.mine td:nth-child(n+3){font-family:var(--bz-mono)}.mine .up{color:var(--tp-mid)}.mine .down{color:#ff9a8f}
kbd{display:inline-block;min-width:22px;padding:1px 6px;border-radius:6px;background:rgba(242,234,217,.12);font:12px var(--bz-mono);text-align:center}

/* Stream safe: amounts hidden, multipliers stay */
.stream-safe .amt,.stream-safe .hud-wallet strong,.stream-safe .bz-cel-net,.stream-safe .bz-cel-line,.stream-safe .bz-cel-toast-net{filter:blur(7px);opacity:.6}

/* Celebrate card sits above the bets but inside the window */
.bz-cel-layer{z-index:10}

/* ---------- Sizes ---------- */
@media (max-width:899px){.hud-live{display:none}}
@media (max-width:820px){.bets{grid-template-columns:repeat(2,minmax(0,1fr))}}
/* Portrait phones: bets stacked, compact */
@media (max-width:599px){
  :root{--hud-h:50px;--ses-h:34px;--gut:8px}
  .hud{gap:6px;padding-right:8px}
  .hud-title{display:none}
  .hud-wallet small{font-size:9.5px}.hud-wallet strong{font-size:15px}
  .icon{width:40px;height:44px}
  .hist{margin:0 2px;gap:4px}.pill{padding:3px 7px;font-size:11.5px}
  .session{gap:10px}.session .session-round{display:none}
  .bets{grid-template-columns:minmax(0,1fr);gap:6px;padding-top:6px}
  .bet{padding:8px}
  .bet-head{margin-bottom:6px;gap:6px}
  .room-toggle,.fair-chip{padding:0 10px;font-size:12px}
}
@media (max-width:519px){.fair-chip{font-size:0;gap:0;width:34px;padding:0;justify-content:center}.fair-chip svg{width:16px;height:16px}.session small.long{display:none}.room-toggle .rt-long{display:none}}
@media (max-height:700px) and (max-width:599px){.chips{display:none}.stake{grid-template-rows:44px}.main,.half{min-height:52px}}
/* Landscape phones: a right rail inside the window */
.tp.is-rail{--hud-h:46px;--ses-h:32px}
.tp.is-rail .bets{left:auto;top:calc(var(--hud-h) + var(--ses-h));width:min(380px,46vw);grid-template-columns:minmax(0,1fr);align-content:end;gap:6px;padding:6px 8px 8px}
.tp.is-rail .bet{padding:7px}
.tp.is-rail .bet-head{margin-bottom:5px}
.tp.is-rail .chips{display:none}.tp.is-rail .stake{grid-template-rows:44px}.tp.is-rail .main,.tp.is-rail .half{min-height:50px}
.tp.is-rail .hud-live,.tp.is-rail .session-round{display:none}
.tp.is-rail .hud-title h1{font-size:19px}
/* 800x600 and 1024x768: comfortable two columns */
@media (min-width:600px) and (max-height:620px){.chips button{height:26px}.main,.half{min-height:70px}}
