/* The live queue is a quiet working surface. These rules end with the wait. */
body.spar-waiting{
  --bg:#181819;--bg-elev:#222223;--bg-card:#202021;
  --border:#38383a;--border-strong:#5a5a5d;
  --text:#f3f3f0;--text-dim:#bdbdbd;--text-ghost:#a2a2a4;
  --bar-bg:#181819;--shadow-lg:none;--accent-glow:transparent;
  --wait-button:#f0f0ed;--wait-button-text:#202021;
  font-family:"Helvetica Neue",Helvetica,Arial,sans-serif;
  font-size:16px;line-height:1.5;background:var(--bg);color:var(--text);
}
body.spar-waiting .shell,
body.spar-waiting .shell :is(h1,h2,p,span,strong,button,summary,input),
body.spar-waiting .spar-room{font-family:"Helvetica Neue",Helvetica,Arial,sans-serif !important}
[data-theme="light"] body.spar-waiting{
  --bg:#f7f7f4;--bg-elev:#f0f0ed;--bg-card:#fff;
  --border:#deded9;--border-strong:#ababaa;
  --text:#242424;--text-dim:#626262;--text-ghost:#6e6e6b;
  --bar-bg:#f7f7f4;--wait-button:#252525;--wait-button-text:#fff;
}
/* Keep the restored map as quiet atmosphere behind the working layout. */
body.spar-waiting #presenceMapBg{opacity:.12 !important}
body.spar-waiting .wrap.spar-search-layout{
  display:grid;grid-template-columns:minmax(0,820px) 320px;
  width:100%;max-width:1248px;margin:0 auto;
  align-items:start;align-content:start;justify-content:center;gap:32px;
  padding:88px 32px 80px !important;
}
body.spar-waiting .wrap.spar-search-layout .shell{
  width:100%;max-width:none;min-width:0;padding:0;text-align:left;
}
body.spar-waiting .wait-heading{display:flex;align-items:center;justify-content:space-between;gap:24px}
body.spar-waiting .wait-heading>div{min-width:0}
body.spar-waiting .wait-kicker{
  margin:0 0 10px;color:var(--text-ghost);font-size:12px;line-height:1.4;
  font-weight:600;letter-spacing:.1em;text-transform:uppercase;
}
body.spar-waiting .wrap.spar-search-layout .wait-heading h1{
  margin:0;font-size:clamp(28px,2.7vw,36px);font-weight:600;
  line-height:1.14;letter-spacing:-.035em;text-wrap:initial;
}
body.spar-waiting .wait-intro{margin:12px 0 24px;max-width:62ch;color:var(--text-dim);font-size:15px;line-height:1.6}
body.spar-waiting .shell .btn,
body.spar-waiting .notification-setup button{
  min-height:44px;padding:10px 15px;border:1px solid var(--border-strong);
  border-radius:3px;background:transparent;color:var(--text);
  font:600 14px/1.4 "Helvetica Neue",Helvetica,Arial,sans-serif;
  letter-spacing:0;box-shadow:none;transform:none;
  transition:background .15s,border-color .15s;
}
body.spar-waiting .shell .btn:hover,
body.spar-waiting .notification-setup button:hover{background:var(--bg-elev);border-color:var(--text-ghost);transform:none;box-shadow:none}
body.spar-waiting .shell .btn.primary{
  background:var(--wait-button);border-color:var(--wait-button);color:var(--wait-button-text);
}
body.spar-waiting .shell .btn.primary:hover{opacity:.86}
body.spar-waiting .shell .wait-cancel{flex:none;font-size:13px;font-weight:500;padding:9px 12px}
body.spar-waiting :is(.shell,.wait-rail,.spar-room) :is(button,a,input,textarea,summary):focus-visible,
body.spar-waiting .waitlist-fab:focus-visible{outline:2px solid var(--accent);outline-offset:4px}

/* Search status has one fixed place; notices and real counts stay beside it. */
body.spar-waiting .wait-search{padding:24px;border:1px solid var(--border);background:var(--bg-card)}
body.spar-waiting .wait-search__row{display:flex;justify-content:space-between;align-items:center;gap:18px}
body.spar-waiting .wait-search .status{
  display:flex;align-items:center;gap:11px;margin:0;min-width:0;text-align:left;
  font-size:18px;font-weight:600;line-height:1.35;color:var(--text);letter-spacing:-.015em;
}
body.spar-waiting .wait-search .status::before{
  content:"";width:7px;height:7px;flex:none;border-radius:50%;background:var(--accent);
}
body.spar-waiting #statusSub{position:absolute;width:1px;height:1px;margin:-1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}
body.spar-waiting #statusSub[hidden]{display:none}
body.spar-waiting .wait-search .countdown{
  flex:none;margin:0;padding:0;background:none;border:0;border-radius:0;
  color:var(--text-ghost);font:12px/1.5 "Helvetica Neue",Helvetica,Arial,sans-serif;letter-spacing:0;text-transform:none;
}
body.spar-waiting .wait-search .keep-open{
  max-width:none;margin:12px 0 0;padding:0;border:0;border-radius:0;
  background:none;text-align:left;color:var(--text-dim);font-size:14px;line-height:1.55;
}
body.spar-waiting .wait-search .keep-open strong{color:var(--text-dim);font-weight:400}
body.spar-waiting .wrap.spar-search-layout .meta-strip{
  align-items:center;justify-content:flex-start;flex-direction:row;gap:6px 14px;
  max-width:none;margin:20px 0 0;font-family:inherit;font-size:12px;letter-spacing:0;
}
body.spar-waiting .meta-strip .meta-cell{white-space:normal}
body.spar-waiting .meta-strip .meta-dot{box-shadow:none;animation:none}
body.spar-waiting .meta-strip .meta-missed-cell::before{display:none}
body.spar-waiting .wait-search .pinged-line{max-width:none;margin:12px 0 0;text-align:left;font-size:13px}
body.spar-waiting .wait-search .pinged-line strong{font-weight:500}
body.spar-waiting .wait-search .queue-stats{margin:0;text-align:left;font-size:14px}
body.spar-waiting .wait-search .queue-stats:not(:empty){margin-top:18px;padding-top:16px;border-top:1px solid var(--border)}
body.spar-waiting .consent-availability{margin:0;font-size:14px;line-height:1.5;color:var(--text-dim)}
body.spar-waiting .consent-availability button{font-size:14px;color:var(--text);padding:8px 0;margin-left:8px}
body.spar-waiting #deskWaitingNote{margin:12px 0 0;color:var(--text-dim);font-size:14px}

/* A single divider separates the invitation from account preferences. */
body.spar-waiting .wait-tools{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(0,1fr);gap:32px;margin-top:32px}
body.spar-waiting .friend-challenge{
  min-width:0;max-width:none;margin:0;padding:0;border:0;border-radius:0;
  background:none;box-shadow:none;text-align:left;
}
body.spar-waiting .friend-challenge h2,
body.spar-waiting .wait-settings h2{margin:0 0 10px;color:var(--text);font-size:18px;font-weight:600;line-height:1.3;letter-spacing:-.015em}
body.spar-waiting .friend-challenge__eyebrow{margin:0 0 8px;color:var(--text-ghost);font-size:11px;font-weight:500;letter-spacing:.06em}
body.spar-waiting .friend-challenge p{margin:0;max-width:36ch;color:var(--text-dim);font-size:14px;line-height:1.6}
body.spar-waiting .friend-challenge__actions{display:flex;flex-wrap:wrap;gap:8px;margin-top:20px}
body.spar-waiting .friend-challenge__actions .btn{padding:9px 12px;font-size:13px}
body.spar-waiting .friend-challenge__actions #showFriendQrBtn{border-color:transparent;padding-inline:7px;font-weight:500}
body.spar-waiting .friend-challenge__actions #showFriendQrBtn:hover{background:none;text-decoration:underline;text-underline-offset:3px}
body.spar-waiting details.friend-challenge__link{display:block;margin:13px 0 0}
body.spar-waiting .friend-challenge__link summary,
body.spar-waiting .queue-device-setup>summary{min-height:44px;padding:11px 0;color:var(--text-dim);font-size:13px;line-height:22px;cursor:pointer}
body.spar-waiting .friend-challenge__link summary:hover,
body.spar-waiting .queue-device-setup>summary:hover{color:var(--text)}
body.spar-waiting .friend-challenge__link input{
  display:block;width:100%;height:44px;margin:3px 0 0;padding:10px;
  background:var(--bg-card);color:var(--text-dim);border:1px solid var(--border);border-radius:3px;font:13px/1.5 ui-monospace,monospace;
}
body.spar-waiting .friend-challenge__qr{align-items:center;gap:14px;padding:16px 0 0;margin:10px 0 0;border:0;border-top:1px solid var(--border);border-radius:0;background:none}
body.spar-waiting .friend-challenge__qr-code{border-radius:0}
body.spar-waiting .friend-challenge__qr-copy{font-size:13px;line-height:1.5}
body.spar-waiting .friend-challenge__qr-copy strong{font-size:14px;font-weight:600}
body.spar-waiting .wait-settings{min-width:0;padding-left:30px;border-left:1px solid var(--border)}
body.spar-waiting .alerts-cta{display:flex;align-items:flex-start;gap:12px;margin:0;padding:0;border:0;border-radius:0;background:none;text-align:left}
body.spar-waiting .alerts-cta[hidden]{display:none}
body.spar-waiting .alerts-cta__copy{flex:1;min-width:0;color:var(--text-dim);font-size:14px;line-height:1.6}
body.spar-waiting #alertsTitle{display:block;color:var(--text);font-size:14px;font-weight:500;line-height:1.5;margin:0 0 4px}
body.spar-waiting #alertsBody{display:block}
body.spar-waiting #alertsEnableBtn{flex:none;min-height:44px;padding:8px 10px;font-size:13px;white-space:nowrap}
body.spar-waiting .queue-device-setup{margin:8px 0 0;text-align:left}
body.spar-waiting .notification-setup{padding:14px 0 0;margin:0 0 18px;border:0;border-top:1px solid var(--border);border-radius:0;font-size:14px;line-height:1.55}
body.spar-waiting .notification-setup>strong{font-size:14px;font-weight:600}
body.spar-waiting .notification-setup p,
body.spar-waiting .notification-setup label{font-size:13px;line-height:1.6}
body.spar-waiting .notification-setup button{padding:9px 10px;font-size:13px;text-align:left}
body.spar-waiting .notification-setup [data-notify-enable]{background:var(--wait-button);border-color:var(--wait-button);color:var(--wait-button-text)}
body.spar-waiting .notification-setup summary{font-size:13px}
body.spar-waiting .wait-preferences{margin-top:18px;padding-top:18px;border-top:1px solid var(--border)}
body.spar-waiting .wait-preferences button{min-height:44px;padding:8px 0;font-size:14px;line-height:1.4;font-weight:600;text-align:left;text-decoration:underline;text-decoration-color:var(--border-strong);text-underline-offset:4px}
body.spar-waiting .wait-preferences button:hover{text-decoration-color:var(--text)}
body.spar-waiting .wait-preferences p{margin:0;font-size:13px;color:var(--text-ghost);line-height:1.5}
body.spar-waiting .wait-lang{margin-top:18px;padding-top:18px;border-top:1px solid var(--border)}
body.spar-waiting .wait-lang label{display:block;margin:0 0 6px;font-size:14px;font-weight:600;color:var(--text);line-height:1.4}
body.spar-waiting .wait-lang select{width:100%;min-height:44px;padding:8px 12px;border:1px solid var(--border);border-radius:10px;background:transparent;color:var(--text);font:inherit;font-size:14px}
body.spar-waiting .wait-lang select.xl{color:#fca5a5;border-color:rgba(239,68,68,.32);background:rgba(239,68,68,.06)}
body.spar-waiting .wait-lang select option{background:#16131a;color:#f4f4f2}
body.spar-waiting .wait-lang p{margin:8px 0 0;font-size:13px;color:var(--text-ghost);line-height:1.5}

body.spar-waiting .wait-doors{display:grid;grid-template-columns:1fr 1fr;gap:28px;max-width:none;margin:30px 0 0;padding:22px 0 0;border-top:1px solid var(--border)}
body.spar-waiting .wait-doors .wait-rail__link{grid-template-columns:minmax(0,1fr) auto;gap:16px;padding:8px 0;min-height:62px;border:0;border-radius:0;background:none;transform:none}
body.spar-waiting .wait-doors .wait-rail__link:hover{background:none;transform:none}
body.spar-waiting .wait-doors .wait-rail__link-copy strong{margin:0 0 5px;font-size:14px;font-weight:600;line-height:1.4}
body.spar-waiting .wait-doors .wait-rail__link:hover strong{text-decoration:underline;text-underline-offset:4px}
body.spar-waiting .wait-doors .wait-rail__link-copy span{font-size:13px;font-weight:400;line-height:1.5;color:var(--text-ghost)}
body.spar-waiting .wait-doors .wait-rail__arrow{font-size:19px;color:var(--text-dim)}
body.spar-waiting .watch-panel{max-width:none;margin:28px 0 0;padding:18px 0 0;border:0;border-top:1px solid var(--border);border-radius:0;background:none}
body.spar-waiting .watch-head{font-size:14px;letter-spacing:0;text-transform:none}
body.spar-waiting .watch-row{border-radius:0}
body.spar-waiting .watch-live,body.spar-waiting .watch-head-dot{box-shadow:none}

/* Commons stays a working chat, with the same surface and controls. */
body.spar-waiting .wrap.spar-search-layout .wait-rail{width:100%;height:640px;max-height:calc(100dvh - 112px);min-height:380px;top:88px;border:0;border-radius:0;background:none;box-shadow:none}
body.spar-waiting .wrap.spar-search-layout .wait-rail__body{padding:0;gap:16px;overflow:visible}
body.spar-waiting .spar-discord{min-height:44px;padding:11px 12px;font-size:13px;font-weight:500;letter-spacing:0;border:1px solid var(--border);border-radius:3px;background:var(--bg-card);color:var(--text);transform:none}
body.spar-waiting .spar-discord:hover{background:var(--bg-elev);border-color:var(--border-strong);transform:none}
body.spar-waiting .spar-discord svg{width:17px;height:17px}
body.spar-waiting .spar-room,
body.spar-waiting .wait-rail__body .spar-room{max-width:none;margin:0;border:1px solid var(--border);border-radius:0;background:var(--bg-card);box-shadow:none}
body.spar-waiting .spar-room__head{padding:15px 16px}
body.spar-waiting .spar-room__title{font-size:14px;font-weight:600;text-transform:none;letter-spacing:0;color:var(--text)}
body.spar-waiting .spar-room__head .live-dot{width:5px;height:5px;box-shadow:none;background:var(--text-ghost)}
body.spar-waiting .spar-room__scroll{padding:12px 16px}
body.spar-waiting .spar-room__composer{padding:12px;background:none}
body.spar-waiting .spar-room__row{gap:7px}
body.spar-waiting .spar-room__input{padding:9px;border-radius:3px;background:var(--bg);font-size:14px;box-shadow:none}
body.spar-waiting .spar-room__input:focus{box-shadow:none}
body.spar-waiting .spar-room__send{min-height:40px;padding:9px 11px;font-size:13px;font-weight:600;border:1px solid var(--border-strong);border-radius:3px;background:var(--bg-elev);color:var(--text)}
body.spar-waiting .spar-room__pill{border:1px solid var(--border-strong);border-radius:3px;background:var(--bg-elev);color:var(--text);box-shadow:none;font-size:13px;font-weight:500}
body.spar-waiting .spar-room .chat-msg-handle{font-size:13px;font-weight:600;color:var(--text)}
body.spar-waiting .spar-room .chat-msg-text{font-size:14px;line-height:1.55}
body.spar-waiting .spar-room .chat-msg-time{font-size:11px}
body.spar-waiting .spar-room .chat-empty{font-size:14px;padding:24px 6px;color:var(--text-ghost)}
body.spar-waiting .waitlist-fab{min-height:44px;padding:10px 14px;border:1px solid var(--border-strong);border-radius:3px;background:var(--bg-card);color:var(--text);font-size:13px;font-weight:500;box-shadow:none}
body.spar-waiting .waitlist-fab .fab-badge{background:var(--bg-elev);color:var(--text);border-radius:2px;font-size:11px;font-weight:600}

@media(min-width:900px) and (max-width:1180px){
  body.spar-waiting .wrap.spar-search-layout{gap:28px;padding-inline:24px !important}
  body.spar-waiting .wait-tools{grid-template-columns:minmax(0,1fr);gap:24px}
  body.spar-waiting .wait-settings{padding:24px 0 0;border-left:0;border-top:1px solid var(--border)}
}
@media(max-width:899px){
  body.spar-waiting .wrap.spar-search-layout{grid-template-columns:minmax(0,820px);max-width:884px;gap:24px;padding-top:104px !important}
  body.spar-waiting .wrap>.spar-discord{max-width:none;margin:14px 0 0}
  body.spar-waiting .wrap>.spar-room{max-width:none;margin:0}
  body.spar-waiting .wrap>.spar-room .spar-room__scroll{height:280px}
}
@media(max-width:720px){
  body.spar-waiting .wrap.spar-search-layout{padding:92px 22px 92px !important;gap:22px}
  body.spar-waiting .wait-heading{gap:16px;align-items:flex-start}
  body.spar-waiting .wrap.spar-search-layout .wait-heading h1{font-size:27px;letter-spacing:-.03em;max-width:none}
  body.spar-waiting .wait-kicker{margin-bottom:6px}
  body.spar-waiting .wait-kicker{font-size:11px;margin-bottom:10px}
  body.spar-waiting .wait-intro{margin:12px 0 22px;font-size:15px}
  body.spar-waiting .wait-search{padding:20px}
  body.spar-waiting .wait-search__row{align-items:flex-start;flex-direction:column;gap:7px}
  body.spar-waiting .wait-search .status{font-size:18px}
  body.spar-waiting .wait-search .countdown{padding-left:18px}
  body.spar-waiting .wait-search .keep-open{margin-top:14px}
  body.spar-waiting .wait-tools{grid-template-columns:minmax(0,1fr);gap:24px;margin-top:28px}
  body.spar-waiting .friend-challenge p{max-width:none}
  body.spar-waiting .friend-challenge__actions{margin-top:16px}
  body.spar-waiting .friend-challenge__actions .btn{padding:10px 14px;font-size:14px}
  body.spar-waiting .friend-challenge__link input{font-size:16px}
  body.spar-waiting .friend-challenge__qr{flex-direction:row;text-align:left}
  body.spar-waiting .wait-settings{padding:24px 0 0;border-left:0;border-top:1px solid var(--border)}
  body.spar-waiting .wait-settings h2{margin-bottom:12px}
  body.spar-waiting .alerts-cta{gap:20px;align-items:flex-start}
  body.spar-waiting #alertsEnableBtn{min-height:44px;padding:10px 14px}
  body.spar-waiting .wait-preferences{margin-top:12px;padding-top:12px}
  body.spar-waiting .wait-doors{gap:22px;margin-top:24px;padding-top:16px}
  body.spar-waiting .spar-room__input{font-size:16px}
}
@media(max-width:440px){
  body.spar-waiting .wrap.spar-search-layout{padding-inline:18px !important}
  body.spar-waiting .wait-heading{flex-wrap:wrap;gap:16px}
  body.spar-waiting .wait-heading>div{flex-basis:100%}
  /* 2026-09-25, the founder: "widen the title to look less dense on y axis".
     One line at 26px instead of two at 32px capped to 13ch. */
  body.spar-waiting .wrap.spar-search-layout .wait-heading h1{font-size:26px;max-width:none}
  body.spar-waiting .wait-heading{gap:12px}
  body.spar-waiting .wait-intro{margin:10px 0 20px}
  body.spar-waiting .shell .wait-cancel{min-height:40px;padding:8px 12px;font-size:13px}
  body.spar-waiting .shell .wait-cancel{min-height:44px;font-size:14px}
  body.spar-waiting .wait-search{padding:18px}
  body.spar-waiting .wait-doors{grid-template-columns:minmax(0,1fr);gap:4px}
  body.spar-waiting .wait-doors .wait-rail__link{min-height:68px}
  body.spar-waiting .friend-challenge__qr{align-items:flex-start}
  body.spar-waiting .friend-challenge__qr-code{width:126px;height:126px;padding:5px}
}

/* ── Globe centerpiece (restored 2026-09-25) ───────────────────────────
   The founder asked for the big globe back with its two counts under it.
   It sits beside the search controls, with its two measured counts below.
   The quiet palette and original presence data stay. */
body.spar-waiting .wait-stage{margin:0 0 26px;text-align:center}
body.spar-waiting .wait-stage .globe-wrap{
  width:min(360px,42vh,100%);max-width:100%;margin:0 auto 6px;aspect-ratio:1/1;
}
body.spar-waiting .wait-stage .globe-wrap::before{
  background:radial-gradient(circle at 50% 45%,rgba(255,255,255,.07) 0%,rgba(239,68,68,.05) 44%,transparent 70%);
  filter:blur(18px);
}
[data-theme="light"] body.spar-waiting .wait-stage .globe-wrap::before{
  background:radial-gradient(circle at 50% 45%,rgba(40,25,10,.04) 0%,transparent 68%);
  filter:blur(10px);
}
body.spar-waiting .wait-stage .globe-frame{filter:drop-shadow(0 14px 22px rgba(0,0,0,.28))}
[data-theme="light"] body.spar-waiting .wait-stage .globe-frame{filter:drop-shadow(0 14px 22px rgba(40,25,10,.14))}
body.spar-waiting .wait-stage__note{margin:0 auto 14px;max-width:360px;color:var(--text-ghost);font-size:12px;line-height:1.5}
body.spar-waiting .wait-stage__note[hidden]{display:none}
/* The two real counts read as figures, not a footnote. Same ids, same
   wiring (startMetaLive / fetchMissedMatchCount); only the shape changed. */
body.spar-waiting .wrap.spar-search-layout .wait-stage .meta-strip{
  display:flex;justify-content:center;align-items:flex-start;flex-direction:row;
  gap:12px 20px;max-width:none;margin:8px auto 0;font-family:inherit;letter-spacing:0;
}
body.spar-waiting .wait-stage .meta-cell{
  display:flex;flex-wrap:wrap;align-items:center;justify-content:center;
  gap:0 6px;min-width:0;flex:1;max-width:230px;white-space:normal;text-align:center;
}
body.spar-waiting .wait-stage .meta-cell strong{
  flex-basis:100%;order:1;font-size:34px;font-weight:600;line-height:1.1;
  letter-spacing:-.03em;color:var(--text);font-variant-numeric:tabular-nums;
}
body.spar-waiting .wait-stage .meta-cell .meta-dot{order:2;width:7px;height:7px;box-shadow:none;animation:none}
body.spar-waiting .wait-stage .meta-cell>span:not(.meta-dot){order:3;font-size:13px;line-height:1.45;color:var(--text-dim)}
body.spar-waiting .wait-stage .meta-missed-cell::before{display:none}
body.spar-waiting .wait-stage .meta-cell[hidden]{display:none}

/* Invite a friend is a real card with the QR already open. */
body.spar-waiting .wait-tools{grid-template-columns:minmax(0,1fr)}
body.spar-waiting .friend-challenge{
  display:grid;grid-template-columns:minmax(0,1fr) auto;grid-template-areas:"copy qr" "actions qr" "link qr";
  column-gap:28px;align-items:start;padding:22px 24px;
  border:1px solid var(--border-strong);border-radius:3px;background:var(--bg-card);
}
body.spar-waiting .friend-challenge__top{grid-area:copy}
body.spar-waiting .friend-challenge h2{font-size:20px}
body.spar-waiting .friend-challenge p{max-width:42ch}
body.spar-waiting .friend-challenge__actions{grid-area:actions;margin-top:18px}
body.spar-waiting .friend-challenge__actions .btn{padding:10px 16px;font-size:14px}
body.spar-waiting .friend-challenge__actions #showFriendQrBtn{border-color:var(--border-strong);padding-inline:16px;font-weight:600}
body.spar-waiting .friend-challenge__actions #showFriendQrBtn:hover{background:var(--bg-elev);text-decoration:none}
body.spar-waiting details.friend-challenge__link{grid-area:link;margin:10px 0 0}
body.spar-waiting .friend-challenge__qr{
  grid-area:qr;flex-direction:column;align-items:center;gap:10px;
  margin:0;padding:0;border:0;text-align:center;max-width:170px;
}
body.spar-waiting .friend-challenge__qr[hidden]{display:none}
body.spar-waiting .friend-challenge__qr-code{width:158px;height:158px;padding:8px;border-radius:3px;background:#fff}
body.spar-waiting .friend-challenge__qr-copy{font-size:12px;line-height:1.45;color:var(--text-ghost)}
body.spar-waiting .friend-challenge__qr-copy strong{font-size:13px;font-weight:600;color:var(--text)}
body.spar-waiting .wait-settings{padding:24px 0 0;border-left:0;border-top:1px solid var(--border)}

@media(max-width:720px){
  body.spar-waiting .wait-stage{margin-bottom:22px}
  body.spar-waiting .wait-stage .globe-wrap{width:min(260px,62vw);margin-bottom:4px}
  body.spar-waiting .wrap.spar-search-layout .wait-stage .meta-strip{gap:10px 28px}
  body.spar-waiting .wait-stage .meta-cell{min-width:130px}
  body.spar-waiting .wait-stage .meta-cell strong{font-size:30px}
  body.spar-waiting .friend-challenge{grid-template-columns:minmax(0,1fr);grid-template-areas:"copy" "actions" "qr" "link";padding:18px;column-gap:0}
  body.spar-waiting .friend-challenge__qr{max-width:none;margin-top:18px;padding-top:18px;border-top:1px solid var(--border)}
  body.spar-waiting .friend-challenge__qr-code{width:150px;height:150px}
}

/* ── Search controls and AI alternative beside the globe ─────────────
   Simplified the same evening (the founder: "should be simple"): one red
   button and one line of why, grouped with the search controls. The fill is
   #dc2626 in every theme, not var(--accent): the dark themes' #ef4444
   under white 16px type measures 3.76:1, under AA; #dc2626 is 4.83:1. */
body.spar-waiting .wait-stage{display:grid;grid-template-columns:minmax(230px,.82fr) minmax(0,1fr);gap:28px;align-items:start}
body.spar-waiting .wait-stage__controls{min-width:0;padding:24px;border:1px solid var(--border);background:var(--bg-card);text-align:left}
body.spar-waiting .wait-stage .wait-search{padding:0;border:0;background:none}
body.spar-waiting .wait-search__actions{display:flex;align-items:center;flex-wrap:wrap;gap:12px;margin-top:20px}
body.spar-waiting .wait-stage .wait-search .countdown{padding:0}
body.spar-waiting .wait-stage .wait-ai{margin-top:24px;padding-top:24px;border-top:1px solid var(--border)}
body.spar-waiting .wait-stage__globe{min-width:0;text-align:center}
body.spar-waiting .wait-ai{display:flex;flex-direction:column;align-items:stretch;gap:10px;text-align:center}
body.spar-waiting .wait-ai__btn{
  display:flex;align-items:center;justify-content:center;gap:10px;width:100%;min-height:56px;padding:15px 22px;
  border-radius:3px;background:#dc2626;color:#fff;text-decoration:none;
  font-size:16px;font-weight:600;line-height:1.2;transition:background .15s;
}
body.spar-waiting .wait-ai__btn:hover{background:#b91c1c}
body.spar-waiting .wait-ai__note{margin:0;font-size:13px;line-height:1.45;color:var(--text-dim)}
/* The optional "personalize?" question. A plain note under the search
   status, never a modal; it leaves once answered either way. */
body.spar-waiting .wait-personalize{margin-top:24px;padding-top:24px;border-top:1px solid var(--border);text-align:left}
body.spar-waiting .wait-personalize__q{margin:0;font-size:16px;font-weight:600;line-height:1.3;letter-spacing:-.01em;color:var(--text)}
body.spar-waiting .wait-personalize__note{margin:6px 0 0;font-size:13px;line-height:1.45;color:var(--text-dim)}
body.spar-waiting .wait-personalize__actions{display:flex;flex-wrap:wrap;gap:10px;margin-top:12px}
body.spar-waiting .wait-personalize__actions button{min-height:44px;padding:10px 16px;border-radius:3px;font:inherit;font-size:14px;font-weight:600;line-height:1.2;cursor:pointer;transition:background .15s,color .15s,border-color .15s}
body.spar-waiting .wait-personalize__yes{border:1px solid var(--text);background:var(--text);color:var(--bg-card)}
body.spar-waiting .wait-personalize__yes:hover{background:var(--text-dim);border-color:var(--text-dim)}
body.spar-waiting .wait-personalize__no{border:1px solid var(--border-strong);background:transparent;color:var(--text-dim)}
body.spar-waiting .wait-personalize__no:hover{color:var(--text);border-color:var(--text)}
body.spar-waiting .wait-doors{grid-template-columns:1fr}
@media(max-width:720px){
  body.spar-waiting .wait-stage{grid-template-columns:minmax(0,1fr);gap:20px}
  body.spar-waiting .wait-stage__controls{padding:20px}
  body.spar-waiting .wait-stage .wait-ai{margin-top:20px;padding-top:20px}
  body.spar-waiting .wait-personalize{margin-top:20px;padding-top:20px}
}

/* Tablet columns stay readable; on phones search controls come first. */
@media(min-width:900px) and (max-width:1099px){
  body.spar-waiting .wrap.spar-search-layout{grid-template-columns:minmax(0,1fr) 300px;gap:24px}
  body.spar-waiting .wait-stage{grid-template-columns:minmax(210px,.85fr) minmax(0,1fr);gap:20px}
  body.spar-waiting .wait-stage__controls{padding:18px}
  body.spar-waiting .wait-stage .globe-wrap{width:min(320px,36vh,100%)}
}
@media(max-width:720px){
  body.spar-waiting .wait-heading{display:block}
  body.spar-waiting .wait-search__row{display:block}
  body.spar-waiting .wait-stage .meta-cell{min-width:0}
  body.spar-waiting .wait-stage__note{max-width:32ch}
}
