/* Guest presentation only. Removing cbg-guest restores the original UI. */
#guest-mobile-home, .guest-desktop-copy { display:none; }
html.cbg-guest #career-panel,
html.cbg-guest #streak-badge,
html.cbg-guest #v2-level-card,
html.cbg-guest #v2-mastery-hero,
html.cbg-guest #v2-ranked-match-card,
html.cbg-guest #cbg-notify-btn,
html.cbg-guest #cbg-notify-panel,
html.cbg-guest #v2-country-stamp-toast,
html.cbg-guest .adv-toast.is-declassified,
html.cbg-guest .adv-toast.is-miss,
html.cbg-guest .adv-toast.is-known,
html.cbg-guest [data-v2-action="campaigns"],
html.cbg-guest [data-v2-action="globe"],
html.cbg-guest [data-v2-action="skills"],
html.cbg-guest [data-v2-action="duels"],
html.cbg-guest [data-v2-action="profile"],
html.cbg-guest [data-v2-action="mastery"],
html.cbg-guest [data-v2-action="leaderboard"],
html.cbg-guest #v2-feature-section .v2-section-head p,
html.cbg-guest #v2-feature-section .v2-kicker,
html.cbg-guest #v2-hero .v2-welcome > p:not(.guest-desktop-copy),
html.cbg-guest [data-guest-account-copy] { display:none !important; }
html.cbg-guest .guest-desktop-copy { display:block; }
/* Daily question and progress appear directly above the clue card. */
.daily-question-heading { max-width:680px; margin:0 auto 14px; padding:0 4px; }
.daily-question-heading span { display:block; color:var(--paper-dim); font:600 12px/1.4 var(--font-mono); letter-spacing:.04em; }
.daily-question-heading h2 { margin:7px 0 0; color:var(--paper); font:600 clamp(21px,4vw,30px)/1.2 var(--font-display); }
html.daily-active #session-footer { display:none !important; }
@media (min-width:761px) {
  /* With account panels hidden, center the remaining guest desktop content. */
  html.cbg-guest #home-screen > .v2-hero,
  html.cbg-guest #v2-home-action-row,
  html.cbg-guest #v2-feature-section,
  html.cbg-guest .v2-quickplay-head,
  html.cbg-guest #mode-tabs,
  html.cbg-guest #modifiers-row,
  html.cbg-guest #region-picker,
  html.cbg-guest #start-btn { width:min(100%,800px); margin-left:auto; margin-right:auto; }
  html.cbg-guest #home-screen > .v2-hero,
  html.cbg-guest #v2-home-action-row { grid-template-columns:minmax(0,1fr); }
  html.cbg-guest #v2-feature-section .v2-section-head { justify-content:center; text-align:center; }
  html.cbg-guest #v2-feature-section .v2-feature-grid { grid-template-columns:repeat(3,minmax(0,1fr)) !important; }
}
@media (max-width:600px) {
  /* The original footer is retained, arranged into two phone-width rows. */
  .site-footer { width:100%; max-width:100%; display:grid; grid-template-columns:repeat(5,minmax(0,1fr)); gap:14px 6px; box-sizing:border-box; padding:24px 0 12px; text-align:center; }
  .site-footer a { min-width:0; font-size:11px; line-height:1.35; overflow-wrap:anywhere; }
  /* Keep the brand on its own line, with controls and scores below it. */
  .topbar { display:flex; flex-direction:column; align-items:stretch; gap:12px; }
  .topbar .brand { width:100%; min-width:0; }
  .topbar .brand h1 { font-size:clamp(18px,5vw,23px) !important; line-height:1.12; overflow-wrap:anywhere; }
  .topbar .brand { flex:0 1 auto; }
  .topbar .brand > div { min-width:0; }
  .topbar .tagline { font-size:10px; }
  .topbar-right { width:100%; display:flex; flex-wrap:wrap; gap:8px 12px; justify-content:flex-end; align-items:center; }
  .topbar-right .streak-badge { flex:0 0 48px; width:48px; height:48px; transform:none; }
  .topbar-right .stats:not([hidden]) { order:2; flex:0 0 100%; display:flex; justify-content:space-evenly; gap:4px; }
  .topbar-right .stat { min-width:0; flex:1 1 0; }
  .topbar-right .stat-label { font-size:10px; letter-spacing:.04em; }
  .topbar-right #home-btn, .topbar-right #account-btn, .topbar-right #theme-toggle-btn { min-height:44px; }
  .topbar-right #account-btn { margin-left:auto; max-width:100%; }
  html.cbg-guest #home-screen > :not(#guest-mobile-home) { display:none !important; }
  html.cbg-guest #guest-mobile-home { display:block; padding:28px 4px; }
  html.cbg-guest .topbar { align-items:stretch; }
  html.cbg-guest .topbar .brand { min-width:0; }
  html.cbg-guest .topbar .brand h1 { font-size:20px; }
  html.cbg-guest .topbar .tagline,
  html.cbg-guest #theme-toggle-btn { display:none !important; }
  html.cbg-guest .topbar-right { gap:8px; flex-wrap:wrap; justify-content:flex-end; }
  html.cbg-guest #account-btn { min-height:44px; white-space:nowrap; }
  #guest-mobile-home h2 { font:600 clamp(30px,8.5vw,40px)/1.12 var(--font-display); margin:12px 0 18px; letter-spacing:-.025em; }
  #guest-mobile-home p { font:400 16px/1.6 var(--font-body); color:var(--paper-dim); margin:0 0 26px; }
  #guest-mobile-home button { font-family:var(--font-body); touch-action:manipulation; }
  #guest-mobile-home .guest-primary,
  #guest-mobile-home .guest-secondary { display:block; width:100%; min-height:54px; border-radius:10px; padding:14px; font-size:16px; cursor:pointer; }
  #guest-mobile-home .guest-primary { background:var(--yellow); color:#15130f; border:2px solid #15130f; box-shadow:3px 3px 0 #15130f; font-weight:700; }
  #guest-mobile-home .guest-secondary { background:transparent; color:var(--paper); border:1px solid var(--paper-dim); margin-top:16px; }
  #guest-mobile-home .guest-how-to { margin-top:30px; padding:20px; border:1px solid var(--paper-dim); border-radius:14px; }
  #guest-mobile-home .guest-how-to h3 { margin:0 0 10px; color:var(--paper); font:600 22px/1.2 var(--font-display); }
  #guest-mobile-home .guest-how-to p { margin:0; font-size:14px; line-height:1.55; }
  #guest-mobile-home .guest-back { min-height:44px; padding:8px 0; background:none; color:var(--paper); border:0; font-size:15px; cursor:pointer; }
  #guest-mobile-home .guest-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:12px; }
  #guest-mobile-home .guest-quiz { text-align:left; padding:16px 12px; min-height:112px; border:1px solid var(--paper-dim); border-radius:12px; color:var(--paper); background:transparent; cursor:pointer; }
  #guest-mobile-home .guest-quiz strong { display:block; font-size:16px; margin-bottom:7px; }
  #guest-mobile-home .guest-quiz span { display:block; font-size:13px; line-height:1.45; color:var(--paper-dim); }
  #guest-mobile-home button:focus-visible { outline:3px solid var(--teal); outline-offset:4px; }
  #guest-mobile-home button:disabled { opacity:.55; cursor:wait; }
  #guest-mobile-home #guest-status { margin:16px 0 0; font-size:14px; }
  html.cbg-guest #answer-zone input { font-size:16px; }
  html.cbg-guest #answer-zone button { min-height:48px; }

  /* Signed-in home: compact, readable choices on a narrow screen. */
  html:not(.cbg-guest) #home-screen { min-width:0; }
  html:not(.cbg-guest) .v2-hero { grid-template-columns:minmax(0,1fr); gap:12px; margin:10px 0 16px; }
  html:not(.cbg-guest) .v2-welcome { padding:20px; }
  html:not(.cbg-guest) .v2-welcome h2 { font-size:clamp(29px,8vw,38px); line-height:1.08; overflow-wrap:normal; }
  html:not(.cbg-guest) .v2-welcome p { font-size:14px; line-height:1.5; }
  html:not(.cbg-guest) .v2-hero-actions { gap:8px; margin-top:16px; }
  html:not(.cbg-guest) .v2-hero-actions button { min-height:44px; max-width:100%; white-space:normal; }
  html:not(.cbg-guest) .v2-level-card { padding:18px; min-height:0; gap:8px; }
  html:not(.cbg-guest) .v2-level-number { font-size:42px; }
  html:not(.cbg-guest) .v2-mini-stats { margin-top:10px; }
  html:not(.cbg-guest) .v2-section { margin:26px 0; }
  html:not(.cbg-guest) .v2-section-head { display:block; }
  html:not(.cbg-guest) .v2-section-head h2 { font-size:26px; line-height:1.15; }
  html:not(.cbg-guest) .v2-section-head p { margin-top:8px; line-height:1.5; }
  html:not(.cbg-guest) .v2-feature-grid { grid-template-columns:minmax(0,1fr) !important; gap:8px; }
  html:not(.cbg-guest) .v2-feature-card { min-width:0; min-height:64px; padding:12px 16px; display:flex; align-items:center; gap:12px; border-radius:14px; }
  html:not(.cbg-guest) .v2-feature-icon { flex:0 0 26px; font-size:23px; line-height:1; margin:0; text-align:center; }
  html:not(.cbg-guest) .v2-feature-card h3 { min-width:0; margin:0; font-size:18px; line-height:1.2; }
  html:not(.cbg-guest) .v2-feature-card p,
  html:not(.cbg-guest) .v2-feature-card .v2-card-meta { display:none; }
  html:not(.cbg-guest) .v2-quickplay-head h2 { font-size:26px; }
  html:not(.cbg-guest) .mode-tabs { grid-template-columns:repeat(2,minmax(0,1fr)) !important; gap:8px !important; }
  html:not(.cbg-guest) .mode-tab { min-width:0; min-height:54px; padding:10px 12px !important; font-size:14px; white-space:normal; }
  html:not(.cbg-guest) .modifiers-row { gap:6px; }
  html:not(.cbg-guest) .mod-chip { max-width:100%; }
}
