/* Club lobby: owner reference composition with desktop and phone landscape rules. */
/* Owner: mail = notifications; no hamburger button in the top-right corner. */
/* Shared chrome belongs only to the lobby, never to other pages or their menus. */
body:not(.home-view-active) .app > .topbar,
body.game-session-active .app > .topbar,
body:has(#home.lobby-layer-active) .app > .topbar { display:none!important; }
body:has(dialog[open], .profile-menu.open) .app > .topbar { visibility:hidden; }
body.panel-view-active .app { padding-top:0!important; }
body.panel-view-active .app > .view:not(.hidden) { margin-top:0!important; }
body.home-view-active #sideMenuHomeBtn { display:none!important; }
body:not(.home-view-active) #sideMenuTitle { display:none; }
body #mainMenuPanel.club-side-menu #sideMenuHomeBtn { width:auto; font-size:14px; }
body:not(.home-view-active) :is(.admin-global-brand,.admin-global-role > .shared-brand) { display:none!important; }
body #topbarMailBtn, body #mainMenuToggle { display:none!important; }
body .topbar .main-menu-panel:not(.open) { display:none!important; }
body.home-view-active .topbar .profile-menu:not(.open) { display:none!important; }
body .topbar .topbar-quick-actions { grid-template-columns:repeat(4,minmax(0,1fr))!important; }
body.home-view-active:not(.game-session-active) .topbar #mainNavigation { padding-bottom:0; }
/* Right-edge navigation: native modal supplies focus trapping and Escape support. */
body #legacyMainMenuPanel { display:none!important; }
body #sideMenuToggle { position:fixed; z-index:600; right:env(safe-area-inset-right,0px); top:50%; transform:translateY(-50%); width:26px; min-width:26px; min-height:96px; padding:5px 2px; writing-mode:vertical-rl; border:1px solid #ba8a3e; border-radius:9px 0 0 9px; color:#f0ce84; background:#081b13; box-shadow:-2px 0 8px #0006; font:12px Georgia,serif; }
body #sideMenuToggle[hidden], body.game-session-active #sideMenuToggle, body.launch-active #sideMenuToggle { display:none!important; }
body #sideMenuToggle { display:block; line-height:20px; white-space:nowrap; letter-spacing:0; text-transform:none; }
body #sideMenuToggle::before, body #sideMenuToggle::after { content:none!important; }
body #mainMenuPanel.club-side-menu { position:fixed!important; inset:0 0 0 auto!important; margin:0; width:min(350px,92vw)!important; height:100dvh!important; max-height:100dvh!important; max-width:100vw; padding:16px!important; border:1px solid #956b2e; border-radius:16px 0 0 16px; background:linear-gradient(145deg,#10271b,#03100b); color:#efcb7e; overflow:auto!important; box-shadow:-12px 0 45px #0008; }
body #mainMenuPanel.club-side-menu:not([open]) { display:none!important; }
body #mainMenuPanel.club-side-menu { transform:none!important; animation:none!important; }
body #mainMenuPanel.club-side-menu[open] { display:flex!important; flex-direction:column; gap:18px; }
body #mainMenuPanel.club-side-menu::backdrop { background:#0009; }
body #mainMenuPanel.club-side-menu header { display:flex; align-items:center; justify-content:space-between; gap:8px; }
body #mainMenuPanel.club-side-menu h2 { margin:0; font:20px Georgia,serif; }
body #mainMenuPanel.club-side-menu nav { display:grid; gap:9px; }
body #mainMenuPanel.club-side-menu button { width:100%; min-height:44px; padding:8px 12px; border:1px solid #9f7834; border-radius:9px; background:linear-gradient(#1b3625,#0b1b12); color:#efcb7e; font:16px Georgia,serif; text-align:left; }
body #mainMenuPanel.club-side-menu #closeMainMenu { width:auto; font-size:13px; }
body #mainMenuPanel.club-side-menu button:focus-visible, body #sideMenuToggle:focus-visible { outline:2px solid #ffe3a0; outline-offset:2px; }
@media (orientation:landscape) and (max-height:450px) {
 body #mainMenuPanel.club-side-menu { padding:8px!important; }
 body #mainMenuPanel.club-side-menu[open] { gap:8px; }
 body #mainMenuPanel.club-side-menu nav { gap:5px; }
}
:root {
  --ui-font: "Segoe UI", system-ui, -apple-system, sans-serif;
  --ui-text: #f1ebdc;
  --ui-muted: #b7c3ba;
  --ui-gold: #e9c477;
  --ui-gold-edge: #7c663b;
  --ui-surface: #0b1b16;
  --ui-surface-raised: #12261f;
  --ui-radius: 16px;
  --ui-gap: 16px;
  --ui-fast: 140ms;
  --ui-normal: 240ms;
  --ui-focus: 0 0 0 3px #06120e, 0 0 0 5px #f0d99e;
}
/* Owner removed recent matches from the lobby; the full profile history is retained. */
body #home .lobby-recent-section { display:none!important; }
body.home-view-active:not(.game-session-active) #home .lobby-command-center { grid-template-rows:minmax(0,1fr)!important; }
body.home-view-active:not(.game-session-active) #home .lobby-panel:not(.lobby-layer-open) { display:none!important; }
body.home-view-active:not(.game-session-active) #home .lobby-vip-card { position:relative; }
body.home-view-active:not(.game-session-active) :is(.lobby-dashboard,.topbar) button.polished-button::after { content:none; }
@media (orientation:portrait) and (max-width:900px) {
 body.home-view-active:not(.game-session-active) #home .lobby-progress-list small { white-space:normal; overflow-wrap:anywhere; }
}
body.home-view-active:not(.game-session-active) { --club-font: var(--ui-font); color: var(--ui-text); }
body.home-view-active:not(.game-session-active) :is(.topbar, .lobby-side-rail, .lobby-command-center, .lobby-right-rail) :is(button, strong, small, span, p, h2, h3, b, li) { font-family: var(--ui-font) !important; }
body.home-view-active:not(.game-session-active) :is(.topbar, .lobby-dashboard) button:focus-visible { outline: 2px solid var(--ui-gold); outline-offset: 3px; box-shadow: var(--ui-focus); }
body.home-view-active:not(.game-session-active) #home .lobby-dashboard { gap: var(--ui-gap); padding: 16px; }
body.home-view-active:not(.game-session-active) #home :is(.lobby-side-rail,.lobby-command-center,.lobby-right-rail > section,.lobby-right-rail > article) { border-color: #d2b57830; border-radius: var(--ui-radius); box-shadow: none; }
body.home-view-active:not(.game-session-active) #home .lobby-side-rail { background: #081710; padding: 8px; }
body.home-view-active:not(.game-session-active) #home :is(.lobby-player-heading,.lobby-progress-list button) { min-height: 58px; grid-template-columns: 34px minmax(0,1fr); gap: 10px; padding: 10px; text-transform: none; border-radius: 10px; }
body.home-view-active:not(.game-session-active) #home :is(.lobby-player-heading,.lobby-progress-list button) strong { font-size: 16px; line-height: 1.35; font-weight: 600; }
body.home-view-active:not(.game-session-active) #home .lobby-feature-icon { width: 32px; height: 36px; min-width: 32px; font-size: 24px; border: 0; border-radius: 0; background: none; box-shadow: none; }
body.home-view-active:not(.game-session-active) #home .lobby-command-center { padding: 22px; background: linear-gradient(150deg,#10261f,#06120e); }
body.home-view-active:not(.game-session-active) #home .lobby-welcome { text-align: left; align-items: center; margin-bottom: 20px; }
body.home-view-active:not(.game-session-active) #home .lobby-welcome h2 { margin: 0; font-size: clamp(23px,1.9vw,32px); font-weight: 650; line-height: 1.25; letter-spacing: -.025em; text-transform: none; color: var(--ui-text); }
body.home-view-active:not(.game-session-active) #home .lobby-welcome p { font-size: 14px; line-height: 1.55; color: var(--ui-muted); margin: 9px 0 0; }
body.home-view-active:not(.game-session-active) #home .lobby-action-card { gap: 0; grid-template-rows: auto clamp(138px,12vw,205px) auto; padding: 18px; min-height: 0; border-color: #bca06870; border-radius: 15px; background: #061511; box-shadow: inset 0 1px #fff1,0 8px 20px #0003; }
body.home-view-active:not(.game-session-active) #home .lobby-action-card.rooms-card { background: #07151c; border-color: #7193a26b; }
body.home-view-active:not(.game-session-active) #home .lobby-action-card .eyebrow { font-size: 11px; font-weight: 600; letter-spacing: .09em; color: var(--ui-muted); }
body.home-view-active:not(.game-session-active) #home .lobby-action-card h3 { font-size: clamp(20px,1.6vw,27px); font-weight: 650; margin: 6px 0 8px; text-transform: none; color: var(--ui-text); }
body.home-view-active:not(.game-session-active) #home .lobby-action-card p { color: var(--ui-muted); font-size: 14px; line-height: 1.45; margin: 0; }
body.home-view-active:not(.game-session-active) #home .lobby-action-art { display: block; height: 100%; min-height: 0; width: 100%; pointer-events: none; transform: none; }
body.home-view-active:not(.game-session-active) #home .lobby-action-art img { display: block; width: 100%; height: 100%; object-fit: contain; mix-blend-mode: lighten; }
body.home-view-active:not(.game-session-active) #home .lobby-action-card > button { min-height: 48px; font-size: 16px; font-weight: 650; border-radius: 9px; color: #251807; background: linear-gradient(#f1d28b,#cfa350); border: 1px solid #ebc77b; text-transform: none; box-shadow: inset 0 1px #fff5,0 3px 8px #0005; }
body.home-view-active:not(.game-session-active) #home .rooms-card > button { color: #e6eff1; background: linear-gradient(#234858,#142e3b); border-color: #7798a4; }
body.home-view-active:not(.game-session-active) #home .lobby-friends-banner { grid-template-columns: minmax(0,1fr) auto; grid-template-rows: auto; gap: 14px; min-height: 100px; padding: 18px; margin-top: 18px; background: linear-gradient(115deg,#2b1c32,#171a22); border-color: #a089b45c; }
body.home-view-active:not(.game-session-active) #home .lobby-friends-banner > b { grid-column: 2; grid-row: 1; padding: 12px 14px; font-size: 13px; font-weight: 600; line-height: 1.4; text-transform: none; border-color: #bda87870; }
body.home-view-active:not(.game-session-active) #home .lobby-friends-banner strong { font-size: 19px; text-transform: none; }
body.home-view-active:not(.game-session-active) #home .lobby-friends-banner small { font-size: 13px; font-weight: 400; color: #c7bed0; margin-top: 5px; }
body.home-view-active:not(.game-session-active) #home .lobby-recent-section > header { justify-content: space-between; gap: 12px; }
body.home-view-active:not(.game-session-active) #home .lobby-recent-section h3 { font-size: 17px; font-weight: 600; text-transform: none; }
body.home-view-active:not(.game-session-active) #home .lobby-recent-section > header button { display: inline-flex; font-size: 13px; min-height: 44px; }
body.home-view-active:not(.game-session-active) #home .lobby-recent-matches > p { grid-column: 1/-1; color: var(--ui-muted); font-size: 14px; line-height: 1.5; }
body.home-view-active:not(.game-session-active) #home .lobby-summary-card { padding: 16px; min-height: 0; }
body.home-view-active:not(.game-session-active) #home .lobby-summary-card > header { justify-content: space-between; font-size: 15px; font-weight: 600; text-transform: none; }
body.home-view-active:not(.game-session-active) #home .lobby-summary-card > header button { position: static; width: 44px; height: 44px; min-height: 44px; }
body.home-view-active:not(.game-session-active) #home .lobby-stat-grid { margin-top: 10px; }
body.home-view-active:not(.game-session-active) #home .lobby-stat-grid strong { font-size: 27px; font-weight: 600; font-variant-numeric: tabular-nums; }
body.home-view-active:not(.game-session-active) #home .lobby-stat-grid span { font-size: 13px; color: var(--ui-muted); }
body.home-view-active:not(.game-session-active) #home .lobby-vip-card { padding: 18px !important; min-height: 0; background: linear-gradient(145deg,#181e18,#0d1612) !important; }
body.home-view-active:not(.game-session-active) #home .lobby-vip-card > span { font-size: 17px; letter-spacing: 0; text-transform: none; }
body.home-view-active:not(.game-session-active) #home .lobby-vip-card > strong { font-size: 13px; font-weight: 400; color: var(--ui-muted); }
body.home-view-active:not(.game-session-active) #home .lobby-vip-card ul { font-size: 13px; line-height: 1.5; color: #c5c9b9; }
body.home-view-active:not(.game-session-active) #home .lobby-vip-card > i { display: none; }
body.home-view-active:not(.game-session-active) #home .lobby-vip-card button { min-height: 44px; font-size: 14px; text-transform: none; background: #12251b; }
body.home-view-active:not(.game-session-active) #home .lobby-daily-card { grid-template-columns: 36px minmax(0,1fr); min-height: 0; padding: 16px; gap: 12px; }
body.home-view-active:not(.game-session-active) #home .daily-gift { width: 36px; height: 40px; font-size: 24px; background: none; color: var(--ui-gold); }
body.home-view-active:not(.game-session-active) #home .lobby-daily-card strong { font-size: 15px; text-transform: none; }
body.home-view-active:not(.game-session-active) #home .lobby-daily-card small { white-space: normal; color: var(--ui-muted); font-size: 12px; }
body.home-view-active:not(.game-session-active) #home .lobby-daily-card button { grid-column: 1/-1; min-height: 44px; font-size: 14px; background: #183c28; color: #ecd69f; border: 1px solid #8a7848; }
body.home-view-active:not(.game-session-active) #home .lobby-tournament-promo { background: #10221a; margin-top: 24px; }
body.home-view-active:not(.game-session-active) #home .lobby-tournament-promo > span { font-size: 11px; }
body.home-view-active:not(.game-session-active) #home .lobby-tournament-promo > strong { font-size: 17px; font-weight: 600; }
body.home-view-active:not(.game-session-active) #home .lobby-tournament-promo > small { font-size: 12px; line-height: 1.5; color: var(--ui-muted); }
body.home-view-active:not(.game-session-active) #home .lobby-tournament-promo button { min-height: 44px; font-size: 13px; }
body.home-view-active:not(.game-session-active) #home .lobby-quick-button { min-height: 64px; color: var(--ui-text); background: var(--ui-surface-raised); }
body.home-view-active:not(.game-session-active) #home .lobby-quick-button strong { font-size: 15px; color: var(--ui-text); }
body.home-view-active:not(.game-session-active) #home .lobby-quick-button small { font-size: 12px; color: var(--ui-muted); }
body.home-view-active:not(.game-session-active) .topbar-player-copy :is(strong,span) { font-family: var(--ui-font); }
body.home-view-active:not(.game-session-active) .topbar-quick-actions button > strong { font-size: 12px; font-weight: 500; }
body.home-view-active:not(.game-session-active) .topbar .tabs { padding-bottom: 0; display: flex; flex-direction: column; align-items: flex-end; justify-content: center; gap: 6px; }
body.home-view-active:not(.game-session-active) .topbar .main-menu-toggle { position: static; width: auto !important; min-width: 100px !important; min-height: 44px; padding: 8px 16px; font-size: 13px; border-color: #bba37470; }
body.home-view-active:not(.game-session-active) .topbar .main-menu-panel button { min-height: 44px; font-size: 15px; text-transform: none; }
body.home-view-active:not(.game-session-active) .topbar .main-menu-panel { position: fixed !important; inset: 0 0 0 auto !important; width: min(380px,92vw) !important; height: 100dvh !important; max-height: 100dvh; overflow-y: auto !important; align-content: start; grid-template-columns: minmax(0,1fr) !important; gap: 8px !important; padding: 16px !important; background: #0b1b16; border: 1px solid var(--ui-gold-edge); border-radius: 0; z-index: 720; }
body.home-view-active:not(.game-session-active) .main-menu-heading { display: flex; position: sticky; top: -16px; align-items: center; gap: 10px; padding: 10px 0; background: #0b1b16; z-index: 1; font-size: 14px; color: var(--ui-muted); }
body.home-view-active:not(.game-session-active) .main-menu-heading #closeMainMenu { min-height: 44px !important; }
body.home-view-active:not(.game-session-active) #home .lobby-welcome > div { text-align: left; width: 100%; }
body.home-view-active:not(.game-session-active) #home .lobby-action-card > button { width: 100%; }
@media (min-width:1001px) {
  body.home-view-active:not(.game-session-active) #home .lobby-dashboard { grid-template-columns: minmax(175px,.65fr) minmax(450px,2.2fr) minmax(235px,.9fr) !important; }
  body.home-view-active:not(.game-session-active) .topbar { grid-template-columns: minmax(340px,1fr) 150px minmax(380px,1fr); height: 144px; min-height: 144px; flex-basis: 144px; }
  body.home-view-active:not(.game-session-active) .topbar-quick-actions button > span { width: 44px; height: 44px; font-size: 24px; }
}
@media (max-width:1000px) {
  html:has(body.home-view-active:not(.game-session-active)) { scroll-padding-block: 90px; }
  body.home-view-active:not(.game-session-active) .app { padding-bottom: 90px !important; }
  body.home-view-active:not(.game-session-active) #home .lobby-side-rail { display: flex; flex-direction: row; flex-wrap: wrap; gap: 6px; }
  body.home-view-active:not(.game-session-active) #home .lobby-side-rail .lobby-progress-list { display: contents; }
  body.home-view-active:not(.game-session-active) #home :is(.lobby-player-heading,.lobby-progress-list button) { flex: 1 1 135px; min-width: 0; min-height: 48px; width: auto; }
  body.home-view-active:not(.game-session-active) #home .lobby-command-center { padding: 16px; }
  body.home-view-active:not(.game-session-active) .topbar .tabs { align-items: stretch; }
}
@media (max-width:600px) {
  body.home-view-active:not(.game-session-active) #home .lobby-dashboard { padding: 10px; gap: 12px; }
  body.home-view-active:not(.game-session-active) #home .lobby-primary-actions { grid-template-columns: minmax(0,1fr); }
  body.home-view-active:not(.game-session-active) #home .lobby-action-card { grid-template-rows: auto 170px auto; padding: 16px; }
  body.home-view-active:not(.game-session-active) #home .lobby-friends-banner { grid-template-columns: minmax(0,1fr); }
  body.home-view-active:not(.game-session-active) #home .lobby-friends-banner > b { grid-column: 1; grid-row: 2; }
  body.home-view-active:not(.game-session-active) #home .lobby-right-rail { grid-template-columns: minmax(0,1fr); }
}
@media (min-width:901px) and (max-width:1000px) {
  body.home-view-active:not(.game-session-active) .topbar { grid-template-columns: minmax(290px,1fr) 110px minmax(330px,1.15fr); height: 144px; min-height: 144px; padding: 8px 12px; }
  body.home-view-active:not(.game-session-active) .topbar-player-summary { grid-template-columns: 64px minmax(70px,1fr) 120px; gap: 6px; }
  body.home-view-active:not(.game-session-active) .topbar-player-summary .profile-trigger.polished-button { width: 64px !important; min-width: 64px !important; height: 84px !important; min-height: 84px !important; }
  body.home-view-active:not(.game-session-active) .topbar-player-summary .profile-trigger-frame { width: 62px !important; height: 62px !important; flex-basis: 62px !important; }
  body.home-view-active:not(.game-session-active) .topbar-wallet > span { grid-template-columns: 28px minmax(0,1fr) 30px; }
  body.home-view-active:not(.game-session-active) .topbar-wallet strong { font-size: 16px; }
  body.home-view-active:not(.game-session-active) .topbar-player-copy strong { font-size: 16px; }
}
@media (prefers-reduced-motion:reduce) {
  body.home-view-active:not(.game-session-active) :is(.lobby-dashboard,.topbar) button { animation: none; transition: none; }
}

/* Owner reference composition on desktop AND phone landscape. */
@media (min-width: 901px), (orientation: landscape) and (min-width: 560px) {
  html:has(body.home-view-active:not(.game-session-active)), body.home-view-active:not(.game-session-active) { height:100%; overflow:hidden; }
  body.home-view-active:not(.game-session-active) { --club-font:var(--ui-font); --lobby-gap:clamp(6px,.8vw,14px); }
  body.home-view-active:not(.game-session-active) .app { height:100dvh!important; min-height:0!important; padding:0!important; overflow:hidden!important; display:flex; flex-direction:column; }
  body.home-view-active:not(.game-session-active) .topbar { height:clamp(78px,15.4dvh,195px); min-height:0; flex:0 0 clamp(78px,15.4dvh,195px); grid-template-columns:minmax(0,32fr) minmax(90px,35fr) minmax(0,33fr); padding:0 clamp(10px,1.2vw,24px); gap:8px; border-radius:0; box-shadow:none; }
  body.home-view-active:not(.game-session-active) .topbar-player-summary { grid-template-columns:minmax(54px,24fr) minmax(70px,37fr) minmax(110px,39fr); gap:8px; }
  body.home-view-active:not(.game-session-active) .topbar-player-summary .profile-trigger.polished-button { width:clamp(54px,6.8vw,132px)!important; min-width:0!important; height:clamp(65px,13dvh,150px)!important; min-height:0!important; }
  body.home-view-active:not(.game-session-active) .topbar-player-summary .profile-trigger-frame { width:clamp(52px,6.6vw,128px)!important; height:clamp(52px,6.6vw,128px)!important; flex-basis:auto!important; }
  body.home-view-active:not(.game-session-active) .topbar-player-copy { gap:clamp(4px,.8dvh,8px); padding:0; }
  body.home-view-active:not(.game-session-active) .topbar-player-copy strong { font-size:clamp(14px,1.4vw,28px); }
  body.home-view-active:not(.game-session-active) .topbar-player-copy span { font-size:clamp(12px,1vw,18px); }
  body.home-view-active:not(.game-session-active) .topbar-player-copy > i { width:100%; max-width:160px; }
  body.home-view-active:not(.game-session-active) .topbar-wallet { gap:6px; }
  body.home-view-active:not(.game-session-active) .topbar-wallet > span { min-height:0; height:clamp(30px,4.6dvh,48px); grid-template-columns:28px minmax(0,1fr) 30px; }
  body.home-view-active:not(.game-session-active) .topbar-wallet strong { font-size:clamp(14px,1.35vw,26px); }
  body.home-view-active:not(.game-session-active) .topbar-wallet i { width:25px; height:25px; margin-left:2px; }
  body.home-view-active:not(.game-session-active) .topbar-wallet button { height:100%; min-height:0; width:30px; min-width:0; font-size:25px; }
  body.home-view-active:not(.game-session-active) .topbar .brand-lockup { height:100%; }
  body.home-view-active:not(.game-session-active) .topbar .brand-emblem.shared-brand { width:clamp(90px,13vw,220px)!important; height:clamp(70px,14.6dvh,180px)!important; }
  body.home-view-active:not(.game-session-active) .topbar .tabs { position:relative; gap:0; padding:0 0 19px; }
  body.home-view-active:not(.game-session-active) .topbar-quick-actions { grid-template-columns:repeat(5,minmax(0,1fr)); gap:2px; }
  body.home-view-active:not(.game-session-active) .topbar-quick-actions > button.polished-button { min-height:0; grid-template-rows:auto auto; gap:5px; padding:4px 0; }
  body.home-view-active:not(.game-session-active) .topbar-quick-actions button > span { width:clamp(32px,3.6vw,68px); height:clamp(32px,3.6vw,68px); }
  body.home-view-active:not(.game-session-active) .topbar-quick-actions button > strong { font-size:clamp(10px,.95vw,18px); font-weight:400; overflow:visible; }
  body.home-view-active:not(.game-session-active) .topbar .main-menu-toggle { position:absolute; bottom:0; right:0; min-height:20px; height:20px; min-width:0!important; padding:0 9px; font-size:12px; background:transparent; border:0; }
  body.home-view-active:not(.game-session-active) #home { height:0!important; min-height:0; flex:1 1 0!important; overflow:hidden!important; }
  body.home-view-active:not(.game-session-active) #home .lobby-dashboard { height:100%!important; min-height:0!important; grid-template-columns:minmax(0,15fr) minmax(0,56fr) minmax(0,26fr)!important; grid-template-rows:minmax(0,1fr); gap:var(--lobby-gap); padding:var(--lobby-gap); overflow:visible!important; }
  body.home-view-active:not(.game-session-active) #home .lobby-side-rail { display:flex; flex-direction:column; padding:0; border:0; border-radius:0; background:linear-gradient(#03130e,#000d0a); min-height:0; }
  body.home-view-active:not(.game-session-active) #home :is(.lobby-player-heading,.lobby-progress-list button) { display:grid; grid-template-columns:clamp(24px,2.6vw,45px) minmax(0,1fr); min-height:44px; height:clamp(44px,8.2dvh,94px); padding:6px clamp(6px,1vw,18px); gap:7px; border-radius:0; background:transparent; border:0; border-bottom:1px solid #bb913b26; text-transform:uppercase; }
  body.home-view-active:not(.game-session-active) #home .lobby-player-heading { border:1px solid #c69132; border-radius:12px; background:linear-gradient(120deg,#342c19,#05120d); box-shadow:inset 0 1px 5px #efdc9670; }
  body.home-view-active:not(.game-session-active) #home :is(.lobby-player-heading,.lobby-progress-list button) strong { font-size:clamp(12px,1.25vw,24px); line-height:1.15; font-weight:400; text-transform:uppercase; }
  body.home-view-active:not(.game-session-active) #home .lobby-feature-icon { width:100%; height:36px; min-width:0; }
  body.home-view-active:not(.game-session-active) #home .lobby-progress-list { display:flex; flex-direction:column; flex:0 0 auto; gap:0; }
  body.home-view-active:not(.game-session-active) #home .lobby-progress-list small { display:none; }
  body.home-view-active:not(.game-session-active) #home .lobby-tournament-promo { min-height:0; display:grid; align-content:center; gap:8px; margin:auto 0 10px; padding:clamp(8px,1vw,18px); border:1px solid #906521; background:linear-gradient(145deg,#11251b,#020e0b)!important; }
  body.home-view-active:not(.game-session-active) #home .lobby-tournament-promo > strong { font-size:clamp(14px,1.2vw,23px); }
  body.home-view-active:not(.game-session-active) #home .lobby-tournament-promo > small { font-size:clamp(12px,.9vw,17px); }
  body.home-view-active:not(.game-session-active) #home .lobby-tournament-promo button { min-height:44px; font-size:clamp(12px,1vw,19px); }
  body.home-view-active:not(.game-session-active) #home .lobby-command-center { display:grid; grid-template-columns:minmax(0,1fr); grid-template-rows:minmax(0,2.7fr) minmax(100px,1fr); padding:0; gap:var(--lobby-gap); min-height:0; border:0; border-radius:0; background:none; }
  body.home-view-active:not(.game-session-active) #home .lobby-command-center::before { content:none; }
  body.home-view-active:not(.game-session-active) #home.lobby-layer-active :is(.lobby-command-center,.lobby-right-rail) { display:none!important; }
  body.home-view-active:not(.game-session-active) #home .lobby-command-center { grid-column:2; grid-row:1; align-items:stretch; }
  body.home-view-active:not(.game-session-active) #home .lobby-side-rail { grid-column:1; grid-row:1; }
  body.home-view-active:not(.game-session-active) #home .lobby-right-rail { grid-column:3; grid-row:1; }
  body.home-view-active:not(.game-session-active) #home .lobby-play-area { grid-column:1; grid-row:1; }
  body.home-view-active:not(.game-session-active) #home .lobby-recent-section { grid-column:1; grid-row:2; }
  body.home-view-active:not(.game-session-active) #home .lobby-progress-list { flex-wrap:nowrap; }
  body.home-view-active:not(.game-session-active) #home .lobby-progress-list { order:1; }
  body.home-view-active:not(.game-session-active) #home .lobby-side-rail .lobby-progress-list { display:flex; flex-direction:column; }
  body.home-view-active:not(.game-session-active) #home .lobby-tournament-promo { order:2; }
  body.home-view-active:not(.game-session-active) #home .lobby-progress-list button { min-width:0; }
  body.home-view-active:not(.game-session-active) #home :is(#lobbyRewardsBtn,#lobbyCatalogBtn) { display:none; }
  body.home-view-active:not(.game-session-active) #home :is(.lobby-player-heading,.lobby-progress-list button) { flex:0 0 auto; }
  body.home-view-active:not(.game-session-active) #home .lobby-admin-shortcut:not(.hidden) { background:transparent!important; }
  body.home-view-active:not(.game-session-active) #home .lobby-play-area { display:grid; grid-template-rows:auto minmax(0,1fr) minmax(70px,.4fr); min-height:0; gap:var(--lobby-gap); border:1px solid #78551f; border-radius:20px; padding:clamp(10px,1vw,20px); background:linear-gradient(135deg,#031610,#000c09); }
  body.home-view-active:not(.game-session-active) #home .lobby-welcome { min-height:0; padding:0 clamp(3px,1vw,18px); margin:0; gap:5px; }
  body.home-view-active:not(.game-session-active) #home .lobby-welcome h2 { color:#f3bf61; font-size:clamp(16px,1.5vw,30px); font-weight:700; line-height:1.15; text-transform:uppercase; letter-spacing:.01em; }
  body.home-view-active:not(.game-session-active) #home .lobby-welcome p { color:#dfc49a; font-size:clamp(12px,1vw,19px); line-height:1.2; margin:5px 0; }
  body.home-view-active:not(.game-session-active) #home .lobby-primary-actions { min-height:0; display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:var(--lobby-gap); }
  body.home-view-active:not(.game-session-active) #home .lobby-action-card { min-height:0; grid-template-columns:minmax(0,1fr); grid-template-rows:auto minmax(0,1fr) auto; padding:clamp(8px,1.5vw,30px); gap:0; border:1px solid #bd852e; border-radius:17px; background:radial-gradient(ellipse at 50% 60%,#125028,#02190d); box-shadow:inset 0 1px #e2ca8155; }
  body.home-view-active:not(.game-session-active) #home .rooms-card { background:radial-gradient(ellipse at 50% 60%,#0c324a,#00121d); }
  body.home-view-active:not(.game-session-active) #home .lobby-action-card > div:nth-child(2) { grid-row:1; grid-column:1; }
  body.home-view-active:not(.game-session-active) #home .lobby-action-card .eyebrow { display:none; }
  body.home-view-active:not(.game-session-active) #home .lobby-action-card h3 { font-size:clamp(16px,1.5vw,30px); color:#efc276; text-transform:uppercase; font-weight:400; margin:0 0 5px; }
  body.home-view-active:not(.game-session-active) #home .lobby-action-card p { color:#ebd2aa; font-size:clamp(12px,1vw,18px); line-height:1.2; }
  body.home-view-active:not(.game-session-active) #home .lobby-action-art { grid-column:1; grid-row:2; height:100%; min-height:0; width:100%; transform:none; }
  body.home-view-active:not(.game-session-active) #home .lobby-action-art img { width:100%; height:100%; object-fit:contain; mix-blend-mode:normal; }
  body.home-view-active:not(.game-session-active) #home :is(.lobby-action-card > button,.lobby-vip-card button) { grid-row:3; grid-column:1; min-height:44px; height:clamp(44px,6.2dvh,66px); padding:5px 12px; border:1px solid #d9a448; border-radius:11px; font-size:clamp(14px,1.4vw,27px); font-weight:400; text-transform:uppercase; color:#160f04; text-shadow:0 1px #fff3; background:linear-gradient(#daaa59,#b97a2f); box-shadow:inset 0 1px 3px #ffe2a8,0 2px 4px #000; }
  body.home-view-active:not(.game-session-active) #home .lobby-friends-banner { min-height:0; height:100%; margin:0; grid-template-columns:minmax(0,1fr) clamp(50px,7vw,120px) minmax(0,1.1fr); grid-template-rows:minmax(0,1fr); gap:10px; padding:clamp(8px,1vw,20px); border:1px solid #a37330; border-radius:16px; background:linear-gradient(135deg,#291a35,#0d0c16); }
  body.home-view-active:not(.game-session-active) #home .lobby-friends-banner strong { font-size:clamp(14px,1.4vw,27px); color:#efc276; text-transform:uppercase; font-weight:400; }
  body.home-view-active:not(.game-session-active) #home .lobby-friends-banner small { font-size:clamp(12px,1vw,18px); color:#ecd19b; line-height:1.25; }
  body.home-view-active:not(.game-session-active) #home .lobby-friends-banner > b { grid-column:3; grid-row:1; padding:10px 7px; font-size:clamp(12px,1vw,19px); text-transform:uppercase; color:#f4ce79; border:1px solid #b78a41; background:#080d10; font-weight:400; }
  body.home-view-active:not(.game-session-active) #home .lobby-recent-section { min-height:0; display:grid; grid-template-rows:auto minmax(0,1fr); gap:5px; margin:0; border:1px solid #78551f; border-radius:18px; padding:7px 12px 12px; background:linear-gradient(135deg,#081c11,#000c09); }
  body.home-view-active:not(.game-session-active) #home .lobby-recent-section > header { position:relative; min-height:24px; justify-content:center; }
  body.home-view-active:not(.game-session-active) #home .lobby-recent-section h3 { font-size:clamp(14px,1.2vw,24px); text-transform:uppercase; color:#f3bf61; font-weight:400; }
  body.home-view-active:not(.game-session-active) #home .lobby-recent-section > header button { position:absolute; right:0; top:0; min-height:24px; padding:0 6px; font-size:12px; }
  body.home-view-active:not(.game-session-active) #home .lobby-recent-matches { min-height:0; max-height:none; grid-template-columns:repeat(4,minmax(0,1fr)); overflow:visible; align-items:stretch; }
  body.home-view-active:not(.game-session-active) #home .lobby-recent-matches > p { align-self:center; text-align:center; color:#d8bf92; font-size:clamp(12px,1vw,18px); }
  body.home-view-active:not(.game-session-active) #home .lobby-match-row { min-height:0; grid-template-columns:minmax(0,1fr); grid-template-rows:auto auto auto auto; gap:3px; padding:6px; text-align:center; }
  body.home-view-active:not(.game-session-active) #home .lobby-match-row :is(.match-place,b,em) { grid-column:1; justify-self:center; font-size:clamp(12px,1vw,18px); }
  body.home-view-active:not(.game-session-active) #home .lobby-match-row > div strong { font-size:clamp(12px,.9vw,17px); white-space:normal; }
  body.home-view-active:not(.game-session-active) #home .lobby-match-row > div small { font-size:12px; }
  body.home-view-active:not(.game-session-active) #home .lobby-right-rail { display:grid; grid-template-columns:minmax(0,1fr); grid-template-rows:minmax(130px,1.05fr) minmax(180px,1.45fr) minmax(115px,1fr); gap:var(--lobby-gap); min-height:0; }
  body.home-view-active:not(.game-session-active) #home .lobby-summary-card { min-height:0; padding:clamp(8px,.8vw,16px); display:grid; grid-template-rows:auto minmax(0,1fr); gap:8px; background:linear-gradient(135deg,#092719,#03140e); border:1px solid #986923; }
  body.home-view-active:not(.game-session-active) #home .lobby-summary-card > header { position:relative; justify-content:center; font-size:clamp(14px,1.2vw,24px); text-transform:uppercase; font-weight:400; }
  body.home-view-active:not(.game-session-active) #home .lobby-summary-card > header button { position:absolute; right:0; width:24px; height:24px; min-height:24px; padding:0; }
  body.home-view-active:not(.game-session-active) #home .lobby-stat-grid { margin:0; min-height:0; }
  body.home-view-active:not(.game-session-active) #home .lobby-stat-grid > div { min-height:0; }
  body.home-view-active:not(.game-session-active) #home .lobby-stat-grid strong { font-size:clamp(20px,1.9vw,37px); font-weight:400; }
  body.home-view-active:not(.game-session-active) #home .lobby-stat-grid span { font-size:clamp(12px,1vw,18px); color:#e0bd85; }
  body.home-view-active:not(.game-session-active) #home .lobby-vip-card { min-height:0; display:flex; flex-direction:column; gap:5px; padding:clamp(10px,1.1vw,22px)!important; background:linear-gradient(130deg,#08100e,#0f1110)!important; border:1px solid #986923; }
  body.home-view-active:not(.game-session-active) #home .lobby-vip-card > span { font-size:clamp(15px,1.4vw,27px); text-transform:uppercase; color:#f0c073; }
  body.home-view-active:not(.game-session-active) #home .lobby-vip-card > strong { color:#d9bd96; font-size:clamp(12px,1vw,18px); }
  body.home-view-active:not(.game-session-active) #home .lobby-vip-card ul { position:relative; width:67%; gap:clamp(3px,.7dvh,9px); margin:10px 0; font-size:clamp(12px,.85vw,17px); line-height:1.2; color:#e5bc68; }
  body.home-view-active:not(.game-session-active) #home .lobby-vip-card button { margin-top:auto; width:100%; flex-shrink:0; }
  body.home-view-active:not(.game-session-active) #home .lobby-vip-art { position:absolute; right:0; bottom:23%; width:46%; height:65%; object-fit:contain; pointer-events:none; }
  body.home-view-active:not(.game-session-active) #home .lobby-daily-card { position:relative; min-height:0; display:flex; flex-direction:column; align-items:flex-start; gap:10px; padding:clamp(10px,1.1vw,22px); border:1px solid #986923; background:linear-gradient(135deg,#081810,#03110c); }
  body.home-view-active:not(.game-session-active) #home .lobby-daily-card > div { position:relative; z-index:1; }
  body.home-view-active:not(.game-session-active) #home .lobby-daily-card strong { font-size:clamp(14px,1.3vw,26px); text-transform:uppercase; color:#f0c073; }
  body.home-view-active:not(.game-session-active) #home .lobby-daily-card small { color:#dfc092; font-size:clamp(12px,1vw,18px); margin-top:8px; }
  body.home-view-active:not(.game-session-active) #home .lobby-daily-art { position:absolute; right:1%; bottom:4%; width:47%; height:80%; object-fit:contain; pointer-events:none; }
  body.home-view-active:not(.game-session-active) #home .lobby-daily-card button { position:relative; z-index:1; width:47%; margin-top:auto; min-height:44px; font-size:clamp(12px,1.2vw,23px); text-transform:uppercase; background:linear-gradient(#173e20,#031e0c); }
  body.home-view-active:not(.game-session-active) #home .lobby-quick-button { display:none; }
  body.home-view-active:not(.game-session-active) .topbar .main-menu-panel { inset:8px 8px auto auto!important; width:min(700px,94vw)!important; height:auto!important; max-height:calc(100dvh - 16px); overflow:visible!important; grid-template-columns:repeat(2,minmax(0,1fr))!important; padding:12px!important; gap:6px!important; border-radius:14px; }
  body.home-view-active:not(.game-session-active) .main-menu-heading { grid-column:1/-1; position:static; padding:0; }
}
.reference-icon { width:75%; height:75%; display:block; margin:auto; color:#e3ae49; filter:drop-shadow(0 2px 1px #0009); }
.lobby-friends-emblem { display:none; }
.lobby-daily-art { width:44px; height:44px; object-fit:contain; }
.lobby-vip-art { position:absolute; width:75px; height:80px; object-fit:contain; right:10px; top:10px; pointer-events:none; }
@media (min-width:901px) {
  body.home-view-active:not(.game-session-active) :is(.lobby-dashboard,.topbar) button.polished-button::after { content:none; }
  body.home-view-active:not(.game-session-active) .topbar .brand-emblem { display:block; }
  .lobby-friends-emblem { display:block; width:100%; height:clamp(40px,8dvh,85px); max-height:100%; align-self:center; }
  body.home-view-active:not(.game-session-active) #home #lobbyAdminBtn strong { font-size:clamp(11px,1.03vw,20px); white-space:nowrap; }
  body.home-view-active:not(.game-session-active) #home :is(p,small,.lobby-stat-grid span,.lobby-daily-card strong,.lobby-tournament-promo strong) { font-weight:400; }
  body.home-view-active:not(.game-session-active) #home .lobby-vip-card ul { width:60%; font-size:clamp(12px,.78vw,17px); }
  body.home-view-active:not(.game-session-active) #home .lobby-vip-art { width:38%; height:62%; top:auto; right:2%; }
}
@media (min-width:901px) and (max-height:650px) {
  body.home-view-active:not(.game-session-active) .topbar-quick-actions button > span { width:min(3.6vw,6.5dvh); height:min(3.6vw,6.5dvh); }
  body.home-view-active:not(.game-session-active) .topbar-player-summary .profile-trigger-frame { width:64px!important; height:64px!important; }
  body.home-view-active:not(.game-session-active) #home .lobby-right-rail { grid-template-rows:minmax(105px,1fr) minmax(190px,1.65fr) minmax(95px,.9fr); }
  body.home-view-active:not(.game-session-active) #home .lobby-vip-card { padding:8px!important; gap:3px; }
  body.home-view-active:not(.game-session-active) #home .lobby-vip-card ul { width:75%; margin:4px 0; gap:3px; font-size:12px; }
  body.home-view-active:not(.game-session-active) #home .lobby-vip-art { width:24%; height:45%; }
  body.home-view-active:not(.game-session-active) #home .lobby-daily-card { padding:8px; gap:3px; }
  body.home-view-active:not(.game-session-active) #home .lobby-daily-card small { margin-top:3px; }
  body.home-view-active:not(.game-session-active) #home .lobby-tournament-promo { padding:8px; gap:4px; margin-bottom:0; }
  body.home-view-active:not(.game-session-active) #home .lobby-tournament-promo > span { font-size:10px; }
}

/* Phone landscape: keep the reference's three columns, use compact spacing,
   and remove the duplicate bottom dock, not the actual navigation actions. */
@media (orientation:landscape) and (min-width:560px) and (max-width:1200px) and (max-height:600px) {
 body.home-view-active:not(.game-session-active) { --lobby-gap:5px; }
 body.home-view-active:not(.game-session-active) .app { width:100%; max-width:none; padding:env(safe-area-inset-top) env(safe-area-inset-right) env(safe-area-inset-bottom) env(safe-area-inset-left)!important; }
 body.home-view-active:not(.game-session-active) #mobileDock { display:none!important; }
 body.home-view-active:not(.game-session-active) .topbar { display:grid; flex-basis:62px; height:62px; min-height:62px; grid-template-columns:minmax(0,36fr) minmax(65px,18fr) minmax(0,46fr); gap:4px; padding:0 5px; }
 body.home-view-active:not(.game-session-active) .topbar-player-summary { display:grid; min-width:0; height:100%; align-items:center; grid-template-columns:42px minmax(45px,1fr) minmax(84px,1.2fr); gap:3px; }
 body.home-view-active:not(.game-session-active) .topbar-player-summary .profile-trigger.polished-button { width:42px!important; height:58px!important; padding:0; }
 body.home-view-active:not(.game-session-active) .topbar-player-summary .profile-trigger-frame { width:40px!important; height:40px!important; flex-basis:40px!important; }
 body.home-view-active:not(.game-session-active) .topbar-player-copy { display:grid; gap:4px; min-width:0; }
 body.home-view-active:not(.game-session-active) .topbar-player-copy strong { overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }
 body.home-view-active:not(.game-session-active) .topbar-player-copy strong { font-size:12px; }
 body.home-view-active:not(.game-session-active) .topbar-player-copy span { font-size:10px; }
 body.home-view-active:not(.game-session-active) .topbar-wallet { display:grid; gap:3px; }
 body.home-view-active:not(.game-session-active) .topbar-wallet > span { display:grid; align-items:center; height:25px; min-height:0; grid-template-columns:19px minmax(0,1fr) 24px; border:1px solid #63491a; border-radius:18px; background:#030f0c; }
 body.home-view-active:not(.game-session-active) .topbar-wallet i { display:grid; place-items:center; width:17px; height:17px; font-size:11px; font-style:normal; border:1px solid #9e7425; border-radius:50%; background:radial-gradient(circle at 35% 30%,#ffd76e,#9c5d10); color:#4a2804; }
 body.home-view-active:not(.game-session-active) .topbar-wallet > span:nth-child(2) i { background:radial-gradient(circle at 35% 30%,#d6f4ff,#1d79a5); }
 body.home-view-active:not(.game-session-active) .topbar-wallet strong { font-size:12px; }
 body.home-view-active:not(.game-session-active) .topbar-wallet button { width:24px; height:23px; min-height:23px; min-width:0; padding:0; border:0; background:transparent; box-shadow:none; color:#e8a938; font-size:20px; }
 body.home-view-active:not(.game-session-active) .topbar .brand-emblem.shared-brand { width:78px!important; height:58px!important; display:block; margin:0; }
 body.home-view-active:not(.game-session-active) .topbar .tabs { display:flex; padding-bottom:20px; align-items:stretch; }
 body.home-view-active:not(.game-session-active) .topbar-quick-actions { display:grid; grid-template-columns:repeat(5,minmax(0,1fr)); gap:0; }
 body.home-view-active:not(.game-session-active) .topbar-quick-actions > button.polished-button { display:grid; grid-template-rows:25px 11px; min-height:38px; padding:0; gap:1px; }
 body.home-view-active:not(.game-session-active) .topbar-quick-actions button > span { display:grid; place-items:center; width:25px; height:25px; border:1px solid #79521f; border-radius:50%; }
 body.home-view-active:not(.game-session-active) .topbar-quick-actions button > strong { display:block; font-size:9px; line-height:11px; white-space:nowrap; }
 body.home-view-active:not(.game-session-active) .topbar .main-menu-toggle { display:flex!important; min-height:20px; height:20px; font-size:11px; }
 body.home-view-active:not(.game-session-active) :is(.lobby-dashboard,.topbar) button.polished-button::after { content:none; }
 body.home-view-active:not(.game-session-active) #home .lobby-dashboard { display:grid; grid-template-columns:minmax(96px,15fr) minmax(0,58fr) minmax(150px,27fr)!important; padding:5px; gap:5px; }
 body.home-view-active:not(.game-session-active) #home .lobby-side-rail { display:flex; flex-wrap:nowrap; height:100%; min-height:0; order:initial; }
 body.home-view-active:not(.game-session-active) #home .lobby-side-rail .lobby-progress-list { display:flex; flex-direction:column; flex-wrap:nowrap; order:1; }
 body.home-view-active:not(.game-session-active) #home :is(.lobby-player-heading,.lobby-progress-list button) { height:36px; min-height:36px; grid-template-columns:20px minmax(0,1fr); padding:3px 4px; gap:3px; flex:0 0 auto; }
 body.home-view-active:not(.game-session-active) #home :is(.lobby-player-heading,.lobby-progress-list button) strong { font-size:11px!important; line-height:1.15; }
 body.home-view-active:not(.game-session-active) #home #lobbyAdminBtn strong { font-size:9px!important; white-space:normal; overflow-wrap:anywhere; }
 body.home-view-active:not(.game-session-active) #home .lobby-feature-icon { width:20px; height:25px; }
 body.home-view-active:not(.game-session-active) #home .lobby-tournament-promo { min-height:0; min-width:0; grid-template-columns:minmax(0,1fr); padding:5px; gap:3px; margin:auto 0 0; overflow:visible; }
 body.home-view-active:not(.game-session-active) #home .lobby-tournament-promo > * { min-width:0; white-space:normal; overflow-wrap:anywhere; }
 body.home-view-active:not(.game-session-active) #home .lobby-tournament-promo > span { font-size:9px; letter-spacing:0; }
 body.home-view-active:not(.game-session-active) #home .lobby-tournament-promo > strong { font-size:11px; }
 body.home-view-active:not(.game-session-active) #home .lobby-tournament-promo > small { font-size:10px; line-height:1.2; }
 body.home-view-active:not(.game-session-active) #home .lobby-tournament-promo button { min-height:30px; margin:0; font-size:11px; padding:3px; }
 body.home-view-active:not(.game-session-active) #home .lobby-command-center { min-height:0; height:100%; grid-template-rows:minmax(0,3fr) minmax(49px,.8fr); order:initial; }
 body.home-view-active:not(.game-session-active) #home .lobby-play-area { padding:6px; grid-template-rows:auto minmax(0,1fr) minmax(47px,.3fr); gap:5px; border-radius:12px; }
 body.home-view-active:not(.game-session-active) #home .lobby-welcome { flex-direction:row; padding:0 3px; }
 body.home-view-active:not(.game-session-active) #home .lobby-welcome h2 { font-size:13px; margin:0; }
 body.home-view-active:not(.game-session-active) #home .lobby-welcome p { font-size:10px; line-height:1.1; margin:3px 0; }
 body.home-view-active:not(.game-session-active) #home .lobby-action-card { padding:6px; border-radius:11px; }
 body.home-view-active:not(.game-session-active) #home .lobby-action-card h3 { font-size:12px; line-height:1.1; margin:0 0 3px; }
 body.home-view-active:not(.game-session-active) #home .lobby-action-card p { font-size:10px; line-height:1.1; }
 body.home-view-active:not(.game-session-active) #home .lobby-action-card > button { min-height:32px; height:32px; padding:3px; font-size:12px; border-radius:7px; }
 body.home-view-active:not(.game-session-active) #home .lobby-action-art { width:100%; }
 body.home-view-active:not(.game-session-active) #home .lobby-friends-banner { grid-template-columns:minmax(0,1fr) 34px minmax(0,.8fr); padding:5px; gap:4px; border-radius:10px; }
 body.home-view-active:not(.game-session-active) #home .lobby-friends-banner strong { font-size:11px; }
 body.home-view-active:not(.game-session-active) #home .lobby-friends-banner small { font-size:10px; line-height:1.1; margin-top:3px; }
 body.home-view-active:not(.game-session-active) #home .lobby-friends-banner > b { display:block; font-size:10px; padding:4px; line-height:1.15; }
 body.home-view-active:not(.game-session-active) .lobby-friends-emblem { display:block; width:34px; height:36px; }
 body.home-view-active:not(.game-session-active) #home .lobby-recent-section { padding:4px 5px; border-radius:10px; gap:2px; }
 body.home-view-active:not(.game-session-active) #home .lobby-recent-section > header { min-height:18px; margin:0; justify-content:space-between; }
 body.home-view-active:not(.game-session-active) #home .lobby-recent-section h3 { font-size:11px; }
 body.home-view-active:not(.game-session-active) #home .lobby-recent-section > header button { position:static; min-height:18px; font-size:9px; padding:0 2px; }
 body.home-view-active:not(.game-session-active) #home .lobby-recent-matches { gap:3px; }
 body.home-view-active:not(.game-session-active) #home .lobby-recent-matches > p { font-size:10px; line-height:1.1; margin:0; }
 body.home-view-active:not(.game-session-active) #home .lobby-match-row { padding:2px; gap:1px; }
 body.home-view-active:not(.game-session-active) #home .lobby-match-row :is(b,em,small,strong) { font-size:9px!important; line-height:1.1; }
 body.home-view-active:not(.game-session-active) #home .lobby-match-row .match-place { width:15px; height:15px; font-size:10px; }
 body.home-view-active:not(.game-session-active) #home .lobby-right-rail { height:100%; min-height:0; order:initial; grid-template-rows:minmax(74px,.9fr) minmax(133px,1.5fr) minmax(71px,.9fr); gap:5px; }
 body.home-view-active:not(.game-session-active) #home .lobby-summary-card { padding:5px; gap:3px; grid-row:auto; border-radius:11px; }
 body.home-view-active:not(.game-session-active) #home .lobby-summary-card > header { font-size:11px; min-height:15px; padding-right:15px; }
 body.home-view-active:not(.game-session-active) #home .lobby-summary-card > header button { width:18px; height:18px; min-height:18px; }
 body.home-view-active:not(.game-session-active) #home .lobby-stat-grid strong { font-size:16px; line-height:1; }
 body.home-view-active:not(.game-session-active) #home .lobby-stat-grid span { font-size:9px; line-height:1.1; }
 body.home-view-active:not(.game-session-active) #home .lobby-vip-card { position:relative; padding:6px!important; gap:2px; border-radius:11px; }
 body.home-view-active:not(.game-session-active) #home .lobby-vip-card > span { font-size:12px; }
 body.home-view-active:not(.game-session-active) #home .lobby-vip-card > strong { font-size:10px; line-height:1.1; }
 body.home-view-active:not(.game-session-active) #home .lobby-vip-card ul { width:79%; display:grid; list-style:none; padding:0; margin:3px 0; gap:2px; font-size:10px; font-weight:400; line-height:1.1; }
 body.home-view-active:not(.game-session-active) #home :is(p,small,.lobby-vip-card li) { font-weight:400; }
 body.home-view-active:not(.game-session-active) #home .lobby-vip-card li::before { margin-right:3px; }
 body.home-view-active:not(.game-session-active) #home .lobby-vip-card button { min-height:28px; height:28px; padding:3px; font-size:11px; }
 body.home-view-active:not(.game-session-active) #home .lobby-vip-art { width:20%; height:50%; top:auto; right:0; bottom:23%; }
 body.home-view-active:not(.game-session-active) #home .lobby-daily-card { padding:6px; gap:3px; border-radius:11px; }
 body.home-view-active:not(.game-session-active) #home .lobby-daily-card strong { font-size:11px; }
 body.home-view-active:not(.game-session-active) #home .lobby-daily-card small { font-size:10px; margin-top:3px; }
 body.home-view-active:not(.game-session-active) #home .lobby-daily-card button { min-height:28px; padding:2px; font-size:11px; width:55%; }
 body.home-view-active:not(.game-session-active) #home .lobby-daily-art { width:43%; height:68%; }
 body.home-view-active:not(.game-session-active) .topbar .main-menu-panel { inset:5px 5px auto auto!important; height:auto!important; width:min(650px,96vw)!important; padding:8px!important; grid-template-columns:repeat(3,minmax(0,1fr))!important; gap:5px!important; max-height:calc(100dvh - 10px); overflow:visible!important; }
 body.home-view-active:not(.game-session-active) .topbar .main-menu-panel button { min-height:36px; font-size:12px; }
 body.home-view-active:not(.game-session-active) .main-menu-heading { grid-column:1/-1; position:static; padding:0; }
 body.home-view-active:not(.game-session-active) .main-menu-heading #closeMainMenu { min-height:32px!important; }
}
/* Short landscape windows include browser controls and wider Android phones. */
@media (orientation:landscape) and (min-width:560px) and (max-width:1200px) and (max-height:600px) {
 body.home-view-active:not(.game-session-active) .app { margin:0; box-sizing:border-box; width:100%; }
 body.home-view-active:not(.game-session-active) #home { margin:0; padding:0; }
 body.home-view-active:not(.game-session-active) #home .lobby-right-rail { grid-template-rows:minmax(0,.85fr) minmax(0,1.6fr) minmax(0,.85fr); }
 body.home-view-active:not(.game-session-active) #home .lobby-tournament-promo { flex:0 0 auto; }
 body.home-view-active:not(.game-session-active) #home .lobby-tournament-promo { padding:4px; gap:2px; }
 body.home-view-active:not(.game-session-active) #home .lobby-tournament-promo > span { display:none; }
 body.home-view-active:not(.game-session-active) #home .lobby-tournament-promo > strong { font-size:10px; line-height:1.1; }
 body.home-view-active:not(.game-session-active) #home .lobby-tournament-promo > small { font-size:9px; line-height:1.1; }
 body.home-view-active:not(.game-session-active) #home .lobby-tournament-promo button { min-height:28px; }
 body.home-view-active:not(.game-session-active) .topbar-player-summary .profile-trigger small { max-width:40px; font-size:7px; padding:1px 2px; }
}
@media (orientation:landscape) and (min-width:560px) and (max-width:1200px) and (max-height:350px) {
 body.home-view-active:not(.game-session-active) .topbar { height:54px; min-height:54px; flex-basis:54px; }
 body.home-view-active:not(.game-session-active) .topbar-player-summary .profile-trigger.polished-button { height:52px!important; }
 body.home-view-active:not(.game-session-active) .topbar .brand-emblem.shared-brand { height:50px!important; }
 body.home-view-active:not(.game-session-active) #home :is(.lobby-player-heading,.lobby-progress-list button) { height:30px; min-height:30px; }
 body.home-view-active:not(.game-session-active) #home .lobby-right-rail { grid-template-rows:58px minmax(0,1fr) 59px; gap:3px; }
 body.home-view-active:not(.game-session-active) #home .lobby-summary-card { padding:3px; gap:1px; }
 body.home-view-active:not(.game-session-active) #home .lobby-summary-card > header { min-height:12px; font-size:9px; }
 body.home-view-active:not(.game-session-active) #home .lobby-stat-grid strong { font-size:12px; }
 body.home-view-active:not(.game-session-active) #home .lobby-stat-grid span { font-size:8px; }
 body.home-view-active:not(.game-session-active) #home .lobby-vip-card { padding:4px!important; gap:1px; }
 body.home-view-active:not(.game-session-active) #home .lobby-vip-card ul { margin:2px 0; gap:1px; }
 body.home-view-active:not(.game-session-active) #home .lobby-daily-card { padding:4px; gap:1px; }
 body.home-view-active:not(.game-session-active) #home .lobby-daily-card small { margin-top:0; }
 body.home-view-active:not(.game-session-active) #home .lobby-daily-card button { min-height:25px; }
 body.home-view-active:not(.game-session-active) #home .lobby-daily-card strong { font-size:9px; }
 body.home-view-active:not(.game-session-active) #home .lobby-tournament-promo > span { font-size:8px; font-weight:400; }
 body.home-view-active:not(.game-session-active) #home .lobby-play-area { grid-template-rows:auto minmax(0,1fr) 60px; }
}

/* September 8 owner revision. Specific selectors override earlier reference geometry. */
body #sideMenuToggle, body #home :is(.lobby-summary-card,#lobbyLeaderboardBtn,#lobbyRewardsBtn,#lobbyAdminBtn,.fortune-preview-card) { display:none!important; }
body.home-view-active:not(.game-session-active) .app > .topbar { border:0!important; box-shadow:none!important; background:transparent; grid-template-columns:minmax(0,1fr) minmax(90px,.6fr) minmax(0,1fr); }
body.home-view-active:not(.game-session-active) .topbar :is(.topbar-wallet > span,.topbar-player-copy,.tabs,.brand-lockup) { border:0!important; box-shadow:none!important; }
body.home-view-active:not(.game-session-active) .topbar .brand-lockup { justify-self:center; width:100%; padding:0!important; min-width:0!important; }
body.home-view-active:not(.game-session-active) .topbar .brand-copy { width:100%; max-width:none; padding:0!important; }
body.home-view-active:not(.game-session-active) .topbar .brand-copy strong { min-width:0; width:100%; }
body.home-view-active:not(.game-session-active) .topbar .brand-emblem.shared-brand { width:clamp(100px,15vw,250px)!important; height:clamp(74px,15dvh,185px)!important; max-width:100%!important; }
body.home-view-active:not(.game-session-active) #home .lobby-side-rail { border:0!important; border-radius:0!important; background:transparent!important; box-shadow:none!important; display:flex; flex-direction:column; min-height:0; }
body.home-view-active:not(.game-session-active) #home .lobby-nav-scroll { flex:1 1 0; min-height:0; overflow-y:auto; overflow-x:hidden; scrollbar-width:thin; scrollbar-color:#92733b transparent; padding:3px; scroll-padding:5px; }
body.home-view-active:not(.game-session-active) #home .lobby-nav-scroll .lobby-progress-list { display:flex; flex-direction:column; gap:2px; }
body.home-view-active:not(.game-session-active) #home .lobby-nav-scroll button { order:0!important; border:0!important; box-shadow:none!important; border-radius:8px; text-align:center; background:transparent; }
body.home-view-active:not(.game-session-active) #home .lobby-nav-scroll #lobbyCatalogBtn { display:grid!important; }
body.home-view-active:not(.game-session-active) #home .lobby-nav-scroll :is(button:hover,button:focus-visible,#lobbyProfileBtn) { background:linear-gradient(90deg,#d3a65320,transparent); color:#f5d68e; }
body.home-view-active:not(.game-session-active) #home .lobby-nav-scroll button strong { text-transform:none!important; font-weight:600!important; }
body.home-view-active:not(.game-session-active) #home .lobby-tournament-promo { flex:0 0 auto; text-align:center; margin:8px 0 0; background:radial-gradient(ellipse at top,#8460304d,transparent 65%),linear-gradient(145deg,#19251b,#060e0b)!important; border:1px solid #977542!important; box-shadow:inset 0 1px #f4d59645!important; }
body.home-view-active:not(.game-session-active) #home .tournament-premium-icon { width:40px; height:40px; color:#eac47a; justify-self:center; filter:drop-shadow(0 3px 7px #dba84c40); }
body.home-view-active:not(.game-session-active) #home .lobby-right-rail { grid-template-rows:minmax(0,2.4fr) minmax(0,1fr)!important; }
body.home-view-active:not(.game-session-active) #home :is(.lobby-welcome,.lobby-action-card,.lobby-friends-banner,.lobby-daily-card,.lobby-shop-widget) { text-align:center; }
body.home-view-active:not(.game-session-active) #home .lobby-welcome { justify-content:center; }
body.home-view-active:not(.game-session-active) #home .lobby-welcome > div { width:100%; text-align:center; }
body.home-view-active:not(.game-session-active) #home .lobby-daily-card > div { text-align:center; }
body.home-view-active:not(.game-session-active) #home .lobby-shop-widget { min-height:0; min-width:0; display:grid; grid-template-rows:auto minmax(0,1fr) auto auto auto; gap:7px; padding:16px; border:1px solid #997239; background:radial-gradient(ellipse at 50% 30%,#203b2c,#07140f 75%); border-radius:16px; }
body #home .lobby-shop-widget header { display:flex; justify-content:center; align-items:center; flex-wrap:wrap; gap:5px; color:#efc276; font-size:clamp(12px,1.2vw,22px); }
body #home .product-new { background:#ceab62; color:#102019; border-radius:12px; font-size:10px; padding:2px 7px; }
body #home .product-new[hidden] { display:none; }
body #home .lobby-product-art { min-height:0; min-width:0; display:grid; place-items:center; touch-action:pan-y; }
body #home .lobby-product-art :is(img,svg) { width:100%; height:100%; min-height:0; object-fit:contain; max-height:100%; color:#d1a551; }
body #home .lobby-product-art svg { max-width:110px; }
body #home .lobby-product-copy { display:grid; gap:3px; min-width:0; overflow-wrap:anywhere; }
body #home .lobby-product-copy strong { font-size:clamp(12px,1.15vw,22px); line-height:1.2; color:#f2dba7; }
body #home .lobby-product-copy small { font-size:clamp(11px,1vw,18px); color:#e1c89a; }
body #home #lobbyVipBtn { min-height:44px; font:600 15px var(--ui-font); padding:5px; border-radius:9px; color:#23190a; background:linear-gradient(#e1bb72,#af782e); border:1px solid #e3bc72; }
body #home .lobby-product-controls { display:grid; grid-template-columns:44px minmax(0,1fr) 44px; align-items:center; gap:3px; }
body #home .lobby-product-controls button { min-height:32px; height:32px; padding:0; font-size:23px; color:#edcb89; background:transparent; border:0; box-shadow:none; }
body #home .lobby-product-controls span { font-size:11px; color:#d0bb95; }
body #home .lobby-product-controls button:disabled { opacity:.3; }
@media (orientation:portrait) and (max-width:900px) {
 body.home-view-active:not(.game-session-active) .topbar .brand-emblem.shared-brand { max-width:100%!important; }
 body.home-view-active:not(.game-session-active) #home .lobby-nav-scroll { flex-basis:auto; max-height:310px; }
 body.home-view-active:not(.game-session-active) #home .lobby-shop-widget { min-height:280px; }
}
body .catalog-product-highlight { outline:2px solid #efc276; outline-offset:-2px; }
body #mainMenuPanel[data-group] { inset:0!important; margin:auto!important; height:fit-content!important; width:min(480px,calc(100vw - 24px))!important; max-height:calc(100dvh - 24px)!important; border-radius:16px!important; }
body #mainMenuPanel[data-group] button { text-align:center; font-family:var(--ui-font); }
body #mainMenuPanel[data-group="world"] :is(#howToPlayBtn,#tutorialBtn,#supportMenuButton,#communityChatTab),
body #mainMenuPanel[data-group="help"] :is(#worldFortuneBtn,#socialHubTab,#lotteryTab,#communityChatTab) { display:none!important; }
@media (min-width:901px) and (min-height:601px) {
 body.home-view-active:not(.game-session-active) .topbar-player-summary .profile-trigger-frame { width:clamp(64px,7.2vw,140px)!important; height:clamp(64px,7.2vw,140px)!important; }
 body.home-view-active:not(.game-session-active) .topbar-player-summary .profile-trigger.polished-button { width:clamp(66px,7.4vw,144px)!important; }
}
@media (orientation:landscape) and (min-width:560px) and (max-width:1200px) and (max-height:600px) {
 body.home-view-active:not(.game-session-active) .app > .topbar { height:72px; min-height:72px; flex-basis:72px; grid-template-columns:minmax(0,1fr) 92px minmax(0,1fr); }
 body.home-view-active:not(.game-session-active) .topbar .brand-emblem.shared-brand { width:92px!important; height:70px!important; }
 body.home-view-active:not(.game-session-active) .topbar-player-summary { grid-template-columns:54px minmax(42px,1fr) minmax(74px,1.2fr); }
 body.home-view-active:not(.game-session-active) .topbar-player-summary .profile-trigger.polished-button { width:54px!important; height:70px!important; }
 body.home-view-active:not(.game-session-active) .topbar-player-summary .profile-trigger-frame { width:52px!important; height:52px!important; flex-basis:52px!important; }
 body.home-view-active:not(.game-session-active) #home .lobby-nav-scroll button { min-height:36px; height:36px; padding:4px 2px; grid-template-columns:18px minmax(0,1fr); gap:2px; }
 body.home-view-active:not(.game-session-active) #home .lobby-nav-scroll button strong { font-size:10px!important; }
 body.home-view-active:not(.game-session-active) #home .lobby-nav-scroll .lobby-feature-icon { min-width:0; width:18px; height:22px; font-size:18px; }
 body.home-view-active:not(.game-session-active) #home .lobby-tournament-promo { padding:5px; gap:2px; margin-top:4px; }
 body.home-view-active:not(.game-session-active) #home .tournament-premium-icon { width:25px; height:25px; }
 body.home-view-active:not(.game-session-active) #home .lobby-shop-widget { padding:5px; gap:3px; border-radius:11px; }
 body #home .lobby-shop-widget header { font-size:10px; }
 body #home .lobby-product-copy strong { font-size:11px; }
 body #home .lobby-product-copy small { font-size:10px; }
 body #home #lobbyVipBtn { min-height:30px; height:30px; font-size:11px; }
 body #home .lobby-product-controls { grid-template-columns:36px minmax(0,1fr) 36px; }
 body #home .lobby-product-controls button { min-height:26px; height:26px; }
}

/* Lottery operations: the form remains scrollable on compact admin displays. */
.lottery-schedule-layout{display:grid;grid-template-columns:minmax(260px,.8fr) minmax(0,1.2fr);gap:20px;align-items:start}
.lottery-schedule-status{border:1px solid #967440;border-radius:16px;padding:22px;background:linear-gradient(145deg,#2d1b3c,#131020);overflow:hidden}
.lottery-schedule-status>img{width:96px;height:96px;object-fit:contain;float:right;margin:0 0 12px 12px}
.lottery-schedule-status h3{font-size:24px;color:#f6d68b;margin:12px 0}
.lottery-schedule-status dl{clear:both;margin:22px 0}
.lottery-schedule-status dl>div{display:flex;justify-content:space-between;gap:12px;padding:10px 0;border-bottom:1px solid #ffffff18}
.lottery-schedule-status dt{color:#c0b5c9}
.lottery-schedule-status dd{margin:0;text-align:right;overflow-wrap:anywhere}
.lottery-schedule-layout form{min-width:0}
.lottery-schedule-layout input{min-width:0;max-width:100%}
.lottery-schedule-layout{font-family:Arial,sans-serif;line-height:1.45}
#lotteryScheduleForm .lottery-config-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
#lotteryScheduleForm label{min-width:0;display:grid;gap:6px;align-content:start}
#lotteryScheduleForm .fortune-toggle-field{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:12px;border:1px solid #384454;border-radius:10px}
#lotteryScheduleForm .fortune-toggle-field span{min-width:0}
#lotteryScheduleForm .fortune-toggle-field small{display:block;margin-top:6px;line-height:1.4}
#lotteryScheduleForm input[type=checkbox]{width:24px;height:24px;min-width:24px;min-height:24px;margin:0;flex:none;accent-color:#dbb663}
#lotteryScheduleForm .dialog-actions{display:flex;flex-wrap:wrap;gap:12px}
#lotteryScheduleForm .dialog-actions button{min-height:44px;white-space:normal}
.lottery-schedule-layout .muted{line-height:1.5}
@media(max-width:1000px){.lottery-schedule-layout{grid-template-columns:minmax(0,1fr)}.lottery-schedule-status>img{width:70px;height:70px}.lottery-schedule-status h3{font-size:21px}}
@media(max-width:480px){#lotteryScheduleForm .lottery-config-grid{grid-template-columns:minmax(0,1fr)}.lottery-schedule-status{padding:16px}}
