/* The lobby has its own card-club identity; table and account pages use app.css. */
body.royal-lobby{--club-gold:#ebc78b;--club-text:#f9eddb;--club-muted:#b4a6a3;--club-line:#f7dcb51c;background:#160e12;color:var(--club-text);font-family:'Bai Jamjuree',sans-serif;line-height:1.5}
body.royal-lobby::before{display:none}
.royal-lobby button,.royal-lobby input{font:inherit}
.royal-lobby a{color:inherit;text-decoration:none}
.royal-lobby button{touch-action:manipulation}
.royal-lobby [hidden]{display:none!important}
.royal-lobby :focus-visible{outline:2px solid var(--club-gold);outline-offset:5px}
.skip-link{position:fixed;left:16px;top:-80px;z-index:50;padding:12px 20px;background:var(--club-gold);color:#26120d!important;border-radius:6px}.skip-link:focus{top:12px}
.club-header{background:#190f13;border-bottom:1px solid var(--club-line)}
.club-header-inner{max-width:1320px;min-height:86px;margin:auto;padding:0 36px;display:flex;align-items:center;justify-content:space-between;gap:32px}
.club-brand{display:flex;align-items:center;gap:12px;flex-shrink:0}.club-mark{display:grid;place-items:center;width:43px;height:49px;border:1px solid #c9a47160;border-radius:6px;background:linear-gradient(145deg,#422227,#24141a);color:var(--club-gold);font:33px/1 Georgia,serif;transform:rotate(-7deg)}
.club-brand b{display:block;font-family:'Chonburi',serif;font-size:30px;font-weight:400;line-height:1.25;letter-spacing:-1.5px}.brand-dot{color:var(--club-gold)}.club-brand small{display:block;color:var(--club-muted);font-size:8px;font-weight:600;letter-spacing:2px;margin-top:1px}
.royal-lobby .site-nav{gap:8px;justify-content:center}.royal-lobby .site-nav a{display:flex;align-items:center;gap:7px;padding:11px 14px;border:0;border-radius:6px;min-width:0;color:#b4a6a3}.royal-lobby .site-nav a:hover{background:#ffffff06;color:#f9eddb}.royal-lobby .site-nav a[aria-current=page]{color:var(--club-gold);background:#f0c48b0b}.royal-lobby .site-nav span{font:14px Georgia,serif}.royal-lobby .site-nav small{font:600 10px 'Bai Jamjuree',sans-serif;letter-spacing:1px;margin:0}
.connection-status{display:flex;align-items:center;gap:8px;color:#aeb9b0;font-size:11px;white-space:nowrap}.connection-status i,.live-dot{width:6px;height:6px;flex-shrink:0;border-radius:50%;background:#a38c71}.connection-status[data-state=online] i{background:#81c6a1;box-shadow:0 0 0 4px #81c6a10b}.connection-status[data-state=offline]{color:#e5a29a}.connection-status[data-state=offline] i{background:#db8b81}
.club-hero{position:relative;isolation:isolate;overflow:hidden;border-bottom:1px solid #b68d512c;background:#180c0e;min-height:440px}.club-hero-art{position:absolute;z-index:-3;inset:0;width:100%;height:100%;object-fit:cover;object-position:70% top;animation:clubSceneReveal .7s ease-out both}.club-hero-wash{position:absolute;z-index:-2;inset:0;background:linear-gradient(90deg,#180d10fa 0%,#180d10ec 22%,#180d10b8 41%,#180d1020 64%,#180d1000 86%),linear-gradient(0deg,#160e12bb,transparent 32%,#13090b0a)}
.club-hero-inner{max-width:1320px;min-height:440px;padding:49px 36px 34px;margin:auto;position:relative;display:flex;align-items:center}.club-hero-copy{position:relative;max-width:640px;animation:clubCopyReveal .55s ease both}.club-eyebrow{display:flex;align-items:center;gap:10px;font-size:9px;font-weight:600;letter-spacing:2px;margin:0;color:var(--club-gold)}.club-eyebrow>span{width:22px;height:1px;background:var(--club-gold)}.club-eyebrow>span.eyebrow-copy{width:auto;height:auto;background:none}
.club-hero h1{margin:18px 0 18px;font:400 clamp(35px,3.55vw,54px)/1.4 'Chonburi',serif;letter-spacing:-1.8px;color:#fff4e0;text-shadow:0 2px 24px #18070a70}.club-hero h1 em{color:#e7bd79;font-style:normal}.hero-description{margin:0;color:#c9b8b0;font-size:14px;line-height:1.85}.club-hero-actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:24px}.club-button{display:inline-flex;align-items:center;justify-content:center;gap:14px;min-height:48px;padding:12px 21px;border-radius:7px;font-weight:700!important;font-size:14px!important;transition:background .18s,transform .18s,box-shadow .18s}.club-button:hover{transform:translateY(-2px)}.gold-button{border:1px solid #f7dba3;background:linear-gradient(110deg,#f3d498,#e5bc79);color:#382016!important;box-shadow:0 3px 14px #06030418}.gold-button:hover{background:#ffe0a3;box-shadow:0 6px 22px #b26e2c24}.button-symbol{font-size:10px}.button-note{border-left:1px solid #6c462a35;padding-left:13px;font-size:9px;letter-spacing:1.4px}.ghost-button{border:1px solid #e9c38c60;background:#27111680;color:#f4e3cc!important}.ghost-button:hover{background:#49262a}.hero-facts{display:flex;flex-wrap:wrap;gap:0;margin-top:25px;color:#b5a397;font-size:10px}.hero-facts span+span::before{content:'·';padding:0 13px;color:#c59e67}.hero-facts b{font-weight:600;color:#e4ccb3}.hero-art-caption{position:absolute;right:36px;bottom:24px;display:grid;justify-items:end;gap:5px;text-shadow:0 2px 10px #000}.hero-art-caption span{font-size:7px;letter-spacing:2px;color:#e6b976}.hero-art-caption b{font-size:10px;letter-spacing:2px;font-weight:500;color:#dccfba}.hero-art-caption i{font-style:normal;padding:0 6px;color:#ba9763}
.club-content{max-width:1320px;padding:34px 36px 22px;margin:auto}.lobby-heading{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-bottom:24px}.lobby-heading h2{font-size:25px;font-weight:600;letter-spacing:-.7px;margin:7px 0 0}.lobby-heading h2 span{color:var(--club-gold)}.lobby-heading .club-eyebrow{font-size:8px;letter-spacing:2.8px;color:#b89470}.rules-link{display:flex;gap:15px;align-items:center;font-size:12px;color:#c5b9ac!important}.rules-link:hover{color:var(--club-gold)!important}
.club-layout{display:grid;grid-template-columns:minmax(0,1fr) 360px;gap:24px;align-items:start}.table-browser{border:1px solid var(--club-line);border-radius:12px;background:linear-gradient(135deg,#24181d,#1c1418);overflow:hidden;scroll-margin-top:24px}.table-browser-header{display:flex;justify-content:space-between;align-items:center;gap:15px;padding:21px 24px;border-bottom:1px solid var(--club-line)}.table-browser-header>div{display:flex;gap:10px;align-items:center}.table-browser-header h3{font-size:15px;font-weight:600;margin:0}.live-dot{background:#83c39e}.count-badge{display:inline-grid;place-items:center;min-width:24px;height:22px;padding:0 6px;border:1px solid #e7c18e24;border-radius:5px;background:#efca9b0a;color:#d6b387;font-size:11px}.refresh-button{display:flex;align-items:center;gap:7px;background:none;border:0;color:#b8a89d;font-size:11px!important;padding:6px 0 6px 8px}.refresh-button:hover{color:#f4d49f}.refresh-button:disabled{opacity:.5;cursor:wait}.refresh-button span{font:18px/1 Arial}.table-status-line{display:block;margin:0;padding:16px 24px 0;color:#b5a7a0;font-size:11px;min-height:33px}
.club-room-list{list-style:none;margin:0;padding:9px 24px 20px;display:grid;gap:10px;max-height:478px;overflow:auto;scrollbar-color:#74574e transparent}.club-room-list:empty{display:none}.club-room-list li{display:grid;grid-template-columns:40px minmax(0,1fr) auto;gap:14px;align-items:center;border:1px solid #eed3ab16;background:#ffffff02;border-radius:9px;padding:17px 15px;transition:background .15s,border-color .15s}.club-room-list li:hover{border-color:#ceab704b;background:#ead1a806}.room-emblem{display:grid;place-items:center;width:40px;height:46px;border:1px solid #c59c6040;border-radius:6px;color:#d9b47e;background:#63403421;font:25px Georgia,serif}.room-copy{min-width:0}.room-copy b{display:block;font-size:14px;font-weight:600;overflow-wrap:anywhere}.room-copy small{display:block;font-size:10px;margin-top:5px;color:#b2a198;overflow-wrap:anywhere}.room-seat-row{display:flex;align-items:center;gap:7px;margin-top:10px}.room-seat-row span{font-size:10px;color:#b59e89;margin-left:4px}.room-seat-row i{display:block;width:7px;height:7px;border-radius:50%;background:#c29c6620;border:1px solid #bda0793b}.room-seat-row i.is-filled{background:#d8b880;border-color:#d8b880}.room-join{border:1px solid #d4b18150;border-radius:6px;padding:9px 13px;background:#e9c38c0c;color:#f0cf9c;font-size:12px!important;font-weight:600!important;white-space:nowrap}.room-join:hover{background:#e9c38c22}.room-join:disabled{opacity:.5;cursor:wait}
.empty-tables{display:flex;flex-direction:column;align-items:center;text-align:center;padding:39px 24px 41px;min-height:364px}.empty-hand{position:relative;width:150px;height:117px;margin-bottom:19px;filter:drop-shadow(0 12px 14px #0903066e)}.empty-hand img{position:absolute;top:8px;left:38px;width:69px;height:98px;object-fit:contain;filter:brightness(.83) sepia(.16);border-radius:5px}.empty-hand img:first-child{transform:rotate(-17deg) translate(-28px,7px)}.empty-hand img:nth-child(2){z-index:2;transform:translateY(-5px)}.empty-hand img:last-child{transform:rotate(17deg) translate(28px,7px)}.empty-eyebrow{color:#967a63!important;font-size:7px!important;letter-spacing:1.7px!important;margin:0 0 11px!important}.empty-tables h4{font-size:19px;font-weight:500;margin:0 0 7px;color:#eadbca}.empty-tables>p{font-size:12px;color:#aa9991;margin:0}.empty-create{display:flex;align-items:center;gap:14px;margin-top:23px;border:0;background:transparent;color:#eac58b;font-size:12px!important;font-weight:600!important}.empty-create:hover{color:#ffe3b6}.table-browser-footer{display:flex;align-items:center;justify-content:space-between;gap:12px;border-top:1px solid var(--club-line);padding:15px 24px;background:#140e121f}.table-browser-footer>span{color:#ab8566;letter-spacing:5px;font:16px Georgia,serif;white-space:nowrap}.table-browser-footer p{color:#9e8d83;font-size:10px;margin:0}.rooms-error{padding:70px 24px;text-align:center;min-height:364px}.rooms-error>span{font-size:32px;color:#d6b07f}.rooms-error h4{font-size:18px;font-weight:500;margin:12px}.rooms-error p{font-size:12px;color:#b5a397}.rooms-error a{display:inline-block;color:var(--club-gold);font-size:12px;margin-top:15px}
.entry-panel{min-width:0;padding:24px;border:1px solid #e4be8739;border-radius:12px;background:radial-gradient(ellipse at 100% 0,#68402b25,transparent 65%),#281a1e;box-shadow:0 10px 28px #06020518;scroll-margin-top:22px}.entry-heading{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:23px}.entry-heading .club-eyebrow{font-size:7px;letter-spacing:1.8px;color:#c8a276}.entry-heading h3{font-size:21px;font-weight:500;margin:6px 0 0;letter-spacing:-.4px}.entry-suit{font:37px Georgia,serif;color:#d8b883}.field-label{display:flex;justify-content:space-between;gap:8px;font-size:12px;color:#d7c8bd;font-weight:500;margin:0 0 8px}.field-label>span{font-size:10px;color:#aa968a;font-weight:400}.entry-panel input:not([type=radio]):not([type=checkbox]){width:100%;min-width:0;border:1px solid #f8dfbe26;border-radius:6px;padding:11px 12px;background:#170f148c;color:#fff1e0;font-size:13px;line-height:1.5;transition:border-color .2s}.entry-panel input::placeholder{color:#9d8983;opacity:1}.entry-panel input:focus{border-color:var(--club-gold)!important;outline:0;box-shadow:0 0 0 3px #e6bf7b12}.name-field{position:relative}.name-field>span{position:absolute;left:13px;top:10px;color:#bf9c73;font-size:19px}.name-field input{padding-left:40px!important}.entry-panel input[aria-invalid=true]{border-color:#e69483!important}.entry-tabs{display:grid;grid-template-columns:1fr 1fr;padding:4px;background:#160e138f;border-radius:7px;margin:19px 0 22px;gap:4px}.entry-tabs button{padding:9px 5px;border:1px solid transparent;background:transparent;color:#b5a197;border-radius:5px;font-size:12px!important;font-weight:500!important}.entry-tabs button[aria-selected=true]{background:#52353088;border-color:#d8b07242;color:#efd6b1;box-shadow:0 1px 4px #0002}.seat-picker{margin:17px 0 19px;padding:0;border:0}.seat-picker legend{font-size:12px;color:#d7c8bd;font-weight:500;padding:0;margin-bottom:9px}.seat-picker>div{display:grid;grid-template-columns:repeat(3,1fr);gap:8px}.seat-picker label{position:relative;cursor:pointer}.seat-picker input{position:absolute;opacity:0;width:1px;height:1px}.seat-picker span{display:block;text-align:center;padding:9px;border:1px solid #e4bd8a27;border-radius:6px;color:#aa958a;font-size:11px;background:#21141a60}.seat-picker b{font-size:17px;font-weight:500;margin-right:4px}.seat-picker input:checked+span{background:#edc5830f;border-color:#d8b17980;color:#f2d4a5}.seat-picker input:focus-visible+span{outline:2px solid var(--club-gold);outline-offset:3px}.visibility-option{display:flex;gap:12px;align-items:center;cursor:pointer;position:relative}.visibility-option>span:first-child{margin-right:auto}.visibility-option b{display:block;font-size:12px;font-weight:500;color:#d9cbbc}.visibility-option small{display:block;font-size:10px;color:#a58f85;margin-top:3px}.visibility-option input{position:absolute;right:0;opacity:0;width:36px;height:20px}.toggle-track{display:block;width:34px;height:19px;border:1px solid #a691794a;border-radius:20px;background:#584941;flex-shrink:0;transition:background .2s}.toggle-track::after{content:'';display:block;width:13px;height:13px;border-radius:50%;background:#f5e2c6;margin:2px;transition:transform .2s}.visibility-option input:checked+.toggle-track{background:#b2925d;border-color:#c3a874}.visibility-option input:checked+.toggle-track::after{transform:translateX(14px)}.visibility-option input:focus-visible+.toggle-track{outline:2px solid var(--club-gold);outline-offset:4px}.entry-submit{display:flex;width:100%;justify-content:space-between;margin-top:23px;min-height:46px;padding:11px 15px}.entry-footnote{font-size:9px;color:#ad9988;text-align:center;margin:12px 0 0}.form-status{display:block;color:#e9b4a3;font-size:11px;line-height:1.7;overflow-wrap:anywhere}.form-status:empty{display:none}.form-status:not(:empty){margin-top:9px}.entry-panel .room-code-input{font-family:'Chakra Petch',sans-serif!important;text-transform:uppercase;font-size:25px!important;text-align:center;letter-spacing:6px;padding:15px 10px!important}.join-hint{font-size:12px;color:#b7a395;line-height:1.8;margin:15px 0 30px}.entry-submit:disabled{opacity:.65;cursor:wait;transform:none}
.club-howto{display:grid;grid-template-columns:1.2fr 1fr 1fr 1fr;gap:24px;align-items:center;padding:28px 0;margin-top:27px;border-top:1px solid var(--club-line);border-bottom:1px solid var(--club-line)}.howto-intro{display:flex;align-items:center;gap:13px}.howto-intro>span{font:36px Georgia,serif;color:#bd9b69}.howto-intro .club-eyebrow{font-size:7px;letter-spacing:1.2px;color:#9f8163}.howto-intro h3{font-size:14px;font-weight:500;margin:7px 0 0}.howto-step{display:flex;align-items:center;gap:13px}.howto-step>b{color:#8f735b;font-size:24px;font-weight:400;line-height:1}.howto-step p{font-size:12px;color:#d0bdab;margin:0}.howto-step small{display:block;color:#9e8a7e;font-size:10px;margin-top:5px}.club-footer{display:flex;align-items:center;justify-content:space-between;gap:20px;padding-top:24px;color:#927e72;font-size:9px}.club-footer>a:first-child{color:#c09e79;font-size:12px;letter-spacing:1.5px}.club-footer>a:first-child span{font-size:7px;letter-spacing:1px;display:inline-block;padding-left:11px;color:#927e72}.club-footer p{margin:0}.club-footer>a:hover{color:#f1d2a5}
@keyframes clubSceneReveal{from{opacity:0}to{opacity:1}}@keyframes clubCopyReveal{from{opacity:0;transform:translateY(10px)}to{opacity:1;transform:none}}
@media(max-width:1050px){.club-header-inner{gap:14px;padding-inline:28px}.royal-lobby .site-nav{gap:1px}.royal-lobby .site-nav a{padding:10px}.connection-status{font-size:10px}.club-layout{grid-template-columns:minmax(0,1fr) 330px;gap:20px}.club-content{padding-inline:28px}.club-hero-inner{padding-inline:28px}.club-hero-copy{max-width:550px}.club-hero h1{font-size:39px}.club-howto{gap:20px;grid-template-columns:1fr 1fr 1fr}.howto-intro{grid-column:1/-1}.club-footer p{display:none}}
@media(max-width:760px){.club-header-inner{flex-wrap:wrap;padding:18px 22px 0;gap:15px}.club-brand b{font-size:27px}.club-mark{width:36px;height:42px}.club-brand small{font-size:7px}.connection-status{margin-left:auto}.royal-lobby .site-nav{order:3;width:100%;justify-content:space-between;border-top:1px solid var(--club-line);padding:8px 0}.royal-lobby .site-nav a{flex:none;padding:8px 9px;gap:5px}.royal-lobby .site-nav small{font-size:8px}.club-layout{grid-template-columns:1fr}.entry-panel{grid-row:1;padding:25px}.club-content{padding:28px 22px 20px}.lobby-heading{align-items:flex-end;gap:10px}.lobby-heading h2{font-size:22px}.rules-link{font-size:10px;gap:7px}.club-hero{min-height:450px}.club-hero-inner{min-height:450px;padding:36px 22px}.club-hero-art{object-position:70% top;opacity:.8}.club-hero-wash{background:linear-gradient(90deg,#180d10f2,#180d10bb 43%,#180d1040 95%),linear-gradient(0deg,#160e12f5,transparent 90%)}.club-hero h1{font-size:clamp(31px,6vw,42px);letter-spacing:-1.5px}.club-hero-copy{max-width:100%}.hero-art-caption{display:none}.hero-description{font-size:13px}.hero-facts{font-size:9px}.club-hero-actions{gap:9px}.club-button{font-size:13px!important;padding-inline:16px}.club-hero .club-eyebrow{font-size:7px;letter-spacing:1.5px}.club-howto{grid-template-columns:1fr;gap:22px;padding:25px 0}.howto-intro{margin-bottom:1px}.howto-step{gap:18px}.howto-step>b{font-size:20px}.howto-step p{font-size:13px}.howto-step small{display:inline;margin-left:12px;font-size:11px}.club-footer{align-items:flex-start}.club-footer>a:first-child span{display:block;padding:5px 0 0;font-size:6px}.empty-tables{padding-inline:17px;min-height:340px}.empty-tables h4{font-size:17px}.table-browser-header{padding:18px}.table-status-line{padding-inline:18px}.club-room-list{padding-inline:14px}.table-browser-footer{padding-inline:18px}.table-browser-footer p{font-size:9px}.club-room-list li{grid-template-columns:31px minmax(0,1fr) auto;gap:9px;padding:13px 10px}.room-emblem{width:31px;height:38px;font-size:22px}.room-join{padding:9px;font-size:11px!important}}
@media(max-width:380px){.club-content{padding-inline:16px}.club-header-inner{padding-inline:16px}.club-hero-inner{padding-inline:16px}.club-hero h1{font-size:29px}.club-hero-actions{gap:8px}.club-button{padding:11px 12px;gap:9px}.button-note{padding-left:8px}.hero-facts span+span::before{padding:0 8px}.lobby-heading h2{font-size:20px}.rules-link{font-size:9px}.royal-lobby .site-nav a{padding:8px 6px}.entry-panel{padding:20px}.empty-eyebrow{letter-spacing:1px!important}}
@media(prefers-reduced-motion:reduce){.club-hero-art,.club-hero-copy{animation:none}.royal-lobby *{transition:none!important}.club-button:hover{transform:none}}
/* Connection readiness belongs with the available tables, not the site menu. */
.table-browser-header .table-browser-title{display:flex;flex-direction:column;align-items:flex-start;gap:8px;min-width:0}
.table-browser-title>div{display:flex;align-items:center;gap:10px}
.table-browser-header .connection-status{margin:0;font-size:10px;font-weight:400;line-height:1.5;gap:8px}
.table-browser-header .connection-status i{width:5px;height:5px;margin-left:1px}
