/* WPAS arcade palette: charcoal chrome, sapphire surfaces, cyan light, selective green. */
:root{--wpas-night:#060812;--wpas-blue:#0757ba;--wpas-purple:#413475;--wpas-emerald:#60d721;--wpas-ivory:#f5f8ff;--wpas-chrome:linear-gradient(#62616f 0,#363642 5%,#1b1c27 20%,#0b0c13 55%,#07080d 100%);--wpas-button-blue:linear-gradient(#45d9ff 0,#0e9ee2 7%,#076bc2 19%,#064995 55%,#092858 100%);--wpas-button-green:linear-gradient(#d0ff85 0,#8bf243 7%,#53cb19 24%,#279b08 65%,#146104 100%);--wpas-button-purple:linear-gradient(#8e81bc 0,#62518f 8%,#3d2e65 55%,#211735 100%)}
html{background:var(--wpas-night);color-scheme:dark}
body.lobby-screen,body.playing{color:var(--wpas-ivory);background:radial-gradient(ellipse at 40% 25%,#102f5b 0,#071426 48%,#04060d 100%)}
body.lobby-screen>header,body.playing .game-header{background:var(--wpas-chrome);border-bottom:1px solid #737585;box-shadow:0 2px 0 #030409,0 7px 18px #0007}
body.lobby-screen #lobby-wallet{background:radial-gradient(circle at 16px 50%,#c8d7e5 0 5px,#43546c 6px 9px,transparent 10px),linear-gradient(#05070c,#1a2333);border-color:#6d7c91;color:#eff6ff;box-shadow:0 1px 0 #d5e8ef36,0 2px 5px #0008 inset}
body.lobby-screen>.main-nav,body.playing #game>.controls,body.playing #game>.controls.waiting{background:var(--wpas-chrome);border-top-color:#828595;box-shadow:0 -1px 0 #a2a7b650,0 -7px 18px #0008}
body.lobby-screen>.main-nav>button{background:linear-gradient(#5e6c83 0,#36455e 6%,#213653 20%,#10233d 55%,#0b1626 100%);color:#dce9f8;box-shadow:0 1px 0 #afbdcf77 inset,0 -1px 0 #53688588 inset}
body.lobby-screen>.main-nav>button.selected{background:var(--wpas-button-blue)!important;color:#fff;border-color:#53dfff!important;box-shadow:0 1px 0 #c2f5ff inset,0 -2px 0 #14c5ff inset;filter:drop-shadow(0 0 5px #00baff45)}
.lobby-player{background:radial-gradient(ellipse at 25% 20%,#124e94 0,#0c2c61 38%,#071833 68%,#050d1c 100%);border-bottom-color:#209bdb6b;box-shadow:inset -10px 0 25px #02071477,inset 0 1px 0 #468bc43b}
.lobby-player:after{background:linear-gradient(#58cfff,#1569af)}
.player-profile-cta{background:var(--wpas-button-blue);border-color:#55bfe0;color:#f5fbff;text-shadow:0 1px 2px #00264f}
#lobby-player-level{color:#83c5f6}.player-tour-note b{color:#c0d7f5}.player-tour-note{color:#7599be}
.region-card{background:linear-gradient(140deg,#85d7ff,#167cc3 25%,#071326 52%,#3863a0 100%)}
.region-card:after{background:linear-gradient(#03112640,transparent 25%,transparent 43%,#05285d9e 70%,#06132ff5 100%)}
.region-body{background:linear-gradient(165deg,transparent,#0929548c 48%,#06132f 100%)}
.region-top span{background:#050e1dcc;border-color:#9ebcd94a;color:#e3f0fa}
.region-capacity{background:#7eb5d625}.region-capacity i{background:linear-gradient(90deg,#166bc7,#48d6ff)}
.region-actions button{background:var(--wpas-button-blue);color:#fff;border-color:#4bd6ff;box-shadow:0 1px 0 #a8edff inset,0 3px 0 #020e24;text-shadow:0 2px 1px #003060;font-size:20px;font-style:normal;font-weight:850;letter-spacing:-.4px}
.region-actions button:disabled{background:linear-gradient(#34516b,#152d47);color:#aabed0;border-color:#55738b;text-shadow:none}
.region-actions .withdraw{background:linear-gradient(#33445c,#0e2035);color:#bfcfe0;border-color:#5d7c99;font-style:normal;font-size:10px}
.region-detail{background:radial-gradient(ellipse at 70% 0,#113b6c,#071426 75%)}
.region-detail-tabs{background:linear-gradient(#253a55,#0d1d34);border-bottom-color:#4a79a24d}.region-detail-tabs button{color:#93aecb}.region-detail-tabs button[aria-pressed=true]{background:var(--wpas-button-blue);border-color:#56d9ff;color:#fff}
.region-detail-hero [data-detail-status]{background:#071426ed;border-color:#5d88b066}.region-detail-metrics b{color:#f5f8ff}.region-live-badge.is-live{color:#a9f677}
.region-detail-hero [data-detail-status] .region-detail-primary button{background:var(--wpas-button-blue);color:#fff;border-color:#55d9ff;text-shadow:0 1px 2px #032c5b}
.region-player-search input{background:#050f20;border-color:#42678b;color:#f1f5ff}.region-player-row:nth-child(even){background:#1d4d7933}
.region-player-row>button,.region-watch-grid button,.region-detail-pager button{background:linear-gradient(#275a87,#0a2443);border-color:#4e8dbc;color:#e3f3ff}.region-watch-grid button b{color:#64d8ff}
.region-empty{background:radial-gradient(ellipse at center,#0a447766,transparent);border-color:#48799b66}.region-empty>span{color:#4bbdeb}
.play-room .entry{background:linear-gradient(145deg,#163655,#0a192f);border-color:#507391}.profile-logout{background:linear-gradient(#33445c,#0e2035);color:#dce8f5;border-color:#617b96}
body.playing #game>.controls #actions>button,body.playing #game>.controls #actions>button#call{background:var(--wpas-button-blue);color:#fff}
body.playing #game>.controls #actions>button#bet{background:var(--wpas-button-green);color:#073300;text-shadow:0 1px 0 #c4ff8f88}
body.playing #game>.controls #actions>button[data-action=fold]{background:var(--wpas-button-purple);color:#f1eaff}
body.playing #raise-panel{--table-surface:#122c49;--table-border:#4c91bb;background:linear-gradient(145deg,#204f7c,#10233d)}
body.playing #next-move button{background:linear-gradient(#315e8e,#102b4c);color:#deebfc;border-color:#6498bc}body.playing #next-move button[aria-pressed=true]{background:var(--wpas-button-blue);border-color:#64e1ff;box-shadow:0 0 0 1px #71ddff77 inset}
body.playing #seats .identity{background:linear-gradient(100deg,#183959f2,#091a30f2);border-color:#527fa666}
body.playing #seats .seat.self .identity{background:linear-gradient(100deg,#1e4264,#102337)}
body.playing #pot{background:linear-gradient(#254d71,#0d233c);border-color:#7aa1c580}
body.playing .decision-ring .ring-progress{stroke:#98ffba;filter:drop-shadow(0 0 3px #73f2b7) drop-shadow(0 0 7px #33bd9b80)}
body.playing .win-celebration{background:linear-gradient(120deg,#1456a3,#092343);border-color:#f0d796;box-shadow:0 12px 36px #02071299,0 0 26px #299ddd45}
/* Luminous edge, enamel face and dark lower bevel across the action dock. */
body.lobby-screen>.main-nav>button{border-top:1px solid #acc9e5;border-bottom:1px solid #38577c}
body.lobby-screen>.main-nav>button.selected{box-shadow:0 1px 0 #e3fbff inset,0 2px 0 #54dfff inset,0 -2px 0 #003e85 inset;filter:drop-shadow(0 0 6px #00afff60)}
body.playing #game>.controls #actions>button,body.playing #game>.controls #actions>button#call{background:linear-gradient(#8df1ff 0,#1ec9ff 5%,#087bd7 18%,#0751b1 53%,#09286d 100%)!important;color:#fff!important;border-top:1px solid #bdffff;border-bottom:1px solid #0f6ad3;box-shadow:0 1px 0 #d6faff80 inset,0 -2px 0 #001b4f inset;text-shadow:0 2px 1px #03254c;font-weight:850}
body.playing #game>.controls #actions>button#bet{background:linear-gradient(#e8ffae 0,#b0ff4d 5%,#6de21f 20%,#42b507 54%,#1d7800 100%)!important;color:#093200!important;border-top-color:#efffd8;border-bottom-color:#2a9c08;box-shadow:0 1px 0 #f1ffd7 inset,0 -2px 0 #115600 inset,0 0 10px #6fff2533;text-shadow:0 1px 0 #ccff9180}
body.playing #game>.controls #actions>button[data-action=fold]{background:linear-gradient(#d1b0ff 0,#a273e2 5%,#7442b7 20%,#502a86 54%,#301350 100%)!important;border-top-color:#e0c4ff;border-bottom-color:#7943ad;text-shadow:0 2px 1px #250747}
body.playing #next-move button[aria-pressed=true]{box-shadow:0 0 0 1px #b8faff inset,0 0 10px #20bdff55}
/* Surface finish: fine machining, reflected edges and controlled elevation. */
body.lobby-screen>header,body.playing .game-header{background:linear-gradient(180deg,#797986 0,#464651 2px,#23242e 8px,#101119 48%,#06070c 100%);border-bottom:1px solid #778496;box-shadow:0 1px 0 #c4d0dc35 inset,0 2px 0 #020409,0 8px 18px #0006}
body.lobby-screen>.main-nav,body.playing #game>.controls,body.playing #game>.controls.waiting{background:linear-gradient(180deg,#7c7c89 0,#424651 2px,#242935 8px,#111622 45%,#080c16 100%);box-shadow:0 1px 0 #c7d9ed38 inset,0 -2px 0 #02050b,0 -10px 24px #0006}
body.lobby-screen #lobby-wallet{border:1px solid #75879d;box-shadow:0 1px 0 #d9e8fa4d,0 2px 6px #000b inset,0 -1px 0 #bdd3f62b inset;letter-spacing:.7px}
.lobby-player{background:radial-gradient(ellipse at 30% 22%,#1857a0 0,#0d3069 34%,#081a39 66%,#040c1b 100%);box-shadow:inset 0 1px 0 #8ad7ff42,inset -10px 0 25px #02071480}
.player-profile-cta{box-shadow:0 1px 0 #d5f7ff80 inset,0 -2px 0 #032c5a inset,0 3px 9px #0005;letter-spacing:.5px}
.region-card{filter:drop-shadow(0 4px 6px #0005)}
.region-top span{box-shadow:0 1px 0 #e1f1ff25 inset,0 2px 6px #0005;text-shadow:0 1px 2px #0008;backdrop-filter:blur(12px)}
.region-capacity{height:4px;border-top:1px solid #020915;box-shadow:0 1px 0 #86b3df1f;overflow:hidden}.region-capacity i{box-shadow:0 1px 0 #a4eaff66 inset}
.region-actions button{box-shadow:0 1px 0 #efffff99 inset,0 2px 0 #52dfff4d inset,0 -2px 0 #001b4f inset,0 4px 8px #0005;letter-spacing:.1px}
body.lobby-screen>.main-nav>button{box-shadow:0 1px 0 #d4e1f780 inset,0 -2px 0 #020b1d inset,0 3px 5px #0006;text-shadow:0 1px 2px #0009}
body.lobby-screen>.main-nav>button.selected{box-shadow:0 1px 0 #f1ffffcc inset,0 2px 0 #55dfff66 inset,0 -2px 0 #003276 inset;filter:drop-shadow(0 0 4px #13baff55)}
.region-detail-tabs{background:linear-gradient(#273e5b,#14253c);box-shadow:0 1px 0 #a6cae326 inset,0 3px 8px #0003}
.region-detail-hero [data-detail-status]{box-shadow:0 1px 0 #b7d9f52b inset,0 6px 18px #0005,0 0 0 1px #020c1855;backdrop-filter:blur(12px)}
.region-detail-primary button,.region-player-row>button{box-shadow:0 1px 0 #c4f2ff55 inset,0 -2px 0 #03162980 inset,0 2px 4px #0004}
.region-watch-grid button{background:radial-gradient(ellipse at 75% 0,#27639380,transparent 65%),linear-gradient(#1e446a,#0a1d34);box-shadow:0 1px 0 #c6e6ff3b inset,0 -2px 0 #020a1680 inset,0 5px 10px #0005}
.region-player-search input{box-shadow:0 2px 6px #0006 inset,0 1px 0 #89b2d326}
body.playing #seats .portrait{background:linear-gradient(140deg,#edf6ff 0,#8aa6bf 12%,#354c67 28%,#111f35 55%,#748aa2 80%,#d9e3eb 100%);box-shadow:0 1px 0 #e5f5ff80 inset,0 4px 0 #020c1b,0 7px 14px #0009}
body.playing #seats .seat.self .portrait{background:linear-gradient(140deg,#e5fff0,#82c6c0 15%,#1f6372 50%,#a2f2d4);box-shadow:0 1px 0 #e5fff680 inset,0 4px 0 #020c1b,0 7px 16px #0008}
body.playing #seats .identity{box-shadow:0 1px 0 #9ebcdc21 inset,0 -1px 0 #010b19,0 4px 9px #0005}
body.playing #seats .name{text-shadow:0 1px 1px #010715}body.playing #seats .stack{font-variant-numeric:tabular-nums;text-shadow:0 1px 2px #0008}
body.playing #pot{box-shadow:0 1px 0 #b8d9f34d inset,0 -2px 0 #020d20 inset,0 5px 12px #0005}
body.playing .card:not(.blank):not(.back){box-shadow:0 1px 0 #fff inset,0 2px 0 #94a8a0,0 5px 7px #0006}
body.playing .card-winning{box-shadow:0 0 0 3px #153d31,0 6px 14px #071b2480!important}
body.playing #game>.controls #actions>button{box-shadow:0 1px 0 #e6fbffb3 inset,0 2px 0 #ffffff28 inset,0 -2px 0 #001b4f inset,0 3px 6px #0006}
body.playing #next-move button{box-shadow:0 1px 0 #abc8e344 inset,0 -1px 0 #031426 inset}
body.playing #next-move button:before{box-shadow:0 2px 3px #0007 inset,0 1px 0 #9dc3df2b}
body.playing #table-tools{background:linear-gradient(145deg,#1b3b5b,#0a172a);border-color:#709bc47a;box-shadow:0 1px 0 #b0d8f42e inset,0 18px 50px #0009}
body.playing #table-tools button{border-color:#668bb247;box-shadow:0 1px 0 #c3dbf529 inset,0 2px 4px #0003}
@media(hover:hover) and (pointer:fine){.region-actions button:not(:disabled):hover,.region-detail-primary button:not(:disabled):hover,body.playing #game>.controls #actions>button:not(:disabled):hover{filter:brightness(1.12)}body.lobby-screen>.main-nav>button:not(.selected):hover{filter:brightness(1.18)}}
.region-actions button:not(:disabled):active,.region-detail-primary button:not(:disabled):active,body.playing #game>.controls #actions>button:not(:disabled):active{translate:0 1px;filter:brightness(.94)}
.region-actions button:focus-visible,.region-detail button:focus-visible,body.lobby-screen>.main-nav>button:focus-visible,body.playing #game>.controls button:focus-visible{outline:2px solid #b9f2ff;outline-offset:-4px}

/* Account-owned tournament autopilot, using the shared profile surfaces. */
.ai-settings{display:grid;gap:12px;padding:20px;max-width:680px;text-align:left}.ai-settings h2,.ai-settings p{margin:0}.ai-settings label{display:flex;align-items:center;gap:16px;flex-wrap:wrap}.ai-settings input{width:160px;padding:12px;border:1px solid #45679b;border-radius:8px;background:#071529;color:white}.ai-settings small{color:#a9bdd6;line-height:1.5}.ai-settings button{min-height:44px}.ai-settings [hidden]{display:none!important}

/* Floating game metadata frees the header row for the playing surface. */
body.playing #game,body.playing #game:has(>.controls.waiting){position:relative;grid-template-rows:0 minmax(0,1fr) calc(var(--dock-height) + env(safe-area-inset-bottom,0px))}
body.playing #game>.game-header{position:absolute;inset:0 0 auto;height:calc(var(--game-header-height) + env(safe-area-inset-top,0px));background:transparent;border:0;box-shadow:none;gap:0;pointer-events:none}
body.playing .game-header .game-brand{display:none!important}
body.playing .game-header .game-room{margin:0;padding:0;border:0;min-width:0;flex:1;text-align:left;pointer-events:none}
body.playing .game-header .game-header-actions{margin-left:auto;pointer-events:auto}
body.playing #game>.arena{max-width:none;width:100%;height:100%;padding-top:env(safe-area-inset-top,0px);box-sizing:border-box}

/* Dealer puck belongs on the felt, never below a seat or under the dock. */
body.playing .table-stage>.dealer-marker{position:absolute;left:var(--dealer-x);top:var(--dealer-y);transform:translate(-50%,-50%);width:28px;height:28px;border-radius:50%;display:grid;place-items:center;box-sizing:border-box;background:linear-gradient(#f8fff4,#b9cec1);border:2px solid #6e8c7e;color:#233b2d;font:800 13px/1 system-ui;box-shadow:0 2px 5px #0009,inset 0 1px 0 #fff;z-index:8;pointer-events:none}
body.playing .table-stage[data-mode=landscape]>.dealer-marker{width:21px;height:21px;font-size:10px}
body.playing .table-stage[data-mode=phone]>.dealer-marker{left:var(--dealer-mobile-x);top:var(--dealer-mobile-y);width:21px;height:21px;font-size:10px}

/* Portrait actions share one measured row; preserve only the device's bottom safe area. */
@media(max-width:700px) and (orientation:portrait){
body.playing #game,body.playing #game:has(>.controls.waiting){--dock-height:88px!important}
body.playing #game>.controls,body.playing #game>.controls.waiting{grid-template-rows:22px 44px;gap:6px;padding:8px 10px calc(8px + env(safe-area-inset-bottom,0px))}
body.playing #game>.controls #actions{height:44px;min-height:44px;max-height:44px;grid-template-columns:repeat(3,minmax(0,1fr));grid-template-rows:44px;gap:6px;align-items:stretch}
body.playing #game>.controls #actions>button,body.playing #game>.controls #actions>button#bet{width:100%;min-width:0;height:44px!important;min-height:44px!important;max-height:44px!important;box-sizing:border-box;padding:0 6px;margin:0;border-radius:6px;clip-path:none;font-size:14px;line-height:1;display:flex;align-items:center;justify-content:center}
}

/* Table connection state uses the same vivid sapphire surfaces as the club. */
body.playing #route-loading{box-sizing:border-box;padding:max(24px,env(safe-area-inset-top,0px)) max(24px,env(safe-area-inset-right,0px)) max(24px,env(safe-area-inset-bottom,0px)) max(24px,env(safe-area-inset-left,0px));gap:20px;background:radial-gradient(ellipse at 50% 42%,#1055a4 0,#102e67 35%,#09142e 65%,#040712 100%);color:var(--wpas-ivory)}
body.playing #route-loading .loading-brand{max-width:230px}
body.playing #route-loading p{margin:0;color:#d4eaff;font-size:15px;line-height:1.5;text-align:center}
body.playing #route-loading a{box-sizing:border-box;min-height:44px;padding:12px 24px;display:flex;align-items:center;justify-content:center;background:var(--wpas-button-blue);border:1px solid #60d7ff;border-radius:6px;box-shadow:0 1px 0 #d9f9ff99 inset,0 -2px 0 #002354 inset,0 5px 16px #0005;color:#fff;font-size:14px;font-weight:750;text-decoration:none}
body.playing #route-loading a:focus-visible{outline:2px solid #c6f5ff;outline-offset:4px}

/* Bet editor belongs to the same chrome dock, with vivid tactile controls. */
body.playing #game #raise-panel{--table-surface:#07080d;--table-border:#737585;background:var(--wpas-chrome);border-color:#737585;box-shadow:0 -1px 0 #c4c4d055,inset 0 1px 0 #ffffff44,-5px -6px 18px #0007}
body.playing #game #raise-panel .raise-editor,body.playing #game #raise-panel .raise-rail{background:linear-gradient(#050a17,#10223c);border-color:#4d6c91;box-shadow:inset 0 2px 7px #0009,0 1px 0 #ffffff18;color:#edf7ff}
body.playing #game #raise-panel .raise-editor>span,body.playing #game #raise-panel .raise-editor small{color:#9bc9ed}
body.playing #game #raise-panel .raise-presets button,body.playing #game #raise-panel #close-raise{background:var(--wpas-button-blue);border:1px solid #5bcfff;color:#fff;font-weight:800;text-shadow:0 1px 2px #002251;box-shadow:inset 0 1px 0 #d9f9ff99,inset 0 -2px 0 #002457,0 2px 5px #0008}
body.playing #game #raise-panel #allin{background:var(--wpas-button-purple);border-color:#ae83f1;color:#fff;box-shadow:inset 0 1px 0 #f0d8ff99,inset 0 -2px 0 #21113c,0 2px 5px #0008}
body.playing #game #raise-panel .raise-presets button:hover{filter:brightness(1.14)}
body.playing #game #raise-panel .raise-presets button:active{filter:brightness(.95);transform:translateY(1px)}
body.playing #raise-slider::-webkit-slider-runnable-track{border-color:#4c759b;background:linear-gradient(to top,#79e52d var(--rail-fill),#091a30 var(--rail-fill));box-shadow:0 0 0 4px #03081399}
body.playing #raise-slider::-webkit-slider-thumb{border-color:#c5f6ff;background:repeating-linear-gradient(to bottom,transparent 0 5px,#004b7b66 5px 6px),linear-gradient(#c7f7ff,#18a2e7);box-shadow:0 2px 7px #0009,0 0 6px #23caff66}

/* Full-screen table room shares the club's sapphire lighting. */
body.playing{background:radial-gradient(ellipse at 50% 38%,#174b92 0,#102f67 36%,#091831 68%,#040712 100%)!important}
body.playing main,body.playing #game,body.playing #game>.arena{background:transparent}
body.playing .arena:before,body.playing .arena:after{display:none}

/* Club destinations: game panels, rather than long document-like forms. */
body.lobby-screen[data-play-mode]:not([data-play-mode=lobby]){background:radial-gradient(ellipse at 35% 25%,#153e83,#0b1d40 48%,#040812 100%)}
body.lobby-screen .play-room:not([hidden]){display:grid;grid-template-columns:minmax(0,1.15fr) minmax(280px,1fr);gap:16px;max-width:1180px;width:100%;height:100%;margin:0 auto;padding:16px max(16px,env(safe-area-inset-right,0px)) 16px max(16px,env(safe-area-inset-left,0px));box-sizing:border-box;overflow:auto;align-items:stretch}
.room-intro{position:relative;overflow:hidden;min-height:280px;padding:28px;border:1px solid #466ca1;border-radius:12px;background:radial-gradient(ellipse at 50% 55%,#125fb0,#103372 50%,#08152f);box-shadow:inset 0 1px 0 #a6d8ff44,0 8px 20px #0005;display:flex;flex-direction:column}
#private-room .room-intro{background:radial-gradient(ellipse at 50% 55%,#5440a2,#202b64 50%,#08152f)}
.room-kicker{color:#8edcff;font-size:10px;font-weight:800;letter-spacing:2px}.room-intro h1,body.lobby-screen #ranks h1,body.lobby-screen #profile h1{font-size:clamp(28px,4vw,46px)!important;line-height:1.05;margin:10px 0!important;font-weight:900;letter-spacing:-1px}.room-intro>p{margin:0;color:#c7dcff;font-size:15px}
.room-art{position:relative;flex:1;min-height:160px;display:grid;place-items:center;background:url('/assets/table-surface.svg') center/95% auto no-repeat;filter:drop-shadow(0 9px 9px #0007)}
.room-art>span{font-size:70px;color:#e8ffef;text-shadow:0 4px 0 #083b28;z-index:1}.room-art i,.room-art b{position:absolute;left:calc(50% - 55px);top:calc(50% - 45px);width:56px;height:78px;border-radius:6px;border:2px solid #e4eddf;background:#fffef3;color:#17302f;font:normal 46px/78px Georgia;text-align:center;transform:rotate(-15deg);box-shadow:0 5px 8px #0007}.room-art b{left:50%;transform:rotate(12deg);color:#c53255}.room-art>span{position:absolute;opacity:.22;font-size:130px}
.room-benefits{display:flex;gap:8px;flex-wrap:wrap}.room-benefits span,.rank-status{border:1px solid #62aaff55;border-radius:30px;background:#08182e99;padding:7px 11px;font-size:10px;color:#cae6ff;font-weight:700}
.room-setup{display:flex;align-items:center;min-width:0}.play-room .room-setup .entry{display:flex;flex-direction:column;gap:14px;width:100%;max-width:none;margin:0;padding:22px;border:1px solid #4d698e;border-radius:12px;background:var(--wpas-chrome);box-sizing:border-box;box-shadow:inset 0 1px 0 #b6d4ff44,0 8px 20px #0005}
.play-room .entry label{margin:0;font-size:10px;letter-spacing:1px;color:#a9cee9}.play-room .entry input,.play-room .entry select,#profile-settings input,#profile-settings select{box-sizing:border-box;min-height:44px;width:100%;margin-top:7px;padding:10px 12px;background:#08162c;color:#f0f6ff;border:1px solid #41618a;border-radius:6px;font-size:14px}
.room-identity,.ring-creation{margin:0!important;border:1px solid #3e567c!important;background:#0c1c34!important;border-radius:6px;padding:12px!important}.room-identity summary,.ring-creation summary{font-size:12px;color:#c3ddf5;cursor:pointer}.room-identity[open]>label{display:block;margin-top:12px}.room-identity #avatars{margin:10px 0;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:6px}.room-identity #avatars button{min-width:0;aspect-ratio:1;padding:3px}.room-identity .profile-actions{margin-top:12px}.ring-creation[open]{display:grid;grid-template-columns:1fr 1fr;gap:10px}.ring-creation>summary,.ring-creation>p{grid-column:1/-1}.ring-creation>p{font-size:11px;margin:0;color:#91accb}
body.lobby-screen .play-room .entry>button,.play-room .join button,.room-identity .profile-actions button,body.lobby-screen #ranks .rank-filters button,#profile .ai-settings button{height:48px;min-height:48px;padding:10px 16px;border:1px solid #5dcbff;border-radius:6px;background:var(--wpas-button-blue)!important;color:#fff!important;font-size:14px;font-weight:800;box-shadow:inset 0 1px 0 #d4f5ff99,inset 0 -2px 0 #002759,0 3px 6px #0006}
.play-room .join{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px;margin:0;padding-top:14px;border-top:1px solid #465576}.play-room .join input{margin:0;letter-spacing:2px}.play-room .spectator{display:flex!important;align-items:center;gap:8px;letter-spacing:0!important}.play-room .spectator input{width:18px;min-height:18px;margin:0}
body[data-play-mode=practice-room] .play-room .join,body[data-play-mode=practice-room] .play-room .spectator{display:none!important}
body.lobby-screen #ranks,body.lobby-screen #profile{width:100%;max-width:1100px;padding:20px max(20px,env(safe-area-inset-right,0px)) 20px max(20px,env(safe-area-inset-left,0px))!important;box-sizing:border-box}
.rank-heading{display:flex;align-items:center;justify-content:space-between;gap:20px}.rank-heading p{margin:0;color:#a9c6e8;font-size:13px}.rank-emblem{font-size:75px;color:#5ddcff;text-shadow:0 3px 0 #164eab,0 0 25px #388bff66}.rank-filters{display:flex;gap:8px;margin:18px 0}.rank-filters button{min-width:120px}.rank-filters button[aria-pressed=false]{background:linear-gradient(#344b71,#14213e)!important;border-color:#566e90!important}
body.lobby-screen #ranks .rank-empty{display:flex;flex-direction:column;align-items:center;gap:10px;text-align:center;margin:0;min-height:180px;padding:22px;border:1px solid #42639a;border-radius:12px;background:radial-gradient(ellipse at 50% 0,#174883,#101e3c 65%);box-shadow:inset 0 1px 0 #8ccfff44,0 8px 18px #0005}.rank-medal{display:grid;place-items:center;width:65px;height:65px;background:var(--wpas-button-blue);border:2px solid #9edfff;border-radius:50%;font-size:38px;color:white;box-shadow:0 5px 0 #06205a,0 0 24px #38baff33}.rank-empty h2{font-size:22px;margin:6px 0 0}.rank-empty p{margin:0;font-size:13px;color:#b3cae7}.rank-footnote{font-size:11px;color:#819abc;margin:14px 0 0}
body.lobby-screen #profile:not([hidden]){display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:16px;align-content:start}.account-heading{grid-column:1/-1}.account-heading h1{font-size:30px!important}#profile-settings{grid-column:1/-1}#profile-settings:empty{display:none}#profile-settings .room-identity[open]{display:grid;grid-template-columns:1fr 1fr;gap:12px}#profile-settings summary{grid-column:1/-1}#profile-summary .profile-card,#profile .ai-settings{height:100%;max-width:none;margin:0;padding:22px;box-sizing:border-box;border:1px solid #456590;border-radius:12px;background:radial-gradient(ellipse at 25% 0,#174c89,#101c36 60%);box-shadow:inset 0 1px 0 #addbff44,0 8px 18px #0005}
#profile-summary .profile-card{display:grid;grid-template-columns:90px 1fr;gap:8px 18px;align-content:start}#profile-summary .portrait{grid-row:1/4;width:90px;height:90px;border:3px solid #79d7f5;border-radius:50%;padding:0;box-shadow:0 4px 0 #06152b,0 0 20px #29baff33}#profile-summary h2{margin:8px 0 0;font-size:26px}#profile-summary p{font-size:12px;color:#a9c4e1;margin:0}#profile-summary .stat-grid{grid-column:1/-1;display:grid;grid-template-columns:1fr 1fr;gap:10px;margin:18px 0 8px}#profile-summary .stat-grid>div{padding:12px;background:#07172f;border:1px solid #325580;border-radius:8px}#profile-summary .stat-grid b{font-size:25px;color:#83e0ff}#profile-summary .stat-grid span{font-size:10px;color:#a8bdd9}#profile-summary .profile-card>p:last-child{grid-column:1/-1}
#profile .ai-settings{gap:12px;align-content:start}#profile .ai-settings h2{font-size:22px}#profile .ai-settings p{font-size:12px;color:#b2cbe8}#profile .ai-settings label{font-size:12px;color:#c5dcf7}#profile .ai-settings small{font-size:11px}#profile .history-heading,#profile #history{grid-column:1/-1;margin:0}#profile .history-heading{font-size:19px;margin-top:8px}#profile #history>p{padding:18px;border:1px solid #324c70;border-radius:8px;background:#0a1930;color:#91accb;font-size:13px;margin:0}#profile .profile-logout{justify-self:start;margin:0;background:#17233b;border-color:#596584;font-size:12px;min-height:44px}
@media(orientation:portrait) and (max-width:700px){body.lobby-screen .play-room:not([hidden]){grid-template-columns:1fr;gap:12px;padding:12px;align-content:start}.room-intro{min-height:190px;padding:18px}.room-intro h1{font-size:32px!important}.room-art{min-height:110px;position:absolute;right:5px;top:18px;width:42%;opacity:.75}.room-art i,.room-art b{width:40px;height:58px;font-size:32px;line-height:58px;top:35px}.room-intro>p{max-width:55%;font-size:13px}.room-benefits{margin-top:auto;padding-top:24px;max-width:70%}.room-benefits span{font-size:9px}.play-room .room-setup .entry{padding:16px}.rank-emblem{font-size:50px}body.lobby-screen #profile:not([hidden]){grid-template-columns:1fr;padding:16px!important}#profile-settings .room-identity[open]{grid-template-columns:1fr}body.lobby-screen #ranks{padding:16px!important}}
@media(max-height:500px) and (min-width:600px){body.lobby-screen .play-room:not([hidden]){padding:10px;gap:12px}.room-intro{min-height:230px;padding:18px}.room-intro h1{font-size:30px!important}.room-art{min-height:110px}.room-setup{align-items:start}.play-room .room-setup .entry{padding:16px;gap:10px}.rank-heading h1{font-size:28px!important}.rank-emblem{font-size:48px}body.lobby-screen #ranks .rank-empty{min-height:120px;padding:16px;gap:7px}.rank-medal{width:44px;height:44px;font-size:26px}}
body.lobby-screen #ranks .rank-empty{width:100%;max-width:none;box-sizing:border-box}

/* Tournament Details owns registration, leaving other tabs focused on their content. */
.region-registration{padding:18px;border:1px solid #46648c;border-radius:12px;background:var(--wpas-chrome);box-shadow:inset 0 1px 0 #a2b9d544,0 6px 16px #0005;margin:0 0 20px}
.region-registration .region-detail-metrics{margin:16px 0;gap:14px}.region-registration .region-detail-metrics>span{font-size:11px;color:#9bb6d5}.region-registration .region-detail-metrics b{font-size:30px;color:#f3f9ff;margin-bottom:6px}.region-registration .region-live-badge{color:#98dfff;font-size:10px;font-weight:850;letter-spacing:1.4px}.region-registration .region-start-note{font-size:12px;color:#b8cfe8;line-height:1.5;margin:10px 0 14px}.region-registration .region-start-progress{background:#1c304d}.region-registration .region-start-progress i{background:linear-gradient(90deg,#108ae3,#79e6ff)}
.region-registration .region-detail-primary{display:grid;grid-auto-flow:column;grid-auto-columns:minmax(0,1fr);gap:10px}.region-registration .region-detail-primary:empty{display:none}.region-registration .region-detail-primary button{width:100%;height:48px;min-height:48px;padding:8px 12px;white-space:nowrap;font-size:13px;font-weight:800;border:1px solid #5dbef5;border-radius:6px;background:var(--wpas-button-blue);color:white;box-shadow:inset 0 1px 0 #c7f5ff99,inset 0 -2px 0 #002252,0 3px 7px #0006}.region-registration .region-detail-primary button[data-detail-withdraw]{background:linear-gradient(#445773,#192940)!important;color:#e1edff!important;border-color:#6b83a6!important}.region-registration>small{display:block;margin-top:12px;text-align:center;font-size:10px;color:#9fb5d0}
.tournament-spec-heading{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-bottom:12px}.region-detail-content .tournament-spec-heading h2{margin:0;color:#d5e9ff;font-size:12px!important}.tournament-spec-heading>span{font-size:10px;color:#9ab8dc;border:1px solid #3a557e;background:#0d1c34;padding:5px 9px;border-radius:20px}
.tournament-spec-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}.tournament-spec-grid>div{position:relative;min-width:0;padding:16px 12px;border:1px solid #34547f;border-radius:10px;background:linear-gradient(145deg,#16355e,#0a1830);box-shadow:inset 0 1px 0 #9ed5ff22}.tournament-spec-grid>div>span{display:block;color:#67d7ff;font-size:24px;margin-bottom:14px}.tournament-spec-grid small{display:block;color:#94b1d2;font-size:10px;margin-bottom:7px}.tournament-spec-grid strong{display:block;color:#f1f7ff;font-size:21px;line-height:1.2}.tournament-spec-grid em{display:block;color:#9bb6d7;font-style:normal;font-size:10px;font-weight:500;margin-top:6px}
.tournament-cycle,.tournament-champion{display:flex;align-items:center;gap:14px;padding:16px;margin-top:12px;border:1px solid #374c75;border-radius:10px;background:linear-gradient(110deg,#1a294b,#101b31)}.tournament-cycle>span,.tournament-champion>span{display:grid;place-items:center;width:40px;height:40px;flex:none;border-radius:50%;background:#173c70;color:#8fddff;font-size:25px}.tournament-cycle strong{font-size:13px;color:#deeeff}.tournament-cycle p{font-size:11px;line-height:1.5;color:#9db8d9;margin:5px 0 0}.tournament-champion{background:linear-gradient(110deg,#33244f,#121c34)}.tournament-champion>span{background:#493163;color:#ddbeff}.tournament-champion small{display:block;font-size:8px;letter-spacing:1.5px;color:#b5a6d1;margin-bottom:6px}.tournament-champion strong{font-size:15px;color:#f0e5ff}
@media(orientation:portrait) and (max-width:700px){.region-detail-hero{min-height:112px;padding-bottom:14px}.region-detail-hero .region-event-label{padding-top:12px}.region-detail-hero h1{margin-bottom:0}.region-detail-content{padding-top:14px}.region-registration{padding:14px;margin-bottom:18px}.region-registration .region-detail-metrics b{font-size:25px}.region-registration .region-detail-primary{grid-auto-flow:row;grid-template-columns:1fr}.tournament-spec-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.tournament-spec-grid strong{font-size:22px}.tournament-spec-grid>div{padding:14px}.tournament-spec-grid>div>span{margin-bottom:10px}}
@media(max-height:500px) and (min-width:600px){.region-registration{padding:14px}.region-registration .region-detail-metrics b{font-size:25px}.tournament-spec-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.region-detail-content{padding-top:14px}}

/* Game destinations: contained scenes and command decks, sharing the lobby's metalwork. */
body.lobby-screen .play-room:not([hidden]){grid-template-columns:minmax(0,1.35fr) minmax(290px,.9fr);gap:10px;max-width:none;padding:10px max(12px,calc(env(safe-area-inset-right,0px) + 8px)) 10px max(12px,calc(env(safe-area-inset-left,0px) + 8px));align-items:stretch;overflow:auto}
.room-intro{min-height:0;padding:0;border:0;border-radius:0;background:radial-gradient(ellipse at 50% 50%,#125fac66,transparent 62%),linear-gradient(125deg,#152a58,#08162f 60%,#102d5d);box-shadow:inset 0 1px 0 #7ab7f870,inset 0 -1px 0 #4169a1;overflow:visible;isolation:isolate}
.room-intro:before{content:"";position:absolute;inset:0;z-index:-1;background:repeating-linear-gradient(135deg,#73bfff05 0 1px,transparent 1px 12px);pointer-events:none}
#private-room .room-intro{background:radial-gradient(ellipse at 50% 50%,#5944b860,transparent 65%),linear-gradient(125deg,#22264f,#0a1430 60%,#29255b)}
.mode-heading{position:relative;flex:none;display:flex;align-items:baseline;justify-content:space-between;gap:12px;padding:20px 28px 0}.mode-heading .room-kicker{font-size:9px;letter-spacing:2px;color:#5fdfff}.room-intro .mode-heading h1{font-size:clamp(24px,3vw,38px)!important;text-transform:uppercase;font-style:italic;letter-spacing:-1px;margin:0!important;color:white;text-shadow:0 3px 0 #05112a,0 0 20px #178ff044}
.room-art{position:relative;flex:1;min-height:0;min-width:0;width:auto;display:block;background:none;filter:none;margin:10px 28px;overflow:visible;opacity:1}
.room-art .room-table-art{position:absolute;inset:12% 5%;width:90%;height:76%;object-fit:contain;display:block;filter:drop-shadow(0 12px 8px #0008);pointer-events:none}
.scene-cards{position:absolute;left:50%;top:50%;width:125px;height:100px;transform:translate(-50%,-50%);z-index:2}
.room-art .scene-cards i,.room-art .scene-cards b{position:absolute;top:5px;left:5px;width:58px;height:84px;margin:0;box-sizing:border-box;padding:5px 6px;border:2px solid #dde9df;border-radius:6px;background:linear-gradient(120deg,#fff,#e7eee1);font:700 25px/1 Georgia;color:#17312d;display:block;text-align:left;transform:rotate(-12deg);box-shadow:0 5px 0 #acbdac,0 8px 12px #0008}
.room-art .scene-cards b{left:58px;top:8px;transform:rotate(10deg);color:#c52b4d}.scene-cards i>span,.scene-cards b>span{display:block;text-align:center;font-size:36px;line-height:43px}
.room-rivals{position:absolute;inset:0;pointer-events:none}.room-rival{position:absolute;width:clamp(32px,4.7vw,58px);height:clamp(32px,4.7vw,58px);padding:3px;box-sizing:border-box;border-radius:50%;border:2px solid #314e79;background:linear-gradient(#4c5973,#0a1429);opacity:.24;transform:translate(-50%,-50%);box-shadow:0 4px 7px #0008;transition:opacity .18s,border-color .18s,box-shadow .18s}.room-rival .avatar-art{width:100%;height:100%;border-radius:50%;display:block}.room-rival.is-selected{opacity:1;border-color:#76e5ff;box-shadow:0 4px 7px #0008,0 0 16px #16bdff55}
.room-rival:nth-child(1){left:18%;top:32%}.room-rival:nth-child(2){left:18%;top:68%}.room-rival:nth-child(3){left:36%;top:20%}.room-rival:nth-child(4){left:64%;top:20%}.room-rival:nth-child(5){left:82%;top:32%}.room-rival:nth-child(6){left:82%;top:68%}.room-rival:nth-child(7){left:64%;top:80%}.room-rival:nth-child(8){left:36%;top:80%}
.room-art>.friends-emblem{position:absolute;left:50%;top:78%;transform:translate(-50%,-50%);display:grid;place-items:center;width:44px;height:44px;font-size:27px;opacity:1;border-radius:50%;background:var(--wpas-button-purple);border:1px solid #cba5ff;color:white;box-shadow:0 4px 8px #0008}
.room-benefits{justify-content:center;flex:none;gap:18px;padding:0 18px 18px;max-width:none;margin:0}.room-benefits span{padding:0;background:none;border:0;font-size:10px;color:#97badb;white-space:nowrap}
.room-setup{align-items:center;padding:0 0 0 6px}.play-room .room-setup .entry{position:relative;border:1px solid #65738f;border-radius:12px 12px 5px 5px;padding:20px;gap:16px;background:linear-gradient(#616275 0,#343647 3%,#131b2e 12%,#091120 90%,#04070e 100%);box-shadow:inset 0 1px 0 #c8d7ef77,inset 0 -2px 0 #335480,0 8px 20px #0007}
.play-room .entry .room-identity{display:none!important}.console-player{display:flex;align-items:center;gap:12px;padding-bottom:14px;border-bottom:1px solid #4d668455}.console-avatar{display:block;width:48px;height:48px;flex:none;padding:3px;box-sizing:border-box;border:1px solid #8fdfff;border-radius:50%;background:linear-gradient(#548dc6,#0d213e);box-shadow:0 3px 7px #0008}.console-avatar .avatar-art{display:block;width:100%;height:100%;border-radius:50%}.console-player>div{min-width:0;flex:1}.console-player small{display:block;font-size:8px;letter-spacing:1.5px;color:#88b7dd;margin-bottom:5px}.console-player strong{display:block;font-size:17px;color:#edf8ff;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.console-profile{width:38px;height:38px;min-height:38px;padding:0;border:1px solid #436b94;border-radius:8px;background:linear-gradient(#253e61,#0b1931);font-size:21px;color:#a8dbff}
.console-label{display:block;font-size:9px;letter-spacing:1.6px;font-weight:800;color:#b5d3f3;text-align:center;margin-bottom:10px}.opponent-counter{display:grid;grid-template-columns:48px minmax(0,1fr) 48px;gap:12px;align-items:center;max-width:260px;margin:auto}.opponent-counter button{width:48px;height:48px;min-height:48px;border-radius:8px;border:1px solid #5bcfff;color:white;background:var(--wpas-button-blue);box-shadow:inset 0 1px 0 #baf2ff99,0 3px 5px #0008;font-size:26px;font-weight:800;padding:0}.opponent-counter button:disabled{opacity:.35;filter:saturate(.3)}.opponent-counter>div{text-align:center}.opponent-counter output{font-size:49px;line-height:1;font-weight:900;font-variant-numeric:tabular-nums;color:#f2fbff;text-shadow:0 3px 0 #163865,0 0 20px #22baff44}.opponent-counter small{display:block;font-size:8px;color:#84add2;letter-spacing:2px;margin-top:4px}
body[data-play-mode=private-room] .opponents-control{display:none}body[data-play-mode=practice-room] .opponents-control{display:block}
body.lobby-screen .play-room .entry>button#practice,body.lobby-screen .play-room .entry>button#create{height:56px;min-height:56px;background:var(--wpas-button-green)!important;color:#102e04!important;border-color:#befc71;font-size:19px;font-weight:900;font-style:italic;letter-spacing:.3px;text-shadow:0 1px 0 #ddffa2;box-shadow:inset 0 1px 0 #edffcf,0 -2px 0 #176300 inset,0 4px 8px #0008}
.play-room .ring-creation{border:0!important;border-radius:0;background:none!important;padding:0!important}.play-room .ring-creation summary{font-size:11px;color:#9bc3e4}.play-room .join{grid-template-columns:minmax(0,1fr) 90px;gap:8px;padding-top:12px}.join-heading{grid-column:1/-1;font-size:8px;color:#91badc;font-weight:800;letter-spacing:1.5px;margin-bottom:0}.play-room .join input{font-size:15px;text-align:center;letter-spacing:2px;background:linear-gradient(#040a15,#13213a);border-color:#49678d}.play-room .join button{padding:8px;font-size:12px}.play-room .spectator{font-size:10px!important;color:#7fa0c5!important}
body.lobby-screen #ranks{height:100%;max-width:none;padding:14px max(18px,env(safe-area-inset-right,0px)) 14px max(18px,env(safe-area-inset-left,0px))!important;display:grid;grid-template-columns:minmax(0,1fr) auto;grid-template-rows:auto minmax(0,1fr) auto;gap:12px;overflow:auto}
body.lobby-screen #ranks[hidden]{display:none!important}.rank-heading{grid-column:1;grid-row:1;gap:10px}.rank-heading .room-kicker{font-size:8px}.rank-heading h1{font-size:27px!important;font-style:italic;text-transform:uppercase;line-height:1.1;margin:5px 0 0!important}.rank-emblem{display:none}.rank-filters{grid-column:2;grid-row:1;align-items:center;margin:0}.rank-filters button{min-width:100px;height:40px!important;min-height:40px!important;font-size:11px!important}.rank-footnote{grid-column:1/-1;grid-row:3;text-align:center;margin:0;font-size:9px}#rank-board{grid-column:1/-1;grid-row:2;min-height:0}
body.lobby-screen #ranks .rank-empty{position:relative;height:100%;min-height:230px;display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);align-items:center;justify-items:center;gap:24px;padding:24px;background:radial-gradient(ellipse at 30% 40%,#244c9966,transparent 55%),linear-gradient(125deg,#101a3b,#151d41 48%,#07152c);border:1px solid #5075ad;border-radius:10px;overflow:hidden;box-shadow:inset 0 1px 0 #9bc8ff66,inset 0 -2px 0 #111f43,0 5px 18px #0007}
.honours-art{position:relative;width:100%;height:100%;min-height:0;display:grid;place-items:center;isolation:isolate}.honours-art:before{content:"";position:absolute;width:60%;height:75%;top:5%;background:linear-gradient(transparent,#38a5ff22);clip-path:polygon(30% 0,70% 0,100% 100%,0 100%);z-index:-1}.honours-trophy{width:100%;height:100%;max-height:320px;max-width:360px;object-fit:contain;filter:drop-shadow(0 0 22px #378aff66)}.podium-floor{position:absolute;bottom:5%;left:10%;right:10%;height:1px;background:linear-gradient(90deg,transparent,#3ea4f899,transparent);box-shadow:0 0 28px #2685ff}
.rank-empty-copy{text-align:center;max-width:360px}.rank-empty-copy .eyebrow{color:#68d7ff;font-size:10px;letter-spacing:2px}.rank-empty-copy h2{font-size:26px!important;line-height:1.12;color:#f0f7ff;font-style:italic;text-transform:uppercase;text-shadow:0 3px 0 #07152d;margin:14px 0!important}.rank-empty-copy p{font-size:13px;color:#9ebddd;margin-bottom:22px!important}.rank-empty-copy .rank-status{display:inline-block;border-radius:4px;font-size:8px;padding:8px 12px;background:#0a1227;border-color:#46628d}
body.lobby-screen #profile:not([hidden]){grid-template-columns:minmax(260px,.85fr) minmax(0,1.15fr);grid-template-rows:auto auto auto auto;max-width:1150px;gap:12px;padding:14px max(18px,env(safe-area-inset-right,0px)) 14px max(18px,env(safe-area-inset-left,0px))!important}
.account-heading{display:flex;justify-content:space-between;align-items:baseline;gap:16px;padding:0 4px}.account-heading h1{font-size:25px!important;text-transform:uppercase;font-style:italic;margin:0!important}.account-heading .room-kicker{font-size:9px}#profile-settings{grid-column:1/-1;grid-row:3}#profile-settings .room-identity{padding:12px!important;background:#0a1931!important;border-radius:7px;border-color:#315582!important}#profile-settings summary{font-size:11px;color:#9cc8e9}
#profile-summary{grid-column:1;grid-row:2;min-width:0}#profile .ai-settings{grid-column:2;grid-row:2;background:linear-gradient(#4d5268 0,#282e45 3%,#111a31 14%,#070f1f 100%);border-color:#5d718f;padding:22px;box-shadow:inset 0 1px 0 #b3d7ff66,0 6px 18px #0006;gap:14px}
#profile-summary .player-license{display:flex;flex-direction:column;align-items:center;gap:0;padding:18px 22px;background:radial-gradient(ellipse at 50% 25%,#1769a366,transparent 55%),linear-gradient(#122f5b,#0b1732 70%,#14152c);border-color:#69a8d2;border-radius:10px;box-shadow:inset 0 1px 0 #8cddff77,inset 0 -3px 0 #295a89,0 5px 16px #0007;overflow:hidden}
.player-license-top{display:flex;justify-content:space-between;gap:12px;width:100%;font-size:8px;color:#84d4f5;font-weight:800;letter-spacing:1.4px}.player-license-top>span:last-child{color:#d7bbff}
#profile-summary .player-license .portrait{width:105px;height:105px;margin:16px 0 10px;padding:4px;border:2px solid #7ee4ff;background:linear-gradient(135deg,#d3faff,#238bc5 35%,#071a3b 65%,#7a4dbe);box-shadow:0 4px 0 #06122a,0 0 30px #24a3ef44}
#profile-summary .player-license h2{margin:0!important;max-width:100%;text-align:center;font-size:26px;white-space:nowrap;text-overflow:ellipsis;overflow:hidden}#profile-summary .player-license .player-country{margin:6px 0 14px;color:#80a6c9;font-size:10px}
.player-xp{width:100%;max-width:320px}.player-xp>div:first-child{display:flex;justify-content:space-between;gap:10px;font-size:8px;letter-spacing:1px;color:#a597c9}.player-xp b{font-size:9px;color:#b6d9ef;font-weight:600}.player-xp-track{margin-top:7px;height:6px;border-radius:4px;background:#070e21;border:1px solid #34496f;overflow:hidden}.player-xp-track i{display:block;height:100%;background:linear-gradient(90deg,#2670db,#3ee2fc);box-shadow:0 0 8px #27c9ff}
#profile-summary .player-license .stat-grid{width:100%;margin:14px 0 10px;gap:8px}#profile-summary .player-license .stat-grid>div{padding:10px;text-align:center;background:#07152a88;border:1px solid #2e4e7c;border-radius:6px}#profile-summary .player-license .stat-grid b{font-size:24px;color:#e3f7ff}#profile-summary .player-license .stat-grid span{font-size:9px}.player-achievements{display:flex;justify-content:center;flex-wrap:wrap;gap:6px}.player-achievements>span{padding:5px 7px;background:#222347;border:1px solid #63529466;border-radius:4px;font-size:8px;color:#cabbec}.player-unranked{font-size:7px;letter-spacing:1.5px;color:#7890b0;margin-top:10px}
.ai-console-heading{display:flex;align-items:center;gap:14px}.ai-console-heading .room-kicker{font-size:8px;letter-spacing:1.4px}.ai-console-heading h2{margin:4px 0 0!important;text-transform:uppercase;font-size:24px!important;font-style:italic}.ai-emblem{width:52px;height:52px;display:grid;place-items:center;flex:none;border:1px solid #a082dc;border-radius:10px;background:var(--wpas-button-purple);color:#f0e3ff;font-size:35px;box-shadow:0 4px 8px #0007}.ai-settings #ai-status{padding:12px;border:1px solid #334f77;background:#08182c;border-radius:6px;color:#85c8ea;font-size:11px}.ai-settings label{display:grid;grid-template-columns:1fr minmax(100px,40%);gap:12px;align-items:center;color:#adc6e4;font-size:11px}.ai-settings #ai-budget{width:100%;font-size:22px;font-weight:800;color:white;text-align:center;background:linear-gradient(#040a17,#122947);border:1px solid #4c719e}.ai-settings button#ai-enable{background:var(--wpas-button-green)!important;color:#103200!important;font-size:17px;font-style:italic;border-color:#bbff7d;height:52px;min-height:52px}.ai-settings small{font-size:9px;color:#6f8cae;line-height:1.5}
.profile-recent{grid-column:1/-1;grid-row:4;border:1px solid #304d75;border-radius:7px;background:#0a1730;padding:12px}.profile-recent summary{font-size:11px;color:#9fc4e9;cursor:pointer;display:flex;justify-content:space-between}.profile-recent #history{padding-top:12px;max-height:280px;overflow:auto}.profile-recent .history-row{font-size:11px}.profile-logout{grid-column:1/-1}
/* Tournament data retains Details-first navigation with denser HUD presentation. */
.region-registration{background:linear-gradient(#414b62 0,#202d46 3%,#0b1b35 16%,#071125);border-color:#557ca3;box-shadow:inset 0 1px 0 #c3e7ff66,0 5px 15px #0007}.region-registration .region-detail-metrics>span{flex:1;text-align:center;padding:10px 4px;background:linear-gradient(#13375b,#0b1d38);border:1px solid #31587d;border-radius:5px;font-size:9px}.region-registration .region-detail-metrics b{font-size:31px;text-shadow:0 2px 0 #06213c;color:#dff9ff}.tournament-spec-grid>div{background:linear-gradient(#264974 0,#10294b 8%,#0b1b35);border-radius:5px;box-shadow:inset 0 1px 0 #b4dcff44,0 3px 8px #0004}.tournament-spec-grid>div>span{display:grid;place-items:center;width:32px;height:32px;background:linear-gradient(#2d75a3,#123a65);border:1px solid #4aa8d9;border-radius:7px;font-size:23px}.tournament-spec-grid strong{font-weight:900;text-shadow:0 2px 0 #07152d}.region-detail .tournament-cycle,.region-detail .tournament-champion{border-radius:5px;box-shadow:inset 0 1px 0 #accbff22}
@media(orientation:portrait) and (max-width:700px){
body.lobby-screen .play-room:not([hidden]){grid-template-columns:1fr;grid-template-rows:minmax(250px,1fr) auto;gap:10px;padding:10px;align-content:stretch;min-height:0}
.room-intro{min-height:250px}.mode-heading{padding:14px 18px 0;display:block}.room-intro .mode-heading h1{font-size:27px!important;margin-top:4px!important}.room-art{position:relative;flex:1;min-height:140px;margin:4px 14px;width:auto;opacity:1}.room-art .room-table-art{inset:8% 4%;width:92%;height:84%}.scene-cards{transform:translate(-50%,-50%) scale(.68)}.room-rival{width:33px;height:33px}.room-art>.friends-emblem{width:32px;height:32px;font-size:22px;top:84%}.room-benefits{padding:0 12px 12px;max-width:none;gap:12px}.room-benefits span{font-size:8px}.room-setup{padding:0;align-items:stretch}.play-room .room-setup .entry{padding:16px;gap:14px}.console-player{padding-bottom:10px}.console-avatar{width:42px;height:42px}.console-player strong{font-size:16px}.opponent-counter{grid-template-columns:44px minmax(0,1fr) 44px;max-width:250px}.opponent-counter button{width:44px;height:44px;min-height:44px}.opponent-counter output{font-size:42px}.console-label{margin-bottom:8px}.play-room .entry>button#practice{height:52px;min-height:52px;font-size:18px}
body.lobby-screen #ranks{grid-template-columns:1fr;grid-template-rows:auto auto minmax(0,1fr) auto;padding:16px!important;gap:14px}.rank-heading{grid-row:1;grid-column:1}.rank-heading h1{font-size:27px!important}.rank-filters{grid-row:2;grid-column:1;display:grid;grid-template-columns:1fr 1fr;gap:8px}.rank-filters button{min-width:0}.rank-footnote{grid-row:4;grid-column:1;line-height:1.5}#rank-board{grid-row:3;grid-column:1}body.lobby-screen #ranks .rank-empty{display:flex;flex-direction:column;gap:0;padding:18px;justify-content:center;min-height:300px}.honours-art{height:200px;flex:1;max-height:300px;width:100%}.rank-empty-copy{flex:none}.rank-empty-copy h2{font-size:23px!important}.rank-empty-copy p{font-size:12px;margin-bottom:16px!important}
body.lobby-screen #profile:not([hidden]){grid-template-columns:1fr;grid-template-rows:auto auto auto auto auto;padding:12px!important;gap:12px}.account-heading h1{font-size:21px!important}.account-heading .room-kicker{font-size:8px}#profile-summary{grid-column:1;grid-row:2}#profile .ai-settings{grid-column:1;grid-row:3;padding:18px;gap:12px}#profile-settings{grid-column:1;grid-row:4}.profile-recent{grid-column:1;grid-row:5}#profile-summary .player-license{padding:16px;display:grid;grid-template-columns:92px minmax(0,1fr);column-gap:16px;align-items:center;text-align:left}.player-license-top{grid-column:1/-1;margin-bottom:12px}#profile-summary .player-license .portrait{grid-column:1;grid-row:2/5;width:90px;height:90px;margin:0}#profile-summary .player-license h2{grid-column:2;grid-row:2;text-align:left;font-size:22px}#profile-summary .player-license .player-country{grid-column:2;grid-row:3;margin:4px 0 8px}.player-xp{grid-column:2;grid-row:4}.player-xp>div:first-child{font-size:7px;letter-spacing:0}#profile-summary .player-license .stat-grid{grid-column:1/-1;margin:14px 0 10px}.player-achievements,.player-unranked{grid-column:1/-1;text-align:center}.player-unranked{margin-top:9px}.ai-console-heading h2{font-size:22px!important}
.region-registration{padding:12px}.region-registration .region-detail-metrics{gap:6px}.region-registration .region-detail-metrics b{font-size:25px}.tournament-spec-grid>div{padding:12px}.tournament-spec-grid em{font-size:9px}
}

/* Keep the tournament field on its artwork, clear of the angled rail edge. */
.region-registration .region-start-progress{margin-top:12px}
.region-detail-hero{display:flex;flex-direction:column;align-items:stretch;gap:0}
.region-detail-hero>button{align-self:flex-start}
.region-detail-hero>.region-event-label,.region-detail-hero>h1{flex:none}
.region-art-metrics{margin-top:auto;padding-top:20px;position:relative;z-index:1}
.region-art-metrics:empty{display:none}
.region-art-metrics .region-detail-metrics{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:0;margin:0;padding:16px 0;border:1px solid #83c9f075;border-radius:8px;background:linear-gradient(125deg,#102944df,#061426cf);box-shadow:inset 0 1px 0 #ddf7ff33,0 5px 16px #0005;backdrop-filter:blur(10px)}
.region-art-metrics .region-detail-metrics>span{display:flex;flex-direction:column;align-items:center;justify-content:center;min-width:0;padding:0 5px;text-align:center;font-size:9px;line-height:1.3;letter-spacing:.1px;color:#b4cae1}
.region-art-metrics .region-detail-metrics>span+span{border-left:1px solid #8bc9f12e}
.region-art-metrics .region-detail-metrics b{font-size:30px;font-weight:900;line-height:1;margin:0 0 8px;color:#f0f8ff;text-shadow:0 2px 2px #0008}
.region-art-metrics .region-detail-metrics>span:first-child b{color:#90e6ff}
@media(orientation:portrait) and (max-width:700px){.region-detail-hero{display:flex;min-height:188px;padding-bottom:14px}.region-detail-hero h1{margin-bottom:0}.region-art-metrics{padding-top:16px}.region-art-metrics .region-detail-metrics{padding:12px 0}.region-art-metrics .region-detail-metrics b{font-size:27px;margin-bottom:6px}}
@media(orientation:landscape) and (max-height:500px){.region-art-metrics{padding-top:12px}.region-art-metrics .region-detail-metrics{padding:12px 0}.region-art-metrics .region-detail-metrics b{font-size:25px;margin-bottom:6px}.region-art-metrics .region-detail-metrics>span{font-size:8px}}
@media(max-height:500px) and (min-width:600px){
body.lobby-screen .play-room:not([hidden]){grid-template-columns:minmax(0,1.15fr) minmax(280px,.9fr);padding:8px 10px;gap:8px}.room-intro{min-height:210px}.mode-heading{padding:12px 20px 0}.room-intro .mode-heading h1{font-size:25px!important}.mode-heading .room-kicker{font-size:7px}.room-art{min-height:125px;margin:0 18px}.room-benefits{padding:0 12px 12px;gap:12px}.room-benefits span{font-size:8px}.scene-cards{transform:translate(-50%,-50%) scale(.65)}.room-rival{width:33px;height:33px}.room-setup{align-items:center}.play-room .room-setup .entry{padding:14px;gap:12px}.console-player{padding-bottom:9px}.console-avatar{width:38px;height:38px}.console-player strong{font-size:14px}.console-player small{font-size:7px}.console-profile{width:32px;height:32px;min-height:32px;font-size:18px}.console-label{font-size:8px;margin-bottom:7px}.opponent-counter{grid-template-columns:38px minmax(0,1fr) 38px;gap:10px;max-width:230px}.opponent-counter button{width:38px;height:38px;min-height:38px;font-size:22px}.opponent-counter output{font-size:36px}.opponent-counter small{font-size:7px}.play-room .entry>button#practice,.play-room .entry>button#create{height:44px!important;min-height:44px!important;font-size:17px!important}.play-room .join{padding-top:8px;gap:6px}.play-room .join input,.play-room .join button{height:38px;min-height:38px;font-size:11px}.play-room .spectator{font-size:9px!important}.play-room .ring-creation summary{font-size:10px}
body.lobby-screen #ranks{padding:10px 16px!important;gap:8px}.rank-heading h1{font-size:22px!important}.rank-heading .room-kicker{font-size:7px}.rank-filters button{height:34px!important;min-height:34px!important;font-size:10px!important}.rank-empty-copy h2{font-size:22px!important}.honours-trophy{max-height:190px}.rank-empty-copy p{font-size:11px}.rank-empty-copy .rank-status{font-size:7px}body.lobby-screen #ranks .rank-empty{min-height:160px;padding:12px 20px;gap:12px}
body.lobby-screen #profile:not([hidden]){padding:10px 16px!important;gap:10px}.account-heading h1{font-size:22px!important}#profile-summary .player-license{padding:14px}#profile-summary .player-license .portrait{width:80px;height:80px;margin:10px 0 6px}#profile-summary .player-license h2{font-size:22px}#profile-summary .player-license .stat-grid{margin:10px 0 8px}.player-license .player-country{margin-bottom:10px!important}#profile .ai-settings{padding:16px;gap:11px}.ai-settings #ai-budget{padding:8px;font-size:20px}.ai-console-heading h2{font-size:21px!important}.ai-emblem{width:42px;height:42px;font-size:29px}.ai-settings button#ai-enable{height:44px;min-height:44px}
}
body.lobby-screen .play-room .entry>button#create,body.lobby-screen .play-room .entry>button#practice{margin:0;display:flex;align-items:center;justify-content:center;gap:10px;font-weight:900}
@media(prefers-reduced-motion:reduce){.room-rival{transition:none}}
body.lobby-screen #ranks,body.lobby-screen #profile{min-height:0}
body.lobby-screen #ranks .rank-heading h1{font-size:27px!important}
body.lobby-screen #profile .account-heading h1{font-size:25px!important}
@media(orientation:portrait) and (max-width:700px){body.lobby-screen #profile .account-heading h1{font-size:21px!important}}
@media(max-height:500px) and (min-width:600px){body.lobby-screen #ranks .rank-heading h1,body.lobby-screen #profile .account-heading h1{font-size:22px!important}}
body[data-play-mode=private-room] .entry>button#practice,body[data-play-mode=practice-room] .entry>button#create{display:none!important}

/* Personal room deck: existing games first, with a compact new-table console. */
.play-room .room-setup{flex-direction:column;align-items:stretch;justify-content:flex-start;gap:12px;min-height:0;overflow-y:auto;padding:0 2px 8px 6px;scrollbar-width:thin}
.owned-tables{flex:none;min-width:0;padding:14px;border:1px solid #527fa5;border-radius:10px;background:linear-gradient(#354762 0,#122844 7%,#08162d 100%);box-shadow:inset 0 1px 0 #b9e5ff55,0 6px 16px #0005}
.owned-tables>header{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:12px}.owned-tables>header small{font-size:8px;letter-spacing:1.6px;font-weight:800;color:#82c8f3}.owned-tables h2{margin:3px 0 0!important;font-size:22px!important;font-weight:900;font-style:italic;color:#f2faff}.owned-tables h2>span{font-size:12px;display:inline-grid;place-items:center;min-width:22px;height:22px;vertical-align:middle;border:1px solid #3474a1;border-radius:6px;background:#0c2d51;color:#7ce1ff;font-style:normal;margin-left:6px}
.owned-tables>header button{width:36px;height:36px;min-height:36px;padding:0;border:1px solid #4689b3;border-radius:7px;background:linear-gradient(#285e8d,#102c4b);color:#bdefff;font-size:23px;box-shadow:inset 0 1px 0 #d1efff44}
.owned-table-list{display:grid;gap:10px}.owned-table-card{display:grid;grid-template-columns:68px minmax(0,1fr);gap:10px;padding:12px;border:1px solid #315983;border-radius:7px;background:radial-gradient(ellipse at 0 0,#164b79,#0c213e 60%);box-shadow:inset 0 1px 0 #8ebfef22,0 3px 7px #0004}
.owned-table-visual{position:relative;align-self:center;height:44px;filter:drop-shadow(0 3px 3px #0008)}.owned-table-visual img{display:block;width:100%;height:100%;object-fit:contain}.owned-table-visual>span{position:absolute;inset:0;display:grid;place-items:center;font-size:20px;color:#b6efc6;text-shadow:0 2px 0 #03481c}
.owned-table-info{min-width:0}.owned-table-info>div{display:flex;align-items:center;justify-content:space-between;gap:8px}.owned-table-code{font-size:18px;letter-spacing:1px;color:#eff8ff}.owned-table-state{font-size:7px;font-weight:800;letter-spacing:.7px;color:#9ee990}.owned-table-meta{margin:6px 0!important;color:#abc9e4!important;font-size:10px!important;letter-spacing:0!important}.owned-table-stack{font-size:9px;color:#80b1d9;line-height:1.4;display:block}
.owned-table-actions{grid-column:1/-1;display:grid;grid-template-columns:minmax(0,1fr) 80px;gap:8px}.owned-table-actions>button{height:44px;min-height:44px;padding:0 12px;border:1px solid #62d6ff;border-radius:5px;background:var(--wpas-button-blue);box-shadow:inset 0 1px 0 #d6f8ff88,inset 0 -2px 0 #02254d,0 2px 5px #0005;color:#fff;font-size:13px;font-weight:850}.owned-table-actions>button[data-owned-delete]{background:var(--wpas-button-purple);border-color:#9b83c3;color:#ede4ff;font-size:11px}.owned-table-actions>button:disabled,.owned-tables>header button:disabled{opacity:.5}
.owned-empty{padding:10px 0 4px;margin:0!important;color:#91b5d8!important;font-size:11px!important;line-height:1.5;letter-spacing:0!important}
.new-table-console{flex:none;border:1px solid #486b96;border-radius:8px;background:linear-gradient(#203a5c,#0a1930);overflow:hidden;box-shadow:inset 0 1px 0 #9edfff33}.new-table-console>summary{list-style:none;display:flex;align-items:center;gap:9px;padding:13px 16px;min-height:44px;box-sizing:border-box;color:#d4eeff;font-size:12px;font-weight:800;cursor:pointer}.new-table-console>summary::-webkit-details-marker{display:none}.new-table-console>summary>span{color:#74e1ff;font-size:18px}.new-table-console>summary>b{margin-left:auto;color:#8abde2;font-size:16px}.new-table-console[open]>summary{border-bottom:1px solid #45688a}.new-table-console[open]>summary>b{rotate:180deg}.play-room .new-table-console .entry{border:0;border-radius:0;box-shadow:inset 0 1px 0 #c8d7ef33}
.owned-delete-dialog{box-sizing:border-box;width:min(430px,calc(100vw - 32px));padding:24px;border:1px solid #73a9d4;border-radius:12px;background:var(--wpas-chrome);color:#f0f7ff;box-shadow:inset 0 1px 0 #d8efff66,0 16px 60px #000c}.owned-delete-dialog::backdrop{background:#020617b8;backdrop-filter:blur(5px)}.owned-delete-dialog h2{font-size:24px;margin:10px 0 14px;color:#f0f7ff}.owned-delete-dialog>strong{font-size:18px;letter-spacing:2px;color:#8edcff}.owned-delete-dialog p{font-size:13px!important;line-height:1.6;color:#b3cce5;letter-spacing:0!important}.owned-delete-dialog>div{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-top:20px}.owned-delete-dialog button{height:44px;min-height:44px;padding:0 10px;border:1px solid #5b8bb6;border-radius:6px;background:var(--wpas-button-blue);color:white;font-size:13px;font-weight:800}.owned-delete-dialog #owned-delete-confirm{background:var(--wpas-button-purple);border-color:#b496dd}.owned-delete-dialog button:disabled{opacity:.5}.owned-delete-dialog #owned-delete-status:empty{display:none}
@media(orientation:portrait) and (max-width:700px){.play-room .room-setup{overflow:visible;padding:0 0 8px}.owned-tables{padding:12px}.owned-table-card{grid-template-columns:62px minmax(0,1fr)}.owned-delete-dialog{padding:20px}}
@media(orientation:landscape) and (max-height:500px){.owned-tables{padding:10px}.owned-tables>header{margin-bottom:8px}.owned-tables h2{font-size:19px!important}.owned-table-card{padding:9px;gap:8px;grid-template-columns:52px minmax(0,1fr)}.owned-table-visual{height:36px}.owned-table-actions>button{height:38px;min-height:38px;font-size:11px}.owned-table-code{font-size:15px}.new-table-console>summary{min-height:40px;padding:9px 12px}}
.owned-table-actions button:focus-visible,.owned-tables button:focus-visible,.new-table-console>summary:focus-visible{outline:2px solid #b8edff;outline-offset:2px}
.owned-table-card{padding:10px}
.owned-tables{display:flex;flex-direction:column;flex:1;min-height:150px;overflow:hidden}.owned-tables>header{flex:none;height:auto;padding:0;min-height:0;border:0;background:none;box-shadow:none}.owned-table-list{flex:1;min-height:0;overflow-y:auto;align-content:start;scrollbar-width:thin;padding:1px}
body.lobby-screen .owned-tables>header{height:auto;padding:0;min-height:0}
@media(orientation:portrait) and (max-width:700px){.owned-tables{flex:none}.owned-table-list{max-height:290px}}
body.lobby-screen #profile .account-heading h1{margin:0!important}
#profile .ai-settings>p,#profile .ai-settings label{margin:0!important}
#profile .ai-settings button{margin:0!important}
@media(max-height:500px) and (min-width:600px){
#profile-summary .player-license{display:grid;grid-template-columns:66px minmax(0,1fr);column-gap:12px;align-content:start;align-items:center;text-align:left}
#profile-summary .player-license .player-license-top{grid-column:1/-1;margin-bottom:10px}
#profile-summary .player-license .portrait{grid-column:1;grid-row:2/5;width:64px;height:64px;margin:0}
#profile-summary .player-license h2{grid-column:2;grid-row:2;text-align:left;font-size:19px}
#profile-summary .player-license .player-country{grid-column:2;grid-row:3;font-size:9px;margin:4px 0 8px!important}
#profile-summary .player-license .player-xp{grid-column:2;grid-row:4}
#profile-summary .player-license .player-xp>div:first-child{font-size:6px;letter-spacing:0}
#profile-summary .player-license .stat-grid{grid-column:1/-1;margin:12px 0 8px}
#profile-summary .player-license .stat-grid>div{padding:8px}
#profile-summary .player-license .stat-grid b{font-size:21px}
#profile-summary .player-license .player-achievements,#profile-summary .player-license .player-unranked{grid-column:1/-1}
#profile .ai-settings{gap:9px;padding:14px;align-content:start}
#profile .ai-settings>p:not(#ai-status){display:none}
#profile .ai-settings #ai-status{padding:9px;font-size:10px}
#profile .ai-settings label{font-size:10px;grid-template-columns:1fr minmax(100px,40%)}
#profile .ai-settings small{font-size:8px}
}

/* Game menu: sculpted chrome, compact tabs and controls, contained scrolling. */
#table-tools:not([open]){display:none!important}
body.lobby-screen:not(.playing) #table-switcher{display:none!important}
body.playing #game #table-tools{position:fixed;inset:calc(env(safe-area-inset-top,0px) + 54px) max(14px,calc(env(safe-area-inset-right,0px) + 10px)) auto auto;margin:0;width:min(480px,calc(100vw - env(safe-area-inset-left,0px) - env(safe-area-inset-right,0px) - 28px));max-width:none;height:min(552px,calc(100dvh - env(safe-area-inset-top,0px) - env(safe-area-inset-bottom,0px) - 68px));max-height:none;padding:0;box-sizing:border-box;overflow:hidden;flex-direction:column;gap:0;background:linear-gradient(145deg,#1b3358,#0b1931 60%,#080d1c);border:1px solid #7188b0;border-radius:12px;color:#edf6ff;box-shadow:inset 0 1px 0 #e0edff80,inset 0 0 0 3px #4d63972b,0 18px 65px #000b;letter-spacing:0}
body.playing #game #table-tools[open]{display:flex}
#table-tools::backdrop{background:#01061770;backdrop-filter:none}
body.playing #game #table-tools .menu-heading{flex:none;display:flex;align-items:center;gap:12px;min-height:72px;margin:0;padding:12px 16px;background:var(--wpas-chrome);border-bottom:1px solid #6f819d;box-shadow:0 2px 0 #0008;box-sizing:border-box}
body.playing #game #table-tools .menu-heading-icon{display:grid;place-items:center;flex:none;width:40px;height:40px;border:1px solid #58c2ef;border-radius:8px;background:var(--wpas-button-blue);box-shadow:inset 0 1px 0 #e9fbff99,0 3px 7px #0008;color:#e9f9ff;font-size:27px;text-shadow:0 2px 0 #0c315b}
body.playing #game #table-tools .menu-heading>div{min-width:0;flex:1}
body.playing #game #table-tools .menu-heading small{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:9px;font-weight:750;letter-spacing:.9px;color:#9db7d8}
body.playing #game #table-tools h2{font-size:23px;font-weight:900;font-style:italic;line-height:1.1;letter-spacing:-.5px;margin:3px 0 0;color:#fff;text-shadow:0 2px 0 #0008}
body.playing #game #table-tools #close-table-menu{flex:none;width:36px;height:36px;min-height:36px;padding:0;border-radius:7px;background:linear-gradient(#465671,#18253c);border:1px solid #718db0;box-shadow:inset 0 1px 0 #c7e8ff55,0 2px 3px #0008;color:white;font-size:26px;line-height:1}
body.playing #game #table-tools .menu-tab-bar{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:4px;padding:8px 12px 0;flex:none;background:#071123;border-bottom:1px solid #3e6086}
body.playing #game #table-tools .menu-tab-bar>button{display:flex;align-items:center;justify-content:center;gap:7px;width:auto;min-width:0;height:42px;min-height:42px;margin:0;padding:0 6px;border:1px solid #4c6385;border-bottom:0;border-radius:5px 5px 0 0;background:linear-gradient(#344763,#172842);color:#adbed6;box-shadow:inset 0 1px 0 #cadfff33;font-size:12px;font-weight:800;text-transform:none;letter-spacing:0}
body.playing #game #table-tools .menu-tab-bar>button[aria-selected=true]{background:var(--wpas-button-blue);color:white;border-color:#52cfff;box-shadow:inset 0 1px 0 #d2f8ff99,inset 0 -3px 0 #4ee3ff;text-shadow:0 2px 1px #063063}
#table-tools svg{width:19px;height:19px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round;flex:none}
body.playing #game #table-tools .table-menu-content{flex:1;min-height:0;overflow-y:auto;overscroll-behavior:contain;scrollbar-width:thin;scrollbar-color:#4b6993 #0a172b;padding:16px}
body.playing #game #table-tools .table-menu-content>section{margin:0;padding:0;border:0;min-width:0}
body.playing #game #table-tools #table-switcher{display:block;margin:0;padding:0;border:0;background:none}
body.playing #game #table-tools .menu-list-heading{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-bottom:12px}
body.playing #game #table-tools .menu-list-heading>span:first-child{font-size:9px;font-weight:800;letter-spacing:1.2px;color:#9ebadd;white-space:nowrap}
#menu-table-count{display:inline-grid;place-items:center;min-width:18px;height:18px;padding:0 3px;border:1px solid #426591;border-radius:4px;background:#0a1c35;color:#b6e5ff;margin-left:4px;font-size:10px}
body.playing #game #table-tools #wallet{display:block!important;font-size:11px;color:#b7d7f3;text-align:right;margin:0;padding:0;letter-spacing:0;white-space:nowrap}
body.playing #game #table-tools #wallet b{color:#e4f4ff;font-size:15px;font-variant-numeric:tabular-nums}
body.playing #game #table-tools #table-tabs{display:grid;grid-template-columns:minmax(0,1fr);width:100%;max-width:none;gap:8px;overflow:visible;margin:0 0 14px}
body.playing #game #table-tools .table-tab{width:100%;min-width:0;min-height:68px;display:flex;flex-direction:row;align-items:center;gap:12px;padding:10px 12px;margin:0;border:1px solid #4e6687;border-radius:7px;background:linear-gradient(#263c5a,#13233c);box-shadow:inset 0 1px 0 #c5ddff33,0 3px 5px #0005;color:#eaf4ff;letter-spacing:0;text-align:left;white-space:normal}
body.playing #game #table-tools .table-tab.selected{border-color:#49b8ed;background:linear-gradient(120deg,#174d83,#132d50);box-shadow:inset 3px 0 0 #45dcff,inset 0 1px 0 #b5e9ff55,0 3px 5px #0006}
body.playing #game #table-tools .menu-table-icon{flex:none;display:grid;place-items:center;width:35px;height:35px;border:1px solid #4f8ebc;border-radius:50%;background:radial-gradient(ellipse at 40% 20%,#257ac3,#0b2748 75%);font-size:24px;color:#b8ebff;box-shadow:0 2px 0 #030c1b,inset 0 1px 0 #b8e5ff55}
body.playing #game #table-tools .menu-table-copy{flex:1;min-width:0;display:block;color:#eaf4ff}
body.playing #game #table-tools .menu-table-copy>b{display:block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;font-size:13px;font-weight:800;letter-spacing:0}
body.playing #game #table-tools .menu-table-copy>span{display:block;font-size:9px;color:#8daecc;letter-spacing:.5px;margin-top:5px}
body.playing #game #table-tools .table-tab>small{flex:none;font-size:8px;font-weight:850;color:#91d8ff;letter-spacing:.5px;max-width:95px;text-align:right}
body.playing #game #table-tools .table-tab.needs-action{border-color:#7bd346}body.playing #game #table-tools .table-tab.needs-action>small{color:#baff82}
body.playing #game #table-tools .menu-table-actions,body.playing #game #table-tools .menu-buttons{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}
body.playing #game #table-tools .menu-table-actions>button,body.playing #game #table-tools .menu-buttons>button,body.playing #game #table-tools .menu-footer button{box-sizing:border-box;display:flex;align-items:center;justify-content:center;width:100%;min-width:0;height:44px;min-height:44px;margin:0;padding:0 10px;border:1px solid #6888ae;border-radius:6px;background:linear-gradient(#3f5574 0,#243c5d 20%,#14253e 100%);box-shadow:inset 0 1px 0 #d0eaff77,inset 0 -2px 0 #061323,0 3px 5px #0005;color:#e5f2ff;white-space:normal;font-size:12px;font-weight:800;letter-spacing:0;text-transform:none}
body.playing #game #table-tools #menu-invite{background:var(--wpas-button-blue);border-color:#51bde9;color:white}
body.playing #game #table-tools .menu-settings-grid{display:grid;gap:9px}
body.playing #game #table-tools .menu-setting{display:flex;align-items:center;gap:12px;min-height:65px;box-sizing:border-box;padding:10px 12px;border:1px solid #395777;border-radius:7px;background:linear-gradient(110deg,#1b3556,#0b1c34);box-shadow:inset 0 1px 0 #97bfe122}
body.playing #game #table-tools .menu-setting-icon{display:grid;place-items:center;flex:none;width:29px;color:#8cd6ff}.menu-setting-icon svg{width:23px;height:23px}
body.playing #game #table-tools .menu-setting>div{flex:1;min-width:0}
body.playing #game #table-tools .menu-setting strong{display:block;font-size:13px;font-weight:800;color:#e5f4ff}
body.playing #game #table-tools .menu-setting small{display:block;margin-top:4px;color:#7f9fbe;font-size:10px;line-height:1.3}
body.playing #game #table-tools button.menu-toggle{position:relative;flex:none;width:73px;height:32px;min-height:32px;margin:0;padding:0 8px 0 26px;border:1px solid #587393;border-radius:6px;background:linear-gradient(#263d5a,#0d1a2f);font-size:0;color:#9db5d0;box-shadow:inset 0 1px 0 #aac9ed33,inset 0 2px 4px #0007}
body.playing #game #table-tools button.menu-toggle:before{content:"";position:absolute;left:5px;top:6px;width:15px;height:18px;border:1px solid #6d86a7;border-radius:3px;background:linear-gradient(#7e98b4,#344d6d);box-shadow:0 1px 3px #0008}
body.playing #game #table-tools button.menu-toggle:after{content:attr(data-status);font-size:10px;font-weight:900;letter-spacing:.7px}
body.playing #game #table-tools button.menu-toggle[data-enabled=true]{background:var(--wpas-button-green);border-color:#a7ec6f;color:#153b0c;box-shadow:inset 0 1px 0 #e6ffc8aa,0 0 10px #71f03722}
body.playing #game #table-tools button.menu-toggle[data-enabled=true]:before{background:linear-gradient(#edffcf,#98dc60);border-color:#d0f5a7}
body.playing #game #table-tools .menu-permission-note{font-size:9px;color:#839bbb;letter-spacing:0;line-height:1.5;margin:12px 3px 0}
body.playing #game #table-tools #media-status{color:#9bddff;font-size:11px;line-height:1.4;margin:10px 3px 0;padding:0;letter-spacing:0}
body.playing #game #table-tools .menu-seat-card{display:flex;align-items:center;gap:12px;border:1px solid #4c719a;border-radius:8px;background:radial-gradient(ellipse at 0 0,#214c80,#101e35);padding:12px;box-shadow:inset 0 1px 0 #a5dfff33}
#menu-seat-avatar{width:56px;height:56px;display:block;flex:none;border:2px solid #87d1fa;border-radius:50%;overflow:hidden;background:#0b1729;box-shadow:0 3px 0 #020913}#menu-seat-avatar .avatar-art{display:block;width:100%;height:100%}#menu-seat-avatar .menu-spectator{display:grid;place-items:center;height:100%;font-size:35px;color:#98d6ff}
#menu-seat-label{display:block;font-size:8px;font-weight:800;color:#8cb9dc;letter-spacing:1px}#menu-seat-name{display:block;font-size:19px;font-weight:850;color:#fff;margin:4px 0}#menu-seat-stack{font-size:12px;color:#a6d7f2;font-variant-numeric:tabular-nums}
body.playing #game #table-tools #menu-seat-note{font-size:11px;line-height:1.5;color:#8ba8c7;letter-spacing:0;margin:12px 0}
body.playing #game #table-tools #practice-menu{margin-top:16px;border-top:1px solid #48658966;padding-top:14px}
body.playing #game #table-tools #practice-menu h3{font-size:12px;color:#d3e7fc;font-weight:800;margin-bottom:10px}body.playing #game #table-tools #practice-menu h3 small{display:block;color:#7e9cb9;font-size:8px;margin-top:4px}
body.playing #game #table-tools .recent-hands{margin-top:16px;border-top:1px solid #48658966;padding-top:12px}
body.playing #game #table-tools .recent-hands>summary{display:block;color:#9cc9ef;font-size:11px;font-weight:750;cursor:pointer;padding:5px 0}body.playing #game #table-tools .recent-hands>summary:after{content:"＋";float:right}.recent-hands[open]>summary:after{content:"−"!important}
body.playing #game #table-tools #activity{color:#a9c1db;font-size:11px;max-height:130px}
body.playing #game #table-tools .menu-footer{flex:none;padding:10px 16px 14px;border-top:1px solid #526782;background:var(--wpas-chrome);box-shadow:0 -1px 0 #c4d6ed22}
body.playing #game #table-tools #menu-turn-status{display:block;font-size:9px;color:#91a4be;text-align:center;margin-bottom:8px;letter-spacing:.3px}body.playing #game #table-tools #menu-turn-status.is-your-turn{color:#b8ff7c;font-weight:850}
body.playing #game #table-tools .menu-footer>div{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.7fr);gap:8px}
body.playing #game #table-tools .menu-footer [data-menu-resume]{background:var(--wpas-button-blue);border-color:#5bd5ff;color:white}
body.playing #game #table-tools button:disabled{opacity:.5;cursor:default}
body.playing #game #table-tools button:focus-visible,body.playing #game #table-tools summary:focus-visible{outline:2px solid #bdf1ff;outline-offset:2px}
@media(orientation:landscape) and (max-height:500px){
body.playing #game #table-tools{inset:calc(env(safe-area-inset-top,0px) + 46px) max(12px,calc(env(safe-area-inset-right,0px) + 10px)) auto auto;width:min(510px,calc(100vw - env(safe-area-inset-left,0px) - env(safe-area-inset-right,0px) - 24px));height:calc(100dvh - env(safe-area-inset-top,0px) - env(safe-area-inset-bottom,0px) - 56px)}
body.playing #game #table-tools .menu-heading{min-height:56px;padding:8px 12px;gap:10px}body.playing #game #table-tools .menu-heading-icon{width:32px;height:32px;font-size:22px}body.playing #game #table-tools h2{font-size:20px}body.playing #game #table-tools .menu-heading small{font-size:8px}body.playing #game #table-tools #close-table-menu{width:32px;height:32px;min-height:32px}
body.playing #game #table-tools .menu-tab-bar{padding:5px 10px 0}body.playing #game #table-tools .menu-tab-bar>button{height:34px;min-height:34px;font-size:11px}
body.playing #game #table-tools .table-menu-content{padding:12px}.menu-list-heading{margin-bottom:8px!important}body.playing #game #table-tools .table-tab{min-height:56px;padding:8px 10px}
body.playing #game #table-tools .menu-settings-grid{grid-template-columns:1fr 1fr;gap:8px}body.playing #game #table-tools .menu-setting{gap:8px;padding:10px;min-height:62px;flex-wrap:wrap}body.playing #game #table-tools .menu-setting-icon{width:20px}body.playing #game #table-tools .menu-setting strong{font-size:11px}body.playing #game #table-tools .menu-setting small{font-size:8px}body.playing #game #table-tools button.menu-toggle{width:66px}
body.playing #game #table-tools .menu-footer{padding:7px 12px 10px}body.playing #game #table-tools #menu-turn-status{margin-bottom:5px;font-size:8px}body.playing #game #table-tools .menu-footer button{height:38px;min-height:38px;font-size:11px}
}
@media(orientation:portrait) and (max-width:600px){body.playing #game #table-tools{border-radius:10px}body.playing #game #table-tools .menu-heading{padding:12px}body.playing #game #table-tools .table-menu-content{padding:12px}body.playing #game #table-tools .menu-heading small{font-size:8px}body.playing #game #table-tools .menu-table-copy>b{font-size:12px}body.playing #game #table-tools .table-tab>small{max-width:75px;font-size:7px}body.playing #game #table-tools .menu-setting{gap:9px;padding:10px}.menu-setting-icon{width:24px!important}body.playing #game #table-tools .menu-setting small{font-size:9px}}
body.playing #game #table-tools #menu-tables{height:100%}
body.playing #game #table-tools #table-switcher{display:flex;flex-direction:column;flex-wrap:nowrap;align-items:stretch;justify-content:flex-start;gap:0;height:100%;min-height:0}
body.playing #game #table-tools #table-tabs{flex:1;min-height:0;align-content:start;overflow-y:auto;overscroll-behavior:contain;scrollbar-width:thin;padding:1px 2px 3px 1px}
body.playing #game #table-tools .menu-list-heading,body.playing #game #table-tools .menu-table-actions{flex:none}
body.playing #game #table-tools .table-menu-content:has(#menu-tables:not([hidden])){overflow:hidden}

/* In-table player record: a bounded HUD panel; the table and action dock never move. */
body.playing #game #player-profile{position:fixed;inset:calc(env(safe-area-inset-top,0px) + 54px) auto calc(var(--dock-height,72px) + env(safe-area-inset-bottom,0px) + 12px) max(14px,calc(env(safe-area-inset-left,0px) + 10px));width:min(800px,calc(100vw - env(safe-area-inset-left,0px) - env(safe-area-inset-right,0px) - 28px));height:auto;min-height:0;max-width:none;max-height:none;margin:0;padding:0;box-sizing:border-box;overflow:hidden;border:1px solid #7188b0;border-radius:12px;background:linear-gradient(145deg,#1b3358,#0b1931 60%,#080d1c);box-shadow:inset 0 1px 0 #e0edff80,inset 0 0 0 3px #4d63972b,0 18px 65px #000b;color:#edf6ff;z-index:50;animation:none;letter-spacing:0;transform:none}
body.playing #game #player-profile:not([open]){display:none}
body.playing #game #player-profile[open]{display:flex;flex-direction:column}
body.playing #game #player-profile .profile-chrome{display:flex;align-items:center;gap:12px;flex:none;padding:10px 16px;min-height:62px;box-sizing:border-box;background:var(--wpas-chrome);border-bottom:1px solid #6f819d;box-shadow:0 2px 0 #0008}
#player-profile .profile-chrome-icon{display:grid;place-items:center;width:38px;height:38px;flex:none;background:var(--wpas-button-blue);border:1px solid #58c2ef;border-radius:8px;box-shadow:inset 0 1px 0 #e9fbff99,0 3px 7px #0008;color:#e9f9ff;font-size:26px;text-shadow:0 2px 0 #0c315b}
#player-profile .profile-chrome>div{flex:1;min-width:0}#player-profile .profile-chrome small{display:block;color:#9db7d8;font-size:8px;font-weight:800;letter-spacing:1.4px}
body.playing #game #player-profile #profile-dialog-title{color:#fff;font-size:23px;font-weight:900;font-style:italic;line-height:1.1;letter-spacing:-.4px;margin:3px 0 0;text-shadow:0 2px 0 #0008}
body.playing #game #player-profile #close-player-profile{position:static;float:none;flex:none;width:36px;height:36px;min-height:36px;margin:0;padding:0;border:1px solid #718db0;border-radius:7px;background:linear-gradient(#465671,#18253c);box-shadow:inset 0 1px 0 #c7e8ff55,0 2px 3px #0008;color:#fff;font-size:26px;line-height:1}
#player-profile .profile-roster{display:flex;align-items:center;gap:8px;padding:8px 12px;background:linear-gradient(#122b49,#0a1830);border-bottom:1px solid #426181;flex:none;min-width:0;box-shadow:inset 0 1px 0 #9bc9ef22}
body.playing #game #player-profile .profile-roster>button{display:grid;place-items:center;flex:none;width:26px;height:38px;min-height:38px;margin:0;padding:0;border:1px solid #526f94;border-radius:5px;background:linear-gradient(#2e4769,#11213b);box-shadow:inset 0 1px 0 #b4daff44;color:#d0ecff;font-size:24px;font-weight:700}
body.playing #game #player-profile .profile-roster>button:disabled{opacity:.25;cursor:default}
body.playing #game #player-profile #profile-players{display:flex;align-items:center;gap:6px;flex:1;min-width:0;padding:2px;margin:0;border:0;overflow-x:auto;overscroll-behavior-x:contain;scrollbar-width:none;scroll-snap-type:x proximity}
#player-profile #profile-players::-webkit-scrollbar{display:none}
body.playing #game #player-profile #profile-players button{display:flex;flex-direction:column;align-items:center;justify-content:center;flex:0 0 60px;gap:4px;min-width:0;min-height:60px;padding:5px 3px;margin:0;border:1px solid transparent;border-radius:6px;background:transparent;box-shadow:none;color:#97b7d8;scroll-snap-align:start}
body.playing #game #player-profile #profile-players button[aria-pressed=true]{background:linear-gradient(#215b93,#113256);border-color:#55bde9;box-shadow:inset 0 1px 0 #b8ebff55,inset 0 -2px 0 #41c8f5;color:#fff}
#player-profile .profile-roster-avatar{display:block;flex:none;width:34px;height:34px;border:1px solid #688fb5;border-radius:50%;overflow:hidden;box-shadow:0 2px 0 #020c1c;background:#0a182c}
#player-profile .profile-roster-avatar .avatar-art{display:block;width:100%;height:100%}
#player-profile .profile-roster-name{display:block;width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:8px;font-weight:700;letter-spacing:0}
body.playing #game #player-profile #profile-content{flex:1;min-height:0;display:grid;grid-template-columns:190px minmax(0,1fr);gap:14px;padding:14px;overflow:hidden;box-sizing:border-box}
#player-profile .profile-player-card{position:relative;display:flex;flex-direction:column;align-items:center;text-align:center;min-width:0;min-height:0;padding:16px 12px;overflow-y:auto;scrollbar-width:thin;border:1px solid #3f6a96;border-radius:8px;background:radial-gradient(ellipse at 50% 15%,#1c5288,#102744 55%,#0b182d);box-shadow:inset 0 1px 0 #8bd7ff44,0 4px 10px #0004}
#player-profile .profile-avatar{width:82px;height:82px;min-height:82px;flex:none;padding:3px;border:1px solid #a2d7f1;border-radius:50%;overflow:hidden;background:linear-gradient(145deg,#d1f4ff,#4a8fc6 35%,#0b2344 60%,#5fa9d3);box-shadow:inset 0 1px 0 #f4ffffaa,0 4px 0 #030b1d,0 0 20px #3dc9ff22}
#player-profile .profile-avatar .avatar-art{display:block;width:100%;height:100%;border-radius:50%;overflow:hidden}
#player-profile .profile-player-kind{display:block;margin-top:14px;font-size:7px;font-weight:850;letter-spacing:1.6px;color:#81cefb}
body.playing #game #player-profile #profile-player-name{font-size:23px;font-weight:900;line-height:1.1;letter-spacing:-.4px;overflow-wrap:anywhere;margin:6px 0;color:#f4faff}
#player-profile .profile-player-card>p{font-size:10px;color:#9fbfdf;margin:0 0 12px;line-height:1.4;letter-spacing:0}
#player-profile .profile-level-chip{display:block;padding:5px 10px;font-size:8px;font-weight:850;letter-spacing:1px;color:#c5eaff;border:1px solid #4d89b9;border-radius:5px;background:linear-gradient(#204a78,#0d2748);box-shadow:inset 0 1px 0 #aedfff44}
#player-profile .profile-milestones{width:100%;display:flex;flex-direction:column;align-items:stretch;gap:6px;margin:18px 0 12px}
#player-profile .profile-milestones>small{display:block;font-size:7px;font-weight:850;letter-spacing:1.4px;color:#83a6ca;margin-bottom:3px}
#player-profile .profile-milestones>span{display:flex;align-items:center;justify-content:center;gap:6px;padding:6px;border:1px solid #63739f;border-radius:5px;background:linear-gradient(#354466,#1b2845);color:#c8d9ef;font-size:9px;line-height:1.3}
#player-profile .profile-milestones i{color:#8cd9ff;font-size:12px;font-style:normal}#player-profile .profile-milestones .profile-milestone-empty{border:0;background:none;color:#7392b3}
#player-profile .profile-record-scope{display:block;margin-top:auto;color:#6f91b6;font-size:8px;line-height:1.5;letter-spacing:0}
#player-profile .profile-data{min-width:0;min-height:0;display:flex;flex-direction:column}
#player-profile .profile-data-tabs{display:grid;grid-template-columns:1fr 1fr;gap:5px;border-bottom:1px solid #426b99;padding:0 1px 0;flex:none}
body.playing #game #player-profile .profile-data-tabs>button{display:flex;align-items:center;justify-content:center;height:36px;min-height:36px;margin:0;padding:0 8px;border:1px solid #4c6385;border-bottom:0;border-radius:5px 5px 0 0;background:linear-gradient(#344763,#172842);box-shadow:inset 0 1px 0 #cadfff33;color:#adbed6;font-size:11px;font-weight:800;letter-spacing:0;text-transform:none}
body.playing #game #player-profile .profile-data-tabs>button[aria-selected=true]{background:var(--wpas-button-blue);border-color:#52cfff;color:#fff;box-shadow:inset 0 1px 0 #d2f8ff99,inset 0 -3px 0 #4ee3ff;text-shadow:0 2px 1px #063063}
#player-profile .profile-data-scroll{min-height:0;flex:1;overflow-y:auto;overscroll-behavior:contain;scrollbar-width:thin;scrollbar-color:#496d9b #0a172b;padding:12px 2px 2px}
#player-profile .profile-data-scroll section{margin:0;padding:0;border:0}
#player-profile .profile-stats{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px}
#player-profile .profile-stat{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:6px;min-height:70px;min-width:0;padding:10px 5px;border:1px solid #3c6189;border-radius:6px;background:linear-gradient(#1b3b60,#0b203d);box-shadow:inset 0 1px 0 #aad5f833,0 3px 7px #0004;box-sizing:border-box;text-align:center}
#player-profile .profile-stat>b{display:block;font-size:24px;line-height:1.1;font-weight:900;font-variant-numeric:tabular-nums;color:#f1faff;max-width:100%;overflow-wrap:anywhere;letter-spacing:-.5px;text-shadow:0 2px 0 #06152b}
#player-profile .profile-stat>span{display:block;font-size:8px;color:#88accf;line-height:1.3;letter-spacing:0}
#player-profile .is-gain>b,#player-profile b.is-gain{color:#b3ee96}#player-profile .is-loss>b,#player-profile b.is-loss{color:#e2b3f5}
#player-profile .profile-trend-card{margin-top:12px;padding:12px;border:1px solid #365b82;border-radius:7px;background:linear-gradient(#112b4a,#0b1c34);box-shadow:inset 0 1px 0 #80b3d922}
#player-profile .profile-trend-heading,#player-profile .profile-results-heading{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-bottom:8px}
#player-profile h4{font-size:11px;font-weight:800;color:#d7edff;letter-spacing:0;margin:0}
#player-profile .profile-trend-heading>span{font-size:7px;letter-spacing:.8px;font-weight:800;color:#7296bc}
#player-profile .profile-trend{display:block;width:100%;height:110px}
#player-profile .profile-trend-axis{display:flex;align-items:center;justify-content:space-between;font-size:8px;color:#789ec4;margin-top:5px;font-variant-numeric:tabular-nums}
#player-profile .profile-trend-axis>b{font-size:12px}
#player-profile .profile-mode-chips{display:flex;flex-wrap:wrap;gap:6px;margin-top:10px}
#player-profile .profile-mode-chips>span{display:flex;align-items:center;gap:9px;border:1px solid #3b5d87;border-radius:4px;padding:5px 8px;color:#7fa5cd;font-size:8px;background:#102442}
#player-profile .profile-mode-chips b{font-size:9px;color:#b6d9f5;font-variant-numeric:tabular-nums}
#player-profile .profile-record-note{flex:none;font-size:8px;letter-spacing:.2px;line-height:1.4;color:#6c8db2;margin:8px 2px 0}
body.playing #game #player-profile #profile-range{width:94px;height:32px;min-height:32px;margin:0;padding:0 8px;border:1px solid #486e98;border-radius:5px;background:#0a1c35;color:#bddcf7;font-size:10px;box-shadow:inset 0 2px 3px #0006}
#player-profile .profile-results-labels,#player-profile .profile-results>div{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(0,1fr) minmax(0,.8fr);align-items:center;gap:8px}
#player-profile .profile-results-labels{font-size:7px;letter-spacing:1px;font-weight:800;color:#7598bf;margin:12px 10px 6px}
#player-profile .profile-results-labels>span:last-child{text-align:right}
#player-profile .profile-results>div{padding:10px;margin-bottom:5px;border:1px solid #34557c;border-radius:5px;background:linear-gradient(100deg,#193354,#102440);font-size:10px;color:#8eb3d8}
#player-profile .profile-results>div>span:first-child{position:relative;padding-left:23px}
#player-profile .profile-results i{position:absolute;left:0;top:0;font-style:normal;font-size:18px;color:#6696c4}
#player-profile .profile-results i.won{color:#8ed1ff}
#player-profile .profile-results span>b{display:block;color:#d0e7fc;font-size:11px}
#player-profile .profile-results small{display:block;margin-top:3px;color:#6e91b8;font-size:8px}
#player-profile .profile-results>div>b{text-align:right;font-size:13px;font-variant-numeric:tabular-nums}
#player-profile .profile-no-hands{min-height:96px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:6px;text-align:center}
#player-profile .profile-no-hands>span{font-size:25px;color:#5894cb}#player-profile .profile-no-hands>strong{font-size:11px;color:#a6c8e9}#player-profile .profile-no-hands>small{font-size:9px;color:#6e92ba}
#player-profile .profile-status{grid-column:1/-1;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:12px;min-height:0;padding:20px;text-align:center}
#player-profile .profile-status>span{display:grid;place-items:center;width:60px;height:60px;border:1px solid #5d9bcd;border-radius:50%;background:radial-gradient(ellipse at 35% 15%,#285d95,#0d2748);box-shadow:inset 0 1px 0 #a3daff55,0 4px 14px #0006;color:#9fdfff;font-size:39px}
#player-profile .profile-status>h3{font-size:19px;font-weight:850;color:#e7f5ff;margin:0}#player-profile .profile-status>p{font-size:11px;line-height:1.5;color:#7f9fc4;margin:0;letter-spacing:0}
body.playing #game #player-profile #profile-retry{height:38px;min-height:38px;margin:0;padding:0 22px;border:1px solid #5bd2ff;border-radius:5px;background:var(--wpas-button-blue);box-shadow:inset 0 1px 0 #d4f7ff88,0 2px 4px #0005;color:#fff;font-size:11px;font-weight:800;letter-spacing:0}
body.playing #game #player-profile .profile-footer{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:9px 14px;min-height:58px;box-sizing:border-box;flex:none;border-top:1px solid #526782;background:var(--wpas-chrome);box-shadow:0 -1px 0 #c4d6ed22}
body.playing #game #player-profile #profile-turn-warning{position:static;display:block;min-width:0;flex:1;white-space:normal;margin:0;padding:0;border:0;border-radius:0;background:none;color:#91a4be;font-size:10px;font-weight:650;line-height:1.4;letter-spacing:0;text-align:left}
body.playing #game #player-profile #profile-resume{flex:none;min-width:150px;height:40px;min-height:40px;margin:0;padding:0 20px;border:1px solid #5bd5ff;border-radius:6px;background:var(--wpas-button-blue);box-shadow:inset 0 1px 0 #d4f7ff88,inset 0 -2px 0 #002354,0 2px 4px #0005;color:#fff;font-size:12px;font-weight:850;letter-spacing:0;text-transform:none}
body.playing #game #player-profile.profile-your-turn #profile-turn-warning{color:#b8ff7c;font-weight:850}
body.playing #game #player-profile.profile-your-turn #profile-resume{background:var(--wpas-button-green);border-color:#b2e884;color:#123e09}
body.playing #game #player-profile button:focus-visible,body.playing #game #player-profile select:focus-visible{outline:2px solid #c0efff;outline-offset:-3px}
@media(orientation:landscape) and (max-height:620px){
body.playing #game #player-profile{width:min(760px,calc(100vw - env(safe-area-inset-left,0px) - env(safe-area-inset-right,0px) - 28px));border-radius:9px}
body.playing #game #player-profile .profile-chrome{min-height:48px;padding:6px 12px;gap:9px}#player-profile .profile-chrome-icon{width:30px;height:30px;font-size:21px}body.playing #game #player-profile #profile-dialog-title{font-size:20px}body.playing #game #player-profile #close-player-profile{width:32px;height:32px;min-height:32px}
#player-profile .profile-roster{padding:5px 10px;gap:6px}body.playing #game #player-profile #profile-players button{min-height:48px;flex-basis:56px;padding:3px;gap:3px}#player-profile .profile-roster-avatar{width:28px;height:28px}#player-profile .profile-roster-name{font-size:7px}
body.playing #game #player-profile #profile-content{grid-template-columns:155px minmax(0,1fr);gap:10px;padding:10px}#player-profile .profile-player-card{padding:10px}#player-profile .profile-avatar{width:54px;height:54px;min-height:54px}#player-profile .profile-player-kind{margin-top:8px;font-size:6px}body.playing #game #player-profile #profile-player-name{font-size:18px;margin:4px 0}#player-profile .profile-player-card>p{font-size:8px;margin-bottom:7px}#player-profile .profile-level-chip{font-size:6px;padding:4px 8px}#player-profile .profile-milestones{margin:10px 0;gap:4px}#player-profile .profile-milestones>span{padding:4px;font-size:8px}
body.playing #game #player-profile .profile-data-tabs>button{height:30px;min-height:30px;font-size:10px}#player-profile .profile-data-scroll{padding-top:8px}#player-profile .profile-stats{gap:6px}#player-profile .profile-stat{min-height:56px;padding:8px 4px;gap:4px}#player-profile .profile-stat>b{font-size:21px}#player-profile .profile-stat>span{font-size:7px}#player-profile .profile-trend-card{padding:10px;margin-top:8px}#player-profile .profile-trend{height:80px}
body.playing #game #player-profile .profile-footer{min-height:50px;padding:6px 12px}body.playing #game #player-profile #profile-resume{height:36px;min-height:36px;font-size:11px}body.playing #game #player-profile #profile-turn-warning{font-size:9px}
}
@media(orientation:portrait) and (max-width:700px){
body.playing #game #player-profile{border-radius:10px}
body.playing #game #player-profile .profile-chrome{padding:10px 12px;min-height:58px}body.playing #game #player-profile #profile-dialog-title{font-size:21px}
#player-profile .profile-roster{padding:7px 8px;gap:5px}body.playing #game #player-profile #profile-players button{flex-basis:56px;min-height:57px}#player-profile .profile-roster-avatar{width:32px;height:32px}
body.playing #game #player-profile #profile-content{display:flex;flex-direction:column;gap:12px;padding:12px}
#player-profile .profile-player-card{display:grid;grid-template-columns:70px minmax(0,1fr);column-gap:12px;row-gap:4px;align-items:center;text-align:left;flex:none;padding:12px;overflow:visible}
#player-profile .profile-avatar{grid-column:1;grid-row:1/5;width:68px;height:68px;min-height:68px}#player-profile .profile-player-kind{grid-column:2;grid-row:1;margin:0;font-size:7px}body.playing #game #player-profile #profile-player-name{grid-column:2;grid-row:2;font-size:23px;margin:0}#player-profile .profile-player-card>p{grid-column:2;grid-row:3;font-size:9px;margin:0}#player-profile .profile-level-chip{grid-column:2;grid-row:4;justify-self:start;font-size:7px;padding:4px 7px;margin-top:2px}
#player-profile .profile-milestones{grid-column:1/-1;display:flex;flex-direction:row;flex-wrap:wrap;gap:5px;margin:8px 0 0}#player-profile .profile-milestones>small{display:none}#player-profile .profile-milestones>span{font-size:8px;padding:4px 7px}#player-profile .profile-record-scope{display:none}
#player-profile .profile-data{flex:1;min-height:0}#player-profile .profile-stats{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}#player-profile .profile-stat{min-height:62px}#player-profile .profile-stat>b{font-size:25px}#player-profile .profile-stat>span{font-size:9px}#player-profile .profile-trend{height:100px}#player-profile .profile-data-scroll{padding-top:10px}
body.playing #game #player-profile .profile-footer{padding:9px 12px;gap:8px}body.playing #game #player-profile #profile-resume{min-width:140px;font-size:11px;padding:0 12px}#player-profile .profile-results>div{font-size:9px;padding:9px 8px}
}
@media(orientation:landscape) and (max-height:500px){
body.playing #game #player-profile{top:calc(env(safe-area-inset-top,0px) + 46px)}
#player-profile .profile-record-note{display:none}
#player-profile .profile-player-card{display:grid;grid-template-columns:44px minmax(0,1fr);align-content:start;align-items:center;text-align:left;column-gap:7px;row-gap:4px;padding:8px}
#player-profile .profile-avatar{grid-column:1;grid-row:1/4;width:44px;height:44px;min-height:44px;padding:2px}
#player-profile .profile-player-kind{grid-column:2;grid-row:1;margin:0;font-size:6px;letter-spacing:.7px}
body.playing #game #player-profile #profile-player-name{grid-column:2;grid-row:2;font-size:15px;margin:0}
#player-profile .profile-player-card>p{grid-column:2;grid-row:3;font-size:7px;line-height:1.3;margin:0}
#player-profile .profile-level-chip{grid-column:1/-1;justify-self:start;margin-top:3px}
#player-profile .profile-milestones{grid-column:1/-1;margin:8px 0 0}
#player-profile .profile-record-scope{grid-column:1/-1;margin-top:8px}
}
@media(orientation:landscape) and (max-height:500px){
body.playing #game #player-profile .profile-chrome{min-height:44px}
#player-profile .profile-roster{padding-top:4px;padding-bottom:4px}
body.playing #game #player-profile #profile-players button{min-height:40px;gap:2px;padding:2px 3px}
#player-profile .profile-roster-avatar{width:26px;height:26px}
#player-profile .profile-data-scroll{padding-top:2px;padding-bottom:0}
body.playing #game #player-profile .profile-footer{min-height:44px;padding-top:4px;padding-bottom:4px}
}
@media(orientation:portrait) and (max-width:700px){
#player-profile .profile-stats{grid-template-columns:repeat(4,minmax(0,1fr));gap:6px}
#player-profile .profile-stat{min-height:70px;padding:9px 4px;gap:6px}
#player-profile .profile-stat>b{font-size:20px}
#player-profile .profile-stat:last-child>b{font-size:17px}
#player-profile .profile-stat>span{font-size:8px}
#player-profile .profile-trend{height:80px}
}

/* All-Star arcade finish: sculpted chrome, electric frames and state-led light. */
:root{--wpas-button-blue:linear-gradient(180deg,#d4ffff 0,#55eaff 3%,#11b9f9 8%,#087de2 25%,#0758b7 51%,#063b8c 53%,#092c6e 94%,#146ccb);--wpas-button-green:linear-gradient(180deg,#f5ffd3 0,#c8ff7a 3%,#8af02d 9%,#5cd415 36%,#37aa07 51%,#208803 54%,#126202 94%,#5bd420);--wpas-button-purple:linear-gradient(180deg,#f0d3ff 0,#c49bff 3%,#a16aea 9%,#8246d4 35%,#59269e 52%,#401976 55%,#28104d 94%,#7645b5)}
body.lobby-screen,body.playing{background:radial-gradient(ellipse at 52% 35%,#124993 0,#0c285d 40%,#070f28 70%,#030711 100%)}
body.lobby-screen>header{background:linear-gradient(#a7a4bd 0,#555368 2px,#302d43 8px,#151420 47%,#080a12 100%);border-bottom-color:#8abbe6;box-shadow:inset 0 1px 0 #fff5,0 2px 0 #040610,0 5px 17px #0009}
body.lobby-screen #lobby-wallet{border-color:#9fbae0;background:radial-gradient(circle at 16px 50%,#f4ecb4 0 4px,#edc65d 5px 7px,#4d4080 8px 10px,transparent 11px),linear-gradient(#040916,#162b4c);box-shadow:inset 0 2px 7px #000b,0 1px 0 #d7eaff66,0 0 12px #5a7bdd35}
/* A dimensional identity stage, retaining the measured landscape card edge. */
.lobby-player{isolation:isolate;background:radial-gradient(ellipse at 28% 24%,#2583df 0,#124da6 27%,#15235b 56%,#1c1242 82%,#070d25 100%);box-shadow:inset 0 1px 0 #c1edff88,inset -10px 0 30px #03092699}
.lobby-player:before{content:"";position:absolute;inset:0;z-index:-1;pointer-events:none;background:repeating-linear-gradient(133deg,transparent 0 25px,#68aaff08 26px 27px),radial-gradient(ellipse at 18% 12%,#80ecff20,transparent 50%)}
.lobby-player:after{width:2px;background:linear-gradient(#e0ffff,#33c9ff 30%,#b77bff 75%,#4338b4);box-shadow:0 0 13px #268dff}
#lobby-player-avatar{position:relative;background:linear-gradient(140deg,#fffde7,#a5f1ff 18%,#25519a 42%,#111c47 56%,#84cfff 82%,#f0f9ff);box-shadow:0 5px 0 #020716,0 9px 18px #0008,0 0 26px #33bdff66}
#lobby-player-name{font-weight:950;text-shadow:0 2px 0 #09215b,0 4px 8px #0007}
#lobby-player-level{width:fit-content;padding:4px 9px;border:1px solid #d0b86e;border-radius:4px;background:linear-gradient(#5b4d75,#29234d);color:#fff2b6;font-weight:850;letter-spacing:1.3px;box-shadow:inset 0 1px 0 #ffedaf44,0 2px 4px #0006;margin-bottom:10px}
.lobby-player-progress{display:block;width:min(190px,100%);height:7px;padding:1px;box-sizing:border-box;background:#030c2a;border:1px solid #4564b1;border-radius:5px;box-shadow:inset 0 2px 4px #0009;margin:0 0 18px}
.lobby-player-progress i{display:block;height:100%;width:0;border-radius:3px;background:linear-gradient(#efffb2,#9ced27 50%,#46a900);box-shadow:0 0 7px #96ff4666;transition:width .3s}
.player-profile-cta{position:relative;overflow:hidden;border-color:#b5a4ff;background:var(--wpas-button-purple);color:#fff;box-shadow:inset 0 1px 0 #fff8,inset 0 -2px 0 #1c0649,0 4px 8px #0006;font-weight:850}
.player-tour-note b{font-size:15px;font-style:italic;letter-spacing:1px;color:#edf8ff;text-shadow:0 2px 0 #0b1b4d}.player-tour-note{color:#b1d0f3}
/* Art stays persistent; frames and the action shelf carry the visual energy. */
.region-card{background:linear-gradient(133deg,#d3faff 0,#4bdaff 14%,#076bce 37%,#5533a0 62%,#9a6cdb 85%,#36c6fd);filter:drop-shadow(0 5px 8px #02061999)}
.region-card:after{background:linear-gradient(#020b3038,transparent 30%,#061b4c36 45%,#061941dc 78%,#07102bf5 100%)}
.region-art{inset:3px}.region-art img{filter:saturate(1.12) contrast(1.04)}
.region-body{background:linear-gradient(175deg,transparent 0,#0b245a9c 42%,#071b43e8 73%,#09102b 100%)}
.region-top span{background:linear-gradient(#253756ed,#070e22ed);border:1px solid #abc7ec8c;box-shadow:inset 0 1px 0 #edfbff55,0 3px 6px #0008;color:#f7fbff;font-weight:850;letter-spacing:1px}
.region-top span:last-child{color:#fff0ad;border-color:#cbb87599}
.region-series{display:flex;align-items:center;gap:6px;font-size:8px;line-height:14px;font-weight:850;letter-spacing:2px;color:#c5ebff;margin-bottom:4px;text-shadow:0 1px 4px #000}
.region-series svg{width:14px;height:14px;fill:#e7c56944;stroke:#fff0a3;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
body.lobby-screen .region-card h2{font-weight:950!important;color:#fff;text-shadow:0 3px 0 #07142e,0 5px 12px #000b;letter-spacing:-.8px!important}
.region-stats{color:#c5defa}.region-stats b{color:white;text-shadow:0 1px 3px #0008}
.region-stats>span:last-child b{color:#dceeff}
.region-card[data-status=running] .region-stats>span:last-child b{color:#beff67;display:inline-flex;align-items:center;gap:6px}
.region-card[data-status=running] .region-stats>span:last-child b:before{content:"";width:5px;height:5px;border-radius:50%;background:#b4ff4f;box-shadow:0 0 6px #8dff24}
.region-capacity{height:5px;background:#030b23;border:1px solid #365a95;box-shadow:0 1px 0 #97c3fb33,inset 0 2px 3px #000b}
.region-capacity i{background:linear-gradient(90deg,#168ce9,#62e8ff);box-shadow:inset 0 1px 0 #e1ffffaa,0 0 9px #24d6ff88}
.region-actions button:not(:disabled):not(.withdraw){position:relative;overflow:hidden;background:var(--wpas-button-green);border-color:#cbff94;color:#103801;text-shadow:0 1px 0 #d8ff9b99;box-shadow:inset 0 1px 0 #fffbd8,inset 0 -2px 0 #0b4400,0 4px 7px #0008;font-weight:950;font-style:italic;letter-spacing:.3px}
.region-actions button:disabled{background:linear-gradient(#415578,#273a5a 52%,#152542);border-color:#8ea5d1;color:#d0def2;box-shadow:inset 0 1px 0 #d3e6ff77,inset 0 -2px 0 #06122d,0 3px 5px #0006}
.region-actions button.withdraw{background:var(--wpas-button-purple);border-color:#be9fea;color:#f3e7ff;box-shadow:inset 0 1px 0 #e0bdff88,inset 0 -2px 0 #26083f,0 3px 5px #0006}
.region-winner{color:#dfc879;font-weight:650}
/* Sculpted navigation plinth, with distinct destinations and a clear selected face. */
body.lobby-screen>.main-nav,body.playing #game>.controls,body.playing #game>.controls.waiting{background:linear-gradient(#a5a1b9 0,#5e5972 2px,#332f46 7px,#1a1b2c 27%,#0b1021 65%,#050915);border-top-color:#b4d6f7;box-shadow:inset 0 1px 0 #fff6,0 -2px 0 #02050e,0 -7px 19px #02051c88}
body.lobby-screen>.main-nav>button{background:linear-gradient(#9fb4da 0,#536a96 5%,#2b4777 20%,#172d58 50%,#102040 53%,#142a52 95%,#456394);border-top-color:#dce8ff;border-bottom-color:#526da4;box-shadow:inset 0 1px 0 #fff7,inset 0 -2px 0 #040a1b,0 4px 7px #0008;color:#e5f3ff;font-weight:850}
body.lobby-screen>.main-nav>button[data-view=practice-room]:not(.selected)>span{color:#a8fb72;filter:drop-shadow(0 1px 0 #123d02) drop-shadow(0 0 5px #79d54266)}
body.lobby-screen>.main-nav>button[data-view=private-room]:not(.selected)>span{color:#d9adff;filter:drop-shadow(0 1px 0 #41165c) drop-shadow(0 0 5px #b075e866)}
body.lobby-screen>.main-nav>button[data-view=ranks]:not(.selected)>span{color:#ffe59b;filter:drop-shadow(0 1px 0 #5c3b07) drop-shadow(0 0 5px #ffca5466)}
body.lobby-screen>.main-nav>button.selected{background:var(--wpas-button-blue)!important;box-shadow:inset 0 1px 0 #fff,inset 0 -2px 0 #002259,0 0 10px #18c9ff66;filter:none}
/* The same saturated surfaces continue through rooms, tournament hubs and records. */
.room-intro{background:radial-gradient(ellipse at 45% 48%,#126cd5aa,transparent 62%),linear-gradient(130deg,#113b89,#10183f 65%,#173a82);box-shadow:inset 0 2px 0 #72d9ff99,inset 0 -2px 0 #2b68c1,0 0 15px #126dda33}
#private-room .room-intro{background:radial-gradient(ellipse at 45% 48%,#7e3cca99,transparent 62%),linear-gradient(130deg,#3b237a,#14143b 65%,#292166)}
.play-room .room-setup .entry,.owned-tables,.region-registration,.profile-card{border-color:#688fd2;box-shadow:inset 0 1px 0 #c8e6ff66,inset 0 0 0 3px #34468833,0 7px 17px #0006}
body.lobby-screen .play-room .entry>button#practice,body.lobby-screen .play-room .entry>button#create{background:var(--wpas-button-green)!important;border-color:#ceff91!important;color:#123b00!important;text-shadow:0 1px 0 #dcffa3;box-shadow:inset 0 1px 0 #ffffcb,inset 0 -2px 0 #124900,0 5px 8px #0007}
.opponent-counter output{color:#f4ffde;text-shadow:0 3px 0 #092d28,0 0 15px #80ff5e44}.opponent-counter button{background:var(--wpas-button-blue);border-color:#75e3ff;box-shadow:inset 0 1px 0 #fff9,0 3px 5px #0007}
.region-detail-tabs button[aria-pressed=true],body.playing #game #player-profile .profile-data-tabs>button[aria-selected=true]{background:var(--wpas-button-blue);color:#fff;box-shadow:inset 0 1px 0 #d4ffff99,0 0 12px #19aaff33}
.region-detail-primary button:not(:disabled):not([data-detail-withdraw]){background:var(--wpas-button-green);color:#113600;border-color:#c8ff9a;text-shadow:0 1px 0 #e1ffab88}
.rank-emblem,.honours-trophy{filter:drop-shadow(0 4px 0 #26104b) drop-shadow(0 0 20px #ad6aff66)}
.player-license .player-xp-track i{background:linear-gradient(#d6ff85,#89df25 55%,#3f8d08);box-shadow:0 0 7px #9af45955}
/* Table lighting supports the felt and real active-seat state, without moving the table. */
body.playing #game{background:radial-gradient(ellipse at 50% 40%,#174a9a 0,#102b66 46%,#080f2a 77%,#040918 100%)}
body.playing #seats .portrait{border-color:#85bde1;box-shadow:inset 0 1px 0 #f3fcff99,0 4px 0 #02091b,0 6px 12px #0009,0 0 10px #1c70cb33}
body.playing #seats .seat.active .portrait{box-shadow:inset 0 1px 0 #f0fffb99,0 4px 0 #02091b,0 0 19px #57f5b466}
body.playing #seats .seat.active .identity{background:linear-gradient(#254e72,#0b2e4d);border-color:#5fc8cd;box-shadow:inset 0 1px 0 #d0ffff55,0 3px 7px #0007,0 0 11px #3edbbb22}
body.playing #seats .identity{background:linear-gradient(#213c68,#0b1c3c);border-color:#6b8fb899;box-shadow:inset 0 1px 0 #c8e7ff44,inset 0 -1px 0 #030b1f,0 4px 7px #0008}
body.playing #pot{background:linear-gradient(#679aca 0,#2e619c 6%,#194781 28%,#102b59 55%,#091a3d 100%);border-color:#8db5e6;box-shadow:inset 0 1px 0 #e7fbff88,inset 0 -2px 0 #040c25,0 5px 12px #0008,0 0 16px #227cd333}
body.playing #game #table-tools,body.playing #game #player-profile{border-color:#8bb0ed;box-shadow:inset 0 1px 0 #effaff99,inset 0 0 0 3px #446ca333,0 18px 65px #000b,0 0 24px #1b62b633;background:linear-gradient(140deg,#213e7c,#102449 45%,#0a122b)}
body.playing #game #table-tools .menu-heading,body.playing #game #player-profile .profile-chrome{background:linear-gradient(#9b94b2 0,#4d4764 3px,#24243d 25%,#0c142d);border-bottom-color:#688ac6}
body.playing #game>.controls #actions>button#bet{background:var(--wpas-button-green)!important}
body.playing #game>.controls #actions>button[data-action=fold]{background:var(--wpas-button-purple)!important}
body.playing #game>.controls #actions>button#call{background:var(--wpas-button-blue)!important}
body.playing #next-move button{background:linear-gradient(#6286b8 0,#2d578b 7%,#163663 55%,#0c2043);border-color:#789fce;box-shadow:inset 0 1px 0 #d3edff88,inset 0 -2px 0 #050f26,0 3px 7px #0007}
body.playing #next-move button[aria-pressed=true]{background:var(--wpas-button-blue);border-color:#c1faff;box-shadow:inset 0 1px 0 #fff9,0 0 13px #1bb8ff66}
/* The live-status indicator follows the real event state. */
@keyframes wpas-live-light{50%{opacity:.45;box-shadow:0 0 3px #8dff24}}
@media(prefers-reduced-motion:no-preference){
 .region-card[data-status=running] .region-stats>span:last-child b:before{animation:wpas-live-light 2.6s ease-in-out infinite}
}
@media(orientation:portrait){
 .lobby-player>button{grid-template-rows:auto auto auto auto}
 #lobby-player-avatar{grid-row:1/5}
 #lobby-player-level{grid-row:2;margin:2px 0 4px;padding:2px 7px;font-size:8px}
 .lobby-player-progress{grid-column:2;grid-row:3;width:140px;max-width:100%;height:5px;margin:0 0 6px}
 .player-profile-cta{grid-row:4;padding-top:6px;padding-bottom:6px}
 .region-series{font-size:7px;letter-spacing:1.5px;line-height:12px}.region-series svg{width:12px;height:12px}
 .region-card{border-color:#73c6f0;box-shadow:inset 0 1px 0 #c9f6ff99,0 4px 8px #0007}
}
@media(orientation:landscape) and (max-height:500px){
 #lobby-player-level{margin-bottom:7px}
 .lobby-player-progress{margin-bottom:10px}
 .region-series{font-size:6px;line-height:10px;margin-bottom:3px}.region-series svg{width:10px;height:10px}
 .player-tour-note{margin-top:18px}
}
@media(prefers-reduced-motion:reduce){.lobby-player-progress i{transition:none}}
@media(orientation:landscape){
 .lobby-player{flex-basis:clamp(210px,25vw,340px)}
 .region-card{flex-basis:clamp(295px,27vw,390px)}
 body.lobby-screen .region-actions button:not(:disabled):not(.withdraw){font-size:clamp(18px,2vw,25px)}
 body.lobby-screen .region-actions:has(.withdraw) button{font-size:13px}
 body.lobby-screen>.main-nav>button{font-size:14px}
}
@media(orientation:landscape) and (max-height:500px){body.lobby-screen>.main-nav>button{font-size:11px}}
@media(orientation:portrait){body.lobby-screen .region-actions button:not(:disabled):not(.withdraw){font-size:20px}}
@keyframes wpas-count-arrival{from{color:#b5f8ff;text-shadow:0 0 10px #53d7ff}to{color:#fff;text-shadow:0 1px 3px #0008}}
@media(prefers-reduced-motion:no-preference){.region-stats>span:first-child b{animation:wpas-count-arrival .35s ease-out}}
/* The passkey entry is the same club, before a player takes their seat. */
body.player-entry{background:radial-gradient(ellipse at 35% 28%,#195bb8 0,#192d72 33%,#0e133b 65%,#040817 100%);color:#f0f8ff}
body.player-entry main{margin:16px 0;border:1px solid #738fd1;border-radius:14px;background:linear-gradient(140deg,#244f8f99,#111d42e8 50%,#0a1028f5);box-shadow:inset 0 1px 0 #cbecff88,inset 0 0 0 3px #4866a333,0 18px 50px #0007}
body.player-entry h1{font-weight:950;text-shadow:0 3px 0 #06132c;color:#fff}
body.player-entry p,body.player-entry small{color:#bbd2f1}
body.player-entry label{color:#d7ebff;font-weight:800;letter-spacing:.5px}
body.player-entry input{border-color:#6385bb;background:linear-gradient(#06122b,#112b50);box-shadow:inset 0 2px 7px #0008;color:#f4fbff}
body.player-entry button{background:var(--wpas-button-green);border:1px solid #d2ff9b;color:#113b00;box-shadow:inset 0 1px 0 #fffbd1,inset 0 -2px 0 #154b00,0 4px 8px #0006;font-weight:850}
body.player-entry button.secondary{background:var(--wpas-button-blue);border-color:#80e7ff;color:#fff;box-shadow:inset 0 1px 0 #fff9,inset 0 -2px 0 #03285b,0 4px 8px #0006}
body.player-entry #message{color:#bcf8a2}
/* Empty room inventories should not push the primary play control below the deck. */
.owned-tables:has(.owned-empty){flex:0 0 auto;min-height:0}

/* The menu is part of the game stage; the live header and action dock stay put. */
body.playing #game #table-tools{inset:calc(var(--game-header-height,60px) + env(safe-area-inset-top,0px)) 0 calc(var(--dock-height,72px) + env(safe-area-inset-bottom,0px));width:100%;height:auto;max-width:none;max-height:none;border:0;border-top:1px solid #6384ba;border-bottom:1px solid #6384ba;border-radius:0;box-shadow:inset 0 1px 0 #d9efff44;background:radial-gradient(ellipse at 80% 0,#234d9844,transparent 65%),linear-gradient(125deg,#112a51,#09172e 65%,#070d20);z-index:50;grid-template-columns:clamp(168px,18vw,240px) minmax(0,1fr);grid-template-rows:70px minmax(0,1fr) 68px;letter-spacing:0}
body.playing #game #table-tools[open]{display:grid}
body.playing #game #table-tools .menu-heading{grid-column:1/-1;grid-row:1;min-height:0;padding:10px max(22px,calc(env(safe-area-inset-right,0px) + 12px)) 10px max(22px,calc(env(safe-area-inset-left,0px) + 12px));background:linear-gradient(100deg,#18345a,#111c35 60%,#0b1328);box-shadow:inset 0 2px 0 #b7d5ff22;border-bottom:1px solid #476794}
body.playing #game #table-tools h2{font-size:27px;margin-top:3px}
body.playing #game #table-tools .menu-heading small{font-size:11px;color:#a2c8ef}
body.playing #game #table-tools #close-table-menu{width:44px;height:44px;min-height:44px}
body.playing #game #table-tools .menu-tab-bar{grid-column:1;grid-row:2;display:flex;flex-direction:column;gap:12px;align-items:stretch;padding:24px 14px 12px max(14px,calc(env(safe-area-inset-left,0px) + 10px));background:linear-gradient(110deg,#101e3b,#08152c);border:0;border-right:1px solid #34537e}
body.playing #game #table-tools .menu-tab-bar>button{height:56px;min-height:56px;justify-content:flex-start;padding:0 16px;font-size:15px;gap:12px;border:1px solid #496a96;border-radius:5px;clip-path:polygon(7px 0,100% 0,calc(100% - 7px) 100%,0 100%)}
body.playing #game #table-tools .menu-tab-bar>button[aria-selected=true]{box-shadow:inset 0 1px 0 #d2f8ff99,inset 3px 0 0 #4ee3ff,0 0 15px #1a8fff33}
body.playing #game #table-tools .table-menu-content{grid-column:2;grid-row:2;min-width:0;padding:24px max(24px,calc(env(safe-area-inset-right,0px) + 12px)) 18px 24px;overflow:auto}
body.playing #game #table-tools #table-switcher{gap:0}
body.playing #game #table-tools .menu-list-heading{margin-bottom:16px}
body.playing #game #table-tools .menu-list-heading>span:first-child{font-size:11px;letter-spacing:1.5px}
body.playing #game #table-tools #wallet{font-size:12px}body.playing #game #table-tools #wallet b{font-size:20px}
body.playing #game #table-tools #table-tabs{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;align-items:start;margin-bottom:18px;overflow-y:auto;padding:2px 3px 4px 1px}
body.playing #game #table-tools .table-tab{height:86px;min-height:86px;padding:14px;gap:12px;box-sizing:border-box}
body.playing #game #table-tools .menu-table-copy>b{font-size:15px}
body.playing #game #table-tools .menu-table-copy>span{font-size:11px;letter-spacing:.3px}
body.playing #game #table-tools .table-tab>small{font-size:9px;max-width:74px}
body.playing #game #table-tools .menu-table-actions{gap:12px}
body.playing #game #table-tools .menu-table-actions>button,body.playing #game #table-tools .menu-buttons>button{height:50px;min-height:50px;font-size:14px}
body.playing #game #table-tools .menu-settings-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}
body.playing #game #table-tools .menu-setting{min-height:100px;gap:14px;padding:18px;flex-wrap:nowrap;background:linear-gradient(120deg,#23457299,#102441);border-color:#5278ac}
body.playing #game #table-tools .menu-setting strong{font-size:16px}
body.playing #game #table-tools .menu-setting small{font-size:12px;color:#a6bddb;line-height:1.45}
body.playing #game #table-tools button.menu-toggle{width:80px;height:44px;min-height:44px;padding-left:28px}
body.playing #game #table-tools button.menu-toggle:before{top:10px;height:22px;width:17px}
body.playing #game #table-tools button.menu-toggle:after{font-size:12px}
body.playing #game #table-tools .menu-permission-note{font-size:12px;margin:18px 0 0;color:#91afd2}
body.playing #game #table-tools .menu-footer{grid-column:1/-1;grid-row:3;display:flex;align-items:center;gap:20px;padding:10px max(24px,calc(env(safe-area-inset-right,0px) + 12px)) 10px max(22px,calc(env(safe-area-inset-left,0px) + 12px));border-top:1px solid #4d6b96;background:linear-gradient(#192a47,#0b162b);box-shadow:inset 0 1px 0 #a2c8ff22}
body.playing #game #table-tools #menu-turn-status{flex:1;font-size:12px;text-align:left;margin:0;color:#a6c3e4}
body.playing #game #table-tools .menu-footer>div{width:min(520px,65%);gap:12px;grid-template-columns:1fr 1.5fr}
body.playing #game #table-tools .menu-footer button{height:46px;min-height:46px;font-size:14px}
body.playing #game #table-tools .menu-seat-card{padding:18px;max-width:620px}
body.playing #game #table-tools #menu-seat-note{font-size:13px;max-width:650px}
body.playing #game #table-tools #practice-menu{margin-top:20px;padding-top:18px}
@media(orientation:landscape) and (max-width:1000px){
 body.playing #game #table-tools{grid-template-columns:158px minmax(0,1fr);grid-template-rows:58px minmax(0,1fr) 62px}
 body.playing #game #table-tools .menu-heading{padding-top:7px;padding-bottom:7px}body.playing #game #table-tools h2{font-size:23px}
 body.playing #game #table-tools .menu-tab-bar{padding-top:14px;gap:10px}body.playing #game #table-tools .menu-tab-bar>button{height:46px;min-height:46px;font-size:13px;padding-left:12px;gap:8px}
 body.playing #game #table-tools .table-menu-content{padding:14px 18px}body.playing #game #table-tools .table-tab{height:76px;min-height:76px;padding:10px;gap:8px}body.playing #game #table-tools .menu-table-copy>b{font-size:12px}body.playing #game #table-tools .menu-table-copy>span{font-size:9px}
 body.playing #game #table-tools .menu-settings-grid{gap:10px}body.playing #game #table-tools .menu-setting{min-height:82px;padding:12px;gap:8px}body.playing #game #table-tools .menu-setting-icon{display:none}body.playing #game #table-tools .menu-setting strong{font-size:13px}body.playing #game #table-tools .menu-setting small{font-size:10px}
 body.playing #game #table-tools .menu-footer{padding-top:7px;padding-bottom:7px}body.playing #game #table-tools .menu-table-actions>button{height:44px;min-height:44px;font-size:12px}
}
@media(orientation:portrait){
 body.playing #game #table-tools{grid-template-columns:minmax(0,1fr);grid-template-rows:72px 56px minmax(0,1fr) 68px}
 body.playing #game #table-tools .menu-heading{padding:12px max(14px,calc(env(safe-area-inset-right,0px) + 10px)) 12px max(14px,calc(env(safe-area-inset-left,0px) + 10px))}body.playing #game #table-tools h2{font-size:24px}
 body.playing #game #table-tools .menu-tab-bar{grid-row:2;grid-column:1;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:6px;padding:6px 12px;border-right:0;border-bottom:1px solid #42628f}
 body.playing #game #table-tools .menu-tab-bar>button{height:44px;min-height:44px;justify-content:center;padding:0 6px;font-size:13px;gap:6px;clip-path:none}
 body.playing #game #table-tools .table-menu-content{grid-column:1;grid-row:3;padding:18px max(14px,calc(env(safe-area-inset-right,0px) + 10px)) 16px max(14px,calc(env(safe-area-inset-left,0px) + 10px))}
 body.playing #game #table-tools #table-tabs{grid-template-columns:minmax(0,1fr);gap:12px}body.playing #game #table-tools .table-tab{height:86px;min-height:86px;padding:14px}body.playing #game #table-tools .menu-table-copy>b{font-size:14px}body.playing #game #table-tools .table-tab>small{font-size:9px}
 body.playing #game #table-tools .menu-settings-grid{grid-template-columns:minmax(0,1fr);gap:12px}body.playing #game #table-tools .menu-setting{min-height:86px;padding:14px;gap:12px}body.playing #game #table-tools .menu-setting strong{font-size:15px}body.playing #game #table-tools .menu-setting small{font-size:11px}
 body.playing #game #table-tools .menu-setting-icon{width:24px}body.playing #game #table-tools .menu-permission-note{font-size:11px}
 body.playing #game #table-tools .menu-footer{grid-row:4;padding:10px 12px;gap:8px}body.playing #game #table-tools #menu-turn-status{font-size:10px;max-width:85px}body.playing #game #table-tools .menu-footer>div{flex:1;min-width:0;width:auto;gap:6px;grid-template-columns:1fr 1.4fr}body.playing #game #table-tools .menu-footer button{font-size:12px}
}
body.playing #game:has(#table-tools[open])>.arena{visibility:hidden}
@media(orientation:landscape) and (max-height:440px){
 body.playing #game #table-tools{grid-template-rows:54px minmax(0,1fr) 56px}
 body.playing #game #table-tools .menu-tab-bar{padding-top:10px;padding-bottom:10px;gap:8px;overflow-y:auto}
 body.playing #game #table-tools .menu-tab-bar>button{height:44px;min-height:44px}
 body.playing #game #table-tools .table-menu-content{padding:12px 18px}
 body.playing #game #table-tools .menu-setting{min-height:72px;padding:10px}
 body.playing #game #table-tools .menu-permission-note{font-size:10px;margin-top:12px}
 body.playing #game #table-tools .menu-footer button{height:44px;min-height:44px}
 body.playing #game #table-tools .menu-footer{padding-top:5px;padding-bottom:5px}
}
/* On phones/tablets, one menu owns the screen until it is closed. */
@media(max-width:700px), (max-width:1000px) and (max-height:620px), (pointer:coarse){
 body.playing #game #table-tools{inset:0;width:100%;height:100dvh;border:0;border-radius:0;grid-template-rows:calc(70px + env(safe-area-inset-top,0px)) minmax(0,1fr) calc(68px + env(safe-area-inset-bottom,0px))}
 body.playing #game #table-tools .menu-heading{padding-top:calc(10px + env(safe-area-inset-top,0px))}
 body.playing #game #table-tools .menu-footer{padding-bottom:calc(10px + env(safe-area-inset-bottom,0px))}
 body.playing #game #player-profile{inset:0;width:100%;height:100dvh;max-height:none;border:0;border-radius:0;padding:0}
 body.playing #game #player-profile .profile-chrome{padding-top:calc(10px + env(safe-area-inset-top,0px));min-height:calc(62px + env(safe-area-inset-top,0px));padding-left:max(16px,calc(env(safe-area-inset-left,0px) + 10px));padding-right:max(16px,calc(env(safe-area-inset-right,0px) + 10px))}
 body.playing #game #player-profile .profile-footer{padding-bottom:calc(10px + env(safe-area-inset-bottom,0px));min-height:calc(56px + env(safe-area-inset-bottom,0px))}
 body.playing #game:has(#table-tools[open],#player-profile[open])>.game-header,body.playing #game:has(#table-tools[open],#player-profile[open])>.controls{visibility:hidden}
 body.playing #game:has(#player-profile[open])>.arena{visibility:hidden}
 body.playing #game #player-profile #profile-content{padding-left:max(14px,calc(env(safe-area-inset-left,0px) + 10px));padding-right:max(14px,calc(env(safe-area-inset-right,0px) + 10px))}
}
@media(orientation:portrait) and (max-width:700px), (orientation:portrait) and (pointer:coarse){
 body.playing #game #table-tools{grid-template-rows:calc(72px + env(safe-area-inset-top,0px)) 56px minmax(0,1fr) calc(68px + env(safe-area-inset-bottom,0px))}
 body.playing #game #table-tools .menu-heading{padding-top:calc(12px + env(safe-area-inset-top,0px))}
}
@media(orientation:landscape) and (max-height:440px) and (max-width:1000px), (orientation:landscape) and (max-height:440px) and (pointer:coarse){
 body.playing #game #table-tools{grid-template-rows:calc(54px + env(safe-area-inset-top,0px)) minmax(0,1fr) calc(56px + env(safe-area-inset-bottom,0px))}
 body.playing #game #table-tools .menu-heading{padding-top:calc(7px + env(safe-area-inset-top,0px))}
 body.playing #game #table-tools .menu-footer{padding-bottom:calc(5px + env(safe-area-inset-bottom,0px))}
}

/* Betting actions use the same straight, rounded rectangle in every orientation. */
body.playing #game>.controls #actions>button,body.playing #game>.controls #actions>button#bet{clip-path:none;border-radius:6px!important}

/* Portrait tournaments are compact rows: scenic rail left, controls right. */
@media(orientation:portrait){
 body.lobby-screen .region-card{--portrait-art-width:48%;--portrait-art-cut:25px;box-sizing:border-box;height:180px;min-height:180px;display:block;background:linear-gradient(120deg,#153664,#08162f 72%);border:1px solid #629ccf;border-radius:8px;filter:none;box-shadow:inset 0 1px 0 #d2efff66,0 4px 8px #0006}
 body.lobby-screen .region-card .region-art{inset:1px auto 1px 1px;width:calc(var(--portrait-art-width) + 18px);border-radius:7px 0 0 7px;clip-path:polygon(0 0,100% 0,calc(100% - var(--portrait-art-cut)) 100%,0 100%)!important;overflow:hidden}
 body.lobby-screen .region-art img{object-position:center 38%;transform:none}
 body.lobby-screen .region-art:after{content:"";position:absolute;top:-2px;bottom:-2px;right:calc(var(--portrait-art-cut)/2);width:2px;transform:rotate(8deg);background:linear-gradient(#a7f4ff,#42c8f5 65%,#668bd3);box-shadow:0 0 7px #3cbaff88}
 body.lobby-screen .region-card:after{inset:0;border-radius:7px;clip-path:none!important;background:linear-gradient(0deg,#04122dbc,transparent 65%),linear-gradient(90deg,transparent 32%,#07142c11 48%,#09172d55 60%)}
 body.lobby-screen .region-top{position:absolute;top:12px;left:calc(var(--portrait-art-width) + 18px);right:12px;padding:0;gap:6px;z-index:1}
 body.lobby-screen .region-top span{flex:1;min-width:0;padding:5px 3px;font-size:8px;line-height:12px;letter-spacing:.3px;text-align:center;white-space:nowrap;border-radius:4px}
 body.lobby-screen .region-body{box-sizing:border-box;position:static;display:flex;flex-direction:column;justify-content:flex-end;width:calc(100% - var(--portrait-art-width));height:100%;max-height:none;margin-left:var(--portrait-art-width);padding:46px 12px 12px 18px!important;overflow:visible;background:none}
 body.lobby-screen .region-series{position:absolute;left:12px;top:12px;margin:0;font-size:7px;letter-spacing:1.2px;line-height:14px;color:#e4f6ff}
 body.lobby-screen .region-series svg{width:12px;height:12px}
 body.lobby-screen .region-card h2{position:absolute;left:12px;bottom:12px;width:calc(var(--portrait-art-width) - 22px);margin:0;font-size:clamp(22px,5.6vw,28px);line-height:1.04;letter-spacing:-.7px!important;text-shadow:0 2px 0 #05132d,0 3px 9px #000c}
 body.lobby-screen .region-card .region-open{min-height:44px;white-space:normal;text-align:left;display:block;padding:0}
 body.lobby-screen .region-card .region-open>span{font-size:12px}
 body.lobby-screen .region-stats{gap:6px;font-size:10px;align-items:flex-end}
 body.lobby-screen .region-stats>span:first-child{display:flex;flex-direction:column;gap:2px;white-space:nowrap}
 body.lobby-screen .region-stats b{font-size:17px;line-height:20px}
 body.lobby-screen .region-stats>span:last-child b{font-size:13px;line-height:20px}
 body.lobby-screen .region-stats span span{font-size:8px;line-height:11px;margin-top:2px;white-space:nowrap}
 body.lobby-screen .region-capacity{flex:none;height:4px;min-height:4px;margin:8px 0 10px}
 body.lobby-screen .region-actions{flex:none;margin:0!important;gap:6px}
 body.lobby-screen .region-actions button:not(:disabled):not(.withdraw){font-size:17px}
 body.lobby-screen .region-actions button,body.lobby-screen .region-actions button.withdraw{height:44px;min-height:44px;max-height:44px;padding:0 5px;border-radius:5px}
 body.lobby-screen .region-actions:has(.withdraw) button{font-size:11px!important}
 body.lobby-screen .region-winner{display:block;margin-top:7px;font-size:8px;line-height:11px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
}
@media(orientation:portrait) and (max-width:350px){
 body.lobby-screen .region-card{--portrait-art-width:44%;--portrait-art-cut:24px;height:176px;min-height:176px}
 body.lobby-screen .region-body{padding-left:14px!important;padding-right:10px!important}
 body.lobby-screen .region-top{left:calc(var(--portrait-art-width) + 14px);right:10px;gap:4px}
 body.lobby-screen .region-top span{font-size:7px;letter-spacing:0}
 body.lobby-screen .region-actions:has(.withdraw) button{font-size:10px!important}
}
@media(orientation:portrait) and (min-width:701px){body.lobby-screen .region-card{--portrait-art-cut:28px;height:200px;min-height:200px}}
@media(orientation:portrait){body.lobby-screen .region-actions:has(.withdraw) button{text-transform:none;letter-spacing:0}}

@media(orientation:portrait) and (max-width:350px){body.lobby-screen .region-card h2{font-size:18px}}
@media(orientation:portrait) and (max-width:350px){body.lobby-screen .region-card[data-region-card=antarctica] h2{font-size:16px}}

/* Full-screen destinations own the bottom bar; list-item actions stay local. */
.main-nav:has(.screen-dock:not([hidden]))>button{display:none!important}
body.lobby-screen>.main-nav:has(.screen-dock:not([hidden])){overflow:visible;min-height:0;padding-left:max(12px,calc(env(safe-area-inset-left,0px) + 8px));padding-right:max(12px,calc(env(safe-area-inset-right,0px) + 8px))}
.screen-dock{display:flex;flex:1;justify-content:center;gap:8px;min-width:0;width:100%;max-width:1160px;margin:auto}
.screen-dock>button{flex:0 1 260px;min-width:0;max-width:260px;height:54px;min-height:54px;box-sizing:border-box;margin:0;padding:0 14px;border:1px solid #7cc9f5;border-radius:6px;background:var(--wpas-button-blue)!important;box-shadow:inset 0 1px 0 #edffffaa,inset 0 -2px 0 #001d55,0 3px 5px #0006;color:white!important;font:800 14px/1.2 system-ui;text-transform:none;letter-spacing:0;clip-path:none!important}
.screen-dock>button:first-child{flex:0 1 170px;min-width:65px;background:linear-gradient(#546b8d,#1a2c49)!important;border-color:#7996bb}
.screen-dock>button#practice,.screen-dock>button#create,.screen-dock>button#join,.screen-dock>button#ai-enable,.screen-dock>button[data-detail-enter],.screen-dock>button[data-detail-watch]{background:var(--wpas-button-green)!important;color:#113500!important;border-color:#bcf27d}
.screen-dock>button#ai-stop,.screen-dock>button[data-detail-withdraw]{background:var(--wpas-button-purple)!important;border-color:#c5a0ed}
.screen-dock>button:disabled{background:linear-gradient(#35496b,#172642)!important;border-color:#5e7699;color:#afc3dc!important}
.screen-dock>button[aria-pressed=true]{border-color:#b8ffff;box-shadow:inset 0 1px 0 #fff,inset 0 -3px 0 #68efff,0 0 10px #009eff55}
.play-room .join:not(:has(#join)){grid-template-columns:1fr}
.rank-results-heading{display:flex;justify-content:space-between;padding:12px 16px;color:#9abde6;font-size:10px;font-weight:800;letter-spacing:1.3px}
.rank-result{display:flex;align-items:center;gap:16px;padding:14px 16px;margin-bottom:8px;border:1px solid #446a9e;border-radius:7px;background:linear-gradient(110deg,#204373,#0c1b37);box-shadow:inset 0 1px 0 #9acfff33;color:#e6f5ff}
.rank-result>b{font-size:23px;color:#ffe28c;min-width:30px}.rank-result-avatar{display:block;width:46px;height:46px;border:2px solid #8ed7ff;border-radius:50%;overflow:hidden;flex:none}.rank-result-avatar .avatar-art{width:100%;height:100%;display:block}.rank-result>span:not(.rank-result-avatar){flex:1;min-width:0}.rank-result strong{font-size:16px}.rank-result small{display:block;margin-top:5px;font-size:11px;color:#98b9db}.rank-result>strong{font-size:24px;color:#a1f270}
/* Menu categories place their active controls beside Resume in the same footer. */
body.playing #game #table-tools{grid-template-rows:70px minmax(0,1fr) auto}
body.playing #game #table-tools .menu-footer{min-height:68px;box-sizing:border-box}
body.playing #game #table-tools .menu-footer>div{display:flex;flex-wrap:wrap;width:min(900px,80%);gap:8px}
body.playing #game #table-tools .menu-footer>div>button{flex:1;min-width:100px;width:auto}
body.playing #game #table-tools .menu-footer #menu-invite,body.playing #game #table-tools .menu-footer #new-table,body.playing #game #table-tools .menu-footer #menu-own-profile{background:var(--wpas-button-blue);color:white}
body.playing #game #table-tools .menu-table-actions:empty,body.playing #game #table-tools .menu-buttons:empty{display:none}
@media(orientation:portrait){body.playing #game #table-tools{grid-template-rows:72px 56px minmax(0,1fr) auto}}
@media(max-width:700px), (max-width:1000px) and (max-height:620px), (pointer:coarse){
 body.playing #game #table-tools{grid-template-rows:calc(70px + env(safe-area-inset-top,0px)) minmax(0,1fr) auto}
}
@media(orientation:portrait) and (max-width:700px), (orientation:portrait) and (pointer:coarse){
 body.playing #game #table-tools{grid-template-rows:calc(72px + env(safe-area-inset-top,0px)) 56px minmax(0,1fr) auto}
 body.playing #game #table-tools .menu-footer{display:block;min-height:0}
 body.playing #game #table-tools #menu-turn-status{max-width:none;margin:0 0 8px;text-align:center}
 body.playing #game #table-tools .menu-footer>div{width:100%;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:7px}
 body.playing #game #table-tools .menu-footer>div>button{min-width:0;width:100%}
}
@media(orientation:landscape) and (max-height:440px) and (max-width:1000px), (orientation:landscape) and (max-height:440px) and (pointer:coarse){body.playing #game #table-tools{grid-template-rows:calc(54px + env(safe-area-inset-top,0px)) minmax(0,1fr) auto}}
@media(max-width:700px), (max-height:500px){
 .screen-dock{gap:6px}.screen-dock>button{height:44px;min-height:44px;padding:0 7px;font-size:12px}.screen-dock>button:first-child{flex:0 1 110px}
}
@media(max-width:400px){.screen-dock>button{font-size:10px;padding:0 4px}.screen-dock>button:first-child{flex:0 1 65px}.rank-result{gap:9px;padding:12px}.rank-result strong{font-size:13px}}
@media(orientation:portrait) and (max-width:700px), (orientation:portrait) and (pointer:coarse){body.playing #game #table-tools .menu-footer>div>button:last-child:nth-child(odd){grid-column:1/-1}}

/* Empty community-card positions: clean vector edges and a shallow felt recess. */
body.playing #board .card.blank{
 padding:0;border:1px solid #94e7b34d!important;border-radius:6px;
 background:linear-gradient(145deg,#00412219,#002a1836)!important;
 box-shadow:inset 0 1px 1px #012b1a22,0 1px 0 #77d39218!important;
 filter:none;
}

/* Lobby destinations form one straight segmented control in the shared dock. */
body.lobby-screen>.main-nav{gap:0;padding-top:7px;padding-bottom:calc(7px + env(safe-area-inset-bottom,0px))}
body.lobby-screen>.main-nav>button[data-view]{
 flex:1;max-width:280px;min-width:0;height:54px;min-height:54px;
 clip-path:none!important;transform:none;border:0!important;border-radius:0!important;
 background:linear-gradient(#25354e66,#111c3144)!important;
 box-shadow:inset -1px 0 0 #a8c7f22b;text-shadow:0 1px 2px #0008;
 color:#e6f1ff;filter:none;font-weight:800;
}
body.lobby-screen>.main-nav>button[data-view=lobby]{border-radius:5px 0 0 5px!important;box-shadow:inset 1px 0 0 #a8c7f21a,inset -1px 0 0 #a8c7f22b}
body.lobby-screen>.main-nav>button[data-view=ranks]{border-radius:0 5px 5px 0!important}
body.lobby-screen>.main-nav>button[data-view].selected{
 background:linear-gradient(#21649e,#123d6c 48%,#102e52)!important;
 box-shadow:inset 0 1px 0 #8bceff55,inset 0 -3px 0 #62d9ff,inset -1px 0 0 #a8c7f22b;
 color:#fff;filter:none;
}
body.lobby-screen>.main-nav>button[data-view]>span,
body.lobby-screen>.main-nav>button[data-view]>span>svg{color:inherit!important;filter:none!important}
body.lobby-screen>.main-nav>button[data-view]>span{display:grid;place-items:center;width:24px;height:24px;flex:none}
body.lobby-screen>.main-nav>button[data-view]>span>svg{display:block;width:100%;height:100%}
@media(hover:hover) and (pointer:fine){body.lobby-screen>.main-nav>button[data-view]:not(.selected):hover{background:linear-gradient(#354c6d99,#1b304d77)!important;filter:none}}
/* With the tour promotion removed, centre only the player identity in the rail. */
.lobby-player>button{flex:0 0 auto}
#lobby-player-avatar{flex:none}
@media(max-width:700px), (max-height:500px){
 body.lobby-screen>.main-nav>button[data-view]{height:44px;min-height:44px}
 body.lobby-screen>.main-nav>button[data-view]>span{width:20px;height:20px}
}
@media(max-width:400px){body.lobby-screen>.main-nav>button[data-view]>span{width:18px;height:18px}}
/* A scheduler chooses an unused pseudo-element so icons/status remain intact. */
[data-wpas-shimmer-positioned]{position:relative}
[data-wpas-shimmer=before]::before,[data-wpas-shimmer=after]::after{
 content:""!important;display:block!important;position:absolute!important;inset:0!important;
 width:auto!important;height:auto!important;margin:0!important;border:0!important;
 border-radius:inherit;clip-path:inherit;pointer-events:none!important;z-index:6;
 background:linear-gradient(110deg,transparent 39%,#ffffff38 47%,#ffffff66 50%,#ffffff38 53%,transparent 61%) no-repeat!important;
 background-size:250% 100%!important;box-shadow:none!important;transform:none!important;
 opacity:.8;animation:wpas-button-shimmer var(--wpas-shimmer-duration,900ms) ease-in-out var(--wpas-shimmer-delay,0ms) both!important;
}
[data-wpas-shimmer=surface]{
 background-image:linear-gradient(110deg,transparent 39%,#ffffff38 47%,#ffffff66 50%,#ffffff38 53%,transparent 61%),var(--wpas-shimmer-base)!important;
 background-size:250% 100%,var(--wpas-shimmer-size)!important;
 background-repeat:no-repeat,var(--wpas-shimmer-repeat)!important;
 animation:wpas-surface-shimmer var(--wpas-shimmer-duration,900ms) ease-in-out var(--wpas-shimmer-delay,0ms) both!important;
}
@keyframes wpas-button-shimmer{from{background-position:150% 0}to{background-position:-50% 0}}
@keyframes wpas-surface-shimmer{from{background-position:150% 0,var(--wpas-shimmer-position)}to{background-position:-50% 0,var(--wpas-shimmer-position)}}
@media(prefers-reduced-motion:reduce){[data-wpas-shimmer=before]::before,[data-wpas-shimmer=after]::after{animation:none!important;opacity:0}[data-wpas-shimmer=surface]{animation:none!important;background-image:var(--wpas-shimmer-base)!important}}
html[data-motion=reduced] [data-wpas-shimmer=before]::before,html[data-motion=reduced] [data-wpas-shimmer=after]::after{animation:none!important;opacity:0}
html[data-motion=reduced] [data-wpas-shimmer=surface]{animation:none!important;background-image:var(--wpas-shimmer-base)!important}
/* Paint the complete installed frame; only header/footer contents avoid cutouts. */
:root{--wpas-safe-top:env(safe-area-inset-top,0px);--wpas-safe-bottom:env(safe-area-inset-bottom,0px)}
body.lobby-screen{
 --wpas-lobby-header-height:48px;
 padding:0;min-height:0;
 grid-template-rows:calc(var(--wpas-lobby-header-height) + var(--wpas-safe-top)) minmax(0,1fr) auto;
 background:#080f24;
}
body.lobby-screen>header{box-sizing:border-box;padding-top:var(--wpas-safe-top)}
body.lobby-screen>.main-nav{box-sizing:border-box;padding-bottom:calc(7px + var(--wpas-safe-bottom))}
@media(max-width:700px){body.lobby-screen{--wpas-lobby-header-height:44px}}
@media(min-width:600px) and (max-height:500px){body.lobby-screen{--wpas-lobby-header-height:38px}}
