/* Card-room client: one feature, one table browser, one saved-seat shelf. */
.journey-return,.journey-save-warning{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:12px;padding:16px 18px;margin:0 0 22px;border:1px solid var(--line,#304056);border-radius:8px}
.journey-return strong,.journey-return small,.journey-save-warning span{display:block;font-size:13px;line-height:1.6}
.journey-return small{opacity:.75}
.journey-save-warning{border-color:#c18c49;background:#b4812420}
.journey-save-warning[hidden]{display:none}
.journey-demo{margin:24px 0;border-top:1px solid var(--line,#304056)}
.journey-demo>summary{cursor:pointer;padding:16px 0;min-height:44px;font-size:14px}
.room-saved:focus{outline:2px solid var(--room-gold);outline-offset:5px}
@media(max-width:600px){.journey-return{padding:14px}.journey-return>div{flex:1 1 200px}.journey-return .secondary{width:100%}}
body[data-screen=lobby] #club-content{max-width:1570px;padding:28px 32px 32px}
body[data-screen=lobby] #home-guide{display:block;max-width:1570px;padding:0 var(--space-8) calc(96px + env(safe-area-inset-bottom))}
.room-client{--room-panel:#142237;--room-raised:#1a2b43;--room-border:#304056;--room-muted:#a7b6c9;--room-ink:#eef2f7;--room-gold:#efd598;color:var(--room-ink);font-size:14px}
.room-client button,.room-client input,.room-client select{font:inherit}
.room-client .sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.room-client button:focus-visible,.room-client input:focus-visible,.room-client select:focus-visible{outline:2px solid var(--room-gold);outline-offset:3px}
.room-client .primary{min-height:44px;font-weight:700;border-radius:5px}
.room-client .secondary{min-height:44px;border-radius:5px}
.room-quick-join{margin:14px 0}.room-quick-join .primary{width:100%}
.room-sheet-content .room-quick-join{display:none}
.room-top.club-hero{display:flex;align-items:center;justify-content:space-between;gap:24px;margin:0 0 24px;padding:0;border:0;background:none;min-height:0;box-shadow:none;overflow:visible}
.room-top.club-hero::before,.room-top.club-hero::after{display:none}
.room-top .eyebrow{font-size:12px;color:var(--room-gold);letter-spacing:2px}
.room-top.club-hero h1{font-family:var(--font-display);font-size:clamp(32px,3vw,46px);line-height:1;margin:6px 0 8px;letter-spacing:.2px;max-width:none;color:var(--room-ink)}
.room-top.club-hero p{font-size:14px;line-height:1.4;margin:0;color:var(--room-muted);max-width:none}
.room-top-actions{display:flex;align-items:center;gap:18px}
.room-player{display:flex;align-items:center;gap:9px;background:none;border:0;color:var(--room-ink);text-align:left;padding:2px;min-height:44px}
.room-player img{border-radius:50%;object-fit:cover;border:1px solid var(--room-border)}
.room-player small{display:block;color:var(--room-muted);font-size:12px;margin-top:3px}
.room-feature{position:relative;display:grid;grid-template-columns:minmax(0,1fr) auto auto;align-items:center;gap:18px;isolation:isolate;padding:14px 18px;background:#18202c;border:1px solid #6b5040;border-radius:8px;overflow:hidden;margin-bottom:18px}
.room-event-art{position:absolute;z-index:-2;inset:0;width:100%;height:100%;object-fit:cover;object-position:center 35%}
.room-feature:before{content:"";position:absolute;inset:0;z-index:-1;background:linear-gradient(90deg,#101822fc 0%,#101822eb 36%,#10182266 67%,#101822bf 85%)}
.room-feature-copy{min-width:0}
.room-event-kicker{display:flex;align-items:center;flex-wrap:wrap;gap:8px;font-size:10px;line-height:1.4;letter-spacing:1px;color:#ffca8d;font-weight:700}
.room-event-kicker span{font-size:9px;letter-spacing:.4px;color:#eee4d5}
.room-feature h2{font-family:var(--font-display);font-size:30px;line-height:1.05;margin:5px 0;color:#fff6e5;letter-spacing:.2px}
.room-feature-actions{display:flex;gap:12px;align-items:center;white-space:nowrap}
.room-feature .primary{background:#f1c990;color:#201913;border:1px solid #f1c990;font-size:12px;padding:9px 12px}
.room-feature-copy>small{display:block;color:#ced0d2;font-size:11px;line-height:1.4}
.room-event-play-short{display:none}
.room-quiet{color:var(--room-muted);border:0;background:none;min-height:44px;padding:6px 0;text-align:left;cursor:pointer}
.room-feature .room-quiet{color:#f2e7d8;font-size:12px;min-width:44px}
.room-event-switch{display:flex;padding-left:12px;border-left:1px solid #ffffff30}
.room-event-switch button{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:4px;text-align:center;border:0;border-bottom:2px solid transparent;padding:6px 9px;min-width:44px;min-height:44px;background:none;color:#b8bec4}
.room-event-switch button span{font-size:10px;letter-spacing:1px}
.room-event-switch button small{font-size:10px;white-space:nowrap}
.room-event-switch button[aria-pressed=true]{border-bottom-color:#f1c990;background:#edc78916;color:#ffe6bf}
.seat-switch-list{display:grid;gap:10px;margin:16px 0}
.seat-switch-list article{border:1px solid var(--line);border-radius:6px;padding:12px;display:flex;justify-content:space-between;align-items:center;gap:16px}
.seat-switch-list h3{font-size:15px;line-height:1.3;margin:0 0 5px}
.seat-switch-list p{color:var(--muted);font-size:12px;line-height:1.5;margin:0}
.seat-switch-actions{display:flex;gap:8px;flex-shrink:0}
.seat-switch-actions button,.seat-switch-cancel{min-height:44px;font-size:12px}
.seat-switch-cancel{width:100%}
@media(max-width:600px){.seat-switch-list article{display:block}.seat-switch-actions{margin-top:10px}.seat-switch-actions button{flex:1}.seat-switch-list{gap:8px}}
.room-browser{border:1px solid var(--room-border);border-radius:8px;background:var(--room-panel);overflow:hidden}
.room-browser-top{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:20px 22px 16px}
.room-browser-top .eyebrow{font-size:11px;letter-spacing:1.6px;color:var(--room-muted)}
.room-browser-top h2,.room-section-heading h2{font-family:var(--font-display);font-size:28px;line-height:1;margin:5px 0 0;letter-spacing:.5px}
.room-bot-notice{font-size:12px;color:var(--room-muted);text-align:right}
.room-tabs{display:flex;gap:20px;padding:0 22px;border-bottom:1px solid var(--room-border)}
.room-tabs button{min-height:48px;padding:10px 0;background:none;border:0;border-bottom:3px solid transparent;color:var(--room-muted);white-space:nowrap}
.room-tabs button[aria-pressed=true]{border-bottom-color:var(--room-gold);color:var(--room-gold);font-weight:700}
.room-browser-grid{display:grid;grid-template-columns:minmax(0,1fr) 324px}
.room-table-list{min-width:0}
.room-filters{display:flex;gap:8px;padding:16px;border-bottom:1px solid var(--room-border)}
.room-filters label{min-width:0}
.room-search{flex:1}
.room-filters input,.room-filters select{width:100%;min-height:42px;border:1px solid var(--room-border);background:#101b2c;color:var(--room-ink);border-radius:4px;padding:8px 10px}
.room-filters input::placeholder{color:var(--room-muted)}
.room-filters select{width:110px}
.room-list-head{display:grid;grid-template-columns:minmax(0,1fr) 50px 64px 95px 40px;padding:10px 16px;font-size:11px;text-transform:uppercase;letter-spacing:1px;color:var(--room-muted);background:#101b2c80}
.room-row{position:relative;border-top:1px solid #283a50;border-left:3px solid transparent}
.room-row.selected{border-left-color:var(--room-gold);background:#f0d3920d}
.room-row:hover{background:#ffffff06}
.room-row-select{display:grid;grid-template-columns:minmax(0,1fr) 50px 64px 95px 40px;align-items:center;gap:0;background:none;border:0;width:100%;min-height:76px;text-align:left;color:var(--room-ink);padding:13px 13px}
.room-row-title{min-width:0;padding-right:6px}
.room-row-title strong{display:block;font-size:15px;font-weight:600;line-height:1.25}
.room-row-title small{display:block;margin-top:5px;color:var(--room-muted);font-size:12px;line-height:1.4}
.room-row-title i{font-style:normal;color:#65768c;margin:0 3px}
.room-row-title b{font-size:10px;color:#aed4ba;margin-left:5px;font-weight:600}
.room-seat-count,.room-stack,.room-blinds{font-variant-numeric:tabular-nums;font-size:14px}
.room-seat-count small{display:none}
.room-stack small{font-size:12px;color:var(--room-muted)}
.room-blinds small{display:block;font-size:11px;color:var(--room-muted);margin-top:4px}
.room-row-arrow{display:none}
.room-star{background:none;border:0;color:#9bacbe;width:44px;min-height:44px;font-size:23px!important;padding:0}
.room-star[aria-pressed=true]{color:var(--room-gold)}
.room-row-favorite{position:absolute;z-index:2;right:7px;top:50%;transform:translateY(-50%)}
.room-client .room-row-favorite:active{transform:translateY(-50%)}
.room-list-foot{display:flex;justify-content:space-between;gap:8px;padding:12px 16px;border-top:1px solid var(--room-border);font-size:12px;color:var(--room-muted)}
.room-pick-help{display:flex;flex-wrap:wrap;align-items:center;gap:4px 12px;margin:12px 16px;padding-top:8px;border-top:1px solid var(--room-border)}
.room-pick-help>span{color:var(--room-muted);font-size:12px}
.room-pick-help button{background:none;border:0;color:var(--room-gold);font-size:12px;min-height:44px;padding:3px 0}
.room-proof{padding:4px 16px 18px}
.room-proof strong{font-size:13px;color:#cbd7e3}
.room-proof p{font-size:12px;line-height:1.65;color:var(--room-muted);max-width:650px;margin:5px 0 0}
.room-detail{border-left:1px solid var(--room-border);background:#101b2b}
.room-detail-art{height:106px;position:relative;overflow:hidden}
.room-detail-art img{width:100%;height:100%;object-fit:cover}
.room-detail-art:after{content:"";position:absolute;inset:0;background:linear-gradient(transparent,#101b2b)}
.room-detail-art>span{position:absolute;bottom:10px;left:18px;right:14px;z-index:1;font-size:12px;color:#f1e5d1}
.room-detail-body{padding:8px 20px 16px}
.room-detail-kicker{display:flex;align-items:center;justify-content:space-between;min-height:40px}
.room-tag{font-size:10px;letter-spacing:1px;font-weight:700}
.room-tag.gold{color:var(--room-gold)}.room-tag.mint{color:#a5d1bd}.room-tag.red{color:#f4aaaa}
.room-detail-body h2{font-family:var(--font-display);font-size:31px;line-height:1.05;margin:3px 0 8px}
.room-flavor{font-size:13px;line-height:1.6;color:var(--room-muted);margin:0 0 16px}
.room-facts{margin:0;display:grid;gap:9px}
.room-facts>div{display:flex;justify-content:space-between;gap:10px;font-size:12px}
.room-facts dt{color:var(--room-muted)}.room-facts dd{margin:0;text-align:right;color:var(--room-ink);font-variant-numeric:tabular-nums}.room-facts dd span{color:var(--room-muted)}
.room-why{border-top:1px solid var(--room-border);margin-top:17px;padding-top:13px}
.room-why h3{font-size:13px;margin:0 0 7px;font-weight:700}
.room-why p{font-size:13px;line-height:1.65;color:#d0d9e5;margin:0 0 8px}
.room-why small{font-size:12px;line-height:1.6;color:var(--room-muted);display:block}
.room-lineup{margin:16px 0}
.room-lineup>span{font-size:11px;letter-spacing:.7px;text-transform:uppercase;color:var(--room-muted)}
.room-lineup>div{display:flex;align-items:center;flex-wrap:wrap;margin-top:8px}
.room-lineup img{border-radius:50%;object-fit:cover;border:2px solid #26374d;margin-right:-5px}
.room-lineup small{color:var(--room-muted);font-size:11px;width:100%;margin-top:7px}
.room-detail-cta .primary{width:100%;display:flex;justify-content:space-between;align-items:center}
.room-detail-cta>small{display:block;text-align:center;font-size:11px;color:var(--room-muted);margin-top:8px}
.room-restart{width:100%;text-align:center;font-size:12px!important}
.room-tip{border-top:1px solid var(--room-border);margin-top:16px;padding-top:4px;font-size:12px}
.room-tip summary{min-height:44px;display:flex;align-items:center;color:var(--room-gold);cursor:pointer}
.room-tip summary:after{content:"+";margin-left:auto}
.room-tip[open] summary:after{content:"−"}
.room-tip p{color:var(--room-muted);line-height:1.6}
.room-tip a{color:var(--room-gold);display:inline-flex;align-items:center;min-height:44px}
.room-theme{font-size:12px!important}
.room-saved{margin-top:26px}
.room-saved+#room-feature-slot{margin-top:24px}
.room-section-heading{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:13px}
.room-section-heading h2{font-size:23px}
.room-section-heading>span{font-size:12px;color:var(--room-muted)}
.room-saved-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
.room-saved article{border:1px solid var(--room-border);background:var(--room-panel);border-radius:6px;padding:12px 16px;display:flex;align-items:center;gap:12px}
.room-saved article>div{flex:1;min-width:0}
.room-save-label{font-size:10px;letter-spacing:1px;color:var(--room-gold)}
.room-saved h3{font-size:14px;margin:5px 0;line-height:1.3}
.room-saved p{font-size:12px;color:var(--room-muted);margin:0;line-height:1.5}
.room-saved .secondary{font-size:12px;min-width:68px;padding:8px}
.room-saved .room-quiet{font-size:11px}
.room-empty-seat{padding:17px 0;border-top:1px solid var(--room-border);color:var(--room-muted)}
.room-footer{display:flex;align-items:center;justify-content:space-between;gap:12px;border-top:1px solid var(--room-border);padding:12px 0;margin-top:16px;font-size:12px}
.room-footer .lobby-save{border:0;margin:0;padding:6px 0;min-height:44px;background:none;font-size:12px;display:block}
.room-footer nav{display:flex;gap:14px;flex-wrap:wrap}
.room-footer nav button{border:0;background:none;color:var(--room-muted);min-height:44px;padding:0;font-size:12px}
.room-empty{padding:48px 22px;min-height:280px}
.room-empty h3{font-size:18px}
.room-empty p{color:var(--room-muted);line-height:1.6}
#room-sheet{padding:0;background:var(--room-panel);color:var(--room-ink);border:1px solid var(--room-border);border-radius:14px 14px 0 0;position:fixed;inset:auto 0 0;width:100%;max-width:640px;max-height:90dvh;margin:0 auto;overflow:auto}
#room-sheet::backdrop{background:#02070dcc}
.room-sheet-top{display:flex;align-items:center;justify-content:space-between;padding:6px 18px;position:sticky;top:0;background:var(--room-panel);z-index:2;border-bottom:1px solid var(--room-border)}
.room-sheet-top span{font-size:11px;letter-spacing:1.5px;color:var(--room-muted)}
.room-sheet-top button{color:var(--room-ink);font-size:26px}
.room-sheet-content .room-detail-art{height:85px}
.room-sheet-content .room-detail-cta{position:sticky;bottom:0;background:var(--room-panel);padding:12px 0;z-index:1}
.room-sheet-content .room-detail-body{padding-bottom:max(16px,env(safe-area-inset-bottom))}
[data-theme=light] .room-client{--room-panel:#f8f5ee;--room-raised:#e9e5db;--room-border:#cdc7bc;--room-muted:#556477;--room-ink:#18263b;--room-gold:#765323}
[data-theme=light] .room-filters input,[data-theme=light] .room-filters select,[data-theme=light] .room-detail{background:#eeeae1}
[data-theme=light] .room-list-head{background:#e6e1d8}
[data-theme=light] .room-row{border-top-color:#d8d2c8}
[data-theme=light] .room-row.selected{background:#e6d2a14d}
[data-theme=light] .room-proof strong,[data-theme=light] .room-why p{color:#37475b}
[data-theme=light] .room-detail-art:after{background:linear-gradient(transparent,#182233cc)}
[data-theme=light] .room-tag.mint{color:#236348}
[data-theme=light] .room-tag.red{color:#973d3d}
@media(min-width:1800px){body[data-screen=lobby] #club-content{padding-top:34px}.room-browser-grid{grid-template-columns:minmax(0,1fr) 360px}}
@media(max-width:1250px){body[data-screen=lobby] #club-content{padding:22px}.room-browser-grid{grid-template-columns:minmax(0,1fr) 285px}.room-detail-body{padding-inline:16px}.room-list-head,.room-row-select{grid-template-columns:minmax(0,1fr) 40px 53px 75px 35px}.room-row-title strong{font-size:14px}.room-filters select{width:95px}.room-top-actions{gap:10px}.room-feature{gap:12px}.room-event-switch button small{display:none}}
@media(max-width:1099px){body[data-screen=lobby] #club-content{padding-bottom:88px}}
@media(max-width:900px){.room-browser-grid{grid-template-columns:1fr}.room-detail{display:none}.room-top-actions .room-player{display:none}.room-feature{grid-template-columns:minmax(0,1fr) auto;gap:6px 12px;padding:12px}.room-feature-copy{grid-column:1/-1}.room-feature-actions{grid-column:2;grid-row:2}.room-event-switch{grid-column:1;grid-row:2;border:0;padding:0}.room-list-head,.room-row-select{grid-template-columns:minmax(0,1fr) 60px 90px 115px 44px}.room-row-select{min-height:80px}.room-proof{padding-bottom:16px}.room-saved-grid{grid-template-columns:1fr}.room-footer{flex-wrap:wrap}}
@media(max-width:600px){
 body[data-screen=lobby] #club-content{padding:18px 16px 32px}
 body[data-screen=lobby] #home-guide{padding-inline:16px}
 .room-top.club-hero{gap:12px;margin-bottom:18px;align-items:center}
 .room-top.club-hero h1{font-size:34px;margin:5px 0 0}.room-top.club-hero p{display:none}
 .room-top .eyebrow{font-size:12px}.room-top-actions>.primary{font-size:12px;padding:10px 12px;max-width:132px;line-height:1.4}
 .room-feature{margin-bottom:16px;border-radius:6px;gap:5px 8px}
 .room-feature:before{background:linear-gradient(90deg,#101822f5,#101822bc 62%,#10182288)}
 .room-feature h2{font-size:26px;margin:4px 0}
 .room-event-kicker{font-size:12px;gap:4px 8px;letter-spacing:0}.room-event-kicker span{font-size:12px}
 .room-feature-actions{gap:4px}.room-feature-actions .primary{font-size:12px;padding:8px 9px}
 .room-feature .room-quiet{font-size:12px}
 .room-feature-copy>small{font-size:12px}
 .room-event-switch button span,.room-event-switch button small{font-size:12px}
 .room-event-play-full{display:none}.room-event-play-short{display:inline}
 .room-browser-top{padding:14px 15px 10px;align-items:center}.room-browser-top h2{font-size:27px}.room-browser-top .eyebrow{display:none}
 .room-bot-notice{font-size:12px;max-width:165px;line-height:1.5}
 .room-tabs{gap:0;justify-content:space-between;padding:0 8px;flex-wrap:wrap}.room-tabs button{font-size:12px;min-height:46px;min-width:44px;padding-inline:3px}
 .room-filters{display:grid;grid-template-columns:1fr 1fr;padding:12px;gap:8px}
 .room-search{grid-column:1/-1}.room-filters select{width:100%}.room-filters input,.room-filters select{min-height:44px;font-size:14px}
 .room-list-head{grid-template-columns:minmax(0,1fr) 48px 49px 44px;font-size:12px;padding:10px 9px;letter-spacing:0}
 .room-list-head>span:nth-child(4){display:none}
 .room-row-select{grid-template-columns:minmax(0,1fr) 48px 49px 44px;padding:12px 9px;min-height:85px}
 .room-row-title strong{font-size:14px;max-width:190px}.room-row-title small{font-size:12px;line-height:1.45;max-width:175px}
 .room-row-title small i{margin-inline:1px}.room-row-title b{display:inline-block;font-size:12px}
 .room-row-select .room-blinds{display:none}.room-seat-count,.room-stack{font-size:14px}
 .room-row-favorite{right:2px;width:44px}.room-list-foot{font-size:12px;padding:12px;gap:6px;flex-wrap:wrap}
 .room-proof,.room-pick-help{margin-inline:0;padding-inline:12px}.room-pick-help{margin-top:0}
 .room-proof p{font-size:12px}.room-proof strong{font-size:12px}
 .room-section-heading h2{font-size:24px}.room-section-heading>span{font-size:12px}
 .room-saved article{padding:12px;gap:8px}.room-saved .room-quiet{font-size:12px}.room-saved h3{font-size:13px}
 .room-footer{gap:0;margin-top:8px}.room-footer nav{justify-content:space-between;width:100%;gap:12px}
}
@media(max-width:350px){.room-top.club-hero h1{font-size:28px;white-space:nowrap}.room-top-actions>.primary{padding-inline:9px;max-width:110px}.room-browser-top h2{font-size:24px;white-space:nowrap}.room-bot-notice{max-width:140px;font-size:11px}}
@media(prefers-reduced-motion:reduce){.room-client *{scroll-behavior:auto!important;transition:none!important;animation:none!important}}
.welcome-lobby{max-width:1120px;margin-inline:auto}
.welcome-browse{display:flex;align-items:center;justify-content:space-between;gap:20px;padding-block:24px;border-bottom:1px solid var(--line);margin-bottom:16px}
.welcome-browse p{color:var(--muted);font-size:14px;margin-top:6px}
.welcome-browse .secondary{flex-shrink:0;min-height:48px}
.welcome-lobby .club-hero h1{color:#f7f1e6}
@media(max-width:600px){.welcome-browse{align-items:flex-start;flex-direction:column;gap:12px}.welcome-browse .secondary{width:100%}.welcome-lobby .club-hero{padding:24px 20px}.welcome-lobby .first-play-tour{text-align:left;min-height:48px}}
@media(max-width:600px) and (max-height:650px){.welcome-lobby .club-hero .hero-cards{display:none}.welcome-lobby .club-hero{gap:12px;padding:18px 20px}.welcome-lobby .lobby-top{margin-bottom:14px}.welcome-lobby .club-hero .hero-copy h1{font-size:28px}}
