:root{--bg:#06110e;--panel:#0b1d17;--line:#27463a;--felt:#0b5a3b;--felt2:#073f2b;--gold:#e9c46a;--text:#f5f4ea;--muted:#9fb6aa;--red:#cf4545}*{box-sizing:border-box}body{margin:0;background:radial-gradient(circle at 50% -10%,#153b2d,#050b09 60%);color:var(--text);font:15px system-ui,-apple-system,Segoe UI,sans-serif;min-height:100vh}.app{max-width:1280px;margin:auto;padding:18px}header{display:flex;justify-content:space-between;gap:20px;align-items:center;padding:8px 4px 18px}.brand{display:flex;gap:12px;align-items:center}.logo{width:48px;height:48px;border:2px solid var(--gold);border-radius:50%;display:grid;place-items:center;font-size:28px;color:var(--gold)}h1{font-size:22px;letter-spacing:2px;margin:0}h1 b{color:var(--gold)}header p{margin:3px 0;color:var(--muted);font-size:12px}.topstats{display:flex;gap:26px}.topstats div,.hud>div{text-align:center}.topstats span,.hud small,.statcards small{display:block;color:var(--muted);font-size:10px;letter-spacing:1.3px}.topstats strong{font-size:18px}nav{display:flex;gap:5px;border-bottom:1px solid var(--line);margin-bottom:14px}button{border:1px solid #355a49;background:#10271e;color:#eef6f1;border-radius:9px;padding:10px 15px;font-weight:700;cursor:pointer;transition:.15s}button:hover:not(:disabled){filter:brightness(1.2);transform:translateY(-1px)}button:disabled{opacity:.35;cursor:not-allowed}.tab{border-radius:9px 9px 0 0;border-bottom:0;background:transparent;color:var(--muted)}.tab.active{color:var(--gold);background:#10271e}#settingsBtn{margin-left:auto;background:transparent;border:0;color:var(--muted)}.panel{display:none}.panel.active{display:block}.hud{display:grid;grid-template-columns:repeat(3,120px) minmax(180px,1fr) auto;align-items:center;gap:10px;background:#091812;border:1px solid var(--line);padding:10px 14px;border-radius:12px 12px 0 0}.hud strong{font-size:19px}.meter{height:6px;background:#263a31;border-radius:10px;overflow:hidden;margin:5px 0}.meter i{display:block;height:100%;width:0;background:var(--gold)}.penetration{text-align:left!important}.penetration strong{font-size:11px}.felt{height:510px;position:relative;overflow:hidden;border:1px solid #3d6b56;border-top:0;border-radius:0 0 240px 240px;background:radial-gradient(ellipse at center,#0d6947 0,#084d35 72%,#063525);box-shadow:inset 0 0 70px #03271c,0 10px 30px #0008}.felt:before{content:"";position:absolute;inset:18px;border:1px solid #d7c27a55;border-radius:0 0 220px 220px;pointer-events:none}.rail{position:absolute;left:0;right:0;display:flex;justify-content:center;gap:70px;color:#e3d08b99;font:11px Georgia,serif;letter-spacing:2px}.railtop{top:25px}.dealer-zone{position:absolute;top:72px;left:50%;transform:translateX(-50%);text-align:center}.player-zone{position:absolute;bottom:83px;left:50%;transform:translateX(-50%);text-align:center;width:65%}.zone-label{color:#d8c67f;font-size:11px;letter-spacing:2px;margin-bottom:9px}.cards{display:flex;justify-content:center;gap:8px;min-height:105px}.card{width:72px;height:100px;border-radius:8px;background:linear-gradient(145deg,#fff,#e7e7df);color:#151515;border:1px solid #ddd;box-shadow:0 6px 12px #0007;position:relative;text-align:left;padding:6px;font:bold 20px Georgia,serif;animation:deal .18s ease-out}.card.red{color:#b62525}.card .suit{display:block;font-size:18px}.card .big{position:absolute;right:8px;bottom:5px;font-size:31px}.card.back{background:repeating-linear-gradient(45deg,#801f25,#801f25 5px,#a9343c 5px,#a9343c 10px);border:4px solid #eee}.card.back>*{display:none}@keyframes deal{from{transform:translate(170px,-100px) rotate(10deg);opacity:.2}}.message{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);color:#f5e8b3;background:#052b20cc;border:1px solid #d5bf6b55;border-radius:30px;padding:8px 18px;font-family:Georgia,serif}.betspot{position:absolute;bottom:42px;left:50%;transform:translateX(-50%);width:72px;height:72px;border:2px solid #d6c37688;border-radius:50%;display:grid;place-items:center;align-content:center;color:#d6c376}.betspot span{font-size:9px}.shoe-visual{position:absolute;right:6%;top:115px;text-align:center}.shoe-box{width:70px;height:120px;border:3px solid #88978f;border-radius:5px 5px 18px 18px;position:relative;background:#17231e;overflow:hidden}.shoe-box div{position:absolute;left:6px;right:6px;bottom:8px;height:90%;background:repeating-linear-gradient(#eee 0,#eee 2px,#aaa 3px,#aaa 4px);transition:.3s}.shoe-box span{position:absolute;z-index:2;bottom:42%;left:0;right:0;color:#17231e;font-size:9px;font-weight:900}.shoe-visual small{display:block;margin-top:6px;color:var(--muted)}.controls{display:flex;justify-content:space-between;gap:15px;align-items:center;padding:15px 10px}.chips,.actions,.quick,.row{display:flex;gap:8px;align-items:center}.chip{width:50px;height:50px;border-radius:50%;padding:0;border:5px dashed #fff9;box-shadow:inset 0 0 0 2px #0007,0 4px 8px #0007}.c1{background:#ddd;color:#111}.c5{background:#b93535}.c25{background:#278251}.c100{background:#20242b}.c500{background:#74428b}.chip.selected{outline:3px solid var(--gold);outline-offset:3px}.primary{background:linear-gradient(#ebcd74,#c9a842);color:#1b1b13;border-color:#f4df9c;padding-left:22px;padding-right:22px}.ghost{background:transparent}.small{padding:7px}.quick{justify-content:center;border-top:1px solid var(--line);padding:12px;flex-wrap:wrap}.quick button{background:#0a1813;color:var(--muted)}kbd{font-size:9px;color:#789087}.labgrid{display:grid;grid-template-columns:1fr 1fr;gap:16px}.labgrid article,.historybox,.statcards article{background:#0a1813;border:1px solid var(--line);border-radius:14px;padding:22px}.labgrid h2,.historybox h2{margin-top:0}.labgrid p,.note{color:var(--muted)}.trainer-card{margin:24px auto;width:120px;height:168px;background:#eee;color:#111;border-radius:10px;display:grid;place-items:center;font:48px Georgia,serif;box-shadow:0 8px 25px #000}.speed{margin:20px 0}.speed label{display:flex;justify-content:space-between}.speed input{width:100%;accent-color:var(--gold)}form{margin-top:25px}form label{display:block;color:var(--muted);margin-bottom:7px}input{background:#06100c;border:1px solid var(--line);color:white;padding:12px;border-radius:8px;font-size:16px;width:100px}.result{margin-top:14px;border-left:3px solid var(--gold);padding:10px;background:#10251d}.composition{display:grid;grid-template-columns:repeat(13,1fr);gap:5px;margin:25px 0}.comp{background:#132b21;border-radius:6px;text-align:center;padding:9px 2px}.comp b{display:block;color:var(--gold)}.statcards{display:grid;grid-template-columns:repeat(6,1fr);gap:10px}.statcards article{text-align:center;padding:20px 10px}.statcards strong{font-size:28px}.historybox{margin-top:14px}.history{max-height:330px;overflow:auto}.history-row{display:grid;grid-template-columns:50px 1fr 1fr 100px;gap:10px;border-top:1px solid #1d372c;padding:9px;color:var(--muted)}.history-row b{color:white}.win{color:#76d19d!important}.loss{color:#e27777!important}.modal{position:fixed;inset:0;background:#000b;display:grid;place-items:center;padding:20px;z-index:10}.modal.hidden{display:none}.modalcard{position:relative;background:#0d2018;border:1px solid #41604f;border-radius:16px;max-width:650px;width:100%;max-height:85vh;overflow:auto;padding:25px}.close{position:absolute;right:12px;top:12px;border:0;background:none;font-size:25px}.simgrid{display:grid;grid-template-columns:repeat(4,1fr);gap:8px;margin:18px 0}.simgrid div{background:#07150f;padding:15px;border-radius:9px;text-align:center}.simgrid strong{display:block;font-size:20px;color:var(--gold)}.rules label{display:flex;justify-content:space-between;align-items:center;border-top:1px solid var(--line);padding:13px 0}.rules select{background:#06100c;color:#fff;border:1px solid var(--line);padding:8px;border-radius:6px}footer{text-align:center;color:#60796c;font-size:11px;padding:24px}@media(max-width:760px){.app{padding:8px}.topstats{gap:10px}.topstats div:nth-child(3){display:none}.hud{grid-template-columns:repeat(3,1fr)}.hud .penetration{grid-column:1/3}.felt{height:475px;border-radius:0 0 100px 100px}.felt:before{border-radius:0 0 90px 90px}.rail{gap:15px;font-size:8px}.shoe-visual{right:3%;transform:scale(.8)}.player-zone{width:85%}.card{width:58px;height:84px;font-size:16px}.card .big{font-size:24px}.cards{min-height:88px}.controls{flex-direction:column}.chips{flex-wrap:wrap;justify-content:center}.actions{flex-wrap:wrap;justify-content:center}.actions button{padding:10px}.labgrid{grid-template-columns:1fr}.statcards{grid-template-columns:repeat(3,1fr)}.composition{grid-template-columns:repeat(7,1fr)}.history-row{grid-template-columns:35px 1fr 1fr 70px;font-size:12px}.message{white-space:nowrap;font-size:12px}.simgrid{grid-template-columns:repeat(2,1fr)}}
.speed-scale{display:flex;justify-content:space-between;margin-top:5px;font-size:.72rem;letter-spacing:.04em;opacity:.62}.history-row small{font-size:.68rem;opacity:.68;font-weight:500;white-space:nowrap}

/* v3 desktop compact casino layout: keep the full play loop above the fold */
@media (min-width:761px){
  .app{padding:8px 14px 6px}
  header{padding:3px 4px 7px;min-height:52px}
  .logo{width:40px;height:40px;font-size:23px}
  h1{font-size:19px}
  header p{margin:1px 0;font-size:10px}
  .topstats{gap:22px}
  .topstats strong{font-size:16px}
  nav{margin-bottom:7px;height:35px}
  nav button{padding:7px 13px}
  .hud{padding:6px 12px;min-height:48px}
  .hud strong{font-size:16px}
  .meter{margin:3px 0}
  .felt{height:390px;border-radius:0 0 190px 190px}
  .felt:before{inset:13px;border-radius:0 0 175px 175px}
  .railtop{top:17px}
  .dealer-zone{top:48px}
  .player-zone{bottom:64px}
  .zone-label{margin-bottom:5px}
  .cards{min-height:86px;gap:6px}
  .card{width:61px;height:85px;font-size:17px;padding:5px}
  .card .suit{font-size:15px}
  .card .big{font-size:26px;right:6px;bottom:4px}
  .message{padding:6px 15px;font-size:13px}
  .betspot{bottom:24px;width:58px;height:58px}
  .shoe-visual{top:80px;right:5%}
  .shoe-box{width:57px;height:94px}
  .shoe-visual small{font-size:10px;margin-top:3px}
  .controls{padding:8px 8px 7px;min-height:58px}
  .chip{width:42px;height:42px;border-width:4px}
  .actions button{padding:8px 12px}
  .actions .primary{padding-left:17px;padding-right:17px}
  .quick{padding:6px 8px;min-height:42px}
  .quick button{padding:7px 11px;font-size:12px}
  footer{padding:8px 0 2px;font-size:9px}
}

@media (min-width:761px) and (max-height:760px){
  header p{display:none}
  header{min-height:43px;padding-bottom:4px}
  .logo{width:36px;height:36px;font-size:21px}
  nav{height:32px;margin-bottom:5px}
  nav button{padding:5px 11px}
  .hud{min-height:42px;padding:4px 10px}
  .felt{height:350px}
  .dealer-zone{top:42px}
  .player-zone{bottom:58px}
  .card{width:56px;height:78px}
  .cards{min-height:79px}
  .betspot{width:52px;height:52px;bottom:20px}
  .shoe-box{height:82px;width:52px}
  .controls{min-height:52px;padding:5px 8px}
  .chip{width:38px;height:38px}
  .quick{min-height:36px;padding:4px}
  footer{display:none}
}

/* v4 mobile play controls + outcome feedback */
.message.outcome{min-width:210px;text-align:center;border-width:2px;padding:10px 18px;display:grid;gap:1px;z-index:4;box-shadow:0 0 24px #0009}
.message.outcome strong{font:800 20px Georgia,serif;letter-spacing:1.5px}
.message.outcome span{font-size:20px;font-weight:900}
.message.outcome small{font:10px system-ui,sans-serif;color:var(--muted);margin-top:2px}
.message.outcome.win{border-color:#e9c46a;background:#073d29f2;box-shadow:0 0 28px #e9c46a66}.message.outcome.win strong{color:#ffe49a}.message.outcome.win span{color:#70e3a2}
.message.outcome.loss{border-color:#b64b4b;background:#321313ee}.message.outcome.loss strong,.message.outcome.loss span{color:#ef8585}
.message.outcome.push{border-color:#81988c;background:#17231eee}.message.outcome.push strong{color:#e6ece8}
.felt.flash-win{animation:winFlash .9s ease}.felt.flash-loss{animation:lossFlash .65s ease}
@keyframes winFlash{0%,100%{box-shadow:inset 0 0 70px #03271c,0 10px 30px #0008}40%{box-shadow:inset 0 0 75px #e9c46a55,0 0 28px #e9c46a66}}
@keyframes lossFlash{0%,100%{box-shadow:inset 0 0 70px #03271c,0 10px 30px #0008}45%{box-shadow:inset 0 0 70px #8e292955,0 0 18px #8e292944}}
#autoDealToggle.toggle-on{color:#f3d57b;border-color:#d1b65f;background:#25331d}
@media(max-width:760px){
  .actions{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));width:100%;gap:6px}
  .actions button{min-width:0;padding:11px 3px;font-size:12px;min-height:48px}
  .actions kbd{display:block;margin-top:2px;font-size:8px}
  .actions .deal-last{order:5;background:linear-gradient(#ebcd74,#c9a842);box-shadow:0 0 12px #e9c46a44}
  .controls{gap:8px}
  .quick{gap:6px}
  .quick button{flex:1 1 45%;min-width:135px}
}
\n\n/* v5: gameplay-first mobile layout */\n.hud-drawer{border:1px solid var(--line);border-radius:12px 12px 0 0;background:#091812;overflow:hidden}\n.hud-drawer>summary{display:none;list-style:none;cursor:pointer;padding:11px 14px;font-weight:800;align-items:center;justify-content:space-between;color:#eef6f1}\n.hud-drawer>summary::-webkit-details-marker{display:none}\n.hud-summary{font-size:11px;color:var(--muted);font-weight:600}.hud-summary b{color:var(--gold)}\n.score-pill{display:inline-grid;place-items:center;min-width:36px;height:30px;margin-left:6px;padding:0 9px;border-radius:10px;background:#062d21;border:1px solid #477b63;color:#fff;font-size:20px;font-weight:900;letter-spacing:0;box-shadow:inset 0 0 12px #0005}\n.player-zone .zone-label{font-size:14px;font-weight:800;color:#f0df9e;letter-spacing:1.5px}\n.player-zone .zone-label span{display:inline-grid;place-items:center;min-width:38px;height:31px;margin-left:7px;padding:0 8px;border-radius:10px;background:#062d21;border:1px solid #d6c37688;color:#fff;font-size:21px;font-weight:900;letter-spacing:0;box-shadow:inset 0 0 12px #0005}\n@media(max-width:760px){\n  header{padding-bottom:9px}nav{margin-bottom:7px}\n  .hud-drawer{border-radius:10px;margin-bottom:0}.hud-drawer>summary{display:flex}.hud-drawer:not([open]) .hud{display:none}.hud-drawer[open]>summary{border-bottom:1px solid var(--line)}\n  .hud-drawer>summary:after{content:'⌄';font-size:18px;color:var(--muted);margin-left:8px}.hud-drawer[open]>summary:after{content:'⌃'}\n  .hud{border:0;border-radius:0;padding:9px 10px}\n  .felt{border-top:1px solid #3d6b56;height:475px}\n  .dealer-zone{top:66px}.player-zone{bottom:82px}\n  .zone-label{font-size:13px;font-weight:800}.score-pill{font-size:19px}\n  .player-zone .zone-label{font-size:15px}.player-zone .zone-label span{font-size:22px}\n}\n

/* v6: faster visual decisions */
.actions .action-hit{background:linear-gradient(180deg,#28c96b,#128447);border-color:#55ef91;color:#fff;box-shadow:inset 0 1px 0 #ffffff42,0 0 13px #1fd16b38}
.actions .action-stand{background:linear-gradient(180deg,#ed5a5a,#a9212b);border-color:#ff8585;color:#fff;box-shadow:inset 0 1px 0 #ffffff35,0 0 13px #e53e4938}
.actions .action-double{background:linear-gradient(180deg,#1779b9,#105482);border-color:#3b9bd6;color:#fff}
.actions .action-split{background:linear-gradient(180deg,#7544a4,#4e2875);border-color:#9966c6;color:#fff}
.actions .action-hit:disabled,.actions .action-stand:disabled,.actions .action-double:disabled,.actions .action-split:disabled{filter:saturate(.48);box-shadow:none}
.zone-label.score-label,.player-zone .zone-label{display:inline-flex;align-items:center;justify-content:center;gap:7px;padding:4px 7px 4px 11px;border-radius:13px;background:#06291fd9;border:1px solid #477b6370;box-shadow:0 3px 12px #0005}
.zone-label.score-label .score-pill,.player-zone .zone-label span{margin-left:0;min-width:48px;height:38px;border-radius:11px;font-size:27px;line-height:1;background:#031b14;border:2px solid #e9c46a;color:#fff;box-shadow:inset 0 0 12px #0007,0 0 11px #e9c46a33}
.player-zone .zone-label span:empty,.zone-label.score-label .score-pill:empty{display:none}
@media(max-width:760px){
  .actions{grid-template-columns:repeat(5,minmax(0,1fr))}
  .actions .action-double{order:1}.actions .action-split{order:2}.actions .action-hit{order:3}.actions .action-stand{order:4}.actions .deal-last{order:5}
  .actions button{min-height:54px;font-size:12px;border-width:2px}
  .actions .action-hit,.actions .action-stand{font-size:14px}
  .zone-label.score-label,.player-zone .zone-label{font-size:14px;padding:4px 6px 4px 10px;margin-bottom:8px}
  .zone-label.score-label .score-pill,.player-zone .zone-label span{min-width:50px;height:39px;font-size:28px}
}

/* v7: mobile-first table — controls on felt, nav below gameplay */
.felt-toggle{position:absolute;z-index:3;top:50%;transform:translateY(-50%)}
.felt-toggle.auto{left:3%}.felt-toggle.fast{right:3%}
.felt-toggle button{width:92px;padding:9px 7px;border:1px solid #57a47d;background:#073225dd;border-radius:13px;display:grid;place-items:center;gap:5px;box-shadow:0 5px 16px #0005}
.felt-toggle b{font-size:11px}.felt-toggle small{font-size:9px;color:#b8c9c0}.switch{width:45px;height:24px;padding:3px;background:#263c33;border:1px solid #537166;border-radius:20px;display:block;transition:.18s}.switch i{display:block;width:16px;height:16px;background:#dce5e0;border-radius:50%;transition:.18s}.felt-toggle button.toggle-on .switch,.felt-toggle button[aria-pressed="true"] .switch{background:#16b85f}.felt-toggle button.toggle-on .switch i,.felt-toggle button[aria-pressed="true"] .switch i{transform:translateX(20px)}
.bottom-nav{margin:8px 0 0;border:1px solid var(--line);border-radius:14px;padding:5px;display:grid;grid-template-columns:repeat(4,1fr);gap:5px;background:#081812}.bottom-nav button{margin:0!important;border:1px solid #315747!important;border-radius:10px!important;min-height:48px;background:#0b2119!important;color:#b8c8c0!important;display:grid;place-items:center;gap:1px;padding:6px!important}.bottom-nav button span{font-size:10px}.bottom-nav .tab.active{border-color:#e9c46a!important;color:#f1d77e!important;background:#27311b!important}.bottom-nav #settingsBtn{color:#b8c8c0!important}
.betspot{background:#073a2a;border:4px solid #e9c46a;box-shadow:inset 0 0 0 5px #18784f,0 4px 14px #0008;z-index:2}.betspot span{font-weight:800;color:#e9c46a}.betspot strong{font-size:18px;color:#fff}
.actions .action-hit{background:linear-gradient(180deg,#1ee45e,#06a83f)!important;border-color:#57ff8d!important;box-shadow:inset 0 1px 0 #ffffff66,0 0 18px #19e75c88!important}
@media(max-width:760px){
  .app{padding-top:6px} header{padding:4px 3px 8px}.brand p{display:none}.logo{width:42px;height:42px}.brand h1{font-size:20px}.topstats{gap:14px}.topstats strong{font-size:17px}
  .hud-drawer{margin-top:0}.hud-drawer>summary{padding:7px 10px;font-size:12px}
  .felt{height:445px;border-radius:22px 22px 95px 95px;border-top:1px solid #3d6b56}.felt:before{inset:12px;border-radius:14px 14px 85px 85px}
  .railtop{top:16px}.dealer-zone{top:55px}.player-zone{bottom:72px}.message{top:48%}
  .shoe-visual{right:2%;top:96px;transform:scale(.72);transform-origin:top right}
  .felt-toggle{top:54%}.felt-toggle button{width:78px;padding:7px 5px}.felt-toggle.auto{left:2%}.felt-toggle.fast{right:2%}
  .betspot{bottom:18px;width:68px;height:68px}
  .controls{padding:9px 3px 4px;gap:7px}.chips{gap:7px;flex-wrap:nowrap;width:100%;justify-content:center}.chip{width:48px;height:48px;flex:0 0 48px}.chips #clearBet{padding:7px 9px;min-width:50px}
  .actions{gap:5px}.actions button{min-height:58px;font-size:11px}.actions .action-hit,.actions .action-stand{font-size:14px}.actions .action-hit{box-shadow:inset 0 1px 0 #ffffff66,0 0 18px #19e75c99!important}
  .quick{padding:6px 3px;border-top:0}.quick button{padding:7px 5px;min-height:38px;font-size:10px;min-width:0;flex:1}
  .bottom-nav{margin-top:5px}.bottom-nav button{min-height:45px!important}
}

/* v8: reclaim top space, polished bet chip, clean history */
.brand-home{appearance:none;border:0;background:transparent;padding:0;margin:0;color:inherit;display:flex;gap:12px;align-items:center;text-align:left;border-radius:12px;cursor:pointer}.brand-home:hover{filter:none;transform:none}.brand-home:focus-visible{outline:2px solid var(--gold);outline-offset:4px}
.betspot{width:82px;height:82px;border:4px solid #e9c46a;background:radial-gradient(circle at 50% 50%,#075238 0 46%,#0d7950 47% 58%,#f4f1df 59% 64%,#087047 65% 72%,#e9c46a 73% 78%,#075238 79%);box-shadow:inset 0 0 0 2px #073d2b,0 5px 16px #0009,0 0 12px #e9c46a44}.betspot:before{content:"";position:absolute;inset:8px;border:2px dashed #f3f0df;border-radius:50%;opacity:.9}.betspot span,.betspot strong{position:relative;z-index:1;text-shadow:0 2px 4px #000}.betspot span{font-size:10px}.betspot strong{font-size:21px}
.historybox{overflow:hidden}.history{max-height:none;overflow:visible}.history-head,.history-row{display:grid;grid-template-columns:44px minmax(135px,1.45fr) minmax(125px,1.35fr) 72px 78px 88px;gap:10px;align-items:center}.history-head{border-top:1px solid #1d372c;border-bottom:1px solid #1d372c;padding:9px 10px;color:#8fa79b;font-size:11px;font-weight:800;letter-spacing:.04em}.history-row{padding:11px 10px;font-size:12px}.history-row>span,.history-row>b{min-width:0}.history-date{white-space:nowrap}.history-result{white-space:normal;line-height:1.2}.history-money{text-align:right;font-variant-numeric:tabular-nums}
@media(max-width:760px){
 header{padding-bottom:5px}.brand-home{gap:8px}.brand-home .logo{flex:0 0 auto}.brand-home h1{white-space:nowrap}
 .felt{margin-top:0}.hud-drawer{margin:6px 0 0;border-radius:11px!important;border:1px solid var(--line)!important}.hud-drawer>summary{padding:9px 11px!important}
 .betspot{width:76px!important;height:76px!important;bottom:15px!important}.betspot strong{font-size:20px}
 .quick{order:initial}
 .historybox{padding:14px 10px}.historybox h2{font-size:22px;margin-bottom:10px}.history{overflow-x:auto;-webkit-overflow-scrolling:touch}.history-head,.history-row{min-width:620px;grid-template-columns:42px 145px 145px 65px 72px 82px;gap:8px}.history-row{font-size:12px;padding:10px 8px}.history-head{padding:8px;font-size:10px}
}


/* v10: turn dots + uninterrupted automation */
.message.turn-prompt-hidden{display:none!important}
.dealer-zone,.player-zone{position:absolute}
.dealer-zone:after,.player-zone:after{
  content:""; position:absolute; width:13px; height:13px; border-radius:50%;
  background:#21f36b; border:2px solid #d9ffe7;
  box-shadow:0 0 7px #21f36b,0 0 17px #21f36b,0 0 28px #21f36baa;
  opacity:0; transform:scale(.55); transition:opacity .12s,transform .12s;
  z-index:8; pointer-events:none;
}
.dealer-zone.turn-active:after,.player-zone.turn-active:after{
  opacity:1; transform:scale(1); animation:turnPulse 1.05s ease-in-out infinite;
}
.dealer-zone:after{left:calc(50% + 78px);top:13px}
.player-zone:after{left:calc(50% + 105px);top:13px}
@keyframes turnPulse{
  0%,100%{box-shadow:0 0 6px #21f36b,0 0 14px #21f36b}
  50%{box-shadow:0 0 9px #21f36b,0 0 24px #21f36b,0 0 36px #21f36b99}
}
@media(max-width:760px){
 .dealer-zone:after{left:calc(50% + 70px);top:11px}
 .player-zone:after{left:calc(50% + 96px);top:11px}
}
