/* GBGL production mobile experience R2. Desktop geometry remains owned by R7. */
:root{--visual-viewport-height:100vh;--visual-viewport-offset-top:0px;--keyboard-inset:0px}
@supports(height:100svh){:root{--visual-viewport-height:100svh}}
@supports(height:100dvh){:root{--visual-viewport-height:100dvh}}

@media(max-width:900px){
 html[data-layout^=mobile]{--bg:#0b1726;--panel:#13283a;--panel2:#1a3348;--line:#3b627c;--text:#f1f7fc;--muted:#afc4d4;--cyan:#63d5f7;--blue:#249fe8;--gold:#f0ce88;--red:#ff8793;--green:#8ee1b2;--shadow:0 12px 30px #02091480;color-scheme:dark}
 html[data-layout^=mobile] body{background:#0b1726;color:var(--text)}
 html[data-layout^=mobile] .app-shell{background:linear-gradient(#102338e8,#0b1726f2),var(--keyart) center/cover no-repeat}
 html[data-layout^=mobile] .topbar{background:linear-gradient(180deg,#1a3045,#102238);border-color:#486a82}
 html[data-layout^=mobile] .review-strip{background:#13283a;border-color:#31546e;color:#bad0df}
 html[data-layout^=mobile] .page,.management-site .admin-main{color:#f1f7fc}
 html[data-layout^=mobile] .panel{background:linear-gradient(145deg,#1b3549f2,#11263af2 72%);border-color:#426985;box-shadow:0 10px 25px #02081266}
 html[data-layout^=mobile] .panel-header{background:#203b50;border-color:#41647d}
 html[data-layout^=mobile] .input{background:#102338;border-color:#52738a;color:#f6fbff}
 html[data-layout^=mobile] .input::placeholder{color:#8fa9bc}
 html[data-layout^=mobile] .input:focus{background:#152c43;border-color:#70d8f7;box-shadow:0 0 0 3px #3ecaf526}
 html[data-layout^=mobile] .btn{background:linear-gradient(180deg,#25435b,#172f45);border-color:#557891;color:#f1f8fd}
 html[data-layout^=mobile] .btn:active{transform:translateY(1px);background:#193a54}
 html[data-layout^=mobile] .btn.primary{background:linear-gradient(180deg,#1da9ed,#0873bd);border-color:#7bddfa;color:#fff}
 html[data-layout^=mobile] button:disabled,html[data-layout^=mobile] .btn:disabled{opacity:.52;filter:saturate(.55)}
 html[data-layout^=mobile] .info{background:#18354a;border-color:#4a738d;color:#d3e3ee}
 html[data-layout^=mobile] .info.warning{background:#40351f;border-color:#8b7343;color:#f2dcae}
 html[data-layout^=mobile] .badge{background:#183148;border-color:#4d718a;color:#bed0dc}
 html[data-layout^=mobile] th{background:#203b50;color:#c5d8e5}
 html[data-layout^=mobile] td{border-color:#31536c}
 html[data-layout^=mobile] .sidenav a,html[data-layout^=mobile] .notice-item{border-color:#31536c;color:#c2d5e2}
 html[data-layout^=mobile] .wallet-tile.available{background:linear-gradient(135deg,#174f78,#102941)}
 html[data-layout^=mobile] .funding-card,html[data-layout^=mobile] .funding-order-current,html[data-layout^=mobile] .funding-record{background:#152d42;border-color:#456d87}
 html[data-layout^=mobile] .admin-sidebar{background:#10253a;border-color:#365b75}
 html[data-layout^=mobile] .admin-header{background:#172f45;border-color:#41647d}
 html[data-layout^=mobile] .admin-content{background:#0e1f32}
 html[data-layout^=mobile] .admin-nav-group{background:#17354a;border-color:#4b7890}
 html[data-layout^=mobile] input,html[data-layout^=mobile] select,html[data-layout^=mobile] textarea{font-size:16px!important}
}

/* VisualViewport keyboard-safe authentication pages. */
.auth-shell .app-scroll,.admin-login{min-height:0;overflow-y:auto;overscroll-behavior:contain;-webkit-overflow-scrolling:touch}
.auth-page{min-height:var(--visual-viewport-height,100svh);padding-top:max(16px,calc(env(safe-area-inset-top,0px) + 12px));padding-bottom:max(24px,calc(env(safe-area-inset-bottom,0px) + 18px))}
html[data-keyboard=open] .auth-page{height:auto!important;min-height:var(--visual-viewport-height,100svh)!important;align-items:start!important;place-items:start center!important;background-attachment:scroll!important;padding-top:max(10px,calc(env(safe-area-inset-top,0px) + 8px))!important;padding-bottom:max(28px,calc(env(safe-area-inset-bottom,0px) + 18px))!important;overflow:visible}
html[data-keyboard=open] .auth-panel{margin:0 auto!important;transform:none!important}
html[data-keyboard=open] .r4 .auth-panel,html[data-keyboard=open] .auth-panel{height:auto!important;max-height:none!important;overflow:visible!important}
html[data-keyboard=open] .r4 .auth-panel>.page-content-scroll{overflow-y:auto!important;max-height:none!important;padding-bottom:max(36px,calc(env(safe-area-inset-bottom,0px) + 24px))!important}
html[data-keyboard=open][data-layout=mobile-landscape] .r3 .auth-panel{display:block!important;width:min(560px,100%)!important;max-width:100%!important}
html[data-keyboard=open] .r2-auth-brand,html[data-keyboard=open] .auth-brand{max-height:54px;margin-bottom:8px!important}
html[data-keyboard=open] .auth-panel h1{font-size:22px}
html[data-keyboard=open] .auth-panel .subtitle{margin-bottom:12px}
@media(max-width:900px){.auth-page .auth-panel{margin:auto;scroll-margin:12px}.auth-page input,.auth-page select,.auth-page textarea{font-size:16px!important}.auth-page button[type=submit]{scroll-margin-bottom:max(24px,env(safe-area-inset-bottom,0px))}}

/* Immediate, staged Texas entry feedback. */
.tx10-entry-overlay{position:fixed;inset:0;z-index:2000;display:grid;place-content:center;justify-items:center;gap:10px;background:#0d1d2bf2;color:#f2f8fc;opacity:0;transition:opacity .12s ease;pointer-events:none}.tx10-entry-overlay.visible{opacity:1}.tx10-entry-overlay strong{font-size:22px}.tx10-entry-overlay span{color:#b7cddd}.tx10-loading-mark{width:58px;height:58px;display:grid;place-items:center;border:1px solid #e4c477;border-radius:18px;background:#18364a;color:#f1d692;font-size:34px;box-shadow:0 10px 28px #0006}
.tx10-loading-page{display:grid;place-items:center;min-height:var(--visual-viewport-height,70vh);background:radial-gradient(circle at 50% 45%,#1d4c6270,#0a1725 62%)}
.tx10-game-loading{width:min(480px,calc(100vw - 28px));padding:30px 22px;text-align:center;border:1px solid #416a83;border-radius:18px;background:#142b3eee;box-shadow:0 20px 60px #0007}.tx10-game-loading .tx10-loading-mark{margin:0 auto 14px}.tx10-game-loading h1{margin:5px 0}.tx10-game-loading>strong{display:block;color:#dceaf3}.tx10-game-loading>p:last-child{color:#a9c2d3;font-size:12px}.tx10-game-loading ol{display:grid;grid-template-columns:repeat(4,1fr);gap:5px;padding:0;margin:24px 0 16px;list-style:none}.tx10-game-loading li{padding:8px 3px;border-top:3px solid #36566c;color:#819bad;font-size:11px}.tx10-game-loading li.active,.tx10-game-loading li.done{border-color:#62d4f4;color:#e6f7ff}

/* Classic high-contrast two-colour deck. */
.tx7 .tx5-card:not(.tx5-back):not(.tx5-slot){background:#fffdf5!important;background-image:none!important;border:1px solid #e7e1d3!important;box-shadow:0 3px 8px #0008!important;text-shadow:none!important}
.tx7 .tx5-card.tx5-red:not(.tx5-back):not(.tx5-slot){color:#c31f36!important}.tx7 .tx5-card.tx5-black:not(.tx5-back):not(.tx5-slot){color:#101820!important}
.tx7 .tx5-card[data-card] b{font-family:Arial,"Segoe UI",sans-serif!important;font-weight:900!important;letter-spacing:-.6px!important}
.tx7 .tx5-card[data-card]>i{font-family:Arial,"Segoe UI Symbol",sans-serif!important;font-weight:800!important}
.tx7 .tx5-card[data-card]::before{font-family:Arial,"Segoe UI Symbol",sans-serif!important;font-weight:900!important}
.tx10-center-suit{position:absolute;inset:27% 12% 13%;display:grid;place-items:center;font:800 clamp(22px,4vw,35px)/1 Arial,"Segoe UI Symbol",sans-serif;color:inherit;opacity:1}
.tx7 .tx5-card .tx7-pips,.tx7 .tx5-card .tx7-court,.tx7 .tx5-card .tx7-ace{display:none!important}
.tx7 .tx5-holes .tx5-card{transform:none!important;margin:0!important}

/* A brighter, quieter playing surface and clearer action hierarchy. */
.tx5-frame.tx7{--tx-bg:#10293a;--tx-felt:#17605d;--tx6-felt-light:#2d7b73;--tx6-felt-dark:#0e4545;--tx-edge:#d5c38d;--tx-accent:#6ce4da;background:#10283a!important}
.tx7 .tx5-felt{background:radial-gradient(ellipse at 50% 42%,#2b7770,#155753 62%,#104341)!important;border-color:#cdbb86!important;box-shadow:inset 0 0 0 2px #f1dfa033,inset 0 14px 26px #061b1c60,0 12px 28px #02090e88!important}
.tx7 .tx5-person{background:linear-gradient(145deg,#294859,#193447 70%)!important;border-color:#54788c!important}.tx7 .tx5-seat-state{color:#c1d5de!important}.tx7 .tx5-stack{color:#f1f7fb!important}.tx7 .tx5-seat.is-turn .tx5-person{background:linear-gradient(145deg,#3a665f,#20494b 70%)!important;border-color:#f0d78e!important;box-shadow:0 0 0 2px #f0d78e33,0 5px 14px #0005!important}.tx7 .tx5-seat.is-you .tx5-person{border-color:#73d8ed!important}.tx7 .tx5-pot span,.tx7 .tx5-stakes{color:#d2e5e9!important}.tx7 .tx5-pot strong{color:#fff1b9!important}.tx7 .tx5-console{background:linear-gradient(165deg,#263f4deb,#142838f5 68%)!important;border-color:#5a7788!important}.tx7 .tx5-turn-label{color:#bcd2dc!important}.tx7 .tx5-turn-label.active{color:#fff0a9!important;font-size:13px}.tx10-action-wait{align-self:center;text-align:center;color:#b5cbd8;font-size:12px}.tx5-actions{grid-template-columns:repeat(auto-fit,minmax(82px,1fr))!important}.tx5-action{border-color:#68879b!important;background:#28485f!important;color:#f7fbff!important}.tx5-action.tx5-check,.tx5-action.tx5-call{background:#176e71!important;border-color:#68d7d5!important}.tx5-action.tx5-raise{background:#1ba884!important;border-color:#8aead5!important}.tx5-action.tx5-fold{background:#4b3544!important;border-color:#9a687c!important}.tx5-action.tx5-allin{background:#76552d!important;border-color:#d5a75c!important}
.tx10-more{display:none}

@media(max-width:900px){
 .table-page{background:#0d1d2b!important;padding:max(6px,env(safe-area-inset-top,0px)) max(8px,env(safe-area-inset-right,0px)) max(10px,env(safe-area-inset-bottom,0px)) max(8px,env(safe-area-inset-left,0px))!important}
 .tx10-secondary-tools,.tx10-temporary-lobby,.tx10-overlay-secondary{display:none!important}.tx10-more{display:inline-flex;flex:none}.tx5-toolbar{background:#152c3f;border:1px solid #3f657d;border-radius:8px;padding:5px!important}.tx5-toolbar .roomname{color:#f2f8fb!important}
 .tx7 .tx5-holes{gap:7px!important}.tx7 .tx5-console .tx5-holes .tx5-card{width:48px!important;height:68px!important}.tx7 .tx5-console .tx5-holes .tx5-card[data-card] b{font-size:22px!important}.tx7 .tx5-console .tx5-holes .tx5-card[data-card]>i{font-size:14px!important;top:25px!important}.tx7 .tx5-console .tx5-holes .tx10-center-suit{font-size:30px!important}
 .tx7 .tx5-board .tx5-card{min-width:0!important;background:#fffdf5!important}.tx7 .tx5-board .tx10-center-suit{font-size:clamp(16px,7vw,28px)!important}
 .p-overlay-note{color:#bed1dc!important}.p-overlay-note>span{width:100%;text-align:center}.tx5-actions{gap:7px!important}.tx5-action{min-height:48px!important;font-size:13px!important}.tx5-bet-control{grid-column:1/-1}
 dialog.tx10-bottom-sheet[open]{position:fixed;inset:auto max(8px,env(safe-area-inset-right,0px)) max(8px,env(safe-area-inset-bottom,0px)) max(8px,env(safe-area-inset-left,0px));width:auto;max-width:none;margin:0;border:1px solid #5d7c91;border-radius:18px;background:#142a3d;color:#f2f7fb;box-shadow:0 -12px 45px #0009;z-index:1500}
 dialog.tx10-bottom-sheet #dialog-content{max-height:min(72svh,var(--visual-viewport-height,72svh))}.tx10-more-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}.tx10-more-grid .btn{min-width:0;min-height:46px}.tx10-more-grid .danger{grid-column:1/-1}
}

@media(max-width:900px) and (orientation:portrait){.tx5-frame.tx7{min-height:500px!important}.tx7 .tx5-board .tx5-card{width:calc((100% - 16px)/5)!important;aspect-ratio:.68}.tx7 .tx5-your-hand>div:last-child{display:none}.tx7 .tx5-hand-summary{min-width:108px}.tx10-game-loading{margin-top:env(safe-area-inset-top,0px)}}
@media(max-width:900px) and (orientation:landscape){.tx5-frame.tx7{min-height:250px!important}.tx7 .tx5-console .tx5-holes .tx5-card{width:39px!important;height:55px!important}.tx7 .tx5-board .tx5-card{width:34px!important;height:48px!important}.tx7 .tx5-board .tx10-center-suit{font-size:18px!important}.tx5-actions{grid-template-columns:repeat(2,minmax(0,1fr))!important}.tx5-action{min-height:40px!important}.tx10-game-loading{padding:15px 20px}.tx10-game-loading ol{margin:12px 0}.tx10-game-loading .tx10-loading-mark{width:42px;height:42px;font-size:26px;margin-bottom:5px}dialog.tx10-bottom-sheet[open]{right:auto;width:min(340px,calc(100vw - 210px));max-height:calc(100dvh - 16px)}}
@media(prefers-reduced-motion:reduce){.tx10-entry-overlay{transition:none}.tx10-game-loading *{animation:none!important}.tx5-card{animation:none!important}}
