/* ============================================================
   PARTY UP — dark gamer PWA design system
   ============================================================ */
:root {
  --bg: #141118;                        /* deep warm near-black */
  --surface: rgba(255,255,255,0.055);   /* white glass */
  --surface-2: rgba(255,255,255,0.04);
  --surface-3: rgba(255,255,255,0.11);
  --line: rgba(255,255,255,0.12);
  --line-2: rgba(255,255,255,0.22);
  --text: #f5f3f0;                      /* warm white */
  --dim: rgba(245,243,240,0.72);
  --dim-2: rgba(245,243,240,0.52);
  --violet: #ffffff;                    /* accents → white */
  --violet-2: rgba(245,243,240,0.74);
  --pink: #ffffff;
  --mint: #8be0ff;                      /* soft mint for money */
  --cyan: #9cc6d8;
  --amber: #cbb6ff;                     /* soft gold */
  --brand: #ffffff;                     /* white — primary buttons */
  --brand-soft: rgba(255,255,255,0.12);
  --silver: linear-gradient(140deg, #f2f0ec 0%, #c9c4bc 45%, #ececec 70%, #c2bdb4 100%);
  --glass: rgba(255,255,255,0.055);
  --glass-line: rgba(255,255,255,0.12);
  --tabbar-h: 66px;
  --maxw: 460px;
  --safe-b: env(safe-area-inset-bottom, 0px);
  --safe-t: env(safe-area-inset-top, 0px);
  --vvb: 0px;  /* visual-viewport bottom gap (set by JS) — keeps fixed bottom bars pinned to
                  what the user sees as iOS Safari's toolbar collapses on scroll */
  /* neon-cyberpunk accents — used ONLY as outlines / borders / text-glow, never fills */
  --neon-yellow: #cfc3ff;
  --neon-magenta: #ff2d9b;
  --neon-violet: #a855f7;
  --neon-blue: #38bdf8;
}
* { box-sizing: border-box; -webkit-tap-highlight-color: transparent; }
html, body { margin: 0; padding: 0; }
/* Prevent sideways scroll at the ROOT — this does NOT establish a containing block for
   position:fixed (unlike overflow on #app-frame), so the fixed tab bar + feedback bar +
   composer anchor to the viewport bottom on iOS Safari instead of floating mid-screen. */
html { overflow-x: hidden; }
body {
  background: #0d0b11;
  color: var(--text);
  font-family: 'Inter', -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, sans-serif;
  font-size: 15px;
  line-height: 1.45;
  -webkit-font-smoothing: antialiased;
  overscroll-behavior-y: none;
}
a { color: inherit; text-decoration: none; }
button { font-family: inherit; cursor: pointer; border: none; background: none; color: inherit; }
img { max-width: 100%; display: block; }
svg { width: 20px; height: 20px; flex-shrink: 0; }
::-webkit-scrollbar { width: 0; height: 0; }

/* ---- app frame: a centered phone column ---- */
#app-frame {
  position: relative;
  max-width: var(--maxw);
  min-height: 100vh;
  min-height: 100dvh;
  margin: 0 auto;
  /* Installed PWA uses a black-translucent status bar, so content fills the
     whole screen behind the notch/Dynamic Island. Pad the top by the safe-area
     inset so no screen (appbar, onboarding, or in-call) sits under the clock. */
  padding-top: var(--safe-t);
  /* Translucent column — the body aurora glows through, turning the whole app into glass. */
  background: radial-gradient(130% 90% at 50% -5%, rgba(36,34,41,0.66) 0%, rgba(23,22,27,0.8) 44%, rgba(14,13,17,0.88) 100%);
  box-shadow: 0 0 60px rgba(0,0,0,0.5);
  /* NO overflow clip here — any non-visible overflow makes #app-frame a clip context that
     iOS Safari uses to anchor position:fixed children (tab bar, feedback bar, chat composer),
     so they floated mid-screen. Horizontal bleed is guarded at the root (html overflow-x)
     instead, which does not trap fixed descendants. */
  overflow: visible;
}
#app { min-height: 100dvh; padding-bottom: calc(var(--tabbar-h) + var(--safe-b) + 14px); }

/* ---- top app bar ---- */
.appbar {
  position: sticky; top: 0; z-index: 40;
  display: flex; align-items: center; gap: 12px;
  padding: 16px 20px 14px;
  background: rgba(11,11,18,0.82);
  backdrop-filter: blur(14px);
  border-bottom: 1px solid var(--line);
}
.appbar-back { width: 34px; height: 34px; display: grid; place-items: center; border-radius: 10px; background: var(--surface-2); color: var(--text); flex-shrink: 0; }
.appbar h1 { font-size: 20px; font-weight: 800; letter-spacing: -0.02em; margin: 0; flex: 1; min-width: 0; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.appbar .logo { font-size: 21px; font-weight: 900; letter-spacing: -0.03em; background: var(--brand); -webkit-background-clip: text; background-clip: text; color: transparent; }
.appbar-actions { display: flex; gap: 8px; align-items: center; }
.icon-btn { width: 38px; height: 38px; display: grid; place-items: center; border-radius: 12px; background: var(--surface-2); color: var(--text); }

/* ---- bottom tab bar ---- */
#tabbar {
  position: fixed; bottom: var(--vvb, 0px); left: 50%; transform: translateX(-50%);
  width: 100%; max-width: var(--maxw); z-index: 50;
  display: grid; grid-auto-flow: column; grid-auto-columns: 1fr;
  padding: 8px 4px calc(6px + var(--safe-b));
  background: rgba(13,13,20,0.92);
  backdrop-filter: blur(18px);
  border-top: 1px solid var(--line);
}
.tab { display: flex; flex-direction: column; align-items: center; gap: 3px; padding: 6px 0; color: var(--dim-2); font-size: 9.5px; font-weight: 700; letter-spacing: 0.01em; }
.tab-desk { display: none; }  /* extra rooms — only on the roomy desktop rail */
.rail-brand { display: none; }  /* desktop rail only — mobile shows the wordmark in the appbar */
/* Moon = the animated globe video (moon.mp4), a big sphere over black (grey reads as black),
   its bottom faded so it blends down into and behind the wordmark as one lockup. */
.rail-moon { width: 92px; height: 92px; flex: 0 0 auto; border-radius: 50%; overflow: hidden; position: relative;
  background: #000; margin-bottom: -42px; z-index: 0;
  -webkit-mask: linear-gradient(to bottom, #000 58%, rgba(0,0,0,0.08) 100%); mask: linear-gradient(to bottom, #000 58%, rgba(0,0,0,0.08) 100%); }
.rail-moon video { width: 100%; height: 100%; object-fit: cover; display: block; }
.rail-word { width: 156px; height: 89px; flex: 0 0 auto; position: relative; z-index: 1; background: url(wordmark.png) center / contain no-repeat; animation: railFlash 8s ease-in-out infinite; }
@keyframes railFlash { 0%, 100% { opacity: 1; filter: drop-shadow(0 0 7px rgba(56,189,248,0.6)); } 50% { opacity: 0.74; filter: drop-shadow(0 0 2px rgba(56,189,248,0.35)); } }
@media (prefers-reduced-motion: reduce) { .rail-word { animation: none; } }
  /* 3D spin — the moon turns like a globe */

.tab svg { width: 22px; height: 22px; }
.tab.active { color: var(--text); }
.tab.active svg { color: var(--violet); }
.tab.sell { color: var(--text); }

/* ---- generic ---- */
.screen { padding: 22px 20px 18px; }
.section-title { font-size: 12px; font-weight: 800; letter-spacing: 0.14em; text-transform: uppercase; color: var(--dim-2); margin: 34px 2px 16px; display: flex; align-items: center; justify-content: space-between; }
.section-title:first-child { margin-top: 8px; }
.section-title a { color: var(--violet-2); font-size: 11px; letter-spacing: 0.06em; }
.muted { color: var(--dim); }
.dim2 { color: var(--dim-2); }
.row { display: flex; align-items: center; gap: 10px; }
.between { display: flex; align-items: center; justify-content: space-between; gap: 10px; }
.wrap { display: flex; flex-wrap: wrap; gap: 10px; }
.stack { display: flex; flex-direction: column; gap: 10px; }
.grow { flex: 1; min-width: 0; }
.nowrap { white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }

/* ---- card ---- */
.card { background: var(--surface); border: 1px solid var(--line); border-radius: 18px; padding: 16px; }
.card.tap:active { transform: scale(0.985); }
.card + .card { margin-top: 14px; }

/* ---- avatars ---- */
.avatar { border-radius: 50%; display: grid; place-items: center; font-size: 20px; flex-shrink: 0; position: relative; background: var(--surface-3); }
.avatar.sq { border-radius: 16px; }
.av-sm { width: 34px; height: 34px; font-size: 16px; }
.av-md { width: 46px; height: 46px; font-size: 22px; }
.av-lg { width: 64px; height: 64px; font-size: 30px; }
.av-xl { width: 92px; height: 92px; font-size: 44px; border-radius: 24px; }
.avatar .on-dot { position: absolute; bottom: -1px; right: -1px; width: 12px; height: 12px; border-radius: 50%; background: var(--mint); border: 2.5px solid var(--surface); z-index: 2; }
/* Photo avatars: a hairline inner ring + a subtle lit-from-above scrim so every real face
   reads framed and cohesive (never bleeding into a dark background). Gradient/emoji avatars untouched. */
.avatar.has-pic { box-shadow: inset 0 0 0 1px rgba(255,255,255,0.12); }
.avatar.has-pic::after { content: ''; position: absolute; inset: 0; border-radius: inherit; z-index: 1; pointer-events: none; background: linear-gradient(157deg, rgba(255,255,255,0.07) 0%, rgba(255,255,255,0) 26%, rgba(0,0,0,0) 58%, rgba(0,0,0,0.24) 100%); }

/* ---- names / handles ---- */
.name { font-weight: 800; letter-spacing: -0.01em; }
.handle { color: var(--dim); font-size: 12.5px; }

/* ---- chips ---- */
.chip { display: inline-flex; align-items: center; gap: 5px; padding: 7px 13px; border-radius: 999px; background: var(--surface-2); border: 1px solid var(--line); font-size: 12px; font-weight: 600; color: var(--dim); }
.chip.game { color: var(--text); }
.chip.on { background: var(--brand-soft); border-color: rgba(139,92,255,0.35); color: #d9ccff; }
.rank { display: inline-flex; align-items: center; gap: 4px; padding: 3px 8px; border-radius: 8px; font-size: 11px; font-weight: 800; letter-spacing: 0.02em; }
.rank.gold { background: rgba(203,182,255,0.14); color: var(--amber); }
.rank.plat { background: rgba(52,211,238,0.14); color: var(--cyan); }
.rank.diamond { background: rgba(139,92,255,0.16); color: var(--violet-2); }
.rank.pro { background: var(--brand); color: #fff; }

/* ---- buttons ---- */
.btn { display: inline-flex; align-items: center; justify-content: center; gap: 7px; padding: 13px 18px; border-radius: 13px; font-weight: 800; font-size: 14px; letter-spacing: -0.01em; }
.btn-primary { background: var(--brand); color: #fff; }
.btn-primary:active { transform: translateY(1px); }
.btn-ghost { background: var(--surface-2); color: var(--text); border: 1px solid var(--line); }
.btn-outline { background: transparent; color: var(--text); border: 1px solid var(--line-2); }
.btn-block { width: 100%; }
.btn-sm { padding: 8px 13px; border-radius: 11px; font-size: 13px; }
.btn-follow { background: var(--surface-2); border: 1px solid var(--line-2); color: var(--text); }
.btn-follow.on { background: var(--brand-soft); border-color: rgba(139,92,255,0.4); color: #d9ccff; }
.price { font-weight: 900; letter-spacing: -0.02em; }
.price .cur { color: var(--mint); }

/* ---- segmented control ---- */
.seg { display: flex; gap: 4px; padding: 4px; background: rgba(20,16,31,0.5); border: 1px solid rgba(148,120,255,0.22); border-radius: 14px; margin: 4px 0 14px; -webkit-backdrop-filter: blur(12px); backdrop-filter: blur(12px); }
.seg button { flex: 1; padding: 9px 6px; border-radius: 10px; font-size: 13px; font-weight: 700; color: var(--dim); }
.seg button.active { background: rgba(124,92,255,0.24); color: var(--text); box-shadow: 0 0 10px rgba(124,92,255,0.18); }

/* ---- feed ---- */

.appbar-back svg, .icon-btn svg { width: 21px; height: 21px; }

/* ---- discover / match cards ---- */
.pcard { position: relative; border-radius: 24px; overflow: hidden; border: 1px solid var(--line-2); background: var(--surface); box-shadow: 0 18px 50px rgba(0,0,0,0.5); }

/* square-photo match-card header (left photo, info right) */

.match-pill { display: inline-block; background: rgba(56,189,248,0.14); border: 1px solid rgba(56,189,248,0.3); padding: 5px 11px; border-radius: 999px; font-weight: 800; font-size: 12.5px; }
.match-pill b { color: var(--mint); }
/* friend requests — prominent on the You page */

/* platform / crossplay tags */
.plat-chip { display: inline-flex; align-items: center; gap: 4px; font-size: 11.5px; font-weight: 800; padding: 4px 9px; border-radius: 8px; border: 1px solid var(--glass-line); background: var(--glass); color: var(--dim); }
.plat-chip.pl-pc { color: #9cc0ff; border-color: rgba(90,140,240,0.42); background: rgba(90,140,240,0.13); }
.plat-chip.pl-playstation { color: #8ab0ff; border-color: rgba(46,109,230,0.46); background: rgba(46,109,230,0.15); }
.plat-chip.pl-xbox { color: #86e394; border-color: rgba(60,180,80,0.46); background: rgba(60,180,80,0.14); }
.plat-chip.pl-switch { color: #ff8f99; border-color: rgba(230,40,55,0.46); background: rgba(230,40,55,0.13); }
.plat-chip.pl-mobile { color: #c8c2d6; }
.plat-chip.pl-crossplay { color: #d6bcff; border-color: rgba(150,110,240,0.46); background: rgba(150,110,240,0.14); }
/* console friend codes */

.swipe-actions { display: flex; gap: 12px; margin-top: 16px; }
.swipe-btn { flex: 1; height: 54px; border-radius: 16px; display: grid; place-items: center; font-weight: 800; border: 1px solid var(--line); }
.swipe-btn.pass { background: var(--surface-2); color: var(--dim); }
.swipe-btn.party { background: var(--brand); color: #fff; box-shadow: 0 8px 24px rgba(255,77,141,0.35); }

/* ---- listings ---- */

.listing { background: var(--surface); border: 1px solid var(--line); border-radius: 16px; overflow: hidden; }

.stars { color: var(--amber); font-size: 11px; font-weight: 700; }

/* ---- threads / boards ---- */
.thread { display: flex; gap: 12px; padding: 13px 0; border-bottom: 1px solid var(--line); }
.thread:last-child { border-bottom: none; }
.vote { display: flex; flex-direction: column; align-items: center; gap: 2px; width: 40px; flex-shrink: 0; color: var(--dim); font-weight: 800; font-size: 13px; }
.vote .up { color: var(--violet-2); }

/* ---- chat ---- */

.chat-thread { padding: 14px 16px calc(var(--tabbar-h) + 80px); display: flex; flex-direction: column; gap: 10px; }
.msg { max-width: 78%; padding: 9px 13px; border-radius: 16px; font-size: 14px; line-height: 1.4; }
.msg .who { display: block; font-size: 11px; font-weight: 800; color: var(--violet-2); margin-bottom: 2px; text-decoration: none; }
.msg a.who:hover { text-decoration: underline; }
/* group-chat row: clickable avatar + the bubble */
.msg-row { display: flex; align-items: flex-end; gap: 8px; max-width: 82%; align-self: flex-start; }
.msg-row .msg-av { flex: 0 0 auto; }
.msg-row .msg { max-width: 100%; }
.msg.them { align-self: flex-start; background: var(--surface-2); border-bottom-left-radius: 5px; }
.msg.me { align-self: flex-end; background: var(--brand); color: #fff; border-bottom-right-radius: 5px; }
.composer { position: fixed; bottom: calc(var(--tabbar-h) + var(--safe-b) + var(--vvb, 0px)); left: 50%; transform: translateX(-50%); width: 100%; max-width: var(--maxw); display: flex; gap: 8px; padding: 10px 14px; background: rgba(13,13,20,0.94); backdrop-filter: blur(14px); border-top: 1px solid var(--line); }
.composer input { flex: 1; background: var(--surface-2); border: 1px solid var(--line); border-radius: 14px; padding: 11px 14px; color: var(--text); font-size: 14px; outline: none; }
.composer .send { width: 44px; height: 44px; border-radius: 14px; background: var(--brand); color: #fff; display: grid; place-items: center; flex-shrink: 0; }

/* ---- meetups ---- */
.meetup { display: flex; gap: 14px; padding: 14px; background: var(--surface); border: 1px solid var(--line); border-radius: 18px; margin-bottom: 12px; }

/* ---- profile / link in bio ---- */

/* ---- fab ---- */

/* ---- misc ---- */
.empty { text-align: center; color: var(--dim-2); padding: 50px 20px; }
.empty .big { font-size: 44px; margin-bottom: 10px; }
.hero-banner { border-radius: 20px; padding: 20px; background: var(--brand); position: relative; overflow: hidden; margin-bottom: 6px; }
.hero-banner h2 { margin: 0 0 4px; font-size: 20px; font-weight: 900; letter-spacing: -0.02em; }
.hero-banner p { margin: 0; font-size: 13px; opacity: 0.92; }

.toast { position: fixed; bottom: calc(var(--tabbar-h) + 24px + var(--vvb, 0px)); left: 50%; transform: translateX(-50%); display: flex; align-items: center; gap: 10px; max-width: min(90vw, 420px); background: rgba(14,10,22,0.72); -webkit-backdrop-filter: blur(22px) saturate(1.3); backdrop-filter: blur(22px) saturate(1.3); border: 1px solid rgba(255,255,255,0.14); color: #fff; padding: 12px 12px 12px 18px; border-radius: 18px; font-size: 13px; font-weight: 700; z-index: 3000; box-shadow: 0 16px 44px rgba(0,0,0,0.55), inset 0 1px 0 rgba(255,255,255,0.08); animation: toastin 0.2s ease; }
.toast .toast-msg { flex: 1 1 auto; line-height: 1.35; }
.toast .toast-x { flex: 0 0 auto; width: 26px; height: 26px; border-radius: 50%; border: 1px solid rgba(255,255,255,0.16); background: rgba(255,255,255,0.08); color: rgba(255,255,255,0.85); font-size: 18px; line-height: 1; font-weight: 400; display: grid; place-items: center; cursor: pointer; padding: 0; transition: background .15s, color .15s; }
.toast .toast-x:hover { background: rgba(255,255,255,0.18); color: #fff; }
@keyframes toastin { from { opacity: 0; transform: translate(-50%, 8px); } to { opacity: 1; transform: translate(-50%, 0); } }
.fade { animation: fade 0.25s ease; }
@keyframes fade { from { opacity: 0; transform: translateY(6px); } to { opacity: 1; transform: none; } }

/* ---- form fields (onboarding / edit / sell) ---- */
.field { width: 100%; background: var(--surface-2); border: 1px solid var(--line); border-radius: 14px; padding: 14px 16px; color: var(--text); font-size: 14px; outline: none; margin-bottom: 14px; }
.field:focus { border-color: rgba(139,92,255,0.55); }

.grad-pick { width: 30px; height: 30px; border-radius: 50%; border: 2px solid transparent; }
.grad-pick.on { border-color: #fff; box-shadow: 0 0 0 3px rgba(255,255,255,0.16); }
button.chip { cursor: pointer; }
.card.sel { border-color: var(--violet); box-shadow: 0 0 0 1px rgba(139,92,255,0.45); }

/* ---- wallet / earnings ---- */

.wallet-hero { background: var(--brand); border-radius: 22px; padding: 22px; color: #fff; text-align: center; }

/* ---- listing reviews ---- */
.review { display: flex; gap: 12px; padding: 12px 2px; border-bottom: 1px solid var(--line); }

/* ---- DM tag + search ---- */
.dm-tag { font-size: 9.5px; font-weight: 800; letter-spacing: .04em; color: var(--violet-2); background: rgba(139,92,255,0.16); padding: 2px 7px; border-radius: 6px; flex-shrink: 0; }

.link { color: var(--violet-2); font-weight: 700; font-size: 13px; }

/* ---- compose bar (feed) + textareas ---- */

textarea.field { font-family: inherit; line-height: 1.5; resize: vertical; }

/* ---- gamer identity: verified tick, level pill, XP bar, trophy case ---- */
.vtick { display: inline-grid; place-items: center; width: 16px; height: 16px; border-radius: 50%; background: var(--cyan); color: #08131a; font-size: 10px; font-weight: 900; vertical-align: middle; margin-left: 5px; position: relative; top: -1px; }

/* ---- connected game accounts ---- */

/* verified game score */
.gs-hero { text-align: center; padding: 22px 16px 20px; margin: 4px 0 16px; border-radius: 20px; background: linear-gradient(160deg, rgba(124,92,255,0.20), rgba(0,209,255,0.10)); border: 1px solid var(--line-2); }
.gs-hero-num { font-size: 46px; font-weight: 900; line-height: 1; letter-spacing: -1px; background: linear-gradient(90deg, var(--violet), var(--cyan)); -webkit-background-clip: text; background-clip: text; color: transparent; }
.gs-hero-label { text-transform: uppercase; letter-spacing: 1.5px; font-size: 12px; font-weight: 800; color: var(--dim); margin-top: 6px; }
.gs-hero-sub { font-size: 13px; color: var(--dim); margin-top: 8px; max-width: 320px; margin-left: auto; margin-right: auto; line-height: 1.5; }
.gs-hero-cap { display: inline-block; margin-top: 10px; font-size: 11px; font-weight: 700; color: var(--dim); background: var(--surface-2); border: 1px solid var(--line); border-radius: 999px; padding: 3px 10px; }

.gs-pts { font-weight: 900; font-size: 17px; color: var(--cyan); white-space: nowrap; padding-right: 4px; }
.gs-foot { margin-top: 16px; padding: 12px 14px; border-radius: 12px; background: var(--surface); border: 1px solid var(--line); font-size: 12.5px; color: var(--dim); line-height: 1.6; }

/* ---- marketplace fees: payout box + trust line ---- */

.trust-line { font-size: 12px; color: var(--dim); text-align: center; padding: 6px 4px; }

/* ---- listing photos: upload grid + detail gallery ---- */

/* ---- lobbies (LFG "create a lobby") ---- */
.lobby-card { display: block; background: var(--surface); border: 1px solid var(--line); border-radius: 18px; padding: 14px; margin-bottom: 12px; }

/* ---- calls + scheduling ---- */

/* clips */

 /* min-width:0 lets the 1fr grid tracks shrink on mobile (else min-content blows the page wide) */

/* clip description (caption) */

/* clip upload */

/* teams */
.team-logo { width: 46px; height: 46px; border-radius: 12px; display: grid; place-items: center; font-weight: 900; font-size: 15px; color: #fff; flex: 0 0 auto; letter-spacing: -0.02em; box-shadow: inset 0 1px 0 rgba(255,255,255,0.25), 0 6px 16px rgba(0,0,0,0.35); text-shadow: 0 1px 2px rgba(0,0,0,0.3); }

.team-card { display: flex; align-items: center; gap: 13px; padding: 13px 15px; border-radius: 16px; background: var(--glass); border: 1px solid var(--glass-line); text-decoration: none; color: var(--text); margin-bottom: 8px; backdrop-filter: blur(14px); }
.team-lf { font-size: 12px; color: #d6bcff; font-weight: 700; margin-top: 4px; }
/* friends-in-lobby: card row, discover section, detail chips */

.fl-chips { display: flex; flex-wrap: wrap; gap: 8px; margin-top: 4px; }
.fl-chip { display: inline-flex; align-items: center; gap: 7px; padding: 5px 11px 5px 5px; border-radius: 999px; background: var(--surface); border: 1px solid var(--line-2); text-decoration: none; color: var(--text); font-size: 13px; font-weight: 700; }
.fl-chip .avatar { width: 26px; height: 26px; font-size: 12px; }
.fl-chip.friend { border-color: #8be0ff; }
.fl-chip.you { border-color: var(--text); }
.fl-chip.open { background: transparent; border-style: dashed; color: var(--dim); font-weight: 600; padding-left: 5px; }
.fl-chip.open .slot-dot { width: 26px; height: 26px; border-radius: 999px; border: 1px dashed var(--line-2); display: inline-block; }

.team-games { display: flex; align-items: center; gap: 6px; flex-wrap: wrap; margin: 4px 0 3px; }
.team-game-chip { flex: 0 0 auto; display: inline-flex; align-items: center; gap: 4px; padding: 3px 9px; border-radius: 999px; background: var(--surface-3); border: 1px solid var(--line-2); font-size: 12px; font-weight: 800; white-space: nowrap; }

.team-recruit { background: rgba(124,92,255,0.13); border: 1px solid rgba(124,92,255,0.34); border-radius: 13px; padding: 11px 14px; font-size: 13.5px; margin-top: 10px; }
.cap-badge { font-size: 11px; font-weight: 800; color: #cbb6ff; background: rgba(148,120,255,0.14); border: 1px solid rgba(148,120,255,0.3); padding: 2px 8px; border-radius: 7px; }
.team-swatch { width: 40px; height: 40px; border-radius: 12px; border: 2px solid transparent; cursor: pointer; }
.team-swatch.on { border-color: #fff; box-shadow: 0 0 0 3px rgba(255,255,255,0.18); }

/* --- Team page: upscale hero + tabs --- */

.team-logo.xl { width: 84px; height: 84px; border-radius: 22px; display: grid; place-items: center; font-weight: 900; font-size: 27px; color: #fff; letter-spacing: -0.02em; margin: 0 auto 14px; box-shadow: inset 0 1px 0 rgba(255,255,255,0.3), 0 12px 34px rgba(0,0,0,0.5); text-shadow: 0 1px 3px rgba(0,0,0,0.35); }

.team-about { color: var(--muted); line-height: 1.6; margin: 14px 2px 10px; font-size: 14px; }

.lounge-card, .scrim-card { display: flex; align-items: center; gap: 12px; background: var(--surface); border: 1px solid var(--line-2); border-radius: 15px; padding: 14px 16px; margin-bottom: 6px; text-decoration: none; color: inherit; transition: border-color .15s, transform .1s; }
.lounge-card:active, .scrim-card:active { transform: scale(0.99); }
.lounge-card:hover { border-color: var(--violet); }
.lc-em { font-size: 21px; flex: 0 0 auto; }

.scrim-card .sc-cal { display: grid; place-items: center; width: 36px; height: 36px; border-radius: 11px; background: var(--surface-3); flex: 0 0 auto; }
.scrim-card .sc-cal svg { width: 18px; }
.roster-list { display: flex; flex-direction: column; gap: 8px; }
.roster-card { display: flex; align-items: center; gap: 12px; background: var(--surface); border: 1px solid var(--line-2); border-radius: 15px; padding: 12px 14px; cursor: pointer; transition: border-color .15s, transform .1s; text-decoration: none; color: inherit; }
.roster-card:hover { border-color: var(--violet); }
.roster-card:active { transform: scale(0.99); }
.roster-card > svg:last-child { width: 18px; color: var(--dim); flex: 0 0 auto; }
.roster-kick { flex: 0 0 auto; padding: 6px 12px; border-radius: 9px; border: 1px solid var(--line-2); background: transparent; color: var(--dim); font-size: 12px; font-weight: 700; cursor: pointer; }
.roster-kick:hover { border-color: var(--pink); color: var(--pink); }
.roster-open { text-align: center; padding: 14px; border: 1px dashed var(--line-2); border-radius: 15px; color: var(--dim); font-size: 13px; font-weight: 600; }
/* propose-a-time — timezone conversion */
.tz-note { background: rgba(56,189,248,0.1); border: 1px solid rgba(56,189,248,0.26); border-radius: 12px; padding: 10px 13px; font-size: 13px; margin-top: 10px; line-height: 1.5; }
.tz-note b { color: #bfe9ff; }
.tz-note.dim2 { background: var(--glass); border-color: var(--glass-line); color: var(--dim); }
.tz-note.dim2 b { color: var(--dim); }
.tz-nudge { display: block; background: rgba(124,92,255,0.12); border: 1px solid rgba(124,92,255,0.3); border-radius: 12px; padding: 10px 13px; font-size: 13px; margin-top: 10px; color: #d6bcff; text-decoration: none; font-weight: 600; }
/* quests + achievements */

/* recruit board */

/* Lobbies wedge hero — the front door */

/* More — the overflow drawer entry on the Lobbies screen */

/* More menu — list of rooms */

/* Mobile quick-access to the rooms not on the phone bar (hidden on desktop — the rail has them) */

.room-pill { display: flex; flex-direction: column; align-items: center; justify-content: center; gap: 6px; padding: 12px 4px 10px; border-radius: 15px; background: var(--glass); border: 1px solid var(--glass-line); color: var(--text); text-decoration: none; backdrop-filter: blur(14px); }
.room-pill:active { transform: scale(0.97); }

/* Onboarding intro splash — the wedge, first thing you see */

/* Hard-no chips read as red "no" when set */
.chip.hardno.on { background: rgba(255,86,86,0.16); border-color: rgba(255,86,86,0.5); color: #ffb4b4; }
.live-dot { width: 9px; height: 9px; border-radius: 50%; background: var(--pink); box-shadow: 0 0 0 4px rgba(255,77,141,.2); animation: cpulse 1.4s infinite; display: inline-block; }
@keyframes cpulse { 0%,100% { opacity: 1 } 50% { opacity: .35 } }

/* ---- course builder + curriculum ---- */

.mini-note { font-size: 11.5px; color: var(--dim); line-height: 1.5; margin: 8px 2px 4px; }

/* ---- live streaming + tipping ---- */

.stream-card { display: block; border-radius: 16px; overflow: hidden; background: var(--surface); border: 1px solid var(--line); }
.stream-thumb { position: relative; height: 148px; display: grid; place-items: center; }
.pl-em { font-size: 54px; filter: drop-shadow(0 6px 14px rgba(0,0,0,.35)); }
.stream-b { padding: 10px 12px; }

.live-badge { position: absolute; top: 10px; left: 10px; background: var(--pink); color: #17141d; font-size: 10px; font-weight: 900; letter-spacing: .04em; padding: 3px 8px; border-radius: 7px; }
.live-badge.cls { background: linear-gradient(135deg,#a855f7,#ec4899); }
.viewers { position: absolute; bottom: 10px; left: 10px; background: rgba(0,0,0,.5); color: #fff; font-size: 11px; font-weight: 700; padding: 3px 8px; border-radius: 7px; backdrop-filter: blur(4px); }
.player { position: relative; height: 220px; display: grid; place-items: center; color: #fff; overflow: hidden; }
.player.grp { background: #0b0b12; }

.lo-em { font-size: 40px; }
.lo-t { font-size: 13px; font-weight: 700; }

.stream-chat { background: var(--surface); border: 1px solid var(--line-2); border-radius: 16px; padding: 14px; max-height: 340px; overflow-y: auto; display: flex; flex-direction: column; gap: 14px; }

.sc-tip { color: #e9d5ff; font-weight: 700; }

/* broadcaster chat moderation */
.sc-mod { margin-left: auto; display: flex; gap: 4px; flex-shrink: 0; }
.sc-modbtn { background: var(--surface-2); border: 1px solid var(--line-2); color: var(--text); border-radius: 8px; width: 28px; height: 28px; font-size: 13px; cursor: pointer; display: flex; align-items: center; justify-content: center; padding: 0; }
.sc-modbtn:active { transform: scale(.92); }
.sc-modbtn.kick { color: var(--pink); border-color: rgba(236,72,153,.4); }

.sc-muted { color: var(--muted); font-style: italic; }
/* ===== My OG Club Journal ===== */

/* cool-off countdown */

/* ===== Beta feedback button + sheet ===== */
:root { --fb-h: 0px; }
/* MOBILE: a full-width feedback bar docked at the very bottom, tab bar rides above it. */

@media (max-width: 979px) {
  body.has-betabar { --fb-h: 34px; }
  body.has-betabar #tabbar { bottom: calc(var(--fb-h) + var(--safe-b) + var(--vvb, 0px)); padding-bottom: 6px; }
  body.has-betabar #app { padding-bottom: calc(var(--fb-h) + var(--safe-b) + var(--tabbar-h) + 14px); }
  body.has-betabar .composer { bottom: calc(var(--fb-h) + var(--safe-b) + var(--tabbar-h) + var(--vvb, 0px)); }
  
  body.has-betabar .toast { bottom: calc(var(--fb-h) + var(--safe-b) + var(--tabbar-h) + 24px + var(--vvb, 0px)); }
}
/* app-bar Feedback icon (mobile / installed PWA) — magenta-tinted so it reads as feedback */

/* DESKTOP (rail layout): feedback is the pill at the TOP of the left nav rail (injected in
   renderTabbar), so hide the mobile app-bar icon there. */
@media (min-width: 980px) {
  
  .rail-fb { margin-bottom: 10px; font: inherit; text-align: left; cursor: pointer; color: #fff; background: rgba(10,8,16,0.6); border: 1px solid var(--neon-magenta); box-shadow: 0 0 14px rgba(255,45,155,.32), inset 0 0 12px rgba(255,45,155,.08); text-shadow: 0 0 8px rgba(255,45,155,.4); }
  .rail-fb:hover { background: rgba(255,45,155,0.10); box-shadow: 0 0 20px rgba(255,45,155,.5); }
  .rail-fb .rail-fb-ic { width: 23px; display: inline-flex; align-items: center; justify-content: center; color: var(--neon-magenta); }
  .rail-fb .rail-fb-ic svg { width: 20px; height: 20px; }
}

/* dual-home toggle */

/* featured home */

/* live uptime clock */
.bc-uptime { font-variant-numeric: tabular-nums; font-weight: 800; font-size: 13px; color: var(--pink); margin-left: 10px; }
/* tip goal bar */

/* "🔴 LIVE" pill on a profile + "you're live" home banner */
.live-pill { display: inline-flex; align-items: center; gap: 6px; margin: 6px auto 0; padding: 5px 13px; border-radius: 999px; background: rgba(236,72,153,.15); border: 1px solid rgba(236,72,153,.45); color: #ff9ecb; font-size: 12.5px; font-weight: 800; text-decoration: none; }
.live-banner { display: flex; align-items: center; gap: 11px; padding: 12px 14px; margin-bottom: 12px; border-radius: 14px; background: linear-gradient(135deg, rgba(236,72,153,.16), rgba(168,85,247,.16)); border: 1px solid rgba(236,72,153,.4); text-decoration: none; color: var(--text); }

/* past-stream thumbnail */

.sheet-scrim { position: fixed; inset: 0; background: rgba(0,0,0,.55); z-index: 60; }
.sheet { position: fixed; left: 0; right: 0; bottom: var(--vvb, 0px); z-index: 61; background: var(--surface-2); border-radius: 22px 22px 0 0; padding: 20px 18px calc(24px + env(safe-area-inset-bottom)); max-width: 640px; margin: 0 auto; border: 1px solid var(--line); }
.sheet-h { font-size: 17px; font-weight: 800; text-align: center; margin-bottom: 4px; }
.fade-up { animation: fadeUp .22s ease; }
@keyframes fadeUp { from { transform: translateY(30px); opacity: .5 } to { transform: translateY(0); opacity: 1 } }

.stream-composer { display: flex; gap: 8px; margin-top: 8px; align-items: center; }
.stream-composer .field { flex: 1; min-width: 0; }
.stream-composer .send { flex-shrink: 0; }
.stream-chat.group { max-height: 340px; }
.chat-locked { display: flex; gap: 12px; align-items: center; background: var(--surface); border: 1px dashed var(--line-2); border-radius: 14px; padding: 14px 16px; }
.chat-locked b { color: var(--text); }
.cl-lock { font-size: 20px; flex-shrink: 0; }

/* ---- course video upload ---- */

/* course player */

/* ============================================================
   PREMIUM SOFT-LIGHT THEME — cream + charcoal + chrome (overrides)
   ============================================================ */
/* frosted bars */
.appbar { background: rgba(248,245,240,0.72); backdrop-filter: saturate(1.4) blur(20px); }
#tabbar { background: rgba(248,245,240,0.82); backdrop-filter: saturate(1.4) blur(20px); }
.composer { background: rgba(248,245,240,0.9); backdrop-filter: saturate(1.4) blur(18px); }
.appbar-back, .icon-btn { background: var(--surface); border: 1px solid var(--line); box-shadow: 0 1px 4px rgba(40,36,32,0.05); }

/* premium pills + soft depth */
.btn { border-radius: 999px; }
.btn-primary { background: var(--text); color: #fff; box-shadow: 0 6px 18px rgba(28,26,23,0.15); }
.btn-ghost { background: var(--surface); border: 1px solid var(--line-2); color: var(--text); }
.btn-outline { background: transparent; border: 1px solid var(--line-2); color: var(--text); }
.btn-follow { background: var(--surface); border: 1px solid var(--line-2); color: var(--text); }
.btn-follow.on { background: var(--brand-soft); border-color: var(--line-2); color: var(--text); }

/* cards + inputs: soft shadow, rounder */
.card { border-radius: 22px; box-shadow: 0 3px 14px rgba(40,36,32,0.06); }
.field { background: var(--surface); border: 1px solid var(--line-2); border-radius: 16px; box-shadow: 0 1px 3px rgba(40,36,32,0.04); }
.field:focus { border-color: var(--text); }

/* chips: soft, selected = charcoal */
.chip { background: var(--surface); border: 1px solid var(--line-2); color: var(--dim); }
.chip.game { color: var(--text); }
.chip.on { background: var(--text); border-color: var(--text); color: #fff; }

/* ranks → neutral */
.rank { background: var(--surface-3); color: var(--text); }
.rank.pro { background: var(--text); color: #fff; }

/* selection rings → charcoal (was neon) */

.grad-pick.on { border-color: var(--text); box-shadow: 0 0 0 3px rgba(28,26,23,0.12); }

/* toast → glassy (matches the app; was a leftover dark-on-light pill) */
.toast { background: rgba(14,10,22,0.72); color: #fff; border: 1px solid rgba(255,255,255,0.14); box-shadow: 0 16px 44px rgba(0,0,0,0.55), inset 0 1px 0 rgba(255,255,255,0.08); }

/* dark premium hero/wallet cards on cream */
.hero-banner, .wallet-hero { box-shadow: 0 10px 30px rgba(28,26,23,0.18); border-radius: 24px; }

/* segmented control */
.seg { background: var(--surface-2); border: 1px solid var(--line); }
.seg .active, .seg button.active { background: var(--surface); color: var(--text); box-shadow: 0 1px 4px rgba(40,36,32,0.08); }

/* streaming: de-neon → charcoal + chrome */

.live-badge { background: var(--text); color: #fff; }
.live-badge.cls { background: var(--silver); color: var(--text); }

.sheet { background: var(--surface); box-shadow: 0 -12px 40px rgba(28,26,23,0.18); }
.viewers { background: rgba(28,26,23,0.55); }

/* frosted info-bar over imagery (the KOH / creator look) */
.stream-b { background: rgba(255,255,255,0.7); backdrop-filter: blur(8px); }

/* ============================================================
   DARK GLASS THEME — white frosted glass on dark + editorial photos
   (supersedes the soft-light block above)
   ============================================================ */
/* frosted bars */
.appbar { background: rgba(18,15,22,0.55); backdrop-filter: saturate(1.4) blur(22px); border-bottom: 1px solid var(--glass-line); }
#tabbar { background: rgba(18,15,22,0.62); backdrop-filter: saturate(1.4) blur(22px); border-top: 1px solid var(--glass-line); }
.composer { background: rgba(18,15,22,0.72); backdrop-filter: saturate(1.4) blur(20px); border-top: 1px solid var(--glass-line); }
.appbar-back, .icon-btn { background: rgba(255,255,255,0.09); border: 1px solid rgba(255,255,255,0.16); backdrop-filter: blur(16px); box-shadow: inset 0 1px 0 rgba(255,255,255,0.12); color: var(--text); }

/* glass cards + inputs */
.card { background: var(--glass); border: 1px solid var(--glass-line); border-radius: 22px; backdrop-filter: blur(22px) saturate(1.25); box-shadow: 0 10px 34px rgba(0,0,0,0.32); }
.field { background: var(--glass); border: 1px solid var(--glass-line); border-radius: 16px; backdrop-filter: blur(14px); box-shadow: none; color: var(--text); }
.field:focus { border-color: rgba(255,255,255,0.4); }
.field::placeholder { color: var(--dim-2); }

/* white primary pills, glass secondaries */
.btn { border-radius: 999px; }
.btn-primary { background: #fff; color: #16121c; box-shadow: 0 6px 20px rgba(0,0,0,0.35); }
.btn-ghost { background: var(--glass); border: 1px solid var(--glass-line); color: var(--text); backdrop-filter: blur(14px); }
.btn-outline { background: transparent; border: 1px solid var(--line-2); color: var(--text); }
.btn-follow { background: var(--glass); border: 1px solid var(--glass-line); color: var(--text); backdrop-filter: blur(14px); }
.btn-follow.on { background: #fff; border-color: #fff; color: #16121c; }

/* chips: glass, selected = white pill */
.chip { background: var(--glass); border: 1px solid var(--glass-line); color: var(--dim); backdrop-filter: blur(12px); }
.chip.game { color: var(--text); }
.chip.on { background: #fff; border-color: #fff; color: #16121c; }

/* ranks + selection rings */
.rank { background: var(--surface-3); color: var(--text); }
.rank.pro { background: #fff; color: #16121c; }

.grad-pick.on { border-color: #fff; box-shadow: 0 0 0 3px rgba(255,255,255,0.2); }

/* white-bg-with-white-text fixes (brand token is now white) */
.msg.me { background: #fff; color: #16121c; }

.hero-banner, .wallet-hero { background: var(--surface-3); border: 1px solid var(--glass-line); backdrop-filter: blur(22px); box-shadow: 0 12px 36px rgba(0,0,0,0.34); border-radius: 24px; }

/* toast: glassy pill (matches the app; was a leftover white pill) */
.toast { background: rgba(14,10,22,0.72); color: #fff; border: 1px solid rgba(255,255,255,0.14); box-shadow: 0 16px 44px rgba(0,0,0,0.55), inset 0 1px 0 rgba(255,255,255,0.08); }

/* segmented control */
.seg { background: var(--surface-2); border: 1px solid var(--glass-line); }
.seg .active, .seg button.active { background: #fff; color: #16121c; box-shadow: none; }

/* streaming */

.live-badge { background: #16121c; color: #fff; }
.live-badge.cls { background: var(--silver); color: #16121c; }

.sheet { background: rgba(30,26,36,0.92); border: 1px solid var(--glass-line); backdrop-filter: blur(30px); box-shadow: 0 -14px 44px rgba(0,0,0,0.5); }
.stream-chat, .stream-card, .lobby-card, .lesson-edit, .les-uploaded { background: var(--glass); border: 1px solid var(--glass-line); backdrop-filter: blur(18px); }
.stream-b { background: rgba(20,17,24,0.55); backdrop-filter: blur(12px); }
.viewers { background: rgba(0,0,0,0.5); }

/* ---- chrome / liquid-glass finishing pass ---- */
/* remaining brand→white bugs */

.swipe-btn.party { background: linear-gradient(180deg,#fff,#e6e4e9); color: #16121c; box-shadow: inset 0 1px 0 rgba(255,255,255,0.9), 0 8px 24px rgba(0,0,0,0.4); }
.composer .send { background: linear-gradient(180deg,#fff,#e6e4e9); color: #16121c; }

/* liquid-GLASS primary pills — frosted translucent (see the bg blur through), still legible */
.btn-primary, .golive-btn, .btn-follow.on, .seg .active, .seg button.active, .tip-amt.on, .chip.on, .rank.pro {
  background: linear-gradient(180deg, rgba(255,255,255,0.66) 0%, rgba(255,255,255,0.44) 100%);
  backdrop-filter: blur(20px) saturate(1.5);
  -webkit-backdrop-filter: blur(20px) saturate(1.5);
  color: #16121c;
  border: 1px solid rgba(255,255,255,0.5);
  box-shadow: inset 0 1px 0 rgba(255,255,255,0.85), inset 0 -1px 4px rgba(0,0,0,0.1), 0 6px 22px rgba(0,0,0,0.36);
}

/* glass rim-light on frosted surfaces */
.card, .field, .btn-ghost, .btn-outline, .btn-follow, .chip, .icon-btn, .appbar-back,
.stream-card, .lobby-card, .lesson-edit, .stream-chat, .hero-banner, .wallet-hero, .les-uploaded {
  box-shadow: inset 0 1px 0 rgba(255,255,255,0.08), 0 10px 30px rgba(0,0,0,0.28);
}

/* ---- readability + listing detail cleanup ---- */

.handle { font-size: 13px; }

/* ============ TRUST & SAFETY ============ */

.report-link { display: block; width: 100%; text-align: center; margin-top: 12px; padding: 10px; color: var(--dim-2); font-size: 12.5px; font-weight: 600; background: none; }
.report-link:active { color: var(--dim); }

/* escrow order card */

/* request / lobby rows */
.req-row { display: flex; align-items: center; gap: 12px; padding: 13px 14px; background: var(--surface); border: 1px solid var(--line); border-radius: 15px; margin-bottom: 10px; }
.req-row:active { transform: scale(0.99); }

/* ============ FRIENDS + post visibility ============ */
.friends-only { font-size: 11px; font-weight: 800; letter-spacing: 0.02em; color: var(--cyan); background: rgba(156,198,216,0.14); padding: 4px 9px; border-radius: 99px; white-space: nowrap; }

/* ============ review star picker ============ */

/* ============ DESKTOP: nav becomes a left rail, content stays a centered column ============ */
@media (min-width: 980px) {
  body { background: radial-gradient(120% 80% at 50% -10%, #1a1820 0%, #0d0b11 60%); }
  #app-frame { max-width: 1680px; }
  #app { margin-left: 236px; padding-bottom: 40px; }
  #tabbar {
    top: 26px; bottom: 26px; height: auto;
    left: max(20px, calc(50vw - 840px)); transform: none;
    width: 200px; max-width: none;
    display: flex; flex-direction: column; align-items: stretch; gap: 3px;
    padding: 18px 12px; border-top: none;
    border: 1px solid rgba(255,255,255,0.14); border-radius: 22px;
    background: rgba(255,255,255,0.06); backdrop-filter: blur(24px);
    box-shadow: inset 0 1px 0 rgba(255,255,255,0.10);
  }
  .rail-brand {
    display: flex; flex-direction: column; align-items: center; gap: 6px;
    padding: 8px 10px 14px; perspective: 340px; text-decoration: none;
  }
  .tab-desk { display: flex; }  /* rooms hidden on the phone bar appear on the wide rail — nothing buried */
  .tab { flex-direction: row; justify-content: flex-start; gap: 13px; padding: 10px 14px; font-size: 14.5px; border-radius: 12px; }
  .tab svg { width: 23px; height: 23px; }
  .tab span { letter-spacing: -0.01em; }
  .tab.active { background: rgba(255,255,255,0.11); box-shadow: inset 0 1px 0 rgba(255,255,255,0.12); }
  .tab:hover { background: rgba(255,255,255,0.05); }
  /* fixed bottom bars align to the content region (right of the rail), not the viewport */
  .composer { left: max(236px, calc(50vw - 604px)); right: max(0px, calc(50vw - 840px)); transform: none; width: auto; max-width: none; }
  
  /* use the horizontal space: grids flow into more columns */
  
  
  /* single-column media shouldn't balloon on a wide screen — cap it */
  
  /* Group pages read like a Facebook group: one tidy centered column, not a full-bleed banner wall */
  
  
}

/* ============ compatibility receipt (why you match) ============ */
.receipt { background: rgba(20,16,31,0.55); border: 1px solid rgba(148,120,255,0.22); box-shadow: 0 2px 12px rgba(0,0,0,0.3); border-radius: 14px; padding: 13px 15px; margin: 14px 0 4px; }
.receipt-h { font-size: 11px; font-weight: 800; letter-spacing: 0.1em; text-transform: uppercase; color: var(--dim-2); margin-bottom: 9px; }
.receipt-row { display: flex; align-items: center; gap: 9px; font-size: 13.5px; font-weight: 600; color: var(--text); padding: 3px 0; }
.rc-check { color: var(--mint); font-weight: 900; }

/* ============ order detail ============ */

/* ============ chat media (multiple photos + videos) ============ */
.chat-attach { width: 44px; height: 44px; border-radius: 14px; background: var(--surface-2); border: 1px solid var(--line); display: grid; place-items: center; flex-shrink: 0; color: var(--text); cursor: pointer; }
.chat-attach:active { transform: translateY(1px); }
.chat-attach svg { width: 20px; height: 20px; }
.msg.has-media { padding: 5px; overflow: hidden; }
.chat-media-grid { display: grid; grid-template-columns: repeat(auto-fit, minmax(120px, 1fr)); gap: 4px; border-radius: 12px; overflow: hidden; max-width: 260px; }
.chat-media-grid:has(.chat-media-item:only-child) { grid-template-columns: 1fr; }
.chat-media-item { width: 100%; height: auto; max-height: 260px; object-fit: cover; border-radius: 10px; display: block; background: rgba(255,255,255,0.04); }
.msg.has-media .who { padding: 4px 6px 2px; }

/* ============ live thumbnail scrim (photos, not emoji tiles) ============ */
.thumb-scrim { position: absolute; inset: 0; background: linear-gradient(180deg, rgba(0,0,0,0.15) 0%, rgba(0,0,0,0) 40%, rgba(0,0,0,0.55) 100%); pointer-events: none; }
.stream-thumb .live-badge, .stream-thumb .viewers, .player .live-badge, .player .viewers { z-index: 2; }

/* ============ lobbies — photo banner cards + grid ============ */
/* Lobby browser — search + filter chips + grouped sections */

/* Per-game lobby rooms (one card per game) */

/* Player rows inside a game room */

.lobby-card { display: block; background: var(--surface); border: 1px solid var(--line); border-radius: 18px; overflow: hidden; text-decoration: none; }
.lobby-card.tap:active { transform: scale(0.99); }

/* lobby detail */

/* hard-nos — the signature safety callout */
.hardno-card { background: rgba(255,90,90,0.06); border: 1px solid rgba(255,90,90,0.22); border-radius: 16px; padding: 15px 16px; margin-top: 20px; }
.hn-h { font-size: 12px; font-weight: 900; letter-spacing: 0.06em; text-transform: uppercase; color: #ff9a9a; margin-bottom: 11px; }
.hn-chip { display: inline-flex; align-items: center; padding: 7px 13px; border-radius: 999px; background: rgba(255,90,90,0.12); border: 1px solid rgba(255,90,90,0.3); color: #ffc4c4; font-size: 12.5px; font-weight: 700; margin: 0 6px 6px 0; }
.hn-note { color: var(--dim); font-size: 12.5px; margin-top: 8px; line-height: 1.5; }

/* lobby stat strip */
.lob-stats { display: grid; grid-template-columns: repeat(3, 1fr); gap: 10px; margin-top: 20px; }
.lstat { background: var(--surface); border: 1px solid var(--line); border-radius: 14px; padding: 13px 12px; text-align: center; }
/* Lobby is a session → expired banner + one-tap "run it back" */
.lob-expired-banner { display: flex; align-items: center; gap: 12px; margin: 14px 0; padding: 14px 16px; border-radius: 16px; background: rgba(14,10,22,0.72); -webkit-backdrop-filter: blur(18px); backdrop-filter: blur(18px); border: 1px solid rgba(255,255,255,0.12); }
.lob-expired-banner .leb-txt { flex: 1 1 auto; min-width: 0; display: flex; flex-direction: column; gap: 2px; }
.lob-expired-banner .leb-txt b { font-size: 14px; }
.lob-expired-banner .leb-txt span { font-size: 12px; color: rgba(255,255,255,0.6); }
.lob-expired-banner .btn { flex: 0 0 auto; white-space: nowrap; }

/* Stream chat: no per-message reply affordance (it's a broadcast feed, not a DM) */
.stream-live .msg-replybtn, #streamChat .msg-replybtn { display: none !important; }
.ls-k { display: block; font-size: 10.5px; font-weight: 800; letter-spacing: 0.06em; text-transform: uppercase; color: var(--dim-2); margin-bottom: 5px; }
.ls-v { font-size: 13.5px; font-weight: 800; color: var(--text); }

/* upcoming scheduled class badge */
.live-badge.soon { background: rgba(148,120,255,0.95); color: #1c1436; }

/* ============ @mentions + post photos ============ */
.mention { color: var(--cyan); font-weight: 700; }
.msg.me .mention { color: #16121c; text-decoration: underline; }

/* A single photo reads like a Facebook post: natural aspect, never upscaled or cropped. */

/* ============ "would play again?" trust layer ============ */
.rep-card { background: rgba(56,189,248,0.06); border: 1px solid rgba(56,189,248,0.2); border-radius: 16px; padding: 15px 16px; margin-top: 12px; }

.playagain-line { font-size: 12.5px; font-weight: 600; color: var(--dim); margin-bottom: 12px; }
.playagain-line b { color: var(--mint); }
.rate-yn { flex: 1; max-width: 150px; padding: 16px; border-radius: 14px; background: var(--surface-2); border: 1px solid var(--line); font-weight: 800; font-size: 15px; color: var(--text); }
.rate-yn.on.yes { background: rgba(56,189,248,0.16); border-color: rgba(56,189,248,0.5); color: #9fe8c4; }
.rate-yn.on.no { background: rgba(255,90,90,0.14); border-color: rgba(255,90,90,0.45); color: #ffb3b3; }

/* ============ invite & earn (referral / affiliate) ============ */

/* ============ club membership ============ */

/* notification count badge on the bell */
.notif-bell { position: relative; }
.notif-count { position: absolute; top: 0; right: 0; min-width: 17px; height: 17px; padding: 0 4px; border-radius: 9px; background: #2563eb; color: #fff; font-size: 10px; font-weight: 900; display: grid; place-items: center; border: 2px solid var(--bg); box-shadow: 0 0 0 0.5px rgba(0,0,0,0.2), 0 0 8px rgba(37,99,235,0.5); }
.notif-row.unread { background: rgba(56,189,248,0.06); border-color: rgba(56,189,248,0.22); }

/* ============ tournaments ============ */

/* ============ favorites ============ */

/* ============ home: rotating mix ============ */

.section-title.between { display: flex; justify-content: space-between; align-items: baseline; }
.section-title.between a { font-weight: 600; }

/* ============ about / identity ============ */

/* ============ link-in-bio management ============ */

/* ============ merch ============ */

/* ============ rankings ============ */

/* On the roomy desktop layout the 4 rank tabs should fill the bar, not clump left. */

/* tier badge */

/* tier hero */

/* score breakdown */

/* ============ tournament bracket + get-in-game ============ */

/* post-game recap */
.recap-sheet { text-align: center; }
.recap-top { display: flex; flex-direction: column; align-items: center; gap: 8px; margin-bottom: 6px; }
.recap-top .avatar { width: 64px; height: 64px; font-size: 30px; }
.recap-h { font-size: 18px; font-weight: 900; letter-spacing: -0.01em; }
.recap-sheet .rate-yn { flex: 1; }

/* play-now presence */

/* safety with teeth */

.st-em { font-size: 18px; flex: 0 0 auto; }
.btn-pending { opacity: 0.62; }

/* ============ tournament structure ============ */

/* ============ boards / little discussion boards ============ */
.av-xs { width: 22px; height: 22px; font-size: 11px; }

.bc-head { display: flex; align-items: center; gap: 12px; }
.bc-em { width: 44px; height: 44px; border-radius: 13px; display: grid; place-items: center; font-size: 22px; flex: 0 0 auto; }
.bc-em.big { width: 56px; height: 56px; border-radius: 16px; font-size: 28px; }
.bc-stats { display: flex; gap: 14px; margin-top: 12px; font-size: 12px; color: var(--dim); }
.bc-stats .on { color: #8be0ff; }
.bc-top { margin-top: 11px; padding-top: 11px; border-top: 1px solid var(--line); font-size: 12.5px; color: var(--dim); display: flex; gap: 6px; align-items: center; }

/* ---- Facebook-group style board feed ---- */

.fb-photo, .feed-photo, .chat-media-item, .media-cell { cursor: zoom-in; }
.vid-wrap { position: relative; margin-top: 12px; }
.vid-wrap .fb-video, .vid-wrap .chat-media-item { margin-top: 0; }
.vid-exp { position: absolute; top: 8px; right: 8px; width: 30px; height: 30px; border-radius: 8px; border: none; cursor: pointer;
  background: rgba(0,0,0,0.55); color: #fff; font-size: 15px; display: grid; place-items: center; backdrop-filter: blur(4px); }
.lightbox { position: fixed; inset: 0; z-index: 200; background: rgba(0,0,0,0.92); display: grid; place-items: center; padding: 20px; }
.lb-media { max-width: 100%; max-height: 100%; border-radius: 8px; object-fit: contain; }
.lb-x { position: absolute; top: 16px; right: 18px; width: 40px; height: 40px; border-radius: 50%; border: none; cursor: pointer;
  background: rgba(255,255,255,0.14); color: #fff; font-size: 18px; }

/* feed post: make actions look tappable + inline comments */

/* ============ Facebook-style GROUP page ============ */

/* trust score breakdown */

/* discover filters */

/* chat attachment tray (photos held before sending) */
.attach-tray { display: flex; gap: 8px; padding: 10px 14px; overflow-x: auto; scrollbar-width: none; border-top: 1px solid var(--line); }
.attach-tray::-webkit-scrollbar { display: none; }
/* chat composer: tray stacks ABOVE the input inside the fixed bar (pinned, not lost in flow) */
.composer.has-tray { flex-direction: column; align-items: stretch; gap: 8px; }
.composer .composer-row { display: flex; gap: 8px; align-items: center; flex: 1 1 auto; width: 100%; min-width: 0; }
.composer .composer-row input { flex: 1; }
.composer .attach-tray { border-top: none; padding: 0; margin: 0; }
.at-thumb { position: relative; flex: 0 0 auto; width: 62px; height: 62px; border-radius: 12px; overflow: hidden; border: 1px solid var(--line-2); background: #000; }
.at-thumb img, .at-thumb video { width: 100%; height: 100%; object-fit: cover; }
.at-vtag { position: absolute; inset: 0; display: grid; place-items: center; color: #fff; font-size: 16px; background: rgba(0,0,0,0.25); }
.at-rm { position: absolute; top: 3px; right: 3px; width: 20px; height: 20px; border-radius: 999px; border: none; cursor: pointer;
  background: rgba(10,8,12,0.7); color: #fff; font-size: 11px; display: grid; place-items: center; }

/* podium */

/* how to climb */

/* ============ profile quick-peek modal ============ */
.peek-wrap { position: fixed; inset: 0; z-index: 200; display: flex; align-items: center; justify-content: center; padding: 20px; }
.peek-backdrop { position: absolute; inset: 0; border: none; background: rgba(6,4,9,0.66); backdrop-filter: blur(4px); cursor: pointer; }
.peek-modal { position: relative; z-index: 1; width: 100%; max-width: 400px; max-height: 88vh; overflow-y: auto;
  background: var(--bg); border: 1px solid var(--line-2); border-radius: 24px; box-shadow: 0 24px 70px rgba(0,0,0,0.6);
  animation: peekIn .22s cubic-bezier(.2,.9,.3,1); }
@keyframes peekIn { from { opacity: 0; transform: translateY(16px) scale(0.97); } to { opacity: 1; transform: none; } }
.peek-cover { position: relative; height: 200px; background-size: cover; background-position: center 18%; border-radius: 24px 24px 0 0; }
.peek-x { position: absolute; top: 12px; right: 12px; z-index: 5; width: 32px; height: 32px; border-radius: 999px; border: none;
  background: rgba(10,8,12,0.55); color: #fff; display: grid; place-items: center; cursor: pointer; backdrop-filter: blur(8px); }
.peek-x svg { width: 17px; height: 17px; }
.peek-online { position: absolute; left: 12px; top: 12px; font-size: 11px; font-weight: 700; padding: 5px 10px; border-radius: 999px; background: rgba(10,8,12,0.55); color: #fff; backdrop-filter: blur(8px); }
.peek-match { position: absolute; left: 12px; bottom: 12px; font-size: 12px; font-weight: 700; padding: 6px 12px; border-radius: 999px; background: rgba(10,8,12,0.62); color: #fff; backdrop-filter: blur(8px); }
.peek-body { padding: 16px 18px 18px; }
.peek-why { font-size: 14px; line-height: 1.5; font-style: italic; color: var(--text); margin: 4px 0 10px; }
.peek-hl { display: flex; flex-direction: column; gap: 6px; font-size: 13px; color: var(--dim); margin-bottom: 12px; }

/* course Q&A — buyer↔instructor thread + creator inbox */

.req-row.unread { background: rgba(139,123,255,0.06); }

.seg-n { display: inline-block; margin-left: 5px; padding: 0 6px; border-radius: 8px; font-size: 11px; font-weight: 800; background: rgba(255,255,255,0.12); vertical-align: middle; }

/* broadcaster (streamer's own control room) */
.bc-head { display: flex; align-items: center; gap: 8px; font-size: 14px; }
.bc-dot { width: 9px; height: 9px; border-radius: 50%; background: var(--dim-2, #6b6675); flex: none; }
.bc-dot.on { background: #ff5a5a; box-shadow: 0 0 0 4px rgba(255,90,90,0.18); animation: bcpulse 1.6s ease-in-out infinite; }
@keyframes bcpulse { 0%,100% { box-shadow: 0 0 0 3px rgba(255,90,90,0.22); } 50% { box-shadow: 0 0 0 6px rgba(255,90,90,0.08); } }
.bc-end { background: rgba(255,90,90,0.14); border: 1px solid rgba(255,90,90,0.32); color: #ff9a9a; }
.bc-end:active { transform: translateY(1px); }
/* You page — "your stuff" compact tile grid (replaces the wall of full-width rows) */

/* Creator Studio — seller backend */

/* Home hub — your stuff (lobbies · chats · courses · teams · up next) */

.home-empty { display: flex; align-items: center; justify-content: space-between; gap: 10px; padding: 16px; border-radius: 14px; background: var(--surface); border: 1px dashed var(--line-2, var(--line)); text-decoration: none; }

.peek-full { display: block; text-align: center; margin-top: 12px; font-size: 13px; font-weight: 700; color: var(--dim); text-decoration: none; }

/* ============ live: detail + filter ============ */
.stream-dek { font-size: 12px; line-height: 1.4; color: var(--dim); margin-top: 8px; display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; overflow: hidden; }

.live-games { gap: 7px; margin: 0 0 14px; overflow-x: auto; flex-wrap: nowrap; -webkit-overflow-scrolling: touch; scrollbar-width: none; padding-bottom: 2px; }
.live-games::-webkit-scrollbar { display: none; }
.live-games .chip { flex: 0 0 auto; }
.game-select { margin: 0 0 14px; width: 100%; appearance: none; -webkit-appearance: none; cursor: pointer;
  background-color: var(--glass); border: 1px solid var(--glass-line); border-radius: 14px; color: var(--text);
  backdrop-filter: blur(14px) saturate(1.25); -webkit-backdrop-filter: blur(14px) saturate(1.25); padding: 13px 15px;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='14' height='14' viewBox='0 0 24 24' fill='none' stroke='%23bbb' stroke-width='2.5'%3E%3Cpath d='M6 9l6 6 6-6'/%3E%3C/svg%3E");
  background-repeat: no-repeat; background-position: right 14px center; padding-right: 38px; }
.game-select option { background: #1c1822; color: var(--text); }

/* ═══ Club Guide — in-app help bot ═══ */
/* Club Guide launcher — robot-with-question-mark button in the app bar (before search). */
.cg-help-btn { position: relative; overflow: visible; }
.cg-help-btn svg { width: 22px; height: 22px; margin-top: 2px; }
.cg-help-btn .cg-q { position: absolute; top: 3px; left: 50%; transform: translateX(-50%); font-size: 10px; font-weight: 900; line-height: 1; color: var(--mint, #8be0ff); pointer-events: none; }
.cg-help-btn:active { transform: scale(0.94); }
.cg-panel { position: fixed; z-index: 1350; right: 16px; bottom: 82px; width: min(374px, calc(100vw - 32px)); height: min(544px, calc(100dvh - 150px)); background: #17141d; border: 1px solid var(--line); border-radius: 18px; display: flex; flex-direction: column; overflow: hidden; box-shadow: 0 26px 72px rgba(0,0,0,0.62); animation: cgUp .28s cubic-bezier(.16,1,.3,1); }
@keyframes cgUp { from { opacity: 0; transform: translateY(16px) scale(0.97); } to { opacity: 1; transform: none; } }
.cg-head { display: flex; align-items: center; gap: 10px; padding: 13px 15px; border-bottom: 1px solid var(--line); background: var(--surface); flex: none; }
.cg-hav { width: 34px; height: 34px; border-radius: 50%; background: var(--surface-3); display: grid; place-items: center; font-size: 18px; flex: none; }
.cg-head b { font-size: 14.5px; letter-spacing: -0.01em; }
.cg-sub { font-size: 11.5px; color: var(--dim); }
.cg-x { width: 30px; height: 30px; border-radius: 8px; border: none; background: rgba(255,255,255,0.06); color: var(--dim); cursor: pointer; flex: none; font-size: 13px; }
.cg-body { flex: 1; overflow-y: auto; padding: 14px; display: flex; flex-direction: column; gap: 10px; }
.cg-row { display: flex; gap: 7px; align-items: flex-end; }
.cg-row.me { justify-content: flex-end; }
.cg-av { width: 24px; height: 24px; border-radius: 50%; background: var(--surface-3); display: grid; place-items: center; font-size: 13px; flex: none; }
.cg-msg { max-width: 82%; padding: 9px 13px; font-size: 13.5px; line-height: 1.5; border-radius: 14px; }
.cg-msg.bot { background: var(--surface); border: 1px solid var(--line); color: var(--text); border-bottom-left-radius: 5px; }
.cg-msg.me { background: #fff; color: #17141d; font-weight: 600; border-bottom-right-radius: 5px; }
.cg-welcome { text-align: center; padding: 16px 12px 4px; }
.cg-welcome-em { font-size: 30px; }
.cg-welcome b { display: block; font-size: 15.5px; margin: 6px 0 5px; }
.cg-welcome p { font-size: 13px; color: var(--dim); line-height: 1.5; margin: 0; }
.cg-chips { display: flex; flex-wrap: wrap; gap: 7px; margin-top: 6px; }
.cg-related { width: 100%; font-size: 10.5px; font-weight: 800; letter-spacing: 0.09em; text-transform: uppercase; color: var(--dim-2); margin-bottom: 1px; }
.cg-chip { padding: 8px 13px; border-radius: 20px; background: transparent; border: 1px solid var(--line); color: var(--text); font-size: 12.5px; cursor: pointer; text-align: left; line-height: 1.3; }
.cg-chip:active { background: rgba(255,255,255,0.07); }
.cg-form { display: flex; gap: 8px; padding: 11px 12px; border-top: 1px solid var(--line); background: var(--surface); flex: none; }
.cg-form input { flex: 1; height: 40px; padding: 0 13px; border-radius: 11px; border: 1px solid var(--line); background: #0f0d14; color: var(--text); font-size: 14px; outline: none; }
.cg-form input:focus { border-color: rgba(255,255,255,0.28); }
.cg-go { width: 40px; height: 40px; border-radius: 11px; border: none; background: #fff; color: #17141d; display: grid; place-items: center; cursor: pointer; flex: none; }
.cg-go svg { width: 18px; height: 18px; }
@media (min-width: 980px) {
  .cg-panel { left: auto; right: max(24px, calc(50vw - 816px)); bottom: 24px; }
}

/* ============================================================
   NEON CYBERPUNK OVERLAY — appended last so it wins the cascade.
   STORY MODE book-cover look: dark surfaces, glowing neon OUTLINES
   only (borders / edges / text-glow) — NEVER fills. Yellow tube-light
   headings; magenta/violet/blue light that TRAVELS around the hero.
   ============================================================ */

/* traveling-angle custom prop for the conic border */
@property --neonAngle { syntax: '<angle>'; initial-value: 0deg; inherits: false; }
@keyframes neonSpin { to { --neonAngle: 360deg; } }
@keyframes neonHaze { from { background-position: 0% 0%, 100% 0%, 50% 100%; } to { background-position: 22% -14%, 80% 16%, 40% 90%; } }

@keyframes neonSign { 0%, 100% { color: #ff2d9b; text-shadow: 0 0 5px rgba(255,45,155,0.75), 0 0 14px rgba(255,45,155,0.40); } 50% { color: #38bdf8; text-shadow: 0 0 5px rgba(56,189,248,0.75), 0 0 14px rgba(56,189,248,0.40); } }

/* ---- backdrop: animated neon haze — a DIFFERENT color scheme per section ---- */
#app-frame::before {
  content: '';
  position: absolute;
  inset: 0;
  z-index: 0;
  pointer-events: none;
  background:
    radial-gradient(62% 50% at 12% 6%, var(--bgA, rgba(255,45,155,0.28)), transparent 60%),
    radial-gradient(58% 46% at 88% 16%, var(--bgB, rgba(56,189,248,0.26)), transparent 58%),
    radial-gradient(72% 56% at 50% 106%, var(--bgC, rgba(168,85,247,0.26)), transparent 60%),
    radial-gradient(50% 42% at 8% 88%, rgba(124,92,255,0.18), transparent 60%);
  background-color: transparent;
  animation: neonHaze 28s ease-in-out infinite alternate;
}
body[data-bg="discover"] #app-frame::before, body[data-bg="lobbies"] #app-frame::before, body[data-bg="lobby"] #app-frame::before { --bgA: rgba(56,189,248,0.26); --bgB: rgba(168,85,247,0.18); --bgC: rgba(255,45,155,0.16); }
body[data-bg="market"] #app-frame::before, body[data-bg="listing"] #app-frame::before, body[data-bg="merch"] #app-frame::before { --bgA: rgba(56,189,248,0.24); --bgB: rgba(168,85,247,0.18); --bgC: rgba(56,189,248,0.18); }
body[data-bg="live"] #app-frame::before, body[data-bg="streams"] #app-frame::before, body[data-bg="stream"] #app-frame::before { --bgA: rgba(255,45,155,0.30); --bgB: rgba(168,85,247,0.20); --bgC: rgba(255,45,155,0.18); }
body[data-bg="squads"] #app-frame::before, body[data-bg="team"] #app-frame::before, body[data-bg="board"] #app-frame::before, body[data-bg="thread"] #app-frame::before { --bgA: rgba(168,85,247,0.26); --bgB: rgba(56,189,248,0.18); --bgC: rgba(168,85,247,0.18); }
body[data-bg="feed"] #app-frame::before, body[data-bg="post"] #app-frame::before { --bgA: rgba(168,85,247,0.26); --bgB: rgba(255,45,155,0.18); --bgC: rgba(56,189,248,0.16); }
body[data-bg="clips"] #app-frame::before, body[data-bg="clip"] #app-frame::before { --bgA: rgba(255,45,155,0.24); --bgB: rgba(56,189,248,0.20); --bgC: rgba(168,85,247,0.16); }
body[data-bg="me"] #app-frame::before, body[data-bg="you"] #app-frame::before, body[data-bg="wallet"] #app-frame::before, body[data-bg="studio"] #app-frame::before { --bgA: rgba(124,92,255,0.24); --bgB: rgba(168,85,247,0.18); --bgC: rgba(56,189,248,0.16); }
body[data-bg="ranks"] #app-frame::before, body[data-bg="quests"] #app-frame::before, body[data-bg="tournaments"] #app-frame::before, body[data-bg="tournament"] #app-frame::before { --bgA: rgba(124,92,255,0.26); --bgB: rgba(255,45,155,0.16); --bgC: rgba(168,85,247,0.16); }
body[data-bg="games"] #app-frame::before, body[data-bg="game"] #app-frame::before { --bgA: rgba(56,189,248,0.26); --bgB: rgba(124,92,255,0.20); --bgC: rgba(255,45,155,0.16); }
body[data-bg="u"] #app-frame::before { --bgA: rgba(124,92,255,0.24); --bgB: rgba(56,189,248,0.18); --bgC: rgba(255,45,155,0.14); }
/* ---- FLOATING GAMEPADS: the tab-bar gamepad icon drifts through the backdrop,
   cycling colors. One masked layer (mask = 7 scattered gamepad cutouts, painted
   by an animated neon gradient + hue-rotate). Lives on a pseudo of #app-frame so
   render()'s innerHTML swaps never restart it. ---- */
@keyframes padBob { 0% { transform: translateY(0); } 100% { transform: translateY(-26px); } }
@keyframes padHue { to { filter: hue-rotate(360deg); } }
#app-frame::after {
  content: '';
  position: absolute;
  inset: -30px 0;
  z-index: 1;
  pointer-events: none;
  opacity: 0.15;
  background: linear-gradient(120deg, #ff2d9b, #a855f7 35%, #38bdf8 70%, #ff2d9b);
  -webkit-mask: url("data:image/svg+xml,%3Csvg%20xmlns%3D'http://www.w3.org/2000/svg'%20viewBox%3D'0%200%2024%2024'%20fill%3D'none'%20stroke%3D'black'%20stroke-width%3D'1.2'%20stroke-linecap%3D'round'%20stroke-linejoin%3D'round'%3E%3Cpath%20d%3D'M8.5%209h7a4.7%204.7%200%200%201%204.6%203.7l.7%203.9a2.4%202.4%200%200%201-4.4%201.7l-.8-1.5a2%202%200%200%200-1.8-1.1h-3.6a2%202%200%200%200-1.8%201.1l-.8%201.5A2.4%202.4%200%200%201%203.2%2016.6l.7-3.9A4.7%204.7%200%200%201%208.5%209z'/%3E%3Cpath%20d%3D'M8%2012v2.2M6.9%2013.1h2.2'/%3E%3Ccircle%20cx%3D'15'%20cy%3D'12.6'%20r%3D'.95'%20fill%3D'black'%20stroke%3D'none'/%3E%3Ccircle%20cx%3D'16.9'%20cy%3D'14.3'%20r%3D'.95'%20fill%3D'black'%20stroke%3D'none'/%3E%3C/svg%3E") 8% 12% / 54px 54px no-repeat, url("data:image/svg+xml,%3Csvg%20xmlns%3D'http://www.w3.org/2000/svg'%20viewBox%3D'0%200%2024%2024'%20fill%3D'none'%20stroke%3D'black'%20stroke-width%3D'1.2'%20stroke-linecap%3D'round'%20stroke-linejoin%3D'round'%3E%3Cpath%20d%3D'M8.5%209h7a4.7%204.7%200%200%201%204.6%203.7l.7%203.9a2.4%202.4%200%200%201-4.4%201.7l-.8-1.5a2%202%200%200%200-1.8-1.1h-3.6a2%202%200%200%200-1.8%201.1l-.8%201.5A2.4%202.4%200%200%201%203.2%2016.6l.7-3.9A4.7%204.7%200%200%201%208.5%209z'/%3E%3Cpath%20d%3D'M8%2012v2.2M6.9%2013.1h2.2'/%3E%3Ccircle%20cx%3D'15'%20cy%3D'12.6'%20r%3D'.95'%20fill%3D'black'%20stroke%3D'none'/%3E%3Ccircle%20cx%3D'16.9'%20cy%3D'14.3'%20r%3D'.95'%20fill%3D'black'%20stroke%3D'none'/%3E%3C/svg%3E") 84% 8% / 38px 38px no-repeat, url("data:image/svg+xml,%3Csvg%20xmlns%3D'http://www.w3.org/2000/svg'%20viewBox%3D'0%200%2024%2024'%20fill%3D'none'%20stroke%3D'black'%20stroke-width%3D'1.2'%20stroke-linecap%3D'round'%20stroke-linejoin%3D'round'%3E%3Cpath%20d%3D'M8.5%209h7a4.7%204.7%200%200%201%204.6%203.7l.7%203.9a2.4%202.4%200%200%201-4.4%201.7l-.8-1.5a2%202%200%200%200-1.8-1.1h-3.6a2%202%200%200%200-1.8%201.1l-.8%201.5A2.4%202.4%200%200%201%203.2%2016.6l.7-3.9A4.7%204.7%200%200%201%208.5%209z'/%3E%3Cpath%20d%3D'M8%2012v2.2M6.9%2013.1h2.2'/%3E%3Ccircle%20cx%3D'15'%20cy%3D'12.6'%20r%3D'.95'%20fill%3D'black'%20stroke%3D'none'/%3E%3Ccircle%20cx%3D'16.9'%20cy%3D'14.3'%20r%3D'.95'%20fill%3D'black'%20stroke%3D'none'/%3E%3C/svg%3E") 64% 26% / 70px 70px no-repeat, url("data:image/svg+xml,%3Csvg%20xmlns%3D'http://www.w3.org/2000/svg'%20viewBox%3D'0%200%2024%2024'%20fill%3D'none'%20stroke%3D'black'%20stroke-width%3D'1.2'%20stroke-linecap%3D'round'%20stroke-linejoin%3D'round'%3E%3Cpath%20d%3D'M8.5%209h7a4.7%204.7%200%200%201%204.6%203.7l.7%203.9a2.4%202.4%200%200%201-4.4%201.7l-.8-1.5a2%202%200%200%200-1.8-1.1h-3.6a2%202%200%200%200-1.8%201.1l-.8%201.5A2.4%202.4%200%200%201%203.2%2016.6l.7-3.9A4.7%204.7%200%200%201%208.5%209z'/%3E%3Cpath%20d%3D'M8%2012v2.2M6.9%2013.1h2.2'/%3E%3Ccircle%20cx%3D'15'%20cy%3D'12.6'%20r%3D'.95'%20fill%3D'black'%20stroke%3D'none'/%3E%3Ccircle%20cx%3D'16.9'%20cy%3D'14.3'%20r%3D'.95'%20fill%3D'black'%20stroke%3D'none'/%3E%3C/svg%3E") 14% 44% / 34px 34px no-repeat, url("data:image/svg+xml,%3Csvg%20xmlns%3D'http://www.w3.org/2000/svg'%20viewBox%3D'0%200%2024%2024'%20fill%3D'none'%20stroke%3D'black'%20stroke-width%3D'1.2'%20stroke-linecap%3D'round'%20stroke-linejoin%3D'round'%3E%3Cpath%20d%3D'M8.5%209h7a4.7%204.7%200%200%201%204.6%203.7l.7%203.9a2.4%202.4%200%200%201-4.4%201.7l-.8-1.5a2%202%200%200%200-1.8-1.1h-3.6a2%202%200%200%200-1.8%201.1l-.8%201.5A2.4%202.4%200%200%201%203.2%2016.6l.7-3.9A4.7%204.7%200%200%201%208.5%209z'/%3E%3Cpath%20d%3D'M8%2012v2.2M6.9%2013.1h2.2'/%3E%3Ccircle%20cx%3D'15'%20cy%3D'12.6'%20r%3D'.95'%20fill%3D'black'%20stroke%3D'none'/%3E%3Ccircle%20cx%3D'16.9'%20cy%3D'14.3'%20r%3D'.95'%20fill%3D'black'%20stroke%3D'none'/%3E%3C/svg%3E") 90% 58% / 52px 52px no-repeat, url("data:image/svg+xml,%3Csvg%20xmlns%3D'http://www.w3.org/2000/svg'%20viewBox%3D'0%200%2024%2024'%20fill%3D'none'%20stroke%3D'black'%20stroke-width%3D'1.2'%20stroke-linecap%3D'round'%20stroke-linejoin%3D'round'%3E%3Cpath%20d%3D'M8.5%209h7a4.7%204.7%200%200%201%204.6%203.7l.7%203.9a2.4%202.4%200%200%201-4.4%201.7l-.8-1.5a2%202%200%200%200-1.8-1.1h-3.6a2%202%200%200%200-1.8%201.1l-.8%201.5A2.4%202.4%200%200%201%203.2%2016.6l.7-3.9A4.7%204.7%200%200%201%208.5%209z'/%3E%3Cpath%20d%3D'M8%2012v2.2M6.9%2013.1h2.2'/%3E%3Ccircle%20cx%3D'15'%20cy%3D'12.6'%20r%3D'.95'%20fill%3D'black'%20stroke%3D'none'/%3E%3Ccircle%20cx%3D'16.9'%20cy%3D'14.3'%20r%3D'.95'%20fill%3D'black'%20stroke%3D'none'/%3E%3C/svg%3E") 30% 74% / 64px 64px no-repeat, url("data:image/svg+xml,%3Csvg%20xmlns%3D'http://www.w3.org/2000/svg'%20viewBox%3D'0%200%2024%2024'%20fill%3D'none'%20stroke%3D'black'%20stroke-width%3D'1.2'%20stroke-linecap%3D'round'%20stroke-linejoin%3D'round'%3E%3Cpath%20d%3D'M8.5%209h7a4.7%204.7%200%200%201%204.6%203.7l.7%203.9a2.4%202.4%200%200%201-4.4%201.7l-.8-1.5a2%202%200%200%200-1.8-1.1h-3.6a2%202%200%200%200-1.8%201.1l-.8%201.5A2.4%202.4%200%200%201%203.2%2016.6l.7-3.9A4.7%204.7%200%200%201%208.5%209z'/%3E%3Cpath%20d%3D'M8%2012v2.2M6.9%2013.1h2.2'/%3E%3Ccircle%20cx%3D'15'%20cy%3D'12.6'%20r%3D'.95'%20fill%3D'black'%20stroke%3D'none'/%3E%3Ccircle%20cx%3D'16.9'%20cy%3D'14.3'%20r%3D'.95'%20fill%3D'black'%20stroke%3D'none'/%3E%3C/svg%3E") 72% 88% / 40px 40px no-repeat;
  mask: url("data:image/svg+xml,%3Csvg%20xmlns%3D'http://www.w3.org/2000/svg'%20viewBox%3D'0%200%2024%2024'%20fill%3D'none'%20stroke%3D'black'%20stroke-width%3D'1.2'%20stroke-linecap%3D'round'%20stroke-linejoin%3D'round'%3E%3Cpath%20d%3D'M8.5%209h7a4.7%204.7%200%200%201%204.6%203.7l.7%203.9a2.4%202.4%200%200%201-4.4%201.7l-.8-1.5a2%202%200%200%200-1.8-1.1h-3.6a2%202%200%200%200-1.8%201.1l-.8%201.5A2.4%202.4%200%200%201%203.2%2016.6l.7-3.9A4.7%204.7%200%200%201%208.5%209z'/%3E%3Cpath%20d%3D'M8%2012v2.2M6.9%2013.1h2.2'/%3E%3Ccircle%20cx%3D'15'%20cy%3D'12.6'%20r%3D'.95'%20fill%3D'black'%20stroke%3D'none'/%3E%3Ccircle%20cx%3D'16.9'%20cy%3D'14.3'%20r%3D'.95'%20fill%3D'black'%20stroke%3D'none'/%3E%3C/svg%3E") 8% 12% / 54px 54px no-repeat, url("data:image/svg+xml,%3Csvg%20xmlns%3D'http://www.w3.org/2000/svg'%20viewBox%3D'0%200%2024%2024'%20fill%3D'none'%20stroke%3D'black'%20stroke-width%3D'1.2'%20stroke-linecap%3D'round'%20stroke-linejoin%3D'round'%3E%3Cpath%20d%3D'M8.5%209h7a4.7%204.7%200%200%201%204.6%203.7l.7%203.9a2.4%202.4%200%200%201-4.4%201.7l-.8-1.5a2%202%200%200%200-1.8-1.1h-3.6a2%202%200%200%200-1.8%201.1l-.8%201.5A2.4%202.4%200%200%201%203.2%2016.6l.7-3.9A4.7%204.7%200%200%201%208.5%209z'/%3E%3Cpath%20d%3D'M8%2012v2.2M6.9%2013.1h2.2'/%3E%3Ccircle%20cx%3D'15'%20cy%3D'12.6'%20r%3D'.95'%20fill%3D'black'%20stroke%3D'none'/%3E%3Ccircle%20cx%3D'16.9'%20cy%3D'14.3'%20r%3D'.95'%20fill%3D'black'%20stroke%3D'none'/%3E%3C/svg%3E") 84% 8% / 38px 38px no-repeat, url("data:image/svg+xml,%3Csvg%20xmlns%3D'http://www.w3.org/2000/svg'%20viewBox%3D'0%200%2024%2024'%20fill%3D'none'%20stroke%3D'black'%20stroke-width%3D'1.2'%20stroke-linecap%3D'round'%20stroke-linejoin%3D'round'%3E%3Cpath%20d%3D'M8.5%209h7a4.7%204.7%200%200%201%204.6%203.7l.7%203.9a2.4%202.4%200%200%201-4.4%201.7l-.8-1.5a2%202%200%200%200-1.8-1.1h-3.6a2%202%200%200%200-1.8%201.1l-.8%201.5A2.4%202.4%200%200%201%203.2%2016.6l.7-3.9A4.7%204.7%200%200%201%208.5%209z'/%3E%3Cpath%20d%3D'M8%2012v2.2M6.9%2013.1h2.2'/%3E%3Ccircle%20cx%3D'15'%20cy%3D'12.6'%20r%3D'.95'%20fill%3D'black'%20stroke%3D'none'/%3E%3Ccircle%20cx%3D'16.9'%20cy%3D'14.3'%20r%3D'.95'%20fill%3D'black'%20stroke%3D'none'/%3E%3C/svg%3E") 64% 26% / 70px 70px no-repeat, url("data:image/svg+xml,%3Csvg%20xmlns%3D'http://www.w3.org/2000/svg'%20viewBox%3D'0%200%2024%2024'%20fill%3D'none'%20stroke%3D'black'%20stroke-width%3D'1.2'%20stroke-linecap%3D'round'%20stroke-linejoin%3D'round'%3E%3Cpath%20d%3D'M8.5%209h7a4.7%204.7%200%200%201%204.6%203.7l.7%203.9a2.4%202.4%200%200%201-4.4%201.7l-.8-1.5a2%202%200%200%200-1.8-1.1h-3.6a2%202%200%200%200-1.8%201.1l-.8%201.5A2.4%202.4%200%200%201%203.2%2016.6l.7-3.9A4.7%204.7%200%200%201%208.5%209z'/%3E%3Cpath%20d%3D'M8%2012v2.2M6.9%2013.1h2.2'/%3E%3Ccircle%20cx%3D'15'%20cy%3D'12.6'%20r%3D'.95'%20fill%3D'black'%20stroke%3D'none'/%3E%3Ccircle%20cx%3D'16.9'%20cy%3D'14.3'%20r%3D'.95'%20fill%3D'black'%20stroke%3D'none'/%3E%3C/svg%3E") 14% 44% / 34px 34px no-repeat, url("data:image/svg+xml,%3Csvg%20xmlns%3D'http://www.w3.org/2000/svg'%20viewBox%3D'0%200%2024%2024'%20fill%3D'none'%20stroke%3D'black'%20stroke-width%3D'1.2'%20stroke-linecap%3D'round'%20stroke-linejoin%3D'round'%3E%3Cpath%20d%3D'M8.5%209h7a4.7%204.7%200%200%201%204.6%203.7l.7%203.9a2.4%202.4%200%200%201-4.4%201.7l-.8-1.5a2%202%200%200%200-1.8-1.1h-3.6a2%202%200%200%200-1.8%201.1l-.8%201.5A2.4%202.4%200%200%201%203.2%2016.6l.7-3.9A4.7%204.7%200%200%201%208.5%209z'/%3E%3Cpath%20d%3D'M8%2012v2.2M6.9%2013.1h2.2'/%3E%3Ccircle%20cx%3D'15'%20cy%3D'12.6'%20r%3D'.95'%20fill%3D'black'%20stroke%3D'none'/%3E%3Ccircle%20cx%3D'16.9'%20cy%3D'14.3'%20r%3D'.95'%20fill%3D'black'%20stroke%3D'none'/%3E%3C/svg%3E") 90% 58% / 52px 52px no-repeat, url("data:image/svg+xml,%3Csvg%20xmlns%3D'http://www.w3.org/2000/svg'%20viewBox%3D'0%200%2024%2024'%20fill%3D'none'%20stroke%3D'black'%20stroke-width%3D'1.2'%20stroke-linecap%3D'round'%20stroke-linejoin%3D'round'%3E%3Cpath%20d%3D'M8.5%209h7a4.7%204.7%200%200%201%204.6%203.7l.7%203.9a2.4%202.4%200%200%201-4.4%201.7l-.8-1.5a2%202%200%200%200-1.8-1.1h-3.6a2%202%200%200%200-1.8%201.1l-.8%201.5A2.4%202.4%200%200%201%203.2%2016.6l.7-3.9A4.7%204.7%200%200%201%208.5%209z'/%3E%3Cpath%20d%3D'M8%2012v2.2M6.9%2013.1h2.2'/%3E%3Ccircle%20cx%3D'15'%20cy%3D'12.6'%20r%3D'.95'%20fill%3D'black'%20stroke%3D'none'/%3E%3Ccircle%20cx%3D'16.9'%20cy%3D'14.3'%20r%3D'.95'%20fill%3D'black'%20stroke%3D'none'/%3E%3C/svg%3E") 30% 74% / 64px 64px no-repeat, url("data:image/svg+xml,%3Csvg%20xmlns%3D'http://www.w3.org/2000/svg'%20viewBox%3D'0%200%2024%2024'%20fill%3D'none'%20stroke%3D'black'%20stroke-width%3D'1.2'%20stroke-linecap%3D'round'%20stroke-linejoin%3D'round'%3E%3Cpath%20d%3D'M8.5%209h7a4.7%204.7%200%200%201%204.6%203.7l.7%203.9a2.4%202.4%200%200%201-4.4%201.7l-.8-1.5a2%202%200%200%200-1.8-1.1h-3.6a2%202%200%200%200-1.8%201.1l-.8%201.5A2.4%202.4%200%200%201%203.2%2016.6l.7-3.9A4.7%204.7%200%200%201%208.5%209z'/%3E%3Cpath%20d%3D'M8%2012v2.2M6.9%2013.1h2.2'/%3E%3Ccircle%20cx%3D'15'%20cy%3D'12.6'%20r%3D'.95'%20fill%3D'black'%20stroke%3D'none'/%3E%3Ccircle%20cx%3D'16.9'%20cy%3D'14.3'%20r%3D'.95'%20fill%3D'black'%20stroke%3D'none'/%3E%3C/svg%3E") 72% 88% / 40px 40px no-repeat;
  animation: padBob 6.5s ease-in-out infinite alternate, padHue 8s linear infinite;
}
/* lift content above the z-index:0 backdrop WITHOUT making #app a stacking
   context — in-app modals/sheets/lightbox (z-index 60/61/200, injected into
   #app) must still escape to the root and paint above #tabbar (z-index 50). */
#app { position: relative; }

/* ---- headings: SOLID fill + neon glow (readable — no hollow outlines) ---- */

.appbar h1, .home-sec-h, .section-title {
  color: #f4eeff;
  text-shadow: 0 0 4px rgba(56,189,248,0.20);
}
.home-sec-h a, .section-title a {
  color: var(--neon-blue);
  text-shadow: none;
}
/* ---- brand wordmark = a color-changing neon SIGN ---- */
.appbar .logo, .onb-logo {
  background: none;
  -webkit-background-clip: border-box;
  background-clip: border-box;
  -webkit-text-fill-color: currentColor;
  animation: neonSign 4.5s ease-in-out infinite;
}

/* ---- KEY hero card (.home-next): traveling multi-neon border + glow halo ---- */
/* Interior stays DARK. The ::before is a conic ring masked to the 1.5px edge and
   SPINS (the "traveling lights"). The outer glow halo is a layered multi-color
   box-shadow (robust vs. stacking contexts; never fills the interior). No
   transform/filter/opacity here so #app stays a non-stacking-context (modals). */

/* ---- every card: a neon outline that CYCLES color (app-wide) ---- */
.card, .home-row {
  background: rgba(20,16,31,0.6);
  border: 1px solid rgba(148,120,255,0.22);
  box-shadow: 0 2px 12px rgba(0,0,0,0.3);
  -webkit-backdrop-filter: blur(14px);
  backdrop-filter: blur(14px);
}
/* section panels get the SAME traveling pink/blue border as the hero */

/* bare list rows read as neon cards (matching Home's rich look); rows INSIDE a home panel stay simple */

/* ---- fills → neon OUTLINES (kill the white/liquid-glass pills) ---- */
.btn-primary {
  background: rgba(10,8,16,0.55);
  -webkit-backdrop-filter: blur(10px);
  backdrop-filter: blur(10px);
  color: var(--text);
  border: 1px solid var(--neon-yellow);
  box-shadow: 0 0 12px rgba(168,85,247,0.35), inset 0 0 14px rgba(168,85,247,0.10);
  text-shadow: 0 0 8px rgba(168,85,247,0.45);
}
.seg .active, .seg button.active, .home-toggle a.active {
  background: rgba(56,189,248,0.10);
  color: #eaf3ff;
  box-shadow: inset 0 0 0 1px rgba(56,189,248,0.55);
  text-shadow: none;
  -webkit-backdrop-filter: none;
  backdrop-filter: none;
}
.chip.on {
  /* CHOSEN must read instantly ("make the games they choose way more obvious")
     — lit-neon fill, not just a rim. hardno.on keeps its red (higher
     specificity). */
  background: linear-gradient(135deg, #ff2d9b, #a855f7);
  border: 1px solid rgba(255,255,255,0.4);
  color: #fff;
  font-weight: 800;
  text-shadow: 0 1px 6px rgba(0,0,0,0.35);
  box-shadow: 0 0 16px rgba(255,45,155,0.55), 0 0 30px rgba(168,85,247,0.30);
  -webkit-backdrop-filter: none;
  backdrop-filter: none;
}
/* pickers in sheets (setup tour, filters) stamp a check on top of the fill */
.sheet .chip.on[data-act]::before { content: '✓ '; font-weight: 900; }

/* ---- active nav → neon glow accent, never a solid fill ---- */
/* the ONE sanctioned yellow: the active nav label (user call — sidebar keeps its gold) */
.tab.active { color: #ffe14d; text-shadow: 0 0 4px rgba(255,225,77,0.30); }
.tab.active svg { color: var(--neon-blue); filter: drop-shadow(0 0 5px rgba(56,189,248,0.75)); }

/* ---- dark-glass bars get a thin neon edge line ---- */
.appbar { border-bottom: 1px solid rgba(168,85,247,0.28); box-shadow: 0 1px 0 rgba(168,85,247,0.10), 0 6px 22px rgba(0,0,0,0.30); }
#tabbar { border-top: 1px solid rgba(168,85,247,0.28); box-shadow: 0 -1px 0 rgba(168,85,247,0.10), 0 -6px 24px rgba(0,0,0,0.35); }

/* ---- AURORA — full-viewport, persistent (body pseudo: survives every render()) ---- */
@keyframes auroraDrift {
  0%   { background-position: 0% 0%, 100% 0%, 50% 100%, 0% 100%; }
  100% { background-position: 30% 18%, 60% 30%, 20% 60%, 40% 40%; }
}
body::before {
  content: '';
  position: fixed;
  inset: 0;
  z-index: -1;
  pointer-events: none;
  background:
    radial-gradient(52% 42% at 12% 10%, rgba(124,92,255,0.20), transparent 62%),
    radial-gradient(50% 40% at 88% 18%, rgba(56,189,248,0.10), transparent 60%),
    radial-gradient(60% 50% at 50% 102%, rgba(168,85,247,0.16), transparent 62%),
    radial-gradient(46% 40% at 6% 92%, rgba(255,45,155,0.10), transparent 60%);
  background-color: #07050c;
  background-size: 160% 160%, 160% 160%, 160% 160%, 160% 160%;
  animation: auroraDrift 36s ease-in-out infinite alternate;
}

/* ---- desktop: rail edge + active accent go neon ---- */
@media (min-width: 980px) {
  #tabbar {
    border: 1px solid rgba(168,85,247,0.30);
    box-shadow: 0 0 30px rgba(168,85,247,0.10), inset 0 1px 0 rgba(255,255,255,0.06);
  }
  .tab.active {
    background: rgba(255,255,255,0.03);
    box-shadow: inset 3px 0 0 var(--neon-magenta), 0 0 14px rgba(255,45,155,0.16);
  }
}

/* ---- reduced motion: freeze the spin, keep the glow ---- */
@media (prefers-reduced-motion: reduce) {
  .home-next::before, .home-col::before, .card, .home-row, .appbar .logo, .onb-logo, #app-frame::before, body::before { animation: none; }
  #app-frame::after { animation: none; opacity: 0.2; }
}

/* ---- remaining white/grey fills the base pass missed → neon outlines ---- */

.btn-follow.on {
  background: rgba(56,189,248,0.08);
  color: #eaf3ff;
  border: 1px solid var(--neon-blue);
  box-shadow: 0 0 10px rgba(56,189,248,0.30);
}

.msg.me {
  background: rgba(56,189,248,0.12);
  color: #eaf3ff;
  border: 1px solid rgba(56,189,248,0.30);
}
/* desktop rail brand → color-changing neon sign (matches the appbar wordmark) */
@media (min-width: 980px) {
  #tabbar::before { animation: neonSign 4.5s ease-in-out infinite; }
  /* rail = black panel with a travelling neon-light border (like the Home cards) */
  #tabbar {
    background: #060409 !important;
    border-color: transparent !important;
    box-shadow: 0 0 34px rgba(168,85,247,0.12) !important;
  }
  #tabbar::after {
    content: '';
    position: absolute;
    inset: 0;
    border-radius: inherit;
    padding: 1.5px;
    background: conic-gradient(from var(--neonAngle), #ff2d9b, #38bdf8, #a855f7, #38bdf8, #ff2d9b);
    -webkit-mask: linear-gradient(#000 0 0) content-box, linear-gradient(#000 0 0);
    mask: linear-gradient(#000 0 0) content-box, linear-gradient(#000 0 0);
    -webkit-mask-composite: xor;
    mask-composite: exclude;
    animation: neonSpin 8s linear infinite;
    pointer-events: none;
  }
}
/* outline buttons (Profile / Message / secondary actions) → neon-tinted border */
.btn-outline { border-color: rgba(56,189,248,0.45); box-shadow: 0 0 8px rgba(56,189,248,0.12); }
/* mobile Feedback bar → full-width, docked UNDER the tab bar, cool color-shifting neon top edge */

/* big page hero headlines shouldn't be flat white — strong neon-sign glow, site-wide */
.wedge-hero h1, .hero-banner h2, .onb-hero h1, .invite-hero h2 {
  color: #fff;
  text-shadow: 0 0 10px rgba(255,45,155,0.8), 0 0 22px rgba(255,45,155,0.55), 0 0 46px rgba(56,189,248,0.45);
}
/* every page's appbar title gets a tighter neon glow (smaller than the hero headlines) */
.appbar h1 {
  color: #fff;
  text-shadow: 0 0 8px rgba(255,45,155,0.7), 0 0 20px rgba(56,189,248,0.42);
}
/* native dropdowns should render dark (belong in the app), not the OS grey popup */
select, .field, .game-select { color-scheme: dark; }
.game-select option, select.field option, select option { background: #16121c; color: #eaf3ff; }
/* friends-playing row: inline <b> title must be block to truncate, and the Join chip must not shrink,
   otherwise a long game title overlaps the button */

/* quick-nav pills: size to content (row scrolls) so long labels like "Rankings" don't overflow the pill */
.room-pill { flex: 0 0 auto; }
/* Schedule page: flat divider rows -> neon cards so it reads as rich as Home */

/* ---- emoji sweep finish: status dots + monogram game/skill tiles ---- */
.sdot { display: inline-block; width: 8px; height: 8px; border-radius: 50%; vertical-align: middle; margin-right: 3px; flex: none; }
.sdot.on { background: #38bdf8; box-shadow: 0 0 6px rgba(56,189,248,0.9); }
.sdot.live { background: #ef4444; box-shadow: 0 0 6px rgba(239,68,68,0.9); }
.sdot.off { background: #6b7280; }
/* post + comment media (photos + videos) */

/* breadcrumb (Squads / Chats etc.) */

/* coaching-session message bubbles */

/* Squads per-tab create button — rotating multi-neon border (not static yellow) */

/* board/group icon as a game cover photo instead of a monogram */
.bc-cover { overflow: hidden; }
/* lobby visibility badge (friends-only / invite-only) */

/* group-chat "members only" tag (private — never club-wide) */

/* group-chat member bar under the header — facepile + "N members · friends here" */
.gc-memberbar { display: flex; align-items: center; gap: 10px; padding: 9px 14px; border-bottom: 1px solid rgba(255,255,255,0.07); background: rgba(255,255,255,0.02); }

.gc-mb-txt { font-size: 12.5px; color: var(--muted, #9a93a6); line-height: 1.35; }
.gc-mb-txt b { color: #fff; font-weight: 700; }
/* team crest as a real cover image (monogram → photo) */
.team-logo.has-pic { background-size: cover; background-position: center; }
/* recruit-board card: flashing neon-sign border + glow */

/* Recruit board = a distinct lit-neon action, not another dark row */

/* team / group chat — real chat bubbles instead of a flat inline list */

/* weekly-drip course: unlock note + time-gated lesson rows */

/* @-mention autocomplete popover */
.mention-pop { position: fixed; z-index: 1400; background: #17141d; border: 1px solid var(--line-2); border-radius: 12px; padding: 5px; box-shadow: 0 16px 44px rgba(0,0,0,.6); max-height: 244px; overflow-y: auto; }
.mention-opt { display: flex; align-items: center; gap: 8px; width: 100%; text-align: left; padding: 7px 9px; border-radius: 9px; color: var(--text); font-size: 13.5px; }
.mention-opt:hover, .mention-opt:active { background: rgba(255,255,255,.07); }
.mention-opt b { font-weight: 700; white-space: nowrap; }
.mention-opt .mo-h { color: var(--dim-2); font-size: 12px; margin-left: auto; white-space: nowrap; }
.mention-opt .avatar { flex-shrink: 0; }
/* Club Guide chat — neon glow pass (violet/blue, matching the app's neon system) */
.cg-panel { border-color: rgba(168,85,247,.5); box-shadow: 0 26px 72px rgba(0,0,0,.62), 0 0 36px rgba(168,85,247,.3); }
.cg-head { border-bottom-color: rgba(168,85,247,.3); background: linear-gradient(180deg, rgba(168,85,247,.13), var(--surface)); }
.cg-head b { color: #fff; text-shadow: 0 0 10px rgba(168,85,247,.6), 0 0 22px rgba(56,189,248,.32); }
.cg-hav { background: radial-gradient(circle at 50% 30%, rgba(168,85,247,.45), var(--surface-3)); box-shadow: 0 0 0 1px rgba(168,85,247,.55), 0 0 15px rgba(168,85,247,.45); }
.cg-msg.bot { border-color: rgba(56,189,248,.3); box-shadow: 0 0 12px rgba(56,189,248,.09); }
.cg-msg.me { background: linear-gradient(150deg, rgba(168,85,247,.34), rgba(124,92,255,.24)); border: 1px solid rgba(168,85,247,.42); color: #fff; font-weight: 600; box-shadow: 0 0 16px rgba(168,85,247,.32); }
.cg-welcome b { color: #fff; text-shadow: 0 0 12px rgba(168,85,247,.5); }
.cg-chip { border-color: rgba(168,85,247,.42); box-shadow: 0 0 10px rgba(168,85,247,.12); }
.cg-chip:active { background: rgba(168,85,247,.15); }
.cg-form { border-top-color: rgba(168,85,247,.3); }
.cg-form input:focus { border-color: rgba(168,85,247,.6); box-shadow: 0 0 0 3px rgba(168,85,247,.16); }
.cg-go { background: linear-gradient(150deg, rgba(168,85,247,.9), rgba(124,92,255,.9)); color: #fff; box-shadow: 0 0 16px rgba(168,85,247,.5); }
/* inactive seg tabs shouldn't look dead — faint idle life + light up on hover ---- */
@keyframes segHint { 0%, 100% { opacity: 0.72; } 50% { opacity: 0.96; } }
.seg button:not(.active), .home-toggle a:not(.active) {
  color: #b3bccf;
  border: 1px solid rgba(255,255,255,0.06);
  transition: color .2s, border-color .2s, box-shadow .2s, transform .15s;
  animation: segHint 3s ease-in-out infinite;
}
.seg button:not(.active):hover, .home-toggle a:not(.active):hover {
  color: #eaf3ff;
  border-color: rgba(56,189,248,0.5);
  box-shadow: inset 0 0 0 1px rgba(56,189,248,0.30), 0 0 12px rgba(56,189,248,0.22);
  animation: none;
  transform: translateY(-1px);
}
/* greens that clash with the neon palette → magenta / blue */
.notif-count { background: var(--neon-magenta); color: #fff; box-shadow: 0 0 8px rgba(255,45,155,0.55); }
.cg-help-btn .cg-q { color: var(--neon-blue); }
/* per-tab seg colors — each tab gets its own hue, lit up neon when active ---- */
.seg button:nth-child(1), .home-toggle a:nth-child(1) { --segc: #38bdf8; }
.seg button:nth-child(2), .home-toggle a:nth-child(2) { --segc: #ff2d9b; }
.seg button:nth-child(3), .home-toggle a:nth-child(3) { --segc: #a855f7; }
.seg button:nth-child(4), .home-toggle a:nth-child(4) { --segc: #34d399; }
.seg button:nth-child(5), .home-toggle a:nth-child(5) { --segc: #38bdf8; }
.seg button:not(.active), .home-toggle a:not(.active) {
  color: color-mix(in srgb, var(--segc, #9aa5bd) 60%, #d7deec);
}
.seg button:not(.active):hover, .home-toggle a:not(.active):hover {
  color: #fff;
  border-color: color-mix(in srgb, var(--segc) 55%, transparent);
  box-shadow: inset 0 0 0 1px color-mix(in srgb, var(--segc) 40%, transparent), 0 0 12px color-mix(in srgb, var(--segc) 38%, transparent);
}
.seg button.active, .seg .active, .home-toggle a.active {
  color: #fff !important;
  border: 1px solid var(--segc, #38bdf8) !important;
  background: color-mix(in srgb, var(--segc) 13%, transparent) !important;
  box-shadow: inset 0 0 0 1px var(--segc), 0 0 16px color-mix(in srgb, var(--segc) 55%, transparent) !important;
  text-shadow: 0 0 9px color-mix(in srgb, var(--segc) 60%, transparent);
  animation: none;
}

/* ===== session UI polish: home-row overflow, neon room pills, 3D-neon app-bar icons ===== */
/* Continue-learning (any home-row) title: block so a long title ellipsis-truncates, not overflows */

/* Quick-access room tiles — neon border + glowing emoji, but crisp readable labels */
.room-pill { border-color: rgba(168,85,247,.4); box-shadow: 0 0 12px rgba(168,85,247,.16); }

/* App-bar icons — 3D raised buttons with a neon glow */
.appbar .icon-btn, .appbar .cg-help-btn {
  background: linear-gradient(180deg, rgba(255,255,255,0.12), rgba(10,8,16,0.55));
  border: 1px solid rgba(168,85,247,0.42);
  box-shadow: inset 0 1px 0 rgba(255,255,255,0.2), 0 3px 8px rgba(0,0,0,0.55), 0 0 14px rgba(168,85,247,0.28);
  color: var(--neon-violet, #a855f7);
}
.appbar .icon-btn svg, .appbar .cg-help-btn svg { filter: drop-shadow(0 0 4px rgba(168,85,247,0.7)) drop-shadow(0 0 8px rgba(56,189,248,0.32)); }
.appbar .icon-btn:active, .appbar .cg-help-btn:active { transform: translateY(1px); box-shadow: inset 0 1px 0 rgba(255,255,255,0.12), 0 1px 3px rgba(0,0,0,0.5), 0 0 10px rgba(168,85,247,0.3); }

.appbar .notif-bell { color: var(--neon-blue, #38bdf8); }
.appbar .notif-bell svg { filter: drop-shadow(0 0 4px rgba(56,189,248,0.75)); }
.appbar .icon-btn[data-act="search"] { color: #ffe14d; border-color: rgba(255,225,77,0.42);
  box-shadow: inset 0 1px 0 rgba(255,255,255,0.2), 0 3px 8px rgba(0,0,0,0.55), 0 0 14px rgba(255,225,77,0.28); }
.appbar .icon-btn[data-act="search"] svg { stroke: #ffe14d; filter: drop-shadow(0 0 4px rgba(255,225,77,0.75)) drop-shadow(0 0 8px rgba(255,225,77,0.4)); }

/* Saved pill in the Market app-bar — neon to match the 3D-neon icons */

/* ============================ QUESTS PAGE REDESIGN ============================ */
/* Hero — streak + level progress + stats over a gaming photo, glassy + neon */

/* XP chip in the section header */

/* Quest task rows — neon accent bar, glowing icon tile + XP */

/* Achievement trophy cards — photo cover + rarity neon + emoji badge */

/* Neon, color-cycling arrows — send buttons (chat/composer/comments/club-guide) + appbar back */
@keyframes neonArrow { 0% { color: #ff2d9b; } 25% { color: #a855f7; } 50% { color: #38bdf8; } 75% { color: #7c5cff; } 100% { color: #ff2d9b; } }
.composer .send, .stream-composer .send { background: rgba(255,255,255,0.08); border: 1px solid rgba(255,255,255,0.18); backdrop-filter: blur(12px); }
.composer .send svg, .stream-composer .send svg, .fb-send svg, .cg-go svg, .appbar-back svg {
  animation: neonArrow 5s linear infinite; filter: drop-shadow(0 0 5px currentColor);
}
@media (prefers-reduced-motion: reduce) {
  .composer .send svg, .stream-composer .send svg, .fb-send svg, .cg-go svg, .appbar-back svg { animation: none; }
}

/* ============================================================================
   COINS — gold-neon economy UI (chip, daily drop, wallet, packs, upsell sheet)
   Coins read holographic — white→violet gradient numerals, violet glow.
   ============================================================================ */
.coin-chip { display:inline-flex; align-items:center; gap:6px; padding:6px 12px 6px 10px; border-radius:999px;
  background:rgba(255,255,255,0.07); border:1px solid rgba(200,180,255,0.55);
  box-shadow:0 0 12px rgba(168,85,247,0.3), inset 0 0 10px rgba(168,85,247,0.08);
  color:#e6ddff; font-weight:900; font-size:14px; letter-spacing:-0.01em; text-decoration:none; white-space:nowrap; }
.coin-chip .coin-bal { background:linear-gradient(135deg,#fff,#cfc3ff 55%,#a855f7); -webkit-background-clip:text; background-clip:text; color:transparent; }
.coin-chip .coin-ic { display:inline-flex; line-height:1; }
.coin-ic svg { width:15px; height:15px; color:#dcd2ff; filter:drop-shadow(0 0 5px rgba(168,85,247,0.6)); }

.coin-chip:active { transform:scale(0.95); }
.coin-chip.pulse { animation:coinPulse .55s ease; }
@keyframes coinPulse { 0%{transform:scale(1)} 38%{transform:scale(1.24); box-shadow:0 0 24px rgba(168,85,247,.8)} 100%{transform:scale(1)} }

/* Daily-drop hero — the arcade centerpiece on Home */
.drop-card { position:relative; overflow:hidden; border-radius:20px; padding:22px 20px; margin:6px 0 16px;
  background:radial-gradient(120% 100% at 50% 0%, rgba(124,92,255,0.14), rgba(18,15,26,0.9) 62%);
  border:1px solid rgba(168,85,247,0.5); box-shadow:0 0 26px rgba(168,85,247,0.18); text-align:center; }
.drop-card::before { content:''; position:absolute; inset:0; border-radius:inherit; padding:1.6px;
  background:conic-gradient(from var(--neonAngle,0deg), #7c5cff, #a855f7, #38bdf8, #7c5cff);
  -webkit-mask:linear-gradient(#000 0 0) content-box, linear-gradient(#000 0 0); -webkit-mask-composite:xor; mask-composite:exclude;
  animation:neonSpin 7s linear infinite; pointer-events:none; }

/* streak dots */

/* Coin cost tag on buttons/actions */
.coin-cost { display:inline-flex; align-items:center; gap:4px; font-weight:900; color:#cfc3ff; }
.coin-cost::before { content:''; width:0.95em; height:0.95em; display:inline-block; background:#cfc3ff;
  -webkit-mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='12' cy='12' r='8.6'/%3E%3Cpath d='M12 7.4v9.2M14.8 9.6c-.6-.9-1.6-1.5-2.8-1.5-1.7 0-3 1.1-3 2.4 0 3 5.9 1.3 5.9 4.2 0 1.3-1.3 2.4-3 2.4-1.2 0-2.3-.6-2.9-1.5'/%3E%3C/svg%3E") center/contain no-repeat;
  mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='12' cy='12' r='8.6'/%3E%3Cpath d='M12 7.4v9.2M14.8 9.6c-.6-.9-1.6-1.5-2.8-1.5-1.7 0-3 1.1-3 2.4 0 3 5.9 1.3 5.9 4.2 0 1.3-1.3 2.4-3 2.4-1.2 0-2.3-.6-2.9-1.5'/%3E%3C/svg%3E") center/contain no-repeat; }

/* Wallet */
.wallet-hero { text-align:center; padding:22px 18px; border-radius:20px; margin:6px 0 14px;
  background:radial-gradient(120% 100% at 50% 0%, rgba(124,92,255,0.16), rgba(18,15,26,0.9) 64%);
  border:1px solid rgba(148,120,255,0.5); box-shadow:0 0 24px rgba(168,85,247,0.18); }
.wallet-bal { font-size:44px; font-weight:900; letter-spacing:-0.03em; line-height:1; color:#e6ddff;
  background:linear-gradient(135deg,#fff,#cfc3ff 45%,#a855f7); -webkit-background-clip:text; background-clip:text; color:transparent; }
.wallet-bal .coin-ic svg { width:32px; height:32px; }
.wallet-label { font-size:12px; font-weight:800; letter-spacing:0.14em; text-transform:uppercase; color:var(--dim-2); margin-top:8px; }
.ledger-row { display:flex; align-items:center; justify-content:space-between; gap:10px; padding:12px 2px; border-bottom:1px solid var(--line); }
.ledger-row:last-child { border-bottom:none; }
.ledger-reason { font-size:13.5px; font-weight:600; }
.ledger-amt { font-weight:900; font-size:14px; white-space:nowrap; }
.ledger-amt.earn { color:var(--mint); }
.ledger-amt.spend { color:#ff6b8b; }

/* Coin packs (buy) */
.pack-grid { display:grid; grid-template-columns:1fr 1fr; gap:12px; }
.pack-card { position:relative; text-align:center; padding:18px 12px; border-radius:16px; cursor:pointer;
  background:rgba(18,15,26,0.84); border:1px solid rgba(168,85,247,0.4); box-shadow:0 0 14px rgba(168,85,247,0.1); }
.pack-card.best { border-color:rgba(168,85,247,0.8); box-shadow:0 0 22px rgba(168,85,247,0.3); }
.pack-coins { font-size:24px; font-weight:900; color:#cfc3ff; text-shadow:0 0 10px rgba(168,85,247,0.5); }
.pack-price { margin-top:8px; font-weight:900; font-size:15px; }
.pack-tag { display:inline-block; margin-top:6px; font-size:11px; font-weight:800; color:var(--mint); }
.pack-best-badge { position:absolute; top:-9px; left:50%; transform:translateX(-50%); background:#cfc3ff; color:#1c1436;
  font-size:10px; font-weight:900; letter-spacing:0.05em; padding:3px 9px; border-radius:999px; box-shadow:0 0 12px rgba(168,85,247,0.6); }

/* Insufficient-coins upsell sheet reuses .sheet; just the coin math bits */
.upsell-need { text-align:center; font-size:15px; font-weight:800; margin:2px 0 4px; }
.upsell-need b { color:#cfc3ff; }
.upsell-have { text-align:center; font-size:13px; color:var(--dim); margin-bottom:14px; }

/* ===== MATCH PROFILE FORM ===== */

/* Match gate card (shown inline where matching is blocked) */

/* ===== LIVE STREAMING (LiveKit video) ===== */
.stream-video { position:relative; aspect-ratio:16/9; width:100%; background:#000; border-radius:16px; overflow:hidden; border:1px solid rgba(255,45,155,0.4); box-shadow:0 0 22px rgba(255,45,155,0.18); }
.stream-video video { width:100%; height:100%; object-fit:cover; display:block; }
.stream-wait { position:absolute; inset:0; display:grid; place-items:center; color:var(--dim); font-size:13.5px; }
/* Zoom-style camera corner while the screen is the main picture */
.stream-pip { position:absolute; right:10px; bottom:10px; width:26%; max-width:220px; aspect-ratio:16/9; border-radius:10px; overflow:hidden; border:1px solid rgba(255,255,255,0.4); box-shadow:0 4px 16px rgba(0,0,0,0.5); background:#000; }
.live-pill { display:inline-block; font-size:10.5px; font-weight:900; letter-spacing:0.04em; color:#fff; background:#ff2d55; border-radius:99px; padding:2px 8px; vertical-align:2px; animation:livepulse 1.6s ease-in-out infinite; }
@keyframes livepulse { 0%,100% { opacity:1 } 50% { opacity:0.65 } }

/* Setup tour: page behind the card stays visible and scrollable (clicks are
   blocked in JS); dimmer is lighter so the club shows through. */
.tour-scrim { pointer-events:none; background:rgba(5,3,10,0.3); }

/* ===== MESSAGE REPLIES ===== */
.chat-thread .msg { position:relative; }
.reply-quote { display:flex; flex-direction:column; gap:1px; font-size:12px; color:var(--dim); border-left:2px solid rgba(56,189,248,0.6); padding:4px 9px; margin-bottom:6px; background:rgba(255,255,255,0.05); border-radius:7px; max-width:100%; overflow:hidden; }
.reply-quote b { color:var(--text); font-size:11.5px; }
.reply-quote span { white-space:nowrap; overflow:hidden; text-overflow:ellipsis; }
/* .msg-replybtn styles consolidated below (single source of truth) */
.reply-modal-wrap { position:fixed; inset:0; z-index:80; display:flex; align-items:flex-end; justify-content:center; padding:18px; pointer-events:none; }
.reply-modal-wrap.in-chat { position:fixed; }
.reply-modal-backdrop { position:absolute; inset:0; border:0; background:rgba(2,1,6,0.46); backdrop-filter:blur(4px); pointer-events:auto; }
.reply-modal { position:relative; width:min(720px,100%); border-radius:22px 22px 18px 18px; padding:14px; background:rgba(19,15,28,0.98); border:1px solid rgba(56,189,248,0.45); box-shadow:0 18px 60px rgba(0,0,0,0.55), 0 0 28px rgba(255,45,155,0.18); pointer-events:auto; }
.reply-modal-head { display:flex; align-items:center; justify-content:space-between; gap:12px; color:var(--dim); font-size:13px; margin-bottom:10px; }
.reply-modal-head b { color:var(--text); }
.reply-modal-head button { width:34px; height:34px; border-radius:999px; border:1px solid var(--line); background:rgba(255,255,255,0.07); color:var(--text); cursor:pointer; }
.reply-original { border-left:3px solid #38bdf8; border-radius:12px; background:rgba(56,189,248,0.08); color:var(--text); padding:11px 13px; margin-bottom:12px; line-height:1.35; max-height:118px; overflow:auto; }
.reply-composer { position:relative; inset:auto; transform:none; max-width:none; margin-top:10px; box-shadow:none; border-radius:16px; }

/* ===== PUBLIC WATCH MODE (logged-out stream viewers) ===== */
.guest-joinbar { position:fixed; left:12px; right:12px; bottom:82px; z-index:120; display:flex; gap:12px; align-items:center; justify-content:space-between;
  padding:12px 16px; border-radius:16px; background:rgba(12,9,20,0.94); border:1px solid rgba(255,45,155,0.55); box-shadow:0 10px 34px rgba(0,0,0,0.55), 0 0 24px rgba(255,45,155,0.25); backdrop-filter:blur(10px); }
.guest-joinbar .gjb-txt { display:flex; flex-direction:column; gap:2px; min-width:0; font-size:13.5px; }
@media (min-width: 900px) { .guest-joinbar { left:auto; right:24px; bottom:24px; max-width:420px; } }
@media (max-width: 700px) { .guest-joinbar { display:none; } }

/* ===== UNIFIED NEON CHAT — the final word in the cascade ===== */
.chat-thread { gap: 8px; }
.chat-thread .msg, .stream-chat .msg { position:relative; max-width:82%; padding:10px 14px; border-radius:18px; font-size:15px; line-height:1.45; }
.chat-thread .msg.them, .stream-chat .msg.them { background:rgba(22,17,32,0.92); color:var(--text); border:1px solid rgba(168,85,247,0.4); box-shadow:0 0 14px rgba(168,85,247,0.10); border-bottom-left-radius:6px; }
.chat-thread .msg.me, .stream-chat .msg.me { background:linear-gradient(135deg,#ff2d9b,#a855f7); color:#fff; border:0; box-shadow:0 4px 20px rgba(255,45,155,0.35); border-bottom-right-radius:6px; align-self:flex-end; }
.chat-thread .msg.me .mention, .stream-chat .msg.me .mention { color:#fff; text-decoration:underline; }
.chat-thread .msg .who, .stream-chat .msg .who { color:#8be0ff; text-shadow:0 0 8px rgba(56,189,248,0.45); }
.msg-row.them { display:flex; align-items:flex-end; gap:8px; }
.stream-chat, .stream-chat.group { display:flex; flex-direction:column; gap:8px; }
.msg-replybtn { position:absolute; top:50%; transform:translateY(-50%); display:grid; place-items:center; width:22px; height:22px; border:0; background:none; color:rgba(255,109,184,.6); cursor:pointer; opacity:0; transition:opacity .12s ease; }
.msg.them .msg-replybtn { right:-30px; left:auto; }
.msg.me .msg-replybtn { left:-30px; right:auto; }
.msg:hover .msg-replybtn { opacity:0.95; }
@media (hover:none) { .msg-replybtn { opacity:0.9; } }
@media (max-width:640px) { .chat-thread .msg, .stream-chat .msg { font-size:15.5px; max-width:80%; } }
@media (max-width:640px) {
  .msg.them .msg-replybtn { right:-28px; }
  .msg.me .msg-replybtn { left:-28px; }
  .reply-modal-wrap { padding:10px; align-items:flex-end; }
  .reply-modal { border-radius:20px 20px 0 0; padding:12px; }
}

/* ===== BIG NEON HEADERS + BREATHING LIGHTS (every page) ===== */

.section-title { position:relative; padding-bottom:7px; }
.section-title::after { content:''; position:absolute; left:0; bottom:0; width:34px; height:2.5px; border-radius:99px;
  background:linear-gradient(90deg,#ff2d9b,#38bdf8); animation:neonBreathe 2.6s ease-in-out infinite; }
@keyframes neonBreathe { 0%,100% { opacity:0.5; } 50% { opacity:1; } }   /* opacity-only: cheap on phone GPUs */

   /* static glow — animated box-shadow janks phones */

/* Lineup / hub rows — neon date chips + alternating accent edge (jazz pass) */

/* Pulse tiles on phones: full-width rows so the four stat buttons breathe */

/* Mid widths (narrow desktop window): tiles wrap 2×2 — align them into tidy
   equal columns sized to their content instead of a ragged flex wrap */

/* Selected seg pill: crisp ring in the button's OWN color (matches its label tint) */
.seg button.active, .seg .active, .home-toggle a.active { text-shadow: none;
  box-shadow: inset 0 0 0 1px var(--segc, #38bdf8), 0 0 9px color-mix(in srgb, var(--segc, #38bdf8) 30%, transparent) !important; }
/* Messages sub-row label tints: DMs pink, Groups blue (Requests keeps violet) */

/* "Manage →" on the safety strip matches the card's icon blue */

/* Recruit board: compact actions, not stretched monster pills */

/* Roster preview on recruit cards — chosen identity only (emoji + name + role, never a photo) */

/* team icon pickers */

.team-logo.has-pic { background-color: #1b1928; }

/* Feed rail rows: DM avatars + online-friend chips */

/* ===== THE "#57" TITLE TREATMENT: solid white + neon glow, per-page colors ===== */

/* mega titles: solid white + per-section glow (emojis render normally again) */

/* your name up top: slow color-cycling neon */

/* "Invite a friend" — a real filled button, not a washed outline */

/* Peek card: show the WHOLE photo — natural aspect, no crop */
.peek-cover.has-pic { height: auto; min-height: 120px; background: #0a0710; }
.peek-photo { display: block; width: 100%; height: auto; max-height: 54vh; object-fit: contain; border-radius: 24px 24px 0 0; }

@media (min-width: 900px) {
  .peek-modal { max-width: 820px; display:grid; grid-template-columns:minmax(320px, 0.95fr) minmax(330px, 1fr); overflow:hidden; }
  .peek-cover { height:auto; min-height:520px; border-radius:24px 0 0 24px; }
  .peek-cover.has-pic { min-height:520px; display:flex; align-items:center; justify-content:center; }
  .peek-photo { width:100%; height:100%; max-height:88vh; object-fit:contain; border-radius:24px 0 0 24px; }
  .peek-body { align-self:stretch; overflow-y:auto; padding:28px 30px; }
}

/* The "safety family" cards go neon — same blue as the app icons. */

/* Ghost buttons get a real body — no more faded-into-clear (final cascade word). */
.btn-ghost { background: rgba(26,20,38,0.95) !important; border: 1px solid rgba(168,85,247,0.5) !important; color: var(--text); backdrop-filter: none; box-shadow: 0 0 10px rgba(168,85,247,0.12); }

/* ===== NEON HEADERS (wordmark treatment) + ROTATING NEON BOXES ===== */
.section-title { color:var(--text); animation:none; text-shadow:none; }
.section-title .dim2, .section-title .muted { animation:none; text-shadow:none; }

/* ===== DIMENSION KIT: huge titles, pulse tiles, right-rail modules ===== */

/* The hero .live-pill carries margin:6px auto 0 for centering — inside a flex rail row
   those auto margins eat the whole row's free space, so zero them here. */

/* Coin burst particles (daily-drop claim) */
.coin-particle { position:fixed; z-index:200; font-size:22px; pointer-events:none; will-change:transform,opacity;
  transform:translate(-50%,-50%); animation:coinFly .95s cubic-bezier(.2,.7,.3,1) forwards; filter:drop-shadow(0 0 7px rgba(168,85,247,.75)); }
@keyframes coinFly {
  0% { transform:translate(-50%,-50%) scale(.3); opacity:0; }
  18% { opacity:1; }
  100% { transform:translate(calc(-50% + var(--dx)), calc(-50% + var(--dy))) scale(1.15) rotate(200deg); opacity:0; }
}
@media (prefers-reduced-motion: reduce) { .coin-particle { display:none; } }

/* You-tab quick cards (wallet + match profile) */

/* NEON ACTION BUTTONS — the flat white primaries become an animated color-shift gradient */
@keyframes neonBtnShift { 0% { background-position: 0% 50%; } 100% { background-position: 200% 50%; } }
.btn-primary, .swipe-btn.party, .golive-btn {
  background: linear-gradient(90deg, #ff2d9b, #a855f7, #38bdf8, #a855f7, #ff2d9b) !important;
  background-size: 200% 100% !important;
  animation: neonBtnShift 7s linear infinite;
  color: #fff !important;
  border: none !important;
  box-shadow: 0 0 20px rgba(168,85,247,0.42), 0 8px 22px rgba(255,45,155,0.28) !important;
  text-shadow: 0 1px 6px rgba(0,0,0,0.4);
  backdrop-filter: none !important; -webkit-backdrop-filter: none !important;
}
/* MATCH — the icon blue (overrides the shared primary gradient above) */
.swipe-btn.party {
  background: linear-gradient(90deg, #23c6ff, #2f7bff, #38bdf8, #2f7bff, #23c6ff) !important;
  background-size: 200% 100% !important;
  box-shadow: 0 0 20px rgba(35,198,255,0.45), 0 8px 22px rgba(47,123,255,0.3) !important;
}
/* Super Match — the full neon pink→purple→blue sweep (the premium action) */
.super-match {
  background: linear-gradient(90deg, #ff2d9b, #a855f7, #38bdf8, #a855f7, #ff2d9b) !important;
  background-size: 200% 100% !important;
  animation: neonBtnShift 5s linear infinite;
  color: #fff !important; border: none !important; font-weight: 900;
  text-shadow: 0 1px 6px rgba(0,0,0,0.4);
  box-shadow: 0 0 22px rgba(168,85,247,0.45), 0 8px 22px rgba(255,45,155,0.3) !important;
}
@media (prefers-reduced-motion: reduce) { .btn-primary, .swipe-btn.party, .golive-btn, .super-match { animation: none; } }

/* PASS — compact, solid neon red */
.swipe-btn.pass {
  flex: 0 0 auto; padding: 0 26px;
  background: linear-gradient(180deg, #ff3d3d, #e01432) !important;
  border: none !important; color: #fff !important; font-weight: 900;
  text-shadow: 0 1px 6px rgba(0,0,0,0.35);
  box-shadow: 0 0 18px rgba(255,45,45,0.5), 0 8px 20px rgba(224,20,50,0.35);
}

/* Add-a-game catalog picker rows */

/* Welcome + auth pages only — centered phone-width column (rest of app keeps desktop/mobile) */
body[data-bg="welcome"] #app, body[data-bg="auth"] #app { margin-left: 0 !important; }
body[data-bg="welcome"] .screen, body[data-bg="auth"] .screen { max-width: 460px; margin-left: auto; margin-right: auto; }

/* Voice-time ticker at the top of a call */

/* Messages sub-toggle (DMs / Groups / Requests) sits just under the Messages·Feed toggle */

#tabbar .tab span { white-space: nowrap; }

/* FRIEND GRID — friends list as compact cards instead of one long row each */
/* Friends grid — vertical square tiles (avatar + name), 3-up on mobile, more as space allows */

/* Final word: page titles are EXACTLY the wedge-hero look — white core, pink glow, big */

/* Section headers: real chapter titles — bigger white core + pink glow, natural case.
   The tiny letterspaced caps made every section blur together on long pages. */
.section-title { font-size: 17px; font-weight: 900; letter-spacing: -0.01em; text-transform: none;
  color: #fff; animation: none;
  text-shadow: 0 0 5px rgba(255,45,155,0.5), 0 0 16px rgba(255,45,155,0.35); }
.section-title .dim2, .section-title .muted { font-size: 12.5px; letter-spacing: 0; text-shadow: none; }
.section-title a { font-size: 12.5px; letter-spacing: 0.02em; }
.section-title::after { width: 46px; }

/* Profile page, desktop: identity column reads like a card; content + rail beside it */

/* breathing room between the stacked profile sections (Report/Block · Clips · Around the club) */

@media (min-width: 980px) {
  
  
     /* clips stay put — clears the floating app bar */
}
/* real clips have no poster frame — the video itself is the thumbnail */

/* Lobby / session stat blocks — same neon language as the pulse tiles */
.lstat { position: relative; background: linear-gradient(160deg, rgba(24,18,36,0.92), rgba(10,8,16,0.96));
  border: 1px solid rgba(255,45,155,0.45); box-shadow: 0 0 14px rgba(255,45,155,0.10); }
.lstat:nth-child(2) { border-color: rgba(56,189,248,0.45); box-shadow: 0 0 14px rgba(56,189,248,0.10); }
.lstat:nth-child(3) { border-color: rgba(168,85,247,0.5); box-shadow: 0 0 14px rgba(168,85,247,0.12); }
.lstat:nth-child(4) { border-color: rgba(168,85,247,0.45); box-shadow: 0 0 14px rgba(168,85,247,0.10); }
.lstat .ls-k { color: #ff6db8; text-shadow: 0 0 8px rgba(255,45,155,0.45); }
.lstat:nth-child(2) .ls-k { color: #8be0ff; text-shadow: 0 0 8px rgba(56,189,248,0.45); }
.lstat:nth-child(3) .ls-k { color: #c9a6ff; text-shadow: 0 0 8px rgba(168,85,247,0.5); }
.lstat:nth-child(4) .ls-k { color: #34d399; text-shadow: 0 0 8px rgba(52,211,153,0.45); }
.lstat .ls-v { font-size: 15px; font-weight: 900; background: linear-gradient(120deg, #fff 40%, #8be0ff);
  -webkit-background-clip: text; background-clip: text; color: transparent; }

/* Lobby detail title: same treatment as the big page titles (white core, pink glow) */

/* Game catalog cards — art pops, neon tints rotate per column, hover lights up */

/* Lobby & team chat — the room people live in: a real neon panel, roomy and scrollable */
.stream-chat.group { background: linear-gradient(170deg, rgba(24,18,36,0.6), rgba(10,8,16,0.8));
  border: 1px solid rgba(168,85,247,0.35); border-radius: 18px; padding: 14px;
  box-shadow: inset 0 0 34px rgba(168,85,247,0.06), 0 0 18px rgba(168,85,247,0.08);
  min-height: 160px; max-height: 56vh; overflow-y: auto; }
.stream-composer .field { border: 1.5px solid rgba(168,85,247,0.4); background: rgba(20,16,30,0.92); }
.stream-composer .field:focus { border-color: #38bdf8; box-shadow: 0 0 0 3px rgba(56,189,248,0.15); outline: none; }
.stream-composer .send { background: linear-gradient(135deg, #ff2d9b, #a855f7); color: #fff; border: 0;
  box-shadow: 0 0 14px rgba(255,45,155,0.4); }
.stream-composer .send svg { color: #fff; }

/* member lobby: slimmer banner — the chat is the star */

/* lobby Chat tab fills the viewport under the tabs — the room IS the page */
.lobchat-wrap { display: flex; flex-direction: column; min-height: calc(100dvh - 400px); }
.lobchat-wrap .stream-chat.group { flex: 1 1 auto; max-height: none; min-height: 200px; }
@media (max-width: 700px) { .lobchat-wrap { min-height: calc(100dvh - 440px); } }

/* anonymized roster cards: characteristics without identity */
.roster-card.anon { align-items: flex-start; cursor: default; }
.roster-card.anon .rc-av { display: grid; place-items: center; width: 38px; height: 38px; border-radius: 12px; flex: 0 0 auto; color: #8be0ff; }
.roster-card.anon .rc-av svg { width: 17px; height: 17px; }

/* Desktop rail: normal dim/active look — but on pages where NO tab is active
   (profiles, chats…) the rail lights fully up instead of looking dead */
@media (min-width: 980px) {
  #tabbar:not(:has(.tab.active)) .tab { color: #eef4ff; }
  #tabbar:not(:has(.tab.active)) .tab svg { filter: drop-shadow(0 0 6px currentColor); }
  #tabbar:not(:has(.tab.active)) .tab[data-tab="home"] svg { color: #ffe14d; }
  #tabbar:not(:has(.tab.active)) .tab[data-tab="games"] svg { color: #ff6db8; }
  #tabbar:not(:has(.tab.active)) .tab[data-tab="friends"] svg { color: #8be0ff; }
  #tabbar:not(:has(.tab.active)) .tab[data-tab="squads"] svg { color: #c9a6ff; }
  #tabbar:not(:has(.tab.active)) .tab[data-tab="schedule"] svg { color: #38bdf8; }
  #tabbar:not(:has(.tab.active)) .tab[data-tab="you"] svg { color: #ff2d9b; }
  #tabbar:not(:has(.tab.active)) .tab span { text-shadow: 0 0 10px rgba(168,85,247,0.35); }
}

/* Public (logged-out) watch pages: the rail is display-only — no lit tabs, no active pill */
body.is-guest #tabbar .tab { color: var(--dim-2) !important; opacity: 0.45; }
body.is-guest #tabbar .tab svg { filter: none !important; color: var(--dim-2) !important; }
body.is-guest #tabbar .tab.active { background: none !important; box-shadow: none !important; }

/* guest "join today" modal — the icon, the pitch, one glowing door */
.join-modal { position: relative; z-index: 1; width: min(92vw, 380px); margin: auto; text-align: center;
  background: linear-gradient(170deg, rgba(24,18,36,0.97), rgba(10,8,16,0.99));
  border: 1px solid rgba(255,45,155,0.5); border-radius: 24px; padding: 26px 22px 20px;
  box-shadow: 0 0 40px rgba(255,45,155,0.25), 0 24px 60px rgba(0,0,0,0.6); }
.join-modal .jm-moon { display: block; width: 92px; height: 92px; margin: 0 auto -26px; border-radius: 50%; overflow: hidden; background: #000;
  -webkit-mask: linear-gradient(to bottom, #000 58%, rgba(0,0,0,0.08)); mask: linear-gradient(to bottom, #000 58%, rgba(0,0,0,0.08)); }
.join-modal .jm-moon video { width: 100%; height: 100%; object-fit: cover; display: block; }
.join-modal .jm-mark { width: 210px; max-width: 82%; margin: 0 auto 6px; display: block; position: relative;
  filter: drop-shadow(0 0 14px rgba(56,189,248,0.35)); }
.join-modal h2 { font-size: 21px; font-weight: 900; color: #fff; margin: 4px 0 6px;
  text-shadow: 0 0 6px rgba(255,45,155,0.5), 0 0 18px rgba(255,45,155,0.35); }
.join-modal .handle { line-height: 1.5; }

/* game cards go 2-up on phones/narrow — art on top, compact tile */

/* send buttons: no pink box — just a glowing arrow */
.stream-composer .send, .composer .send, .fb-send {
  background: none !important; border: 0 !important; box-shadow: none !important; color: #ff6db8; }
.stream-composer .send svg, .composer .send svg, .fb-send svg {
  color: #ff6db8; filter: drop-shadow(0 0 6px rgba(255,45,155,0.6)); width: 20px; height: 20px; }

/* You page footer: Edit profile + Sign out side by side, clearly different weights */

/* Lineup "My schedule" sub-tabs: Locked in blue, New requests pink (Sent keeps violet) */

/* ===== MOBILE OVERFLOW GUARD (2026-07-10) =====
   .page-cols is a grid; grid items default to min-width:auto, so any wide
   descendant (nowrap text, long unbroken strings) silently widens the 1fr
   track past the viewport and the whole page "falls over to the right".
   Let the columns shrink; inner .nowrap/.grow chains already ellipsize. */

/* DM/chat rows: black cards + neon names (white with a TIGHT pink halo — the
   mega-title look scaled down; keep the blur close so it reads as a thin line) */

/* ===== HOME ARCADE 2.0: icon tiles, launcher row, hero + club-pulse charts ===== */
/* Continuum-style icon tile: rounded dark square, thin neon line icon (--it = stroke tint) */

/* launcher row — big tiles with tiny labels, Party up leads with a pink glow.
   Mobile: a strict 5-across grid (no orphan second row); desktop: a relaxed flex row. */

/* NextGen-style borderless big numbers */

/* ===== ROSTER CARDS: identity tiles, typed chip tints, alternating neon edge ===== */
.roster-card { position:relative; overflow:hidden; }
.roster-card::before { content:''; position:absolute; left:0; top:12%; bottom:12%; width:3px; border-radius:3px; background:linear-gradient(180deg,#ff2d9b,#38bdf8); box-shadow:0 0 8px rgba(255,45,155,0.5); }
.roster-card:nth-child(even)::before { background:linear-gradient(180deg,#38bdf8,#a855f7); box-shadow:0 0 8px rgba(56,189,248,0.5); }
.roster-card .rc-id { width:40px; height:40px; border-radius:12px; display:grid; place-items:center; font-size:18px; font-weight:800; color:#fff; box-shadow:0 0 0 1.5px rgba(168,85,247,0.5), 0 0 12px rgba(168,85,247,0.22); flex:0 0 auto; }
.roster-card .name { text-shadow:0 0 6px rgba(56,189,248,0.4); }

.rch-g { border-color:rgba(168,85,247,0.4) !important; color:#e6ddff; background:rgba(168,85,247,0.06); }
.rch-s { border-color:rgba(255,45,155,0.45) !important; color:#ffb3d9; background:rgba(255,45,155,0.07); }
.rch-m { border-color:rgba(56,189,248,0.45) !important; color:#aee3ff; background:rgba(56,189,248,0.07); }
.rch-t { border-color:rgba(168,85,247,0.45) !important; color:#d8bfff; background:rgba(168,85,247,0.07); }
.rch-p { border-color:rgba(255,255,255,0.22) !important; color:var(--dim); }

/* ── DECK HERO: the person IS the card. Full-bleed portrait, glass identity chip
   on top, scrim sheet at the bottom. Mobile = single portrait; desktop = 420px
   portrait + frosted info column over a blurred photo spill (--deck-pic). ── */
.deck-card { max-width: 560px; margin-inline: auto; }
.deck-side { padding: 0 16px 18px; }
.deck-hero .deck-main { position: relative; aspect-ratio: 4 / 5; min-height: 480px; max-height: 70vh; }
.deck-photo { position: absolute; inset: 0; background-size: cover, cover; background-position: center top; }
.deck-photo.holo { display: grid; place-items: center; overflow: hidden; }
.deck-emoji { font-size: 84px; filter: drop-shadow(0 0 24px rgba(168,85,247,0.6)); }
@keyframes holoSheen { to { transform: rotate(360deg); } }
.deck-photo.holo::after { content: ''; position: absolute; inset: -45%; background: conic-gradient(from 0deg, transparent, rgba(255,255,255,0.12) 8%, transparent 16%, transparent 55%, rgba(168,85,247,0.14) 62%, transparent 70%); animation: holoSheen 9s linear infinite; }
.deck-topchip { position: absolute; top: 12px; left: 12px; right: 12px; display: flex; align-items: center; gap: 9px; padding: 8px 12px; border-radius: 16px;
  background: rgba(10,8,18,0.55); border: 1px solid rgba(148,120,255,0.35); -webkit-backdrop-filter: blur(14px); backdrop-filter: blur(14px); }
.deck-topchip .dt-id { display: flex; align-items: center; gap: 7px; min-width: 0; flex: 1; font-size: 15px; }
.deck-topchip .dt-id b { white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
.deck-topchip .dt-handle { font-size: 11.5px; color: var(--dim); white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
.deck-topchip .match-pill { flex: 0 0 auto; }
.deck-scrim { position: absolute; left: 0; right: 0; bottom: 0; display: flex; flex-direction: column; gap: 8px; padding: 76px 14px 14px;
  background: linear-gradient(180deg, transparent, rgba(10,8,18,0.62) 34%, rgba(10,8,18,0.92)); }
.deck-scrim .ds-tag { font-size: 13.5px; font-weight: 700; }
.deck-scrim .playagain-line { margin: 0; }
/* deck card tags: compact so they read as tags (not big buttons); rows use full width */
.deck-scrim .wrap { gap: 6px 7px; width: 100%; }
.deck-scrim .chip { padding: 4px 11px; font-size: 11px; }
.deck-scrim .chip.game { font-size: 11.5px; }
.deck-why { background: rgba(255,255,255,0.06); border: 1px solid rgba(148,120,255,0.32); border-radius: 14px; padding: 9px 12px; }
.deck-why summary { cursor: pointer; font-weight: 800; font-size: 12.5px; color: #cbb6ff; list-style: none; }
.deck-why summary::-webkit-details-marker { display: none; }
.deck-why[open] summary { margin-bottom: 6px; }
/* mobile: the full receipt lives in the collapsible why-pill; the side card is CTA-only */
.deck-side .receipt { display: none; }
/* Desktop: NO two-column split (the old 420px + 1fr grid left a giant empty
   info column that read as a black box). Single centered portrait card; the
   match reasons show inline below the portrait instead of in a side panel. */
@media (min-width: 980px) {
  /* cap the portrait so the whole card (portrait + reasons + CTA) fits the
     viewport without scrolling */
  .deck-hero .deck-main { min-height: 300px; max-height: min(46vh, 500px); }
  .deck-side .receipt { display: block; margin-top: 12px; }
  .deck-why { display: none; }
}

/* ── PEOPLE FIRST: avatar rail + portrait live cards (Home) ── */

.live-rail { display:flex; gap:12px; overflow-x:auto; padding:2px 2px 8px; margin-bottom:18px; scrollbar-width:none; }
.live-rail::-webkit-scrollbar { display:none; }
.live-card { position:relative; flex:0 0 178px; height:242px; border-radius:18px; background-size:cover; background-position:center top; background-color:#161126; overflow:hidden; display:flex; flex-direction:column; justify-content:flex-end; padding:12px; text-decoration:none; color:#fff; border:1px solid rgba(148,120,255,0.28); }
.live-card::before { content:''; position:absolute; inset:0; background:linear-gradient(180deg, rgba(6,4,12,0.15), rgba(6,4,12,0.04) 42%, rgba(6,4,12,0.85)); }
.live-card > * { position:relative; }

/* ── MATCH DECK: swipe gestures replace the Pass/Match buttons ── */
#matchcard { touch-action:pan-y; will-change:transform; }
#matchcard.sw-left { border-color:rgba(255,61,61,0.7); box-shadow:0 0 30px rgba(255,61,61,0.28), 0 18px 50px rgba(0,0,0,0.5); }
#matchcard.sw-right { border-color:rgba(35,198,255,0.7); box-shadow:0 0 30px rgba(35,198,255,0.28), 0 18px 50px rgba(0,0,0,0.5); }
.swipe-hint { display:flex; justify-content:space-between; gap:10px; margin-top:14px; font-size:10.5px; font-weight:900; letter-spacing:0.08em; text-transform:uppercase; }
.swipe-hint .sh-pass { color:#ff8a8a; }
.swipe-hint .sh-match { color:#8be0ff; }
/* the real action buttons stay in the DOM (swipe + assistive tech trigger them) but off-screen */
.deck-cta .swipe-actions { position:absolute; width:1px; height:1px; overflow:hidden; clip-path:inset(50%); opacity:0; pointer-events:none; margin:0; }

/* chart rows lead with game cover art, not emojis */

/* ── PROFILE HERO: full-bleed portrait behind the identity sheet (me + #/u) ── */

/* the appbar dissolves over the portrait — identity floats on the photo */
body[data-bg="me"] .appbar, body[data-bg="u"] .appbar {
  background: linear-gradient(180deg, rgba(10,8,18,0.72), rgba(10,8,18,0)); border-bottom: 0; box-shadow: none;
  backdrop-filter: none; -webkit-backdrop-filter: none;
}

/* ── AURA CHAT: frosted violet bubbles, glow composer (appended last — wins cascade).
   Bubbles get NO backdrop-filter on purpose: 40+ blurred nodes in a thread janks
   Safari; rgba over the aurora-tinted column already reads as glass. ── */
.msg { border-radius: 18px; padding: 10px 14px; }
.msg.me { background: rgba(124,92,255,0.18); border: 1px solid rgba(167,139,250,0.4); color: #f1eaff;
  border-bottom-right-radius: 6px; box-shadow: 0 4px 18px rgba(124,92,255,0.14); }
.msg.them { background: rgba(255,255,255,0.06); border: 1px solid rgba(255,255,255,0.12); border-bottom-left-radius: 6px; }
.msg.me .mention { color: #fff; text-decoration: underline; }
.reply-quote { background: rgba(255,255,255,0.07); border-left: 2px solid rgba(167,139,250,0.6); border-radius: 8px; }
.composer { background: rgba(14,11,22,0.66); -webkit-backdrop-filter: blur(22px); backdrop-filter: blur(22px);
  border-top: 1px solid rgba(148,120,255,0.25); }
.composer input, .composer .field { background: rgba(255,255,255,0.06); border: 1px solid rgba(255,255,255,0.12); }
.composer input:focus, .composer .field:focus { border-color: rgba(167,139,250,0.55); outline: none; }
.composer .send { background: rgba(124,92,255,0.3); border: 1px solid rgba(167,139,250,0.55); color: #fff;
  box-shadow: 0 0 16px rgba(168,85,247,0.45); }
.reply-modal, .attach-tray { background: rgba(20,16,31,0.7); border: 1px solid rgba(148,120,255,0.25); }
.gc-memberbar { border-bottom: 1px solid rgba(148,120,255,0.2); }
.chat-media-grid .chat-media-item { border-radius: 12px; border: 1px solid rgba(255,255,255,0.1); }

/* ── LIVE STAGE: full-bleed video/poster with a glass overlay. .stream-ovl is a
   SIBLING of #streamVideoSlot (mountStreamVideo wipes the slot's innerHTML). ── */

/* holographic tip pills */

/* tips as a row UNDER the stream (not overlaying the video) */

/* ═════════ REDO FOUNDATION — the reference look, all at once ═════════
   Pure-black field with neon glow (glow-brush ref) · borderless tonal glass
   (Oliver/Aura refs) · big air + type · floating pill nav (Adverse ref).
   Appended LAST deliberately: this layer outranks the legacy neon skin. */

/* 1 · the field: completely black; glow lives in sparse blobs + the gamepads */
body { background: #000; }
body::before {
  background:
    radial-gradient(46% 36% at 12% 6%, rgba(124,92,255,0.16), transparent 60%),
    radial-gradient(40% 32% at 88% 14%, rgba(56,189,248,0.07), transparent 58%),
    radial-gradient(52% 42% at 50% 106%, rgba(168,85,247,0.14), transparent 60%),
    radial-gradient(34% 30% at 6% 92%, rgba(255,45,155,0.06), transparent 58%);
  background-color: #000;
}
#app-frame { background: transparent; box-shadow: none; }
#app-frame::before { opacity: 0.5; }

/* 2 · borderless: surfaces separate by tone, never hairlines (photo-overlay chips keep theirs) */
.card, .home-row, .chat-row, .rail-mod, .viz-card, .you-card, .you-tile, .qtask,
.receipt, .home-col, .seg, .lob-search, .stat-tile, .icon-tile, .cs-msg, .msg.them,
.wallet-stats .ws, .pcard, .empty, .home-next, .rep-card, .about-card, .golive-hero,
.you-cards a, .friend-grid a, .roster-card, .lounge-card {
  border-color: transparent !important;
  box-shadow: 0 12px 34px rgba(0,0,0,0.35) !important;
}

.card, .home-row, .chat-row, .rail-mod, .viz-card, .you-card, .you-tile, .qtask,
.receipt, .rep-card, .about-card, .golive-hero, .wallet-stats .ws, .lounge-card {
  background: rgba(255,255,255,0.055) !important;
}

.chip { background: rgba(255,255,255,0.08); border-color: transparent; }
.chip.on { background: rgba(124,92,255,0.24); border-color: transparent; color: #e6ddff; }
.btn-outline { background: rgba(255,255,255,0.07) !important; border-color: transparent !important; }
.btn-ghost, .seg, .lob-search, .field { border-color: transparent !important; }
.field, .lob-search, .seg { background: rgba(255,255,255,0.06) !important; }

/* 3 · air, radius, type — fewer lines, bigger everything */
.screen { padding: 22px 20px 30px; }
.card { border-radius: 20px; }
.section-title { font-size: 17px; font-weight: 900; letter-spacing: -0.01em; text-transform: none; color: var(--text); animation: none; }
.section-title::after { display: none; }

.appbar { background: linear-gradient(180deg, rgba(0,0,0,0.82), rgba(0,0,0,0)); border-bottom: 0; box-shadow: none;
  backdrop-filter: none; -webkit-backdrop-filter: none; padding: 18px 20px 16px; }

/* 4 · floating pill nav (mobile — desktop keeps the side rail) */
@media (max-width: 979px) {
  #tabbar { left: 50%; transform: translateX(-50%); bottom: calc(var(--vvb, 0px) + 10px + var(--safe-b));
    width: calc(100% - 28px); max-width: calc(var(--maxw) - 28px); border-radius: 28px;
    border: 1px solid rgba(255,255,255,0.08); background: rgba(10,8,18,0.78);
    padding: 10px 6px; box-shadow: 0 18px 50px rgba(0,0,0,0.6); }
  #app { padding-bottom: calc(var(--tabbar-h) + var(--safe-b) + 40px); }
}

/* ═════ HOME v4 + reference details: hero banner, art-tile carousels, big greeting,
   accent-word labels, icons-only floating nav, pill CTAs, neon edges on ART only ═════ */

.ab-me .avatar { width: 32px; height: 32px; font-size: 14px; }
/* hero banner — headline left, glow art right (VR/music refs) */

/* art-tile carousels (lobbies / squads) — imagery carries a thin neon edge */

.live-card { flex: 0 0 min(48vw, 220px); height: 292px; border: none; box-shadow: 0 0 0 1px rgba(168,85,247,0.4), 0 12px 34px rgba(0,0,0,0.45), 0 0 16px rgba(56,189,248,0.1); }

/* CTA pills — fully rounded like every ref */
.btn-primary, .swipe-btn.party, .golive-btn, .super-match, .drop-btn { border-radius: 99px !important; }
/* icons-only floating nav on mobile */
@media (max-width: 979px) {
  :root { --tabbar-h: 58px; }
  #tabbar .tab span:not(.daniel-tab) { display: none; }
#tabbar .tab .daniel-tab { display: block; }
  #tabbar .tab svg { width: 23px; height: 23px; }
  #tabbar .tab { padding: 9px 0; }
}

/* ═════ PROFILE → Oliver sheet: tall portrait, left-aligned glass identity card ═════ */

.btn-follow { background: linear-gradient(90deg, #ff2d9b, #a855f7, #38bdf8) !important; border: none !important; color: #fff !important;
  border-radius: 99px !important; font-weight: 900; box-shadow: 0 0 22px rgba(168,85,247,0.4) !important; }
.btn-follow.on { background: rgba(255,255,255,0.08) !important; box-shadow: none !important; color: var(--dim) !important; }

/* ═════ STREAM → Rodriguez side rail: round glass tip buttons on the video ═════ */

/* ═════ NEON TUBE DASHBOARD (the loved ref): Club-pulse cards become glowing
   circuit panels — violet→amber tube edge, luminous marks and numerals ═════ */

/* pure black field: no haze bubbles — glow belongs to components + the gamepads */
body::before { background: #000; animation: none; }
#app-frame::before { display: none; }

/* ═════ STAT TILES → neon-tube mini panels (the loved dashboard ref) ═════ */

/* ═════ BIG BOXES: grey slim rims → rotating blue↔pink neon tube ═════ */
.card { position: relative; border-color: transparent !important; }
.card::before { content: ''; position: absolute; inset: 0; border-radius: inherit; padding: 1.4px;
  background: conic-gradient(from var(--neonAngle, 0deg), #38bdf8, #ff2d9b 50%, #38bdf8);
  -webkit-mask: linear-gradient(#000 0 0) content-box, linear-gradient(#000 0 0);
  -webkit-mask-composite: xor; mask-composite: exclude;
  animation: neonSpin 8s linear infinite; pointer-events: none;
  filter: drop-shadow(0 0 4px rgba(56,189,248,0.3)); }
.card:nth-child(2n)::before { animation-delay: -4s; }
.card:nth-child(3n)::before { animation-delay: -2.5s; }
@media (prefers-reduced-motion: reduce) { .card::before { animation: none; } }

/* ═════ WORLD SCENES — a different game room every open. Real photography (black-bg
   neon life) on the persistent body layer; a dark veil keeps content readable. ═════ */

body[data-scene]::before { background-color: #000; background-size: cover; background-position: center; }
body[data-scene="jelly"]::before { background-image: linear-gradient(rgba(0,0,0,0.74), rgba(0,0,0,0.9)), url(assets/scenes/jelly.jpg); }
body[data-scene="swarm"]::before { background-image: linear-gradient(rgba(0,0,0,0.82), rgba(0,0,0,0.94)), url(assets/scenes/swarm.jpg); }

/* daily neon sign — tube glow, faint flicker, hand-hung tilt */
@keyframes signFlicker { 0%, 91%, 94%, 98%, 100% { opacity: 1; } 92% { opacity: 0.55; } 96% { opacity: 0.75; } }
.neon-sign { display: inline-block; margin: -4px 0 16px; font-size: 15.5px; font-style: italic; font-weight: 800; letter-spacing: 0.05em;
  color: #ff9ecb; transform: rotate(-1.6deg);
  text-shadow: 0 0 6px rgba(255,45,155,0.9), 0 0 16px rgba(255,45,155,0.55), 0 0 34px rgba(255,45,155,0.35);
  animation: signFlicker 7s linear infinite; }

/* "Tonight, for you" — the reason the app exists; it leads the page */

@media (prefers-reduced-motion: reduce) { .neon-sign { animation: none; } body[data-scene]::before { animation: none; } }

/* ═════ SIX WORLDS: per-tab tint glows (revive #app-frame::before as the room lighting)
   + neon signage on every page hero + bolt-badge pulse ═════ */
body[data-bg="friends"] #app-frame::before, body[data-bg="feed"] #app-frame::before, body[data-bg="chat"] #app-frame::before {
  display: block; opacity: 1; animation: none;
  background: radial-gradient(72% 52% at 50% 0%, rgba(255,45,155,0.11), transparent 62%); }
body[data-bg="games"] #app-frame::before, body[data-bg="game"] #app-frame::before, body[data-bg="discover"] #app-frame::before, body[data-bg="lobby"] #app-frame::before {
  display: block; opacity: 1; animation: none;
  background: radial-gradient(72% 52% at 50% 0%, rgba(56,189,248,0.11), transparent 62%); }
body[data-bg="squads"] #app-frame::before, body[data-bg="team"] #app-frame::before {
  display: block; opacity: 1; animation: none;
  background: radial-gradient(72% 52% at 50% 0%, rgba(168,85,247,0.13), transparent 62%); }
body[data-bg="schedule"] #app-frame::before, body[data-bg="stream"] #app-frame::before {
  display: block; opacity: 1; animation: none;
  background: radial-gradient(72% 52% at 50% 0%, rgba(124,92,255,0.12), transparent 62%); }
body[data-bg="me"] #app-frame::before, body[data-bg="you"] #app-frame::before, body[data-bg="u"] #app-frame::before, body[data-bg="wallet"] #app-frame::before, body[data-bg="quests"] #app-frame::before {
  display: block; opacity: 1; animation: none;
  background: radial-gradient(72% 52% at 50% 0%, rgba(168,85,247,0.11), transparent 62%); }
/* every page hero motto reads as its room's neon sign (cyan tube) */

/* accent words glow like tubes; bolt badges pulse; hero lifts on hover */

/* ═════ PROFILE HERO, desktop fix: clip the photo to its stage (no more face
   bleeding behind the page) and treat it as a contained banner with the sheet
   floating centered — the Oliver layout adapted to wide screens ═════ */

/* ═════ HOME DUO: Tonight-for-you left · lobbies over squads right (desktop) ═════ */

/* profile photo: full height of its stage, never cover-zoomed across the header */

/* ═════ NO GREY LINES: every thin-lined surface wears the spinning blue↔pink rim ═════ */
.chat-row, .home-row, .rail-mod, .you-card, .you-tile, .qtask, .receipt, .rep-card,
.about-card, .golive-hero, .lounge-card, .roster-card, .fy-card, .home-col,
.wallet-stats .ws, .home-empty, .link-row, .codes-card, .home-next, .btn-outline,
.btn-ghost, .lob-search, .pack-card, .ach-card, .friend-cell, .lob-fchip { position: relative; }
.chat-row::before, .home-row::before, .rail-mod::before, .you-card::before, .you-tile::before,
.qtask::before, .receipt::before, .rep-card::before, .about-card::before, .golive-hero::before,
.lounge-card::before, .roster-card::before, .fy-card::before, .home-col::before,
.wallet-stats .ws::before, .home-empty::before, .link-row::before, .codes-card::before,
.home-next::before, .btn-outline::before, .btn-ghost::before,
.lob-search::before, .pack-card::before, .ach-card::before, .friend-cell::before, .lob-fchip::before {
  content: ''; display: block !important; position: absolute; inset: 0; border-radius: inherit; padding: 1.2px;
  background: conic-gradient(from var(--neonAngle, 0deg), #38bdf8, #ff2d9b 50%, #38bdf8);
  -webkit-mask: linear-gradient(#000 0 0) content-box, linear-gradient(#000 0 0);
  -webkit-mask-composite: xor; mask-composite: exclude;
  animation: neonSpin 8s linear infinite; pointer-events: none;
}

.chip { box-shadow: 0 0 0 1px rgba(56,189,248,0.26); }
.chip.on { box-shadow: 0 0 0 1px rgba(255,45,155,0.4); }
@media (prefers-reduced-motion: reduce) {
  .chat-row::before, .home-row::before, .rail-mod::before, .you-card::before, .you-tile::before,
  .qtask::before, .receipt::before, .rep-card::before, .about-card::before, .golive-hero::before,
  .lounge-card::before, .roster-card::before, .fy-card::before, .home-col::before,
  .wallet-stats .ws::before, .home-empty::before, .link-row::before, .codes-card::before,
  .home-next::before, .btn-outline::before, .btn-ghost::before,
  .lob-search::before, .pack-card::before, .ach-card::before, .friend-cell::before, .lob-fchip::before { animation: none; }
}

/* ═════ SEG CONTROLS: no ring on the track — THICK neon borders idle, GLOW active ═════ */
.seg { background: rgba(5,3,10,0.6) !important; padding: 5px; }
.seg button { border: 2px solid var(--segc, #38bdf8); border-radius: 11px; background: rgba(5,3,10,0.5);
  color: rgba(245,243,240,0.92); font-weight: 800; }
.seg button:not(.active) { opacity: 0.88; }
.seg button.active { background: rgba(5,3,10,0.85); color: #fff;
  box-shadow: 0 0 16px var(--segc, #38bdf8), inset 0 0 12px rgba(255,255,255,0.05);
  text-shadow: 0 0 8px var(--segc, #38bdf8); }
/* filter chips: solid black fill, spinning rim (via group), readable text */

/* glassy donut: glow under the ring + a glass sheen over it */

/* ═════ HARD-NO'S: sharp neon red on black — no pastel, no red wash ═════ */
.hardno-card { background: rgba(5,3,10,0.72) !important; border: none !important; position: relative; }
.hardno-card::before { content: ''; display: block !important; position: absolute; inset: 0; border-radius: inherit; padding: 1.2px;
  background: conic-gradient(from var(--neonAngle, 0deg), #ff2d55, #ff2d9b 50%, #ff2d55);
  -webkit-mask: linear-gradient(#000 0 0) content-box, linear-gradient(#000 0 0);
  -webkit-mask-composite: xor; mask-composite: exclude;
  animation: neonSpin 8s linear infinite; pointer-events: none; }
.hn-h { color: #ff5d7a; text-shadow: 0 0 8px rgba(255,45,85,0.6); }
.hn-chip { background: #07050c; border: 2px solid #ff2d55; color: #fff;
  text-shadow: 0 0 8px rgba(255,45,85,0.7); box-shadow: 0 0 10px rgba(255,45,85,0.3); font-weight: 800; }
@media (prefers-reduced-motion: reduce) { .hardno-card::before { animation: none; } }

/* the gamepad wallpaper lives ONLY in chats; every other scene-less page is clean black */
#app-frame::after { display: none !important; }

body[data-scene="none"]::before { background: #000; }

/* ═════ FLOATSCAPE: screen-blended neon art, always drifting ═════ */

/* sprites take turns: each visible ~30% of a 72s cycle, staggered by --fd */

/* ═════ SEGS, final: idle = NO fill, border + words share the color; active = fill + glow ═════ */
.seg { background: transparent !important; padding: 4px; }
.seg button { background: transparent; border: 2px solid var(--segc, #8be0ff); color: var(--segc, #8be0ff); opacity: 1; font-weight: 800; }
.seg button.active { background: rgba(5,3,10,0.72); color: #fff;
  box-shadow: 0 0 16px var(--segc, #8be0ff); text-shadow: 0 0 8px var(--segc, #8be0ff); }

/* ═════ READABILITY: content cards go dark glass — the room whispers, text wins ═════ */
.card, .chat-row, .home-row, .rail-mod, .you-card, .you-tile, .qtask, .receipt, .rep-card,
.about-card, .fy-card, .home-col, .lounge-card, .roster-card, .golive-hero, .viz-card,
.wallet-stats .ws { background: rgba(8,5,14,0.78) !important; }

/* ═════ SQUAD/LOBBY CHAT: the box scrolls, not the page ═════ */
.stream-chat.group { max-height: calc(100dvh - 300px); min-height: 340px; }

/* ═════ PROFILE, desktop: picture LEFT, identity sheet RIGHT ═════ */

/* video sprites in the floatscape blend like the stills */

/* every page is a room — photos everywhere, never bare black (chat keeps the gamepad wall) */
/* seg borders can never be dimmed or nulled again */
.seg button { border: 2px solid var(--segc, #8be0ff) !important; opacity: 1 !important; }

/* ═════ BACKGROUND VIDEO: one neon loop IS the room ═════ */
#bgvideo { position: fixed; inset: 0; z-index: -1; pointer-events: none; background: #000; }
#bgvideo video { width: 100%; height: 100%; object-fit: cover; filter: saturate(1.1) brightness(0.72); }
/* Flat 44% veil — Tovah's call (2026-07-14): let the loops carry the room.
   Readability rides on the text shadows below + each surface's own glass. */
#bgvideo .bg-veil { position: absolute; inset: 0; background: rgba(0,0,0,0.69); }
/* Bare-background text earns a soft shadow so the lighter veil never costs readability;
   invisible against dark panels. */
#app :is(h1, h2, h3, h4, p, small, .pd-kicker) { text-shadow: 0 1px 3px rgba(0,0,0,.9), 0 2px 20px rgba(0,0,0,.7); }
/* text-shadow inherits, and gradient-clipped text (color: transparent) would show the
   shadow through the glyphs — exempt inline children, where all the gradient spans live. */
#app :is(h1, h2, h3, h4, p, small) :is(span, b, em, i) { text-shadow: none; }
/* photo scenes + sprite gallery retired — the video is the only backdrop */
body[data-scene]::before { background-image: none !important; background: #000; }

@media (prefers-reduced-motion: reduce) { #bgvideo video { display: none; } }

/* friends' side of chat: bright enough to read over the video rooms (yours stays pink) */
.msg.them, .msg-row.them .msg { background: rgba(255,255,255,0.14); border: 1px solid rgba(255,255,255,0.2); color: #fff; }
.msg.them .who { color: #8be0ff; }
.stream-chat .sc-text, .stream-chat .msg { color: #fff; }
.chat-thread .msg { font-size: 14.5px; }

/* ═════ CONTRAST PASS over the video rooms ═════ */
/* content rows: near-solid dark glass so nothing fights the loop behind */
.card, .chat-row, .home-row, .rail-mod, .you-card, .you-tile, .qtask, .receipt, .rep-card,
.about-card, .fy-card, .home-col, .lounge-card, .roster-card, .golive-hero, .viz-card,
.wallet-stats .ws { background: rgba(6,4,11,0.92) !important; }
.roster-card { background: rgba(6,4,11,0.92) !important; }
/* dashed add-rows (recruiting etc.): visible border + bright text */
[style*="dashed"], .add-row { border-color: rgba(139,224,255,0.55) !important; color: #dff4ff !important; }
/* segs: idle = colored border + colored word (unchanged); ACTIVE = filled with the
   neon color, white words */
.seg button.active { background: var(--segc, #38bdf8) !important; color: #fff !important;
  text-shadow: 0 1px 6px rgba(0,0,0,0.45); box-shadow: 0 0 18px var(--segc, #38bdf8); }
.seg button.active .dim2, .seg button.active .muted { color: rgba(255,255,255,0.85); }

/* ═════ NO WHITE ICONS (sidebar exempt): default every in-app glyph to neon cyan.
   Low specificity — existing tints (iconTile --it, stat-tile accents, live red…)
   still win; filled gradient buttons keep white glyphs as part of their label. ═════ */
#app svg { color: #8be0ff; }
.btn-primary svg, .swipe-btn.party svg, .drop-btn svg, .seg button.active svg,
.hero-card .hc-cta svg, .btn-follow svg, .super-match svg { color: #fff; }

/* feed posts + any straggler panels join the near-solid recipe */
.feed-item, .compose-bar, .globby, .pcard, .stream-chat, .hardno-card, .team-recruit,
.tier-hero, .qhero, .empty { background: rgba(6,4,11,0.92) !important; }

/* active tab: keep the solid fill, wrap it in a soft diffuse halo (glow-icon ref) */
.seg button.active { box-shadow: 0 0 10px var(--segc, #38bdf8), 0 0 30px var(--segc, #38bdf8), 0 0 72px var(--segc, #38bdf8); }

/* icons: RANDOM neon scatter, not uniform blue — cycle by DOM position */
#app :nth-child(2n) > svg { color: #ff6db8; }
#app :nth-child(3n) > svg { color: #c9a6ff; }
#app :nth-child(4n) > svg { color: #6ee7b7; }
#app :nth-child(5n) > svg { color: #22d3ee; }
#app :nth-child(7n) > svg { color: #8be0ff; }
/* designed tints always beat the scatter */

#app .btn-primary svg, #app .swipe-btn.party svg, #app .drop-btn svg, #app .seg button.active svg,
#app .hero-card .hc-cta svg, #app .btn-follow svg, #app .super-match svg { color: #fff; }
#app .live-pill svg, #app .so-live svg { color: #fff; }

/* ═════ EVERY multicolor border rotates — no frozen gradients ═════ */

/* Tonight-for-you cards: drop the frozen ring so only the spinning rim frames them */

/* hero banner joins the rotation */

/* ⚡ needs-your-skill badges go PINK */

/* ═════ RIM MOTION, guaranteed: the conic @property spin doesn't run on this
   setup, so rims switch to a traveling blue↔pink shimmer (background-position
   is animatable everywhere). Same masked-ring geometry. ═════ */
@keyframes rimTravel { 0% { background-position: 0% 50%; } 100% { background-position: 300% 50%; } }
.chat-row::before, .home-row::before, .rail-mod::before, .you-card::before, .you-tile::before,
.qtask::before, .receipt::before, .rep-card::before, .about-card::before, .golive-hero::before,
.lounge-card::before, .roster-card::before, .fy-card::before, .home-col::before,
.wallet-stats .ws::before, .home-empty::before, .link-row::before, .codes-card::before,
.home-next::before, .btn-outline::before, .btn-ghost::before, .lob-search::before,
.pack-card::before, .ach-card::before, .friend-cell::before, .lob-fchip::before,
.card::before, .hardno-card::before, .viz-card::before, .stat-tile::before, .hero-card::before {
  /* background-IMAGE longhand on purpose: the `background:` shorthand also pins
     background-position with !important, and important declarations beat keyframes —
     which froze every rim. The longhand leaves position free for rimTravel. */
  background-image: linear-gradient(100deg, #38bdf8, #ff2d9b 25%, #7c5cff 50%, #ff2d9b 75%, #38bdf8 100%) !important;
  background-size: 300% 100% !important;
  animation: rimTravel 7s linear infinite !important;
}
.hardno-card::before { background-image: linear-gradient(100deg, #ff2d55, #ff2d9b 30%, #ff5d7a 60%, #ff2d55 100%) !important; background-size: 300% 100% !important; }
.chat-row:nth-child(2n)::before, .home-row:nth-child(2n)::before, .fy-card:nth-child(2n)::before, .card:nth-child(2n)::before { animation-delay: -2.4s !important; }
.chat-row:nth-child(3n)::before, .home-row:nth-child(3n)::before, .fy-card:nth-child(3n)::before, .card:nth-child(3n)::before { animation-delay: -4.8s !important; }
/* your-people rings: cycle the palette, never all purple */

/* section accent words cycle too */

@media (prefers-reduced-motion: reduce) { .card::before, .chat-row::before, .fy-card::before, .viz-card::before, .stat-tile::before, .hero-card::before { animation: none !important; } }

/* ═════ BATCH: feed rims · icon variety · chat readability · group-chat scroll ·
   follow button · call tiles · add-game art ═════ */
/* community = blue rims, friends = pink rims */

/* stat/pulse tile icons cycle the palette (beats the #app svg default) */

/* chat: bubbles go near-solid so bright video rooms can't wash them out */
.msg.them, .msg-row.them .msg { background: rgba(13,9,22,0.94); border: 1px solid rgba(255,255,255,0.16); color: #fff; }
.msg.me { background: linear-gradient(120deg, rgba(255,45,155,0.85), rgba(168,85,247,0.85)); border: none; color: #fff; }
body[data-bg="chat"] .bg-veil, body[data-bg="lobby"] .bg-veil, body[data-bg="team"] .bg-veil { background: linear-gradient(rgba(0,0,0,0.82), rgba(0,0,0,0.94)) !important; }
/* squad/lobby chat: the BOX scrolls, never the page */
.stream-chat, .stream-chat.group { height: min(56vh, 560px); max-height: min(56vh, 560px); overflow-y: auto !important; }
/* live-stream page: chat sits BELOW the video, so size it to its content — the
   composer stays in view (no scrolling to type); it scrolls internally once full */
#streamChat { height: auto; min-height: 110px; max-height: min(40vh, 380px); }
/* desktop: the stream was full-width huge — cap + center the whole stream page */
/* ═══════════ LIVE STREAM — chat over the video (mobile) · side panel (desktop) ═══════════ */

/* ── MOBILE: full-screen video, chat overlaid on the person, floating composer ── */
@media (max-width: 979px) {
  body:has(.stream-live) #tabbar { display: none; }
  
  
  
  
  
  
  
  
  
  
  
}

/* ── DESKTOP: video left, chat as a full-height side panel ── */

/* Home duo: keep the right column (lobbies + squads) from dangling below Tonight-for-you */

/* Following (on-state) button: glass + pink rim instead of dead grey */
.btn-follow.on { background: rgba(13,9,22,0.85) !important; box-shadow: 0 0 0 1px rgba(255,45,155,0.55), 0 0 14px rgba(255,45,155,0.25) !important; color: #ff9ecb !important; }
/* call tiles: portraits, rounded, rimmed; name chip glassy */

/* add-a-game rows: real cover art */

/* ═════ ONE CHAT LANGUAGE — every thread (DM, group, lobby, team, stream) ═════ */
.msg, .msg-row .msg, .stream-chat .msg {
  border-radius: 20px; padding: 11px 15px; font-size: 14.5px; line-height: 1.45;
  max-width: min(78%, 560px); box-shadow: 0 6px 18px rgba(0,0,0,0.35);
}
.msg.them, .msg-row.them .msg {
  background: linear-gradient(160deg, rgba(34,24,56,0.95), rgba(18,12,32,0.95));
  border: 1px solid rgba(148,120,255,0.28); color: #f4f0ff; border-bottom-left-radius: 7px;
}
.msg.me, .msg-row.me .msg {
  background: linear-gradient(120deg, #ff2d9b, #b44df0 70%, #8b5cf6);
  border: none; color: #fff; border-bottom-right-radius: 7px;
  box-shadow: 0 6px 20px rgba(255,45,155,0.28);
}
.msg .who { color: #8be0ff; font-weight: 800; font-size: 12px; text-shadow: 0 0 8px rgba(56,189,248,0.5); }
.reply-quote { background: rgba(255,255,255,0.09); border-left: 2px solid #ff5fb0; border-radius: 10px; color: rgba(255,255,255,0.85); }
.msg-row .msg-av .avatar, .msg-av .avatar { box-shadow: 0 0 0 1px rgba(148,120,255,0.4); }
.chat-thread, .stream-chat { display: flex; flex-direction: column; gap: 12px; }
/* friend-pick chips on New group */

.ns-friend { display: inline-flex; align-items: center; gap: 8px; padding: 7px 14px 7px 8px; border-radius: 99px; cursor: pointer;
  background: rgba(13,9,22,0.85); box-shadow: 0 0 0 1px rgba(148,120,255,0.3); font-size: 13px; font-weight: 700; }
.ns-friend input { display: none; }
.ns-friend .avatar { width: 26px; height: 26px; font-size: 12px; }
.ns-friend:has(input:checked) { background: linear-gradient(120deg, rgba(255,45,155,0.3), rgba(139,92,246,0.3));
  box-shadow: 0 0 0 1px rgba(255,45,155,0.7), 0 0 14px rgba(255,45,155,0.3); }

/* roster crests → little neon artworks: team art under a scrim, glowing tube
   letters, rim lit in the team's color */

/* ═════ BATCH v88: last static rims travel · pink glowy hairlines (no light grey
   anywhere) · THEM chat bubbles = deep navy glass with a blue glow ═════ */
/* the desktop rail, squads CTA and daily-drop rings join the traveling lights
   (their conic @property spin never ran in Chrome) */
#tabbar::after, .sq-cta::before, .drop-card::before {
  background-image: linear-gradient(100deg, #38bdf8, #ff2d9b 25%, #7c5cff 50%, #ff2d9b 75%, #38bdf8 100%) !important;
  background-size: 300% 100% !important;
  animation: rimTravel 7s linear infinite !important;
}
.drop-card::before { background-image: linear-gradient(100deg, #7c5cff, #a855f7 30%, #38bdf8 60%, #7c5cff 100%) !important; }

/* every hairline in the app: hot pink, never light grey */
:root { --line: rgba(255,45,155,0.34); }

/* chat: the OTHER person = deep navy glass + soft blue glow (my side stays pink) */
.msg.them, .msg-row.them .msg, .cs-msg {
  background: linear-gradient(165deg, rgba(14,26,58,0.97), rgba(6,11,28,0.97)) !important;
  border: 1px solid rgba(90,175,255,0.6) !important;
  box-shadow: 0 0 12px rgba(56,140,255,0.35), 0 0 30px rgba(56,140,255,0.15), 0 6px 18px rgba(0,0,0,0.4) !important;
  color: #eaf3ff !important;
}

/* ═════ v89: the donut is GLASS — translucent jewel segments, specular sheen,
   lit edges, soft glass disc in the hole ═════ */

/* profile pictures wear a blue neon ring (people-rail keeps its color cycle) */
.avatar { box-shadow: 0 0 0 2px rgba(56,189,248,0.8), 0 0 12px rgba(56,189,248,0.4) !important; }

/* ═════ v90: ACTIVE seg pill = LIT NEON, not flat paint — gradient glass fill,
   white-hot glowing letters (like the neon sign), inner sheen + halo ═════ */
.seg button.active {
  background:
    linear-gradient(180deg, rgba(255,255,255,0.34), rgba(255,255,255,0) 46%),
    radial-gradient(130% 160% at 50% 120%, rgba(255,255,255,0.22), transparent 55%),
    linear-gradient(180deg, color-mix(in srgb, var(--segc, #38bdf8) 86%, #fff), color-mix(in srgb, var(--segc, #38bdf8) 82%, #000)) !important;
  color: #fff !important;
  text-shadow: 0 0 6px rgba(255,255,255,0.95), 0 0 14px var(--segc, #38bdf8), 0 0 28px var(--segc, #38bdf8);
  box-shadow: 0 0 12px var(--segc, #38bdf8), 0 0 30px color-mix(in srgb, var(--segc, #38bdf8) 60%, transparent),
    0 0 72px color-mix(in srgb, var(--segc, #38bdf8) 38%, transparent),
    inset 0 1px 8px rgba(255,255,255,0.4), inset 0 -10px 18px color-mix(in srgb, var(--segc, #38bdf8) 55%, #000) !important;
}
.seg button.active .seg-n { background: rgba(255,255,255,0.28); color: #fff; text-shadow: 0 0 8px rgba(255,255,255,0.8); }

/* ═════ v91: avatar ring goes whisper-thin — hairline blue + a very blurred haze ═════ */
.avatar { box-shadow: 0 0 0 1px rgba(56,189,248,0.3), 0 0 14px 3px rgba(56,189,248,0.22) !important; }

/* ═════ v92: roster trait chips = neon glass (no emojipedia, no washed purple) ═════ */
.chip[class*="rch-"] { background: rgba(5,3,10,0.82) !important; border: 1.5px solid var(--rc, #8be0ff) !important;
  color: #fff !important; font-weight: 800; text-shadow: 0 0 8px color-mix(in srgb, var(--rc, #8be0ff) 70%, transparent);
  box-shadow: 0 0 10px color-mix(in srgb, var(--rc, #8be0ff) 32%, transparent); }
.rch-g { --rc: #38bdf8; } .rch-s { --rc: #ff2d9b; } .rch-m { --rc: #a855f7; } .rch-t { --rc: #34d399; } .rch-p { --rc: #22d3ee; }

/* ═════ v93: active seg halo pulled in to ~1/3 — tight glow, same lit pill ═════ */
.seg button.active {
  box-shadow: 0 0 4px var(--segc, #38bdf8), 0 0 11px color-mix(in srgb, var(--segc, #38bdf8) 60%, transparent),
    0 0 24px color-mix(in srgb, var(--segc, #38bdf8) 35%, transparent),
    inset 0 1px 8px rgba(255,255,255,0.4), inset 0 -10px 18px color-mix(in srgb, var(--segc, #38bdf8) 55%, #000) !important;
}

/* ═════ v94: "online now" pills = the lit-neon pill treatment ═════ */

/* ═════ v95: lit-pill words go CRISP — no white bloom, just a whisper of depth ═════ */
.seg button.active, .lob-time.now, .lob-banner .lob-time.now, .lbd-in .lob-time.now {
  text-shadow: 0 1px 3px rgba(0, 0, 20, 0.35) !important;
}

/* ═════ v96: clip page — the game chip flows in the page, never pinned over the back button ═════ */

/* ═════ v97: header-only game art keeps its natural size — anchored LEFT, melting
   into black on the right (no more stretched 460px banners) ═════ */

/* count badge wears the OPPOSITE neon: pink pill → blue badge, blue pill → pink */
.seg button:nth-child(1), .home-toggle a:nth-child(1) { --segn: #ff2d9b; }
.seg button:nth-child(2), .home-toggle a:nth-child(2) { --segn: #38bdf8; }
.seg button:nth-child(3), .home-toggle a:nth-child(3) { --segn: #38bdf8; }
.seg button:nth-child(4), .home-toggle a:nth-child(4) { --segn: #ff2d9b; }
.seg button:nth-child(5), .home-toggle a:nth-child(5) { --segn: #ff2d9b; }

.seg button .seg-n, .seg button.active .seg-n { background: var(--segn, #38bdf8) !important; color: #fff !important;
  box-shadow: 0 0 8px color-mix(in srgb, var(--segn, #38bdf8) 70%, transparent); text-shadow: 0 1px 2px rgba(0,0,20,0.35) !important; }

/* ═════ v98: chips lose the purple/red combo — black glass + neon borders (blue,
   pink, mint cycle) · deck receipt loses its box · greeting cleaned up ═════ */
.chip { background: rgba(5,3,10,0.8) !important; border: 1.5px solid rgba(56,189,248,0.5) !important; color: #eaf6ff !important; font-weight: 700; }
.chip.on { border-color: rgba(255,255,255,0.4) !important; background: linear-gradient(135deg,#ff2d9b,#a855f7) !important; color: #fff !important; font-weight: 800; text-shadow: 0 1px 6px rgba(0,0,0,0.35); box-shadow: 0 0 16px rgba(255,45,155,0.55), 0 0 30px rgba(168,85,247,0.30); }
.wrap .chip:nth-child(3n+2) { border-color: rgba(255,45,155,0.65) !important; box-shadow: 0 0 10px rgba(255,45,155,0.22); }
.wrap .chip:nth-child(3n) { border-color: rgba(52,211,153,0.6) !important; box-shadow: 0 0 10px rgba(52,211,153,0.2); }
/* the match receipt sits straight on the page — no box, no rim */
.deck-side .receipt { background: transparent !important; border: none !important; box-shadow: none !important; padding-left: 0; padding-right: 0; }
.deck-side .receipt::before { display: none !important; }

/* ═════ v99: swipe hints are real buttons on desktop (same gated actions) ═════ */
.swipe-hint button { background: none; border: none; font: inherit; letter-spacing: inherit; text-transform: inherit; cursor: pointer; padding: 6px 4px; }
.swipe-hint .sh-pass:hover { text-shadow: 0 0 12px rgba(255,138,138,0.9); }
.swipe-hint .sh-match:hover { text-shadow: 0 0 12px rgba(56,189,248,0.9); }

/* ═════ v100: counts lose the pill — glowing neon digits in the OPPOSITE color ═════ */
.seg button .seg-n, .seg button.active .seg-n {
  background: none !important; box-shadow: none !important; padding: 0 2px; font-weight: 900;
  color: var(--segn, #38bdf8) !important;
  text-shadow: 0 0 6px var(--segn, #38bdf8), 0 0 16px color-mix(in srgb, var(--segn, #38bdf8) 70%, transparent) !important;
}

/* ═════ v101: MINIMIZED CALL — the call follows you as a floating neon pill ═════ */
#callpill { position: fixed; right: 14px; bottom: calc(86px + var(--safe-b, 0px)); z-index: 70;
  display: flex; align-items: center; gap: 10px; padding: 8px 9px 8px 15px; border-radius: 99px;
  background: linear-gradient(160deg, rgba(10,20,40,0.94), rgba(6,10,24,0.96));
  border: 1px solid rgba(90,175,255,0.65); backdrop-filter: blur(14px);
  box-shadow: 0 0 14px rgba(56,140,255,0.4), 0 0 34px rgba(56,140,255,0.16), 0 12px 30px rgba(0,0,0,0.55); }
@media (min-width: 980px) { #callpill { bottom: 22px; right: 22px; } }
#callpill .cp-open { display: flex; align-items: center; gap: 9px; color: #eaf3ff; text-decoration: none; font-size: 13px; font-weight: 800; max-width: min(60vw, 300px); }
#callpill .cp-open b { overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
#callpill .cp-dot { width: 9px; height: 9px; border-radius: 50%; flex: 0 0 auto; background: #34d399; box-shadow: 0 0 10px #34d399; animation: cpPulse 1.6s ease-in-out infinite; }
@keyframes cpPulse { 50% { opacity: 0.45; } }
#callpill .cp-time { color: #8be0ff; font-weight: 800; font-variant-numeric: tabular-nums; text-shadow: 0 0 8px rgba(56,189,248,0.6); }
#callpill .cp-end { width: 34px; height: 34px; border-radius: 50%; border: none; cursor: pointer; flex: 0 0 auto;
  background: linear-gradient(135deg, #ff2d55, #ff2d9b); color: #fff; font-size: 14px; font-weight: 900;
  box-shadow: 0 0 12px rgba(255,45,85,0.55); }
@media (prefers-reduced-motion: reduce) { #callpill .cp-dot { animation: none; } }

/* ═════ v102: counts = WHITE digits, bigger, with a tiny opposite-color ring ═════ */
.seg button .seg-n, .seg button.active .seg-n {
  color: #fff !important; font-size: 14px; font-weight: 900; line-height: 1; padding: 2px 8px; border-radius: 99px;
  background: none !important; border: 1px solid var(--segn, #38bdf8);
  box-shadow: 0 0 8px color-mix(in srgb, var(--segn, #38bdf8) 40%, transparent) !important;
  text-shadow: 0 1px 2px rgba(0, 0, 20, 0.35) !important;
}

/* ═════ v103: Minimize lives top-right of the call — labeled neon pill ═════ */

/* ═════ v104: counts = plain BIG bold white digits, nothing else ═════ */
.seg button .seg-n, .seg button.active .seg-n {
  background: none !important; border: none !important; box-shadow: none !important; padding: 0 2px;
  color: #fff !important; font-size: 15px; font-weight: 900; line-height: 1;
  text-shadow: 0 1px 3px rgba(0, 0, 20, 0.35) !important;
}

/* ═════ v105: call controls = glowing neon line icons (no emoji) ═════ */

/* ═════ v106: swap — labels big, digits small ═════ */
.seg button { font-size: 15px; }
.seg button .seg-n, .seg button.active .seg-n { font-size: 13px; }

/* ═════ v107: every call control sits on black — no white circle ═════ */

/* ═════ v108: label + digit sit on one line, centered; digits at 2/3 label size ═════ */
.seg button { display: inline-flex; align-items: center; justify-content: center; gap: 7px; }
.seg button .seg-n, .seg button.active .seg-n { font-size: 10px; padding: 0; transform: translateY(1px); }

/* ═════ v109: each call control's ring matches its icon ═════ */

/* ═════ v110: game-page banner = real image at natural size, words BESIDE it,
   fully transparent behind · deck receipt column loses its huge box ═════ */

.deck-side { background: none !important; border: none !important; box-shadow: none !important; backdrop-filter: none !important; }
.deck-side::before { display: none !important; }

/* ═════ v111: lobby pages let the neon room shine through — much lighter veil ═════ */
body[data-bg="lobby"] .bg-veil { background: linear-gradient(rgba(0,0,0,0.4), rgba(0,0,0,0.62)) !important; }

/* ═════ v112: breadcrumbs over sub-tabs · unlisted-group toggle row ═════ */

/* ═════ v113: deck receipt sits on the page — the blurred photo spill is gone —
   and the match hint shows its coin price ═════ */
.deck-hero .deck-cols { background-image: none !important; }
.swipe-hint svg { width: 12px; height: 12px; vertical-align: -2px; }

/* ═════ v114: hype pills on live streams (coin-free tipping) ═════ */

/* ═════ v115: Steam verification on the profile/deck cards ═════ */
.steam-line { font-size: 12px; font-weight: 800; color: #6ee7b7; text-shadow: 0 0 8px rgba(52,211,153,0.55); margin-top: 3px; }

/* ═════ v116: breadcrumbs are LINKS — tap any level to go back up ═════ */

/* ═════ v117: peek Steam badge = proper pill, never wraps into the photo ═════ */

/* ═════ v118: Steam trust meta row on profiles ═════ */

/* ═════ v119: neon HINT modal — stays until dismissed ═════ */
.hint-wrap { position: fixed; inset: 0; z-index: 1400; display: grid; place-items: center; padding: 20px; }
.hint-backdrop { position: absolute; inset: 0; background: rgba(3,2,7,0.72); backdrop-filter: blur(6px); border: none; cursor: pointer; }
.hint-modal { position: relative; width: min(460px, 100%); border-radius: 22px; padding: 24px 22px 22px;
  background: linear-gradient(160deg, rgba(14,10,26,0.97), rgba(6,4,14,0.98));
  border: 1.5px solid rgba(56,189,248,0.6);
  box-shadow: 0 0 18px rgba(56,189,248,0.35), 0 0 54px rgba(168,85,247,0.28), 0 24px 60px rgba(0,0,0,0.6);
  animation: hintPop .26s cubic-bezier(.16,1,.3,1); }
@keyframes hintPop { from { transform: translateY(14px) scale(.97); opacity: 0 } }
.hint-x { position: absolute; top: 12px; right: 12px; width: 32px; height: 32px; display: grid; place-items: center;
  border-radius: 50%; background: rgba(5,3,10,0.8); border: 1px solid rgba(255,45,155,0.5); cursor: pointer; }
#app .hint-x svg { width: 16px; height: 16px; color: #ff6db8; }
.hint-title { font-size: 20px; font-weight: 900; letter-spacing: -0.02em; color: #fff;
  text-shadow: 0 0 12px rgba(56,189,248,0.7); margin-bottom: 8px; padding-right: 30px; }
.hint-body { font-size: 14px; line-height: 1.6; color: #d9d2ee; }
.hint-body b { color: #8be0ff; }
.hint-steps { margin: 14px 0 0; padding-left: 20px; display: flex; flex-direction: column; gap: 7px;
  font-size: 13.5px; line-height: 1.5; color: #cdc4e6; }
.hint-steps li::marker { color: #ff2d9b; font-weight: 900; }
.hint-steps b { color: #fff; }
@media (prefers-reduced-motion: reduce) { .hint-modal { animation: none } }

/* ═════ v120: the Steam panel — verified hours, recency, account age, real games ═════ */
.steam-panel { position: relative; margin: 12px 0; padding: 13px 15px; border-radius: 16px;
  background: linear-gradient(160deg, rgba(8,22,18,0.92), rgba(5,12,14,0.95));
  border: 1px solid rgba(52,211,153,0.45); box-shadow: 0 0 14px rgba(52,211,153,0.18), 0 8px 24px rgba(0,0,0,0.4); }
.sp-head { display: flex; align-items: center; gap: 8px; font-size: 14px; }
.sp-head b { color: #fff; font-weight: 900; letter-spacing: -0.01em; }
.sp-check { color: #6ee7b7; font-weight: 900; text-shadow: 0 0 8px rgba(52,211,153,0.8); }
.sp-hrs { margin-left: auto; color: #6ee7b7; font-weight: 900; font-size: 15px; text-shadow: 0 0 10px rgba(52,211,153,0.6); }
.sp-meta { margin-top: 4px; font-size: 12px; font-weight: 700; color: #9fd8c2; }
.sp-games { display: flex; flex-wrap: wrap; gap: 7px; margin-top: 10px; max-width: 100%; }
.sp-game { display: inline-flex; align-items: baseline; gap: 6px; padding: 5px 11px; border-radius: 99px; max-width: 100%;
  background: rgba(5,3,10,0.72); border: 1px solid rgba(52,211,153,0.35); font-size: 12.5px; }
.sp-game b { color: #eafff6; font-weight: 800; min-width: 0; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.sp-game span { color: #6ee7b7; font-weight: 800; flex: 0 0 auto; white-space: nowrap; }

/* ═════ v121: MOBILE — appbar clears the notch/status bar even when stuck, and the
   reply button is actually visible on touch ═════ */
/* sticky pins to the VIEWPORT top, which ignored #app-frame's safe-area padding —
   so the header slid under the clock/battery on scroll. Pull the bar up over the
   inset and pad its contents back down instead. */
.appbar { margin-top: calc(-1 * var(--safe-t)); padding-top: calc(16px + var(--safe-t)); top: 0; }

/* touch devices have no hover: keep the reply control visible */
@media (hover: none) {
  .msg-replybtn { opacity: 1 !important; }
}

/* reply control = curved pink arrow icon */
.msg-replybtn svg { width: 14px; height: 14px; }
#app .msg-replybtn svg { color: #ff6db8; filter: drop-shadow(0 0 5px rgba(255,45,155,0.7)); }

/* ═════ v94: neon-glass count badges + glassy match card + neon tip pills ═════ */
/* Count badges → dark center + glowing neon outline (the app's signature rim look) */

#app .seg button .seg-n, #app .seg button.active .seg-n {
  background: rgba(6,4,12,0.78) !important; color: #fff !important; border: 1.5px solid var(--segn, #38bdf8) !important;
  box-shadow: 0 0 9px color-mix(in srgb, var(--segn, #38bdf8) 55%, transparent), inset 0 0 6px rgba(255,255,255,0.1) !important;
  text-shadow: 0 0 8px color-mix(in srgb, var(--segn, #38bdf8) 80%, transparent) !important;
}
/* Match card: tags + why-pill = glass, matching the .deck-topchip at the top (not rainbow rims) */
#app .deck-scrim .chip {
  background: rgba(10,8,18,0.5) !important; border: 1px solid rgba(255,255,255,0.16) !important; color: #eaf3ff !important;
  -webkit-backdrop-filter: blur(10px); backdrop-filter: blur(10px); box-shadow: none !important; text-shadow: none !important;
}
#app .deck-scrim .chip.on { border-color: rgba(148,120,255,0.6) !important; background: rgba(148,120,255,0.14) !important; color: #fff !important; }
#app .deck-scrim .chip.game { border-color: rgba(56,189,248,0.5) !important; }
.deck-why { background: rgba(10,8,18,0.5) !important; border: 1px solid rgba(255,255,255,0.14) !important; -webkit-backdrop-filter: blur(12px); backdrop-filter: blur(12px); }
.deck-why summary { color: #dfe8ff !important; }
/* Stream tip pills → neon outline + a "Tip @handle" caption above the amounts */

/* ═════ v95: double-tap message reaction menu + on-bubble reaction badge ═════ */
.msg-menu-scrim { position: fixed; inset: 0; z-index: 120; }
.msg-menu { position: fixed; z-index: 121; transform: translate(-50%, -100%); display: flex; gap: 4px; padding: 6px; border-radius: 16px; background: rgba(14,10,22,0.92); -webkit-backdrop-filter: blur(20px); backdrop-filter: blur(20px); border: 1px solid rgba(255,255,255,0.16); box-shadow: 0 16px 44px rgba(0,0,0,0.6); animation: mmpop 0.14s ease; }
@keyframes mmpop { from { opacity: 0; transform: translate(-50%, -90%) scale(0.9); } }
.mm-btn { width: 42px; height: 42px; border-radius: 12px; border: none; background: transparent; font-size: 21px; line-height: 1; display: grid; place-items: center; cursor: pointer; transition: background 0.12s, transform 0.1s; }
.mm-btn:hover { background: rgba(255,255,255,0.1); }
.mm-btn:active { transform: scale(0.88); }
.mm-btn.on { background: rgba(255,45,155,0.22); box-shadow: inset 0 0 0 1px rgba(255,45,155,0.55); }
.mm-btn.mm-reply svg { width: 20px; height: 20px; color: #ff6db8; }
.msg { position: relative; }
/* A reacted bubble reserves margin below (for the pill that straddles its bottom edge) and a
   minimum width so the badge fits — short messages like "Hey!" were getting the last word covered. */
.msg:has(.msg-react) { margin-bottom: 16px; min-width: 92px; }
/* neon reaction badge — every reaction present, tap to see who; straddles the bubble's bottom-right edge */
.msg-react { position: absolute; right: 6px; bottom: -12px; z-index: 3; display: inline-flex; align-items: center; gap: 3px; height: 21px; box-sizing: border-box; padding: 0 7px; border: 1px solid rgba(255,255,255,0.16); border-radius: 999px; background: rgba(14,10,22,0.95); box-shadow: 0 2px 8px rgba(0,0,0,0.5); cursor: pointer; }
/* The badge is a <button>, so the global `#app button { min-height: 42px }` tap-target rule
   (higher specificity) was doubling its height to 42px and shoving it up over the text.
   Match that specificity to keep the pill its real 21px. */
#app .msg-react { min-height: 0; }
.msg-react .mr-i { display: inline-flex; align-items: center; }
.msg-react svg { width: 12px; height: 12px; }
.msg-react .mr-i.is-heart svg { fill: #ff2d9b; stroke: #ff2d9b; }
.msg-react .mr-i.is-down svg { color: #8fb0ff; transform: rotate(180deg); }   /* Lucide thumb is a thumbs-UP — flip down */
.msg-react b { font-size: 10px; font-weight: 800; color: #d7cfe2; }
/* who-reacted sheet */
.rx-wrap { position: fixed; inset: 0; z-index: 240; display: grid; place-items: end center; }
.rx-bg { position: absolute; inset: 0; border: 0; background: rgba(2,1,6,.7); backdrop-filter: blur(6px); }
.rx-sheet { position: relative; width: min(440px, 100%); padding: 22px 20px calc(20px + env(safe-area-inset-bottom)); border-radius: 24px 24px 0 0; background: linear-gradient(180deg,#140a1d,#08050e); border: 1px solid rgba(255,255,255,.1); box-shadow: 0 -20px 60px rgba(0,0,0,.6); }
.rx-sheet header small { color: #8fa6ff; font-size: 8px; font-weight: 900; letter-spacing: .16em; }
.rx-sheet header h2 { margin: 5px 0 14px; font-size: 20px; }
.rx-list { display: flex; flex-direction: column; gap: 4px; max-height: 50vh; overflow-y: auto; }
.rx-row { display: flex; align-items: center; gap: 11px; padding: 9px 8px; border-radius: 12px; color: #fff; text-decoration: none; }
.rx-row:hover { background: rgba(255,255,255,.04); }
.rx-row .avatar { width: 34px; height: 34px; }
.rx-row b { flex: 1; min-width: 0; font-size: 13px; }
.rx-icon { display: inline-flex; }
.rx-icon svg { width: 16px; }
.rx-icon.is-heart svg { fill: #ff2d9b; stroke: #ff2d9b; }
.rx-icon.is-down svg { color: #8fb0ff; transform: rotate(180deg); }
.rx-done { width: 100%; margin-top: 14px; padding: 13px; border: 1px solid rgba(255,255,255,.14); border-radius: 12px; color: #c9becf; background: rgba(255,255,255,.05); font: inherit; font-weight: 800; cursor: pointer; }
/* tappable room-invite link inside a chat message + room host action row */
.msg-roomlink{display:inline-flex;align-items:center;gap:6px;margin-top:5px;padding:7px 11px;color:#dfe6ff;border:1px solid rgba(126,151,255,.4);border-radius:10px;background:rgba(90,120,255,.1);font-weight:800;font-size:12px;text-decoration:none}
.msg-roomlink svg{width:13px;flex:0 0 auto;color:#8fa6ff}
.lr-host-actions{display:flex;flex-wrap:wrap;gap:8px}
/* the badge hangs below the bubble — the bubble must be the positioning context, and reserve
   room so it isn't clipped by the next row; media bubbles (overflow:hidden) must show it too */
.msg:has(.msg-react) { position: relative; margin-bottom: 15px; }
.msg.has-media:has(.msg-react) { overflow: visible; }
.msg-row:has(.msg-react) { margin-bottom: 15px; }

/* ═════ v96: dismissible push-enable nudge on Home ═════ */
.push-nudge { display: flex; align-items: center; gap: 12px; margin: 4px 0 14px; padding: 12px 14px; border-radius: 16px; background: linear-gradient(120deg, rgba(56,189,248,0.14), rgba(255,45,155,0.12)); border: 1px solid rgba(120,180,255,0.4); box-shadow: 0 0 18px rgba(56,140,255,0.2); }
.push-nudge .pn-ic { font-size: 22px; flex: 0 0 auto; }
.push-nudge .pn-txt { flex: 1 1 auto; min-width: 0; display: flex; flex-direction: column; gap: 1px; }
.push-nudge .pn-txt b { font-size: 13.5px; }
.push-nudge .pn-txt span { font-size: 11.5px; color: rgba(255,255,255,0.62); }
.push-nudge .pn-on { flex: 0 0 auto; padding: 8px 16px; }
.push-nudge .pn-x { flex: 0 0 auto; width: 26px; height: 26px; border-radius: 50%; border: 1px solid rgba(255,255,255,0.16); background: rgba(255,255,255,0.06); color: rgba(255,255,255,0.7); font-size: 13px; cursor: pointer; display: grid; place-items: center; }
.push-nudge .pn-x:hover { background: rgba(255,255,255,0.14); color: #fff; }

/* ═════ v110: count badges = JUST the number — no ring, no pill, no box.
   Kills the neon rim added in v94 for the seg-tab counts (Messages/DMs/Groups)
   and the chat-unread counts; the bell "11" keeps a soft fill (it overlays the
   icon) but loses its hard border. "nothing around the number." ═════ */
#app .seg button .seg-n, #app .seg button.active .seg-n {
  background: none !important; border: none !important; box-shadow: none !important;
  padding: 0 !important; color: var(--segn, #38bdf8) !important;
  text-shadow: 0 0 7px color-mix(in srgb, var(--segn, #38bdf8) 75%, transparent) !important;
}

#app .notif-count { border: none !important; box-shadow: 0 0 9px rgba(255,45,155,0.6) !important; }

/* ============================================================
   2026-07-12 GROUND-UP REBUILD — token layer (appended last, wins the cascade).
   The approved Home-mockup night system: ONE accent family — violet #a855f7 /
   cyan #5cc8ff / pink #f472b6 — over near-black, mint presence dots,
   violet-biased muted text. Retires the all-white accent experiment.
   ============================================================ */
:root {
  --violet: #a855f7;
  --violet-2: #8b5cf6;
  --pink: #f472b6;
  --cyan: #5cc8ff;
  --mint: #54e08a;                       /* presence = alive, green means ON */
  --brand: #a855f7;
  --brand-soft: rgba(168, 85, 247, 0.16);
  --amber: #cbb6ff;
  --dim: #a89fc4;                        /* violet-biased neutrals, not grey */
  --dim-2: #7d759c;
}

/* ---- ARCHIVE (chats) — row button + collapsed archived section ---- */

/* ---- LIVE — poster cards (streams look like streams, not list rows) ---- */
.live-grid { display: grid; grid-template-columns: 1fr; gap: 12px; margin: 4px 0 10px; }
@media (min-width: 980px) { .live-grid { grid-template-columns: 1fr 1fr; } }
.live-big { position: relative; display: flex; align-items: flex-end; min-height: 156px; border-radius: 18px;
  overflow: hidden; background: #161226 center/cover no-repeat; border: 1px solid var(--line);
  padding: 12px; text-decoration: none; color: #fff; }
.live-big .lb-scrim { position: absolute; inset: 0; background: linear-gradient(180deg, transparent 28%, rgba(6,4,12,.92)); }
.live-big .lb-badge { position: absolute; top: 10px; left: 10px; z-index: 2; background: rgba(220,38,120,.92);
  color: #fff; font-size: 10.5px; font-weight: 800; letter-spacing: .08em; padding: 4px 9px; border-radius: 7px;
  box-shadow: 0 0 16px rgba(220,38,120,.6); }

.live-big .lb-info { position: relative; z-index: 2; display: flex; align-items: center; gap: 10px; width: 100%; }
.live-big .lb-txt { flex: 1; min-width: 0; }
.live-big .lb-txt b { display: block; font-size: 13.5px; }
.live-big .lb-txt span { display: block; font-size: 11px; color: rgba(255,255,255,.75);
  white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
.live-big .lb-btn { flex: 0 0 auto; background: #fff; color: #12091c; font-weight: 800; font-size: 12px;
  border-radius: 10px; padding: 8px 12px; }

/* ---- GAME TALK — a game page's discussion strip (its board lives one tap away) ---- */

/* ---- CLUB STANDING — the good-teammate rank card (profile + Home later) ---- */

.stc-ring { flex: 0 0 auto; width: 56px; height: 56px; border-radius: 50%;
  background: conic-gradient(var(--pink) calc(var(--pct, 0) * 1%), rgba(255,255,255,.09) 0);
  display: grid; place-items: center; }
.stc-ring i { width: 44px; height: 44px; border-radius: 50%; background: #141020;
  display: grid; place-items: center; font-style: normal; font-weight: 800; font-size: 12px; color: #fff; }

/* ============================================================
   HOME v5 — "the pulse" (2026-07-12). Five calm beats; the hero
   wears the signature traveling blue↔pink rim.
   ============================================================ */

/* beat 2 — who's on: faces with pulsing presence */
.hm-rail { display: flex; gap: 12px; overflow-x: auto; padding-bottom: 4px; scroll-snap-type: x mandatory;
  scrollbar-width: none; }
.hm-rail::-webkit-scrollbar { height: 0; }
.hm-person { scroll-snap-align: start; flex: 0 0 auto; width: 92px; text-align: center;
  background: var(--surface-2); border: 1px solid var(--line); border-radius: 16px;
  padding: 12px 8px 11px; text-decoration: none; color: var(--text); }
.hm-avwrap { position: relative; display: inline-block; margin-bottom: 8px; }
.hm-dot { position: absolute; right: -1px; bottom: 1px; width: 13px; height: 13px; border-radius: 50%;
  background: var(--mint); border: 2.5px solid var(--bg); }
.hm-dot::after { content: ""; position: absolute; inset: -2px; border-radius: 50%;
  border: 2px solid var(--mint); animation: hmPing 2.4s ease-out infinite; }
@keyframes hmPing { 0% { transform: scale(.6); opacity: .9; } 100% { transform: scale(1.9); opacity: 0; } }
.hm-pn { display: block; font-size: 12.5px; font-weight: 700; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
.hm-pg { display: block; font-size: 10.5px; color: var(--dim-2); margin-top: 2px; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }

/* beat 3 — tonight for you: joinable lobbies */

/* beat 4 — your world: squads' pulse */
.hm-squad { display: flex; align-items: center; gap: 12px; background: var(--surface-2);
  border: 1px solid var(--line); border-radius: 16px; padding: 13px 14px; margin-bottom: 8px;
  text-decoration: none; color: var(--text); }
.hm-emblem { flex: 0 0 auto; width: 40px; height: 40px; border-radius: 11px; display: grid; place-items: center;
  color: #fff; font-weight: 900; font-size: 13px; }
.hm-squad b { font-size: 14px; font-weight: 750; display: block; }

/* beat 5 — buzzing: one hot thread */
.hm-thread { display: flex; gap: 12px; align-items: center; background: var(--surface-2);
  border: 1px solid var(--line); border-radius: 16px; padding: 13px 14px;
  text-decoration: none; color: var(--text); }
.hm-boardtag { flex: 0 0 auto; width: 42px; height: 42px; border-radius: 12px; display: grid; place-items: center;
  background: linear-gradient(135deg, #3730a3, #6d28d9); color: #fff; }
.hm-boardtag svg { width: 20px; height: 20px; }
.hm-bname { display: block; font-size: 10px; letter-spacing: .12em; text-transform: uppercase;
  color: var(--violet); font-weight: 800; }
.hm-thread b { display: block; font-size: 13.5px; font-weight: 650; line-height: 1.25; margin: 3px 0 4px; }
@media (prefers-reduced-motion: reduce) { .hm-hero::before, .hm-dot::after { animation: none; } }

/* ============================================================
   POSTER HEROES (2026-07-13 overhaul) — every page opens as a
   scene: video loop, duotone grade, tube-neon SIGN title with
   the violet↔pink frame + cyan bolt (AltShift treatment), tiny
   kicker + page index, content flowing beneath.
   ============================================================ */
.phero { position: relative; min-height: 52vh; border-radius: 26px; overflow: hidden; isolation: isolate;
  display: flex; flex-direction: column; justify-content: space-between;
  padding: 18px 18px 22px; margin: 2px 0 0;
  background:
    radial-gradient(560px 360px at 10% -12%, rgba(139,92,246,.35), transparent 60%),
    radial-gradient(560px 360px at 92% 112%, rgba(244,114,182,.28), transparent 60%),
    #0b0813; }
.phero.sm { min-height: 32vh; }
.ph-v { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; z-index: -2; }
.ph-g { position: absolute; inset: 0; z-index: -1; pointer-events: none;
  background:
    linear-gradient(160deg, rgba(124,58,237,.34), transparent 46%),
    linear-gradient(320deg, rgba(244,114,182,.26), transparent 46%),
    linear-gradient(180deg, rgba(6,4,12,.18) 0%, rgba(6,4,12,.40) 55%, rgba(8,5,14,.90) 100%); }
.ph-tp { display: flex; justify-content: space-between; align-items: center; }
.ph-k { font-size: 10px; letter-spacing: .28em; text-transform: uppercase; font-weight: 800;
  color: #dff3ff; text-shadow: 0 0 12px rgba(92,200,255,.7); }
.ph-n { font-size: 11px; letter-spacing: .3em; color: rgba(255,255,255,.5); font-weight: 700;
  font-variant-numeric: tabular-nums; }
.ph-lo { display: flex; flex-direction: column; align-items: flex-start; gap: 11px; }
/* the SIGN — tube frame around tube letters, bolt breaking the corner */
.ph-s { position: relative; display: inline-block; padding: 10px 22px 8px; border-radius: 18px; }
.ph-s::before { content: ""; position: absolute; inset: 0; border-radius: inherit; padding: 2px;
  background: linear-gradient(100deg, var(--violet) 0%, rgba(168,85,247,.30) 40%, rgba(244,114,182,.30) 60%, var(--pink) 100%);
  -webkit-mask: linear-gradient(#000 0 0) content-box, linear-gradient(#000 0 0);
  -webkit-mask-composite: xor; mask-composite: exclude;
  filter: drop-shadow(0 0 8px rgba(168,85,247,.75)) drop-shadow(0 0 16px rgba(244,114,182,.4)); }
.ph-t { margin: 0; font-size: clamp(38px, 8.5vw, 74px); line-height: .95; font-weight: 800;
  letter-spacing: .12em; text-transform: uppercase; color: #fff;
  text-shadow: 0 0 6px rgba(255,255,255,.8), 0 0 22px rgba(255,255,255,.32), 0 0 44px rgba(168,85,247,.5); }
.ph-b { position: absolute; top: -12px; right: -12px; width: 30px; height: 30px; display: grid; place-items: center;
  color: var(--cyan); background: #0b0813; border-radius: 50%;
  border: 1px solid rgba(92,200,255,.5); filter: drop-shadow(0 0 10px rgba(92,200,255,.9)); }
.ph-b svg { width: 16px; height: 16px; }
.ph-m { margin: 0; font-style: italic; font-weight: 700; font-size: 14.5px; color: #eaf3ff;
  text-shadow: 0 0 10px rgba(92,200,255,.45); max-width: 34em; }

@media (prefers-reduced-motion: reduce) { .ph-v { display: none; } }

/* stats under a hero → editorial hairline strip (replaces the pill tiles) */

/* hairline stats — hardened against the earlier neon-badge layers (specificity + importance) */

/* HERO = WINDOW (2026-07-13): the poster shows the page's OWN rotating bg loop
   through it — no second video. Lighter grade; the rim + sign carry the drama. */
.phero { background: rgba(10, 7, 19, 0.10) !important; }
.ph-g { background:
    linear-gradient(160deg, rgba(124,58,237,.20), transparent 46%),
    linear-gradient(320deg, rgba(244,114,182,.16), transparent 46%),
    linear-gradient(180deg, rgba(6,4,12,.08) 0%, rgba(6,4,12,.26) 55%, rgba(8,5,14,.74) 100%) !important; }

/* voice presence chip — green means someone's sitting in the lounge right now */
.vp-on { color: var(--mint); font-weight: 700; white-space: nowrap; }
.vp-on .sdot { margin-right: 3px; }

/* in-box video is back — restore a grade heavy enough for sign legibility */
.ph-g { background:
    linear-gradient(160deg, rgba(124,58,237,.30), transparent 46%),
    linear-gradient(320deg, rgba(244,114,182,.24), transparent 46%),
    linear-gradient(180deg, rgba(6,4,12,.14) 0%, rgba(6,4,12,.36) 55%, rgba(8,5,14,.86) 100%) !important; }

/* ---- STANDING CHIP — the good-teammate tier on every face (levels retired) ---- */
.st-chip { display: inline-block; font-size: 9.5px; font-weight: 800; letter-spacing: .08em;
  text-transform: uppercase; padding: 3px 8px; border-radius: 999px; border: 1px solid;
  white-space: nowrap; vertical-align: middle; }
.st-regular { color: #bfe3ff; border-color: rgba(92,200,255,.45); }
.st-trusted { color: #a7f3c8; border-color: rgba(84,224,138,.5); }
.st-ringer  { color: #e9d5ff; border-color: rgba(168,85,247,.55); }
.st-legend  { color: #ffd6ec; border-color: rgba(244,114,182,.6); text-shadow: 0 0 8px rgba(244,114,182,.55); }

/* ============================================================
   HOME v6 — OGC COMMAND CENTER. The neon reference translated
   into an operational dashboard: tube telemetry, mission art,
   compact signals and a responsive bento grid.
   ============================================================ */
/* ═══════════ HOME v7 — SYSTEM-LIVE hero + preference-driven "where do I go tonight" ═══════════ */
.home-v7 { display: flex; flex-direction: column; gap: 15px; max-width: 1080px; }
.hv-hero { position: relative; overflow: hidden; isolation: isolate; padding: 26px 26px 24px; border-radius: 26px;
  background: radial-gradient(120% 95% at 10% -5%, rgba(70,45,140,.4), transparent 55%),
    radial-gradient(90% 90% at 98% 115%, rgba(255,45,155,.14), transparent 58%),
    linear-gradient(160deg, #100b20, #08060f 70%);
  border: 1px solid rgba(150,115,255,.18); }
.hv-arc { position: absolute; z-index: -1; width: 150%; aspect-ratio: 1; left: -55%; top: -92%; border-radius: 50%;
  border: 1.5px solid rgba(125,155,255,.18); box-shadow: 0 0 70px rgba(95,125,255,.10); pointer-events: none; }
.hv-arc2 { left: auto; right: -75%; top: auto; bottom: -125%; border-color: rgba(255,45,155,.12); box-shadow: 0 0 70px rgba(255,45,155,.08); }
.hv-top { display: flex; justify-content: space-between; align-items: center; gap: 12px; }
.hv-kick { display: inline-flex; align-items: center; gap: 7px; color: #8f84a7; font-size: 9px; font-weight: 800; letter-spacing: .15em; }
.hv-kick i { width: 6px; height: 6px; border-radius: 50%; background: #54e08a; box-shadow: 0 0 8px #54e08a; }
.hv-live { color: #b8ffd4; font-size: 11px; font-weight: 900; letter-spacing: .24em; white-space: nowrap;
  text-shadow: 0 0 4px #d9ffe8, 0 0 10px #54e08a, 0 0 22px #36ef8b, 0 0 40px rgba(54,224,138,.55); }
/* hero headline = the display font, lit like a neon light (NOT cursive) — skinnier weight,
   tighter glow, no max-width so it sits on one line on desktop (wraps only when it must) */
.hv-headline { margin: 22px 0 14px; font-style: italic; font-weight: 300;
  font-size: clamp(29px, 5.4vw, 48px); line-height: 1.08; letter-spacing: .045em; word-spacing: -.045em; white-space: nowrap; }
/* #app-scoped so the neon glow beats the global readability text-shadow on #app :is(h1…) */
#app .hv-headline { color: #ff9ed6;
  text-shadow: 0 0 3px #ffcbea, 0 0 8px #ff70c1, 0 0 15px #ff2d9b, 0 0 27px rgba(255,45,155,.5); }
.hv-context { margin: 0 0 22px; color: #b6abcf; font-size: 12px; font-weight: 700; letter-spacing: .05em; }
.hv-stats { display: flex; gap: 10px; flex-wrap: wrap; }
.hv-stats a { flex: 1; min-width: 96px; display: flex; flex-direction: column; gap: 3px; padding: 13px 15px; border-radius: 15px;
  background: rgba(10,7,20,.5); border: 1px solid rgba(255,255,255,.09); color: #fff; text-decoration: none; }
.hv-stats b { font-size: 23px; font-weight: 900; letter-spacing: -.03em; animation: hvNeonCycle 7s linear infinite; }
.hv-stats span { color: #8e83a3; font-size: 9px; font-weight: 800; letter-spacing: .12em; text-transform: uppercase; }
/* the big stat number cycles through neon colors */
@keyframes hvNeonCycle {
  0%,100% { color:#ff6bb8; text-shadow:0 0 7px #ff56ad, 0 0 18px rgba(255,45,155,.65); }
  25%     { color:#66e2ff; text-shadow:0 0 7px #5edfff, 0 0 18px rgba(56,189,248,.65); }
  50%     { color:#5ce79b; text-shadow:0 0 7px #43e08a, 0 0 18px rgba(67,224,138,.65); }
  75%     { color:#b98cff; text-shadow:0 0 7px #a875ff, 0 0 18px rgba(150,86,255,.65); }
}

.hv-launch { display: grid; grid-template-columns: repeat(4, 1fr); gap: 10px; }
.hv-launch > * { display: flex; flex-direction: column; align-items: center; gap: 8px; padding: 16px 8px; border-radius: 16px;
  color: #fff; background: rgba(12,8,20,.6); border: 1px solid rgba(145,110,255,.16); font: inherit; font-size: 11px; font-weight: 800;
  letter-spacing: .02em; cursor: pointer; text-decoration: none; transition: transform .12s ease, border-color .12s ease; }
.hv-launch > *:hover { border-color: rgba(145,110,255,.4); transform: translateY(-2px); }
.hv-launch svg { width: 19px; color: #b79dff; }

.hv-mod { padding: 19px; border-radius: 20px; background: rgba(8,5,14,.72); border: 1px solid rgba(255,255,255,.08); }
.hv-mod > header { display: flex; align-items: center; justify-content: space-between; gap: 12px; }
/* section headers = the hero's neon treatment, a different color per section (var-driven).
   Default (no modifier) = cyan, e.g. TEAMS RECRUITING. Skinnier weight than before. */
.hv-mod > header > span { --mh-core: #dcf9ff; --mh-glow: #5edfff; --mh-glow2: rgba(56,189,248,.5);
  display: inline-flex; align-items: center; gap: 8px; color: var(--mh-core); font-size: 12px; font-weight: 500; letter-spacing: .05em;
  text-shadow: 0 0 3px var(--mh-core), 0 0 9px var(--mh-glow), 0 0 17px var(--mh-glow2); }
#app .hv-mod > header > span svg { width: 14px; color: var(--mh-core); filter: drop-shadow(0 0 6px var(--mh-glow)); }
.hv-mod > header > span[class*="mh-"] i { background: var(--mh-glow); box-shadow: 0 0 9px var(--mh-glow); }
.hv-mod > header > span.mh-green  { --mh-core:#d3ffe4; --mh-glow:#43e08a; --mh-glow2:rgba(67,224,138,.5); }
.hv-mod > header > span.mh-pink   { --mh-core:#ffd6ec; --mh-glow:#ff56ad; --mh-glow2:rgba(255,45,155,.5); }
.hv-mod > header > span.mh-purple { --mh-core:#e8daff; --mh-glow:#a875ff; --mh-glow2:rgba(150,86,255,.55); }
.hv-mod > header > span.mh-red    { --mh-core:#ffd6d6; --mh-glow:#ff5a5a; --mh-glow2:rgba(255,59,82,.5); }
.hv-mod > header > span.mh-blue   { --mh-core:#8b9bff; --mh-glow:#4458e8; --mh-glow2:rgba(68,88,232,.6); }
.hv-mod > header > span.mh-cyan   { --mh-core:#dcf9ff; --mh-glow:#5edfff; --mh-glow2:rgba(56,189,248,.5); }
.hv-mod > header > span i { width: 8px; height: 8px; border-radius: 50%; }
.hv-mod > header i.pulse { background: #54e08a; box-shadow: 0 0 9px #54e08a; animation: hvPulse 1.6s ease-in-out infinite; }
.hv-mod > header i.hot { background: #ff2d9b; box-shadow: 0 0 9px #ff2d9b; }
.hv-mod > header i.live { background: #ff3b52; box-shadow: 0 0 9px #ff3b52; animation: hvPulse 1.3s infinite; }
@keyframes hvPulse { 50% { opacity: .35; } }
.hv-mod > header a { color: #9a8fe0; font-size: 9px; font-weight: 900; letter-spacing: .1em; text-decoration: none; white-space: nowrap; }
.hv-sub { margin: 7px 0 14px; color: #8b809f; font-size: 11px; }

.hv-lfy-rail { display: flex; align-items: stretch; gap: 12px; overflow-x: auto; padding-bottom: 4px; scrollbar-width: none; }
.hv-lfy-rail::-webkit-scrollbar { display: none; }
.hv-lfy { flex: 0 0 152px; display: flex; flex-direction: column; align-items: center; text-align: center; gap: 3px; padding: 17px 12px; border-radius: 17px;
  background: rgba(12,8,22,.6); border: 1px solid rgba(145,110,255,.16); transition: transform .12s ease, border-color .12s ease; }
.hv-lfy:hover { border-color: rgba(255,45,155,.42); transform: translateY(-3px); }
.hv-lfy-link { display: flex; flex-direction: column; align-items: center; gap: 3px; color: #fff; text-decoration: none; }
.hv-lfy-av { position: relative; }
.hv-lfy-av .avatar { width: 62px; height: 62px; }
.hv-lfy-av i { position: absolute; right: 3px; bottom: 3px; width: 13px; height: 13px; border-radius: 50%; background: #36ef8b; border: 2px solid #0c0816; }
.hv-lfy b { margin-top: 7px; font-size: 13.5px; }
.hv-lfy small { color: #ff8fd0; font-size: 10px; font-weight: 800; }
.hv-lfy em { color: #8b809f; font-size: 9.5px; font-style: normal; }
.hv-lfy-go { margin-top: auto; display: inline-flex; align-items: center; gap: 5px; padding: 5px 12px; border-radius: 99px; border: 0; cursor: pointer; color: #fff; text-decoration: none; white-space: nowrap;
  background: linear-gradient(120deg, #6d4ef0, #c23f99); font-family: inherit; font-size: 9.5px; font-weight: 800; letter-spacing: .02em; box-shadow: 0 0 12px rgba(194,63,153,.38); transition: transform .1s ease, box-shadow .1s ease; }
#app .hv-lfy-go { font-size: 9.5px; }   /* beat the #app :is(button,a) 13px readability floor */
.hv-lfy-go:hover { box-shadow: 0 0 20px rgba(194,63,153,.6); }
.hv-lfy-go:active { transform: scale(.95); }
.hv-lfy-go svg { width: 11px; }

/* Signal banners (invites / build pings) — dark glass with the signature ROTATING
   blue↔pink rim (the .card ring technique), crisp light-blue lead, pink nowrap CTA. */
.hv-invite { position: relative; display: flex; align-items: center; justify-content: space-between; gap: 12px; margin: 12px 0 16px; padding: 12px 14px; border-radius: 12px;
  background: rgba(8,5,14,.72); color: #fff; text-decoration: none; box-shadow: 0 0 16px rgba(124,92,255,.12); }
.hv-invite::before { content: ''; position: absolute; inset: 0; border-radius: inherit; padding: 1.4px;
  background: conic-gradient(from var(--neonAngle, 0deg), #38bdf8, #ff2d9b 50%, #38bdf8);
  -webkit-mask: linear-gradient(#000 0 0) content-box, linear-gradient(#000 0 0);
  -webkit-mask-composite: xor; mask-composite: exclude;
  animation: neonSpin 8s linear infinite; pointer-events: none;
  filter: drop-shadow(0 0 4px rgba(56,189,248,.3)); }
.hv-invite:nth-child(2n)::before { animation-delay: -4s; }
@media (prefers-reduced-motion: reduce) { .hv-invite::before { animation: none; } }
.hv-invite b { min-width: 0; font-size: 12.5px; font-weight: 800; color: #9fe5ff; }
.hv-invite span { flex: 0 0 auto; white-space: nowrap; color: #ff9ed6; font-size: 9px; font-weight: 850; letter-spacing: .1em; text-transform: uppercase; }
@media(max-width:700px){ .hv-invite{flex-wrap:wrap;gap:7px} .hv-invite b{flex:1 1 100%} .hv-invite span{margin-left:auto} }
.hv-agenda { margin-top: 12px; display: flex; flex-direction: column; gap: 8px; }
.home-v7 .hc-room-grid { margin-top: 12px; }

.hv-team-list { display: grid; grid-template-columns: repeat(2, 1fr); gap: 10px; margin-top: 12px; }
.hv-team { display: flex; align-items: center; gap: 12px; padding: 14px; border-radius: 15px;
  background: rgba(12,8,22,.6); border: 1px solid rgba(145,110,255,.16); transition: transform .12s ease, border-color .12s ease; }
.hv-team:hover { border-color: rgba(145,110,255,.4); transform: translateY(-2px); }
.hv-team-link { display: flex; align-items: center; gap: 13px; flex: 1; min-width: 0; color: #fff; text-decoration: none; }
.hv-team-emblem { width: 46px; height: 46px; flex: 0 0 auto; display: grid; place-items: center; border-radius: 13px; overflow: hidden; color: #fff; font-size: 13px; font-weight: 900; letter-spacing: .04em; }
.hv-team-body { min-width: 0; flex: 1; display: flex; flex-direction: column; gap: 2px; }
.hv-team-body b { font-size: 13.5px; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.hv-team-body small { color: #b79dff; font-size: 10.5px; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.hv-team-body em { color: #8b809f; font-size: 9.5px; font-style: normal; }
/* Apply = the Recruit pill (her call): icon + gradient, half the old footprint. */
.hv-team-cta { flex: 0 0 auto; display: inline-flex; align-items: center; gap: 5px; padding: 5px 12px; border: 0; border-radius: 99px; cursor: pointer;
  color: #fff; background: linear-gradient(120deg, #6d4ef0, #c23f99); font-family: inherit; font-weight: 800; letter-spacing: .02em; white-space: nowrap;
  box-shadow: 0 0 12px rgba(194,63,153,.38); transition: transform .1s ease, box-shadow .1s ease; }
#app .hv-team-cta { font-size: 9.5px; }
.hv-team-cta svg { width: 11px; }
.hv-team-cta:hover { box-shadow: 0 0 20px rgba(194,63,153,.6); }
.hv-team-cta:active { transform: scale(.96); }

@media (max-width: 640px) {
  .hv-launch { grid-template-columns: repeat(2, 1fr); }
  .hv-headline { font-size: clamp(28px, 8.2vw, 40px); white-space: normal; }
  .hv-team-list { grid-template-columns: 1fr; }
  /* the fixed-width Apply button was getting shoved off the right edge and clipped on
     narrow phones — wrap it onto its own full-width line so it's always fully tappable */
  .hv-team { flex-wrap: wrap; }
  .hv-team-link { flex: 1 1 100%; }
  .hv-team-cta { margin-top: 6px; align-self: flex-start; }
  /* ROOMS as a contained 2-col grid (was a 3-col horizontal scroll that overflowed the
     phone width and shifted the whole page — which made TEAMS RECRUITING look pushed right) */
  .home-v7 .hc-room-grid { grid-template-columns: repeat(2, minmax(0,1fr)); overflow-x: visible; gap: 10px; }
  .home-v7 .hc-room { min-width: 0; min-height: 176px; scroll-snap-align: none; }
  /* narrow 2-col tiles: kill the bright arcade art behind the copy (it fought the labels and
     the art's own neon signage) — near-solid scrim, tighter type, badge on one line */
  .home-v7 .hc-room .hc-room-grade { background: linear-gradient(0deg, rgba(5,3,10,.93) 16%, rgba(5,3,10,.54)); }
  .home-v7 .hc-room .hc-room-time { white-space: nowrap; top: 10px; left: 10px; padding: 4px 7px; font-size: 7px; letter-spacing: .04em; max-width: calc(100% - 20px); overflow: hidden; text-overflow: ellipsis; }
  .home-v7 .hc-room .hc-room-copy strong { font-size: 14px; }
  .home-v7 .hc-room .hc-room-copy b { font-size: 7.5px; }
  .home-v7 .hc-room .hc-room-copy em { font-size: 8px; margin-top: 6px; }
  .hv-mod { overflow: hidden; }
  /* stat boxes: label first (one line each), number below centered, cycling neon colors */
  /* each pill sizes to its own label (middle = longest = widest); space-between shoves the
     side pills to the edges. Text can never clip its pill, whatever size iOS renders it. */
  .hv-stats { flex-wrap: nowrap; justify-content: space-between; gap: 6px; }
  .hv-stats a { flex: 0 0 auto; min-width: 0; flex-direction: column-reverse; align-items: center; text-align: center; justify-content: flex-end; gap: 6px; padding: 11px 12px; }
  /* #app-scoped to beat the #app span mobile readability floor (max(14px,100%)) that was
     forcing the labels big enough to overflow */
  #app .hv-stats span { white-space: nowrap; font-size: 11px; letter-spacing: 0; }
  .hv-stats b { font-size: 26px; animation: hvNeonCycle 7s linear infinite; }
}

/* generic "are you sure" confirm modal */
.cf-wrap { position: fixed; inset: 0; z-index: 220; display: grid; place-items: center; padding: 22px; }
.cf-scrim { position: absolute; inset: 0; border: 0; background: rgba(3,2,7,.72); -webkit-backdrop-filter: blur(10px); backdrop-filter: blur(10px); cursor: pointer; }
.cf-modal { position: relative; width: min(400px, 100%); padding: 30px 26px 24px; text-align: center; border-radius: 22px;
  background: radial-gradient(circle at 82% 0, rgba(255,45,155,.13), transparent 42%), #0b0713; border: 1px solid rgba(255,255,255,.12);
  box-shadow: 0 35px 100px rgba(0,0,0,.62); }
.cf-mark { display: inline-flex; width: 52px; height: 52px; align-items: center; justify-content: center; border-radius: 15px;
  color: #8be0ff; background: rgba(56,189,248,.1); border: 1px solid rgba(56,189,248,.24); }
.cf-mark.danger { color: #ff6b9d; background: rgba(255,45,155,.1); border-color: rgba(255,45,155,.32); }
.cf-mark svg { width: 22px; }
.cf-modal h2 { margin: 15px 0 8px; color: #fff; font-size: 22px; letter-spacing: -.02em; }
.cf-modal p { margin: 0 auto; max-width: 34ch; color: #a79cbb; font-size: 13px; line-height: 1.5; }
.cf-actions { display: flex; gap: 10px; margin-top: 22px; }
.cf-actions button { flex: 1; min-height: 46px; border-radius: 12px; cursor: pointer; font: inherit; font-size: 12px; font-weight: 900; letter-spacing: .04em; }
.cf-cancel { color: #c9becf; background: rgba(255,255,255,.05); border: 1px solid rgba(255,255,255,.14); }
.cf-go { color: #fff; border: 0; background: linear-gradient(120deg, #6d4ef0, #c23f99); }
.cf-go.danger { background: linear-gradient(120deg, #e23f6f, #ff2d9b); box-shadow: 0 0 22px rgba(255,45,155,.35); }

.home-command { display:flex; flex-direction:column; gap:18px; max-width:1240px; }
.hc-hero { position:relative; overflow:hidden; isolation:isolate; padding:24px 26px 0; border-radius:26px;
  background:
    radial-gradient(60% 130% at 88% 15%, rgba(92,200,255,.16), transparent 62%),
    radial-gradient(70% 150% at 12% 108%, rgba(244,114,182,.19), transparent 64%),
    linear-gradient(145deg, rgba(12,8,25,.92), rgba(5,4,12,.82));
  box-shadow:0 26px 70px rgba(0,0,0,.48), inset 0 0 60px rgba(168,85,247,.08); }
.hc-hero::before, .hc-panel::before { content:""; position:absolute; inset:0; border-radius:inherit; padding:1.35px;
  background:linear-gradient(115deg, rgba(92,200,255,.9), rgba(168,85,247,.28) 34%, rgba(244,114,182,.35) 64%, rgba(244,114,182,.92));
  -webkit-mask:linear-gradient(#000 0 0) content-box,linear-gradient(#000 0 0); -webkit-mask-composite:xor; mask-composite:exclude;
  filter:drop-shadow(0 0 7px rgba(168,85,247,.34)); pointer-events:none; z-index:4; }
.hc-hero::after { content:""; position:absolute; width:430px; height:430px; right:-180px; top:-240px; border-radius:50%;
  border:1px solid rgba(92,200,255,.22); box-shadow:0 0 70px rgba(92,200,255,.16), inset 0 0 70px rgba(168,85,247,.12); }
.hc-hero-top, .hc-panel-head, .hc-section-title { display:flex; align-items:center; justify-content:space-between; gap:14px;
  font-size:9.5px; letter-spacing:.22em; font-weight:850; color:#d9d3ec; text-transform:uppercase; }
.hc-kick, .hc-panel-head > span, .hc-section-title > span { display:flex; align-items:center; gap:8px; }
.hc-kick i, .hc-panel-head i, .hc-room-time i { width:7px; height:7px; border-radius:50%; background:var(--cyan);
  box-shadow:0 0 8px var(--cyan),0 0 18px rgba(92,200,255,.75); flex:0 0 auto; }
.hc-panel-head i.hot, .hc-panel-head i.live { background:var(--pink); box-shadow:0 0 8px var(--pink),0 0 18px rgba(244,114,182,.75); }
.hc-panel-head i.on { background:var(--mint); box-shadow:0 0 8px var(--mint),0 0 18px rgba(84,224,138,.7); }
.hc-status { color:var(--mint); font-size:9px; letter-spacing:.18em; text-shadow:0 0 9px rgba(84,224,138,.7); }
.hc-heading { min-height:172px; display:flex; align-items:center; justify-content:space-between; gap:28px; padding:24px 2px 20px; }
.hc-heading p { margin:0 0 7px; color:#bdb4d7; font-size:12px; letter-spacing:.04em; }
.hc-heading h1 { margin:0; font-size:clamp(35px,5vw,66px); line-height:.86; letter-spacing:-.055em; font-weight:900; color:#fff;
  text-shadow:0 0 20px rgba(255,255,255,.14); }
.hc-heading h1 span { color:transparent; background:linear-gradient(98deg,#fff 4%,var(--cyan) 38%,var(--violet) 68%,var(--pink));
  -webkit-background-clip:text; background-clip:text; filter:drop-shadow(0 0 13px rgba(168,85,247,.45)); }
.hc-heading .neon-sign { max-width:300px; text-align:right; font-size:17px; line-height:1.35; margin:0; }
.hc-metrics { display:grid; grid-template-columns:repeat(4,1fr); }
.hc-metrics a { display:flex; align-items:baseline; gap:9px; padding:16px 18px; color:inherit; text-decoration:none; }
.hc-metrics b { color:#fff; font-size:22px; line-height:1; font-variant-numeric:tabular-nums; text-shadow:0 0 13px rgba(92,200,255,.55); }
.hc-metrics span { color:var(--dim); font-size:9px; letter-spacing:.12em; text-transform:uppercase; }

.hc-launchbar { display:grid; grid-template-columns:repeat(4,1fr); gap:9px; }
.hc-launchbar > * { display:flex; align-items:center; gap:11px; min-width:0; padding:13px 15px; border:0; border-radius:15px;
  color:#fff; text-decoration:none; text-align:left; cursor:pointer; font:inherit; position:relative; overflow:hidden;
  background:linear-gradient(145deg,rgba(18,13,32,.94),rgba(8,6,16,.9)); box-shadow:inset 0 0 0 1px rgba(168,85,247,.28); }
.hc-launchbar > *::after { content:""; position:absolute; inset:auto 14px 0; height:1px;
  background:linear-gradient(90deg,transparent,var(--violet),var(--pink),transparent); box-shadow:0 0 9px rgba(244,114,182,.65); }
.hc-launchbar svg { width:21px; height:21px; color:var(--cyan); filter:drop-shadow(0 0 6px rgba(92,200,255,.55)); flex:0 0 auto; }
.hc-launchbar > *:nth-child(2) svg,.hc-launchbar > *:nth-child(4) svg { color:var(--pink); filter:drop-shadow(0 0 6px rgba(244,114,182,.55)); }
.hc-launchbar span { min-width:0; display:flex; flex-direction:column; }
.hc-launchbar b { font-size:12.5px; line-height:1.2; }.hc-launchbar small { color:var(--dim-2); font-size:9.5px; margin-top:2px; white-space:nowrap; overflow:hidden; text-overflow:ellipsis; }

.hc-grid { display:grid; gap:14px; }.hc-grid-top { grid-template-columns:minmax(0,1.45fr) minmax(310px,.75fr); }
.hc-grid-bottom { grid-template-columns:1fr 1fr; }
.hc-panel { position:relative; border-radius:20px; padding:16px; min-width:0; background:rgba(7,5,14,.76);
  box-shadow:0 18px 48px rgba(0,0,0,.36),inset 0 0 38px rgba(168,85,247,.035); }
.hc-panel::before { padding:1px; opacity:.68; filter:none; }
.hc-panel-head { margin-bottom:13px; color:#bdb4d7; }
.hc-panel-head svg { width:15px; height:15px; color:var(--cyan); filter:drop-shadow(0 0 5px rgba(92,200,255,.6)); }
.hc-panel-head a,.hc-section-title a { color:var(--cyan); text-decoration:none; letter-spacing:.12em; font-size:8.5px; }
.hc-mission { position:relative; min-height:350px; border-radius:16px; overflow:hidden; display:flex; align-items:flex-end; padding:20px;
  background:#151022 center/cover no-repeat; text-decoration:none; color:#fff; box-shadow:inset 0 0 0 1px rgba(255,255,255,.12); }
.hc-mission-grade,.hc-room-grade { position:absolute; inset:0; background:
  linear-gradient(rgba(4,2,9,.8),rgba(4,2,9,.8)),
  linear-gradient(90deg,rgba(4,3,9,.94) 0%,rgba(6,4,12,.68) 48%,rgba(6,4,12,.12) 80%),
  linear-gradient(0deg,rgba(5,3,10,.9),transparent 54%); }
.hc-live,.hc-fit,.hc-room-time { position:absolute; z-index:2; top:14px; display:flex; align-items:center; gap:7px; padding:6px 10px;
  border-radius:999px; color:#fff; background:rgba(5,3,10,.7); -webkit-backdrop-filter:blur(12px); backdrop-filter:blur(12px);
  font-size:9px; letter-spacing:.12em; font-weight:850; text-transform:uppercase; }
.hc-live { left:14px; }.hc-live i { width:7px;height:7px;border-radius:50%;background:var(--pink);box-shadow:0 0 9px var(--pink); }
.hc-fit { right:14px; color:#e0f5ff; border:1px solid rgba(92,200,255,.3); }.hc-fit svg { width:12px;height:12px;color:var(--cyan); }
.hc-mission-copy { position:relative; z-index:2; display:flex; flex-direction:column; align-items:flex-start; width:min(82%,560px); }
.hc-overline { color:var(--cyan); font-size:9px; letter-spacing:.18em; text-transform:uppercase; font-weight:850; margin-bottom:7px; }
.hc-mission-copy > strong { font-size:clamp(28px,4vw,46px); line-height:.95; letter-spacing:-.04em; text-shadow:0 0 20px rgba(92,200,255,.32); }
.hc-mission-copy > b { color:#dbd4eb; font-size:14px; margin-top:6px; }
.hc-host { display:flex; align-items:center; gap:7px; color:#bdb4d7; font-size:10.5px; margin-top:14px; }.hc-host .avatar{width:24px;height:24px;}
.hc-crew { display:flex; align-items:center; min-height:32px; margin-top:12px; }.hc-crew .avatar { width:29px;height:29px;margin-left:-7px;box-shadow:0 0 0 2px #08050f!important; }
.hc-crew .avatar:first-child { margin-left:0; }.hc-crew em { margin-left:11px; font-style:normal; color:#fff; font-size:11px; font-weight:800; }

.hc-alert { display:flex; justify-content:space-between; align-items:center; gap:10px; padding:11px 12px; margin-bottom:8px; border-radius:11px;
  text-decoration:none; color:#fff; background:linear-gradient(90deg,rgba(244,114,182,.2),rgba(168,85,247,.13));
  box-shadow:inset 0 0 0 1px rgba(244,114,182,.4),0 0 16px rgba(244,114,182,.12); }
.hc-alert b { color:#ffd6ea;font-size:9px;letter-spacing:.13em; }.hc-alert span{font-size:9.5px;color:#d7cce7;}
.hc-agenda-row,.hc-signal-row { display:flex; align-items:center; gap:10px; padding:10px 2px; border-top:1px solid rgba(255,255,255,.08); text-decoration:none;color:inherit; }
.hc-agenda-row:first-of-type,.hc-signal-row:first-of-type{border-top:0}.hc-agenda-row .avatar,.hc-signal-row .avatar{width:30px;height:30px;}
.hc-agenda-row .grow,.hc-signal-row .grow{display:flex;flex-direction:column;min-width:0}.hc-agenda-row .grow b,.hc-signal-row .grow b{font-size:11.5px;}
.hc-agenda-row .grow span,.hc-signal-row .grow span{font-size:9.5px;color:var(--dim-2);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;margin-top:2px;}
.hc-date { width:37px; flex:0 0 auto; text-align:center; display:flex; flex-direction:column; border-right:1px solid rgba(255,255,255,.1); padding-right:8px; }
.hc-date b{font-size:7.5px!important;color:var(--pink);letter-spacing:.12em}.hc-date i{font-size:8px;font-style:normal;color:#fff;margin-top:3px}.hc-arrow{margin-left:auto;color:var(--cyan)}
.hc-count { min-width:23px;height:23px;border-radius:50%;display:grid;place-items:center;background:rgba(244,114,182,.13);color:#ffd1e8;font-size:10px;font-weight:900;
  box-shadow:inset 0 0 0 1px rgba(244,114,182,.45),0 0 11px rgba(244,114,182,.22); }

.hc-people { min-width:0; padding:4px 0 1px; }.hc-people .hc-panel-head{margin:0 2px 10px}.hc-people .hm-rail{gap:9px;}
.hc-people .hm-person { width:98px; padding:11px 8px; background:linear-gradient(160deg,rgba(18,13,31,.9),rgba(7,5,13,.86)); border:0;
  box-shadow:inset 0 0 0 1px rgba(168,85,247,.25); }
.hc-section-title { margin:3px 2px 10px; }.hc-section-title b{margin-left:auto;color:var(--pink);font-size:8.5px;letter-spacing:.13em;font-weight:750}.hc-section-title a{margin-left:12px}
.hc-room-grid { display:grid;grid-template-columns:repeat(3,1fr);gap:10px; }
.hc-room { position:relative;min-height:220px;border-radius:18px;overflow:hidden;padding:14px;display:flex;align-items:flex-end;background:#151022 center/cover no-repeat;
  text-decoration:none;color:#fff;box-shadow:inset 0 0 0 1px rgba(168,85,247,.35),0 15px 38px rgba(0,0,0,.35); }
.hc-room-grade{background:linear-gradient(0deg,rgba(5,3,10,.96),rgba(5,3,10,.16) 78%)}.hc-room-time{left:12px;top:12px;padding:5px 9px}.hc-room-time i{background:var(--mint);box-shadow:0 0 8px var(--mint)}
.hc-room-copy{position:relative;z-index:2;display:flex;flex-direction:column;min-width:0;width:100%}.hc-room-copy b{font-size:9px;color:var(--cyan);letter-spacing:.12em;text-transform:uppercase}
.hc-room-copy strong{font-size:17px;line-height:1.1;margin-top:3px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.hc-room-copy span{font-size:9.5px;color:#bdb4d7;margin-top:5px}
.hc-room-copy em{display:flex;align-items:center;gap:4px;font-size:9px;font-style:normal;color:#ffd4e9;margin-top:9px;text-transform:uppercase;letter-spacing:.07em}.hc-room-copy em svg{width:11px;height:11px}
.hc-room.room-inside .hc-room-time{color:#dff8ff;border:1px solid rgba(56,189,248,.42)}.hc-room.room-inside .hc-room-time i{background:var(--cyan);box-shadow:0 0 8px var(--cyan)}
.hc-room.room-host .hc-room-time{color:#ffe0f0;border:1px solid rgba(244,114,182,.42)}.hc-room.room-host .hc-room-time i{background:var(--pink);box-shadow:0 0 8px var(--pink)}
.hc-room.room-waiting .hc-room-time{color:#fff1c2;border:1px solid rgba(251,191,36,.35)}.hc-room.room-waiting .hc-room-time i{background:#fbbf24;box-shadow:0 0 8px #fbbf24}
.hc-standing { display:flex;align-items:center;gap:12px;padding:12px;border-radius:14px;margin-bottom:8px;text-decoration:none;color:inherit;
  background:linear-gradient(120deg,rgba(168,85,247,.14),rgba(92,200,255,.05));box-shadow:inset 0 0 0 1px rgba(168,85,247,.22); }
.hc-standing .stc-ring{width:45px;height:45px}.hc-standing .stc-ring i{width:35px;height:35px;font-size:9px}.hc-standing > span:last-child{display:flex;flex-direction:column}
.hc-standing b{font-size:13px}.hc-standing small{font-size:9.5px;color:var(--dim);margin-top:3px}.hc-panel .hm-squad{background:transparent;border:0;border-top:1px solid rgba(255,255,255,.08);border-radius:0;padding:10px 2px;margin:0}
.hc-clear{display:grid;grid-template-columns:28px 1fr;column-gap:9px;align-items:center;padding:12px 4px}.hc-clear svg{grid-row:1/3;width:19px;color:var(--mint);filter:drop-shadow(0 0 7px rgba(84,224,138,.6))}
.hc-clear b{font-size:12px}.hc-clear span{font-size:9.5px;color:var(--dim-2)}.hc-thread-label{margin:10px 0 8px;color:var(--dim-2);font-size:8px;letter-spacing:.17em;font-weight:800}
.hc-panel .hm-thread{background:transparent;border:0;border-top:1px solid rgba(255,255,255,.08);border-radius:0;padding:11px 2px}.hc-panel .hm-boardtag{width:34px;height:34px;border-radius:10px}.hc-panel .hm-boardtag svg{width:16px}
.hc-live-panel .live-big{min-height:230px;margin-top:0!important}.hc-live-panel .lb-badge{box-shadow:0 0 18px rgba(244,114,182,.65)}

@media (max-width:979px){
  .home-command,.hc-grid,.hc-panel,.hc-launchbar,.hc-people{min-width:0;max-width:100%}.home-command{gap:15px}.hc-hero{padding:19px 17px 0;border-radius:21px}.hc-heading{min-height:147px;padding:20px 0 16px;align-items:flex-end}.hc-heading h1{font-size:38px}.hc-heading .neon-sign{max-width:135px;font-size:12px;line-height:1.3}
  .hc-metrics{grid-template-columns:repeat(4,minmax(0,1fr))}.hc-metrics a{min-width:0;padding:13px 7px;flex-direction:column;gap:4px}.hc-metrics b{font-size:19px}.hc-metrics span{font-size:6.8px;letter-spacing:.05em;white-space:nowrap}.hc-status{display:none}
  .hc-launchbar{grid-template-columns:repeat(2,minmax(0,1fr))}.hc-launchbar>*,.hc-launchbar span{min-width:0}.hc-grid-top,.hc-grid-bottom{grid-template-columns:minmax(0,1fr)}.hc-mission{min-height:330px}.hc-room-grid{grid-template-columns:repeat(3,minmax(235px,1fr));overflow-x:auto;scroll-snap-type:x mandatory;padding:1px 1px 8px;scrollbar-width:none}.hc-room{scroll-snap-align:start;min-height:205px}
}
@media (max-width:520px){
  .hc-heading{display:block;min-height:0;padding:24px 0 18px}.hc-heading h1{font-size:31px;line-height:.9;letter-spacing:-.045em}.hc-heading .neon-sign{max-width:none;text-align:left;margin-top:14px!important}.hc-heading p{font-size:10px}
  .hc-hero-top{font-size:8px}.hc-launchbar > *{padding:12px 11px}.hc-launchbar small{font-size:8.5px}.hc-panel{padding:13px}.hc-panel-head{letter-spacing:.15em}.hc-mission{min-height:310px;padding:16px}.hc-fit{display:none}.hc-mission-copy{width:95%}.hc-mission-copy>strong{font-size:31px}.hc-mission-copy>b{font-size:12.5px}.hc-host{font-size:9.5px}.hc-crew em{font-size:10px}
  .hc-room-grid{grid-template-columns:repeat(3,minmax(215px,82vw))}.hc-people .hm-person{width:86px}.hc-section-title b{display:none}.hc-live-panel .live-big{min-height:190px}
}

/* ── ROOM ENTRY — the join decision, reached from Home's Active Rooms ── */
.room-entry { max-width:1080px; padding-bottom:110px; }
.re-hero { position:relative; height:390px; margin-top:16px; overflow:hidden; border-radius:30px; color:#fff;
  background:#100b1a; border:1px solid rgba(168,85,247,.38); box-shadow:0 28px 80px rgba(0,0,0,.48),0 0 0 1px rgba(56,189,248,.06) inset; }
.re-art,.re-grade { position:absolute; inset:0; }
.re-art { background-image:var(--room-art); background-size:contain; background-repeat:no-repeat; background-position:center; background-color:#0a0812; }
.re-grade { background:linear-gradient(0deg,rgba(5,3,11,.98) 0%,rgba(5,3,11,.68) 37%,rgba(5,3,11,.06) 74%),
  linear-gradient(90deg,rgba(8,4,15,.55),transparent 62%); }
.re-live { position:absolute; z-index:2; top:22px; left:22px; display:flex; align-items:center; gap:8px; padding:8px 12px;
  border-radius:999px; background:rgba(5,3,11,.72); border:1px solid rgba(255,255,255,.16); backdrop-filter:blur(14px);
  font-size:10px; font-weight:900; letter-spacing:.15em; text-transform:uppercase; }
.re-live i { width:8px; height:8px; border-radius:50%; background:var(--mint); box-shadow:0 0 12px var(--mint); }
.re-hero-copy { position:absolute; z-index:2; left:28px; right:28px; bottom:28px; }
.re-game,.re-kicker { color:var(--cyan); font-size:9px; line-height:1.2; font-weight:900; letter-spacing:.18em; text-transform:uppercase; }
.re-hero-copy h1 { margin:7px 0 6px; color:#fff; font-size:clamp(38px,5vw,62px); line-height:.92; letter-spacing:-.055em; text-shadow:0 4px 24px rgba(0,0,0,.6); }
.re-hero-copy p { margin:0; color:#ddd3ed; font-size:13px; font-weight:650; }
.re-layout { position:relative; z-index:3; display:grid; grid-template-columns:minmax(0,1.08fr) minmax(300px,.92fr); gap:14px; margin:14px 22px 0; }
.re-decision,.re-plan,.re-fit,.re-rules { min-width:0; border-radius:21px; background:rgba(9,6,16,.94); border:1px solid rgba(168,85,247,.28);
  box-shadow:0 22px 60px rgba(0,0,0,.4),inset 0 1px rgba(255,255,255,.04); backdrop-filter:blur(22px); }
.re-decision { grid-row:span 2; padding:19px; }
.re-host { display:flex; align-items:center; gap:11px; padding-bottom:15px; color:inherit; text-decoration:none; border-bottom:1px solid rgba(255,255,255,.09); }
.re-host .avatar { width:44px; height:44px; flex:0 0 auto; }
.re-host > span { display:flex; flex-direction:column; min-width:0; flex:1; }
.re-host small { color:var(--dim-2); font-size:8px; font-weight:800; letter-spacing:.13em; text-transform:uppercase; }
.re-host b { margin-top:2px; color:#fff; font-size:13px; }
.re-host em { margin-top:2px; color:var(--dim); font-size:9.5px; font-style:normal; white-space:nowrap; overflow:hidden; text-overflow:ellipsis; }
.re-host > svg { width:16px; color:var(--cyan); }
.re-crew-head { display:flex; justify-content:space-between; align-items:center; gap:10px; margin:16px 1px 10px; }
.re-crew-head span { color:#fff; font-size:12px; font-weight:850; }
.re-crew-head b { color:var(--pink); font-size:8.5px; letter-spacing:.12em; text-transform:uppercase; }
.re-crew { display:flex; gap:10px; overflow-x:auto; padding:1px 1px 6px; scrollbar-width:none; }
.re-crew > a,.re-open { width:61px; flex:0 0 61px; display:flex; flex-direction:column; align-items:center; gap:6px; color:inherit; text-decoration:none; }
.re-crew .avatar,.re-open i { width:52px; height:52px; border-radius:17px; }
.re-crew .avatar { box-shadow:0 0 0 1px rgba(255,255,255,.13),0 0 18px rgba(168,85,247,.14)!important; }
.re-crew a span,.re-open small { width:100%; color:var(--dim); font-size:8.5px; text-align:center; white-space:nowrap; overflow:hidden; text-overflow:ellipsis; }
.re-open i { display:grid; place-items:center; border:1px dashed rgba(56,189,248,.44); background:rgba(56,189,248,.05); }
.re-open i svg { width:18px; color:var(--cyan); }
.re-actions { margin-top:15px; }
.re-join { width:100%; min-height:62px; border-radius:14px; font:inherit; cursor:pointer; display:flex; align-items:center; justify-content:center; gap:11px; padding:9px 16px; color:#fff; border:1px solid rgba(244,114,182,.7);
  background:linear-gradient(120deg,#7c3aed,#d94696); box-shadow:0 9px 25px rgba(217,70,150,.2),inset 0 1px rgba(255,255,255,.22); }
.re-join > svg { width:22px; flex:0 0 auto; }
.re-join > span { display:flex; flex-direction:column; align-items:flex-start; }
.re-join b { font-size:14px; line-height:1.1; }
.re-join small { margin-top:3px; color:rgba(255,255,255,.72); font-size:8.5px; font-weight:700; }
.re-join.sent { border-color:rgba(52,211,153,.35); background:rgba(52,211,153,.1); color:#bbf7d0; box-shadow:none; cursor:default; }
.re-join.blocked{color:#d9d1df;text-decoration:none;border-color:rgba(255,255,255,.15);background:linear-gradient(110deg,rgba(255,255,255,.055),rgba(86,58,120,.1));box-shadow:none}.re-join.blocked>svg{color:#aa9aef}.re-join.blocked small{color:#93879d}
.re-access-note{display:flex;align-items:center;gap:10px;margin-top:9px;padding:11px 12px;color:#8d8296;border:1px solid rgba(91,220,255,.12);border-radius:11px;background:rgba(56,189,248,.025)}.re-access-note>svg{width:17px;flex:0 0 auto;color:#5bdcff}.re-access-note>span{display:flex;flex-direction:column}.re-access-note b{color:#c9c0ce;font-size:7.5px}.re-access-note small{margin-top:3px;font-size:6.5px;line-height:1.35}
.re-closed { min-height:62px; display:grid; place-items:center; border-radius:14px; color:var(--dim); background:rgba(255,255,255,.04); border:1px solid rgba(255,255,255,.09); }
.re-plan,.re-fit { padding:19px; }
.re-plan h2,.re-fit h2,.re-rules h2 { margin:6px 0 13px; color:#fff; font-size:18px; line-height:1.15; letter-spacing:-.025em; }
.re-tags { display:flex; flex-wrap:wrap; gap:6px; }
.re-tags span { display:flex; align-items:center; gap:5px; min-height:28px; padding:6px 9px; border-radius:999px; color:#c8bddb;
  background:rgba(255,255,255,.055); border:1px solid rgba(255,255,255,.09); font-size:9px; font-weight:700; }
.re-tags svg { width:12px; color:var(--cyan); }
.re-fit-list { display:grid; grid-template-columns:1fr 1fr; gap:8px; }
.re-fit-list span { display:flex; align-items:center; gap:7px; color:#d8d1e5; font-size:10px; font-weight:650; }
.re-fit-list svg { width:14px; color:var(--mint); flex:0 0 auto; }
.re-rules { grid-column:1/-1; display:flex; align-items:center; justify-content:space-between; gap:18px; padding:17px 19px; }
.re-rules h2 { margin-bottom:0; }.re-rule-list { display:flex; justify-content:flex-end; flex-wrap:wrap; gap:6px; }
.re-rule-list span { padding:6px 9px; border-radius:999px; color:#fecdd3; background:rgba(251,113,133,.08); border:1px solid rgba(251,113,133,.2); font-size:9px; }

@media (max-width:700px) {
  .room-entry { padding-inline:14px; }
  .re-hero { height:305px; margin-top:12px; border-radius:23px; }
  .re-live { top:15px; left:15px; padding:7px 10px; font-size:9px; }
  .re-hero-copy { left:18px; right:18px; bottom:29px; }
  .re-hero-copy h1 { margin-top:5px; font-size:37px; }
  .re-layout { grid-template-columns:minmax(0,1fr); margin:10px 8px 0; gap:10px; }
  .re-decision { grid-row:auto; padding:16px; }
  .re-plan,.re-fit { padding:16px; }
  .re-fit-list { grid-template-columns:1fr; }
  .re-rules { grid-column:auto; display:block; padding:16px; }
  .re-rule-list { justify-content:flex-start; }
}

/* ── PARTY UP — a people-first matchmaking console ── */
.party-deck { max-width:1040px; padding-bottom:110px; }
.pd-head { display:flex; align-items:flex-end; justify-content:space-between; gap:24px; margin:18px 0 14px; padding:0 2px; }
.pd-kicker { color:var(--cyan); font-size:8px; font-weight:900; letter-spacing:.17em; text-transform:uppercase; }
.pd-head h1 { margin:7px 0 5px; color:#fff; font-size:clamp(34px,4.8vw,56px); line-height:.94; letter-spacing:-.055em; }
.pd-head p { margin:0; color:var(--dim); font-size:11px; }.pd-head-actions{display:flex;align-items:center;gap:15px;flex:0 0 auto}
.pd-head-actions span { color:var(--dim); font-size:9px; }.pd-head-actions span b{color:#fff;font-size:17px;margin-right:4px}.pd-head-actions a{color:var(--cyan);font-size:9px;font-weight:800;text-decoration:none}
.pd-card { display:grid; grid-template-columns:minmax(330px,.86fr) minmax(390px,1.14fr); min-height:585px; overflow:hidden; border-radius:25px;
  background:rgba(7,5,13,.9); border:1px solid rgba(168,85,247,.28); box-shadow:0 26px 80px rgba(0,0,0,.48); }
.pd-person { position:relative; isolation:isolate; overflow:hidden; min-height:585px; background:var(--pd-grad,#171126); }
.pd-photo,.pd-photo-grade { position:absolute;inset:0}.pd-photo{z-index:-2;background-image:var(--pd-photo);background-size:cover;background-position:center top}
.pd-person.no-photo .pd-photo{background:var(--pd-grad)}.pd-photo-grade{z-index:-1;background:linear-gradient(0deg,rgba(6,4,11,.98),rgba(6,4,11,.07) 66%),linear-gradient(90deg,transparent,rgba(6,4,11,.17))}
.pd-live,.pd-score{position:absolute;top:17px;border-radius:999px;background:rgba(6,4,11,.7);border:1px solid rgba(255,255,255,.14);backdrop-filter:blur(12px)}
.pd-live{left:17px;display:flex;align-items:center;gap:7px;padding:7px 10px;color:#fff;font-size:8px;font-weight:850;letter-spacing:.12em;text-transform:uppercase}.pd-live i{width:7px;height:7px;border-radius:50%;background:var(--mint);box-shadow:0 0 9px var(--mint)}
.pd-score{right:17px;width:58px;height:58px;display:grid;place-content:center;text-align:center}.pd-score b{font-size:16px;color:#fff}.pd-score span{font-size:7px;color:var(--cyan);letter-spacing:.13em;text-transform:uppercase}
.pd-identity{position:absolute;left:22px;right:22px;bottom:22px}.pd-identity>span{color:var(--cyan);font-size:9px;font-weight:800}.pd-identity h2{margin:4px 0 5px;color:#fff;font-size:42px;line-height:.95;letter-spacing:-.055em}.pd-identity h2 .vtick{font-size:13px;vertical-align:middle}.pd-identity p{margin:0;color:#d6cede;font-size:12px;line-height:1.4}
.pd-intel{display:flex;flex-direction:column;min-width:0;padding:28px}.pd-intro h2{margin:7px 0 16px;color:#fff;font-size:24px;line-height:1.08;letter-spacing:-.035em}
.pd-reasons{display:grid;grid-template-columns:1fr 1fr;gap:8px;padding:13px 0;border-top:1px solid rgba(255,255,255,.08);border-bottom:1px solid rgba(255,255,255,.08)}
.pd-reasons span{display:flex;align-items:center;gap:7px;color:#cfc7dc;font-size:9.5px}.pd-reasons svg{width:13px;color:var(--mint);flex:0 0 auto}
.pd-facts{display:grid;grid-template-columns:1fr 1fr;margin-top:14px;border:1px solid rgba(255,255,255,.08);border-radius:14px;overflow:hidden}
.pd-facts>div{min-width:0;padding:11px 12px;border-left:1px solid rgba(255,255,255,.08);border-top:1px solid rgba(255,255,255,.08)}.pd-facts>div:nth-child(odd){border-left:0}.pd-facts>div:nth-child(-n+2){border-top:0}
.pd-facts span,.pd-facts b,.pd-facts small{display:block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.pd-facts span{color:#6f657e;font-size:7px;font-weight:850;letter-spacing:.13em;text-transform:uppercase}.pd-facts b{margin-top:4px;color:#fff;font-size:11px}.pd-facts small{margin-top:2px;color:#8f849e;font-size:8.5px}
.pd-steam{margin-top:11px;overflow:hidden;border:1px solid rgba(67,226,166,.25);border-radius:14px;background:linear-gradient(110deg,rgba(28,124,98,.1),rgba(48,183,224,.055))}.pd-steam header{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:10px 12px;border-bottom:1px solid rgba(67,226,166,.14)}.pd-steam header span{display:flex;align-items:center;gap:6px;color:#71e8b7;font-size:8px;font-weight:950;letter-spacing:.13em}.pd-steam header i{width:17px;height:17px;display:grid;place-items:center;border-radius:50%;color:#07110d;background:#58dda5;font-size:10px;font-style:normal;box-shadow:0 0 16px rgba(65,225,162,.3)}.pd-steam header b{color:#d8fff0;font-size:11px}.pd-steam>div{display:grid;grid-template-columns:repeat(3,minmax(0,1fr))}.pd-steam>div>span{min-width:0;display:flex;flex-direction:column;padding:10px 12px;border-left:1px solid rgba(67,226,166,.12)}.pd-steam>div>span:first-child{border-left:0}.pd-steam small{overflow:hidden;color:#6d8f83;font-size:7px;font-weight:900;letter-spacing:.1em;text-overflow:ellipsis;white-space:nowrap}.pd-steam>div b{margin-top:4px;color:#fff;font-size:11px}.pd-steam em{margin-top:2px;color:#8d9d98;font-size:8px;font-style:normal}.pd-steam.missing{padding-bottom:10px;border-color:rgba(255,255,255,.09);background:rgba(255,255,255,.025)}.pd-steam.missing header{border-bottom:0}.pd-steam.missing header span,.pd-steam.missing header b{color:#8c8293}.pd-steam.missing p{margin:0;padding:0 12px;color:#746b7c;font-size:9px}
.pd-games{display:flex;flex-wrap:wrap;gap:6px;margin-top:13px}.pd-games .chip{padding:5px 9px!important;font-size:8.5px!important;background:rgba(255,255,255,.05)!important;border:1px solid rgba(255,255,255,.1)!important;box-shadow:none!important}
.pd-actions{display:grid;grid-template-columns:92px 1fr;gap:9px;margin-top:auto;padding-top:18px}.pd-pass,.pd-match{min-height:61px;border-radius:14px;font:inherit;cursor:pointer}.pd-pass{color:#b6adbf;background:rgba(255,255,255,.04);border:1px solid rgba(255,255,255,.11);font-size:11px;font-weight:800}
.pd-match{display:flex;align-items:center;justify-content:center;gap:10px;color:#fff;background:linear-gradient(120deg,#6741d9,#c03d91);border:1px solid rgba(244,114,182,.58)}.pd-match>svg{width:22px}.pd-match>span{display:flex;flex-direction:column;align-items:flex-start}.pd-match b{font-size:14px}.pd-match small{margin-top:2px;color:rgba(255,255,255,.7);font-size:8px}
.pd-super{margin-top:8px;padding:8px;color:#aa9cbc;background:none;border:0;font:inherit;font-size:8.5px;font-weight:750;cursor:pointer}.pd-swipe-bridge{position:absolute!important;width:1px!important;height:1px!important;overflow:hidden!important;opacity:0!important;pointer-events:none!important}
.pd-upnext{margin-top:34px}.pd-upnext-head{display:flex;justify-content:space-between;margin:0 2px 8px}.pd-upnext-head span{color:#fff;font-size:11px;font-weight:850}.pd-upnext-head b{color:#756b83;font-size:8px;letter-spacing:.1em;text-transform:uppercase}
.pd-rail{display:flex;gap:8px;overflow-x:auto;scrollbar-width:none}.pd-next{min-width:178px;display:flex;align-items:center;gap:9px;padding:10px;border-radius:13px;color:inherit;text-align:left;background:rgba(8,5,14,.75);border:1px solid rgba(255,255,255,.09);font:inherit;cursor:pointer}.pd-next .avatar{width:34px;height:34px;flex:0 0 auto}.pd-next>span{display:flex;flex-direction:column;min-width:0;flex:1}.pd-next b{color:#fff;font-size:10px}.pd-next small{margin-top:2px;color:#756b83;font-size:8px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.pd-next em{color:var(--cyan);font-size:9px;font-style:normal;font-weight:850}
.pd-empty{max-width:680px;margin:9vh auto;padding:38px;text-align:center;border-radius:24px;background:rgba(8,5,14,.82);border:1px solid rgba(168,85,247,.25)}.pd-empty>span{width:54px;height:54px;margin:0 auto 15px;display:grid;place-items:center;border-radius:50%;color:var(--mint);background:rgba(52,211,153,.1)}.pd-empty>span svg{width:24px}.pd-empty h1{margin:7px 0;color:#fff;font-size:32px}.pd-empty p{color:var(--dim);font-size:12px;line-height:1.5}.pd-empty>div:last-child{display:flex;justify-content:center;gap:8px;margin-top:18px}.pd-mode{margin:8px 0 18px}

@media(max-width:700px){
  .party-deck{padding-inline:14px;padding-bottom:150px}.pd-head{align-items:flex-start;margin-top:12px}.pd-head h1{font-size:34px}.pd-head p{font-size:10px}.pd-head-actions{display:none}
  /* Mobile deck card = FULL-SCREEN PHOTO (her call): the WHOLE photo, letterboxed
     over a blurred fill, with the info she loves overlaid ON it. The intel column
     collapses — receipts live behind the on-photo "why" toggle. */
  .pd-card{grid-template-columns:1fr;min-height:0;border-radius:21px;overflow:visible}
  .pd-person{min-height:calc(100dvh - 215px);border-radius:21px;background:#0b0714}
  .pd-photo{background-size:contain;background-position:center 12%}
  .pd-person::before{content:'';position:absolute;inset:0;z-index:-3;background-image:var(--pd-photo);background-size:cover;background-position:center;filter:blur(30px) brightness(.45)}
  .pd-photo-grade{background:linear-gradient(0deg,rgba(6,4,11,.96) 4%,rgba(6,4,11,.35) 42%,transparent 62%)}
  .pd-identity{display:none}
  .pd-overlay{display:block !important}
  .pd-intel{padding:10px 2px 0}.pd-intro,.pd-reasons,.pd-facts,.pd-steam,.pd-games,.pd-super{display:none}
  .pd-actions{position:sticky;bottom:calc(var(--tabbar-h) + var(--safe-b) + 8px);z-index:5;padding-top:10px;background:none}.pd-pass,.pd-match{min-height:52px}
  .pd-next{min-width:164px}.pd-empty{margin-top:10vh;padding:28px 20px}.pd-empty>div:last-child{flex-direction:column}
}

/* Party Up decision receipts + deliberate Super Match review. */
.pd-notice{position:relative;display:grid;grid-template-columns:42px minmax(0,1fr) auto;gap:13px;align-items:center;margin:0 0 12px;padding:14px 47px 14px 14px;border-radius:17px;background:linear-gradient(115deg,rgba(56,189,248,.07),rgba(168,85,247,.09));border:1px solid rgba(96,195,255,.24)}.pd-notice>span{width:42px;height:42px;display:grid;place-items:center;border-radius:12px;color:var(--cyan);background:rgba(56,189,248,.08)}.pd-notice>span svg{width:18px}.pd-notice>div:nth-child(2){display:flex;flex-direction:column;min-width:0}.pd-notice small{color:var(--cyan);font-size:6.5px;font-weight:950;letter-spacing:.16em}.pd-notice h2{margin:3px 0 0;color:#fff;font-size:14px;letter-spacing:-.02em}.pd-notice p{margin:3px 0 0;color:#91869c;font-size:8px;line-height:1.45}.pd-notice-actions{display:flex;gap:6px}.pd-notice-actions button,.pd-notice-actions a{min-height:34px;display:flex;align-items:center;justify-content:center;padding:7px 10px;color:#d9d0e2;background:rgba(255,255,255,.04);border:1px solid rgba(255,255,255,.11);border-radius:9px;font:inherit;font-size:6.5px;font-weight:900;white-space:nowrap;cursor:pointer}.pd-notice-x{position:absolute;top:10px;right:10px;width:27px;height:27px;display:grid;place-items:center;color:#7d7287;background:transparent;border:0;cursor:pointer}.pd-notice-x svg{width:12px}.pd-notice.matched{border-color:rgba(52,211,153,.26);background:linear-gradient(115deg,rgba(52,211,153,.07),rgba(56,189,248,.05))}.pd-notice.matched>span{color:var(--mint);background:rgba(52,211,153,.08)}.pd-notice.super{border-color:rgba(255,74,171,.3);background:linear-gradient(115deg,rgba(255,45,155,.075),rgba(168,85,247,.09))}.pd-notice.super>span{color:#ff8fc5;background:rgba(255,45,155,.08)}.pd-notice.passed,.pd-notice.canceled{background:rgba(255,255,255,.025);border-color:rgba(255,255,255,.1)}.pd-notice.passed>span,.pd-notice.canceled>span{color:#95899f;background:rgba(255,255,255,.04)}.super-review-wrap{position:fixed;z-index:245;inset:0;display:grid;place-items:center;padding:18px}.super-review-backdrop{position:absolute;inset:0;background:rgba(2,1,6,.86);border:0;backdrop-filter:blur(12px)}.super-review{position:relative;width:min(100%,520px);padding:29px;border-radius:25px;background:radial-gradient(circle at 90% 0,rgba(255,45,155,.17),transparent 38%),linear-gradient(145deg,#14091d,#07040e);border:1px solid rgba(255,68,169,.34);box-shadow:0 35px 110px rgba(0,0,0,.75)}.super-review-mark{width:48px;height:48px;display:grid;place-items:center;margin-bottom:14px;border-radius:50%;color:#ff8fc6;background:rgba(255,45,155,.08);border:1px solid rgba(255,45,155,.22);font-size:21px;box-shadow:0 0 30px rgba(255,45,155,.1)}.super-review h2{margin:8px 0 9px;color:#fff;font-size:40px;line-height:.87;letter-spacing:-.058em}.super-review>p{margin:0;color:#95899f;font-size:9.5px;line-height:1.55}.super-review-person{display:flex;align-items:center;gap:11px;margin-top:17px;padding:12px;border-radius:14px;background:rgba(255,255,255,.025);border:1px solid rgba(255,255,255,.09)}.super-review-person>.avatar{width:48px;height:48px}.super-review-person>span{display:flex;flex-direction:column}.super-review-person small{color:#ff82bd;font-size:6px;font-weight:950;letter-spacing:.13em}.super-review-person b{margin-top:3px;color:#fff;font-size:12px}.super-review-person em{margin-top:2px;color:#7b7084;font-size:7px;font-style:normal}.super-review-reasons{display:flex;flex-wrap:wrap;gap:5px;margin-top:9px}.super-review-reasons span{display:flex;align-items:center;gap:5px;padding:6px 8px;border-radius:8px;color:#bfb4ca;background:rgba(255,255,255,.03);border:1px solid rgba(255,255,255,.08);font-size:6.5px}.super-review-reasons svg{width:10px;color:var(--mint)}.super-review-cost{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:13px;padding:12px 13px;border-radius:13px;background:rgba(168,85,247,.055);border:1px solid rgba(168,85,247,.17)}.super-review-cost>span{display:flex;flex-direction:column}.super-review-cost small{color:#7c7086;font-size:5.8px;font-weight:900;letter-spacing:.12em}.super-review-cost b{margin-top:3px;color:#d8cedf;font-size:8px}.super-review-cost strong{color:#d6b6ff;font-size:8px;letter-spacing:.1em}.super-review footer{display:grid;grid-template-columns:1fr 1.2fr;gap:8px;margin-top:16px}
@media(max-width:700px){.pd-notice{grid-template-columns:38px 1fr;padding:12px 40px 12px 12px}.pd-notice>span{width:38px;height:38px}.pd-notice-actions{grid-column:1/-1}.pd-notice-actions button,.pd-notice-actions a{flex:1}.super-review{padding:24px 17px}.super-review h2{font-size:35px}.super-review footer{grid-template-columns:1fr}}

/* Party Up decisions: ordinary requests, match-backs, and cancellations are explicit. */
.match-decision{position:fixed;z-index:2440;inset:0;display:grid;place-items:center;padding:18px}.match-decision>button{position:absolute;inset:0;border:0;background:rgba(3,2,8,.88);backdrop-filter:blur(18px)}.match-decision>section{position:relative;width:min(720px,100%);max-height:calc(100dvh - 36px);overflow:auto;padding:26px;border:1px solid rgba(56,189,248,.35);border-radius:25px;background:radial-gradient(circle at 90% 0,rgba(56,189,248,.13),transparent 31%),radial-gradient(circle at 0 100%,rgba(168,85,247,.09),transparent 34%),#080611;box-shadow:0 40px 120px rgba(0,0,0,.72)}.match-decision.cancel>section{border-color:rgba(255,83,145,.34);background:radial-gradient(circle at 90% 0,rgba(255,45,125,.1),transparent 31%),#090611}.match-decision header>small{color:#68dcff;font-weight:950;letter-spacing:.14em}.match-decision.cancel header>small{color:#ff8ab9}.match-decision h2{margin:8px 0 0;font-size:36px;line-height:1;letter-spacing:-.052em}.match-decision header p{margin:10px 0 0;color:#9a8fa2;line-height:1.55}.match-decision article{position:relative;isolation:isolate;overflow:hidden;min-height:155px;margin-top:18px;padding:18px;display:grid;grid-template-columns:60px 1fr;align-items:end;gap:14px;border:1px solid rgba(255,255,255,.1);border-radius:17px;background:#08050d}.match-decision article>span:first-child{position:absolute;z-index:-2;inset:0;background:linear-gradient(0deg,rgba(5,3,10,.98),rgba(5,3,10,.24)),var(--md-art) center/cover}.match-decision article>.avatar{width:56px;height:56px}.match-decision article>div{display:flex;min-width:0;flex-direction:column}.match-decision article small{color:#6fdcff;font-weight:900;letter-spacing:.09em}.match-decision article b{margin-top:4px;font-size:25px}.match-decision article p{margin:4px 0 0;color:#a99cae}.md-proof{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-top:10px}.md-proof>span{padding:13px;display:flex;min-width:0;flex-direction:column;border:1px solid rgba(255,255,255,.08);border-radius:12px;background:rgba(255,255,255,.02)}.md-proof small{color:#817588;font-weight:950;letter-spacing:.09em}.md-proof b{margin-top:4px;color:#f0eaf3}.md-proof em{margin-top:4px;color:#817588;font-style:normal;line-height:1.4}.md-effects{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin-top:10px}.md-effects>span{padding:13px;display:grid;grid-template-columns:24px 1fr;column-gap:9px;border:1px solid rgba(255,255,255,.08);border-radius:12px;background:rgba(255,255,255,.02)}.md-effects svg{grid-row:1/3;width:19px;color:#69dcff}.match-decision.cancel .md-effects svg{color:#ff84b6}.md-effects b{line-height:1.25}.md-effects small{margin-top:4px;color:#7f7486;line-height:1.4}.match-decision aside{margin-top:10px;padding:13px;display:flex;align-items:center;gap:11px;border:1px solid rgba(168,85,247,.2);border-radius:12px;background:rgba(168,85,247,.055)}.match-decision aside>svg{width:22px;color:#be8aff}.match-decision aside>span{display:flex;flex-direction:column}.match-decision aside small{color:#817588;font-weight:950;letter-spacing:.09em}.match-decision aside b{margin-top:3px}.match-decision footer{display:grid;grid-template-columns:auto 1fr;gap:9px;margin-top:15px}.match-decision footer button{min-height:52px;padding:0 17px;border:1px solid rgba(255,255,255,.11);border-radius:12px;color:#b8adc0;background:rgba(255,255,255,.03);font:inherit;font-weight:900;letter-spacing:.06em}.match-decision footer .primary{color:#05030a;border-color:rgba(116,224,255,.5);background:linear-gradient(135deg,#67dcff,#9a69ff)}.match-decision footer .danger{color:#fff;border-color:rgba(255,91,151,.48);background:linear-gradient(135deg,#b91f5a,#ff4385)}
@media(max-width:700px){.match-decision{padding:10px}.match-decision>section{max-height:calc(100dvh - 20px);padding:18px 16px;border-radius:20px}.match-decision h2{font-size:30px}.match-decision article{min-height:140px;padding:15px;grid-template-columns:52px 1fr}.match-decision article>.avatar{width:48px;height:48px}.md-proof,.md-effects{grid-template-columns:1fr}.match-decision footer{grid-template-columns:1fr}.match-decision footer button{min-height:48px}}

/* ── LIVE ROOM v2 — chat is the room; everything else is compact chrome ── */
.live-room { max-width:980px; padding-bottom:110px; }
.lr-head { position:relative; isolation:isolate; overflow:hidden; display:flex; align-items:flex-end; justify-content:space-between; gap:24px;
  min-height:178px; margin:18px 0 10px; padding:24px 26px; border-radius:22px; background:#0a0711; border:1px solid rgba(255,255,255,.11); }
.lr-head::before { content:""; position:absolute; z-index:-2; inset:0; background-image:var(--room-art); background-size:cover; background-position:center 43%; opacity:.34; filter:saturate(.75); }
.lr-head::after { content:""; position:absolute; z-index:-1; inset:0; background:linear-gradient(90deg,rgba(6,4,11,.98) 0%,rgba(6,4,11,.86) 48%,rgba(6,4,11,.48) 100%),linear-gradient(0deg,rgba(6,4,11,.92),transparent 70%); }
.lr-copy { min-width:0; }.lr-status { display:flex; align-items:center; gap:8px; margin-bottom:12px; }
.lr-status span,.lr-status b { display:flex; align-items:center; gap:6px; padding:5px 8px; border-radius:999px; font-size:8px; font-weight:850; letter-spacing:.12em; text-transform:uppercase; }
.lr-status span { color:#d9ffed; background:rgba(52,211,153,.1); border:1px solid rgba(52,211,153,.24); }
.lr-status span i { width:6px;height:6px;border-radius:50%;background:var(--mint);box-shadow:0 0 8px var(--mint); }
.lr-status b { color:#c6bbd7; background:rgba(255,255,255,.055); border:1px solid rgba(255,255,255,.1); }
.lr-game { color:var(--cyan); font-size:8px; font-weight:850; letter-spacing:.17em; text-transform:uppercase; }
.lr-copy h1 { margin:5px 0 4px; color:#fff; font-size:clamp(31px,4.2vw,48px); line-height:.95; letter-spacing:-.05em; text-shadow:none; }
.lr-copy p { margin:0; color:#b7aec5; font-size:11px; font-weight:650; }
.lr-controls { flex:0 0 auto; display:flex; align-items:center; gap:14px; }
.lr-crew { display:flex; align-items:center; }.lr-crew a { margin-left:-8px; }.lr-crew a:first-child{margin-left:0}
.lr-crew .avatar,.lr-crew>span { width:36px;height:36px;border-radius:50%;box-shadow:0 0 0 2px #090610!important; }
.lr-crew>span { margin-left:-6px;display:grid;place-items:center;color:var(--cyan);background:#100c18;border:1px dashed rgba(56,189,248,.42); }
.lr-crew>span svg{width:12px}.lr-voice { min-height:52px; display:grid; grid-template-columns:20px auto; column-gap:8px; align-items:center; padding:8px 14px; border-radius:13px;
  color:#fff; font:inherit; cursor:pointer; background:rgba(139,92,246,.16); border:1px solid rgba(167,139,250,.4); box-shadow:none; }
.lr-voice>svg{grid-row:1/3;width:18px;color:#d8b4fe}.lr-voice b{font-size:11px;text-align:left}.lr-voice small{font-size:8px;color:#9e93ae;text-align:left}
.lr-signals { display:grid; grid-template-columns:1.5fr .72fr .72fr .72fr; margin:0 0 10px; border:1px solid rgba(255,255,255,.09); border-radius:14px; background:rgba(8,5,14,.72); overflow:hidden; }
.lr-signals>div { min-width:0; padding:11px 13px; border-left:1px solid rgba(255,255,255,.08); }
.lr-signals>div:first-child { border-left:0; }.lr-signals span,.lr-signals b{display:block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.lr-signals span { color:#6f657e; font-size:7.5px; font-weight:850; letter-spacing:.14em; text-transform:uppercase; }
.lr-signals b { margin-top:4px; color:#d8d1e3; font-size:9.5px; font-weight:700; }
.lr-tabs { display:flex; justify-content:flex-start; padding:0 2px; border-bottom:1px solid rgba(255,255,255,.09); }
.lr-tabs .seg { width:100%!important; min-width:0!important; display:flex!important; gap:12px!important; margin:0!important; padding:0!important; background:none!important; border:0!important; box-shadow:none!important; }
.lr-tabs .seg button { flex:1!important; text-align:center!important; justify-content:center!important; }
#app .lr-tabs .seg button { position:relative; min-width:auto!important; min-height:40px!important; padding:0 2px 10px!important; color:#786f87!important; background:none!important; border:0!important; border-radius:0!important; box-shadow:none!important; text-shadow:none!important; font-size:10px!important; letter-spacing:.04em!important; }
#app .lr-tabs .seg button.active { color:#fff!important; }
#app .lr-tabs .seg button.active::after { content:""; position:absolute; left:0;right:0;bottom:-1px;height:2px;border-radius:2px;background:var(--cyan);box-shadow:0 0 8px rgba(56,189,248,.6); }
#app .lr-tabs .seg button .seg-n { margin-left:3px!important; padding:0!important; color:var(--pink)!important; background:none!important; border:0!important; box-shadow:none!important; }
.lr-content { padding:15px 2px 0; }.lr-content.is-chat { padding-top:12px; }
.lr-content.is-chat .lobchat-wrap { min-height:420px; }
.lr-content.is-chat .stream-chat,.lr-content.is-chat .group-chat,.lr-content.is-chat .chat-messages { background:transparent!important; border-color:rgba(255,255,255,.08)!important; }

@media (max-width:700px) {
  .live-room { padding-inline:14px; }
  .lr-head { min-height:260px; margin-top:10px; padding:18px 16px 16px; border-radius:18px; align-items:stretch; flex-direction:column; justify-content:flex-end; gap:18px; }
  .lr-head::after { background:linear-gradient(90deg,rgba(6,4,11,.98),rgba(6,4,11,.7)); }
  .lr-copy h1 { font-size:31px; }.lr-status { margin-bottom:9px; }.lr-status b { display:none; }
  .lr-controls { width:100%; flex-direction:row; align-items:center; justify-content:space-between; gap:12px; }
  .lr-crew .avatar,.lr-crew>span { width:29px;height:29px; }.lr-voice { min-height:45px;padding:6px 9px;grid-template-columns:16px auto;column-gap:6px}
  .lr-voice>svg{width:15px}.lr-voice b{font-size:10px}.lr-voice small{font-size:7px}
  .lr-signals { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .lr-signals>div:first-child{grid-column:1/-1}.lr-signals>div:first-child b{white-space:normal}
  .lr-signals>div:nth-child(2){border-left:0;border-top:1px solid rgba(255,255,255,.08)}
  .lr-signals>div:nth-child(3),.lr-signals>div:nth-child(4){border-top:1px solid rgba(255,255,255,.08)}
  .lr-signals>div:nth-child(3){border-left:1px solid rgba(255,255,255,.08)}
  .lr-signals>div:nth-child(4){grid-column:1/-1;border-left:0}
  .lr-tabs .seg { gap:25px!important; }.lr-content { padding-inline:0; }
}

@media (max-width:390px) {
  .re-hero { height:290px; }
  .re-join { padding-inline:10px; }
}

/* My Rooms — one live room, future reservations, and pending requests. */
.hc-room.room-reserved .hc-room-time i{background:#42d5ff;box-shadow:0 0 12px #22d3ee}.lr-voice.is-locked{cursor:default;opacity:.72}.room-exit{color:#ff8abd!important}

/* Start Room — a guided signal builder with a discovery-card preview. */
.room-builder{max-width:1180px;padding-bottom:120px}.rb-head{display:flex;align-items:flex-end;justify-content:space-between;gap:24px;padding:28px 2px 22px;border-bottom:1px solid rgba(255,255,255,.09)}
.rb-kicker{color:var(--cyan);font-size:10px;font-weight:900;letter-spacing:.2em;text-transform:uppercase}.rb-head h1{margin:7px 0 9px;color:#fff;font-size:clamp(38px,6vw,68px);line-height:.86;letter-spacing:-.065em}.rb-head p{max-width:680px;margin:0;color:#9d93aa;font-size:14px;line-height:1.55}.rb-stepcount{flex:0 0 auto;padding:9px 12px;border-radius:999px;color:#bcb2ca;background:rgba(255,255,255,.045);border:1px solid rgba(255,255,255,.1);font-size:10px;font-weight:800;letter-spacing:.08em;text-transform:uppercase}
.rb-game-start{margin-top:22px;padding:24px;border-radius:25px;background:rgba(8,5,14,.78);border:1px solid rgba(168,85,247,.25)}.rb-section-head{display:flex;align-items:flex-start;gap:12px;margin-bottom:18px}.rb-section-head>span{width:30px;height:30px;display:grid;place-items:center;flex:0 0 auto;border-radius:9px;color:#67dcff;background:rgba(56,189,248,.09);border:1px solid rgba(56,189,248,.25);font-size:9px;font-weight:900}.rb-section-head>div{display:flex;flex-direction:column;gap:3px}.rb-section-head b{color:#fff;font-size:15px}.rb-section-head small{color:#776e84;font-size:10px;line-height:1.4}
.rb-game-picks{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:10px}.rb-game-picks button{position:relative;isolation:isolate;overflow:hidden;min-height:178px;padding:14px;display:flex;flex-direction:column;align-items:flex-start;justify-content:flex-end;text-align:left;color:#fff;background:#090711;border:1px solid rgba(255,255,255,.1);border-radius:18px;font:inherit;cursor:pointer}.rb-game-picks button>span{position:absolute;z-index:-2;inset:0;background-image:linear-gradient(0deg,rgba(5,4,12,.98),rgba(5,4,12,.03) 76%),var(--rb-game);background-size:cover;background-position:center;transition:transform .25s ease}.rb-game-picks button::after{content:"";position:absolute;z-index:-1;inset:0;background:linear-gradient(135deg,transparent 52%,rgba(168,85,247,.15))}.rb-game-picks button:hover{border-color:rgba(56,189,248,.5);transform:translateY(-2px)}.rb-game-picks button:hover>span{transform:scale(1.05)}.rb-game-picks b{font-size:15px;line-height:1.1}.rb-game-picks small{margin-top:4px;color:#8de7ff;font-size:8px;font-weight:800;letter-spacing:.1em;text-transform:uppercase}.rb-add-game{display:flex;align-items:center;justify-content:center;gap:9px;margin-top:18px;color:#756c82;font-size:11px}.rb-add-game a{display:flex;align-items:center;gap:5px;color:#b8a7ff;font-weight:800}.rb-add-game svg{width:12px}
.rb-layout{display:grid;grid-template-columns:minmax(0,1fr) 350px;gap:18px;align-items:start;margin-top:20px}.rb-main{display:flex;flex-direction:column;gap:12px}.rb-section{padding:22px;border-radius:21px;background:rgba(8,5,14,.76);border:1px solid rgba(255,255,255,.09)}.rb-selected-game{height:115px;display:flex;align-items:center;gap:15px;position:relative;isolation:isolate;overflow:hidden;padding:16px;border-radius:16px;background:#0a0711;border:1px solid rgba(255,255,255,.1)}.rb-selected-game::after{content:"";position:absolute;z-index:-1;inset:0;background:linear-gradient(90deg,rgba(6,4,12,.98),rgba(6,4,12,.72) 56%,rgba(6,4,12,.25))}.rb-selected-game>span{position:absolute;z-index:-2;inset:0;background-image:var(--rb-game);background-size:cover;background-position:center}.rb-selected-game>div{display:flex;flex-direction:column}.rb-selected-game small{color:var(--cyan);font-size:8px;font-weight:900;letter-spacing:.18em;text-transform:uppercase}.rb-selected-game b{margin-top:3px;color:#fff;font-size:24px;letter-spacing:-.035em}.rb-selected-game button{width:max-content;margin-top:7px;padding:0;color:#a89eb5;background:none;border:0;font:inherit;font-size:9px;font-weight:800;text-decoration:underline;cursor:pointer}
.rb-field-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-top:13px}.rb-field-grid label,.rb-field-grid>div{min-width:0}.rb-field-grid label>span,.rb-label{display:block;margin:0 0 7px 2px;color:#83798f;font-size:9px;font-weight:850;letter-spacing:.1em;text-transform:uppercase}.rb-field-grid .field{margin:0}.rb-choices{gap:7px}.room-builder .chip{min-height:34px;padding:7px 11px;font-size:10px;background:rgba(255,255,255,.035);border-color:rgba(255,255,255,.11);box-shadow:none}.room-builder .chip.on{color:#fff;background:rgba(139,92,246,.16);border-color:rgba(167,139,250,.55);box-shadow:inset 0 0 18px rgba(139,92,246,.07)}.rb-space-top{margin-top:16px!important}.rb-number{width:110px;margin-top:8px!important}
.rb-schedule{display:flex;flex-direction:column;gap:15px;margin-top:14px;padding:16px;border-radius:15px;background:rgba(56,189,248,.045);border:1px solid rgba(56,189,248,.16)}.rb-schedule>div>b{display:block;margin-bottom:8px;color:#b9afc6;font-size:9px;letter-spacing:.09em;text-transform:uppercase}.rb-schedule p{display:flex;gap:10px;margin:0;padding-top:13px;border-top:1px solid rgba(255,255,255,.08);color:#82788f;font-size:9.5px;line-height:1.45}.rb-schedule p svg{width:17px;flex:0 0 auto;color:var(--cyan)}.rb-schedule p span{display:flex;flex-direction:column}.rb-schedule p b{color:#cfd8e0;font-size:10px}.rb-warning{display:flex;flex-direction:column;gap:4px;margin-top:12px;padding:12px 14px;border-radius:13px;color:#ffbad9;background:rgba(255,45,155,.075);border:1px solid rgba(255,45,155,.25);font-size:10px;line-height:1.4}.rb-warning b{color:#fff;font-size:11px}
.rb-hardnos .chip.on{color:#ffd1df;background:rgba(244,63,94,.11);border-color:rgba(251,113,133,.42)}.rb-visibility{display:grid;grid-template-columns:repeat(3,1fr);gap:8px}.rb-visibility button{display:flex;align-items:center;gap:9px;min-width:0;padding:12px;text-align:left;color:#aaa0b7;background:rgba(255,255,255,.025);border:1px solid rgba(255,255,255,.09);border-radius:13px;font:inherit;cursor:pointer}.rb-visibility button.on{color:#fff;background:rgba(56,189,248,.07);border-color:rgba(56,189,248,.38)}.rb-visibility i{width:12px;height:12px;flex:0 0 auto;border-radius:50%;border:1px solid #6c6377}.rb-visibility button.on i{border:3px solid #62dfff;box-shadow:0 0 9px rgba(56,189,248,.55)}.rb-visibility span{display:flex;flex-direction:column;min-width:0}.rb-visibility b{font-size:10px}.rb-visibility small{margin-top:2px;color:#746b80;font-size:8px}
.rb-preview{position:sticky;top:82px;padding:14px;border-radius:21px;background:rgba(7,5,13,.94);border:1px solid rgba(168,85,247,.28);box-shadow:0 22px 65px rgba(0,0,0,.36)}.rb-preview-label{display:flex;justify-content:space-between;padding:2px 2px 10px;color:#756b83;font-size:8px;font-weight:900;letter-spacing:.15em;text-transform:uppercase}.rb-preview-label b{color:#b7a2ff}.rb-preview-card{position:relative;isolation:isolate;overflow:hidden;height:245px;border-radius:16px;background:#090711;border:1px solid rgba(255,255,255,.11)}.rb-preview-art{position:absolute;z-index:-2;inset:0;background-image:linear-gradient(0deg,#06040d 2%,rgba(6,4,13,.25) 75%),var(--rb-art);background-size:cover;background-position:center}.rb-preview-card::after{content:"";position:absolute;z-index:-1;inset:0;background:linear-gradient(135deg,rgba(56,189,248,.05),rgba(168,85,247,.13))}.rb-preview-status{position:absolute;top:12px;left:12px;display:flex;align-items:center;gap:6px;padding:6px 8px;border-radius:999px;color:#fff;background:rgba(6,4,13,.74);border:1px solid rgba(255,255,255,.14);backdrop-filter:blur(10px);font-size:7.5px;font-weight:900;letter-spacing:.1em;text-transform:uppercase}.rb-preview-status i{width:6px;height:6px;border-radius:50%;background:var(--mint);box-shadow:0 0 8px var(--mint)}.rb-preview-copy{position:absolute;left:15px;right:15px;bottom:15px}.rb-preview-copy small{color:var(--cyan);font-size:8px;font-weight:900;letter-spacing:.16em;text-transform:uppercase}.rb-preview-copy h2{margin:4px 0 5px;color:#fff;font-size:27px;line-height:.97;letter-spacing:-.045em}.rb-preview-copy p{margin:0;color:#c3bacf;font-size:10px}
.rb-summary{margin-top:10px;border:1px solid rgba(255,255,255,.08);border-radius:13px;overflow:hidden}.rb-summary>div{display:grid;grid-template-columns:84px 1fr;gap:2px 9px;padding:9px 10px;border-top:1px solid rgba(255,255,255,.07)}.rb-summary>div:first-child{border-top:0}.rb-summary span{grid-row:1/3;color:#6f667a;font-size:7px;font-weight:850;letter-spacing:.09em;text-transform:uppercase}.rb-summary b{color:#c8c0d2;font-size:8.5px;line-height:1.4}.rb-summary small{color:#6f667a;font-size:7.5px}.rb-submit{margin-top:11px;min-height:48px}.rb-submit-note{margin:8px 7px 2px;text-align:center;color:#625a6d;font-size:7.5px;line-height:1.4}
@media(max-width:900px){.rb-game-picks{grid-template-columns:repeat(3,minmax(0,1fr))}.rb-layout{grid-template-columns:minmax(0,1fr) 310px}.rb-visibility{grid-template-columns:1fr}.rb-visibility button{min-height:54px}}
@media(max-width:700px){.room-builder{padding-inline:14px}.rb-head{align-items:flex-start;padding-top:15px}.rb-head h1{font-size:43px}.rb-head p{font-size:11px}.rb-stepcount{display:none}.rb-game-start{padding:14px}.rb-game-picks{display:flex;overflow-x:auto;scroll-snap-type:x mandatory}.rb-game-picks button{min-width:43vw;min-height:170px;scroll-snap-align:start}.rb-layout{display:flex;flex-direction:column}.rb-main{display:contents}.rb-section{padding:16px;border-radius:18px}.rb-preview{position:static;order:5;width:100%;padding:12px}.rb-preview-card{height:260px}.rb-field-grid{grid-template-columns:1fr}.rb-visibility{grid-template-columns:1fr 1fr}.rb-submit{position:sticky;bottom:calc(var(--tabbar-h) + var(--safe-b) + 7px);z-index:4;box-shadow:0 10px 28px #05030a}.rb-summary{display:none}}
@media(max-width:430px){.rb-head h1{font-size:38px}.rb-game-picks button{min-width:65vw}.rb-visibility{grid-template-columns:1fr}.rb-preview-card{height:225px}}

/* Your Lineup — confirmed plans, invitations, and sent requests are distinct states. */
.schedule-lineup,.schedule-picker,.schedule-propose,.session-detail{max-width:1160px;padding-bottom:120px}.sl-head{display:flex;align-items:flex-end;justify-content:space-between;gap:24px;padding:28px 1px 18px;border-bottom:1px solid rgba(255,255,255,.09)}.sl-kicker{color:var(--cyan);font-size:9px;font-weight:900;letter-spacing:.2em;text-transform:uppercase}.sl-head h1,.sp-head h1,.spp-head h1{margin:7px 0 8px;color:#fff;font-size:clamp(42px,6.5vw,72px);line-height:.86;letter-spacing:-.065em}.sl-head p,.sp-head p,.spp-head p{max-width:660px;margin:0;color:#93899f;font-size:13px;line-height:1.55}.sl-counts{display:flex;gap:8px;flex-wrap:wrap;margin:14px 0 21px}.sl-counts span{display:flex;align-items:baseline;gap:6px;padding:8px 11px;border-radius:999px;color:#8e849a;background:rgba(255,255,255,.035);border:1px solid rgba(255,255,255,.09);font-size:9px;font-weight:800;letter-spacing:.08em;text-transform:uppercase}.sl-counts b{color:#fff;font-size:15px;letter-spacing:0}
.sl-section{margin-top:25px}.sl-section-head{display:flex;align-items:center;justify-content:space-between;margin:0 2px 9px;color:#fff;font-size:10px;font-weight:900;letter-spacing:.15em;text-transform:uppercase}.sl-section-head span{display:flex;align-items:center;gap:7px}.sl-section-head b{color:#6f6679;font-size:8px}.sl-needs{margin-top:0;padding:14px;border-radius:18px;background:rgba(255,45,155,.045);border:1px solid rgba(255,45,155,.18)}.sl-needs .sl-section-head i{width:7px;height:7px;border-radius:50%;background:var(--pink);box-shadow:0 0 10px var(--pink)}
.sl-request-list{display:flex;flex-direction:column;gap:7px}.sl-request{display:flex;align-items:center;gap:11px;min-width:0;padding:11px 12px;border-radius:13px;background:rgba(7,5,14,.82);border:1px solid rgba(255,255,255,.09)}.sl-request .avatar{width:38px;height:38px;flex:0 0 auto}.sl-request>div.grow{display:flex;flex-direction:column;min-width:0}.sl-request small{color:var(--cyan);font-size:7px;font-weight:900;letter-spacing:.13em}.sl-request b{margin-top:2px;color:#fff;font-size:11px}.sl-request span{margin-top:2px;color:#7e7489;font-size:8.5px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.sl-request-actions{display:flex;gap:6px;flex:0 0 auto}.sl-request .btn{min-height:34px;padding:7px 11px;font-size:9px}.sl-request.waiting small{color:#b79aff}.sl-request.declined{opacity:.66}.sl-request.declined small{color:#ff87b8}
.sl-next{position:relative;isolation:isolate;overflow:hidden;display:flex;align-items:flex-end;gap:22px;min-height:280px;margin-top:18px;padding:26px;border-radius:25px;background:#080510;border:1px solid rgba(56,189,248,.22);box-shadow:0 25px 70px rgba(0,0,0,.32)}.sl-next::before{content:"";position:absolute;z-index:-2;inset:0;background-image:var(--sl-next-art);background-size:cover;background-position:center 35%;opacity:.5}.sl-next-grade{position:absolute;z-index:-1;inset:0;background:linear-gradient(90deg,rgba(5,3,11,.98),rgba(5,3,11,.8) 55%,rgba(5,3,11,.25)),linear-gradient(0deg,rgba(5,3,11,.9),transparent 65%)}.sl-next-time{align-self:stretch;width:112px;display:flex;flex-direction:column;justify-content:center;padding-right:20px;border-right:1px solid rgba(255,255,255,.11)}.sl-next-time small,.sl-next-copy>small{color:var(--cyan);font-size:8px;font-weight:900;letter-spacing:.16em;text-transform:uppercase}.sl-next-time b{margin-top:8px;color:#fff;font-size:19px;line-height:1.05}.sl-next-time span{margin-top:5px;color:#b7acbf;font-size:11px}.sl-next-copy{min-width:0;flex:1}.sl-next-copy h2{margin:5px 0 4px;color:#fff;font-size:clamp(34px,5vw,54px);line-height:.92;letter-spacing:-.055em}.sl-next-copy p{margin:0;color:#c0b7ca;font-size:13px}.sl-next-copy>div{display:flex;gap:8px;margin-top:18px}.sl-next>.avatar{width:66px;height:66px;flex:0 0 auto;box-shadow:0 0 0 3px rgba(8,5,16,.8),0 0 25px rgba(56,189,248,.18)!important}
.sl-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.sl-card{position:relative;isolation:isolate;overflow:hidden;min-height:225px;display:flex;align-items:flex-end;padding:16px;border-radius:19px;color:#fff;background:#080510;border:1px solid rgba(255,255,255,.1);text-decoration:none}.sl-art{position:absolute;z-index:-2;inset:0;background-image:linear-gradient(0deg,rgba(5,3,11,.98),rgba(5,3,11,.18) 72%),var(--sl-art);background-size:cover;background-position:center;transition:transform .25s ease}.sl-card::after{content:"";position:absolute;z-index:-1;inset:0;background:linear-gradient(135deg,transparent 52%,rgba(168,85,247,.13))}.sl-card:hover .sl-art{transform:scale(1.04)}.sl-date{position:absolute;top:12px;left:12px;min-width:47px;padding:7px 8px;text-align:center;border-radius:11px;background:rgba(6,4,13,.76);border:1px solid rgba(255,255,255,.13);backdrop-filter:blur(10px)}.sl-date b,.sl-date small{display:block}.sl-date b{font-size:14px}.sl-date small{margin-top:1px;color:var(--cyan);font-size:6.5px;font-weight:900;text-transform:uppercase}.sl-card-copy{display:flex;flex-direction:column;min-width:0;padding-bottom:19px}.sl-card-copy small{color:var(--cyan);font-size:7px;font-weight:900;letter-spacing:.14em;text-transform:uppercase}.sl-card-copy b{margin-top:4px;font-size:20px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.sl-card-copy span{margin-top:3px;color:#b8afc2;font-size:9.5px}.sl-card em{position:absolute;left:16px;bottom:13px;color:#fff;font-size:8px;font-style:normal;font-weight:850}.sl-room .sl-date small{color:#ff82c1}.sl-empty{display:flex;align-items:center;gap:15px;margin-top:18px;padding:22px;border-radius:19px;background:rgba(8,5,14,.77);border:1px solid rgba(168,85,247,.22)}.sl-empty>span{width:48px;height:48px;display:grid;place-items:center;flex:0 0 auto;border-radius:14px;color:var(--cyan);background:rgba(56,189,248,.08)}.sl-empty>span svg{width:20px}.sl-empty>div{flex:1}.sl-empty b{color:#fff;font-size:14px}.sl-empty p{margin:4px 0 0;color:#83798f;font-size:10px;line-height:1.45}.sl-foot{display:flex;align-items:center;justify-content:space-between;gap:18px;margin-top:30px;padding:15px 17px;border-radius:15px;background:rgba(255,255,255,.025);border:1px solid rgba(255,255,255,.08)}.sl-foot>div{display:flex;flex-direction:column}.sl-foot b{color:#b8afc3;font-size:9px}.sl-foot span{margin-top:3px;color:#6d6477;font-size:8px}.sl-foot a{color:var(--cyan);font-size:9px;font-weight:850;white-space:nowrap}
/* Friend picker + proposal builder. */
.sp-head,.spp-head{padding:28px 1px 22px}.sp-locked{margin-top:18vh}.schedule-propose .rb-section{background:rgba(8,5,14,.78)}.spp-layout{display:grid;grid-template-columns:minmax(0,1fr) 340px;gap:15px;align-items:start}.spp-form{display:flex;flex-direction:column;gap:11px}.spp-label{display:flex;flex-direction:column;gap:7px;color:#8b8196;font-size:9px;font-weight:850;letter-spacing:.08em;text-transform:uppercase}.spp-label span{font-weight:500;text-transform:none;letter-spacing:0}.spp-label .field{margin:0}.spp-preview{position:sticky;top:82px;padding:16px;border-radius:21px;background:rgba(7,5,13,.94);border:1px solid rgba(168,85,247,.27)}.spp-person{display:flex;align-items:center;gap:11px;padding-bottom:14px;border-bottom:1px solid rgba(255,255,255,.08)}.spp-person>.avatar{width:48px;height:48px}.spp-person>div{display:flex;flex-direction:column;min-width:0}.spp-person small,.spp-plan>span{color:var(--cyan);font-size:7px;font-weight:900;letter-spacing:.14em}.spp-person b{margin-top:2px;color:#fff;font-size:13px}.spp-person span{margin-top:2px;color:#796f85;font-size:8px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.spp-plan{padding:19px 2px}.spp-plan h2{margin:6px 0 15px;color:#fff;font-size:28px;line-height:.95;letter-spacing:-.045em}.spp-plan>div{display:flex;justify-content:space-between;align-items:flex-end;padding:11px;border-radius:12px;background:rgba(255,255,255,.035);border:1px solid rgba(255,255,255,.08)}.spp-plan b{color:#fff;font-size:10px}.spp-plan small{color:#a89db4;font-size:9px}.spp-rule{display:flex;gap:9px;margin-bottom:12px;padding:11px;border-radius:12px;color:#9a8fa6;background:rgba(56,189,248,.055);border:1px solid rgba(56,189,248,.17)}.spp-rule>svg{width:16px;flex:0 0 auto;color:var(--cyan)}.spp-rule>span{display:flex;flex-direction:column}.spp-rule b{color:#c7dce4;font-size:8.5px}.spp-rule small{margin-top:3px;font-size:7.5px;line-height:1.4}
/* Confirmed session detail. */
.sd-hero{position:relative;isolation:isolate;overflow:hidden;min-height:340px;margin:18px 0 12px;padding:26px;display:flex;align-items:flex-end;gap:20px;border-radius:25px;background:#080510;border:1px solid rgba(255,255,255,.11)}.sd-hero::before{content:"";position:absolute;z-index:-2;inset:0;background-image:var(--sd-art);background-size:cover;background-position:center 36%;opacity:.57}.sd-grade{position:absolute;z-index:-1;inset:0;background:linear-gradient(90deg,rgba(5,3,11,.98),rgba(5,3,11,.65) 62%,rgba(5,3,11,.22)),linear-gradient(0deg,rgba(5,3,11,.98),transparent 68%)}.sd-state{position:absolute;top:17px;left:17px;display:flex;align-items:center;gap:6px;padding:7px 9px;border-radius:999px;color:#d8ffed;background:rgba(5,3,11,.72);border:1px solid rgba(255,255,255,.13);backdrop-filter:blur(10px);font-size:7.5px;font-weight:900;letter-spacing:.12em;text-transform:uppercase}.sd-state i{width:6px;height:6px;border-radius:50%;background:var(--mint);box-shadow:0 0 8px var(--mint)}.sd-copy{flex:1;min-width:0}.sd-kicker,.sd-card-kicker{color:var(--cyan);font-size:8px;font-weight:900;letter-spacing:.16em;text-transform:uppercase}.sd-copy h1{margin:5px 0 5px;color:#fff;font-size:clamp(42px,6vw,66px);line-height:.88;letter-spacing:-.06em}.sd-copy p{margin:0;color:#c2b9cb;font-size:12px}.sd-person{display:flex;align-items:center;gap:9px;min-width:220px;padding:11px;border-radius:14px;color:#fff;background:rgba(5,3,11,.7);border:1px solid rgba(255,255,255,.12);backdrop-filter:blur(12px)}.sd-person>.avatar{width:40px;height:40px}.sd-person>span{display:flex;flex-direction:column;min-width:0;flex:1}.sd-person b{font-size:10px}.sd-person small{margin-top:2px;color:#82788e;font-size:7.5px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.sd-person>svg{width:13px}.sd-layout{display:grid;grid-template-columns:minmax(0,1fr) 300px;gap:12px;align-items:start}.sd-main{display:flex;flex-direction:column;gap:12px}.sd-card,.sd-side{padding:20px;border-radius:19px;background:rgba(8,5,14,.8);border:1px solid rgba(255,255,255,.09)}.sd-card h2,.sd-side h2{margin:6px 0 5px;color:#fff;font-size:21px;letter-spacing:-.03em}.sd-help{margin:0 0 15px;color:#81778c;font-size:9px;line-height:1.5}.sd-plan-grid{display:grid;grid-template-columns:repeat(3,1fr);margin:12px 0;border:1px solid rgba(255,255,255,.08);border-radius:13px;overflow:hidden}.sd-plan-grid>div{padding:12px;border-left:1px solid rgba(255,255,255,.08)}.sd-plan-grid>div:first-child{border-left:0}.sd-plan-grid span,.sd-plan-grid b{display:block}.sd-plan-grid span{color:#706679;font-size:7px;font-weight:850;letter-spacing:.12em;text-transform:uppercase}.sd-plan-grid b{margin-top:4px;color:#fff;font-size:10px}.sd-locked,.sd-pending{display:flex;align-items:center;gap:10px;margin-bottom:9px;padding:12px;border-radius:12px;background:rgba(56,189,248,.05);border:1px solid rgba(56,189,248,.16)}.sd-locked>svg{width:18px;flex:0 0 auto;color:var(--cyan)}.sd-locked>span,.sd-pending{display:flex;flex-direction:column}.sd-locked b,.sd-pending b{color:#d4e8ef;font-size:9px}.sd-locked small,.sd-pending span{margin-top:2px;color:#7f758a;font-size:7.5px}.sd-pending{align-items:flex-start}.sd-chips{gap:6px;margin-bottom:9px}.sd-chips .chip{min-height:33px;padding:7px 10px;font-size:9px}.sd-side{position:sticky;top:82px}.sd-side ul{margin:15px 0 22px;padding:0;list-style:none}.sd-side li{position:relative;padding:9px 0 9px 18px;color:#9c91a7;border-top:1px solid rgba(255,255,255,.07);font-size:9px;line-height:1.4}.sd-side li::before{content:"✓";position:absolute;left:0;color:var(--mint)}.sd-side .report-link{width:100%;margin:0;padding-top:13px;border-top:1px solid rgba(255,255,255,.08)}
.sd-change-pending{border-color:rgba(84,218,255,.2);background:linear-gradient(120deg,rgba(34,137,181,.07),rgba(8,5,14,.86))}.sd-change-grid{display:grid;grid-template-columns:1fr 1fr;overflow:hidden;margin:13px 0;border:1px solid rgba(84,218,255,.14);border-radius:12px}.sd-change-grid>span{display:flex;flex-direction:column;padding:12px}.sd-change-grid>span+span{border-left:1px solid rgba(84,218,255,.14)}.sd-change-grid small{color:#668493;font-size:7px;font-weight:900;letter-spacing:.11em}.sd-change-grid b{margin-top:4px;color:#fff;font-size:10px}.sl-request.reschedule{border-color:rgba(84,218,255,.2);background:linear-gradient(100deg,rgba(44,151,194,.055),rgba(255,255,255,.018))}.sl-request.reschedule em{display:block;margin-top:4px;color:#7393a1;font-size:8px;font-style:normal}
@media(max-width:850px){.sl-grid,.sp-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.spp-layout{grid-template-columns:minmax(0,1fr) 300px}.sd-layout{grid-template-columns:minmax(0,1fr) 260px}}
@media(max-width:700px){.schedule-lineup,.schedule-picker,.schedule-propose,.session-detail{padding-inline:14px}.sl-head{align-items:flex-start;padding-top:15px}.sl-head h1,.sp-head h1,.spp-head h1{font-size:44px}.sl-head p,.sp-head p,.spp-head p{font-size:10px}.sl-head>.btn{padding:9px 11px;white-space:nowrap}.sl-next{min-height:300px;padding:17px;align-items:flex-end}.sl-next-time{position:absolute;top:14px;left:14px;width:auto;height:auto;padding:8px 10px;border:1px solid rgba(255,255,255,.12);border-radius:11px;background:rgba(5,3,11,.72)}.sl-next-time small{display:none}.sl-next-time b{margin:0;font-size:11px}.sl-next-time span{margin-top:2px;font-size:8px}.sl-next>.avatar{width:48px;height:48px}.sl-next-copy h2{font-size:36px}.sl-next-copy>div .btn{padding:9px 10px}.sl-grid{display:flex;overflow-x:auto;scroll-snap-type:x mandatory}.sl-card{width:100%}.sl-request{align-items:flex-start;flex-wrap:wrap}.sl-request-actions{width:100%;padding-left:49px}.sl-request-actions .btn{flex:1}.sl-foot{align-items:flex-start}.sp-head,.spp-head{padding-top:15px}.spp-layout{display:flex;flex-direction:column}.spp-form{display:contents}.spp-preview{position:static;order:5;width:100%}.sd-hero{min-height:310px;margin-top:10px;padding:16px;align-items:flex-end}.sd-person{min-width:0;width:48px;padding:4px;border-radius:50%}.sd-person>span,.sd-person>svg{display:none}.sd-person>.avatar{width:38px;height:38px}.sd-layout{display:flex;flex-direction:column}.sd-main{display:contents}.sd-card{padding:16px}.sd-side{position:static;order:4;width:100%}.sd-plan-grid{grid-template-columns:1fr}.sd-plan-grid>div{border-left:0;border-top:1px solid rgba(255,255,255,.08)}.sd-plan-grid>div:first-child{border-top:0}}
@media(max-width:430px){.sl-head{flex-direction:column;gap:14px}.sl-head>.btn{width:100%}.sl-grid{grid-template-columns:1fr}.sl-next-copy>div{flex-direction:column}.sl-next>.avatar{display:none}.sl-empty{flex-direction:column;align-items:flex-start}.sl-empty .btn{width:100%}.sd-copy h1{font-size:39px}}

/* Broadcast builder + private ready check. */
.broadcast-builder,.ready-studio{max-width:1160px;padding-bottom:120px}.bb-head{display:flex;align-items:flex-end;justify-content:space-between;gap:26px;padding:28px 1px 22px;border-bottom:1px solid rgba(255,255,255,.09)}.bb-kicker{color:var(--cyan);font-size:9px;font-weight:900;letter-spacing:.2em;text-transform:uppercase}.bb-head h1,.rs-head h1{margin:7px 0 9px;color:#fff;font-size:clamp(44px,6.5vw,74px);line-height:.84;letter-spacing:-.065em}.bb-head h1 span{color:#ff62b8;text-shadow:0 0 25px rgba(255,45,155,.22)}.bb-head p,.rs-head p{max-width:640px;margin:0;color:#91879d;font-size:13px;line-height:1.55}.bb-head>a{min-width:115px;display:flex;flex-direction:column;align-items:center;padding:13px;border-radius:16px;color:#8f849b;background:rgba(255,255,255,.035);border:1px solid rgba(255,255,255,.1);text-decoration:none}.bb-head>a b{color:#fff;font-size:25px}.bb-head>a span{font-size:7px;font-weight:850;letter-spacing:.1em;text-transform:uppercase}
.bb-layout{display:grid;grid-template-columns:minmax(0,1fr) 350px;gap:15px;align-items:start;margin-top:17px}.bb-main{display:flex;flex-direction:column;gap:11px}.bb-section{padding:21px;border-radius:20px;background:rgba(8,5,14,.8);border:1px solid rgba(255,255,255,.09)}.bb-label{display:flex;flex-direction:column;gap:7px;margin-top:11px;color:#8b8196;font-size:8px;font-weight:850;letter-spacing:.1em;text-transform:uppercase}.bb-label>span{font-weight:500;text-transform:none;letter-spacing:0}.bb-label .field{margin:0}.bb-source-grid{display:grid;grid-template-columns:1fr 1fr;gap:8px}.bb-source-grid>button{display:grid;grid-template-columns:39px 1fr;gap:10px;min-width:0;padding:14px;text-align:left;color:#fff;background:rgba(255,255,255,.025);border:1px solid rgba(255,255,255,.1);border-radius:15px;font:inherit;cursor:pointer}.bb-source-grid>button:hover{border-color:rgba(56,189,248,.42);background:rgba(56,189,248,.055)}.bb-source-grid>button>span{width:39px;height:39px;grid-row:1/3;display:grid;place-items:center;border-radius:11px;color:var(--cyan);background:rgba(56,189,248,.08);border:1px solid rgba(56,189,248,.18)}.bb-source-grid>button>span svg{width:18px}.bb-source-grid>button>div{display:flex;flex-direction:column;min-width:0}.bb-source-grid b{font-size:10px}.bb-source-grid small{margin-top:3px;color:#756b80;font-size:7.5px;line-height:1.4}.bb-source-grid em{grid-column:2;color:#ad9eff;font-size:7.5px;font-style:normal;font-weight:850}.bb-notify{display:flex;gap:9px;margin-top:10px;padding:10px 12px;border-radius:12px;color:#8d8298;background:rgba(168,85,247,.045);border:1px solid rgba(168,85,247,.15)}.bb-notify>svg{width:16px;flex:0 0 auto;color:#c084fc}.bb-notify>span{display:flex;flex-direction:column}.bb-notify b{color:#c9bed3;font-size:8.5px}.bb-notify small{margin-top:2px;font-size:7.5px;line-height:1.4}.bb-chips{gap:6px;margin-bottom:8px}.bb-chips .chip{min-height:33px;padding:7px 10px;font-size:9px}
.bb-preview{position:sticky;top:82px;padding:14px;border-radius:21px;background:rgba(7,5,13,.95);border:1px solid rgba(168,85,247,.27);box-shadow:0 22px 65px rgba(0,0,0,.34)}.bb-preview-top{display:flex;justify-content:space-between;padding:2px 2px 10px;color:#726879;font-size:7px;font-weight:900;letter-spacing:.15em;text-transform:uppercase}.bb-preview-top b{color:#b89fff}.bb-poster{position:relative;isolation:isolate;overflow:hidden;height:285px;border-radius:16px;background:#08050f;border:1px solid rgba(255,255,255,.11)}.bb-poster::before{content:"";position:absolute;z-index:-2;inset:0;background-image:var(--bb-art);background-size:cover;background-position:center}.bb-poster>div{position:absolute;z-index:-1;inset:0;background:linear-gradient(0deg,#05030b 3%,rgba(5,3,11,.15) 76%),linear-gradient(135deg,rgba(56,189,248,.04),rgba(168,85,247,.1))}.bb-poster>span{position:absolute;top:12px;left:12px;display:flex;align-items:center;gap:6px;padding:6px 8px;border-radius:999px;color:#fff;background:rgba(5,3,11,.72);border:1px solid rgba(255,255,255,.13);backdrop-filter:blur(10px);font-size:7px;font-weight:900;letter-spacing:.1em;text-transform:uppercase}.bb-poster>span i,.bb-live-return>span i{width:6px;height:6px;border-radius:50%;background:var(--pink);box-shadow:0 0 9px var(--pink)}.bb-poster>section{position:absolute;left:15px;right:15px;bottom:15px}.bb-poster small{color:var(--cyan);font-size:7px;font-weight:900;letter-spacing:.15em}.bb-poster h2{margin:5px 0 5px;color:#fff;font-size:28px;line-height:.94;letter-spacing:-.045em}.bb-poster p{margin:0;color:#bdb3c7;font-size:8.5px}.bb-preview-rules{margin-top:9px;border:1px solid rgba(255,255,255,.08);border-radius:13px;overflow:hidden}.bb-preview-rules>div{display:flex;justify-content:space-between;gap:8px;padding:9px 10px;border-top:1px solid rgba(255,255,255,.07)}.bb-preview-rules>div:first-child{border-top:0}.bb-preview-rules span{color:#6e6577;font-size:6.5px;font-weight:850;letter-spacing:.1em;text-transform:uppercase}.bb-preview-rules b{color:#bcb2c6;font-size:8px}.bb-preview>p{margin:9px 5px 2px;color:#675e70;font-size:7.5px;line-height:1.45}.bb-live-return{position:relative;isolation:isolate;overflow:hidden;min-height:520px;margin-top:20px;padding:34px;display:flex;flex-direction:column;align-items:flex-start;justify-content:flex-end;border-radius:26px;background:#08050f;border:1px solid rgba(255,45,155,.3)}.bb-live-return::before{content:"";position:absolute;z-index:-2;inset:0;background-image:var(--bb-art);background-size:cover;background-position:center}.bb-live-return>div{position:absolute;z-index:-1;inset:0;background:linear-gradient(0deg,rgba(5,3,11,.98),rgba(5,3,11,.1) 80%)}.bb-live-return>span{display:flex;align-items:center;gap:7px;color:#fff;font-size:8px;font-weight:900;letter-spacing:.15em;text-transform:uppercase}.bb-live-return h1{max-width:720px;margin:9px 0 7px;color:#fff;font-size:clamp(42px,7vw,78px);line-height:.88;letter-spacing:-.06em}.bb-live-return p{margin:0 0 18px;color:#bdb3c8;font-size:11px}
.rs-head{padding:25px 1px 20px}.rs-layout{display:grid;grid-template-columns:minmax(0,1fr) 300px;gap:12px;align-items:start}.rs-stage{position:relative;overflow:hidden;aspect-ratio:16/9;border-radius:22px;background:#05030b;border:1px solid rgba(255,255,255,.12);box-shadow:0 28px 80px rgba(0,0,0,.38)}.rs-stage .stream-video{position:absolute;inset:0;width:100%;height:100%;border-radius:0}.rs-overlay{position:absolute;inset:0;pointer-events:none;background:linear-gradient(0deg,rgba(5,3,11,.65),transparent 43%)}.rs-overlay>span{position:absolute;top:14px;left:14px;display:flex;align-items:center;gap:6px;padding:6px 9px;border-radius:999px;color:#e4dff0;background:rgba(5,3,11,.7);border:1px solid rgba(255,255,255,.15);font-size:7px;font-weight:900;letter-spacing:.12em}.rs-overlay>span i{width:6px;height:6px;border-radius:50%;background:#9b87ff;box-shadow:0 0 8px #9b87ff}.rs-overlay>div{position:absolute;left:17px;right:17px;bottom:15px;display:flex;flex-direction:column}.rs-overlay small{color:var(--cyan);font-size:7px;font-weight:900;letter-spacing:.14em}.rs-overlay b{margin-top:3px;color:#fff;font-size:17px}.rs-panel{padding:16px;border-radius:20px;background:rgba(8,5,14,.9);border:1px solid rgba(168,85,247,.22)}.rs-check{display:flex;gap:10px;padding:12px 3px;border-top:1px solid rgba(255,255,255,.07)}.rs-check:first-child{border-top:0}.rs-check>span{width:26px;height:26px;display:grid;place-items:center;flex:0 0 auto;border-radius:8px;color:var(--cyan);background:rgba(56,189,248,.07);font-size:7px;font-weight:900}.rs-check>div{display:flex;flex-direction:column}.rs-check b{color:#fff;font-size:9px}.rs-check small{margin-top:3px;color:#756b80;font-size:7.5px;line-height:1.4}.rs-panel>.btn{margin-top:9px}.rs-start{min-height:49px}.rs-cancel{display:block;margin-top:10px;text-align:center;color:#746a7e;font-size:8px;font-weight:800}
@media(max-width:850px){.bb-layout{grid-template-columns:minmax(0,1fr) 310px}.rs-layout{grid-template-columns:minmax(0,1fr) 270px}}
@media(max-width:700px){.broadcast-builder,.ready-studio{padding-inline:14px}.bb-head{align-items:flex-start;padding-top:15px}.bb-head h1,.rs-head h1{font-size:44px}.bb-head p,.rs-head p{font-size:10px}.bb-head>a{display:none}.bb-layout{display:flex;flex-direction:column}.bb-main{display:contents}.bb-section{padding:16px}.bb-source-grid{grid-template-columns:1fr}.bb-preview{position:static;order:5;width:100%}.bb-poster{height:300px}.rs-head{padding-top:15px}.rs-layout{display:flex;flex-direction:column}.rs-stage{width:100%;aspect-ratio:4/5}.rs-panel{width:100%}.bb-live-return{min-height:68vh;margin-top:10px;padding:20px}}

/* Deliberate broadcast decisions: validation, review, media gating, and receipts. */
.bb-section.has-error{border-color:rgba(255,67,144,.48);box-shadow:inset 0 0 30px rgba(255,45,155,.045)}.bb-field-error{margin:-7px 2px 13px;color:#ff8fc1;font-size:9px;font-weight:750;line-height:1.45}.broadcast-review-wrap{position:fixed;z-index:240;inset:0;display:grid;place-items:center;padding:18px}.broadcast-review-backdrop{position:absolute;inset:0;background:rgba(2,1,6,.85);border:0;backdrop-filter:blur(12px)}.broadcast-review{position:relative;width:min(100%,560px);padding:30px;border-radius:25px;background:radial-gradient(circle at 90% 0,rgba(168,85,247,.2),transparent 40%),linear-gradient(145deg,#13091d,#07040e);border:1px solid rgba(168,85,247,.4);box-shadow:0 35px 110px rgba(0,0,0,.75)}.broadcast-review h2{margin:8px 0 10px;color:#fff;font-size:42px;line-height:.86;letter-spacing:-.06em}.broadcast-review>p{margin:0;color:#978ba2;font-size:10px;line-height:1.55}.broadcast-review>div:not(.bb-kicker){display:grid;grid-template-columns:1fr 1fr;margin-top:20px;border:1px solid rgba(255,255,255,.09);border-radius:15px;overflow:hidden}.broadcast-review>div>span{display:flex;flex-direction:column;min-width:0;padding:13px;border-left:1px solid rgba(255,255,255,.08);border-top:1px solid rgba(255,255,255,.08)}.broadcast-review>div>span:nth-child(odd){border-left:0}.broadcast-review>div>span:nth-child(-n+2){border-top:0}.broadcast-review small{color:#6e6478;font-size:6.5px;font-weight:900;letter-spacing:.13em}.broadcast-review b{margin-top:4px;color:#fff;font-size:9px;line-height:1.35}.broadcast-review footer{display:grid;grid-template-columns:1fr 1.2fr;gap:8px;margin-top:18px}.broadcast-review.compact>p b{color:#fff}.rs-media-state{display:flex;align-items:center;gap:9px;margin:14px 0 9px;padding:11px;border-radius:13px;background:rgba(56,189,248,.045);border:1px solid rgba(56,189,248,.16)}.rs-media-state>i{width:9px;height:9px;flex:0 0 auto;border-radius:50%;background:#e4b84b;box-shadow:0 0 10px rgba(228,184,75,.5)}.rs-media-state>span{display:flex;flex-direction:column;min-width:0;flex:1}.rs-media-state b{color:#fff;font-size:8px}.rs-media-state small{margin-top:3px;color:#786e83;font-size:6.5px;line-height:1.35}.rs-media-state.ready{background:rgba(52,211,153,.055);border-color:rgba(52,211,153,.22)}.rs-media-state.ready>i{background:var(--mint);box-shadow:0 0 10px var(--mint)}.rs-media-state.error{background:rgba(255,45,155,.055);border-color:rgba(255,45,155,.24)}.rs-media-state.error>i{background:#ff4b9d;box-shadow:0 0 10px #ff4b9d}.rs-media-state>button{padding:6px 8px;flex:0 0 auto;color:#fff;background:rgba(255,255,255,.05);border:1px solid rgba(255,255,255,.12);border-radius:8px;font:inherit;font-size:6.5px;font-weight:900;cursor:pointer}.rs-start:disabled{opacity:.38;filter:saturate(.35);cursor:not-allowed}.rs-wait-error{display:flex;flex-direction:column;gap:6px;max-width:300px;text-align:center}.rs-wait-error b{color:#ff77b5;font-size:10px;letter-spacing:.15em}.rs-wait-error span{color:#8f839a;font-size:8px;line-height:1.45}.lh-broadcast-notice,.broadcast-live-notice{position:relative;display:flex;align-items:center;gap:14px;margin:13px 0;padding:14px 44px 14px 15px;border-radius:16px;background:linear-gradient(120deg,rgba(56,189,248,.08),rgba(168,85,247,.1));border:1px solid rgba(94,192,255,.26)}.lh-broadcast-notice>span{width:38px;height:38px;display:grid;place-items:center;flex:0 0 auto;border-radius:11px;color:var(--cyan);background:rgba(56,189,248,.08)}.lh-broadcast-notice svg{width:17px}.lh-broadcast-notice>div,.broadcast-live-notice>div{display:flex;flex-direction:column;min-width:0}.lh-broadcast-notice small,.broadcast-live-notice>span{color:var(--cyan);font-size:6.5px;font-weight:950;letter-spacing:.15em}.lh-broadcast-notice h2,.broadcast-live-notice h2{margin:3px 0 0;color:#fff;font-size:13px}.lh-broadcast-notice p,.broadcast-live-notice p{margin:3px 0 0;color:#8f849a;font-size:8px;line-height:1.45}.lh-broadcast-notice>button,.broadcast-live-notice>button{position:absolute;top:12px;right:12px;width:28px;height:28px;display:grid;place-items:center;color:#85798f;background:transparent;border:0;cursor:pointer}.lh-broadcast-notice>button svg,.broadcast-live-notice>button svg{width:13px}.lh-broadcast-notice.canceled{background:rgba(255,255,255,.025);border-color:rgba(255,255,255,.1)}.lh-broadcast-notice.canceled>span{color:#91869c;background:rgba(255,255,255,.04)}.broadcast-live-notice{max-width:none;margin:0 0 10px;border-color:rgba(52,211,153,.25);background:linear-gradient(120deg,rgba(52,211,153,.075),rgba(56,189,248,.05))}.broadcast-live-notice>span{display:flex;align-items:center;gap:6px;flex:0 0 auto}.broadcast-live-notice>span i{width:7px;height:7px;border-radius:50%;background:var(--mint);box-shadow:0 0 10px var(--mint)}
@media(max-width:600px){.broadcast-review{padding:24px 17px}.broadcast-review h2{font-size:35px}.broadcast-review footer{grid-template-columns:1fr}.lh-broadcast-notice,.broadcast-live-notice{align-items:flex-start;flex-direction:column}.broadcast-live-notice>span{margin-bottom:-5px}}
@media(max-width:430px){.bb-head h1,.rs-head h1{font-size:39px}.bb-poster{height:255px}.rs-overlay b{font-size:14px}}

/* Live broadcast control room + viewer handoff. */
.br-obs{display:flex;align-items:center;gap:9px;margin-top:10px;padding:10px;border-radius:12px;background:rgba(56,189,248,.045);border:1px solid rgba(56,189,248,.16)}.br-obs>span{color:var(--cyan)}.br-obs>span svg{width:18px}.br-obs>div{display:flex;flex-direction:column;min-width:0;flex:1}.br-obs b{color:#d7edf5;font-size:8.5px}.br-obs small{margin-top:2px;color:#786f82;font-size:7px}.br-obs>button{padding:6px;color:#bcaeff;background:none;border:0;font:inherit;font-size:7px;font-weight:850;cursor:pointer}
.br-chat-empty{padding:20px 8px;text-align:center;color:#756c80;font-size:8px}.br-gone{max-width:620px;margin:15vh auto;padding:35px;text-align:center;border-radius:22px;background:rgba(8,5,14,.88);border:1px solid rgba(168,85,247,.25)}.br-gone>span{width:50px;height:50px;margin:0 auto 14px;display:grid;place-items:center;border-radius:50%;color:var(--cyan);background:rgba(56,189,248,.08)}.br-gone>span svg{width:22px}.br-gone h1{margin:0;color:#fff}.br-gone p{color:#82788e;font-size:10px}.br-gone .btn{margin-top:10px}

@media(max-width:700px){.br-gone{margin-top:10vh;padding:28px 18px}}

/* 2026-07-13 · Watch Room — the live destination is a community room, not a video card. */
.watch-room{max-width:1260px;padding-bottom:120px}.wr-room-head{display:flex;align-items:center;justify-content:space-between;padding:13px 2px 12px}.wr-room-head>div{display:flex;align-items:center;gap:10px}.wr-room-head>div>span{display:flex;align-items:center;gap:7px;color:#fff;font-size:7px;font-weight:950;letter-spacing:.16em}.wr-room-head i{width:7px;height:7px;border-radius:50%;background:var(--pink);box-shadow:0 0 10px var(--pink)}.wr-room-head small{color:#796f83;font-size:8px}.wr-room-head>a{color:#9f92aa;font-size:8px;font-weight:850}.wr-layout{display:grid;grid-template-columns:minmax(0,1fr) 350px;gap:12px;align-items:start}.wr-main{min-width:0;display:flex;flex-direction:column;gap:10px}.wr-stage{position:relative;isolation:isolate;overflow:hidden;aspect-ratio:16/9;border-radius:24px;background:#05030b;border:1px solid rgba(255,255,255,.13);box-shadow:0 30px 90px rgba(0,0,0,.44),0 0 45px rgba(168,85,247,.08)}.wr-stage .stream-video{position:absolute;inset:0;width:100%;height:100%;border:0;border-radius:0}.wr-stage-grade{position:absolute;inset:0;pointer-events:none;background:linear-gradient(0deg,rgba(4,2,9,.96) 0,rgba(4,2,9,.34) 45%,rgba(4,2,9,.2) 100%),linear-gradient(90deg,rgba(5,3,11,.3),transparent 55%)}.wr-stage-top{position:absolute;top:14px;left:14px;right:14px;display:flex;align-items:center;justify-content:space-between}.wr-stage-top span,.wr-stage-top>b{padding:7px 10px;border-radius:999px;color:#fff;background:rgba(5,3,11,.7);border:1px solid rgba(255,255,255,.14);backdrop-filter:blur(12px);font-size:6.5px;font-weight:950;letter-spacing:.13em}.wr-stage-top span{display:flex;align-items:center;gap:6px}.wr-stage-top i{width:6px;height:6px;border-radius:50%;background:var(--pink);box-shadow:0 0 10px var(--pink)}.wr-stage-copy{position:absolute;left:20px;right:20px;bottom:18px}.wr-stage-copy>small{color:var(--cyan);font-size:7px;font-weight:950;letter-spacing:.16em}.wr-stage-copy h1{max-width:820px;margin:4px 0 12px;color:#fff;font-size:clamp(30px,4.2vw,52px);line-height:.89;letter-spacing:-.058em}.wr-stage-copy>div{display:flex;align-items:flex-end;justify-content:space-between;gap:12px}.wr-stage-copy a{display:flex;align-items:center;gap:8px;color:#fff}.wr-stage-copy a>.avatar{width:31px;height:31px}.wr-stage-copy a>span{display:flex;flex-direction:column}.wr-stage-copy a b{font-size:9px}.wr-stage-copy a small{margin-top:2px;color:#8e8299;font-size:7px}.wr-audience{display:flex;align-items:center;gap:9px}.wr-audience>div{display:flex}.wr-audience .avatar{width:26px;height:26px;margin-left:-7px;border:2px solid #07040e}.wr-audience .avatar:first-child{margin-left:0}.wr-audience>span{display:flex;flex-direction:column}.wr-audience b{color:#fff;font-size:8px}.wr-audience small{margin-top:2px;color:#807586;font-size:6.5px}.wr-audience-dot{width:18px;height:18px;border-radius:50%;background:var(--mint);box-shadow:0 0 12px rgba(52,211,153,.5)}
.wr-pulse{display:grid;grid-template-columns:repeat(3,1fr);overflow:hidden;border-radius:14px;background:rgba(8,5,14,.8);border:1px solid rgba(255,255,255,.09)}.wr-pulse>div{padding:11px 13px;border-left:1px solid rgba(255,255,255,.08)}.wr-pulse>div:first-child{border-left:0}.wr-pulse span,.wr-pulse b{display:block}.wr-pulse span{color:#686071;font-size:6px;font-weight:900;letter-spacing:.12em}.wr-pulse b{margin-top:3px;color:#ddd4e6;font-size:8px}.wr-chat{position:sticky;top:78px;height:calc(100dvh - 98px);min-height:530px;display:flex;flex-direction:column;padding:12px;border-radius:20px;background:rgba(8,5,14,.91);border:1px solid rgba(168,85,247,.18);box-shadow:0 22px 65px rgba(0,0,0,.28)}.wr-chat>header{display:flex;align-items:flex-start;justify-content:space-between;padding:4px 4px 11px;border-bottom:1px solid rgba(255,255,255,.08)}.wr-chat>header>div{display:flex;flex-direction:column}.wr-chat>header span{display:flex;align-items:center;gap:6px;color:#fff;font-size:8px;font-weight:950;letter-spacing:.12em}.wr-chat>header i{width:6px;height:6px;border-radius:50%;background:var(--mint);box-shadow:0 0 8px var(--mint)}.wr-chat>header small{margin-top:3px;color:#685f71;font-size:6.5px}.wr-chat>header>b{width:24px;height:24px;display:grid;place-items:center;border-radius:50%;color:#b8adc2;background:rgba(255,255,255,.05);font-size:7px}.wr-chat .stream-chat{flex:1;min-height:0;margin:9px 0;background:transparent;border:0}.wr-chat .stream-composer{margin-top:auto}.wr-viewer-deck,.wr-host-console{padding:16px;border-radius:20px;background:linear-gradient(145deg,rgba(13,8,22,.96),rgba(7,4,13,.96));border:1px solid rgba(255,255,255,.1)}.wr-creator{display:flex;align-items:center;gap:10px}.wr-creator>a{display:flex;align-items:center;gap:10px;min-width:0;flex:1;color:#fff}.wr-creator>a>.avatar{width:49px;height:49px}.wr-creator>a>span{display:flex;flex-direction:column;min-width:0}.wr-creator small{color:var(--cyan);font-size:6px;font-weight:950;letter-spacing:.13em}.wr-creator b{margin-top:3px;font-size:10px}.wr-creator em{margin-top:3px;color:#776d80;font-size:7px;font-style:normal;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.wr-creator>button{padding:8px 11px;border-radius:999px;color:#fff;background:rgba(168,85,247,.12);border:1px solid rgba(168,85,247,.35);font:inherit;font-size:7px;font-weight:900;cursor:pointer}.wr-creator>button.on{color:#caffea;background:rgba(52,211,153,.08);border-color:rgba(52,211,153,.28)}.wr-promise{margin-top:14px;padding-top:12px;border-top:1px solid rgba(255,255,255,.08)}.wr-promise>span{color:#6f6578;font-size:6px;font-weight:950;letter-spacing:.13em}.wr-promise>div{display:flex;flex-wrap:wrap;gap:6px;margin-top:8px}.wr-promise b{display:flex;align-items:center;gap:5px;padding:7px 9px;border-radius:999px;color:#cfc5d8;background:rgba(255,255,255,.035);border:1px solid rgba(255,255,255,.08);font-size:7px}.wr-promise b i{width:5px;height:5px;border-radius:50%;background:var(--cyan)}.wr-after{display:grid;grid-template-columns:minmax(0,1fr) auto auto;gap:7px;align-items:center;margin-top:12px;padding:11px;border-radius:13px;background:rgba(56,189,248,.04);border:1px solid rgba(56,189,248,.13)}.wr-after>div{display:flex;flex-direction:column}.wr-after small{color:var(--cyan);font-size:5.8px;font-weight:950;letter-spacing:.12em}.wr-after b{margin-top:3px;color:#d9d0e1;font-size:7.5px}.wr-after>button,.wr-after>a{display:flex;align-items:center;gap:5px;padding:8px;border-radius:9px;color:#bdb2c7;background:rgba(255,255,255,.035);border:1px solid rgba(255,255,255,.09);font:inherit;font-size:6.5px;font-weight:850;cursor:pointer}.wr-after svg{width:12px;color:var(--cyan)}.wr-hype{display:flex;align-items:center;gap:7px;margin-top:11px;padding-top:11px;border-top:1px solid rgba(255,255,255,.08)}.wr-hype>span{display:grid;grid-template-columns:18px 1fr;min-width:0;flex:1}.wr-hype>span>svg{grid-row:span 2;width:14px;color:var(--pink)}.wr-hype>span b{color:#fff;font-size:8px}.wr-hype>span small{margin-top:2px;color:#6f6578;font-size:6.5px}.wr-hype>button{width:40px;height:36px;display:flex;align-items:center;justify-content:center;gap:3px;border-radius:10px;color:#ffafd2;background:rgba(255,45,155,.07);border:1px solid rgba(255,45,155,.23);font:inherit;cursor:pointer}.wr-hype>button svg{width:10px}.wr-hype>button b{font-size:8px}.wr-report{width:100%;display:flex;align-items:center;justify-content:center;gap:6px;margin-top:11px;padding:9px;border-radius:10px;color:#8a8095;background:rgba(255,255,255,.02);border:1px solid rgba(255,255,255,.07);font:inherit;font-size:7px;font-weight:850;letter-spacing:.04em;cursor:pointer}.wr-report:hover{color:#ff9fc6;border-color:rgba(255,45,155,.28);background:rgba(255,45,155,.05)}.wr-report svg{width:11px}.wr-host-console>header{display:flex;align-items:center;justify-content:space-between}.wr-host-console>header>span{display:flex;align-items:center;gap:7px}.wr-host-console>header i{width:7px;height:7px;border-radius:50%;background:var(--pink);box-shadow:0 0 9px var(--pink)}.wr-host-console>header b{color:#fff;font-size:9px}.wr-host-console>header em{color:#9d91a7;font-size:7px;font-style:normal}.wr-host-console>header small{color:#665d70;font-size:6px;font-weight:900;letter-spacing:.1em}.wr-host-metrics{display:grid;grid-template-columns:repeat(3,1fr);margin-top:12px;border:1px solid rgba(255,255,255,.08);border-radius:13px;overflow:hidden}.wr-host-metrics>div{padding:11px;border-left:1px solid rgba(255,255,255,.08)}.wr-host-metrics>div:first-child{border-left:0}.wr-host-metrics span,.wr-host-metrics b,.wr-host-metrics small{display:block}.wr-host-metrics span{color:#716777;font-size:6px;font-weight:900;letter-spacing:.1em;text-transform:uppercase}.wr-host-metrics b{margin-top:3px;color:#fff;font-size:17px}.wr-host-metrics small{color:#62596a;font-size:6px}.wr-control-dock{display:flex;gap:7px;margin-top:11px}.wr-control-dock>button{min-width:0;min-height:52px;flex:1;display:flex;align-items:center;justify-content:center;gap:6px;padding:8px;border-radius:11px;color:#aba0b5;background:rgba(255,255,255,.03);border:1px solid rgba(255,255,255,.1);font:inherit;cursor:pointer}.wr-control-dock svg{width:15px}.wr-control-dock span{font-size:7px;font-weight:850}.wr-control-dock>button.on{color:#d6ffec;border-color:rgba(52,211,153,.28);background:rgba(52,211,153,.06)}.wr-control-dock>button.end{color:#ff9fc6;border-color:rgba(255,45,155,.28)}.wr-host-console>p{margin:10px 2px 0;color:#6b6273;font-size:7px}.wr-end-wrap{position:fixed;z-index:220;inset:0;display:grid;place-items:center;padding:18px}.wr-end-backdrop{position:absolute;inset:0;background:rgba(2,1,6,.82);border:0;backdrop-filter:blur(10px)}.wr-end-modal{position:relative;width:min(100%,460px);padding:28px;text-align:center;border-radius:24px;background:linear-gradient(150deg,#13091a,#08050e);border:1px solid rgba(255,45,155,.3);box-shadow:0 35px 100px rgba(0,0,0,.7)}.wr-end-modal>span{width:50px;height:50px;margin:0 auto 13px;display:grid;place-items:center;border-radius:50%;color:#ff9ec4;background:rgba(255,45,155,.08);border:1px solid rgba(255,45,155,.2)}.wr-end-modal>span svg{width:21px}.wr-end-modal h2{margin:7px 0 8px;color:#fff;font-size:29px;letter-spacing:-.05em}.wr-end-modal p{max-width:350px;margin:0 auto;color:#8b8095;font-size:9px;line-height:1.5}.wr-end-modal>div:last-child{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-top:18px}.wr-offair{max-width:760px;margin:8vh auto 24px;padding:40px;text-align:center;border-radius:26px;background:radial-gradient(circle at 50% 0,rgba(168,85,247,.13),transparent 50%),rgba(8,5,14,.88);border:1px solid rgba(168,85,247,.2)}.wr-offair-mark{width:max-content;margin:0 auto 15px;display:flex;align-items:center;gap:6px;padding:6px 9px;border-radius:999px;color:#92869d;background:rgba(255,255,255,.04);border:1px solid rgba(255,255,255,.09);font-size:6.5px;font-weight:950;letter-spacing:.14em}.wr-offair-mark i{width:6px;height:6px;border-radius:50%;background:#696070}.wr-offair-icon{width:54px;height:54px;margin:0 auto 14px;display:grid;place-items:center;border-radius:50%;color:var(--cyan);background:rgba(56,189,248,.06);border:1px solid rgba(56,189,248,.14)}.wr-offair-icon svg{width:22px}.wr-offair h1{margin:7px 0;color:#fff;font-size:clamp(38px,6vw,65px);line-height:.87;letter-spacing:-.065em}.wr-offair p{max-width:520px;margin:12px auto 0;color:#8d8298;font-size:10px;line-height:1.55}.wr-offair-actions{display:flex;justify-content:center;gap:8px;margin-top:20px}.wr-next{max-width:980px;margin:0 auto}.wr-next>header{display:flex;align-items:center;justify-content:space-between;margin-bottom:9px;color:#fff;font-size:8px;font-weight:900}.wr-next>header>a{color:#9f92aa}.wr-next>div{display:grid;grid-template-columns:repeat(3,1fr);gap:8px}.wr-next>div>a{position:relative;isolation:isolate;overflow:hidden;min-height:210px;padding:14px;display:flex;flex-direction:column;justify-content:flex-end;border-radius:18px;color:#fff;background-image:linear-gradient(0deg,rgba(5,3,11,.96),rgba(5,3,11,.1)),var(--wr-art);background-size:cover;background-position:center;border:1px solid rgba(255,255,255,.1)}.wr-next>div>a>i{position:absolute;top:12px;left:12px;width:7px;height:7px;border-radius:50%;background:var(--pink);box-shadow:0 0 10px var(--pink)}.wr-next small{color:var(--cyan);font-size:6px;font-weight:950;letter-spacing:.13em}.wr-next b{margin-top:4px;font-size:13px;line-height:1}.wr-next span{margin-top:7px;color:#9b8fa6;font-size:7px}
@media(max-width:980px){.wr-layout{grid-template-columns:minmax(0,1fr) 310px}.wr-room-head small{display:none}.wr-after{grid-template-columns:1fr 1fr}.wr-after>div{grid-column:1/-1}.wr-hype>span small{display:none}}
@media(max-width:700px){.watch-room{padding-inline:12px;overflow-x:hidden}.wr-room-head{padding-top:8px}.wr-layout{display:flex;flex-direction:column}.wr-main,.wr-chat{width:100%}.wr-stage{aspect-ratio:4/5;border-radius:21px}.wr-stage-copy{left:15px;right:15px;bottom:14px}.wr-stage-copy h1{font-size:34px}.wr-stage-copy>div{align-items:flex-start;flex-direction:column}.wr-audience{width:100%;justify-content:space-between}.wr-pulse>div{padding:9px}.wr-pulse b{font-size:7px}.wr-chat{position:static;display:block;height:auto;min-height:0}.wr-chat .stream-chat{height:auto!important;min-height:0!important;max-height:none!important;overflow:visible!important;margin:9px 0 10px}.wr-chat .stream-composer{margin-top:0}.wr-after{grid-template-columns:1fr 1fr}.wr-control-dock{display:grid;grid-template-columns:1fr 1fr}.wr-control-dock>button{min-height:48px}.wr-end-modal{padding:25px 18px}.wr-end-modal>div:last-child{grid-template-columns:1fr}.wr-offair{margin-top:4vh;padding:30px 18px}.wr-offair-actions{flex-direction:column}.wr-next>div{display:flex;flex-direction:column;overflow-x:visible}.wr-next{overflow:hidden}}

/* 2026-07-13 · Live Signals hub — discovery starts with a broadcast, not a billboard. */
.live-signals{max-width:1240px;padding-bottom:130px}.lh-head{display:flex;align-items:flex-end;justify-content:space-between;gap:24px;padding:25px 2px 18px}.lh-kicker{display:flex;align-items:center;gap:7px;color:#96899f;font-size:7px;font-weight:950;letter-spacing:.16em}.lh-kicker i{width:7px;height:7px;border-radius:50%;background:var(--pink);box-shadow:0 0 10px var(--pink)}.lh-head h1{margin:7px 0 6px;color:#fff;font-size:clamp(45px,6vw,70px);line-height:.84;letter-spacing:-.07em}.lh-head p{max-width:580px;margin:0;color:#8a7f94;font-size:11px}.lh-head-actions{display:flex;gap:8px}.lh-head-actions>a{min-width:150px;display:grid;grid-template-columns:32px 1fr;grid-template-rows:auto auto;align-items:center;gap:0 8px;padding:11px 12px;border-radius:14px;color:#fff;background:rgba(9,7,20,.66);border:1px solid rgba(255,255,255,.24);backdrop-filter:blur(22px);-webkit-backdrop-filter:blur(16px)}.lh-head-actions>a>span{grid-row:1/3;width:32px;height:32px;display:grid;place-items:center;border-radius:10px;color:var(--cyan);background:rgba(56,189,248,.07)}.lh-head-actions svg{width:15px}.lh-head-actions b{font-size:8px}.lh-head-actions small{color:#716777;font-size:6.5px}.lh-head-actions .lh-go{border-color:rgba(255,45,155,.25);background:rgba(255,45,155,.055)}.lh-head-actions .lh-go>span{color:#ff9bc4;background:rgba(255,45,155,.1)}.lh-head-actions .lh-go i{width:8px;height:8px;border-radius:50%;background:var(--pink);box-shadow:0 0 10px var(--pink)}.lh-status{display:grid;grid-template-columns:repeat(3,1fr);overflow:hidden;margin-bottom:12px;border-radius:13px;background:rgba(8,5,14,.62);border:1px solid rgba(255,255,255,.15);backdrop-filter:blur(22px);-webkit-backdrop-filter:blur(16px)}.lh-status>span{padding:10px 13px;color:#716777;border-left:1px solid rgba(255,255,255,.08);font-size:7px;font-weight:800}.lh-status>span:first-child{border-left:0}.lh-status b{margin-right:4px;color:#fff;font-size:12px}.lh-discovery{display:flex;flex-direction:column;gap:10px}.lh-filter-row{display:flex;align-items:center;justify-content:space-between;gap:12px}.lh-filter-tabs,.lh-game-tabs{display:flex;gap:5px;overflow-x:auto;scrollbar-width:none}.lh-filter-tabs::-webkit-scrollbar,.lh-game-tabs::-webkit-scrollbar{display:none}.lh-filter-tabs button,.lh-game-tabs button{white-space:nowrap;padding:8px 11px;border-radius:999px;color:#817689;background:transparent;border:1px solid rgba(255,255,255,.08);font:inherit;font-size:7px;font-weight:850;cursor:pointer}.lh-filter-tabs button.on{color:#fff;background:rgba(168,85,247,.12);border-color:rgba(168,85,247,.38);box-shadow:0 0 15px rgba(168,85,247,.1)}.lh-game-tabs button{padding:7px 9px;font-size:6.5px}.lh-game-tabs button.on{color:#d8f5ff;background:rgba(56,189,248,.07);border-color:rgba(56,189,248,.25)}.lh-feature{position:relative;isolation:isolate;overflow:hidden;min-height:430px;border-radius:24px;color:#fff;background:#05030b;border:1px solid rgba(255,255,255,.12);box-shadow:0 30px 90px rgba(0,0,0,.38)}.lh-feature-art{position:absolute;z-index:-3;inset:0;background-image:var(--lh-art);background-size:cover;background-position:center;transition:transform .3s ease}.lh-feature:hover .lh-feature-art{transform:scale(1.025)}.lh-feature-grade{position:absolute;z-index:-2;inset:0;background:linear-gradient(90deg,rgba(4,2,9,.92) 0,rgba(4,2,9,.45) 48%,rgba(4,2,9,.05) 80%),linear-gradient(0deg,rgba(4,2,9,.9),transparent 55%)}.lh-feature-top{position:absolute;top:15px;left:15px;right:15px;display:flex;align-items:center;justify-content:space-between}.lh-feature-top span,.lh-feature-top>b{padding:7px 10px;border-radius:999px;color:#fff;background:rgba(5,3,11,.72);border:1px solid rgba(255,255,255,.14);backdrop-filter:blur(12px);font-size:6.5px;font-weight:950;letter-spacing:.12em}.lh-feature-top span{display:flex;align-items:center;gap:6px}.lh-feature-top i{width:6px;height:6px;border-radius:50%;background:var(--pink);box-shadow:0 0 10px var(--pink)}.lh-feature>section{position:absolute;left:22px;bottom:21px;width:min(68%,760px)}.lh-feature>section>small{color:var(--cyan);font-size:7px;font-weight:950;letter-spacing:.16em}.lh-feature h1{margin:5px 0 13px;color:#fff;font-size:clamp(34px,5vw,62px);line-height:.87;letter-spacing:-.065em}.lh-feature-host{display:flex;align-items:center;gap:8px}.lh-feature-host>.avatar{width:36px;height:36px}.lh-feature-host>span{display:flex;flex-direction:column}.lh-feature-host b{font-size:9px}.lh-feature-host em{margin-top:2px;color:#8e8398;font-size:7px;font-style:normal}.lh-feature>aside{position:absolute;right:17px;bottom:17px;width:230px;padding:13px;border-radius:15px;background:rgba(6,3,11,.75);border:1px solid rgba(255,255,255,.12);backdrop-filter:blur(14px)}.lh-feature>aside>div{display:grid;grid-template-columns:auto 1fr}.lh-feature>aside>div>span{grid-row:1/3;display:flex;margin-right:9px}.lh-feature>aside .avatar{width:24px;height:24px;margin-left:-6px;border:2px solid #0b0712}.lh-feature>aside .avatar:first-child{margin-left:0}.lh-feature>aside b{font-size:8px}.lh-feature>aside small{margin-top:2px;color:#796f82;font-size:6.5px}.lh-feature>aside>strong{display:block;margin-top:11px;padding-top:10px;color:#ff9cc5;border-top:1px solid rgba(255,255,255,.08);font-size:6.5px;letter-spacing:.12em}.lh-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:9px}.lh-card{position:relative;isolation:isolate;overflow:hidden;min-height:290px;border-radius:20px;color:#fff;background:#05030b;border:1px solid rgba(255,255,255,.1)}.lh-card-art{position:absolute;z-index:-2;inset:0;background-image:linear-gradient(0deg,rgba(4,2,9,.96),rgba(4,2,9,.1) 70%),var(--lh-art);background-size:cover;background-position:center;transition:transform .25s ease}.lh-card:hover .lh-card-art{transform:scale(1.035)}.lh-live,.lh-watch{position:absolute;top:12px;padding:6px 8px;border-radius:999px;background:rgba(5,3,11,.72);border:1px solid rgba(255,255,255,.12);font-size:6px;font-weight:900;letter-spacing:.1em}.lh-live{left:12px;display:flex;align-items:center;gap:5px}.lh-live i{width:5px;height:5px;border-radius:50%;background:var(--pink);box-shadow:0 0 8px var(--pink)}.lh-watch{right:12px;color:#d8cedf}.lh-card>section{position:absolute;left:14px;right:14px;bottom:13px}.lh-card>section>small{color:var(--cyan);font-size:6px;font-weight:950;letter-spacing:.13em}.lh-card h2{margin:4px 0 11px;color:#fff;font-size:19px;line-height:.96;letter-spacing:-.04em}.lh-card>section>div{display:flex;align-items:center;gap:7px}.lh-card>section .avatar{width:29px;height:29px}.lh-card>section>div>span{display:flex;flex-direction:column;min-width:0;flex:1}.lh-card>section b{font-size:8px}.lh-card>section em{margin-top:2px;color:#776d80;font-size:6.5px;font-style:normal;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.lh-card strong{color:#ff9ec7;font-size:6.5px;letter-spacing:.06em}.lh-empty{min-height:360px;display:flex;align-items:center;justify-content:center;gap:16px;padding:35px;border-radius:22px;background:radial-gradient(circle at 45% 0,rgba(168,85,247,.1),transparent 50%),rgba(8,5,14,.75);border:1px solid rgba(168,85,247,.16)}.lh-empty>span{width:52px;height:52px;display:grid;place-items:center;flex:0 0 auto;border-radius:50%;color:var(--cyan);background:rgba(56,189,248,.07)}.lh-empty>span svg{width:21px}.lh-empty>div{max-width:460px;flex:1}.lh-empty small{color:#84788e;font-size:6px;font-weight:950;letter-spacing:.14em}.lh-empty h2{margin:5px 0;color:#fff;font-size:25px}.lh-empty p{margin:0;color:#81768a;font-size:9px;line-height:1.45}.lh-upcoming{margin-top:26px;padding-top:21px;border-top:1px solid rgba(255,255,255,.09)}.lh-upcoming>header{display:flex;align-items:flex-end;justify-content:space-between;gap:14px;margin-bottom:12px}.lh-upcoming>header small{color:#85798f;font-size:6px;font-weight:950;letter-spacing:.14em}.lh-upcoming h2{margin:4px 0;color:#fff;font-size:30px;letter-spacing:-.05em}.lh-upcoming>header p{margin:0;color:#776d80;font-size:8px}.lh-upcoming>header>button{display:flex;align-items:center;gap:8px;padding:10px 12px;border-radius:12px;color:#d8d0e0;background:rgba(255,255,255,.03);border:1px solid rgba(255,255,255,.1);font:inherit;text-align:left;cursor:pointer}.lh-upcoming>header>button>svg{width:16px;color:var(--cyan)}.lh-upcoming>header>button span{display:flex;flex-direction:column}.lh-upcoming>header>button b{font-size:8px}.lh-upcoming>header>button small{margin-top:2px;color:#706678;font-size:6px;letter-spacing:0}.lh-plan-list{display:flex;flex-direction:column;gap:7px}.lh-plan{position:relative;isolation:isolate;overflow:hidden;min-height:82px;display:grid;grid-template-columns:62px minmax(0,1fr) auto;align-items:center;gap:12px;padding:10px 12px;border-radius:14px;background:rgba(8,5,14,.82);border:1px solid rgba(255,255,255,.08)}.lh-plan-art{position:absolute;z-index:-2;inset:0;background-image:linear-gradient(90deg,rgba(7,4,13,.96) 0,rgba(7,4,13,.91) 58%,rgba(7,4,13,.78)),var(--lh-art);background-size:cover;background-position:center}.lh-plan-date{width:54px;height:54px;display:flex;flex-direction:column;align-items:center;justify-content:center;border-radius:12px;background:rgba(255,255,255,.04);border:1px solid rgba(255,255,255,.09)}.lh-plan-date b{color:#fff;font-size:15px}.lh-plan-date small{margin-top:2px;color:#8a7e93;font-size:6px;font-weight:900;letter-spacing:.09em}.lh-plan>section{min-width:0}.lh-plan>section>small{color:var(--cyan);font-size:6px;font-weight:950;letter-spacing:.12em}.lh-plan h3{margin:3px 0;color:#fff;font-size:12px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.lh-plan p{margin:0;color:#81768a;font-size:7px}.lh-remind,.lh-plan-actions button{display:flex;align-items:center;justify-content:center;gap:5px;padding:9px 11px;border-radius:10px;color:#c7bccf;background:rgba(255,255,255,.035);border:1px solid rgba(255,255,255,.1);font:inherit;font-size:7px;font-weight:850;cursor:pointer}.lh-remind svg,.lh-plan-actions svg{width:13px}.lh-remind.on{color:#d3ffea;background:rgba(52,211,153,.07);border-color:rgba(52,211,153,.24)}.lh-plan-actions{display:flex;gap:5px}.lh-plan-actions button:first-child{color:#fff;background:linear-gradient(135deg,#ff2d9b,#9f4cf2);border:0}.lh-plan-actions button:last-child{width:35px;padding:8px}.lh-upcoming-empty{display:flex;align-items:center;justify-content:space-between;padding:18px;border-radius:14px;color:#84798e;background:rgba(255,255,255,.02);border:1px dashed rgba(255,255,255,.1);font-size:8px}.lh-upcoming-empty button{color:var(--cyan);background:none;border:0;font:inherit;font-weight:850;cursor:pointer}
.schedule-focus{scroll-margin-top:78px;animation:scheduleGlow 1.4s ease both}@keyframes scheduleGlow{0%,100%{box-shadow:none}35%{box-shadow:0 0 0 1px rgba(56,189,248,.35),0 0 34px rgba(56,189,248,.16)}}

/* 2026-07-13 · Invite command — show the sender and recipient journeys together. */
.invite-command{max-width:1160px;padding-bottom:130px}.iv-head{display:flex;align-items:flex-end;justify-content:space-between;gap:26px;padding:30px 2px 22px;border-bottom:1px solid rgba(255,255,255,.09)}.iv-kicker{color:#9b8da4;font-size:7px;font-weight:950;letter-spacing:.16em}.iv-head h1{margin:8px 0 9px;color:#fff;font-size:clamp(46px,7vw,78px);line-height:.82;letter-spacing:-.075em}.iv-head h1 span{color:transparent;-webkit-text-stroke:1px rgba(255,255,255,.48);text-shadow:0 0 28px rgba(168,85,247,.2)}.iv-head p{max-width:620px;margin:0;color:#8e8298;font-size:11px;line-height:1.55}.iv-head>aside{display:grid;grid-template-columns:repeat(3,1fr);min-width:410px;overflow:hidden;border-radius:15px;background:rgba(8,5,14,.76);border:1px solid rgba(255,255,255,.09)}.iv-head>aside>div{display:grid;grid-template-columns:25px 1fr;grid-template-rows:auto auto;align-items:center;padding:12px;border-left:1px solid rgba(255,255,255,.08)}.iv-head>aside>div:first-child{border-left:0}.iv-head>aside span{grid-row:1/3;color:var(--cyan)}.iv-head>aside svg{width:16px}.iv-head>aside b{color:#fff;font-size:17px}.iv-head>aside small{color:#746a7e;font-size:6px}.iv-layout{display:grid;grid-template-columns:minmax(0,1fr) 330px;gap:12px;align-items:start;margin-top:14px}.iv-main{display:flex;flex-direction:column;gap:11px;min-width:0}.iv-send,.iv-how,.iv-preview,.iv-activity{padding:17px;border-radius:20px;background:rgba(8,5,14,.88);border:1px solid rgba(255,255,255,.09)}.iv-send>header,.iv-how>header{display:flex;flex-direction:column}.iv-send>header small,.iv-how>header small,.iv-activity>header small{color:#85798f;font-size:6px;font-weight:950;letter-spacing:.14em}.iv-send>header b,.iv-how>header b{margin-top:3px;color:#fff;font-size:13px}.iv-link{display:flex;align-items:center;gap:10px;margin-top:13px;padding:10px 10px 10px 13px;border-radius:13px;background:rgba(255,255,255,.035);border:1px solid rgba(168,85,247,.22);transition:.2s ease}.iv-link.done{border-color:rgba(52,211,153,.3);box-shadow:0 0 24px rgba(52,211,153,.07)}.iv-link>span{display:flex;flex-direction:column;min-width:0;flex:1}.iv-link small{color:#766c80;font-size:5.5px;font-weight:900;letter-spacing:.12em}.iv-link b{margin-top:3px;color:#e3dbe9;font-size:9px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.iv-link>button{display:flex;align-items:center;gap:5px;padding:9px 11px;border-radius:9px;color:#fff;background:linear-gradient(135deg,#ff2d9b,#9f4cf2);border:0;font:inherit;font-size:6.5px;font-weight:950;letter-spacing:.06em;cursor:pointer}.iv-link>button svg{width:13px}.iv-link.done>button{color:#d5ffea;background:rgba(52,211,153,.1);border:1px solid rgba(52,211,153,.26)}.iv-actions{display:grid;grid-template-columns:1fr 1fr;gap:7px;margin-top:8px}.iv-actions>button{display:flex;align-items:center;gap:9px;padding:11px;border-radius:12px;color:#ccc1d4;background:rgba(255,255,255,.025);border:1px solid rgba(255,255,255,.09);font:inherit;text-align:left;cursor:pointer}.iv-actions>button>span:first-child{width:31px;height:31px;display:grid;place-items:center;flex:0 0 auto;border-radius:9px;color:var(--cyan);background:rgba(56,189,248,.06)}.iv-actions svg{width:15px}.iv-actions>button>span:last-child{display:flex;flex-direction:column}.iv-actions b{font-size:8px}.iv-actions small{margin-top:2px;color:#746a7d;font-size:6.5px}.iv-actions>button.done{color:#d8ffed;border-color:rgba(52,211,153,.26);background:rgba(52,211,153,.055)}.iv-actions>button.done>span:first-child{color:#a8ffd3;background:rgba(52,211,153,.08)}.iv-state{max-height:0;overflow:hidden;color:#9e92a8;font-size:7px;opacity:0;transition:.25s ease}.iv-state.show{max-height:45px;margin-top:9px;padding:8px 10px;border-radius:9px;opacity:1;background:rgba(52,211,153,.045);border:1px solid rgba(52,211,153,.13)}.iv-how>div{display:grid;grid-template-columns:repeat(3,1fr);gap:7px;margin-top:12px}.iv-how article{display:flex;gap:8px;padding:11px;border-radius:12px;background:rgba(255,255,255,.025);border:1px solid rgba(255,255,255,.07)}.iv-how article>span{width:25px;height:25px;display:grid;place-items:center;flex:0 0 auto;border-radius:8px;color:var(--cyan);background:rgba(56,189,248,.06);font-size:6px;font-weight:950}.iv-how article div{display:flex;flex-direction:column}.iv-how article b{color:#ded5e5;font-size:7.5px}.iv-how article p{margin:3px 0 0;color:#776d80;font-size:6.5px;line-height:1.4}.iv-preview{position:sticky;top:78px;padding:12px;background:linear-gradient(150deg,rgba(16,8,24,.96),rgba(7,4,13,.96));border-color:rgba(168,85,247,.2)}.iv-preview-top{display:flex;align-items:center;justify-content:space-between;padding:3px 3px 10px;color:#8a7e93;font-size:6px;font-weight:950;letter-spacing:.12em}.iv-preview-top b{color:#9fffd0}.iv-phone{position:relative;isolation:isolate;overflow:hidden;min-height:480px;padding:19px;display:flex;flex-direction:column;justify-content:flex-end;border-radius:18px;background:radial-gradient(circle at 50% 12%,rgba(255,45,155,.2),transparent 35%),linear-gradient(160deg,#17071d,#07040d 70%);border:1px solid rgba(255,255,255,.11)}.iv-phone::before{content:"";position:absolute;z-index:-2;inset:0;background-image:linear-gradient(rgba(168,85,247,.04) 1px,transparent 1px),linear-gradient(90deg,rgba(168,85,247,.04) 1px,transparent 1px);background-size:28px 28px;mask-image:linear-gradient(#000,transparent 72%)}.iv-phone::after{content:"OGC";position:absolute;z-index:-1;top:58px;left:50%;transform:translateX(-50%);color:transparent;-webkit-text-stroke:1px rgba(255,255,255,.06);font-size:92px;font-weight:950;letter-spacing:-.08em}.iv-brand{position:absolute;top:15px;left:15px;color:#a99ab3;font-size:5.5px;font-weight:950;letter-spacing:.16em}.iv-inviter{display:grid;grid-template-columns:43px 1fr;grid-template-rows:auto auto auto;align-items:center;margin-bottom:17px}.iv-inviter>.avatar{grid-row:1/4;width:38px;height:38px}.iv-inviter small{color:var(--cyan);font-size:5.5px;font-weight:950;letter-spacing:.11em}.iv-inviter b{color:#fff;font-size:9px}.iv-inviter em{color:#7d7187;font-size:6.5px;font-style:normal}.iv-phone h2{margin:0;color:#fff;font-size:31px;line-height:.85;letter-spacing:-.06em}.iv-phone p{margin:10px 0;color:#94879e;font-size:8px;line-height:1.45}.iv-phone-cta{padding:12px;text-align:center;border-radius:11px;color:#fff;background:linear-gradient(135deg,#ff2d9b,#9f4cf2);font-size:7px;font-weight:950;letter-spacing:.1em}.iv-preview-note{display:flex;align-items:center;gap:8px;padding:11px 4px 2px}.iv-preview-note>svg{width:17px;color:var(--cyan)}.iv-preview-note>span{display:flex;flex-direction:column}.iv-preview-note b{color:#d5cddd;font-size:7px}.iv-preview-note small{margin-top:2px;color:#746a7e;font-size:6.3px;line-height:1.35}.iv-activity{margin-top:12px}.iv-activity>header{display:flex;align-items:flex-end;justify-content:space-between;margin-bottom:11px}.iv-activity h2{margin:4px 0 0;color:#fff;font-size:27px;letter-spacing:-.05em}.iv-activity>header>span{padding:7px 9px;border-radius:999px;color:#8d8296;background:rgba(255,255,255,.035);border:1px solid rgba(255,255,255,.08);font-size:6.5px}.iv-activity>header>span b{color:#fff}.iv-people{display:grid;grid-template-columns:repeat(3,1fr);gap:7px}.iv-person{min-width:0;display:grid;grid-template-columns:39px 1fr auto;align-items:center;gap:8px;padding:11px;border-radius:12px;color:#fff;background:rgba(255,255,255,.025);border:1px solid rgba(255,255,255,.08)}.iv-person>.avatar{width:36px;height:36px}.iv-person>span{display:flex;flex-direction:column;min-width:0}.iv-person small{color:#756b7f;font-size:5px;font-weight:950;letter-spacing:.08em;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.iv-person b{margin-top:2px;font-size:8px}.iv-person em{margin-top:2px;color:#756b7f;font-size:6px;font-style:normal;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.iv-person>strong{display:flex;align-items:center;gap:4px;color:#8c8195;font-size:6px;font-weight:850}.iv-person>strong i{width:5px;height:5px;border-radius:50%;background:#6d6375}.iv-person>strong.on{color:#bfffe0}.iv-person>strong.on i{background:var(--mint);box-shadow:0 0 7px var(--mint)}.iv-empty{display:flex;align-items:center;gap:11px;padding:17px;border-radius:13px;background:rgba(255,255,255,.02);border:1px dashed rgba(255,255,255,.11)}.iv-empty>span{width:38px;height:38px;display:grid;place-items:center;border-radius:11px;color:var(--cyan);background:rgba(56,189,248,.06)}.iv-empty svg{width:17px}.iv-empty>div{min-width:0;flex:1}.iv-empty b{color:#fff;font-size:8px}.iv-empty p{margin:3px 0 0;color:#786d81;font-size:7px}.iv-empty button{padding:9px 11px;border-radius:9px;color:#fff;background:rgba(168,85,247,.12);border:1px solid rgba(168,85,247,.28);font:inherit;font-size:7px;font-weight:850;cursor:pointer}
@media(max-width:900px){.iv-head{align-items:flex-start;flex-direction:column}.iv-head>aside{width:100%;min-width:0}.iv-layout{grid-template-columns:minmax(0,1fr) 290px}.iv-how>div{grid-template-columns:1fr}.iv-people{grid-template-columns:1fr 1fr}}
@media(max-width:650px){.invite-command{padding-inline:12px;overflow-x:hidden}.iv-head{padding-top:17px}.iv-head h1{font-size:51px}.iv-head p{font-size:9px}.iv-head>aside>div{grid-template-columns:1fr;padding:9px;text-align:center}.iv-head>aside span{display:none}.iv-head>aside b{font-size:14px}.iv-layout{display:flex;flex-direction:column}.iv-main,.iv-preview{width:100%}.iv-preview{position:static;order:-1}.iv-phone{min-height:430px}.iv-send,.iv-how,.iv-preview,.iv-activity{padding:12px}.iv-link{align-items:stretch;flex-direction:column}.iv-link>button{justify-content:center;min-height:40px}.iv-actions{grid-template-columns:1fr}.iv-activity>header{align-items:flex-start;flex-direction:column;gap:9px}.iv-people{grid-template-columns:1fr}.iv-empty{align-items:flex-start;flex-direction:column}.iv-empty button{width:100%}}

/* The other side of Invite Friends: the real public /join/:code destination. */
body:has(.ref-entry){background:#05030a!important}.ref-entry{position:relative;isolation:isolate;overflow:hidden;min-height:100dvh;padding:22px clamp(20px,5vw,72px);display:flex;flex-direction:column;background:radial-gradient(circle at 78% 20%,rgba(168,85,247,.17),transparent 34%),radial-gradient(circle at 12% 85%,rgba(56,189,248,.11),transparent 35%),#05030a;color:#fff}.ref-entry-grid{position:absolute;z-index:-3;inset:0;background-image:linear-gradient(rgba(168,85,247,.035) 1px,transparent 1px),linear-gradient(90deg,rgba(168,85,247,.035) 1px,transparent 1px);background-size:42px 42px;mask-image:radial-gradient(circle at 50% 50%,#000,transparent 78%)}.ref-entry::after{content:"OGC";position:absolute;z-index:-2;right:-.06em;bottom:-.3em;color:transparent;-webkit-text-stroke:1px rgba(255,255,255,.025);font-size:min(38vw,520px);font-weight:950;letter-spacing:-.1em}.ref-entry>header{display:flex;align-items:center;justify-content:space-between}.ref-entry>header img{width:150px;filter:drop-shadow(0 0 13px rgba(56,189,248,.2))}.ref-entry>header span{color:#94879f;font-size:7px;font-weight:950;letter-spacing:.17em}.ref-entry-main{width:min(1250px,100%);margin:auto;display:grid;grid-template-columns:minmax(0,1fr) minmax(360px,.8fr);gap:clamp(34px,7vw,100px);align-items:center}.ref-entry-copy{max-width:700px}.ref-inviter{display:grid;grid-template-columns:51px 1fr;grid-template-rows:auto auto auto;align-items:center;margin-bottom:20px}.ref-inviter>.avatar{grid-row:1/4;width:44px;height:44px}.ref-inviter span{display:flex;flex-direction:column}.ref-inviter small{color:var(--cyan);font-size:6px;font-weight:950;letter-spacing:.14em}.ref-inviter b{margin-top:2px;font-size:10px}.ref-inviter em{margin-top:2px;color:#7f7488;font-size:7px;font-style:normal}.ref-entry-copy h1{margin:0;color:#fff;font-size:clamp(54px,7.4vw,105px);line-height:.8;letter-spacing:-.08em}.ref-entry-copy h1 span{color:transparent;-webkit-text-stroke:1px rgba(255,255,255,.52);text-shadow:0 0 35px rgba(255,45,155,.15)}.ref-entry-copy>p{max-width:650px;margin:20px 0;color:#9b8ea5;font-size:12px;line-height:1.6}.ref-benefits{display:grid;grid-template-columns:repeat(3,1fr);overflow:hidden;border-radius:14px;background:rgba(255,255,255,.025);border:1px solid rgba(255,255,255,.09)}.ref-benefits>span{display:grid;grid-template-columns:22px 1fr;grid-template-rows:auto auto;align-items:center;padding:11px;border-left:1px solid rgba(255,255,255,.08)}.ref-benefits>span:first-child{border-left:0}.ref-benefits svg{grid-row:1/3;width:14px;color:var(--cyan)}.ref-benefits b{font-size:7.5px}.ref-benefits small{margin-top:2px;color:#706678;font-size:6px}.ref-enter{max-width:430px;margin-top:14px;display:flex;align-items:center;justify-content:space-between;padding:14px 16px;border-radius:12px;color:#fff;background:linear-gradient(135deg,#ff2d9b,#9149ec);box-shadow:0 12px 38px rgba(255,45,155,.2)}.ref-enter b{font-size:8px;letter-spacing:.1em}.ref-enter small{color:rgba(255,255,255,.72);font-size:7px}.ref-login{display:block;width:max-content;margin:11px 0 0;color:#867a90;font-size:7px}.ref-scene{position:relative;min-height:570px}.ref-scene-orbit{position:absolute;inset:8%;border-radius:50%;border:1px solid rgba(168,85,247,.19);box-shadow:inset 0 0 70px rgba(168,85,247,.05),0 0 90px rgba(56,189,248,.04)}.ref-scene-orbit::before,.ref-scene-orbit::after{content:"";position:absolute;border-radius:50%;border:1px solid rgba(255,255,255,.05)}.ref-scene-orbit::before{inset:14%}.ref-scene-orbit::after{inset:30%}.ref-scene-orbit>span{position:absolute;inset:43%;border-radius:50%;background:linear-gradient(135deg,var(--pink),#724cff);box-shadow:0 0 55px rgba(168,85,247,.6)}.ref-scene-orbit>i{position:absolute;inset:0;border-radius:50%;background:conic-gradient(from 20deg,transparent,rgba(56,189,248,.16),transparent 25%,rgba(255,45,155,.16),transparent 55%);animation:refOrbit 16s linear infinite}@keyframes refOrbit{to{transform:rotate(1turn)}}.ref-card{position:absolute;padding:14px;border-radius:16px;background:rgba(10,6,17,.78);border:1px solid rgba(255,255,255,.12);box-shadow:0 24px 70px rgba(0,0,0,.4);backdrop-filter:blur(15px)}.ref-card small{display:block;color:var(--cyan);font-size:5.5px;font-weight:950;letter-spacing:.13em}.ref-card b{display:block;margin-top:5px;color:#fff;font-size:14px}.ref-card>span{display:block;margin-top:3px;color:#7f7389;font-size:7px}.ref-card-one{top:10%;left:0;width:210px}.ref-card-two{top:36%;right:0;width:220px;display:grid;grid-template-columns:39px 1fr;grid-template-rows:auto auto auto}.ref-card-two>.avatar{grid-row:1/4;width:34px;height:34px}.ref-card-two small,.ref-card-two b,.ref-card-two>span{grid-column:2}.ref-card-two b{font-size:10px}.ref-card-three{left:8%;bottom:9%;width:230px}.ref-card-three b{font-size:19px;line-height:.9;letter-spacing:-.04em}.ref-entry>footer{display:flex;align-items:center;justify-content:space-between;color:#655c6d;font-size:6px;font-weight:850;letter-spacing:.13em}.ref-entry>footer b{color:#8f8399}
@media(max-width:850px){.ref-entry-main{grid-template-columns:1fr}.ref-scene{display:none}.ref-entry-copy{margin:auto}.ref-entry-copy h1{font-size:clamp(58px,12vw,90px)}}
@media(max-width:600px){.ref-entry{padding:18px 16px 24px}.ref-entry>header img{width:120px}.ref-entry>header span{font-size:5.5px}.ref-entry-main{margin:9vh auto 5vh}.ref-inviter{margin-bottom:17px}.ref-entry-copy h1{font-size:54px}.ref-entry-copy>p{margin:17px 0;font-size:10px}.ref-benefits{grid-template-columns:1fr}.ref-benefits>span{border-left:0;border-top:1px solid rgba(255,255,255,.08)}.ref-benefits>span:first-child{border-top:0}.ref-enter{max-width:none}.ref-entry>footer{align-items:flex-start;flex-direction:column;gap:4px}}
@media(max-width:900px){.lh-head{align-items:flex-start;flex-direction:column}.lh-head-actions{width:100%}.lh-head-actions>a{flex:1}.lh-grid{grid-template-columns:1fr 1fr}.lh-filter-row{align-items:flex-start;flex-direction:column}.lh-game-tabs{width:100%}.lh-feature>section{width:calc(100% - 44px);padding-right:220px}.lh-feature>aside{width:205px}}
@media(max-width:640px){.live-signals{padding-inline:12px;overflow-x:hidden}.lh-head{padding-top:16px;gap:16px}.lh-head h1{font-size:48px}.lh-head p{font-size:9px}.lh-head-actions>a{min-width:0;padding:9px}.lh-head-actions>a>span{width:29px;height:29px}.lh-status{grid-template-columns:1fr 1fr}.lh-status>span:nth-child(2){display:none}.lh-filter-tabs,.lh-game-tabs{width:100%}.lh-feature{min-height:510px}.lh-feature-grade{background:linear-gradient(0deg,rgba(4,2,9,.97),rgba(4,2,9,.12) 75%)}.lh-feature>section{left:16px;right:16px;bottom:108px;width:auto;padding:0}.lh-feature h1{font-size:38px}.lh-feature>aside{left:14px;right:14px;bottom:14px;width:auto}.lh-grid{grid-template-columns:1fr}.lh-grid::-webkit-scrollbar{display:none}.lh-empty{align-items:flex-start;flex-direction:column;padding:25px 18px}.lh-empty .btn{width:100%}.lh-upcoming>header{align-items:flex-start;flex-direction:column}.lh-upcoming>header>button{width:100%}.lh-plan{grid-template-columns:53px minmax(0,1fr);gap:9px;padding:9px}.lh-plan-date{width:48px;height:48px}.lh-remind,.lh-plan-actions{grid-column:1/-1;width:100%}.lh-remind{min-height:38px}.lh-plan-actions button:first-child{flex:1}.lh-plan h3{font-size:11px}}

/* Broadcast history + end recap. */
.broadcast-history{max-width:1160px;padding-bottom:120px}.bh-head{display:flex;align-items:flex-end;justify-content:space-between;gap:20px;padding:28px 1px 20px;border-bottom:1px solid rgba(255,255,255,.09)}.bh-head h1{margin:7px 0 8px;color:#fff;font-size:clamp(44px,6.5vw,72px);line-height:.86;letter-spacing:-.065em}.bh-head p{max-width:620px;margin:0;color:#8f849a;font-size:12px;line-height:1.5}.bh-head>a{white-space:nowrap}.bh-head>a i{width:7px;height:7px;border-radius:50%;background:var(--pink);box-shadow:0 0 9px var(--pink)}.bh-metrics{display:grid;grid-template-columns:repeat(4,1fr);margin:15px 0 20px;border:1px solid rgba(255,255,255,.09);border-radius:15px;overflow:hidden;background:rgba(8,5,14,.68)}.bh-metrics>div{padding:14px;border-left:1px solid rgba(255,255,255,.08)}.bh-metrics>div:first-child{border-left:0}.bh-metrics span,.bh-metrics b{display:block}.bh-metrics span{color:#6d6476;font-size:7px;font-weight:850;letter-spacing:.11em;text-transform:uppercase}.bh-metrics b{margin-top:5px;color:#fff;font-size:22px}.bh-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.bh-card{position:relative;isolation:isolate;overflow:hidden;min-height:285px;border-radius:20px;background:#07040e;border:1px solid rgba(255,255,255,.1)}.bh-card.latest{grid-column:span 2}.bh-art{position:absolute;z-index:-2;inset:0;background-image:linear-gradient(0deg,#05030b 2%,rgba(5,3,11,.1) 78%),var(--bh-art);background-size:cover;background-position:center;transition:transform .25s ease}.bh-card:hover .bh-art{transform:scale(1.035)}.bh-card::after{content:"";position:absolute;z-index:-1;inset:0;background:linear-gradient(135deg,transparent 55%,rgba(168,85,247,.12))}.bh-card>span{position:absolute;top:12px;left:12px;padding:6px 8px;border-radius:999px;color:#ffb1d4;background:rgba(5,3,11,.72);border:1px solid rgba(255,45,155,.22);font-size:6.5px;font-weight:900;letter-spacing:.12em}.bh-card>section{position:absolute;left:15px;right:15px;bottom:14px}.bh-card small{color:var(--cyan);font-size:7px;font-weight:900;letter-spacing:.14em}.bh-card h2{margin:4px 0 11px;color:#fff;font-size:21px;line-height:.96;letter-spacing:-.04em}.bh-card>section>div{display:grid;grid-template-columns:repeat(4,auto 1fr);gap:2px 4px;align-items:end}.bh-card>section b{color:#fff;font-size:9px}.bh-card>section em{color:#716779;font-size:6.5px;font-style:normal}.stream-recap{text-align:center}.stream-recap .sr-mark{width:max-content;margin:0 auto 13px;display:flex;align-items:center;gap:6px;padding:6px 9px;border-radius:999px;color:#9e93a8;background:rgba(255,255,255,.04);border:1px solid rgba(255,255,255,.1);font-size:7px;font-weight:900;letter-spacing:.12em}.sr-mark i{width:6px;height:6px;border-radius:50%;background:#6f6678}.stream-recap h1{margin:7px 0 5px;color:#fff;font-size:35px;line-height:.9;letter-spacing:-.055em}.stream-recap>p{margin:0;color:#8e8399;font-size:9px}.sr-stats{display:grid;grid-template-columns:repeat(4,1fr);margin:18px 0 11px;border:1px solid rgba(255,255,255,.09);border-radius:13px;overflow:hidden}.sr-stats>div{padding:12px 6px;border-left:1px solid rgba(255,255,255,.08)}.sr-stats>div:first-child{border-left:0}.sr-stats b,.sr-stats span{display:block}.sr-stats b{color:#fff;font-size:17px}.sr-stats span{margin-top:3px;color:#6f6678;font-size:6.5px;text-transform:uppercase}.sr-note{margin-bottom:11px;padding:9px;border-radius:10px;color:#91869c;background:rgba(56,189,248,.045);border:1px solid rgba(56,189,248,.13);font-size:7.5px}
@media(max-width:800px){.bh-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:700px){.broadcast-history{padding-inline:14px}.bh-head{padding-top:15px}.bh-head h1{font-size:43px}.bh-head p{font-size:10px}.bh-metrics{grid-template-columns:1fr 1fr}.bh-metrics>div:nth-child(3){border-left:0;border-top:1px solid rgba(255,255,255,.08)}.bh-metrics>div:nth-child(4){border-top:1px solid rgba(255,255,255,.08)}.bh-grid{display:flex;flex-direction:column;overflow-x:visible}.bh-card,.bh-card.latest{grid-column:auto}.sr-stats{grid-template-columns:1fr 1fr}.sr-stats>div:nth-child(3){border-left:0;border-top:1px solid rgba(255,255,255,.08)}.sr-stats>div:nth-child(4){border-top:1px solid rgba(255,255,255,.08)}}
@media(max-width:430px){.bh-head{flex-direction:column;align-items:flex-start}.bh-head>a{width:100%}.bh-card,.bh-card.latest{min-width:84vw}}

/* Open Comms — decisions first, then conversations, then durable crews. */
.open-comms{max-width:1180px;padding-bottom:120px}.oc-hero{display:flex;align-items:flex-end;justify-content:space-between;gap:28px;padding:28px 2px 22px;border-bottom:1px solid rgba(255,255,255,.09)}.oc-hero h1{max-width:760px;margin:7px 0 8px;color:#fff;font-size:clamp(41px,6vw,70px);line-height:.88;letter-spacing:-.064em}.oc-hero p{max-width:660px;margin:0;color:#958b9f;font-size:13px;line-height:1.5}.oc-meter{display:grid;grid-template-columns:repeat(3,minmax(108px,1fr));flex:0 0 auto;border:1px solid rgba(255,255,255,.13);border-radius:15px;overflow:hidden;background:rgba(8,5,14,.62);backdrop-filter:blur(22px);-webkit-backdrop-filter:blur(22px)}.oc-meter>span{display:flex;flex-direction:column;padding:8px 13px;border-left:1px solid rgba(255,255,255,.08)}.oc-meter>span:first-child{border-left:0}.oc-meter b{color:#fff;font-size:21px}.oc-meter small{margin-top:3px;color:#746a80;font-size:7px;font-weight:850;letter-spacing:.1em;text-transform:uppercase}.oc-meter .hot b{color:#ff79bd;text-shadow:0 0 14px rgba(255,45,155,.4)}
.oc-tabs{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin:15px 0 19px}.oc-tabs button{position:relative;display:flex;align-items:center;gap:9px;min-height:54px;padding:10px 13px;color:#847a8f;background:rgba(255,255,255,.025);border:1px solid rgba(255,255,255,.09);border-radius:14px;font:inherit;cursor:pointer}.oc-tabs button.on{color:#fff;background:linear-gradient(120deg,rgba(56,189,248,.08),rgba(168,85,247,.1));border-color:rgba(126,151,255,.38);box-shadow:inset 0 0 24px rgba(139,92,246,.05)}.oc-tabs button>span{width:30px;height:30px;display:grid;place-items:center;border-radius:9px;color:var(--cyan);background:rgba(56,189,248,.06)}.oc-tabs svg{width:15px}.oc-tabs b{font-size:10px;letter-spacing:.03em}.oc-tabs i{display:grid;place-items:center;min-width:20px;height:20px;margin-left:auto;padding:0 5px;border-radius:999px;color:#ffabd2;background:rgba(255,45,155,.11);font-size:8px;font-style:normal;font-weight:900}.oc-body{display:flex;flex-direction:column;gap:13px}.oc-panel,.oc-priority,.oc-people{padding:15px;border-radius:20px;background:rgba(8,5,14,.76);border:1px solid rgba(255,255,255,.09)}.oc-priority{background:linear-gradient(130deg,rgba(255,45,155,.055),rgba(56,189,248,.035));border-color:rgba(255,45,155,.18)}.oc-section-head{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:2px 2px 12px}.oc-section-head>span{display:flex;flex-direction:column;gap:3px}.oc-section-head small{color:var(--cyan);font-size:7px;font-weight:900;letter-spacing:.17em}.oc-section-head b{color:#fff;font-size:12px}.oc-section-head>strong{display:grid;place-items:center;min-width:28px;height:28px;padding:0 7px;border-radius:999px;color:#ff94c6;background:rgba(255,45,155,.09);font-size:10px}.oc-section-head>a{color:#ab9bff;font-size:8.5px;font-weight:850}.oc-head-cta{padding:8px 10px;border:1px solid rgba(168,85,247,.3);border-radius:10px}
.oc-priority-grid,.oc-thread-list{display:flex;flex-direction:column;gap:7px}.oc-priority-grid{display:grid;grid-template-columns:1fr 1fr}.oc-thread{position:relative;display:flex;align-items:stretch;min-width:0;border-radius:14px;background:rgba(8,5,14,.62);border:1px solid rgba(255,255,255,.13);overflow:hidden;transition:.18s ease;backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px)}.oc-thread:hover{border-color:rgba(56,189,248,.32);background:rgba(56,189,248,.04);transform:translateY(-1px)}.oc-thread.urgent{border-color:rgba(255,45,155,.18)}.oc-thread-open{display:flex;align-items:center;gap:11px;min-width:0;flex:1;padding:11px;color:#fff;text-decoration:none}.oc-thread-open>.avatar,.oc-squad-mark{width:42px;height:42px;flex:0 0 auto}.oc-squad-mark{display:grid;place-items:center;border-radius:12px;color:#fff;background:linear-gradient(135deg,#22d3ee,#a855f7);font-size:10px;font-weight:900;background-size:cover;background-position:center}.oc-squad-mark.big{width:58px;height:58px;border-radius:17px;font-size:13px}.oc-thread-copy{display:flex;flex-direction:column;min-width:0;flex:1}.oc-thread-top{display:flex;align-items:center;justify-content:space-between;gap:10px}.oc-thread-top b{font-size:10.5px}.oc-thread-top small{color:#655c70;font-size:7px}.oc-preview{margin-top:3px;color:#a49aaa;font-size:8.5px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.oc-context{margin-top:5px;color:#6e6578;font-size:7.5px}.oc-context .sdot{display:inline-block;margin-right:4px}.oc-unread{display:grid;place-items:center;min-width:21px;height:21px;padding:0 5px;border-radius:999px;color:#fff;background:linear-gradient(135deg,#ff2d9b,#a855f7);font-size:8px}.oc-arrow{color:#7a6f86;font-size:12px}.oc-archive{width:34px;display:grid;place-items:center;flex:0 0 auto;color:#5f5669;background:transparent;border:0;border-left:1px solid rgba(255,255,255,.06);cursor:pointer}.oc-archive:hover{color:#bcb2c7;background:rgba(255,255,255,.03)}.oc-archive svg,.oc-arch-toggle svg{width:13px}.oc-arch-toggle{display:flex;align-items:center;gap:7px;width:100%;margin-top:8px;padding:8px 4px;color:#6f6579;background:none;border:0;font:inherit;font-size:8px;cursor:pointer}.oc-arch-toggle b{color:#90859a}.oc-arch-toggle i{margin-left:auto;font-style:normal}.oc-thread-list.archived{margin-top:5px;opacity:.75}.oc-empty{display:flex;flex-direction:column;align-items:flex-start;gap:5px;padding:22px;color:#776d82;font-size:9px}.oc-empty b{color:#c8bdcf;font-size:11px}.oc-empty a{color:var(--cyan)}
.oc-person-rail{display:flex;gap:8px;overflow-x:auto;padding-bottom:2px}.oc-person{min-width:112px;display:flex;flex-direction:column;align-items:center;padding:13px 9px;color:#fff;background:rgba(255,255,255,.025);border:1px solid rgba(255,255,255,.08);border-radius:15px;font:inherit;cursor:pointer}.oc-person>span{position:relative}.oc-person>span>i{position:absolute;right:0;bottom:1px;width:9px;height:9px;border:2px solid #090610;border-radius:50%;background:var(--mint);box-shadow:0 0 8px var(--mint)}.oc-person b{margin-top:7px;font-size:9px}.oc-person small{margin-top:3px;color:#6d6477;font-size:7px}.oc-person:hover{border-color:rgba(56,189,248,.3)}
.oc-crew-grid{display:grid;grid-template-columns:1fr 1fr;gap:8px}.oc-crew{display:flex;align-items:center;gap:11px;min-width:0;padding:13px;color:#fff;background:rgba(255,255,255,.025);border:1px solid rgba(255,255,255,.09);border-radius:15px;text-decoration:none}.oc-crew-art{width:53px;height:53px;display:grid;place-items:center;flex:0 0 auto;border-radius:14px;background-size:cover!important;background-position:center!important;font-size:11px;font-weight:900}.oc-crew>span:nth-child(2){display:flex;flex-direction:column;min-width:0;flex:1}.oc-crew small,.oc-discover small{color:var(--cyan);font-size:6.5px;font-weight:900;letter-spacing:.13em}.oc-crew b,.oc-discover b{margin-top:3px;font-size:10px}.oc-crew em,.oc-discover em{margin-top:3px;color:#766d81;font-size:7.5px;font-style:normal;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.oc-crew>strong{color:#8e829a;font-size:7.5px;white-space:nowrap}.oc-crew>strong.live{color:#9ff7c7}.oc-crew>strong .sdot{display:inline-block;margin-right:4px}.oc-discover-grid{display:grid;grid-template-columns:1fr 1fr;gap:8px}.oc-discover{display:flex;align-items:center;gap:9px;min-width:0;padding:10px;border-radius:14px;background:rgba(255,255,255,.023);border:1px solid rgba(255,255,255,.08)}.oc-discover-open{display:flex;align-items:center;gap:9px;flex:1;min-width:0;background:none;border:0;padding:0;color:inherit;font:inherit;text-align:left;cursor:pointer}.oc-discover-open>span:nth-child(2){display:flex;flex-direction:column;min-width:0;flex:1}.oc-discover>span:nth-child(2){display:flex;flex-direction:column;min-width:0;flex:1}.oc-discover .btn{min-height:32px;padding:6px 9px;font-size:8px}
.oc-request-list,.oc-wait-list{display:flex;flex-direction:column;gap:7px}.oc-request{display:flex;align-items:center;gap:11px;padding:12px;border-radius:14px;background:rgba(255,255,255,.025);border:1px solid rgba(255,255,255,.09)}.oc-request>span{display:flex;flex-direction:column;min-width:0;flex:1}.oc-request small{color:#ff7fbd;font-size:6.5px;font-weight:900;letter-spacing:.14em}.oc-request b{margin-top:3px;color:#fff;font-size:10px}.oc-request em{margin-top:3px;color:#776d82;font-size:7.5px;font-style:normal}.oc-request>div{display:flex;gap:6px}.oc-request .btn{min-height:34px;padding:7px 11px;font-size:8px}.oc-wait-list>a,.oc-wait-list>div{display:flex;align-items:center;gap:10px;padding:10px;color:#fff;border-top:1px solid rgba(255,255,255,.07);text-decoration:none}.oc-wait-list>a:first-child,.oc-wait-list>div:first-child{border-top:0}.oc-wait-list>a>span,.oc-wait-list>div>span:nth-child(2){display:flex;flex-direction:column;min-width:0;flex:1}.oc-wait-list b{font-size:9px}.oc-wait-list small{margin-top:3px;color:#716779;font-size:7.5px}.oc-wait-list em{color:#80758a;font-size:7px;font-style:normal}.oc-wait-list button{color:#9e90f5;background:none;border:0;font:inherit;font-size:7.5px;cursor:pointer}

/* Conversation command surface. */
.oc-chat{max-width:980px;margin:0 auto;padding-bottom:105px}.oc-chat-head{padding:23px 16px 16px;border-bottom:1px solid rgba(255,255,255,.09)}.oc-chat-person{display:flex;align-items:center;gap:13px;color:#fff;text-decoration:none}.oc-chat-person>span:last-child{display:flex;flex-direction:column;min-width:0}.oc-chat-person small{color:var(--cyan);font-size:7px;font-weight:900;letter-spacing:.14em}.oc-chat-person small .sdot{display:inline-block;margin-right:5px}.oc-chat-person h1{margin:4px 0 2px;font-size:30px;line-height:.95;letter-spacing:-.045em}.oc-chat-person p{margin:0;color:#7c7287;font-size:8.5px}.oc-chat-actions{display:flex;gap:7px;margin-top:14px}.oc-chat-action{display:flex;align-items:center;gap:8px;min-width:0;padding:9px 12px;color:#a69aac;background:rgba(255,255,255,.025);border:1px solid rgba(255,255,255,.09);border-radius:12px;font:inherit;text-align:left;text-decoration:none;cursor:pointer}.oc-chat-action.primary{color:#fff;background:linear-gradient(120deg,rgba(56,189,248,.08),rgba(168,85,247,.1));border-color:rgba(56,189,248,.27)}.oc-chat-action.compact{width:40px;padding:9px;justify-content:center}.oc-chat-action>svg{width:16px;color:var(--cyan);flex:0 0 auto}.oc-chat-action>span{display:flex;flex-direction:column}.oc-chat-action b{font-size:8.5px}.oc-chat-action small{margin-top:2px;color:#716779;font-size:6.5px}.oc-chat-members{display:flex;align-items:center;gap:9px;margin-top:12px;padding-top:11px;border-top:1px solid rgba(255,255,255,.07)}.oc-chat-members>div{display:flex}.oc-chat-members .avatar{margin-left:-5px;border:2px solid #090610}.oc-chat-members .avatar:first-child{margin-left:0}.oc-chat-members>span{color:#746a80;font-size:7.5px}.oc-chat-members b{color:#b8adbf}.oc-chat-divider{display:flex;align-items:center;gap:9px;padding:12px 16px 2px;color:#786e82;font-size:7px;font-weight:850;letter-spacing:.12em;text-transform:uppercase}.oc-chat-divider i{height:1px;flex:1;background:rgba(255,255,255,.07)}.oc-chat-divider small{font-size:6.5px}.oc-chat-thread{min-height:260px;padding-top:14px}.oc-chat-empty{margin:auto;display:flex;flex-direction:column;align-items:center;padding:70px 20px;text-align:center;color:#706678}.oc-chat-empty>span{width:46px;height:46px;display:grid;place-items:center;border-radius:14px;color:var(--cyan);background:rgba(56,189,248,.07)}.oc-chat-empty svg{width:20px}.oc-chat-empty b{margin-top:11px;color:#c6bbce;font-size:12px}.oc-chat-empty p{margin:4px 0 0;font-size:8px}.oc-composer{border:1px solid rgba(168,85,247,.2);border-bottom:0;border-radius:17px 17px 0 0}.oc-chat-missing{padding-top:15vh;text-align:center}.oc-chat-missing h1{color:#fff}.oc-chat-missing .btn{margin-top:15px}
.oc-blocked-composer{position:sticky;bottom:calc(var(--tabbar-h) + var(--safe-b) + 8px);z-index:8;display:grid;grid-template-columns:38px minmax(0,1fr) auto;align-items:center;gap:11px;margin:12px 14px;padding:13px 14px;border:1px solid rgba(255,91,148,.24);border-radius:15px;background:linear-gradient(110deg,rgba(67,19,43,.96),rgba(10,8,20,.97));box-shadow:0 18px 45px rgba(0,0,0,.36)}.oc-blocked-composer>svg{width:21px;color:#ff79a9}.oc-blocked-composer>span{display:flex;flex-direction:column}.oc-blocked-composer b{font-size:9px}.oc-blocked-composer small{margin-top:3px;color:#8c7e90;font-size:7px}.oc-blocked-composer a{padding:9px 10px;color:#ffc1d8;border:1px solid rgba(255,105,160,.22);border-radius:9px;font-size:7px;font-weight:900;text-decoration:none;white-space:nowrap}
@media(min-width:720px){.oc-chat-head{display:grid;grid-template-columns:minmax(0,1fr) auto;column-gap:18px;align-items:center}.oc-chat-actions{margin-top:0}.oc-chat-members{grid-column:1/-1}}
@media(max-width:700px){.open-comms{padding-inline:14px}.oc-hero{align-items:flex-start;padding-top:15px}.oc-hero h1{font-size:43px}.oc-hero p{font-size:10px}.oc-meter{display:none}.oc-tabs{position:sticky;top:61px;z-index:7;padding:7px 0;background:linear-gradient(#07050d 75%,transparent);margin:6px 0 10px}.oc-tabs button{min-height:47px;padding:8px}.oc-tabs button>span{display:none}.oc-priority-grid,.oc-crew-grid,.oc-discover-grid{grid-template-columns:1fr}.oc-panel,.oc-priority,.oc-people{padding:11px}.oc-thread-open{padding:10px}.oc-person{min-width:102px}.oc-request{align-items:flex-start;flex-wrap:wrap}.oc-request>div{width:100%;padding-left:53px}.oc-request .btn{flex:1}.oc-chat{padding-inline:0}.oc-chat-head{padding-top:15px}.oc-chat-person h1{font-size:26px}.oc-chat-actions{overflow-x:auto}.oc-chat-action{flex:0 0 auto}.oc-chat-thread{padding-inline:13px}.oc-composer{left:0;right:0;transform:none;width:100%}}
@media(max-width:430px){.oc-hero h1{font-size:38px}.oc-tabs b{font-size:8px}.oc-thread-open>.avatar,.oc-squad-mark{width:38px;height:38px}.oc-preview{max-width:54vw}.oc-crew>strong{display:none}.oc-chat-person .av-lg{width:50px;height:50px}.oc-chat-action{padding:8px 10px}.oc-blocked-composer{grid-template-columns:30px 1fr}.oc-blocked-composer a{grid-column:2;width:max-content}.oc-blocked-composer>svg{width:19px}}

/* Boards — persistent rooms for identity, energy, and useful conversation. */
.board-directory{max-width:1180px;padding-bottom:120px}.bd-head{display:flex;align-items:flex-end;justify-content:space-between;gap:30px;padding:28px 2px 23px;border-bottom:1px solid rgba(255,255,255,.09)}.bd-head h1{max-width:790px;margin:7px 0 9px;color:#fff;font-size:clamp(41px,6vw,70px);line-height:.88;letter-spacing:-.064em}.bd-head p{max-width:760px;margin:0;color:#958b9f;font-size:12px;line-height:1.55}.bd-metrics{display:grid;grid-template-columns:repeat(3,minmax(86px,auto));flex:0 0 auto;border:1px solid rgba(255,255,255,.13);border-radius:15px;overflow:hidden;background:rgba(8,5,14,.62);backdrop-filter:blur(22px);-webkit-backdrop-filter:blur(22px)}.bd-metrics>span{display:flex;flex-direction:column;padding:13px 11px;border-left:1px solid rgba(255,255,255,.08)}.bd-metrics>span:first-child{border-left:0}.bd-metrics b{color:#fff;font-size:20px}.bd-metrics small{margin-top:3px;color:#756b80;font-size:6.5px;font-weight:850;letter-spacing:.1em;text-transform:uppercase}.bd-section{margin-top:24px}.bd-section-head{display:flex;align-items:center;justify-content:space-between;gap:15px;margin:0 2px 9px}.bd-section-head>span{display:flex;flex-direction:column}.bd-section-head small{color:var(--cyan);font-size:7px;font-weight:900;letter-spacing:.17em}.bd-section-head b{margin-top:3px;color:#fff;font-size:11px}.bd-section-head>strong{color:#796f84;font-size:8px;text-transform:uppercase;letter-spacing:.09em}.bd-primer{display:flex;align-items:center;gap:13px;margin-top:17px;padding:14px 16px;border-radius:16px;background:linear-gradient(120deg,rgba(56,189,248,.055),rgba(168,85,247,.055));border:1px solid rgba(126,151,255,.2)}.bd-primer>span{width:42px;height:42px;display:grid;place-items:center;flex:0 0 auto;border-radius:12px;color:var(--cyan);background:rgba(56,189,248,.08)}.bd-primer svg{width:19px}.bd-primer>div{display:flex;flex-direction:column}.bd-primer small{color:var(--cyan);font-size:6.5px;font-weight:900;letter-spacing:.14em}.bd-primer b{margin-top:2px;color:#fff;font-size:10px}.bd-primer p{margin:3px 0 0;color:#7b7186;font-size:8px}.bd-grid,.bd-your-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.bd-door{position:relative;isolation:isolate;overflow:hidden;min-height:270px;display:flex;align-items:flex-end;padding:17px;border-radius:21px;color:#fff;background:#07040e;border:1px solid rgba(255,255,255,.1);text-decoration:none;box-shadow:0 23px 65px rgba(0,0,0,.28)}.bd-door.big{min-height:390px}.bd-door-art,.bd-door-grade{position:absolute;inset:0;z-index:-2}.bd-door-grade{z-index:-1;background:linear-gradient(0deg,#05030b 4%,rgba(5,3,11,.15) 82%),linear-gradient(100deg,rgba(5,3,11,.65),transparent 65%)}.bd-door:hover{border-color:rgba(56,189,248,.35);transform:translateY(-2px)}.bd-door-status{position:absolute;top:13px;left:13px;display:flex;align-items:center;gap:6px;padding:6px 8px;border-radius:999px;background:rgba(5,3,11,.74);border:1px solid rgba(255,255,255,.14);backdrop-filter:blur(10px);font-size:6.5px;font-weight:900;letter-spacing:.13em}.bd-door-status i{width:6px;height:6px;border-radius:50%;background:var(--mint);box-shadow:0 0 8px var(--mint)}.bd-door.joined .bd-door-status{color:#c7ffe1;border-color:rgba(52,211,153,.27)}.bd-door-copy{display:flex;flex-direction:column;min-width:0;width:100%;padding-bottom:26px}.bd-door-copy>small{color:var(--cyan);font-size:7px;font-weight:900;letter-spacing:.13em}.bd-door-copy>b{margin-top:5px;font-size:clamp(25px,3.4vw,42px);line-height:.9;letter-spacing:-.05em}.bd-door-copy>em{max-width:620px;margin-top:6px;color:#c4bacd;font-size:9px;font-style:normal}.bd-door-copy>span{margin-top:11px;padding-top:9px;border-top:1px solid rgba(255,255,255,.1);color:#a79cab;font-size:8px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.bd-door-copy>span strong{color:#ff8fc4;font-size:6.5px;letter-spacing:.12em}.bd-door-foot{position:absolute;left:17px;right:17px;bottom:14px;display:flex;align-items:center;justify-content:space-between;color:#8f8499;font-size:7.5px}.bd-door-foot>span{display:flex;align-items:center;gap:5px}.bd-door-foot b{color:#fff;font-size:8px}.bd-footnote{display:flex;gap:12px;margin-top:25px;padding:15px 17px;border-radius:15px;background:rgba(255,255,255,.025);border:1px solid rgba(255,255,255,.08)}.bd-footnote>span{color:var(--cyan)}.bd-footnote svg{width:18px}.bd-footnote div{display:flex;flex-direction:column}.bd-footnote b{color:#bdb3c6;font-size:9px}.bd-footnote p{margin:3px 0 0;color:#6e6478;font-size:8px;line-height:1.5}

/* Inside a board. */
.board-room{padding-bottom:120px}.brd-hero{position:relative;isolation:isolate;overflow:hidden;min-height:420px;display:flex;align-items:flex-end;gap:25px;padding:36px max(20px,calc((100vw - 1180px)/2));background:#06030c;border-bottom:1px solid rgba(255,255,255,.1)}.brd-art,.brd-grade{position:absolute;inset:0;z-index:-2}.brd-art{background-image:var(--brd-art);background-size:cover;background-position:center 38%}.brd-grade{z-index:-1;background:linear-gradient(0deg,#05030b 3%,rgba(5,3,11,.27) 78%),linear-gradient(90deg,rgba(5,3,11,.9),rgba(5,3,11,.32) 72%,rgba(5,3,11,.2))}.brd-status{position:absolute;top:22px;left:max(20px,calc((100vw - 1180px)/2));display:flex;align-items:center;gap:7px;padding:7px 9px;border-radius:999px;color:#fff;background:rgba(5,3,11,.72);border:1px solid rgba(255,255,255,.14);backdrop-filter:blur(12px);font-size:7px;font-weight:900;letter-spacing:.14em}.brd-status i{width:7px;height:7px;border-radius:50%;background:var(--mint);box-shadow:0 0 9px var(--mint)}.brd-copy{min-width:0;flex:1}.brd-copy>small{color:var(--cyan);font-size:8px;font-weight:900;letter-spacing:.17em}.brd-copy h1{max-width:850px;margin:7px 0 6px;color:#fff;font-size:clamp(48px,8vw,92px);line-height:.82;letter-spacing:-.07em}.brd-copy p{max-width:710px;margin:0;color:#c0b6c8;font-size:11px}.brd-copy>div{display:flex;gap:9px;flex-wrap:wrap;margin-top:16px}.brd-copy>div>span{display:flex;align-items:baseline;gap:5px;padding:7px 9px;border-radius:999px;color:#8f8499;background:rgba(5,3,11,.66);border:1px solid rgba(255,255,255,.1);font-size:7px}.brd-copy>div b{color:#fff;font-size:10px}.brd-actions{display:flex;gap:7px;flex:0 0 auto}.brd-join,.brd-share{display:flex;align-items:center;gap:8px;min-height:49px;padding:9px 13px;color:#fff;background:linear-gradient(120deg,rgba(56,189,248,.14),rgba(168,85,247,.21));border:1px solid rgba(56,189,248,.36);border-radius:13px;font:inherit;cursor:pointer}.brd-join.joined{background:rgba(52,211,153,.08);border-color:rgba(52,211,153,.26)}.brd-join>svg,.brd-share>svg{width:16px;color:var(--cyan)}.brd-join>span{display:flex;flex-direction:column;text-align:left}.brd-join b{font-size:8px}.brd-join small{margin-top:2px;color:#91869b;font-size:6.5px}.brd-share{width:48px;padding:9px;justify-content:center;background:rgba(5,3,11,.67);border-color:rgba(255,255,255,.13)}.brd-share span{display:none}.brd-tabs{position:sticky;top:0;z-index:8;display:flex;justify-content:center;gap:8px;padding:10px 14px;background:none;border-bottom:0}.brd-tabs button{position:relative;overflow:hidden;display:flex;align-items:center;gap:10px;min-height:46px;padding:12px 20px;flex:0 1 210px;justify-content:center;color:#fff;background:linear-gradient(145deg,rgba(18,13,32,.94),rgba(8,6,16,.9));border:0;box-shadow:inset 0 0 0 1px rgba(168,85,247,.13);border-radius:15px;font:inherit;font-size:11px;font-weight:800;cursor:pointer}.brd-tabs button::after{content:"";position:absolute;inset:auto 14px 0;height:1px;background:linear-gradient(90deg,transparent,var(--violet),var(--pink),transparent);box-shadow:0 0 7px rgba(244,114,182,.4)}#app .brd-tabs button svg{width:16px;height:16px;color:var(--cyan);filter:drop-shadow(0 0 6px rgba(92,200,255,.45));flex:0 0 auto}.brd-tabs button.on{background:linear-gradient(125deg,rgba(56,189,248,.22),rgba(178,62,205,.2));box-shadow:inset 0 0 0 1px rgba(92,200,255,.45),0 0 16px rgba(124,92,255,.25);text-shadow:0 0 6px rgba(220,249,255,.85)}.brd-tabs button.on::after{height:2px;box-shadow:0 0 12px rgba(244,114,182,.9)}#app .brd-tabs button.on svg{color:#fff;filter:drop-shadow(0 0 8px rgba(92,200,255,.9))}.brd-tabs i{display:grid;place-items:center;min-width:18px;height:18px;padding:0 4px;border-radius:999px;color:#ff91c4;background:rgba(255,45,155,.1);font-size:6.5px;font-style:normal}.brd-body{max-width:1180px;padding-top:18px}.brd-layout{display:grid;grid-template-columns:minmax(0,1fr) 270px;gap:12px;align-items:start}.brd-main{min-width:0}.brd-tools{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px}.brd-tools>label{display:flex;align-items:center;gap:8px;padding:0 12px;border-radius:13px;background:rgba(8,5,14,.78);border:1px solid rgba(255,255,255,.09)}.brd-tools>label>svg{width:14px;color:#776d82}.brd-tools input{min-width:0;flex:1;height:48px;color:#fff;background:none;border:0;outline:0;font:inherit;font-size:9px}.brd-tools label>button{color:#8a7e92;background:none;border:0}.brd-compose{display:flex;align-items:center;gap:9px;padding:8px 12px;color:#fff;background:linear-gradient(120deg,rgba(56,189,248,.08),rgba(168,85,247,.1));border:1px solid rgba(126,151,255,.27);border-radius:13px;font:inherit;text-align:left;cursor:pointer}.brd-compose>svg{width:16px;color:var(--cyan)}.brd-compose>span{display:flex;flex-direction:column}.brd-compose b{font-size:8.5px}.brd-compose small{margin-top:2px;color:#756b80;font-size:6.5px}.brd-compose.locked{opacity:.8}.brd-sort{display:flex;justify-content:space-between;margin:15px 3px 8px;color:var(--cyan);font-size:6.5px;font-weight:900;letter-spacing:.15em}.brd-sort b{color:#6c6276;font-size:6.5px;letter-spacing:0}.bd-post-list{display:flex;flex-direction:column;gap:10px}.bd-post{overflow:hidden;border-radius:18px;background:rgba(8,5,14,.82);border:1px solid rgba(255,255,255,.09);box-shadow:0 18px 50px rgba(0,0,0,.2)}.bd-post.mine{border-color:rgba(168,85,247,.22)}.bd-post>header{display:flex;align-items:center;justify-content:space-between;padding:13px 14px 7px}.bd-post>header>a{display:flex;align-items:center;gap:9px;color:#fff}.bd-post>header>a>span{display:flex;flex-direction:column}.bd-post>header b{font-size:9px}.bd-post>header small{margin-top:2px;color:#716779;font-size:6.5px}.bd-post>header>button{width:30px;height:30px;display:grid;place-items:center;color:#716779;background:none;border:0;cursor:pointer}.bd-post>header>button svg{width:14px}.bdp-copy{display:block;padding:7px 14px 13px;color:#fff;text-decoration:none}.bdp-copy h2{margin:0;font-size:19px;line-height:1.08;letter-spacing:-.025em}.bdp-copy p{margin:7px 0 0;color:#a89dac;font-size:9.5px;line-height:1.55}.bdp-media{display:block;width:100%;max-height:430px;overflow:hidden;background:#05030b;border:0}.bdp-media video{display:block;width:100%;max-height:430px;object-fit:cover}.bdp-media.photo{position:relative;height:310px;overflow:hidden;background:#05030b;cursor:zoom-in}.bdp-media.photo::before{content:'';position:absolute;inset:0;background-image:var(--bdp-photo);background-size:cover;background-position:center;filter:blur(26px) brightness(.4);transform:scale(1.12)}.bdp-media.photo::after{content:'';position:absolute;inset:0;background-image:var(--bdp-photo);background-size:contain;background-position:center;background-repeat:no-repeat}.bdp-proof{display:flex;justify-content:space-between;padding:10px 14px;color:#716779;font-size:7.5px}.bdp-proof a{color:#81758b}.bdp-proof b{color:#b9aebf}.bdp-actions{display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid rgba(255,255,255,.07);border-bottom:1px solid rgba(255,255,255,.07)}.bdp-actions>*{min-height:39px;display:flex;align-items:center;justify-content:center;gap:6px;color:#81768b;background:none;border:0;border-left:1px solid rgba(255,255,255,.06);font:inherit;font-size:7.5px;text-decoration:none;cursor:pointer}.bdp-actions>*:first-child{border-left:0}.bdp-actions svg{width:13px}.bdp-actions .on{color:#ff82bd}.bdp-comments{padding:9px 14px}.bdp-comment{display:flex;align-items:flex-start;gap:7px;margin-top:7px}.bdp-comment:first-child{margin-top:0}.bdp-comment>span{display:flex;flex-direction:column;padding:7px 9px;color:#aca0b4;background:rgba(255,255,255,.035);border-radius:10px;font-size:8px;line-height:1.4}.bdp-comment b{margin-bottom:2px;color:#fff;font-size:7.5px}.bdp-comments>a{display:block;margin:8px 0 1px 31px;color:#9e8ff5;font-size:7.5px}.bdp-reply{display:flex;align-items:center;gap:7px;padding:9px 12px;border-top:1px solid rgba(255,255,255,.07)}.bdp-reply input{min-width:0;flex:1;height:35px;padding:0 10px;color:#fff;background:rgba(255,255,255,.04);border:1px solid rgba(255,255,255,.09);border-radius:10px;outline:0;font:inherit;font-size:8px}.bdp-reply button{width:34px;height:34px;display:grid;place-items:center;border-radius:10px;color:#fff;background:rgba(168,85,247,.2);border:1px solid rgba(168,85,247,.35)}.bdp-reply button svg{width:13px}.bdp-locked{width:100%;padding:10px;color:#a99aff;background:rgba(168,85,247,.045);border:0;border-top:1px solid rgba(255,255,255,.07);font:inherit;font-size:8px;cursor:pointer}.brd-rail{position:sticky;top:65px;display:flex;flex-direction:column;gap:9px}.brd-rail>section{padding:13px;border-radius:16px;background:rgba(8,5,14,.8);border:1px solid rgba(255,255,255,.09)}.brd-rail>section>small{color:var(--cyan);font-size:6.5px;font-weight:900;letter-spacing:.15em}.brd-people{margin-top:8px}.brd-people>a{display:flex;align-items:center;gap:8px;padding:8px 0;color:#fff;border-top:1px solid rgba(255,255,255,.06)}.brd-people>a:first-child{border-top:0}.brd-people>a>span{display:flex;flex-direction:column;min-width:0;flex:1}.brd-people b{font-size:8px}.brd-people em{margin-top:2px;color:#6f6578;font-size:6.5px;font-style:normal;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.brd-rail>section>button{margin-top:8px;padding:0;color:#a99aff;background:none;border:0;font:inherit;font-size:7px;font-weight:850;cursor:pointer}.brd-rail>section>p{margin:9px 0 0;color:#887d91;font-size:8px;line-height:1.5}.brd-empty{display:flex;flex-direction:column;align-items:center;padding:65px 20px;text-align:center;border-radius:18px;background:rgba(8,5,14,.75);border:1px solid rgba(255,255,255,.09)}.brd-empty>span{width:44px;height:44px;display:grid;place-items:center;border-radius:13px;color:var(--cyan);background:rgba(56,189,248,.07)}.brd-empty svg{width:19px}.brd-empty>b{margin-top:11px;color:#c5bacd;font-size:11px}.brd-empty>p{max-width:380px;margin:4px 0 0;color:#716779;font-size:8px}.brd-empty>button{margin-top:12px;color:#ad9cff;background:none;border:0;font:inherit;font-size:8px;font-weight:850;cursor:pointer}.bd-missing{text-align:center;padding-top:15vh}.bd-missing h1{color:#fff}

/* Board People / About / Media. */
.brd-info,.brd-members{display:flex;flex-direction:column;gap:13px}.brd-about,.brd-rules,.brd-leaders,.brd-member-grid,.brd-gallery{padding:20px;border-radius:20px;background:rgba(8,5,14,.8);border:1px solid rgba(255,255,255,.09)}.brd-about>small,.brd-rules>div>small,.brd-leaders header>small,.brd-member-grid header small,.brd-gallery header small{color:var(--cyan);font-size:7px;font-weight:900;letter-spacing:.16em}.brd-about>h2,.brd-rules h2,.brd-leaders h2,.brd-member-grid h2,.brd-gallery h2{max-width:760px;margin:5px 0 0;color:#fff;font-size:clamp(26px,4vw,42px);line-height:.98;letter-spacing:-.04em}.brd-about>p{max-width:800px;margin:13px 0 0;color:#9f94a8;font-size:10px;line-height:1.65}.brd-about>div{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin-top:18px}.brd-about>div>span{display:grid;grid-template-columns:27px 1fr;gap:2px 8px;padding:12px;border-radius:13px;background:rgba(255,255,255,.025);border:1px solid rgba(255,255,255,.08)}.brd-about>div svg{width:17px;grid-row:1/3;color:var(--cyan)}.brd-about>div b{color:#fff;font-size:8px}.brd-about>div small{color:#716779;font-size:7px}.brd-rules>article{display:grid;grid-template-columns:38px 1fr;gap:11px;align-items:center;padding:13px 2px;border-top:1px solid rgba(255,255,255,.07)}.brd-rules>article:first-of-type{margin-top:14px}.brd-rules>article>b{color:#766a80;font-size:17px}.brd-rules>article>p{margin:0;color:#afa4b7;font-size:9px}.brd-leaders>div{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin-top:16px}.brd-leaders>div>a{display:grid;grid-template-columns:25px 40px 1fr;gap:8px;align-items:center;padding:12px;color:#fff;background:rgba(255,255,255,.025);border:1px solid rgba(255,255,255,.08);border-radius:14px}.brd-leaders>a strong,.brd-leaders>div>a>strong{color:#766b80;font-size:12px}.brd-leaders>div>a>span{display:flex;flex-direction:column;min-width:0}.brd-leaders b{font-size:8px}.brd-leaders small{margin-top:2px;color:#6f6578;font-size:6.5px}.brd-leaders em{grid-column:2/4;color:#9b8bef;font-size:6.5px;font-style:normal}.brd-member-grid>header,.brd-gallery>header{display:flex;align-items:flex-end;justify-content:space-between}.brd-member-grid>header>span,.brd-gallery>header>span{display:flex;flex-direction:column}.brd-member-grid>header>b,.brd-gallery>header>b{color:#726779;font-size:8px}.brd-member-grid>div{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin-top:15px}.brd-member-grid>div>a{display:flex;align-items:center;gap:9px;min-width:0;padding:11px;color:#fff;background:rgba(255,255,255,.025);border:1px solid rgba(255,255,255,.08);border-radius:14px}.brd-member-grid>div>a>span{display:flex;flex-direction:column;min-width:0;flex:1}.brd-member-grid small{color:var(--cyan);font-size:6px;font-weight:900;letter-spacing:.1em}.brd-member-grid small .sdot{display:inline-block;margin-right:4px}.brd-member-grid b{margin-top:2px;font-size:8.5px}.brd-member-grid em{margin-top:2px;color:#6f6578;font-size:6.5px;font-style:normal;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.brd-member-grid strong{color:#8e80e0;font-size:7px}.brd-gallery>div{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin-top:15px}.brd-gallery>div>button{min-height:260px;border:1px solid rgba(255,255,255,.1);border-radius:16px;background-image:linear-gradient(0deg,rgba(5,3,11,.3),transparent),var(--brd-media);background-size:cover;background-position:center;cursor:zoom-in}.brd-empty.media{min-height:46vh}

/* A single board conversation. */
.board-thread{max-width:900px;padding-bottom:110px}.bdt-board{display:flex;align-items:center;gap:9px;margin:15px 0 9px;padding:10px 12px;color:#fff;background:rgba(8,5,14,.78);border:1px solid rgba(255,255,255,.09);border-radius:14px}.bdt-board>span{width:34px;height:34px;display:grid;place-items:center;border-radius:10px;background:rgba(56,189,248,.08)}.bdt-board>div{display:flex;flex-direction:column;flex:1}.bdt-board small{color:var(--cyan);font-size:6px;font-weight:900;letter-spacing:.13em}.bdt-board b{margin-top:2px;font-size:8.5px}.bdt-board em{color:#8f81df;font-size:7px;font-style:normal}.bdt-origin{overflow:hidden;padding:20px;border-radius:21px;background:rgba(8,5,14,.84);border:1px solid rgba(126,151,255,.16)}.bdt-origin>header>a{display:flex;align-items:center;gap:11px;color:#fff}.bdt-origin>header span{display:flex;flex-direction:column}.bdt-origin>header small{color:var(--cyan);font-size:6.5px;font-weight:900;letter-spacing:.12em}.bdt-origin>header b{margin-top:2px;font-size:9px}.bdt-origin>header em{margin-top:2px;color:#6f6578;font-size:6.5px;font-style:normal}.bdt-origin h1{max-width:820px;margin:24px 0 0;color:#fff;font-size:clamp(35px,6vw,62px);line-height:.94;letter-spacing:-.055em}.bdt-origin>p{max-width:780px;margin:13px 0 0;color:#aaa0b1;font-size:11px;line-height:1.65}.bdt-media{display:block;width:calc(100% + 40px);margin:20px -20px -1px;background:#05030b;border:0}.bdt-media video{display:block;width:100%;max-height:560px;object-fit:cover}.bdt-media.photo{position:relative;height:420px;overflow:hidden;background:#05030b;cursor:zoom-in}.bdt-media.photo::before{content:'';position:absolute;inset:0;background-image:var(--bdt-photo);background-size:cover;background-position:center;filter:blur(30px) brightness(.4);transform:scale(1.12)}.bdt-media.photo::after{content:'';position:absolute;inset:0;background-image:var(--bdt-photo);background-size:contain;background-position:center;background-repeat:no-repeat}.bdt-actions{display:grid;grid-template-columns:repeat(3,1fr);margin:21px -20px -20px;border-top:1px solid rgba(255,255,255,.08)}.bdt-actions>button,.bdt-actions>span{min-height:59px;display:flex;align-items:center;justify-content:center;gap:8px;color:#8b8094;background:rgba(255,255,255,.018);border:0;border-left:1px solid rgba(255,255,255,.07);font:inherit;cursor:pointer}.bdt-actions>*:first-child{border-left:0}.bdt-actions svg{width:17px}.bdt-actions>button>span,.bdt-actions>span{font-size:inherit}.bdt-actions>button>span,.bdt-actions>span:not(:first-child){display:flex}.bdt-actions>button>span{flex-direction:column;align-items:flex-start}.bdt-actions b{color:#fff;font-size:9px}.bdt-actions small{font-size:6.5px}.bdt-actions .on{color:#ff78b9}.bdt-responses{margin-top:12px;padding:18px;border-radius:20px;background:rgba(8,5,14,.8);border:1px solid rgba(255,255,255,.09)}.bdt-responses>header{display:flex;align-items:flex-end;justify-content:space-between}.bdt-responses>header>span{display:flex;flex-direction:column}.bdt-responses>header small{color:var(--cyan);font-size:6.5px;font-weight:900;letter-spacing:.15em}.bdt-responses>header h2{margin:3px 0 0;color:#fff;font-size:21px}.bdt-responses>header>b{color:#776c80;font-size:9px}.bdt-responses>div{margin-top:9px}.bdt-reply{display:grid;grid-template-columns:28px 38px 1fr;gap:9px;align-items:start;padding:13px 0;border-top:1px solid rgba(255,255,255,.07)}.bdt-reply:first-child{border-top:0}.bdt-reply>strong{padding-top:9px;color:#665c70;font-size:8px}.bdt-reply>div{display:flex;flex-direction:column}.bdt-reply>div>a{color:#fff;font-size:8.5px;font-weight:850}.bdt-reply small{margin-top:2px;color:#746a7e;font-size:6px;font-weight:800;letter-spacing:.09em}.bdt-reply p{margin:7px 0 0;color:#b2a8b9;font-size:9.5px;line-height:1.55}.bdt-composer{max-width:900px;margin-inline:auto;border:1px solid rgba(168,85,247,.22);border-bottom:0;border-radius:17px 17px 0 0}.bdt-composer .avatar{align-self:center}.bdt-locked{max-width:900px;min-height:70vh;display:grid;place-items:center;background-position:center;background-size:cover}.bdt-locked>div{max-width:590px;padding:30px;text-align:center;border-radius:23px;background:rgba(7,4,13,.91);border:1px solid rgba(168,85,247,.25);backdrop-filter:blur(20px)}.bdt-locked>div>span{width:54px;height:54px;margin:0 auto 13px;display:grid;place-items:center;border-radius:16px;color:#fff;background:rgba(56,189,248,.09)}.bdt-locked small{color:var(--cyan);font-size:7px;font-weight:900;letter-spacing:.15em}.bdt-locked h1{margin:8px 0;color:#fff;font-size:32px;line-height:.96}.bdt-locked p{color:#8f8499;font-size:9px;line-height:1.55}.bdt-locked a{display:block;margin-top:12px;color:#a99aff;font-size:8px}

/* Board post composer. */
.new-board-post{max-width:1120px;padding-bottom:120px}.nbp-head{padding:28px 2px 21px;border-bottom:1px solid rgba(255,255,255,.09)}.nbp-head h1{max-width:820px;margin:7px 0 8px;color:#fff;font-size:clamp(42px,6.5vw,72px);line-height:.88;letter-spacing:-.064em}.nbp-head p{max-width:720px;margin:0;color:#948a9e;font-size:11px}.nbp-head p b{color:#cfc4d5}.nbp-layout{display:grid;grid-template-columns:minmax(0,1fr) 340px;gap:13px;align-items:start;margin-top:16px}.nbp-form,.nbp-preview{padding:18px;border-radius:20px;background:rgba(8,5,14,.82);border:1px solid rgba(255,255,255,.09)}.nbp-step{display:flex;align-items:center;gap:9px;margin:4px 0 9px}.nbp-step:not(:first-child){margin-top:20px}.nbp-step>span{width:29px;height:29px;display:grid;place-items:center;flex:0 0 auto;border-radius:9px;color:var(--cyan);background:rgba(56,189,248,.07);font-size:7px;font-weight:900}.nbp-step>div{display:flex;flex-direction:column}.nbp-step small{color:var(--cyan);font-size:6px;font-weight:900;letter-spacing:.14em}.nbp-step b{margin-top:2px;color:#c7bdcd;font-size:8.5px}.nbp-form .field{margin:0;background:rgba(255,255,255,.035);border-color:rgba(255,255,255,.1)}.nbp-form textarea{min-height:170px;resize:vertical}.nbp-add{display:flex;align-items:center;gap:10px;padding:14px;color:#fff;background:rgba(56,189,248,.035);border:1px dashed rgba(56,189,248,.25);border-radius:14px;cursor:pointer}.nbp-add>svg{width:20px;color:var(--cyan)}.nbp-add>span{display:flex;flex-direction:column}.nbp-add b{font-size:8.5px}.nbp-add small{margin-top:3px;color:#716779;font-size:7px}.nbp-media{position:relative;overflow:hidden;border-radius:14px;background:#05030b}.nbp-media img,.nbp-media video{display:block;width:100%;max-height:380px;object-fit:cover}.nbp-media button{position:absolute;top:9px;right:9px;padding:7px 9px;color:#fff;background:rgba(5,3,11,.8);border:1px solid rgba(255,255,255,.14);border-radius:9px;font:inherit;font-size:7px}.nbp-standard{display:flex;gap:9px;margin-top:14px;padding:11px 12px;border-radius:13px;color:#8d8297;background:rgba(168,85,247,.045);border:1px solid rgba(168,85,247,.14)}.nbp-standard>svg{width:17px;flex:0 0 auto;color:#aa97ff}.nbp-standard>span{display:flex;flex-direction:column}.nbp-standard b{color:#bfb4c7;font-size:8px}.nbp-standard small{margin-top:2px;font-size:6.5px}.nbp-preview{position:sticky;top:76px}.nbp-preview-label{display:flex;justify-content:space-between;padding:1px 2px 10px;color:#746a7e;font-size:6px;font-weight:900;letter-spacing:.14em}.nbp-preview-label b{color:#aa99ff}.nbp-preview>article{padding:14px;border-radius:15px;background:rgba(255,255,255,.025);border:1px solid rgba(255,255,255,.09)}.nbp-preview article>header{display:flex;align-items:center;gap:8px}.nbp-preview article>header>span{display:flex;flex-direction:column}.nbp-preview header small{color:var(--cyan);font-size:5.5px;font-weight:900}.nbp-preview header b{margin-top:2px;color:#fff;font-size:7.5px}.nbp-preview article h2{margin:17px 0 0;color:#fff;font-size:21px;line-height:1.03;letter-spacing:-.03em}.nbp-preview article p{margin:8px 0 0;color:#9f94a8;font-size:8px;line-height:1.55}.nbp-preview-media{height:95px;margin:12px -14px 0;display:grid;place-items:center;color:#746a7e;background:rgba(56,189,248,.04);font-size:6.5px;font-weight:900;letter-spacing:.12em}.nbp-preview article footer{display:flex;justify-content:space-between;margin:14px -14px -14px;padding:10px 12px;border-top:1px solid rgba(255,255,255,.07);color:#786d82;font-size:6.5px}.nbp-preview article footer span{display:flex;align-items:center;gap:5px}.nbp-preview article footer svg{width:11px}.nbp-preview>.btn{margin-top:10px}.nbp-preview>p{margin:8px 5px 1px;text-align:center;color:#675d70;font-size:6.5px}.nt-locked{max-width:680px;padding-top:12vh;text-align:center}.nt-locked>span{width:58px;height:58px;margin:0 auto 13px;display:grid;place-items:center;border-radius:17px;color:#fff;background:rgba(56,189,248,.08)}.nt-locked h1{margin:8px 0;color:#fff;font-size:40px}.nt-locked p{color:#8c8297}.nt-locked .btn{margin-top:13px}

@media(max-width:900px){.bd-head{align-items:flex-start}.bd-metrics{display:none}.brd-layout{grid-template-columns:minmax(0,1fr) 230px}.brd-hero{min-height:370px}.brd-leaders>div,.brd-member-grid>div{grid-template-columns:1fr 1fr}.nbp-layout{grid-template-columns:minmax(0,1fr) 300px}}
@media(max-width:700px){.board-directory,.brd-body,.new-board-post,.board-thread{padding-inline:14px}.bd-head{padding-top:15px}.bd-head h1{font-size:42px}.bd-head p{font-size:9.5px}.bd-grid,.bd-your-grid{display:flex;flex-direction:column;overflow-x:visible}.bd-door{min-height:250px}.bd-door.big{min-width:100%;min-height:360px}.bd-door-copy>b{font-size:33px}.bd-primer p{font-size:7.5px}.brd-hero{min-height:420px;padding:25px 16px;flex-direction:column;align-items:flex-start;justify-content:flex-end}.brd-status{top:15px;left:16px}.brd-copy h1{font-size:54px}.brd-copy p{font-size:9px}.brd-actions{width:100%}.brd-join{flex:1}.brd-tabs{top:60px;justify-content:flex-start;overflow-x:auto}.brd-tabs button{flex:0 0 auto}.brd-layout{display:flex;flex-direction:column}.brd-main,.brd-rail{width:100%}.brd-rail{position:static}.brd-tools{grid-template-columns:1fr}.brd-compose{min-height:48px}.bdp-copy h2{font-size:18px}.bdp-media.photo{height:250px}.brd-rail>section:nth-child(2){display:none}.brd-about>div{grid-template-columns:1fr}.brd-leaders>div,.brd-member-grid>div{grid-template-columns:1fr}.brd-gallery>div{display:flex;flex-direction:column;overflow-x:visible}.bdt-origin{padding:16px}.bdt-origin h1{font-size:38px;margin-top:19px}.bdt-origin>p{font-size:9.5px}.bdt-actions{margin-inline:-16px;margin-bottom:-16px}.bdt-media{width:calc(100% + 32px);margin-inline:-16px}.bdt-media.photo{height:300px}.bdt-composer{left:0;right:0;transform:none;width:100%;padding-inline:12px}.nbp-head{padding-top:15px}.nbp-head h1{font-size:42px}.nbp-layout{display:flex;flex-direction:column}.nbp-form,.nbp-preview{width:100%}.nbp-preview{position:static}.nt-locked{padding-inline:18px}}
@media(max-width:430px){.bd-head h1{font-size:38px}.bd-door{min-width:84vw}.bd-door.big{min-width:100%}.bd-door-copy>b{font-size:29px}.brd-copy h1{font-size:47px}.brd-copy>div>span:nth-child(3){display:none}.brd-tabs button{padding-inline:10px}.bdp-actions span{display:none}.bdp-comment:nth-child(2){display:none}.bdt-actions small{display:none}.bdt-origin h1{font-size:34px}.nbp-head h1{font-size:38px}.nbp-form,.nbp-preview{padding:14px}}
/* Create-your-own-board CTA + Start-a-board screen (2026-07-18) */
.bd-create{display:inline-flex;align-items:center;gap:10px;margin-top:16px;padding:11px 15px;color:#dfe6ff;border:1px solid rgba(126,151,255,.32);border-radius:13px;background:linear-gradient(120deg,rgba(56,189,248,.08),rgba(168,85,247,.09));font:inherit;cursor:pointer;text-align:left}
.bd-create:hover{border-color:rgba(126,151,255,.55);transform:translateY(-1px)}
.bd-create>svg{width:17px;flex:0 0 auto;color:#8fa6ff}
.bd-create>span{font-size:11px}.bd-create>span b{color:#fff}
.bd-create>em{margin-left:auto;width:24px;height:24px;display:grid;place-items:center;flex:0 0 auto;color:#cdd9ff;border:1px solid rgba(126,151,255,.3);border-radius:8px;font-style:normal;font-size:13px}
.new-board{max-width:1080px;padding-bottom:120px}
.nb-head{padding:34px 3px 22px;border-bottom:1px solid rgba(255,255,255,.09)}
.nb-head small{color:#8fa6ff;font-size:8px;font-weight:900;letter-spacing:.19em}
.nb-head h1{margin:9px 0 10px;color:#fff;font-size:clamp(40px,6vw,64px);line-height:.86;letter-spacing:-.06em}
.nb-head p{max-width:680px;margin:0;color:#92879b;font-size:12px;line-height:1.6}
.nb-layout{display:grid;grid-template-columns:minmax(0,1fr) 360px;gap:13px;align-items:start;margin-top:20px}
.nb-form{display:flex;flex-direction:column;gap:12px}
.nb-section{padding:22px;border:1px solid rgba(255,255,255,.09);border-radius:22px;background:rgba(7,4,13,.84)}
.nb-section>header{display:flex;align-items:center;gap:11px;margin-bottom:16px}
.nb-section>header>b{width:34px;height:34px;display:grid;place-items:center;flex:0 0 auto;color:#8fa6ff;border:1px solid rgba(126,151,255,.24);border-radius:10px;background:rgba(90,120,255,.06);font-size:7px}
.nb-section>header>span{display:flex;flex-direction:column}
.nb-section>header strong{font-size:12px}
.nb-section>header small{margin-top:3px;color:#74697d;font-size:7px}
.nb-emoji{display:grid;grid-template-columns:repeat(8,1fr);gap:7px}
.nb-emoji button{aspect-ratio:1;display:grid;place-items:center;font-size:19px;border:1px solid rgba(255,255,255,.09);border-radius:12px;background:rgba(0,0,0,.24);cursor:pointer}
.nb-emoji button.on{border-color:rgba(126,151,255,.6);background:rgba(90,120,255,.12);box-shadow:0 0 16px rgba(90,120,255,.25)}
.nb-full{display:block}
.nb-full>span{display:block;margin:0 1px 6px;color:#786d80;font-size:6.5px;font-weight:900;letter-spacing:.13em}
.nb-section .field{margin:0;border-color:rgba(255,255,255,.1);background:rgba(0,0,0,.24)}
.nb-full input.field{height:49px}
.nb-full textarea.field{min-height:88px;padding-top:13px;resize:vertical}
.nb-preview{position:sticky;top:80px;padding:17px;border:1px solid rgba(255,255,255,.09);border-radius:22px;background:rgba(7,4,13,.84)}
.nb-preview-label{display:flex;justify-content:space-between;align-items:center;padding:2px 2px 12px}
.nb-preview-label span{color:#8fa6ff;font-size:8px;font-weight:900;letter-spacing:.16em}
.nb-preview-label b{padding:5px 7px;color:#81758a;border:1px solid rgba(255,255,255,.09);border-radius:7px;font-size:6px;letter-spacing:.12em}
.nb-card{display:flex;gap:13px;padding:18px 16px;border:1px solid rgba(126,151,255,.28);border-radius:18px;background:radial-gradient(circle at 92% 0,rgba(90,120,255,.16),transparent 36%),#090610}
.nb-card-emoji{width:52px;height:52px;display:grid;place-items:center;flex:0 0 auto;border:1px solid rgba(255,255,255,.16);border-radius:15px;background:rgba(255,255,255,.04);font-size:26px}
.nb-card>div{min-width:0}
.nb-card small{color:#8fa6ff;font-size:6px;font-weight:900;letter-spacing:.12em}
.nb-card h2{margin:5px 0 4px;font-size:22px;line-height:1;letter-spacing:-.04em;overflow-wrap:anywhere}
.nb-card p{margin:0;color:#b8afc2;font-size:9px;line-height:1.45}
.nb-card-ops{display:grid;grid-template-columns:1fr 1fr;margin-top:10px;border:1px solid rgba(255,255,255,.08);border-radius:12px;overflow:hidden}
.nb-card-ops>span{display:flex;flex-direction:column;padding:12px;border-left:1px solid rgba(255,255,255,.07)}
.nb-card-ops>span:first-child{border-left:0}
.nb-card-ops small{color:#675d70;font-size:5.5px;font-weight:900;letter-spacing:.1em}
.nb-card-ops b{margin-top:3px;font-size:8px}
.nb-error{display:flex;flex-direction:column;gap:3px;margin-top:11px;padding:11px;color:#ffc1d8;border:1px solid rgba(255,75,149,.25);border-radius:11px;background:rgba(255,55,137,.06)}
.nb-error b{font-size:6.5px;letter-spacing:.12em}.nb-error span{font-size:8px}
.nb-preview .btn-primary{margin-top:12px;height:50px}
.nb-note{display:flex;gap:6px;margin:10px 3px 0;color:#6f6477;font-size:7px;line-height:1.5}
.nb-note svg{width:12px;flex:0 0 auto;color:#8fa6ff}
@media(max-width:820px){.nb-layout{display:flex;flex-direction:column}.nb-form,.nb-preview{width:100%}.nb-preview{position:static;order:2}}
@media(max-width:430px){.new-board{padding-inline:14px}.nb-head h1{font-size:36px}.nb-emoji{grid-template-columns:repeat(6,1fr)}}
/* board owner controls + rename modal */
.brd-owner{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap;margin:12px 0 0;padding:11px 15px;border:1px solid rgba(126,151,255,.24);border-radius:14px;background:linear-gradient(120deg,rgba(56,189,248,.05),rgba(168,85,247,.06))}
.brd-owner>span{display:flex;align-items:center;gap:9px;min-width:0;color:#cdd9ff}
.brd-owner>span svg{width:16px;flex:0 0 auto;color:#8fa6ff}
.brd-owner>span b{font-size:10px}
.brd-owner>span em{color:#8b8299;font-size:8px;font-style:normal}
.brd-owner>div{display:flex;gap:8px;flex:0 0 auto}
.brd-owner button{display:inline-flex;align-items:center;gap:6px;padding:8px 12px;color:#d7cfe2;border:1px solid rgba(255,255,255,.14);border-radius:10px;background:rgba(255,255,255,.04);font:inherit;font-size:9px;font-weight:850;cursor:pointer}
.brd-owner button svg{width:12px}
.brd-owner button:hover{border-color:rgba(126,151,255,.45)}
.brd-owner button.danger{color:#ff9fc6;border-color:rgba(255,45,155,.28);background:rgba(255,45,155,.05)}
.brd-owner button.danger:hover{border-color:rgba(255,45,155,.5)}
.cf-form{text-align:left}
.cf-form h2{margin:0 0 14px}
.bde-field{display:block;margin-bottom:12px}
.bde-field>span{display:block;margin:0 1px 6px;color:#786d80;font-size:6.5px;font-weight:900;letter-spacing:.13em}
.cf-form .field{margin:0;width:100%;background:rgba(0,0,0,.24);border-color:rgba(255,255,255,.1)}
.cf-form textarea.field{min-height:80px;padding-top:12px;resize:vertical}
.cf-form .cf-go{color:#05030a;border:0;background:linear-gradient(135deg,#67dcff,#9a69ff)}
@media(max-width:520px){.brd-owner>span em{display:none}}

/* ========================================================================== */
/* PLAYER CARD / PROFILE STUDIO — the identity system, rebuilt 2026-07-13.    */
/* ========================================================================== */
.yp-page,.pe-page{width:min(1280px,100%);margin:0 auto;padding:18px 22px 125px;color:#fff}.yp-hero{position:relative;min-height:570px;overflow:hidden;display:flex;flex-direction:column;justify-content:space-between;border:1px solid rgba(190,113,255,.34);border-radius:32px;background:var(--yp-grad,linear-gradient(145deg,#28213e,#0a0810));box-shadow:0 35px 100px rgba(0,0,0,.5)}.yp-hero-image{position:absolute;inset:0;background-image:var(--yp-cover);background-size:cover;background-position:center 34%;transform:scale(1.015)}.yp-hero-grade{position:absolute;inset:0;background:linear-gradient(90deg,rgba(5,3,11,.95) 0%,rgba(5,3,11,.64) 45%,rgba(5,3,11,.1) 76%),linear-gradient(0deg,rgba(5,3,11,.94) 0%,transparent 55%),radial-gradient(circle at 75% 30%,rgba(20,205,255,.12),transparent 32%)}.yp-hero-grid{position:absolute;inset:0;opacity:.24;background-image:linear-gradient(rgba(255,255,255,.04) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.04) 1px,transparent 1px);background-size:42px 42px;mask-image:linear-gradient(90deg,#000,transparent 65%)}.yp-hero-top,.yp-hero-copy,.yp-hero-metrics{position:relative;z-index:1}.yp-hero-top{display:flex;justify-content:space-between;align-items:center;padding:24px 27px;color:#9c90a7;font-size:9px;font-weight:900;letter-spacing:.19em}.yp-live-state{display:flex;align-items:center;gap:8px;padding:9px 12px;color:#8f8499;border:1px solid rgba(255,255,255,.11);border-radius:100px;background:rgba(7,4,13,.55);backdrop-filter:blur(14px)}.yp-live-state i{width:7px;height:7px;border-radius:50%;background:#716778}.yp-live-state.on{color:#baffd5;border-color:rgba(53,236,137,.28)}.yp-live-state.on i{background:#36ef8b;box-shadow:0 0 13px #36ef8b}.yp-hero-copy{display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:22px;align-items:end;padding:100px 32px 31px}.yp-avatar .avatar{width:108px;height:108px;border:2px solid rgba(255,255,255,.42);box-shadow:0 15px 45px rgba(0,0,0,.5)}.yp-identity{min-width:0}.yp-identity>small{display:block;margin-bottom:7px;color:#56d8ff;font-size:9px;font-weight:900;letter-spacing:.16em;text-transform:uppercase}.yp-identity h1{display:flex;align-items:center;gap:8px;margin:0;color:#fff;font-size:clamp(43px,5.8vw,78px);line-height:.84;letter-spacing:-.065em}.yp-identity h1 .vtick{width:23px;height:23px}.yp-identity p{max-width:560px;margin:12px 0 0;color:#c4b9ca;font-size:14px;line-height:1.45}.yp-hero-tags{display:flex;flex-wrap:wrap;gap:6px;margin-top:14px}.yp-hero-tags>*{padding:7px 9px;color:#d9d0df;background:rgba(8,5,14,.65);border:1px solid rgba(255,255,255,.13);border-radius:8px;font-size:8px;font-weight:850;letter-spacing:.08em;text-transform:uppercase;backdrop-filter:blur(12px)}.yp-hero-actions{display:flex;align-items:stretch;gap:8px}.yp-primary,.yp-secondary{display:flex;align-items:center;gap:10px;min-height:58px;padding:0 17px;color:#fff;border:1px solid rgba(72,209,255,.55);border-radius:14px;background:linear-gradient(135deg,rgba(42,114,224,.88),rgba(160,52,197,.85));box-shadow:0 0 32px rgba(73,164,255,.16);font:inherit;cursor:pointer}.yp-primary svg,.yp-secondary svg{width:18px}.yp-primary span{display:flex;flex-direction:column;align-items:flex-start}.yp-primary b{font-size:9px;letter-spacing:.08em}.yp-primary small{margin-top:3px;color:#d9cbe6;font-size:7px}.yp-secondary{justify-content:center;color:#c9bcd3;background:rgba(9,6,15,.72);border-color:rgba(255,255,255,.15);font-size:8px;font-weight:900;letter-spacing:.1em}.yp-public-actions{min-width:260px;display:flex;flex-direction:column;gap:8px}.yp-public-actions .btn{min-height:47px;margin:0}.yp-public-actions>.row{gap:8px!important}.yp-hero-metrics{display:grid;grid-template-columns:repeat(4,1fr);border-top:1px solid rgba(255,255,255,.11);background:rgba(5,3,11,.66);backdrop-filter:blur(16px)}.yp-hero-metrics>span{min-height:75px;display:flex;flex-direction:column;justify-content:center;padding:0 25px;border-left:1px solid rgba(255,255,255,.09)}.yp-hero-metrics>span:first-child{border-left:0}.yp-hero-metrics b{font-size:18px;line-height:1}.yp-hero-metrics small{margin-top:5px;color:#83778d;font-size:7px;font-weight:900;letter-spacing:.16em}.yp-shared{display:flex;align-items:center;gap:12px;margin-top:10px;padding:14px 16px;color:#fff;background:rgba(56,189,248,.06);border:1px solid rgba(56,189,248,.2);border-radius:15px}.yp-shared>svg{width:18px;color:var(--cyan)}.yp-shared>span{display:flex;flex-direction:column}.yp-shared b{font-size:9px}.yp-shared small{margin-top:2px;color:#8e8498;font-size:7px}.yp-body{padding-top:13px}.yp-tonight{display:grid;grid-template-columns:220px minmax(0,1fr);gap:14px;padding:17px;border-radius:21px;background:rgba(7,4,13,.84);border:1px solid rgba(255,255,255,.1)}.yp-tonight>header{display:flex;flex-direction:column;justify-content:center;padding:8px 13px}.yp-tonight>header small,.yp-section-head small,.yp-side-card>small,.yp-connection-col>header small{color:#56d8ff;font-size:7px;font-weight:900;letter-spacing:.18em}.yp-tonight>header h2{margin:5px 0 0;font-size:25px;line-height:.95;letter-spacing:-.04em}.yp-tonight>div{display:grid;grid-template-columns:repeat(3,1fr);gap:8px}.yp-tonight a{position:relative;min-width:0;display:grid;grid-template-columns:34px 1fr;grid-template-rows:auto auto auto;gap:2px 9px;padding:13px;color:#fff;background:rgba(255,255,255,.028);border:1px solid rgba(255,255,255,.09);border-radius:14px}.yp-tonight a>span{grid-row:1/4;width:34px;height:34px;display:grid;place-items:center;color:#63dcff;background:rgba(56,189,248,.08);border-radius:10px}.yp-tonight a svg{width:16px}.yp-tonight a small{color:#7d7188;font-size:6px;font-weight:900;letter-spacing:.11em}.yp-tonight a b{overflow:hidden;font-size:9px;white-space:nowrap;text-overflow:ellipsis}.yp-tonight a em{color:#9d8ee8;font-size:7px;font-style:normal}.yp-standing{display:grid;grid-template-columns:115px minmax(0,1fr) auto;align-items:center;gap:22px;margin-top:12px;padding:24px 28px;border-radius:23px;background:radial-gradient(circle at 12% 50%,rgba(142,66,255,.13),transparent 29%),rgba(7,4,13,.86);border:1px solid rgba(179,89,255,.22)}.yp-standing-ring{width:103px;height:103px;display:grid;place-items:center;border-radius:50%;background:conic-gradient(rgba(255,45,155,.6) calc(var(--yp-pct,68) * 1%),rgba(255,255,255,.08) 0);border:1px solid rgba(255,255,255,.14);backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);box-shadow:0 8px 30px rgba(0,0,0,.35),inset 0 0 20px rgba(255,255,255,.04)}.yp-standing-ring:before{content:"";grid-area:1/1;width:79px;height:79px;border-radius:50%;background:#09060f;border:1px solid rgba(255,255,255,.1)}.yp-standing-ring span{z-index:1;grid-area:1/1;font-size:18px;font-weight:950}.yp-standing.public .yp-standing-ring{background:linear-gradient(145deg,rgba(48,209,255,.28),rgba(214,66,255,.23))}.yp-standing-copy small{color:#f375c8;font-size:7px;font-weight:900;letter-spacing:.17em}.yp-standing-copy h2{margin:3px 0 5px;font-size:31px;line-height:1;letter-spacing:-.04em}.yp-standing-copy p{margin:0;color:#9d92a6;font-size:9.5px}.yp-standing-copy p b{color:#fff}.yp-progress{max-width:530px;height:5px;margin-top:12px;overflow:hidden;border-radius:4px;background:rgba(255,255,255,.07)}.yp-progress i{display:block;height:100%;border-radius:4px;background:linear-gradient(90deg,#7756ff,#f15fbd);box-shadow:0 0 15px #b64cff}.yp-standing-copy em{display:block;margin-top:6px;color:#796e83;font-size:7px;font-style:normal}.yp-text-link{color:#a998f2;background:none;border:0;font:inherit;font-size:7.5px;font-weight:850;text-decoration:none;cursor:pointer}.yp-layout{display:grid;grid-template-columns:minmax(0,1fr) 310px;gap:12px;align-items:start;margin-top:12px}.yp-main,.yp-rail{display:flex;flex-direction:column;gap:12px}.yp-rail{position:sticky;top:72px}.yp-panel,.yp-side-card{padding:22px;border-radius:22px;background:rgba(7,4,13,.84);border:1px solid rgba(255,255,255,.09)}.yp-side-card{padding:17px;border-radius:18px}.yp-section-head{display:flex;align-items:flex-end;justify-content:space-between;gap:20px}.yp-section-head>span{display:flex;flex-direction:column}.yp-section-head h2{max-width:620px;margin:5px 0 0;font-size:clamp(25px,3.5vw,40px);line-height:.96;letter-spacing:-.045em}.yp-section-head p{max-width:290px;margin:0;color:#82778c;font-size:8px;line-height:1.45;text-align:right}.yp-signal blockquote{margin:24px 0 0;padding:0 0 19px;color:#fff;border-bottom:1px solid rgba(255,255,255,.08);font-size:clamp(18px,2.5vw,27px);font-weight:780;line-height:1.25;letter-spacing:-.025em}.yp-signal blockquote button,.yp-tags button{padding:0;color:#a99aef;background:none;border:0;font:inherit;cursor:pointer}.yp-signal-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px;margin-top:18px}.yp-signal-grid>div>small{color:#74697e;font-size:6.5px;font-weight:900;letter-spacing:.15em}.yp-signal-grid p{margin:8px 0 0;color:#8f8499;font-size:8px}.yp-tags{display:flex;flex-wrap:wrap;gap:6px;margin-top:9px}.yp-tags>span,.yp-tags>button,.yp-tags .plat-chip{display:inline-flex;align-items:center;gap:5px;padding:7px 8px;color:#c9becf;background:rgba(255,255,255,.035);border:1px solid rgba(255,255,255,.1);border-radius:8px;font-size:7px;font-weight:780}.yp-tags.times i{width:6px;height:6px;border-radius:50%;background:#40e990;box-shadow:0 0 9px #40e990}.yp-tags.platforms{margin-bottom:13px}.yp-game-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:8px;margin-top:19px}.yp-game{position:relative;min-height:190px;overflow:hidden;display:flex;align-items:flex-end;justify-content:space-between;padding:15px;border:1px solid rgba(255,255,255,.11);border-radius:17px;background-image:var(--yp-game);background-size:cover;background-position:center}.yp-game:before{content:"";position:absolute;inset:0;background:linear-gradient(0deg,rgba(5,3,11,.96),rgba(5,3,11,.03) 80%)}.yp-game>div,.yp-game>.rank-chip{position:relative;z-index:1}.yp-game>div{display:flex;flex-direction:column}.yp-game small{color:#64dcff;font-size:6px;font-weight:900;letter-spacing:.13em}.yp-game b{margin-top:3px;font-size:15px}.yp-games>.steam-panel{margin-top:9px}.yp-proof-action{width:100%;margin-top:9px;padding:11px;color:#a99af0;background:rgba(168,85,247,.035);border:1px solid rgba(168,85,247,.14);border-radius:11px;font:inherit;font-size:7.5px;font-weight:800;cursor:pointer}.yp-connection-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-top:19px}.yp-connection-col{padding:13px;border-radius:15px;background:rgba(255,255,255,.023);border:1px solid rgba(255,255,255,.08)}.yp-connection-col>header{display:flex;justify-content:space-between;padding:1px 2px 9px}.yp-connection-col>header button,.yp-connection-col>header a{color:#9f8fe8;background:none;border:0;font:inherit;font-size:6.5px;font-weight:900}.yp-crew-row,.yp-room-row{display:flex;align-items:center;gap:8px;padding:10px 2px;color:#fff;border-top:1px solid rgba(255,255,255,.07)}.yp-crew-mark{width:34px;height:34px;display:grid;place-items:center;flex:0 0 auto;border-radius:10px;color:#fff;background:linear-gradient(145deg,#6349e9,#b741a7);font-size:11px;font-weight:900}.yp-crew-row>span:nth-child(2){display:flex;flex-direction:column;min-width:0;flex:1}.yp-crew-row b{font-size:8px}.yp-crew-row small{margin-top:2px;color:#74697d;font-size:6.5px}.yp-crew-row em{color:#9a8bdd;font-size:6.5px;font-style:normal}.yp-room-row{position:relative;min-height:66px;overflow:hidden;margin-top:6px;padding:10px;border:0;border-radius:11px;background-image:linear-gradient(90deg,rgba(5,3,11,.95),rgba(5,3,11,.38)),var(--yp-room);background-size:cover;background-position:center}.yp-room-row>span{z-index:1;display:flex;flex-direction:column;min-width:0;flex:1}.yp-room-row small{color:#5ddaff;font-size:5.5px;font-weight:900;letter-spacing:.12em}.yp-room-row b{margin-top:3px;font-size:9px}.yp-room-row em{margin-top:3px;color:#918699;font-size:6.5px;font-style:normal}.yp-room-row strong{z-index:1;color:#fff;font-size:6.5px}.yp-empty-action{display:block;width:100%;padding:14px;color:#a99af0;background:rgba(168,85,247,.035);border:1px dashed rgba(168,85,247,.24);border-radius:11px;font:inherit;font-size:7.5px;text-align:center;cursor:pointer}.yp-side-card>small{display:block;margin-bottom:10px}.yp-codes{margin-top:10px;border-top:1px solid rgba(255,255,255,.07)}.yp-codes>div{display:flex;align-items:center;justify-content:space-between;padding:9px 0;border-bottom:1px solid rgba(255,255,255,.07)}.yp-codes span{display:flex;flex-direction:column}.yp-codes small{color:#716678;font-size:5.5px}.yp-codes b{margin-top:2px;font-size:7.5px}.yp-codes button{padding:6px 8px;color:#9d8ee5;background:rgba(168,85,247,.06);border:1px solid rgba(168,85,247,.16);border-radius:7px;font:inherit;font-size:6px}.yp-trophies{display:grid;grid-template-columns:repeat(2,1fr);gap:6px}.yp-trophies>span{display:flex;flex-direction:column;align-items:center;padding:11px 5px;text-align:center;border-radius:10px;background:rgba(255,255,255,.03);border:1px solid rgba(255,255,255,.07)}.yp-trophies i{font-size:20px;font-style:normal}.yp-trophies b{margin-top:5px;font-size:6px}.yp-links>div{display:flex;align-items:center;border-top:1px solid rgba(255,255,255,.07)}.yp-links>div:first-child{border-top:0}.yp-links a{min-width:0;flex:1;display:grid;grid-template-columns:24px 1fr auto;align-items:center;gap:7px;padding:10px 0;color:#fff}.yp-links a i{font-size:15px;font-style:normal}.yp-links a b{overflow:hidden;font-size:7.5px;white-space:nowrap;text-overflow:ellipsis}.yp-links a span{color:#81758a}.yp-links>div>button{padding:8px;color:#706575;background:none;border:0}.yp-links svg{width:12px}.yp-request{display:grid;grid-template-columns:32px minmax(0,1fr) auto auto;gap:7px;align-items:center;padding:8px 0;border-top:1px solid rgba(255,255,255,.07)}.yp-request>a{display:flex;flex-direction:column;color:#fff}.yp-request b{font-size:7.5px}.yp-request small{color:#716678;font-size:6px}.yp-request button{padding:5px;color:#ab9aee;background:none;border:0;font:inherit;font-size:6.5px}.yp-account>button,.yp-account>a{width:100%;display:flex;align-items:center;justify-content:space-between;padding:11px 0;color:#fff;background:none;border:0;border-top:1px solid rgba(255,255,255,.07);font:inherit;text-align:left;cursor:pointer}.yp-account>button:first-of-type{border-top:0}.yp-account span{display:flex;flex-direction:column}.yp-account b{font-size:7.5px}.yp-account small{margin-top:3px;color:#706575;font-size:6px}.yp-account i{padding:5px 6px;color:#9b8ce3;background:rgba(168,85,247,.06);border-radius:6px;font-size:5.5px;font-style:normal}.yp-safety p{color:#8b8094;font-size:7px;line-height:1.4}.yp-safety button,.yp-muted-action{width:100%;padding:8px 0;color:#7e7287;background:none;border:0;border-top:1px solid rgba(255,255,255,.07);font:inherit;font-size:7px;text-align:left}.yp-rep-you{margin-top:10px;color:#81768b;font-size:7px}

/* Player card studio. */
.pe-page{max-width:1200px}.pe-head{padding:42px 4px 30px;border-bottom:1px solid rgba(255,255,255,.09)}.pe-head>small{color:#5bddff;font-size:8px;font-weight:900;letter-spacing:.2em}.pe-head h1{max-width:900px;margin:9px 0 12px;font-size:clamp(43px,7vw,78px);line-height:.87;letter-spacing:-.065em}.pe-head p{max-width:680px;margin:0;color:#958a9f;font-size:11px;line-height:1.55}.pe-layout{display:grid;grid-template-columns:minmax(0,1fr) 340px;gap:13px;align-items:start;margin-top:15px}.pe-form{display:flex;flex-direction:column;gap:12px}.pe-section{padding:22px;border-radius:22px;background:rgba(7,4,13,.84);border:1px solid rgba(255,255,255,.09)}.pe-section>header{display:flex;align-items:center;gap:11px;margin-bottom:20px}.pe-section>header>span{width:37px;height:37px;display:grid;place-items:center;flex:0 0 auto;color:#5bdcff;background:rgba(56,189,248,.07);border:1px solid rgba(56,189,248,.14);border-radius:11px;font-size:7px;font-weight:900}.pe-section>header div{display:flex;flex-direction:column}.pe-section>header small,.pe-label>span,.pe-pick>small,.pe-two label>span,.pe-fields label>span,.pe-gradients>small,.pe-code-fields>small,.pe-code-fields label>span{color:#766b80;font-size:6.5px;font-weight:900;letter-spacing:.15em}.pe-section>header small{color:#58d9ff}.pe-section>header h2{margin:3px 0 0;font-size:21px;letter-spacing:-.03em}.pe-identity-grid{display:grid;grid-template-columns:160px minmax(0,1fr);gap:18px}.pe-photo{display:flex;flex-direction:column;align-items:center;padding:17px;border-radius:16px;background:rgba(255,255,255,.025);border:1px solid rgba(255,255,255,.08)}.pe-photo .avatar{width:100px;height:100px}.pe-photo label,.pe-photo button{margin-top:10px;padding:7px 9px;color:#aa9aee;background:rgba(168,85,247,.05);border:1px solid rgba(168,85,247,.16);border-radius:8px;font:inherit;font-size:6.5px;cursor:pointer}.pe-photo button{margin-top:5px;color:#776d80;background:none;border:0}.pe-fields{display:grid;grid-template-columns:1fr 1fr;gap:11px}.pe-fields label,.pe-two label,.pe-code-fields label,.pe-label{display:flex;flex-direction:column;gap:6px}.pe-fields label:nth-child(3),.pe-fields label:nth-child(4){grid-column:auto}.pe-fields .field,.pe-two .field,.pe-code-fields .field,.pe-label .field,.pe-add-game .field{margin:0;color:#fff;background:rgba(255,255,255,.032);border-color:rgba(255,255,255,.1)}.pe-locked{min-height:46px;display:flex;align-items:center;justify-content:space-between;padding:0 12px;color:#82778b;background:rgba(255,255,255,.022);border:1px solid rgba(255,255,255,.07);border-radius:10px;font-size:9px}.pe-locked i{padding:4px 6px;color:#665c70;background:rgba(255,255,255,.04);border-radius:5px;font-size:5px;font-style:normal}.pe-gradients{display:flex;align-items:center;gap:14px;margin-top:15px;padding-top:14px;border-top:1px solid rgba(255,255,255,.07)}.pe-gradients>div{display:flex;gap:6px}.pe-gradients .grad-pick{width:27px;height:27px}.pe-pick{margin-top:17px}.pe-pick:first-of-type{margin-top:0}.pe-pick>div{display:flex;flex-wrap:wrap;gap:6px;margin-top:8px}.pe-pick .chip{margin:0}.pe-two{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-top:17px}.pe-add-game{display:grid;grid-template-columns:1fr auto;gap:7px;margin-top:9px}.pe-add-game button{padding:0 14px;color:#a99af0;background:rgba(168,85,247,.07);border:1px solid rgba(168,85,247,.18);border-radius:10px;font:inherit;font-size:7px;font-weight:900}.pe-code-fields{display:grid;grid-template-columns:1fr 1fr;gap:9px;margin-top:16px}.pe-code-fields>small{grid-column:1/-1}.pe-section.protect{border-color:rgba(242,87,172,.17);background:radial-gradient(circle at 95% 0,rgba(255,57,154,.07),transparent 35%),rgba(7,4,13,.84)}.pe-section.protect>p{margin:-8px 0 14px;color:#81758a;font-size:8px}.pe-preview{position:sticky;top:74px;padding:15px;border-radius:21px;background:rgba(7,4,13,.9);border:1px solid rgba(174,88,255,.2)}.pe-preview-label{display:flex;justify-content:space-between;padding:2px 2px 11px;color:#786d82;font-size:6.5px;font-weight:900;letter-spacing:.14em}.pe-preview-label b{color:#5bdcff}.pe-preview article{position:relative;min-height:450px;overflow:hidden;border-radius:17px;background:var(--pe-grad,linear-gradient(145deg,#28213e,#0a0810));border:1px solid rgba(255,255,255,.11)}.pe-preview-image{position:absolute;inset:0;background-image:var(--pe-cover);background-size:cover;background-position:center}.pe-preview-grade{position:absolute;inset:0;background:linear-gradient(0deg,rgba(5,3,11,.98),rgba(5,3,11,.06) 76%),linear-gradient(90deg,rgba(54,18,85,.25),rgba(12,142,175,.1))}.pe-preview-status{position:absolute;top:13px;left:13px;display:flex;align-items:center;gap:6px;padding:7px 8px;color:#b8ffd1;background:rgba(5,3,11,.68);border:1px solid rgba(50,235,134,.2);border-radius:100px;font-size:5.5px;font-weight:900;letter-spacing:.13em}.pe-preview-status i{width:6px;height:6px;border-radius:50%;background:#3aef8c;box-shadow:0 0 10px #3aef8c}.pe-preview-copy{position:absolute;z-index:1;left:17px;right:17px;bottom:18px}.pe-preview-copy .avatar{width:59px;height:59px;margin-bottom:11px;border:1px solid rgba(255,255,255,.4)}.pe-preview-copy>small{color:#59d9ff;font-size:6px;font-weight:900;letter-spacing:.14em}.pe-preview-copy h2{margin:4px 0 0;font-size:30px;line-height:.94;letter-spacing:-.05em}.pe-preview-copy p{margin:8px 0 0;color:#c0b4c7;font-size:8px;line-height:1.4}.pe-preview-copy>div{display:flex;flex-wrap:wrap;gap:4px;margin-top:11px}.pe-preview-copy>div span{padding:5px 6px;color:#cbbfd1;background:rgba(5,3,11,.6);border:1px solid rgba(255,255,255,.11);border-radius:6px;font-size:5.5px;font-weight:850}.pe-preview-proof{display:grid;grid-template-columns:repeat(3,1fr);margin-top:8px;border:1px solid rgba(255,255,255,.08);border-radius:11px}.pe-preview-proof span{display:flex;flex-direction:column;align-items:center;padding:9px 3px;border-left:1px solid rgba(255,255,255,.07)}.pe-preview-proof span:first-child{border-left:0}.pe-preview-proof b{font-size:10px}.pe-preview-proof small{margin-top:3px;color:#6e6478;font-size:5px}.pe-save{width:100%;min-height:49px;display:flex;align-items:center;justify-content:space-between;margin-top:10px;padding:0 15px;color:#fff;background:linear-gradient(120deg,#704ef1,#d63fa1);border:1px solid rgba(255,255,255,.16);border-radius:12px;font:inherit;font-size:8px;font-weight:950;letter-spacing:.08em;cursor:pointer;box-shadow:0 12px 30px rgba(137,58,220,.18)}.pe-preview>p,.pe-save-mobile>small{display:block;margin:8px 5px 1px;color:#6f6578;font-size:6px;line-height:1.4;text-align:center}.pe-save-mobile{display:none}

@media(max-width:950px){.yp-layout{grid-template-columns:minmax(0,1fr) 270px}.yp-hero-copy{grid-template-columns:auto 1fr}.yp-hero-actions{grid-column:1/-1}.yp-hero-actions .yp-primary{flex:1}.yp-tonight{grid-template-columns:1fr}.pe-layout{grid-template-columns:minmax(0,1fr) 300px}.pe-fields{grid-template-columns:1fr}}
@media(max-width:720px){.yp-page,.pe-page{padding:10px 13px 110px}.yp-hero{min-height:620px;border-radius:24px}.yp-hero-grade{background:linear-gradient(0deg,rgba(5,3,11,.98) 0%,rgba(5,3,11,.18) 78%),linear-gradient(90deg,rgba(5,3,11,.5),transparent)}.yp-hero-top{padding:17px}.yp-hero-copy{display:flex;flex-direction:column;align-items:flex-start;gap:11px;padding:160px 18px 19px}.yp-avatar .avatar{width:82px;height:82px}.yp-identity h1{font-size:48px}.yp-identity p{font-size:11px}.yp-hero-actions{width:100%}.yp-hero-actions .yp-primary{flex:1}.yp-hero-actions .yp-secondary{width:90px}.yp-public-actions{width:100%;min-width:0}.yp-hero-metrics>span{min-height:62px;padding:0 11px}.yp-hero-metrics b{font-size:14px}.yp-hero-metrics small{font-size:5.5px}.yp-tonight{padding:13px}.yp-tonight>header{padding:6px 4px}.yp-tonight>div{display:flex;overflow-x:auto;scroll-snap-type:x mandatory}.yp-standing{grid-template-columns:84px 1fr;gap:14px;padding:19px 16px}.yp-standing-ring{width:78px;height:78px}.yp-standing-ring:before{width:59px;height:59px}.yp-standing-ring span{font-size:14px}.yp-standing>.yp-text-link{grid-column:2}.yp-standing-copy h2{font-size:25px}.yp-layout{display:flex;flex-direction:column}.yp-main,.yp-rail{width:100%}.yp-rail{position:static}.yp-section-head{align-items:flex-start;flex-direction:column;gap:6px}.yp-section-head p{text-align:left}.yp-signal-grid,.yp-connection-grid{grid-template-columns:1fr}.yp-game{min-height:155px}.pe-head{padding:25px 3px 20px}.pe-head h1{font-size:46px}.pe-layout{display:flex;flex-direction:column}.pe-form,.pe-preview{width:100%}.pe-preview{position:static;order:-1}.pe-preview article{min-height:420px}.pe-preview>.pe-save,.pe-preview>p{display:none}.pe-save-mobile{display:block}.pe-identity-grid{grid-template-columns:1fr}.pe-photo{flex-direction:row;justify-content:flex-start;gap:8px}.pe-photo .avatar{margin-right:8px}.pe-photo label,.pe-photo button{margin-top:0}.pe-fields,.pe-two,.pe-code-fields{grid-template-columns:1fr}.pe-code-fields>small{grid-column:auto}.pe-section{padding:17px}}
@media(max-width:430px){.yp-page,.pe-page{padding-inline:9px}.yp-hero{min-height:590px;border-radius:21px}.yp-hero-top>span:last-child{display:none}.yp-identity h1{font-size:42px}.yp-hero-tags>*:nth-child(n+4){display:none}.yp-primary{min-height:52px}.yp-primary small{display:none}.yp-hero-metrics>span{padding-inline:8px}.yp-hero-metrics small{letter-spacing:.08em}.yp-panel{padding:17px}.yp-standing-copy p{font-size:8px}.yp-game-grid{display:flex;overflow-x:auto;scroll-snap-type:x mandatory}.yp-game{min-width:77vw;scroll-snap-align:start}.yp-trophies{grid-template-columns:repeat(3,1fr)}.pe-head h1{font-size:40px}.pe-section{padding:14px}.pe-section>header h2{font-size:18px}.pe-photo{flex-wrap:wrap}.pe-photo .avatar{width:76px;height:76px}.pe-preview article{min-height:390px}}

.yp-rep-score{display:flex;align-items:center;gap:10px;padding:3px 0 10px}.yp-rep-score>b{font-size:26px;letter-spacing:-.04em}.yp-rep-score>span{color:#81768b;font-size:6.5px;line-height:1.45}.yp-rating-row{display:flex;align-items:center;justify-content:space-between;gap:8px;padding:9px 0;border-top:1px solid rgba(255,255,255,.07)}.yp-rating-row>span{display:flex;flex-direction:column;color:#b8adbf;font-size:6.5px}.yp-rating-row small{margin-top:3px;color:#6f6478;font-size:5.5px}.yp-rating-row button,.yp-rate-action{padding:5px 7px;color:#a99aee;background:none;border:1px solid rgba(168,85,247,.16);border-radius:7px;font:inherit;font-size:5.5px;cursor:pointer}.yp-reputation>p{margin:8px 0 0;color:#6d6276;font-size:6px;line-height:1.45}.yp-rate-action{width:100%;padding:10px;text-align:left;font-size:7px}

/* ========================================================================== */
/* SIGNAL DESK / NOTIFICATIONS — decisions first, noise second.               */
/* ========================================================================== */
.ntf-page{width:min(1180px,100%);padding:30px 22px 125px}.ntf-head{display:flex;align-items:flex-end;justify-content:space-between;gap:30px;padding:35px 4px 28px;border-bottom:1px solid rgba(255,255,255,.09)}.ntf-head>div:first-child>small{color:#55ddff;font-size:8px;font-weight:900;letter-spacing:.21em}.ntf-head h1{margin:9px 0 11px;font-size:clamp(48px,7.5vw,88px);line-height:.82;letter-spacing:-.07em}.ntf-head h1 span{color:transparent;-webkit-text-stroke:1px rgba(224,199,242,.65)}.ntf-head p{max-width:680px;margin:0;color:#95899f;font-size:11px;line-height:1.55}.ntf-head-actions{display:flex;flex-direction:column;align-items:flex-end;gap:9px;padding-bottom:3px}.ntf-push-state{display:flex;align-items:center;gap:7px;color:#776c81;font-size:6.5px;font-weight:900;letter-spacing:.15em}.ntf-push-state i{width:6px;height:6px;border-radius:50%;background:#6d6277}.ntf-push-state.on{color:#adffcb}.ntf-push-state.on i{background:#3cef8c;box-shadow:0 0 10px #3cef8c}.ntf-head-actions button{padding:10px 12px;color:#ccbfe1;background:rgba(168,85,247,.07);border:1px solid rgba(168,85,247,.2);border-radius:10px;font:inherit;font-size:7px;font-weight:900;letter-spacing:.1em;cursor:pointer}.ntf-head-actions>b{color:#7d7287;font-size:7px;letter-spacing:.1em}.ntf-pulse{display:grid;grid-template-columns:repeat(3,1fr);margin-top:13px;overflow:hidden;border:1px solid rgba(255,255,255,.09);border-radius:18px;background:rgba(7,4,13,.84)}.ntf-pulse>span{display:grid;grid-template-columns:1fr auto;grid-template-rows:auto auto;gap:4px 10px;padding:16px 18px;border-left:1px solid rgba(255,255,255,.08)}.ntf-pulse>span:first-child{border-left:0}.ntf-pulse small{color:#73687d;font-size:6.5px;font-weight:900;letter-spacing:.16em}.ntf-pulse b{grid-row:1/3;grid-column:2;font-size:29px;line-height:1}.ntf-pulse em{color:#8c8195;font-size:7px;font-style:normal}.ntf-pulse .hot b{color:#ff73ba;text-shadow:0 0 22px rgba(255,70,169,.3)}.ntf-push{width:100%;display:grid;grid-template-columns:42px minmax(0,1fr) auto;gap:12px;align-items:center;margin-top:12px;padding:15px 17px;color:#fff;background:linear-gradient(100deg,rgba(35,167,219,.09),rgba(154,59,206,.08));border:1px solid rgba(70,203,255,.2);border-radius:16px;font:inherit;text-align:left;cursor:pointer}.ntf-push>span:first-child{width:42px;height:42px;display:grid;place-items:center;color:#62dfff;background:rgba(56,189,248,.08);border-radius:12px}.ntf-push svg{width:19px}.ntf-push>span:nth-child(2){display:flex;flex-direction:column}.ntf-push small{color:#57dbff;font-size:6px;font-weight:900;letter-spacing:.15em}.ntf-push b{margin-top:3px;font-size:10px}.ntf-push em{margin-top:3px;color:#81768b;font-size:7px;font-style:normal}.ntf-push strong{color:#b3a3f1;font-size:7px;letter-spacing:.08em}.ntf-push.blocked{border-color:rgba(255,89,154,.2);background:rgba(255,58,143,.04)}.ntf-push.blocked>span:first-child,.ntf-push.blocked small{color:#ff72b5}.ntf-tabs{display:flex;align-items:center;gap:4px;margin-top:16px;padding:4px;border:1px solid rgba(255,255,255,.08);border-radius:14px;background:rgba(7,4,13,.76)}.ntf-tabs button{flex:1;min-height:43px;display:flex;align-items:center;justify-content:center;gap:8px;color:#776c81;background:none;border:0;border-radius:10px;font:inherit;font-size:7.5px;font-weight:850;cursor:pointer}.ntf-tabs button b{min-width:21px;padding:4px 5px;color:#655b70;background:rgba(255,255,255,.035);border-radius:7px;font-size:6px}.ntf-tabs button.on{color:#fff;background:linear-gradient(125deg,rgba(62,118,239,.22),rgba(178,62,205,.18));box-shadow:inset 0 0 0 1px rgba(128,168,255,.16)}.ntf-tabs button.on b{color:#67dfff;background:rgba(56,189,248,.08)}.ntf-group{margin-top:18px}.ntf-group>header{display:flex;align-items:center;justify-content:space-between;padding:0 5px 8px;color:#706576;font-size:6.5px;font-weight:900;letter-spacing:.17em}.ntf-group>header>span{display:flex;align-items:center;gap:7px}.ntf-group>header i{width:6px;height:6px;border-radius:50%;background:#ff56ab;box-shadow:0 0 10px #ff56ab}.ntf-group>header>b{font-size:7px}.ntf-group>div{overflow:hidden;border:1px solid rgba(255,255,255,.09);border-radius:19px;background:rgba(7,4,13,.84)}.ntf-row{position:relative;min-height:86px;display:grid;grid-template-columns:36px 46px minmax(0,1fr) auto auto;gap:12px;align-items:center;padding:13px 15px;color:#fff;border-top:1px solid rgba(255,255,255,.075);transition:background .15s,border-color .15s}.ntf-row:first-child{border-top:0}.ntf-row:hover{background:rgba(255,255,255,.025)}.ntf-row.unread{background:linear-gradient(90deg,rgba(54,134,255,.055),transparent 55%)}.ntf-row.unread:before{content:"";position:absolute;left:0;top:18%;bottom:18%;width:2px;border-radius:2px;background:#4bd9ff;box-shadow:0 0 10px #4bd9ff}.ntf-row.urgent{background:linear-gradient(90deg,rgba(255,65,159,.065),transparent 60%)}.ntf-row.urgent:before{background:#ff55aa;box-shadow:0 0 10px #ff55aa}.ntf-icon{width:36px;height:36px;display:grid;place-items:center;color:#a796ee;background:rgba(168,85,247,.06);border:1px solid rgba(168,85,247,.14);border-radius:11px}.ntf-icon svg{width:16px}.ntf-avatar{position:relative}.ntf-avatar>.avatar{width:44px;height:44px}.ntf-avatar>i{position:absolute;right:0;bottom:0;width:9px;height:9px;border:2px solid #09060f;border-radius:50%;background:#4bdcff}.ntf-copy{min-width:0;display:flex;flex-direction:column}.ntf-copy>small{color:#56dafa;font-size:5.8px;font-weight:900;letter-spacing:.15em}.ntf-row.urgent .ntf-copy>small{color:#ff6eb5}.ntf-copy>b{margin-top:4px;color:#afa4b6;font-size:8.5px;font-weight:520;line-height:1.35}.ntf-copy>b strong{color:#fff;font-weight:900}.ntf-copy>em{margin-top:4px;color:#655b70;font-size:6px;font-style:normal}.ntf-open{display:flex;align-items:center;gap:11px;padding-left:15px}.ntf-open b{color:#9c8de6;font-size:7px}.ntf-open i{width:30px;height:30px;display:grid;place-items:center;color:#c9bdd1;background:rgba(255,255,255,.035);border:1px solid rgba(255,255,255,.09);border-radius:9px;font-size:10px;font-style:normal}.ntf-row.read{opacity:.68}.ntf-row.read:hover{opacity:1}.ntf-empty{min-height:420px;display:flex;flex-direction:column;align-items:center;justify-content:center;margin-top:18px;padding:35px;text-align:center;border:1px solid rgba(255,255,255,.09);border-radius:22px;background:rgba(7,4,13,.8)}.ntf-empty>span{width:58px;height:58px;display:grid;place-items:center;color:#5adeff;background:rgba(56,189,248,.06);border:1px solid rgba(56,189,248,.14);border-radius:17px}.ntf-empty svg{width:22px}.ntf-empty small{margin-top:18px;color:#56dcff;font-size:6.5px;font-weight:900;letter-spacing:.17em}.ntf-empty h2{margin:6px 0 0;font-size:30px;letter-spacing:-.04em}.ntf-empty p{max-width:500px;margin:8px 0 0;color:#7f7489;font-size:8.5px;line-height:1.55}.ntf-empty a{margin-top:14px;color:#a99af0;font-size:7.5px;font-weight:850}
.ntf-x{width:26px;height:26px;display:grid;place-items:center;color:#8f8499;background:rgba(255,255,255,.04);border:1px solid rgba(255,255,255,.12);border-radius:50%;font:inherit;font-size:10px;cursor:pointer}
.ntf-x:hover{color:#ffd6d6;border-color:rgba(255,90,90,.5);box-shadow:0 0 10px rgba(255,90,90,.25)}
@media(max-width:700px){.ntf-x{position:absolute;top:9px;right:9px;width:22px;height:22px;font-size:9px}}
@media(max-width:700px){.ntf-page{padding:10px 13px 110px}.ntf-head{align-items:flex-start;flex-direction:column;padding:24px 3px 20px}.ntf-head h1{font-size:53px}.ntf-head p{font-size:9.5px}.ntf-head-actions{width:100%;align-items:center;flex-direction:row;justify-content:space-between}.ntf-pulse{display:grid;grid-template-columns:1fr}.ntf-pulse>span{border-left:0;border-top:1px solid rgba(255,255,255,.08)}.ntf-pulse>span:first-child{border-top:0}.ntf-push{grid-template-columns:38px 1fr;padding:13px}.ntf-push>span:first-child{width:38px;height:38px}.ntf-push>strong{grid-column:2}.ntf-tabs{overflow-x:auto;justify-content:flex-start}.ntf-tabs button{min-width:95px;flex:0 0 auto}.ntf-row{grid-template-columns:36px 42px minmax(0,1fr);gap:9px;padding:12px 11px}.ntf-open{grid-column:3;padding:0}.ntf-open i{display:none}.ntf-open b{color:#a596e9}.ntf-copy>b{font-size:8px}}
@media(max-width:430px){.ntf-page{padding-inline:9px}.ntf-head h1{font-size:46px}.ntf-push em{font-size:6.5px}.ntf-row{grid-template-columns:32px 38px minmax(0,1fr)}.ntf-icon{width:32px;height:32px}.ntf-avatar>.avatar{width:38px;height:38px}.ntf-copy>b{font-size:7.5px}}

/* Signal Desk decisions, permission recovery, and durable receipts. */
.ntf-copy{color:inherit;text-decoration:none}.ntf-decide{display:flex;align-items:center;gap:6px;padding-left:12px}.ntf-decide button{min-height:34px;padding:7px 10px;color:#92879c;background:rgba(255,255,255,.035);border:1px solid rgba(255,255,255,.1);border-radius:9px;font:inherit;font-size:6.5px;font-weight:900;cursor:pointer}.ntf-decide button.yes{color:#fff;background:linear-gradient(120deg,#4d70dc,#c23f99);border-color:rgba(225,113,190,.35)}.ntf-push-ready{display:grid;grid-template-columns:42px minmax(0,1fr) auto;gap:12px;align-items:center;margin-top:12px;padding:15px 17px;border-radius:16px;background:linear-gradient(100deg,rgba(52,211,153,.065),rgba(56,189,248,.045));border:1px solid rgba(52,211,153,.2)}.ntf-push-ready>span{width:42px;height:42px;display:grid;place-items:center;color:var(--mint);background:rgba(52,211,153,.07);border-radius:12px}.ntf-push-ready svg{width:18px}.ntf-push-ready>div{display:flex;flex-direction:column}.ntf-push-ready small{color:var(--mint);font-size:6px;font-weight:900;letter-spacing:.15em}.ntf-push-ready b{margin-top:3px;color:#fff;font-size:10px}.ntf-push-ready em{margin-top:3px;color:#81768b;font-size:7px;font-style:normal}.ntf-push-ready>button{padding:9px 11px;color:#c9ffe0;background:rgba(52,211,153,.06);border:1px solid rgba(52,211,153,.18);border-radius:9px;font:inherit;font-size:6.5px;font-weight:900;cursor:pointer}.ntf-notice{position:relative;display:grid;grid-template-columns:40px minmax(0,1fr) auto;gap:12px;align-items:center;margin-top:12px;padding:13px 45px 13px 13px;border-radius:16px;background:linear-gradient(110deg,rgba(52,211,153,.07),rgba(56,189,248,.045));border:1px solid rgba(52,211,153,.22)}.ntf-notice>span{width:40px;height:40px;display:grid;place-items:center;color:var(--mint);background:rgba(52,211,153,.08);border-radius:11px}.ntf-notice>span svg{width:17px}.ntf-notice>div{display:flex;flex-direction:column}.ntf-notice small{color:var(--mint);font-size:6px;font-weight:950;letter-spacing:.14em}.ntf-notice h2{margin:3px 0 0;color:#fff;font-size:12px}.ntf-notice p{margin:3px 0 0;color:#8d8297;font-size:7.5px;line-height:1.4}.ntf-notice>a{color:#b8a9ff;font-size:7px;font-weight:900;white-space:nowrap}.ntf-notice>button{position:absolute;top:9px;right:9px;width:27px;height:27px;display:grid;place-items:center;color:#7d7287;background:transparent;border:0;cursor:pointer}.ntf-notice>button svg{width:12px}.ntf-notice.passed{background:rgba(255,255,255,.025);border-color:rgba(255,255,255,.1)}.ntf-notice.passed>span{color:#978b9f;background:rgba(255,255,255,.04)}.ntf-notice.passed small{color:#a095a8}.ntf-review-wrap{position:fixed;z-index:245;inset:0;display:grid;place-items:center;padding:18px}.ntf-review-backdrop{position:absolute;inset:0;background:rgba(2,1,6,.86);border:0;backdrop-filter:blur(12px)}.ntf-review{position:relative;width:min(100%,520px);padding:29px;border-radius:25px;background:radial-gradient(circle at 90% 0,rgba(168,85,247,.17),transparent 40%),linear-gradient(145deg,#13091d,#07040e);border:1px solid rgba(168,85,247,.35);box-shadow:0 35px 110px rgba(0,0,0,.75)}.ntf-review h2{margin:8px 0 9px;color:#fff;font-size:40px;line-height:.87;letter-spacing:-.058em}.ntf-review>p{margin:0;color:#95899f;font-size:9.5px;line-height:1.55}.ntf-review>div:not(.pd-kicker){display:grid;grid-template-columns:1fr 1fr;gap:7px;margin-top:16px}.ntf-review>div>span{display:flex;align-items:center;gap:7px;padding:10px;border-radius:11px;color:#c9bfce;background:rgba(255,255,255,.03);border:1px solid rgba(255,255,255,.08)}.ntf-review>div svg{width:14px;color:var(--mint)}.ntf-review>div b{font-size:7px}.ntf-review ol{margin:16px 0 0;padding:0;counter-reset:ntfhelp;list-style:none}.ntf-review li{counter-increment:ntfhelp;display:grid;grid-template-columns:25px 1fr;gap:8px;align-items:center;padding:9px 0;color:#b9afc1;border-top:1px solid rgba(255,255,255,.07);font-size:8px}.ntf-review li:first-child{border-top:0}.ntf-review li::before{content:"0" counter(ntfhelp);width:25px;height:25px;display:grid;place-items:center;color:var(--cyan);background:rgba(56,189,248,.06);border-radius:7px;font-size:6px;font-weight:900}.ntf-review footer{display:grid;grid-template-columns:1fr 1.2fr;gap:8px;margin-top:17px}.ntf-review footer:has(>button:only-child){grid-template-columns:1fr}
@media(max-width:700px){.ntf-decide{grid-column:3;padding:0}.ntf-decide button{flex:1}.ntf-push-ready{grid-template-columns:38px 1fr;padding:13px}.ntf-push-ready>span{width:38px;height:38px}.ntf-push-ready>button{grid-column:2;width:max-content}.ntf-notice{grid-template-columns:38px 1fr}.ntf-notice>a{grid-column:2}.ntf-review{padding:24px 17px}.ntf-review h2{font-size:35px}.ntf-review footer{grid-template-columns:1fr}}

/* ========================================================================== */
/* MATCH SIGNAL STUDIO — Party Up's truthful readiness gate.                  */
/* ========================================================================== */
.match-studio{width:min(1200px,100%);padding:30px 22px 125px}.ms-head{display:flex;align-items:flex-end;justify-content:space-between;gap:28px;padding:35px 4px 28px;border-bottom:1px solid rgba(255,255,255,.09)}.ms-head>div:first-child>small{color:#59dcff;font-size:8px;font-weight:900;letter-spacing:.2em}.ms-head h1{max-width:930px;margin:9px 0 11px;font-size:clamp(45px,6.7vw,78px);line-height:.85;letter-spacing:-.066em}.ms-head p{max-width:720px;margin:0;color:#958a9f;font-size:10.5px;line-height:1.55}.ms-readiness{width:104px;height:104px;display:flex;flex-direction:column;align-items:center;justify-content:center;flex:0 0 auto;border:1px solid rgba(168,85,247,.25);border-radius:50%;background:radial-gradient(circle,rgba(168,85,247,.11),rgba(7,4,13,.8));box-shadow:0 0 35px rgba(151,62,230,.1)}.ms-readiness span{font-size:24px;font-weight:950;letter-spacing:-.04em}.ms-readiness small{max-width:76px;margin-top:4px;color:#8a7d94;font-size:5.5px;font-weight:900;line-height:1.3;letter-spacing:.1em;text-align:center}.ms-readiness.ready{border-color:rgba(58,239,139,.35);box-shadow:0 0 35px rgba(58,239,139,.1)}.ms-readiness.ready span{color:#72f1a9}.ms-progress{margin-top:13px}.ms-progress>div{display:grid;grid-template-columns:repeat(5,1fr);overflow:hidden;border:1px solid rgba(255,255,255,.09);border-radius:17px;background:rgba(7,4,13,.84)}.ms-progress>div>span{min-width:0;display:grid;grid-template-columns:29px 1fr;grid-template-rows:auto auto;gap:2px 8px;padding:13px;border-left:1px solid rgba(255,255,255,.075)}.ms-progress>div>span:first-child{border-left:0}.ms-progress span>i{grid-row:1/3;width:29px;height:29px;display:grid;place-items:center;color:#665c70;background:rgba(255,255,255,.035);border-radius:8px;font-size:6px;font-weight:900;font-style:normal}.ms-progress span>b{color:#83778d;font-size:6.5px;letter-spacing:.1em}.ms-progress span>small{overflow:hidden;color:#62586c;font-size:5.8px;white-space:nowrap;text-overflow:ellipsis}.ms-progress span.done>i{color:#48eba0;background:rgba(58,239,139,.07)}.ms-progress span.done>b{color:#b7acc0}.ms-progress>em{display:block;height:4px;margin:6px 4px 0;overflow:hidden;border-radius:3px;background:rgba(255,255,255,.05)}.ms-progress>em i{display:block;height:100%;border-radius:3px;background:linear-gradient(90deg,#4a8dff,#d34ab3);box-shadow:0 0 14px #9c5aff}.ms-layout{display:grid;grid-template-columns:minmax(0,1fr) 335px;gap:13px;align-items:start;margin-top:14px}.ms-form{display:flex;flex-direction:column;gap:12px}.ms-section{padding:22px;border:1px solid rgba(255,255,255,.09);border-radius:21px;background:rgba(7,4,13,.84)}.ms-section>header{display:grid;grid-template-columns:38px 1fr;gap:11px;align-items:start;margin-bottom:20px}.ms-section>header>span{width:38px;height:38px;display:grid;place-items:center;color:#5adeff;background:rgba(56,189,248,.07);border:1px solid rgba(56,189,248,.14);border-radius:11px;font-size:7px;font-weight:900}.ms-section>header>div{display:flex;flex-direction:column}.ms-section>header small{color:#5ad9ff;font-size:6px;font-weight:900;letter-spacing:.16em}.ms-section>header h2{margin:4px 0 0;font-size:23px;line-height:1;letter-spacing:-.035em}.ms-section>header p{max-width:650px;margin:6px 0 0;color:#766b80;font-size:7.5px;line-height:1.45}.ms-section.optional{border-color:rgba(168,85,247,.14);background:radial-gradient(circle at 95% 0,rgba(168,85,247,.055),transparent 35%),rgba(7,4,13,.84)}.ms-picks{display:flex;flex-wrap:wrap;gap:6px}.ms-picks button{display:flex;align-items:center;gap:7px;min-height:35px;padding:0 10px;color:#887d91;background:rgba(255,255,255,.025);border:1px solid rgba(255,255,255,.085);border-radius:9px;font:inherit;font-size:7px;font-weight:760;cursor:pointer}.ms-picks button i{width:8px;height:8px;display:block;border:1px solid #5e5468;border-radius:50%}.ms-picks button.on{color:#fff;background:linear-gradient(135deg,rgba(65,123,239,.16),rgba(168,61,203,.14));border-color:rgba(122,164,255,.28)}.ms-picks button.on i{background:#58dcff;border-color:#58dcff;box-shadow:0 0 9px #58dcff}.ms-picks.games{max-height:245px;overflow:auto;padding:10px;background:rgba(255,255,255,.018);border:1px solid rgba(255,255,255,.07);border-radius:13px;scrollbar-width:thin;scrollbar-color:#674f94 transparent}.ms-add{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:7px;margin-top:9px}.ms-add .field{margin:0;color:#fff;background:rgba(255,255,255,.03);border-color:rgba(255,255,255,.1)}.ms-add button{padding:0 14px;color:#aa9aee;background:rgba(168,85,247,.06);border:1px solid rgba(168,85,247,.18);border-radius:10px;font:inherit;font-size:7px;font-weight:900}.ms-note{display:block;margin:7px 3px 0;color:#655a6f;font-size:6px}.ms-question{margin-top:18px}.ms-question:first-of-type{margin-top:0}.ms-question>label{display:flex;align-items:center;gap:7px;margin-bottom:8px;color:#766b80;font-size:6.5px;font-weight:900;letter-spacing:.14em}.ms-question>label b{padding:4px 5px;color:#ff71b5;background:rgba(255,70,163,.06);border-radius:5px;font-size:5px}.ms-question>label em{color:#675c70;font-size:5.5px;font-style:normal;letter-spacing:.08em}.ms-split{display:grid;grid-template-columns:1fr 1fr;gap:16px}.ms-picks.stack{flex-direction:column}.ms-picks.stack button{justify-content:flex-start}.ms-preview{position:sticky;top:72px;padding:15px;border:1px solid rgba(168,85,247,.2);border-radius:21px;background:rgba(7,4,13,.9)}.ms-preview-label{display:flex;justify-content:space-between;padding:2px 2px 10px;color:#776c81;font-size:6px;font-weight:900;letter-spacing:.14em}.ms-preview-label b{color:#59dcff}.ms-preview article{position:relative;min-height:405px;overflow:hidden;border:1px solid rgba(255,255,255,.11);border-radius:17px;background:var(--ms-grad,linear-gradient(145deg,#28213e,#0b0812))}.ms-preview-art{position:absolute;inset:0;background-image:var(--ms-photo);background-size:cover;background-position:center}.ms-preview-grade{position:absolute;inset:0;background:linear-gradient(0deg,rgba(5,3,11,.98),rgba(5,3,11,.05) 78%),linear-gradient(90deg,rgba(48,20,78,.25),rgba(21,168,189,.08))}.ms-preview-fit{position:absolute;top:12px;left:12px;padding:7px 8px;color:#67defd;background:rgba(5,3,11,.67);border:1px solid rgba(56,189,248,.18);border-radius:100px;font-size:5.5px;letter-spacing:.12em}.ms-preview-copy{position:absolute;z-index:1;left:16px;right:16px;bottom:17px}.ms-preview-copy>.avatar{width:57px;height:57px;margin-bottom:10px;border:1px solid rgba(255,255,255,.35)}.ms-preview-copy>small{display:block;color:#59d9ff;font-size:5.8px;font-weight:900;letter-spacing:.13em;text-transform:uppercase}.ms-preview-copy h2{margin:4px 0 0;font-size:30px;line-height:.94;letter-spacing:-.05em}.ms-preview-copy p{margin:7px 0 0;color:#b9adc0;font-size:7.5px;line-height:1.4}.ms-preview-copy>div{display:flex;flex-wrap:wrap;gap:4px;margin-top:10px}.ms-preview-copy>div span{padding:5px 6px;color:#c9becf;background:rgba(5,3,11,.6);border:1px solid rgba(255,255,255,.11);border-radius:6px;font-size:5.5px;font-weight:850}.ms-receipt{margin-top:8px;padding:11px;border:1px solid rgba(255,255,255,.08);border-radius:13px;background:rgba(255,255,255,.018)}.ms-receipt>small{display:block;margin-bottom:5px;color:#6f6479;font-size:5.5px;font-weight:900;letter-spacing:.13em}.ms-receipt>div{display:grid;grid-template-columns:19px 1fr;gap:6px;align-items:center;padding:7px 0;border-top:1px solid rgba(255,255,255,.06)}.ms-receipt>div:first-of-type{border-top:0}.ms-receipt>div>i{width:19px;height:19px;display:grid;place-items:center;color:#62586c;background:rgba(255,255,255,.03);border-radius:6px;font-size:5.5px;font-style:normal}.ms-receipt>div.done>i{color:#4be99d;background:rgba(58,239,139,.06)}.ms-receipt>div>span{display:flex;flex-direction:column;min-width:0}.ms-receipt b{font-size:6.5px}.ms-receipt small{margin-top:2px;overflow:hidden;color:#655a6f;font-size:5.5px;white-space:nowrap;text-overflow:ellipsis}.ms-done{width:100%;min-height:52px;display:flex;align-items:center;justify-content:space-between;margin-top:9px;padding:0 14px;color:#74697d;background:rgba(255,255,255,.025);border:1px solid rgba(255,255,255,.09);border-radius:12px;font:inherit;text-align:left;cursor:pointer}.ms-done>span{display:flex;flex-direction:column}.ms-done b{font-size:8px;letter-spacing:.08em}.ms-done small{margin-top:3px;color:#60566a;font-size:6px}.ms-done>i{font-style:normal}.ms-done.ready{color:#fff;background:linear-gradient(120deg,#4b78ed,#cb45a7);border-color:rgba(255,255,255,.16);box-shadow:0 12px 30px rgba(123,58,219,.18)}.ms-done.ready small{color:#d4c7df}.ms-preview>p{margin:8px 5px 1px;color:#675d70;font-size:6px;line-height:1.4;text-align:center}.ms-mobile-done{display:none}
@media(max-width:900px){.ms-layout{grid-template-columns:minmax(0,1fr) 290px}.ms-progress>div>span{grid-template-columns:24px 1fr;padding:10px}.ms-progress span>i{width:24px;height:24px}.ms-head h1{font-size:54px}}
@media(max-width:700px){.match-studio{padding:10px 13px 110px}.ms-head{align-items:flex-start;padding:24px 3px 20px}.ms-head h1{font-size:46px}.ms-readiness{width:76px;height:76px}.ms-readiness span{font-size:18px}.ms-progress>div{display:flex;overflow-x:auto;scroll-snap-type:x mandatory}.ms-progress>div>span{min-width:54vw;scroll-snap-align:start}.ms-layout{display:flex;flex-direction:column}.ms-form,.ms-preview{width:100%}.ms-preview{position:static;order:-1}.ms-preview article{min-height:390px}.ms-preview>.ms-done,.ms-preview>p{display:none}.ms-mobile-done{display:block}.ms-section{padding:17px}.ms-split{grid-template-columns:1fr}.ms-picks.games{max-height:210px}}
@media(max-width:430px){.match-studio{padding-inline:9px}.ms-head{gap:12px}.ms-head h1{font-size:38px}.ms-head p{font-size:8.5px}.ms-readiness{width:66px;height:66px}.ms-section{padding:14px}.ms-section>header h2{font-size:20px}.ms-add{grid-template-columns:1fr}.ms-add button{min-height:40px}.ms-preview article{min-height:370px}}

/* ========================================================================== */
/* GAME CATALOG — search the directory or submit a clean community addition.  */
/* ========================================================================== */
.add-game-catalog{width:min(1200px,100%);padding:30px 22px 125px}.agc-head{display:flex;align-items:flex-end;justify-content:space-between;gap:28px;padding:35px 4px 29px;border-bottom:1px solid rgba(255,255,255,.09)}.agc-head>div:first-child>small{color:#58ddff;font-size:8px;font-weight:900;letter-spacing:.2em}.agc-head h1{max-width:930px;margin:9px 0 11px;font-size:clamp(46px,6.6vw,78px);line-height:.85;letter-spacing:-.066em}.agc-head h1 span{color:transparent;-webkit-text-stroke:1px rgba(224,199,242,.66)}.agc-head p{max-width:720px;margin:0;color:#94899e;font-size:10.5px;line-height:1.55}.agc-count{min-width:150px;display:flex;flex-direction:column;align-items:flex-end;padding:17px 0 3px}.agc-count b{font-size:39px;line-height:1;letter-spacing:-.05em}.agc-count span{margin-top:5px;color:#58dcff;font-size:6px;font-weight:900;letter-spacing:.16em}.agc-count small{max-width:160px;margin-top:5px;color:#6d6277;font-size:6px;text-align:right}.agc-search{min-height:70px;display:grid;grid-template-columns:35px minmax(0,1fr) auto;gap:12px;align-items:center;margin-top:13px;padding:0 18px;border:1px solid rgba(255,255,255,.1);border-radius:18px;background:rgba(7,4,13,.87);box-shadow:0 16px 45px rgba(0,0,0,.18)}.agc-search>span{width:35px;height:35px;display:grid;place-items:center;color:#59dcff;background:rgba(56,189,248,.07);border-radius:10px}.agc-search svg{width:17px}.agc-search input{min-width:0;height:68px;color:#fff;background:none;border:0;outline:0;font:inherit;font-size:17px;font-weight:760}.agc-search input::placeholder{color:#655b70}.agc-search em{color:#716677;font-size:6.5px;font-weight:900;letter-spacing:.14em;font-style:normal}.agc-search.active{border-color:rgba(91,215,255,.24);box-shadow:0 0 35px rgba(56,189,248,.05)}.agc-exact{position:relative;min-height:230px;overflow:hidden;display:flex;align-items:flex-end;justify-content:space-between;gap:20px;margin-top:12px;padding:24px;border:1px solid rgba(87,218,255,.24);border-radius:22px;background:#07040d}.agc-exact-art{position:absolute;inset:0;background-image:var(--agc-exact);background-size:cover;background-position:center}.agc-exact-grade{position:absolute;inset:0;background:linear-gradient(90deg,rgba(5,3,11,.96),rgba(5,3,11,.25)),linear-gradient(0deg,rgba(5,3,11,.8),transparent)}.agc-exact>div,.agc-exact>button{position:relative;z-index:1}.agc-exact>div{display:flex;flex-direction:column}.agc-exact small,.agc-results>header small,.agc-request-copy>small,.agc-community>header small{color:#59dcff;font-size:6.5px;font-weight:900;letter-spacing:.17em}.agc-exact h2{margin:5px 0 0;font-size:42px;line-height:.95;letter-spacing:-.05em}.agc-exact p{margin:7px 0 0;color:#a397aa;font-size:8px}.agc-exact button{min-height:48px;padding:0 16px;color:#fff;background:linear-gradient(120deg,#4b78ee,#d442a4);border:1px solid rgba(255,255,255,.16);border-radius:12px;font:inherit;font-size:7px;font-weight:900;letter-spacing:.08em;cursor:pointer}.agc-results,.agc-community{margin-top:18px}.agc-results>header,.agc-community>header{display:flex;align-items:flex-end;justify-content:space-between;padding:0 4px 9px}.agc-results>header>span,.agc-community>header{display:flex;flex-direction:column}.agc-results>header h2,.agc-community h2{margin:4px 0 0;font-size:24px;letter-spacing:-.035em}.agc-results>header>b{color:#716679;font-size:7px}.agc-results>div,.agc-community>div{display:grid;grid-template-columns:repeat(3,1fr);gap:8px}.agc-game{position:relative;min-height:230px;overflow:hidden;display:flex;align-items:flex-end;padding:14px;color:#fff;background:#07040d;border:1px solid rgba(255,255,255,.1);border-radius:17px;font:inherit;text-align:left;cursor:pointer}.agc-game:hover{border-color:rgba(92,216,255,.28)}.agc-art{position:absolute;inset:0;background-image:var(--agc-art);background-size:cover;background-position:center;transition:transform .25s}.agc-game:hover .agc-art{transform:scale(1.025)}.agc-grade{position:absolute;inset:0;background:linear-gradient(0deg,rgba(5,3,11,.97),rgba(5,3,11,.08) 76%)}.agc-top{position:absolute;z-index:1;top:11px;left:11px;right:11px;display:flex;justify-content:space-between;align-items:center}.agc-top>small,.agc-top>i{padding:6px 7px;color:#b9aebe;background:rgba(5,3,11,.68);border:1px solid rgba(255,255,255,.1);border-radius:7px;font-size:5.5px;font-weight:900;font-style:normal;letter-spacing:.1em;text-transform:uppercase;backdrop-filter:blur(10px)}.agc-top>i{color:#6ce3ff}.agc-copy{position:relative;z-index:1;min-width:0;display:flex;flex-direction:column;flex:1}.agc-copy>b{font-size:14px;line-height:1.06}.agc-copy>small{display:flex;align-items:center;gap:5px;margin-top:5px;color:#8b8094;font-size:6.5px}.agc-copy>small i{width:6px;height:6px;border-radius:50%;background:#42ee91;box-shadow:0 0 8px #42ee91}.agc-game>strong{position:relative;z-index:1;color:#a898ed;font-size:6px}.agc-results>p{margin:10px 4px 0;color:#665b70;font-size:6.5px;text-align:center}.agc-request{display:grid;grid-template-columns:340px minmax(0,1fr);gap:12px;margin-top:12px}.agc-request-preview,.agc-request-copy{min-height:370px;padding:24px;border:1px solid rgba(255,255,255,.09);border-radius:21px;background:rgba(7,4,13,.84)}.agc-request-preview{display:flex;flex-direction:column;justify-content:flex-end;background:radial-gradient(circle at 50% 35%,rgba(87,211,255,.15),transparent 28%),linear-gradient(145deg,#18102a,#09060f)}.agc-request-preview>span{width:62px;height:62px;display:grid;place-items:center;color:#5bdcff;background:rgba(56,189,248,.07);border:1px solid rgba(56,189,248,.15);border-radius:18px}.agc-request-preview svg{width:25px}.agc-request-preview small{margin-top:55px;color:#59ddff;font-size:6.5px;font-weight:900;letter-spacing:.16em}.agc-request-preview h2{margin:6px 0 0;font-size:36px;line-height:.96;letter-spacing:-.05em}.agc-request-preview p{margin:8px 0 0;color:#786d82;font-size:7.5px}.agc-request-copy{display:flex;flex-direction:column;justify-content:center}.agc-request-copy h2{margin:6px 0 0;font-size:34px;line-height:.98;letter-spacing:-.045em}.agc-request-copy>p{max-width:650px;margin:10px 0 0;color:#8e8397;font-size:8.5px;line-height:1.55}.agc-request-copy>div{display:grid;grid-template-columns:repeat(3,1fr);gap:6px;margin-top:17px}.agc-request-copy>div span{display:grid;grid-template-columns:25px 1fr;gap:7px;align-items:center;padding:10px;border:1px solid rgba(255,255,255,.08);border-radius:11px;background:rgba(255,255,255,.025)}.agc-request-copy>div i{width:25px;height:25px;display:grid;place-items:center;color:#58dcff;background:rgba(56,189,248,.06);border-radius:7px;font-size:5.5px;font-style:normal}.agc-request-copy>div b{font-size:6.5px;line-height:1.35}.agc-request-copy>button{min-height:50px;margin-top:15px;color:#fff;background:linear-gradient(120deg,#4b78ee,#d442a4);border:1px solid rgba(255,255,255,.16);border-radius:12px;font:inherit;font-size:7.5px;font-weight:900;letter-spacing:.06em;cursor:pointer}.agc-request-copy>em{margin-top:7px;color:#685d72;font-size:6px;font-style:normal;text-align:center}.agc-community>div{grid-template-columns:repeat(3,1fr)}.agc-foot{display:grid;grid-template-columns:auto 1fr auto;gap:12px;align-items:center;margin-top:20px;padding:15px 17px;border:1px solid rgba(255,255,255,.08);border-radius:15px;background:rgba(7,4,13,.8)}.agc-foot>span{display:flex;align-items:center;gap:7px;color:#c0b4c7;font-size:7.5px}.agc-foot svg{width:15px;color:#56dcff}.agc-foot p{margin:0;color:#6f6479;font-size:6.5px}.agc-foot a{color:#a99af0;font-size:7px;font-weight:900}
@media(max-width:900px){.agc-results>div,.agc-community>div{grid-template-columns:repeat(2,1fr)}.agc-request{grid-template-columns:280px 1fr}.agc-request-copy>div{grid-template-columns:1fr}}
@media(max-width:700px){.add-game-catalog{padding:10px 13px 110px}.agc-head{align-items:flex-start;padding:24px 3px 20px}.agc-head h1{font-size:47px}.agc-count{display:none}.agc-search{min-height:60px;padding-inline:12px}.agc-search input{height:58px;font-size:14px}.agc-exact{min-height:280px;align-items:flex-start;flex-direction:column;justify-content:flex-end;padding:18px}.agc-exact h2{font-size:35px}.agc-results>div,.agc-community>div{display:flex;overflow-x:auto;scroll-snap-type:x mandatory}.agc-game{min-width:77vw;scroll-snap-align:start}.agc-request{display:flex;flex-direction:column}.agc-request-preview,.agc-request-copy{min-height:320px}.agc-request-copy{padding:19px}.agc-foot{grid-template-columns:1fr auto}.agc-foot p{grid-column:1/-1;grid-row:2}.agc-foot a{grid-column:2;grid-row:1}}
@media(max-width:430px){.add-game-catalog{padding-inline:9px}.agc-head h1{font-size:40px}.agc-head p{font-size:8.5px}.agc-search em{display:none}.agc-game{min-width:80vw}.agc-request-preview,.agc-request-copy{padding:16px}.agc-request-copy h2{font-size:29px}.agc-foot{padding:13px}}

/* ========================================================================== */
/* SAFETY CONTROL CENTER — private no-rematch enforcement and restore states. */
/* ========================================================================== */
.safety-center{width:min(1200px,100%);padding:30px 22px 125px}.sc-head{display:flex;align-items:flex-end;justify-content:space-between;gap:30px;padding:35px 4px 29px;border-bottom:1px solid rgba(255,255,255,.09)}.sc-head h1{margin:9px 0 10px;font-size:clamp(48px,6.8vw,80px);line-height:.86;letter-spacing:-.068em}.sc-head p{max-width:760px;margin:0;color:#95899e;font-size:10.5px;line-height:1.55}.sc-lock{min-width:155px;display:flex;flex-direction:column;align-items:flex-end}.sc-lock>span{width:49px;height:49px;display:grid;place-items:center;color:#57efa0;background:rgba(49,235,137,.07);border:1px solid rgba(49,235,137,.2);border-radius:15px;box-shadow:0 0 28px rgba(49,235,137,.08)}.sc-lock svg{width:22px}.sc-lock b{margin-top:9px;color:#62eda6;font-size:8px;letter-spacing:.17em}.sc-lock small{margin-top:3px;color:#706675;font-size:6px}.sc-proof{display:grid;grid-template-columns:repeat(3,minmax(100px,160px)) minmax(0,1fr);align-items:center;margin-top:13px;padding:16px 18px;border:1px solid rgba(66,235,147,.14);border-radius:18px;background:linear-gradient(100deg,rgba(34,197,94,.045),rgba(7,4,13,.88) 45%)}.sc-proof>div{display:flex;flex-direction:column;padding-right:18px}.sc-proof>div b{font-size:22px;line-height:1}.sc-proof>div span{margin-top:4px;color:#746a7c;font-size:6px;font-weight:850;letter-spacing:.07em}.sc-proof>p{display:flex;align-items:center;justify-content:flex-end;gap:7px;margin:0;color:#7f7587;font-size:7px;text-align:right}.sc-proof>p span{width:29px;height:29px;display:grid;place-items:center;color:#59e69e;background:rgba(49,235,137,.06);border-radius:9px}.sc-proof>p svg{width:14px}.sc-proof>p b{color:#c9becf}.sc-restored{display:grid;grid-template-columns:42px minmax(0,1fr) auto;gap:12px;align-items:center;margin-top:12px;padding:14px 16px;border:1px solid rgba(91,220,255,.22);border-radius:16px;background:linear-gradient(100deg,rgba(56,189,248,.07),rgba(168,85,247,.045))}.sc-restored>span{width:42px;height:42px;display:grid;place-items:center;color:#5cddff;background:rgba(56,189,248,.07);border-radius:12px}.sc-restored svg{width:18px}.sc-restored>div{display:flex;flex-direction:column}.sc-restored small{color:#5cddff;font-size:6px;font-weight:900;letter-spacing:.16em}.sc-restored b{margin-top:3px;font-size:10px}.sc-restored p{margin:2px 0 0;color:#786d82;font-size:6.5px}.sc-restored button{padding:10px 13px;color:#b8a9fa;background:rgba(10,6,17,.5);border:1px solid rgba(174,147,255,.23);border-radius:9px;font:inherit;font-size:6.5px;font-weight:900;letter-spacing:.09em;cursor:pointer}.sc-list{margin-top:20px}.sc-list>header{display:flex;align-items:flex-end;justify-content:space-between;padding:0 4px 10px}.sc-list>header>span{display:flex;flex-direction:column}.sc-list>header small{color:#58ddff;font-size:6.5px;font-weight:900;letter-spacing:.18em}.sc-list>header h2{margin:4px 0 0;font-size:25px;letter-spacing:-.035em}.sc-list>header>b{color:#75697e;font-size:8px}.sc-list>div{display:grid;grid-template-columns:repeat(3,1fr);gap:8px}.sc-player{position:relative;min-height:445px;overflow:hidden;display:flex;flex-direction:column;justify-content:flex-end;padding:18px;border:1px solid rgba(255,255,255,.1);border-radius:21px;background:#07040d}.sc-player-art{position:absolute;inset:0;background-image:var(--sc-art);background-size:cover;background-position:center;filter:saturate(.62)}.sc-player-grade{position:absolute;inset:0;background:linear-gradient(0deg,rgba(5,3,11,.99) 2%,rgba(5,3,11,.9) 44%,rgba(5,3,11,.17) 82%),linear-gradient(90deg,rgba(255,48,130,.08),transparent)}.sc-player-index{position:absolute;z-index:1;top:14px;right:15px;color:rgba(255,255,255,.42);font-size:7px;font-weight:900;letter-spacing:.14em}.sc-player-id,.sc-player-context,.sc-player-note,.sc-player-actions{position:relative;z-index:1}.sc-player-id{display:flex;align-items:center;gap:11px}.sc-player-id .avatar{width:51px;height:51px;border:1px solid rgba(255,255,255,.25)}.sc-player-id>span{display:flex;flex-direction:column;min-width:0}.sc-player-id small{color:#f470bd;font-size:5.5px;font-weight:900;letter-spacing:.14em}.sc-player-id h2{margin:3px 0 0;font-size:22px;line-height:1}.sc-player-id p{margin:4px 0 0;color:#81768a;font-size:6.5px}.sc-player-context{display:grid;grid-template-columns:1fr 1.3fr;gap:6px;margin-top:14px}.sc-player-context>span{display:flex;flex-direction:column;min-width:0;padding:10px;border:1px solid rgba(255,255,255,.075);border-radius:11px;background:rgba(255,255,255,.025)}.sc-player-context small{color:#655b6e;font-size:5px;font-weight:900;letter-spacing:.12em}.sc-player-context b{margin-top:5px;overflow:hidden;font-size:7px;white-space:nowrap;text-overflow:ellipsis}.sc-player-context em{margin-top:3px;overflow:hidden;color:#776c80;font-size:5.5px;font-style:normal;white-space:nowrap;text-overflow:ellipsis}.sc-player-note{min-height:47px;margin:12px 1px 0;color:#8d8296;font-size:7px;line-height:1.5}.sc-player-actions{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-top:13px;padding-top:12px;border-top:1px solid rgba(255,255,255,.08)}.sc-player-actions a{color:#8d80cd;font-size:6px;font-weight:800}.sc-player-actions button{min-height:35px;padding:0 10px;color:#e4d8e7;background:rgba(255,255,255,.035);border:1px solid rgba(255,255,255,.13);border-radius:9px;font:inherit;font-size:5.5px;font-weight:900;letter-spacing:.06em;cursor:pointer}.sc-player-actions button:hover{color:#fff;border-color:rgba(91,220,255,.28)}.sc-empty{grid-column:1/-1;min-height:250px;display:grid!important;grid-template-columns:70px minmax(0,1fr) auto!important;gap:18px;align-items:center;padding:30px;border:1px solid rgba(58,230,141,.17);border-radius:21px;background:radial-gradient(circle at 9% 50%,rgba(34,197,94,.1),transparent 22%),rgba(7,4,13,.84)}.sc-empty>span{width:70px;height:70px;display:grid;place-items:center;color:#5ceaa1;background:rgba(49,235,137,.06);border:1px solid rgba(49,235,137,.15);border-radius:20px}.sc-empty svg{width:28px}.sc-empty>div small{color:#5ceaa1;font-size:6.5px;font-weight:900;letter-spacing:.16em}.sc-empty h2{margin:6px 0 0;font-size:31px;line-height:1}.sc-empty p{max-width:660px;margin:8px 0 0;color:#83788c;font-size:8px;line-height:1.55}.sc-empty>a{padding:13px 15px;color:#fff;background:linear-gradient(120deg,#4b78ee,#c941a5);border-radius:11px;font-size:6.5px;font-weight:900}.sc-rules{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin-top:12px}.sc-rules>div{display:grid;grid-template-columns:30px 1fr;gap:3px 9px;padding:15px;border:1px solid rgba(255,255,255,.08);border-radius:15px;background:rgba(7,4,13,.78)}.sc-rules span{grid-row:1/3;width:30px;height:30px;display:grid;place-items:center;color:#5bdcff;background:rgba(56,189,248,.06);border-radius:9px;font-size:6px;font-weight:900}.sc-rules b{font-size:8px}.sc-rules p{margin:2px 0 0;color:#736879;font-size:6.5px;line-height:1.4}.sc-foot{display:grid;grid-template-columns:auto 1fr auto;gap:12px;align-items:center;margin-top:12px;padding:15px 17px;border:1px solid rgba(255,255,255,.08);border-radius:15px;background:rgba(7,4,13,.78)}.sc-foot>span{display:flex;align-items:center;gap:7px;color:#c1b5c7;font-size:7.5px}.sc-foot svg{width:15px;color:#f075bd}.sc-foot p{margin:0;color:#6e6377;font-size:6.5px}.sc-foot a{color:#aa9af0;font-size:7px;font-weight:900}
@media(max-width:900px){.sc-list>div{grid-template-columns:repeat(2,1fr)}.sc-proof{grid-template-columns:repeat(3,1fr)}.sc-proof>p{grid-column:1/-1;justify-content:flex-start;margin-top:12px;text-align:left}.sc-player:last-child{grid-column:1/-1}.sc-player:last-child .sc-player-art{background-position:center 30%}}
@media(max-width:700px){.safety-center{padding:10px 13px 110px}.sc-head{align-items:flex-start;padding:24px 3px 20px}.sc-head h1{font-size:47px}.sc-head p{font-size:8.5px}.sc-lock{display:none}.sc-proof{padding:14px 12px}.sc-proof>div{padding-right:7px}.sc-proof>div b{font-size:18px}.sc-proof>div span{font-size:5px}.sc-restored{grid-template-columns:36px 1fr auto;padding:12px}.sc-restored>span{width:36px;height:36px}.sc-list>div{display:flex;overflow-x:auto;scroll-snap-type:x mandatory}.sc-player{min-height:380px}.sc-empty{min-width:100%;min-height:310px;display:flex!important;flex-direction:column;align-items:flex-start;justify-content:flex-end}.sc-empty>a{width:100%;text-align:center}.sc-rules{display:flex;flex-direction:column;overflow-x:visible}.sc-rules>div{min-width:70vw}.sc-foot{grid-template-columns:1fr auto}.sc-foot p{grid-column:1/-1;grid-row:2}.sc-foot a{grid-column:2;grid-row:1}}
@media(max-width:430px){.safety-center{padding-inline:9px}.sc-head h1{font-size:40px}.sc-proof>div:nth-child(3){display:none}.sc-proof{grid-template-columns:1fr 1fr}.sc-restored p{display:none}.sc-player{min-width:85vw;padding:15px}.sc-player-context{grid-template-columns:1fr}.sc-player-context>span:last-child{display:none}.sc-player-note{min-height:55px}.sc-foot{padding:13px}}

/* ========================================================================== */
/* ROOM RADAR — live room discovery, game communities, and full directory.    */
/* ========================================================================== */
.room-radar{width:min(1240px,100%);padding:30px 22px 125px}.rr-head{display:flex;align-items:flex-end;justify-content:space-between;gap:30px;padding:35px 4px 29px;border-bottom:1px solid rgba(255,255,255,.09)}.rr-head h1{margin:9px 0 11px;font-size:clamp(48px,6.8vw,80px);line-height:.85;letter-spacing:-.068em}.rr-head h1 span{color:transparent;-webkit-text-stroke:1px rgba(222,198,241,.64)}.rr-head p{max-width:760px;margin:0;color:#958a9e;font-size:10.5px;line-height:1.55}.rr-head-count{min-width:150px;display:flex;flex-direction:column;align-items:flex-end}.rr-head-count b{font-size:43px;line-height:1;letter-spacing:-.06em}.rr-head-count span{margin-top:5px;color:#58ddff;font-size:6.5px;font-weight:900;letter-spacing:.17em}.rr-head-count small{margin-top:4px;color:#716676;font-size:6px}.rr-head>a{min-width:170px;display:grid;grid-template-columns:37px 1fr;gap:2px 10px;align-items:center;padding:14px;color:#fff;border:1px solid rgba(91,219,255,.22);border-radius:14px;background:rgba(56,189,248,.055)}.rr-head>a>svg{grid-row:1/3;width:18px;justify-self:center;color:#59dcff}.rr-head>a b{font-size:7.5px;letter-spacing:.11em}.rr-head>a small{color:#766b7f;font-size:6px}.rr-mode{display:grid;grid-template-columns:repeat(3,1fr);gap:7px;margin-top:12px}.rr-mode a{position:relative;display:grid;grid-template-columns:27px 1fr;grid-template-rows:auto auto;gap:2px 8px;padding:12px 13px;color:#a79db1;border:1px solid rgba(255,255,255,.16);border-radius:13px;background:rgba(7,4,13,.66);backdrop-filter:blur(22px);-webkit-backdrop-filter:blur(16px)}.rr-mode small{grid-row:1/3;width:27px;height:27px;display:grid;place-items:center;color:#675c70;background:rgba(255,255,255,.035);border-radius:8px;font-size:5.5px}.rr-mode b{font-size:7.5px;letter-spacing:.11em}.rr-mode span{font-size:6px}.rr-mode a.on{color:#fff;border-color:rgba(91,219,255,.23);background:linear-gradient(110deg,rgba(56,189,248,.075),rgba(180,65,189,.05))}.rr-mode a.on small{color:#5bdcff;background:rgba(56,189,248,.08)}.rr-tools{margin-top:12px}.rr-search{min-height:68px;display:grid;grid-template-columns:35px minmax(0,1fr) auto;gap:12px;align-items:center;padding:0 18px;border:1px solid rgba(255,255,255,.1);border-radius:17px;background:rgba(7,4,13,.7);backdrop-filter:blur(22px);-webkit-backdrop-filter:blur(16px)}.rr-search>svg{width:18px;color:#58dcff}.rr-search input{min-width:0;height:66px;color:#fff;background:none;border:0;outline:0;font:inherit;font-size:16px;font-weight:760}.rr-search input::placeholder{color:#655a6f}.rr-search em{color:#706576;font-size:6px;font-weight:900;letter-spacing:.13em;font-style:normal;animation:hvNeonCycle 7s linear infinite}.rr-filters{display:flex;gap:6px;overflow-x:auto;padding:16px 1px 2px}.rr-filters button{flex:0 0 auto;display:flex;align-items:center;gap:6px;min-height:33px;padding:0 10px;color:#897e91;background:rgba(7,4,13,.6);border:1px solid rgba(255,255,255,.15);border-radius:9px;font:inherit;font-size:6.5px;font-weight:850;cursor:pointer}.rr-filters button i{min-width:16px;height:16px;display:grid;place-items:center;color:#766b7e;background:rgba(255,255,255,.045);border-radius:5px;font-size:5px;font-style:normal}.rr-filters button.on{color:#fff;border-color:rgba(91,219,255,.25);background:rgba(56,189,248,.075)}.rr-filters button.on i{color:#58dcff}.rr-live,.rr-results{margin-top:28px}.rr-live>header,.rr-results>header{display:flex;align-items:flex-end;justify-content:space-between;gap:15px;padding:0 4px 10px}.rr-live>header>span,.rr-results>header>span{display:flex;flex-direction:column}.rr-live>header small,.rr-results>header small{color:#dcf9ff;font-size:12px;font-weight:500;letter-spacing:.05em;text-shadow:0 0 3px #dcf9ff,0 0 9px #5edfff,0 0 17px rgba(56,189,248,.5)}.rr-live>header h2,.rr-results>header h2{margin:6px 0 0;font-size:12px;font-weight:400;letter-spacing:0;line-height:1.4;color:#958a9e}.rr-live>header>b,.rr-results>header>b{color:#6ceda8;font-size:7px;letter-spacing:.1em}.rr-results>header>a{color:#aa9af0;font-size:6.5px;font-weight:900}.rr-live>div{display:grid;grid-template-columns:repeat(3,1fr);gap:8px}.rr-room{position:relative;min-height:225px;overflow:hidden;display:flex;align-items:flex-end;padding:15px;color:#fff;border:1px solid rgba(255,255,255,.11);border-radius:21px;background:#07040d}.rr-room-art{position:absolute;inset:0;background-image:var(--rr-room);background-size:cover;background-position:center;transition:transform .25s;filter:saturate(.9) brightness(.3)}.rr-room:hover .rr-room-art{transform:scale(1.025)}.rr-room-grade{position:absolute;inset:0;background:linear-gradient(0deg,rgba(5,3,11,.92),rgba(5,3,11,.05) 62%,transparent 88%)}.rr-room-state{position:absolute;z-index:1;top:14px;left:14px;display:flex;align-items:center;gap:6px;padding:7px 9px;color:#d8cddb;background:rgba(5,3,11,.7);border:1px solid rgba(255,255,255,.12);border-radius:9px;font-size:6px;font-weight:900;letter-spacing:.1em;backdrop-filter:blur(11px)}.rr-room-state i{width:6px;height:6px;border-radius:50%;background:#45ee91;box-shadow:0 0 9px #45ee91}.rr-room-copy{position:relative;z-index:1;min-width:0;display:flex;flex-direction:column;flex:1}.rr-room-copy>small{color:#5cdbff;font-size:6.5px;font-weight:900;letter-spacing:.15em}.rr-room-copy h2{margin:5px 0 0;font-size:29px;line-height:.98;letter-spacing:-.045em}.rr-room-copy>p{margin:6px 0 0;color:#a094a8;font-size:7.5px}.rr-room-copy>span{height:27px;display:flex;align-items:center;margin-top:12px}.rr-room-copy .avatar{width:27px;height:27px;margin-right:-6px;border:1px solid #100b16}.rr-room-copy em{margin-left:12px;color:#8a7f92;font-size:6.5px;font-style:normal}.rr-room>strong{position:relative;z-index:1;align-self:flex-end;color:#b2a1f6;font-size:6.5px;white-space:nowrap}.rr-live>a{display:block;margin:0 0 10px;padding:14px;color:#fff;background:linear-gradient(90deg,rgba(255,45,155,.24),rgba(124,92,255,.2));border:1px solid rgba(255,45,155,.6);border-radius:12px;font-size:7.5px;font-weight:900;text-align:center;letter-spacing:.1em;box-shadow:0 0 18px rgba(255,45,155,.28),inset 0 0 14px rgba(255,45,155,.08);text-shadow:0 0 6px rgba(255,158,214,.85)}.rr-game-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:8px}.rr-game{position:relative;min-height:255px;overflow:hidden;display:flex;align-items:flex-end;padding:14px;color:#fff;border:1px solid rgba(255,255,255,.1);border-radius:18px;background:#07040d}.rr-game-art{position:absolute;inset:0;background-image:var(--rr-art);background-size:cover;background-position:center;transition:transform .25s;filter:saturate(.9) brightness(.3)}.rr-game:hover .rr-game-art{transform:scale(1.025)}.rr-game-grade{position:absolute;inset:0;background:linear-gradient(0deg,rgba(5,3,11,.98),rgba(5,3,11,.1) 77%)}.rr-game-top{position:absolute;z-index:1;top:11px;left:11px;right:11px;display:flex;align-items:center;justify-content:space-between}.rr-game-top small,.rr-game-top i{padding:6px 7px;color:#b6aabb;background:rgba(5,3,11,.68);border:1px solid rgba(255,255,255,.1);border-radius:7px;font-size:5.3px;font-weight:900;font-style:normal;letter-spacing:.09em;backdrop-filter:blur(10px)}.rr-game-top i{color:#59dcff}.rr-game-top i.live{color:#73eeab}.rr-game-copy{position:relative;z-index:1;min-width:0;display:flex;flex-direction:column;flex:1}.rr-game-copy>b{font-size:14px;line-height:1.05}.rr-game-copy>small{display:flex;align-items:center;gap:5px;margin-top:5px;color:#8b8094;font-size:6.5px}.rr-game-copy>small i{width:6px;height:6px;border-radius:50%;background:#43ed91;box-shadow:0 0 8px #43ed91}.rr-game-copy>span{height:24px;display:flex;align-items:center;margin-top:9px}.rr-game-copy .avatar{width:24px;height:24px;margin-right:-6px;border:1px solid #100b16}.rr-game-copy em{margin-left:10px;color:#746a7d;font-size:5.8px;font-style:normal}.rr-game>strong{position:relative;z-index:1;color:#a999ed;font-size:5.8px;white-space:nowrap}.rr-zero{min-height:230px;display:grid;grid-template-columns:60px minmax(0,1fr) auto auto;gap:15px;align-items:center;padding:25px;border:1px solid rgba(255,255,255,.09);border-radius:19px;background:rgba(7,4,13,.68);backdrop-filter:blur(22px);-webkit-backdrop-filter:blur(16px)}.rr-zero>span{width:60px;height:60px;display:grid;place-items:center;color:#5bdcff;background:rgba(56,189,248,.06);border-radius:17px}.rr-zero svg{width:23px}.rr-zero>div small{color:#59dcff;font-size:6px;font-weight:900;letter-spacing:.15em}.rr-zero h2{margin:5px 0 0;font-size:27px}.rr-zero p{margin:6px 0 0;color:#7e7387;font-size:7.5px}.rr-zero button,.rr-zero a{padding:11px 12px;color:#ab9bf0;background:rgba(255,255,255,.035);border:1px solid rgba(255,255,255,.1);border-radius:9px;font:inherit;font-size:6px;font-weight:900;cursor:pointer}.rr-more{margin:10px 0 0;color:#6f6478;font-size:6.5px;text-align:center}.rr-foot{display:grid;grid-template-columns:auto 1fr auto;gap:12px;align-items:center;margin-top:16px;padding:15px 17px;border:1px solid rgba(255,255,255,.08);border-radius:15px;background:rgba(7,4,13,.68);backdrop-filter:blur(22px);-webkit-backdrop-filter:blur(16px)}.rr-foot>span{display:flex;align-items:center;gap:7px;color:#c0b5c7;font-size:7.5px}.rr-foot svg{width:15px;color:#58dcff}.rr-foot p{margin:0;color:#6f6478;font-size:6.5px}.rr-foot a{color:#aa9af0;font-size:6.5px;font-weight:900}
@media(max-width:1000px){.rr-game-grid{grid-template-columns:repeat(3,1fr)}}
@media(max-width:700px){.room-radar{padding:10px 13px 110px}.rr-head{align-items:flex-start;flex-direction:column;padding:24px 3px 20px}.rr-head h1{font-size:47px}.rr-head p{font-size:8.5px}.rr-head-count{display:none}.rr-head>a{width:100%;min-width:0}.rr-mode a{grid-template-columns:24px 1fr;padding:10px 8px}.rr-mode small{width:24px;height:24px}.rr-mode span{display:none}.rr-search{min-height:59px;padding-inline:12px}.rr-search input{height:57px;font-size:13px}.rr-search em{display:none}.rr-live>div{grid-template-columns:1fr}.rr-room{min-width:0;min-height:235px}.rr-game-grid{grid-template-columns:1fr;gap:10px}.room-radar .rr-game{min-height:230px}.rr-game{min-width:74vw;min-height:270px;scroll-snap-align:start}.rr-zero{display:flex;flex-direction:column;align-items:flex-start}.rr-zero button,.rr-zero a{width:100%;text-align:center}.rr-foot{grid-template-columns:1fr auto}.rr-foot p{grid-column:1/-1;grid-row:2}.rr-foot a{grid-column:2;grid-row:1}}
@media(max-width:430px){.room-radar{padding-inline:9px}.rr-head h1{font-size:40px}.rr-head>a{min-width:0;width:44px;height:44px;display:grid;place-items:center;padding:0}.rr-head>a b,.rr-head>a small{display:none}.rr-head>a>svg{grid-row:auto}.rr-mode b{font-size:6.5px}.rr-filters{margin-inline:-2px}.rr-room{min-width:86vw}.rr-room-copy h2{font-size:26px}.rr-game{min-width:79vw}.rr-live>header h2,.rr-results>header h2{font-size:22px}.rr-foot{padding:13px}}
@media(min-width:701px) and (max-width:1150px){.re-layout{grid-template-columns:minmax(0,1fr);margin:12px 12px 0}.re-decision{grid-row:auto}.re-rules{grid-column:auto}.re-plan,.re-fit,.re-rules{padding:17px}}

/* ========================================================================== */
/* TEAM HEADQUARTERS — persistent crew identity, operations, roster and comms. */
/* ========================================================================== */
.team-hq{width:min(1220px,100%);padding:18px 22px 125px}.th-hero{position:relative;min-height:260px;overflow:hidden;display:flex;flex-direction:column;justify-content:space-between;border:1px solid color-mix(in srgb,var(--th-color) 48%,transparent);border-radius:29px;background:#07040d;box-shadow:0 35px 90px rgba(0,0,0,.46)}.th-art{position:absolute;inset:0;background-image:var(--th-art);background-size:cover;background-position:center}.th-grade{position:absolute;inset:0;background:linear-gradient(90deg,rgba(5,3,11,.96),rgba(5,3,11,.44) 54%,rgba(5,3,11,.12)),linear-gradient(0deg,rgba(5,3,11,.94),transparent 62%),radial-gradient(circle at 75% 25%,color-mix(in srgb,var(--th-color) 20%,transparent),transparent 33%)}.th-top,.th-identity,.th-metrics{position:relative;z-index:1}.th-top{display:flex;align-items:center;justify-content:space-between;padding:16px 25px;position:relative;z-index:1}.th-top>span{display:flex;align-items:center;gap:7px;padding:8px 10px;color:#d6cadb;background:rgba(5,3,11,.6);border:1px solid rgba(255,255,255,.12);border-radius:9px;font-size:6px;font-weight:900;letter-spacing:.13em}.th-top>span i{width:6px;height:6px;border-radius:50%;background:#43ed91;box-shadow:0 0 9px #43ed91}.th-top>small{color:#9d90a7;font-size:6px;font-weight:900;letter-spacing:.15em}.th-identity{display:flex;align-items:flex-end;gap:19px;padding:22px 29px 22px;position:relative;z-index:1}.th-identity>.team-logo,.th-identity>label>.team-logo{width:88px;height:88px;display:grid;place-items:center;border:1px solid rgba(255,255,255,.3);border-radius:23px;box-shadow:0 15px 45px rgba(0,0,0,.45)}.th-identity>label{position:relative;cursor:pointer}.th-identity>label>span{position:absolute;right:-3px;bottom:-3px;width:27px;height:27px;display:grid;place-items:center;color:#fff;background:#171020;border:1px solid rgba(255,255,255,.18);border-radius:9px}.th-identity>label svg{width:13px}.th-identity>div{display:flex;flex-direction:column}.th-identity small{color:#5cdcff;font-size:7px;font-weight:900;letter-spacing:.16em}.th-identity h1{margin:5px 0 0;font-size:clamp(28px,3.6vw,44px);line-height:.9;letter-spacing:-.05em}.th-identity p{margin:9px 0 0;color:#a398ab;font-size:8.5px}.th-metrics{display:grid;grid-template-columns:repeat(4,1fr);background:rgba(5,3,11,.66);border-top:1px solid rgba(255,255,255,.1);backdrop-filter:blur(15px)}.th-metrics>span{min-height:71px;display:flex;flex-direction:column;justify-content:center;padding:0 23px;border-left:1px solid rgba(255,255,255,.08)}.th-metrics>span:first-child{border-left:0}.th-metrics b{font-size:18px;line-height:1}.th-metrics small{margin-top:5px;color:#776b7f;font-size:6px;font-weight:900;letter-spacing:.15em}.th-command{display:grid;grid-template-columns:minmax(0,1fr) 315px;gap:9px;margin-top:10px}.th-command>nav{display:grid;grid-template-columns:repeat(3,1fr);gap:6px}.th-command nav button{display:grid;grid-template-columns:25px 1fr;gap:8px;align-items:center;min-height:58px;padding:0 12px;color:#776b80;background:rgba(7,4,13,.8);border:1px solid rgba(255,255,255,.08);border-radius:13px;font:inherit;text-align:left;cursor:pointer}.th-command nav small{width:25px;height:25px;display:grid;place-items:center;color:#675b70;background:rgba(255,255,255,.035);border-radius:7px;font-size:5.5px}.th-command nav b{font-size:7.5px;letter-spacing:.09em}.th-command nav button.on{color:#fff;border-color:color-mix(in srgb,var(--th-color) 48%,transparent);background:color-mix(in srgb,var(--th-color) 9%,rgba(7,4,13,.8))}.th-command nav button.on small{color:#5bdcff}.th-command>div>button{width:100%;min-height:58px;display:grid;grid-template-columns:34px 1fr;gap:10px;align-items:center;padding:0 14px;color:#fff;background:linear-gradient(120deg,color-mix(in srgb,var(--th-color) 80%,#4b78ee),#ce48a6);border:1px solid rgba(255,255,255,.15);border-radius:13px;font:inherit;text-align:left;cursor:pointer}.th-command>div>button>svg{width:18px;justify-self:center}.th-command>div>button span{display:flex;flex-direction:column}.th-command>div>button b{font-size:7.5px;letter-spacing:.08em}.th-command>div>button small{margin-top:3px;color:#d4c8dc;font-size:6px}.th-command>div>button.pending{background:rgba(58,213,148,.07);border-color:rgba(58,213,148,.2)}.th-body{margin-top:10px}.th-ops{display:grid;grid-template-columns:repeat(3,1fr);gap:8px}.th-ops>*{min-width:0;min-height:135px;display:flex;flex-direction:column;justify-content:flex-end;padding:16px;color:#fff;background:radial-gradient(circle at 90% 10%,color-mix(in srgb,var(--th-color) 15%,transparent),transparent 35%),rgba(7,4,13,.82);border:1px solid rgba(255,255,255,.09);border-radius:17px;font:inherit;text-align:left}.th-ops>button{cursor:pointer}.th-ops>*>span{position:absolute;align-self:flex-end;transform:translateY(-73px);width:36px;height:36px;display:grid;place-items:center;color:#5bdcff;background:rgba(56,189,248,.06);border-radius:10px}.th-ops svg{width:16px}.th-ops small,.th-panel>small,.th-panel header small,.th-chat>header small{color:#5bdcff;font-size:6px;font-weight:900;letter-spacing:.15em}.th-ops b{margin-top:5px;overflow:hidden;font-size:13px;white-space:nowrap;text-overflow:ellipsis}.th-ops em{margin-top:5px;color:#776c7f;font-size:6.5px;font-style:normal}.th-panel{padding:21px;border:1px solid rgba(255,255,255,.09);border-radius:19px;background:rgba(7,4,13,.82)}.th-brief{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(260px,.65fr);gap:9px;margin-top:9px;padding:0;background:none;border:0}.th-brief>div,.th-brief>aside{padding:22px;border:1px solid rgba(255,255,255,.09);border-radius:19px;background:rgba(7,4,13,.82)}.th-brief h2{max-width:760px;margin:7px 0 0;font-size:clamp(24px,3.4vw,38px);line-height:1.05;letter-spacing:-.045em}.th-brief>div>p{margin:10px 0 0;color:#83778b;font-size:8px}.th-brief>div>div{display:flex;flex-wrap:wrap;gap:5px;margin-top:17px}.th-brief>div>div span{padding:7px 8px;color:#aaa0b2;background:rgba(255,255,255,.035);border:1px solid rgba(255,255,255,.09);border-radius:8px;font-size:6px;font-weight:850}.th-brief aside small{color:#f073bd;font-size:6px;font-weight:900;letter-spacing:.15em}.th-brief aside h3{margin:6px 0 0;font-size:21px;line-height:1.08}.th-brief aside p{margin:9px 0 0;color:#81758a;font-size:7.5px;line-height:1.5}.th-brief aside a{min-height:43px;display:flex;align-items:center;justify-content:center;gap:7px;margin-top:17px;color:#fff;background:linear-gradient(120deg,#4b78ee,#ce48a6);border-radius:11px;font-size:6.5px;font-weight:900}.th-brief aside a svg{width:15px}.th-private{margin-top:9px}.th-private>div{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-top:10px;padding-top:12px;border-top:1px solid rgba(255,255,255,.07)}.th-private>div span{display:flex;flex-direction:column}.th-private b{font-size:9px}.th-private p{margin:3px 0 0;color:#74697c;font-size:6.5px}.th-private button{padding:10px 12px;color:#b9849d;background:rgba(255,70,120,.035);border:1px solid rgba(255,100,140,.13);border-radius:9px;font:inherit;font-size:6px;font-weight:900;cursor:pointer}.th-apps{margin-bottom:9px}.th-apps>header,.th-roster>header{display:flex;align-items:flex-end;justify-content:space-between}.th-apps header>span,.th-roster header>span{display:flex;flex-direction:column}.th-apps h2,.th-roster h2{margin:4px 0 0;font-size:24px}.th-apps header>b{color:#f173bd;font-size:14px}.th-apps>div{display:grid;grid-template-columns:repeat(2,1fr);gap:7px;margin-top:13px}.th-apps article{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:11px;border:1px solid rgba(255,255,255,.08);border-radius:12px}.th-apps article>a{display:flex;align-items:center;gap:9px;color:#fff}.th-apps article>a>span{display:flex;flex-direction:column}.th-apps article b{font-size:8px}.th-apps article small{margin-top:3px;color:#756a7e;font-size:6px}.th-apps article>div{display:flex;gap:5px}.th-apps article button{padding:8px;color:#a99aee;background:rgba(255,255,255,.03);border:1px solid rgba(255,255,255,.1);border-radius:8px;font:inherit;font-size:5.5px;font-weight:900}.th-roster>header>b{color:#7f7388;font-size:6px;letter-spacing:.11em}.th-roster>div{margin-top:14px}.th-roster article{min-height:78px;display:grid;grid-template-columns:30px minmax(0,1fr) auto;gap:11px;align-items:center;padding:10px 4px;border-top:1px solid rgba(255,255,255,.075)}.th-roster article:first-child{border-top:0}.th-roster article>span:first-child{color:#665b6e;font-size:6px;font-weight:900}.th-roster article>a{display:flex;align-items:center;gap:11px;color:#fff}.th-roster article>a>.avatar{width:51px;height:51px}.th-roster article>a>span,.th-roster article.anon>span:nth-child(3){display:flex;flex-direction:column}.th-roster article small{color:#5bdcff;font-size:5.5px;font-weight:900;letter-spacing:.12em}.th-roster article b{margin-top:3px;font-size:12px}.th-roster article em{margin-top:4px;color:#786d81;font-size:6.5px;font-style:normal}.th-roster article>div:last-child{display:flex;align-items:center;gap:7px}.th-roster article>div:last-child i{width:6px;height:6px;border-radius:50%;background:#5d5563}.th-roster article>div:last-child i.on{background:#43ed91;box-shadow:0 0 8px #43ed91}.th-roster article>div:last-child button{padding:7px;color:#ae7e96;background:none;border:1px solid rgba(255,100,140,.12);border-radius:7px;font:inherit;font-size:5px}.th-anon-mark{width:51px;height:51px;display:grid!important;place-items:center;color:#8c7e97;background:linear-gradient(145deg,#1e1529,#0b0710);border:1px solid rgba(255,255,255,.09);border-radius:15px;font-size:15px;font-weight:900}.th-chat>header{padding-bottom:17px;border-bottom:1px solid rgba(255,255,255,.08)}.th-chat>header h2{margin:5px 0 0;font-size:29px}.th-chat>header p{margin:6px 0 0;color:#776c80;font-size:7px}
@media(max-width:900px){.th-command{grid-template-columns:1fr}.th-brief{grid-template-columns:1fr}.th-apps>div{grid-template-columns:1fr}}
@media(max-width:700px){.team-hq{padding:10px 13px 110px}.th-hero{min-height:430px;border-radius:23px}.th-top{padding:16px}.th-identity{align-items:center;padding:105px 18px 20px}.th-identity>.team-logo,.th-identity>label>.team-logo{width:67px;height:67px;border-radius:18px}.th-identity h1{font-size:44px}.th-metrics>span{min-height:63px;padding-inline:12px}.th-command nav button{padding-inline:8px}.th-command>div>button{min-height:54px}.th-ops{display:flex;flex-direction:column;overflow-x:visible}.th-ops>*{min-width:70vw;scroll-snap-align:start}.th-panel{padding:17px}.th-brief>div,.th-brief>aside{padding:18px}.th-roster article{grid-template-columns:26px auto minmax(0,1fr);row-gap:6px}.th-roster article>a{display:grid;grid-template-columns:44px minmax(0,1fr);gap:10px;align-items:center;min-width:0}.th-roster article>div:last-child{grid-column:1/-1;display:flex;align-items:center;gap:8px}.th-private>div{align-items:flex-start;flex-direction:column}.th-private button{width:100%}}
@media(max-width:430px){.team-hq{padding-inline:9px}.th-top>small{display:none}.th-identity{gap:12px}.th-identity>.team-logo,.th-identity>label>.team-logo{width:58px;height:58px}.th-identity h1{font-size:37px}.th-identity p{font-size:7px}.th-metrics>span{padding-inline:9px}.th-metrics b{font-size:15px}.th-command nav small{display:none}.th-command nav button{display:flex;justify-content:center;text-align:center}.th-command nav b{font-size:6.5px}.th-brief h2{font-size:25px}}
@media(max-width:700px){.th-body{min-width:0;max-width:100%;overflow:hidden}.th-ops{width:100%;max-width:100%;min-width:0}}
/* Link Studio */
.add-link-studio{width:min(1180px,100%);margin:0 auto;padding:28px 24px 130px;color:#fff}.al-head{max-width:760px;padding:18px 4px 30px}.al-head>span,.al-rail-label{color:#55d9ff;font-size:9px;font-weight:900;letter-spacing:.2em}.al-head h1{margin:9px 0 12px;font-size:clamp(42px,6.2vw,76px);line-height:.88;letter-spacing:-.065em}.al-head p{max-width:580px;margin:0;color:#95899f;font-size:14px;line-height:1.6}.al-layout{display:grid;grid-template-columns:minmax(0,1fr) 390px;gap:16px;align-items:start}.al-builder,.al-preview-card,.al-existing,.al-success{background:rgba(7,4,13,.86);border:1px solid rgba(255,255,255,.1);box-shadow:0 28px 80px rgba(0,0,0,.28)}.al-builder{padding:28px;border-radius:25px}.al-step{display:flex;align-items:center;gap:12px;margin-bottom:17px}.al-step>b{width:34px;height:34px;display:grid;place-items:center;flex:0 0 auto;color:#5cddff;border:1px solid rgba(75,213,255,.27);border-radius:10px;background:rgba(41,190,255,.07);font-size:9px;letter-spacing:.1em}.al-step>span{display:flex;flex-direction:column}.al-step strong{font-size:13px}.al-step small{margin-top:3px;color:#756a7e;font-size:8px}.al-step-two{margin-top:27px}.al-providers{display:grid;grid-template-columns:repeat(4,1fr);gap:8px}.al-provider{position:relative;min-height:84px;display:flex;flex-direction:column;align-items:flex-start;justify-content:space-between;padding:13px;color:#96899f;border:1px solid rgba(255,255,255,.09);border-radius:14px;background:rgba(255,255,255,.025);font:inherit;cursor:pointer}.al-provider i{font-size:20px;font-style:normal}.al-provider span{font-size:8px;font-weight:850}.al-provider svg{position:absolute;top:9px;right:9px;width:13px;color:#61e1ff}.al-provider.on{color:#fff;border-color:rgba(76,216,255,.52);background:linear-gradient(145deg,rgba(50,183,255,.14),rgba(185,66,255,.1));box-shadow:inset 0 0 22px rgba(67,178,255,.06)}.al-field-label{display:block;margin:15px 1px 7px;color:#81768a;font-size:7px;font-weight:900;letter-spacing:.16em}.al-builder>.field,.al-url-wrap .field{height:52px;margin:0;border-color:rgba(255,255,255,.12);background:rgba(0,0,0,.3)}.al-url-wrap{position:relative}.al-url-wrap>span{position:absolute;z-index:1;left:16px;top:17px;color:#58dbff}.al-url-wrap .field{padding-left:42px}.al-error{display:flex;align-items:center;gap:12px;margin-top:12px;padding:11px 13px;color:#ffc3da;border:1px solid rgba(255,73,152,.28);border-radius:11px;background:rgba(255,49,134,.07)}.al-error b{flex:0 0 auto;font-size:7px;letter-spacing:.12em}.al-error span{font-size:8px;line-height:1.35}.al-save{height:53px;margin-top:17px!important}.al-save span{margin-left:8px}.al-note{margin:9px 5px 0!important;color:#62586b!important;font-size:7px!important;line-height:1.45!important;text-align:center}.al-rail{position:sticky;top:86px}.al-rail-label{display:block;margin:4px 4px 10px}.al-preview-card{overflow:hidden;border-color:rgba(77,214,255,.23);border-radius:22px;background:radial-gradient(circle at 86% 8%,rgba(188,53,255,.18),transparent 34%),radial-gradient(circle at 10% 90%,rgba(39,197,255,.11),transparent 35%),#090610}.al-preview-person{display:grid;grid-template-columns:48px minmax(0,1fr) auto;align-items:center;gap:11px;padding:19px;border-bottom:1px solid rgba(255,255,255,.08)}.al-preview-person .avatar{width:48px;height:48px}.al-preview-person>span{display:flex;flex-direction:column;min-width:0}.al-preview-person b{font-size:12px}.al-preview-person small{margin-top:3px;color:#796d83;font-size:7px}.al-preview-person em{padding:6px 8px;color:#76f7a9;border:1px solid rgba(70,233,138,.24);border-radius:100px;background:rgba(47,216,119,.06);font-size:6px;font-weight:900;font-style:normal;letter-spacing:.12em}.al-preview-signal{padding:21px 19px 22px}.al-preview-signal>small{color:#55dbff;font-size:6.5px;font-weight:900;letter-spacing:.17em}.al-preview-signal>div{display:grid;grid-template-columns:38px minmax(0,1fr) auto;align-items:center;gap:11px;margin-top:10px;padding:13px;border:1px solid rgba(255,255,255,.1);border-radius:13px;background:rgba(255,255,255,.035)}.al-preview-signal i{width:38px;height:38px;display:grid;place-items:center;color:#fff;border-radius:10px;background:linear-gradient(145deg,#7a4df4,#d23ea6);font-size:17px;font-style:normal}.al-preview-signal span{display:flex;flex-direction:column;min-width:0}.al-preview-signal b{overflow:hidden;font-size:9px;white-space:nowrap;text-overflow:ellipsis}.al-preview-signal span small{overflow:hidden;margin-top:3px;color:#74687d;font-size:6.5px;white-space:nowrap;text-overflow:ellipsis}.al-preview-signal strong{color:#8e80a0;font-size:14px}.al-preview-foot{display:flex;align-items:center;gap:7px;padding:10px 19px;color:#665b6e;border-top:1px solid rgba(255,255,255,.07);font-size:6.5px}.al-preview-foot i{width:6px;height:6px;border-radius:50%;background:#45e88c;box-shadow:0 0 9px #45e88c}.al-existing{margin-top:12px;padding:17px 18px;border-radius:18px}.al-existing header{display:flex;justify-content:space-between;align-items:center;margin-bottom:7px}.al-existing header span{display:flex;flex-direction:column}.al-existing header small{color:#766b7f;font-size:6px;font-weight:900;letter-spacing:.14em}.al-existing header b{margin-top:3px;font-size:10px}.al-existing header a{color:#a596ea;font-size:7px;font-weight:850}.al-existing>div{display:grid;grid-template-columns:28px minmax(0,1fr);align-items:center;gap:9px;padding:10px 0;border-top:1px solid rgba(255,255,255,.07)}.al-existing>div>i{width:28px;height:28px;display:grid;place-items:center;color:#9d8dea;border-radius:8px;background:rgba(160,98,255,.08);font-style:normal}.al-existing>div>span{display:flex;flex-direction:column;min-width:0}.al-existing>div b,.al-existing>div small{overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.al-existing>div b{font-size:8px}.al-existing>div small{margin-top:2px;color:#6f6477;font-size:6px}.al-existing>p{margin:12px 0 2px;color:#716678;font-size:8px}.al-success{max-width:720px;margin:70px auto;padding:55px 50px;border-color:rgba(89,224,255,.27);border-radius:28px;text-align:center;background:radial-gradient(circle at 50% 0,rgba(58,206,255,.15),transparent 38%),radial-gradient(circle at 80% 90%,rgba(207,61,255,.12),transparent 34%),#08050e}.al-success-mark{width:68px;height:68px;display:grid;place-items:center;margin:0 auto 20px;color:#77f5b0;border:1px solid rgba(77,239,148,.33);border-radius:50%;background:rgba(54,230,135,.08);box-shadow:0 0 40px rgba(54,230,135,.12)}.al-success-mark svg{width:28px}.al-success>small{color:#56dcff;font-size:8px;font-weight:900;letter-spacing:.2em}.al-success h1{margin:9px 0 10px;font-size:clamp(38px,6vw,62px);letter-spacing:-.055em}.al-success>p{max-width:500px;margin:0 auto;color:#8f8498;font-size:11px;line-height:1.55}.al-saved-link{max-width:510px;display:grid;grid-template-columns:42px minmax(0,1fr) auto;align-items:center;gap:11px;margin:27px auto 0;padding:14px;color:#fff;border:1px solid rgba(255,255,255,.11);border-radius:14px;background:rgba(255,255,255,.035);text-align:left}.al-saved-link>i{width:42px;height:42px;display:grid;place-items:center;border-radius:11px;background:linear-gradient(145deg,#714ef1,#ce3eac);font-size:18px;font-style:normal}.al-saved-link>span{display:flex;flex-direction:column;min-width:0}.al-saved-link b,.al-saved-link small{overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.al-saved-link b{font-size:10px}.al-saved-link small{margin-top:3px;color:#776c81;font-size:7px}.al-saved-link strong{color:#93879d}.al-success-actions{display:flex;justify-content:center;gap:9px;margin-top:24px}.al-success-actions .btn{min-width:160px}
@media(max-width:820px){.al-layout{grid-template-columns:1fr}.al-rail{position:static;display:grid;grid-template-columns:1fr 1fr;gap:10px}.al-rail-label{grid-column:1/-1}.al-existing{margin-top:0}}
@media(max-width:560px){.add-link-studio{padding:12px 13px 110px}.al-head{padding:13px 5px 21px}.al-head h1{font-size:43px}.al-head p{font-size:11px}.al-builder{padding:18px 14px;border-radius:19px}.al-providers{grid-template-columns:repeat(2,1fr)}.al-provider{min-height:72px}.al-rail{display:block;margin-top:8px}.al-rail-label{margin-top:19px}.al-existing{margin-top:10px}.al-preview-person{grid-template-columns:44px minmax(0,1fr) auto;padding:15px}.al-preview-person .avatar{width:44px;height:44px}.al-success{margin:25px 0;padding:38px 18px;border-radius:22px}.al-success-actions{flex-direction:column}.al-success-actions .btn{width:100%}}
/* Club Standing — private, behavior-based reputation */
.csig-hero{position:relative}
.club-standing{max-width:1180px;padding-bottom:130px}.csig-hero{min-height:390px;display:flex;align-items:center;justify-content:space-between;gap:40px;margin:18px 0 12px;padding:48px 58px;overflow:hidden;border:1px solid rgba(74,215,255,.22);border-radius:30px;background:radial-gradient(circle at 88% 40%,rgba(186,52,255,.2),transparent 28%),radial-gradient(circle at 75% 60%,rgba(47,203,255,.16),transparent 34%),linear-gradient(145deg,#0b0713,#05030a);box-shadow:0 36px 100px rgba(0,0,0,.42)}.csig-kicker,.csig-panel>small,.csig-panel header small,.csig-status small{color:#58dfff;font-size:8px;font-weight:900;letter-spacing:.19em}.csig-hero-copy{max-width:720px}.csig-hero h1{margin:10px 0 14px;color:#fff;font-size:clamp(50px,7.5vw,90px);line-height:.82;letter-spacing:-.07em}.csig-hero h1 span{color:transparent;-webkit-text-stroke:1px rgba(255,255,255,.55)}.csig-hero p{max-width:650px;margin:0;color:#9b90a5;font-size:13px;line-height:1.65}.csig-ring{width:190px;height:190px;display:grid;place-items:center;flex:0 0 auto;border-radius:50%;background:conic-gradient(#50dcff calc(var(--csig-pct) * 1%),#d14bca 0,rgba(255,255,255,.07) 0);box-shadow:0 0 60px rgba(103,89,255,.22)}.csig-ring:before{content:"";grid-area:1/1;width:154px;height:154px;border-radius:50%;background:#090510;border:1px solid rgba(255,255,255,.1)}.csig-ring>div{z-index:1;grid-area:1/1;display:flex;flex-direction:column;align-items:center}.csig-ring b{font-size:42px;letter-spacing:-.055em}.csig-ring small{margin-top:3px;color:#8b7f96;font-size:7px;font-weight:900;letter-spacing:.16em}.csig-status{display:grid;grid-template-columns:minmax(260px,.75fr) 1.25fr;gap:0;margin-bottom:12px;overflow:hidden;border:1px solid rgba(255,255,255,.1);border-radius:23px;background:rgba(7,4,13,.86)}.csig-status>div{padding:25px 29px}.csig-status>div+div{border-left:1px solid rgba(255,255,255,.09)}.csig-status h2{margin:4px 0;color:#fff;font-size:37px;letter-spacing:-.05em}.csig-status p{margin:0;color:#8d8297;font-size:9px}.csig-status p b{color:#fff}.csig-status-next{display:flex;flex-direction:column;justify-content:center}.csig-status-next>b{margin-top:5px;color:#fff;font-size:11px}.csig-status-next>div{height:5px;margin-top:12px;overflow:hidden;border-radius:5px;background:rgba(255,255,255,.07)}.csig-status-next i{display:block;height:100%;border-radius:5px;background:linear-gradient(90deg,#4ddcff,#d447c5);box-shadow:0 0 14px #8460ff}.csig-status-next>span{margin-top:6px;color:#706578;font-size:7px}.csig-layout{display:grid;grid-template-columns:minmax(0,1fr) 350px;gap:12px;align-items:start}.csig-main,.csig-rail{display:flex;flex-direction:column;gap:12px}.csig-rail{position:sticky;top:80px}.csig-panel{padding:25px;border:1px solid rgba(255,255,255,.09);border-radius:22px;background:rgba(7,4,13,.84)}.csig-panel>header{display:flex;align-items:flex-end;justify-content:space-between;gap:20px;margin-bottom:21px}.csig-panel header span{display:flex;flex-direction:column}.csig-panel h2{margin:5px 0 0;color:#fff;font-size:25px;line-height:1;letter-spacing:-.04em}.csig-panel header>p{max-width:260px;margin:0;color:#82778c;font-size:8px;line-height:1.5;text-align:right}.csig-metrics{display:grid;grid-template-columns:repeat(4,1fr);overflow:hidden;border:1px solid rgba(255,255,255,.08);border-radius:16px}.csig-metrics>div{min-width:0;padding:20px 15px;border-left:1px solid rgba(255,255,255,.08);background:rgba(255,255,255,.018)}.csig-metrics>div:first-child{border-left:0}.csig-metrics b,.csig-metrics span,.csig-metrics small{display:block}.csig-metrics b{color:#fff;font-size:30px;letter-spacing:-.05em}.csig-metrics span{margin-top:4px;color:#beb2c7;font-size:8px;font-weight:800}.csig-metrics small{margin-top:5px;color:#6d6276;font-size:6.5px;line-height:1.4}.csig-rating-list{border-top:1px solid rgba(255,255,255,.08)}.csig-rating{display:grid;grid-template-columns:38px minmax(0,1fr) auto;align-items:center;gap:12px;padding:15px 2px;border-bottom:1px solid rgba(255,255,255,.08)}.csig-rating-mark{width:38px;height:38px;display:grid;place-items:center;color:#78f3ac;border:1px solid rgba(69,232,137,.22);border-radius:11px;background:rgba(52,219,127,.06);font-size:15px}.csig-rating>div{display:flex;flex-direction:column;min-width:0}.csig-rating small{color:#706579;font-size:6px;font-weight:900;letter-spacing:.13em}.csig-rating b{margin-top:3px;color:#fff;font-size:9px}.csig-rating p{display:flex;flex-wrap:wrap;gap:5px;margin:7px 0 0}.csig-rating p span{padding:4px 6px;color:#ae9eea;border:1px solid rgba(164,104,255,.16);border-radius:6px;background:rgba(151,85,255,.05);font-size:6px}.csig-rating p em{color:#706578;font-size:7px}.csig-rating>button{padding:7px;color:#81758c;border:0;background:none;font:inherit;font-size:6.5px;cursor:pointer}.csig-rating>strong{padding:5px 7px;color:#78f3ac;border:1px solid rgba(69,232,137,.2);border-radius:7px;font-size:6px;letter-spacing:.12em}.csig-review-ok{margin:0 0 13px;padding:11px 13px;color:#a9f3ca;border:1px solid rgba(64,227,136,.2);border-radius:11px;background:rgba(57,218,130,.06);font-size:8px;line-height:1.4}.csig-empty{padding:30px;color:#807489;font-size:9px;text-align:center}.csig-ladder>h2,.csig-rules>h2{margin-bottom:17px}.csig-ladder>div{display:grid;grid-template-columns:31px minmax(0,1fr) auto;align-items:center;gap:10px;padding:12px 0;border-top:1px solid rgba(255,255,255,.07);opacity:.5}.csig-ladder>div.done,.csig-ladder>div.current{opacity:1}.csig-ladder>div.current{margin:0 -10px;padding:12px 10px;border:1px solid rgba(82,217,255,.22);border-radius:11px;background:linear-gradient(90deg,rgba(54,200,255,.08),rgba(190,65,255,.05))}.csig-ladder i{width:31px;height:31px;display:grid;place-items:center;color:#83778e;border:1px solid rgba(255,255,255,.1);border-radius:9px;font-size:7px;font-weight:900;font-style:normal}.csig-ladder .done i{color:#70eaa5}.csig-ladder .current i{color:#5edfff;border-color:rgba(82,217,255,.25)}.csig-ladder span{display:flex;flex-direction:column;min-width:0}.csig-ladder b{color:#fff;font-size:7.5px}.csig-ladder span small{margin-top:3px;color:#766b80;font-size:6px}.csig-ladder em{color:#5fddff;font-size:6px;font-weight:900;font-style:normal;letter-spacing:.12em}.csig-rules ul{margin:0 0 15px;padding:0;list-style:none}.csig-rules li{position:relative;padding:9px 0 9px 18px;color:#968b9f;border-top:1px solid rgba(255,255,255,.07);font-size:7.5px;line-height:1.4}.csig-rules li:before{content:"✓";position:absolute;left:0;color:#55deff}.csig-rules a{display:block;padding-top:13px;color:#a596ea;border-top:1px solid rgba(255,255,255,.08);font-size:7px;font-weight:900}.csig-review-backdrop{position:fixed;z-index:1200;inset:0;display:grid;place-items:center;padding:20px;background:rgba(3,2,7,.78);backdrop-filter:blur(13px)}.csig-review{position:relative;width:min(520px,100%);padding:35px;border:1px solid rgba(83,219,255,.28);border-radius:24px;background:radial-gradient(circle at 80% 0,rgba(184,54,255,.15),transparent 32%),#0a0611;box-shadow:0 35px 100px rgba(0,0,0,.65)}.csig-review>small{color:#59dfff;font-size:7px;font-weight:900;letter-spacing:.19em}.csig-review h2{margin:7px 0 7px;color:#fff;font-size:31px;letter-spacing:-.045em}.csig-review>p{margin:0;color:#91869b;font-size:9px;line-height:1.5}.csig-review-x{position:absolute;top:17px;right:17px;width:30px;height:30px;color:#8e8298;border:1px solid rgba(255,255,255,.1);border-radius:9px;background:rgba(255,255,255,.03);font-size:17px}.csig-review-signal{display:flex;flex-direction:column;margin:18px 0 12px;padding:12px;border:1px solid rgba(255,255,255,.09);border-radius:12px;background:rgba(255,255,255,.025)}.csig-review-signal b{font-size:9px}.csig-review-signal span{margin-top:4px;color:#756a7d;font-size:7px}.csig-reasons{display:grid;grid-template-columns:1fr 1fr;gap:7px;margin-bottom:15px}.csig-reasons button{display:flex;align-items:center;gap:8px;min-height:44px;padding:10px;color:#9a8fa3;border:1px solid rgba(255,255,255,.09);border-radius:10px;background:rgba(255,255,255,.025);font:inherit;font-size:7px;text-align:left}.csig-reasons i{width:9px;height:9px;flex:0 0 auto;border:1px solid #6e6377;border-radius:50%}.csig-reasons button.on{color:#fff;border-color:rgba(83,219,255,.38);background:rgba(65,201,255,.07)}.csig-reasons button.on i{border:3px solid #54ddff}.csig-review>.btn{margin-top:7px}
@media(max-width:1100px){.csig-hero{padding:35px}.csig-hero-copy{max-width:65%}.csig-hero h1{font-size:58px}.csig-ring{width:132px;height:132px}.csig-ring:before{width:104px;height:104px}.csig-ring b{font-size:29px}.csig-layout{grid-template-columns:minmax(0,1fr) 300px}.csig-metrics{grid-template-columns:1fr 1fr}.csig-metrics>div:nth-child(3){border-left:0;border-top:1px solid rgba(255,255,255,.08)}.csig-metrics>div:nth-child(4){border-top:1px solid rgba(255,255,255,.08)}}
@media(max-width:700px){.club-standing{padding-inline:13px}.csig-hero{min-height:420px;align-items:flex-end;padding:27px 22px}.csig-hero-copy{max-width:100%}.csig-hero h1{font-size:50px}.csig-hero p{font-size:10px}.csig-ring{position:absolute;right:24px;top:28px;width:105px;height:105px}.csig-ring:before{width:82px;height:82px}.csig-ring b{font-size:22px}.csig-ring small{font-size:5px}.csig-status{grid-template-columns:1fr}.csig-status>div{padding:20px}.csig-status>div+div{border-left:0;border-top:1px solid rgba(255,255,255,.09)}.csig-layout{display:flex;flex-direction:column}.csig-main,.csig-rail{width:100%}.csig-rail{position:static}.csig-panel{padding:18px}.csig-panel>header{align-items:flex-start;flex-direction:column;gap:8px}.csig-panel header>p{max-width:none;text-align:left}.csig-rating{grid-template-columns:34px minmax(0,1fr)}.csig-rating-mark{width:34px;height:34px}.csig-rating>button,.csig-rating>strong{grid-column:2;justify-self:start}.csig-review{padding:28px 18px 20px}.csig-reasons{grid-template-columns:1fr}}
/* Member feedback command */
.feedback-scrim{position:fixed;z-index:1400;inset:0;display:flex;justify-content:flex-end;padding:14px;background:rgba(3,2,7,.76);backdrop-filter:blur(14px)}.feedback-command{width:min(680px,100%);height:100%;overflow-y:auto;padding:34px;border:1px solid rgba(80,218,255,.28);border-radius:26px;background:radial-gradient(circle at 80% 0,rgba(187,54,255,.16),transparent 30%),radial-gradient(circle at 0 85%,rgba(43,198,255,.08),transparent 30%),#090610;box-shadow:-35px 0 100px rgba(0,0,0,.55);color:#fff}.feedback-command>header{display:flex;align-items:flex-start;justify-content:space-between;gap:20px}.feedback-command>header>div{max-width:530px}.feedback-command>header small,.feedback-sent>small{color:#56ddff;font-size:8px;font-weight:900;letter-spacing:.19em}.feedback-command h2{margin:7px 0 8px;font-size:43px;line-height:.93;letter-spacing:-.055em}.feedback-command header p,.feedback-sent>p{margin:0;color:#978b9f;font-size:10px;line-height:1.55}.feedback-x{width:38px;height:38px;display:grid;place-items:center;flex:0 0 auto;color:#8f8398;border:1px solid rgba(255,255,255,.11);border-radius:11px;background:rgba(255,255,255,.03)}.feedback-x svg{width:16px}.feedback-context{display:flex;align-items:center;justify-content:space-between;gap:15px;margin:22px 0;padding:13px 15px;border:1px solid rgba(68,216,255,.17);border-radius:13px;background:rgba(50,190,255,.045)}.feedback-context>span{display:grid;grid-template-columns:8px minmax(0,1fr);gap:2px 8px}.feedback-context i{grid-row:1/3;width:7px;height:7px;margin-top:3px;border-radius:50%;background:#4ee590;box-shadow:0 0 10px #4ee590}.feedback-context small{color:#65818d;font-size:6px;font-weight:900;letter-spacing:.13em}.feedback-context b{font-size:8px}.feedback-context em{color:#716677;font-size:6.5px;font-style:normal}.feedback-step{display:flex;align-items:center;gap:10px;margin:19px 0 10px}.feedback-step>b{width:30px;height:30px;display:grid;place-items:center;color:#5bddff;border:1px solid rgba(75,214,255,.22);border-radius:9px;background:rgba(51,196,255,.05);font-size:7px}.feedback-step>span{display:flex;flex-direction:column}.feedback-step strong{font-size:10px}.feedback-step small{margin-top:2px;color:#726777;font-size:7px}.feedback-kinds{display:grid;grid-template-columns:1fr 1fr;gap:7px}.feedback-kinds button{position:relative;min-height:68px;display:grid;grid-template-columns:32px 1fr;align-items:center;gap:9px;padding:11px;color:#9b90a3;border:1px solid rgba(255,255,255,.09);border-radius:12px;background:rgba(255,255,255,.022);font:inherit;text-align:left}.feedback-kinds button>i{width:32px;height:32px;display:grid;place-items:center;color:#9b8be3;border-radius:9px;background:rgba(152,89,255,.08);font-size:13px;font-weight:900;font-style:normal}.feedback-kinds button>span{display:flex;flex-direction:column}.feedback-kinds button b{font-size:8px}.feedback-kinds button small{margin-top:3px;color:#685e70;font-size:6px}.feedback-kinds button>svg{position:absolute;top:9px;right:9px;width:12px;color:#64dfff}.feedback-kinds button.on{color:#fff;border-color:rgba(74,215,255,.38);background:linear-gradient(130deg,rgba(53,194,255,.08),rgba(184,65,255,.06))}.feedback-text{min-height:128px;margin:0!important;padding:15px!important;border-color:rgba(255,255,255,.12)!important;background:rgba(0,0,0,.28)!important;font-size:11px!important;line-height:1.5!important;resize:vertical}.feedback-impact{display:flex;flex-wrap:wrap;gap:6px;margin-top:9px}.feedback-impact button{display:flex;align-items:center;gap:6px;padding:7px 9px;color:#817589;border:1px solid rgba(255,255,255,.09);border-radius:100px;background:rgba(255,255,255,.025);font:inherit;font-size:6.5px}.feedback-impact i{width:7px;height:7px;border:1px solid #756a7d;border-radius:50%}.feedback-impact button.on{color:#fff;border-color:rgba(85,217,255,.3)}.feedback-impact button.on i{border:2px solid #55ddff}.feedback-attach{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-top:13px}.feedback-attach>label,.feedback-shot,.feedback-attach>div:last-child{min-height:62px;display:flex;align-items:center;gap:10px;padding:11px;border:1px solid rgba(255,255,255,.09);border-radius:12px;background:rgba(255,255,255,.022)}.feedback-attach>label{cursor:pointer}.feedback-attach>label>svg,.feedback-attach>div:last-child>span>svg{width:17px;color:#68ddff}.feedback-attach>label>span,.feedback-shot>span{display:flex;flex-direction:column}.feedback-attach b{font-size:7.5px}.feedback-attach small{margin-top:3px;color:#6d6275;font-size:6px}.feedback-attach>div:last-child>span{display:grid;place-items:center;flex:0 0 auto}.feedback-attach>div:last-child p{margin:0;color:#756a7e;font-size:6.5px;line-height:1.45}.feedback-shot{position:relative;overflow:hidden}.feedback-shot>img{width:42px;height:42px;object-fit:cover;border-radius:8px}.feedback-shot>button{margin-left:auto;padding:6px;color:#766b7f;border:0;background:none}.feedback-shot>button svg{width:12px}.feedback-submit{height:50px;margin-top:15px!important}.feedback-submit span{margin-left:7px}.feedback-sent{display:flex;flex-direction:column;justify-content:center;max-width:680px;text-align:center}.feedback-sent-mark{width:72px;height:72px;display:grid;place-items:center;margin:0 auto 20px;color:#72f2aa;border:1px solid rgba(70,235,143,.28);border-radius:50%;background:rgba(50,218,126,.06);box-shadow:0 0 45px rgba(50,218,126,.12)}.feedback-sent-mark svg{width:28px}.feedback-sent>.feedback-x{position:absolute;top:30px;right:30px}.feedback-sent h2{font-size:42px}.feedback-sent>p{max-width:500px;margin:0 auto}.feedback-receipt{display:grid;grid-template-columns:1fr 1fr 1fr;margin:27px 0;overflow:hidden;border:1px solid rgba(255,255,255,.09);border-radius:14px}.feedback-receipt>span{display:flex;flex-direction:column;padding:15px;border-left:1px solid rgba(255,255,255,.08);text-align:left}.feedback-receipt>span:first-child{border-left:0}.feedback-receipt small{color:#6c6174;font-size:6px;font-weight:900;letter-spacing:.13em}.feedback-receipt b{overflow:hidden;margin-top:4px;font-size:8px;white-space:nowrap;text-overflow:ellipsis}.feedback-sent>.btn{max-width:360px;width:100%;margin:7px auto 0!important}
@media(max-width:700px){.feedback-scrim{padding:0}.feedback-command{border-radius:0;padding:24px 17px 100px}.feedback-command h2{font-size:37px}.feedback-context{align-items:flex-start;flex-direction:column}.feedback-kinds{grid-template-columns:1fr}.feedback-attach{grid-template-columns:1fr}.feedback-sent{padding-bottom:100px}.feedback-sent>.feedback-x{top:19px;right:17px}.feedback-sent h2{font-size:35px}.feedback-receipt{grid-template-columns:1fr}.feedback-receipt>span{border-left:0;border-top:1px solid rgba(255,255,255,.08)}.feedback-receipt>span:first-child{border-top:0}}
/* Sent feedback history */
.feedback-history{max-width:1120px;padding-bottom:125px}.feedback-history>header{display:flex;align-items:flex-end;justify-content:space-between;gap:30px;padding:48px 5px 30px;border-bottom:1px solid rgba(255,255,255,.09)}.feedback-history>header>div{max-width:720px}.feedback-history>header small,.feedback-history-head span,.feedback-history-empty>small{color:#59dfff;font-size:8px;font-weight:900;letter-spacing:.19em}.feedback-history>header h1{margin:8px 0 11px;color:#fff;font-size:clamp(50px,7vw,84px);line-height:.82;letter-spacing:-.068em}.feedback-history>header p{max-width:610px;margin:0;color:#91869a;font-size:12px;line-height:1.6}.feedback-history-count{display:grid;grid-template-columns:240px 1fr;align-items:center;margin:13px 0;padding:24px 29px;border:1px solid rgba(255,255,255,.09);border-radius:20px;background:radial-gradient(circle at 8% 50%,rgba(62,207,255,.1),transparent 22%),rgba(7,4,13,.84)}.feedback-history-count>span{display:flex;align-items:baseline;gap:10px}.feedback-history-count b{font-size:38px;letter-spacing:-.055em}.feedback-history-count small{color:#6e6377;font-size:7px;font-weight:900;letter-spacing:.13em}.feedback-history-count p{margin:0;padding-left:28px;color:#93889d;border-left:1px solid rgba(255,255,255,.09);font-size:9px;line-height:1.5}.feedback-history-list{padding:24px;border:1px solid rgba(255,255,255,.09);border-radius:22px;background:rgba(7,4,13,.84)}.feedback-history-head{display:flex;justify-content:space-between;padding-bottom:13px}.feedback-history-head b{color:#6f6478;font-size:9px}.feedback-history-list article{display:grid;grid-template-columns:42px minmax(0,1fr) auto;align-items:center;gap:13px;padding:16px 2px;border-top:1px solid rgba(255,255,255,.08)}.feedback-history-mark{width:42px;height:42px;display:grid;place-items:center;color:#63deff;border:1px solid rgba(70,213,255,.2);border-radius:12px;background:rgba(50,197,255,.055);font-size:16px;font-weight:900}.feedback-history-list article>div{display:flex;flex-direction:column;min-width:0}.feedback-history-list article small{color:#756a7e;font-size:6.5px;font-weight:900;letter-spacing:.1em}.feedback-history-list article b{overflow:hidden;margin-top:4px;color:#fff;font-size:9px;white-space:nowrap;text-overflow:ellipsis}.feedback-history-list article p{margin:5px 0 0;color:#695f71;font-size:6.5px}.feedback-history-list article em{color:#74697c;font-size:7px;font-style:normal}.feedback-history-empty{display:flex;flex-direction:column;align-items:center;margin-top:13px;padding:70px 25px;border:1px solid rgba(82,216,255,.16);border-radius:24px;background:radial-gradient(circle at 50% 20%,rgba(56,203,255,.1),transparent 28%),rgba(7,4,13,.84);text-align:center}.feedback-history-empty>span{width:65px;height:65px;display:grid;place-items:center;margin-bottom:18px;color:#61ddff;border:1px solid rgba(70,214,255,.22);border-radius:20px;background:rgba(48,197,255,.055)}.feedback-history-empty>span svg{width:26px}.feedback-history-empty h2{margin:8px 0 9px;font-size:35px;line-height:1;letter-spacing:-.045em}.feedback-history-empty p{max-width:480px;margin:0 0 20px;color:#8e8397;font-size:10px;line-height:1.55}
@media(max-width:700px){.feedback-history{padding-inline:13px}.feedback-history>header{align-items:flex-start;flex-direction:column;padding-top:25px}.feedback-history>header h1{font-size:52px}.feedback-history>header p{font-size:10px}.feedback-history>header>.btn{width:100%}.feedback-history-count{grid-template-columns:1fr;padding:18px}.feedback-history-count p{margin-top:13px;padding:13px 0 0;border-left:0;border-top:1px solid rgba(255,255,255,.09)}.feedback-history-list{padding:16px}.feedback-history-list article{grid-template-columns:36px minmax(0,1fr)}.feedback-history-mark{width:36px;height:36px}.feedback-history-list article em{grid-column:2}.feedback-history-empty{padding:50px 18px}.feedback-history-empty h2{font-size:30px}}
/* Squad Foundry */
.squad-foundry{max-width:1180px;padding-bottom:130px;--sf-color:#7c5cff}.sf-head{display:flex;align-items:flex-end;justify-content:space-between;gap:30px;padding:38px 3px 26px}.sf-head>div{max-width:800px}.sf-head>div>small,.sf-preview-label span,.sf-brand>span{color:#59ddff;font-size:8px;font-weight:900;letter-spacing:.19em}.sf-head h1{margin:8px 0 11px;color:#fff;font-size:clamp(48px,6.5vw,78px);line-height:.83;letter-spacing:-.068em}.sf-head p{max-width:680px;margin:0;color:#92879b;font-size:12px;line-height:1.6}.sf-head>span{display:flex;align-items:center;gap:9px;padding:13px 15px;border:1px solid rgba(255,255,255,.09);border-radius:14px;background:rgba(255,255,255,.025)}.sf-head>span b{color:#5edfff;font-size:30px}.sf-head>span small{color:#736879;font-size:6.5px;font-weight:900;line-height:1.35;letter-spacing:.12em}.sf-layout{display:grid;grid-template-columns:minmax(0,1fr) 390px;gap:13px;align-items:start}.sf-form{display:flex;flex-direction:column;gap:12px}.sf-section,.sf-preview{border:1px solid rgba(255,255,255,.09);border-radius:22px;background:rgba(7,4,13,.84)}.sf-section{padding:24px}.sf-section>header{display:flex;align-items:center;gap:11px;margin-bottom:17px}.sf-section>header>b{width:34px;height:34px;display:grid;place-items:center;flex:0 0 auto;color:#59ddff;border:1px solid rgba(77,214,255,.23);border-radius:10px;background:rgba(50,194,255,.055);font-size:7px}.sf-section>header>span{display:flex;flex-direction:column}.sf-section>header strong{font-size:12px}.sf-section>header small{margin-top:3px;color:#74697d;font-size:7px}.sf-field-grid{display:grid;grid-template-columns:1fr 1fr;gap:9px}.sf-section label>span,.sf-full-field>span{display:block;margin:0 1px 6px;color:#786d80;font-size:6.5px;font-weight:900;letter-spacing:.13em}.sf-section .field{height:49px;margin:0;border-color:rgba(255,255,255,.1);background:rgba(0,0,0,.24)}.sf-full-field{display:block;margin-top:10px}.sf-full-field textarea.field{height:auto;min-height:90px;padding-top:13px;resize:vertical}.sf-selected{display:flex;flex-wrap:wrap;gap:6px;margin-bottom:10px}.sf-selected button{display:flex;align-items:center;gap:7px;padding:7px 9px;color:#d4c7e3;border:1px solid rgba(170,96,255,.2);border-radius:8px;background:rgba(151,76,255,.06);font:inherit;font-size:7px}.sf-selected svg{width:10px}.sf-no-games{margin-bottom:10px;color:#756a7d;font-size:8px}.sf-game-search{height:48px;display:grid;grid-template-columns:20px minmax(0,1fr) auto;align-items:center;gap:8px;padding:0 14px;border:1px solid rgba(255,255,255,.1);border-radius:12px;background:rgba(0,0,0,.25)}.sf-game-search>svg{width:17px;color:#65dfff}.sf-game-search input{width:100%;color:#fff;border:0;outline:0;background:transparent;font:inherit;font-size:9px}.sf-game-search em{color:#675d70;font-size:6px;font-style:normal}.sf-game-results{display:grid;grid-template-columns:repeat(2,1fr);gap:7px;margin-top:9px}.sf-game-results button{position:relative;isolation:isolate;min-height:76px;overflow:hidden;display:flex;flex-direction:column;align-items:flex-start;justify-content:flex-end;padding:10px;color:#fff;border:1px solid rgba(255,255,255,.09);border-radius:12px;background:#090610;font:inherit;text-align:left}.sf-game-results button>span{position:absolute;z-index:-2;inset:0;background-image:var(--sf-game);background-size:cover;background-position:center;opacity:.34}.sf-game-results button:after{content:"";position:absolute;z-index:-1;inset:0;background:linear-gradient(0deg,rgba(5,3,10,.96),rgba(5,3,10,.1))}.sf-game-results button b{font-size:8px}.sf-game-results button small{margin-top:3px;color:#60dcff;font-size:5.5px;font-weight:900;letter-spacing:.1em}.sf-game-results button.on{border-color:var(--sf-color);box-shadow:inset 0 0 25px color-mix(in srgb,var(--sf-color) 20%,transparent)}.sf-vis{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-top:13px}.sf-vis button{display:flex;align-items:center;gap:9px;min-height:57px;padding:10px;color:#94889c;border:1px solid rgba(255,255,255,.09);border-radius:12px;background:rgba(255,255,255,.022);font:inherit;text-align:left}.sf-vis button>i{width:11px;height:11px;flex:0 0 auto;border:1px solid #736879;border-radius:50%}.sf-vis button>span{display:flex;flex-direction:column}.sf-vis b{font-size:8px}.sf-vis small{margin-top:3px;color:#6d6275;font-size:6px}.sf-vis button.on{color:#fff;border-color:rgba(80,217,255,.3)}.sf-vis button.on>i{border:3px solid #59dfff}.sf-preview{position:sticky;top:80px;padding:17px}.sf-preview-label{display:flex;justify-content:space-between;align-items:center;padding:2px 2px 12px}.sf-preview-label b{padding:5px 7px;color:#81758a;border:1px solid rgba(255,255,255,.09);border-radius:7px;font-size:6px;letter-spacing:.12em}.sf-card{overflow:hidden;border:1px solid color-mix(in srgb,var(--sf-color) 38%,rgba(255,255,255,.08));border-radius:18px;background:radial-gradient(circle at 95% 0,color-mix(in srgb,var(--sf-color) 22%,transparent),transparent 34%),#090610}.sf-card-top{display:flex;align-items:center;gap:12px;padding:20px 17px;border-bottom:1px solid rgba(255,255,255,.08)}.sf-card-top>label{position:relative;cursor:pointer}.sf-crest{width:62px;height:62px;display:grid;place-items:center;color:#fff;border:1px solid rgba(255,255,255,.25);border-radius:17px;background:linear-gradient(145deg,var(--sf-color),color-mix(in srgb,var(--sf-color) 62%,#08050d));font-size:17px;font-weight:950;letter-spacing:-.02em}.sf-crest.has-photo{background-size:cover;background-position:center}.sf-card-top>label>span:last-of-type{position:absolute;right:-4px;bottom:-4px;width:23px;height:23px;display:grid;place-items:center;color:#fff;border-radius:7px;background:#171020}.sf-card-top>label>span:last-of-type svg{width:11px}.sf-card-top>div{min-width:0}.sf-card-top small{color:#73677b;font-size:6px;font-weight:900;letter-spacing:.12em}.sf-card-top h2{overflow:hidden;margin:4px 0 3px;font-size:24px;line-height:1;letter-spacing:-.045em;white-space:nowrap;text-overflow:ellipsis}.sf-card-top p{margin:0;color:#5edfff;font-size:5.5px;font-weight:900;letter-spacing:.12em}.sf-card-games{display:flex;flex-wrap:wrap;gap:5px;padding:13px 16px}.sf-card-games span{padding:5px 7px;color:#b9adbf;border:1px solid rgba(255,255,255,.08);border-radius:6px;background:rgba(255,255,255,.025);font-size:6px}.sf-card blockquote{margin:0;padding:18px 16px;color:#d7cddd;border-top:1px solid rgba(255,255,255,.07);border-bottom:1px solid rgba(255,255,255,.07);font-size:10px;font-weight:730;line-height:1.45}.sf-card-ops{display:grid;grid-template-columns:repeat(3,1fr)}.sf-card-ops>span{display:flex;flex-direction:column;padding:13px 10px;border-left:1px solid rgba(255,255,255,.07)}.sf-card-ops>span:first-child{border-left:0}.sf-card-ops small{color:#675d70;font-size:5px;font-weight:900;letter-spacing:.1em}.sf-card-ops b{overflow:hidden;margin-top:3px;font-size:6.5px;white-space:nowrap;text-overflow:ellipsis}.sf-brand{margin-top:10px;padding:14px;border:1px solid rgba(255,255,255,.08);border-radius:13px;background:rgba(255,255,255,.02)}.sf-brand>div{display:flex;gap:7px;margin-top:9px}.sf-brand .team-swatch{width:26px;height:26px}.sf-brand p{margin:9px 0 0;color:#6f6477;font-size:6.5px}.sf-error{display:flex;align-items:center;gap:10px;margin-top:10px;padding:11px;color:#ffc1d8;border:1px solid rgba(255,75,149,.25);border-radius:11px;background:rgba(255,55,137,.06)}.sf-error b{font-size:6.5px;letter-spacing:.12em}.sf-error span{font-size:7px}.sf-create{height:52px;margin-top:11px!important}.sf-create>span{margin-left:6px}.sf-cost-note{margin:8px 5px 1px;color:#655a6d;font-size:6.5px;line-height:1.4;text-align:center}
@media(max-width:900px){.sf-layout{grid-template-columns:minmax(0,1fr) 320px}.sf-preview{padding:13px}.sf-card-top{padding:16px 13px}.sf-crest{width:52px;height:52px}.sf-game-results{grid-template-columns:1fr}}
@media(max-width:700px){.squad-foundry{padding-inline:13px}.sf-head{align-items:flex-start;flex-direction:column;padding-top:22px}.sf-head h1{font-size:49px}.sf-head p{font-size:10px}.sf-head>span{display:none}.sf-layout{display:flex;flex-direction:column}.sf-form,.sf-preview{width:100%}.sf-preview{position:static}.sf-section{padding:17px}.sf-field-grid,.sf-vis{grid-template-columns:1fr}.sf-game-results{display:flex;overflow-x:auto;scroll-snap-type:x mandatory}.sf-game-results button{min-width:69vw;scroll-snap-align:start}.sf-preview{order:2}.sf-card-top h2{font-size:21px}}
/* Player Card Studio — searchable game loadout */
.pe-game-studio{display:grid;grid-template-columns:1fr 1.25fr;gap:10px}.pe-game-selected,.pe-game-directory{padding:13px;border:1px solid rgba(255,255,255,.08);border-radius:14px;background:rgba(0,0,0,.18)}.pe-game-selected>small{color:#706579;font-size:6.5px;font-weight:900;letter-spacing:.13em}.pe-game-selected>div{display:flex;flex-direction:column;gap:6px;margin-top:10px}.pe-game-selected>button,.pe-game-selected>div>button{position:relative;isolation:isolate;min-height:63px;overflow:hidden;display:grid;grid-template-columns:minmax(0,1fr) auto auto;align-items:end;gap:7px;padding:10px;color:#fff;border:1px solid rgba(255,255,255,.09);border-radius:11px;background:#090610;font:inherit;text-align:left}.pe-game-selected button>span{position:absolute;z-index:-2;inset:0;background-image:var(--pe-game);background-size:cover;background-position:center;opacity:.34}.pe-game-selected button:after{content:"";position:absolute;z-index:-1;inset:0;background:linear-gradient(0deg,rgba(5,3,10,.97),rgba(5,3,10,.12))}.pe-game-selected button b{overflow:hidden;font-size:8px;white-space:nowrap;text-overflow:ellipsis}.pe-game-selected button em{color:#7c7185;font-size:5.5px;font-weight:900;font-style:normal;letter-spacing:.1em}.pe-game-selected button svg{width:10px;color:#8a7e92}.pe-game-selected>p{margin:12px 0 0;color:#706579;font-size:7.5px;line-height:1.5}.pe-game-directory>label{height:42px;display:grid;grid-template-columns:18px minmax(0,1fr) auto;align-items:center;gap:7px;padding:0 10px;border:1px solid rgba(255,255,255,.1);border-radius:10px;background:rgba(0,0,0,.24)}.pe-game-directory>label svg{width:15px;color:#60ddff}.pe-game-directory>label input{width:100%;color:#fff;border:0;outline:0;background:transparent;font:inherit;font-size:8px}.pe-game-directory>label em{color:#665c6e;font-size:5.5px;font-style:normal}.pe-game-directory>div{display:grid;grid-template-columns:1fr 1fr;gap:6px;margin-top:7px}.pe-game-directory>div>button{position:relative;isolation:isolate;min-height:55px;overflow:hidden;display:flex;flex-direction:column;align-items:flex-start;justify-content:flex-end;padding:8px;color:#fff;border:1px solid rgba(255,255,255,.08);border-radius:9px;background:#090610;font:inherit;text-align:left}.pe-game-directory button>span{position:absolute;z-index:-2;inset:0;background-image:var(--pe-game);background-size:cover;background-position:center;opacity:.3}.pe-game-directory button:after{content:"";position:absolute;z-index:-1;inset:0;background:linear-gradient(0deg,rgba(5,3,10,.96),rgba(5,3,10,.12))}.pe-game-directory button b{max-width:100%;overflow:hidden;font-size:7px;white-space:nowrap;text-overflow:ellipsis}.pe-game-directory button small{margin-top:3px;color:#59dcff;font-size:5px;font-weight:900;letter-spacing:.08em}.pe-game-directory button.on{border-color:rgba(190,94,255,.5);box-shadow:inset 0 0 22px rgba(169,71,255,.1)}.pe-add-game button{white-space:nowrap}
@media(max-width:850px){.pe-game-studio{grid-template-columns:1fr}.pe-game-selected>div{display:grid;grid-template-columns:1fr 1fr}.pe-game-directory>div{grid-template-columns:repeat(3,1fr)}}
@media(max-width:560px){.pe-game-studio,.pe-game-selected,.pe-game-directory{width:100%;max-width:100%;min-width:0;overflow:hidden}.pe-game-selected>div{width:100%;max-width:100%;display:flex;flex-direction:row;overflow-x:auto;scroll-snap-type:x mandatory}.pe-game-selected>div>button{min-width:68vw;scroll-snap-align:start}.pe-game-directory>div{width:100%;max-width:100%;display:flex;overflow-x:auto;scroll-snap-type:x mandatory}.pe-game-directory>div>button{min-width:48vw;scroll-snap-align:start}.pe-add-game{align-items:stretch;flex-direction:column}.pe-add-game button{width:100%}}
/* Global club search */
.global-search{max-width:1180px;padding-bottom:130px}.gs-head{padding:42px 4px 24px}.gs-head>small,.gs-section>header small,.gs-empty>small{color:#58ddff;font-size:8px;font-weight:900;letter-spacing:.19em}.gs-head h1{margin:8px 0 11px;color:#fff;font-size:clamp(52px,7vw,86px);line-height:.81;letter-spacing:-.07em}.gs-head h1 span{color:transparent;-webkit-text-stroke:1px rgba(255,255,255,.55)}.gs-head p{max-width:670px;margin:0;color:#94899d;font-size:12px;line-height:1.6}.gs-query{height:70px;display:grid;grid-template-columns:26px minmax(0,1fr) auto auto;align-items:center;gap:12px;padding:0 20px;border:1px solid rgba(80,217,255,.28);border-radius:18px;background:radial-gradient(circle at 85% 50%,rgba(185,54,255,.1),transparent 30%),rgba(6,3,12,.88);box-shadow:0 18px 55px rgba(0,0,0,.3)}.gs-query>svg{width:23px;color:#5edfff}.gs-query input{width:100%;color:#fff;border:0;outline:0;background:transparent;font:inherit;font-size:15px}.gs-query input::placeholder{color:#655b6c}.gs-query em{color:#6c6174;font-size:7px;font-weight:900;font-style:normal;letter-spacing:.13em}.gs-query>button{width:32px;height:32px;display:grid;place-items:center;color:#84788e;border:1px solid rgba(255,255,255,.09);border-radius:9px;background:rgba(255,255,255,.03)}.gs-query>button svg{width:12px}.gs-suggest{display:flex;align-items:center;flex-wrap:wrap;gap:6px;padding:11px 5px 0}.gs-suggest>span{margin-right:3px;color:#5edfff;font-size:6px;font-weight:900;letter-spacing:.13em;text-shadow:0 1px 8px rgba(0,0,0,.8)}.gs-suggest button{padding:6px 9px;color:#d5cbff;border:1px solid rgba(153,91,255,.4);border-radius:100px;background:rgba(7,4,13,.68);font:inherit;font-size:6.5px}.gs-tabs{display:flex;gap:6px;margin:20px 0 13px;padding-bottom:10px;overflow-x:auto;border-bottom:1px solid rgba(255,255,255,.08)}.gs-tabs button{display:flex;align-items:center;gap:7px;min-width:max-content;padding:9px 11px;color:#d8d0e0;border:1px solid rgba(255,255,255,.13);border-radius:10px;background:rgba(7,4,13,.68);font:inherit}.gs-tabs span{font-size:8px;font-weight:850}.gs-tabs b{min-width:18px;padding:3px 5px;color:#bcaed6;border-radius:6px;background:rgba(255,255,255,.09);font-size:6px}.gs-tabs button.on{color:#fff;border-color:rgba(79,216,255,.4);background:rgba(9,6,16,.85);box-shadow:0 0 14px rgba(56,189,248,.18)}.gs-tabs button.on b{color:#5fddff}.gs-section{margin-top:12px;padding:21px;border:1px solid rgba(255,255,255,.09);border-radius:22px;background:rgba(7,4,13,.84)}.gs-section>header{display:flex;align-items:center;justify-content:space-between;margin-bottom:14px}.gs-section>header>span{display:flex;flex-direction:column}.gs-section>header b{margin-top:3px;color:#766b7f;font-size:7px}.gs-section>header>button{color:#9c8ce6;border:0;background:none;font:inherit;font-size:6.5px;font-weight:900}.gs-people-grid,.gs-squads-grid,.gs-boards-grid,.gs-games-grid{display:grid;grid-template-columns:1fr 1fr;gap:7px}.gs-person,.gs-team,.gs-board,.gs-game{min-width:0;display:grid;align-items:center;gap:10px;padding:12px;color:#fff;border:1px solid rgba(255,255,255,.08);border-radius:13px;background:rgba(255,255,255,.022)}.gs-person{grid-template-columns:44px minmax(0,1fr) auto}.gs-person>.avatar{width:44px;height:44px}.gs-person>span,.gs-team>span,.gs-board>span,.gs-game>span{display:flex;flex-direction:column;min-width:0}.gs-person>span>small{display:flex;align-items:center;gap:5px;color:#6f6478;font-size:5.5px;font-weight:900;letter-spacing:.1em}.gs-person>span>small i{width:6px;height:6px;border-radius:50%;background:#615868}.gs-person>span>small i.on{background:#47e78b;box-shadow:0 0 8px #47e78b}.gs-person>span>b,.gs-team>span>b,.gs-board>span>b,.gs-game>span>b{overflow:hidden;margin-top:3px;font-size:9px;white-space:nowrap;text-overflow:ellipsis}.gs-person>span>em,.gs-team>span>em,.gs-board>span>em,.gs-game>span>em{overflow:hidden;margin-top:3px;color:#74697d;font-size:6.5px;font-style:normal;white-space:nowrap;text-overflow:ellipsis}.gs-person p{display:flex;gap:4px;margin:6px 0 0}.gs-person p span{padding:3px 5px;color:#a898e7;border-radius:5px;background:rgba(150,86,255,.06);font-size:5.5px}.gs-person>strong{display:flex;flex-direction:column;align-items:center;color:#60dfff;font-size:11px}.gs-person>strong small{margin-top:2px;color:#665b6e;font-size:5px}.gs-rooms-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:8px}.gs-room{position:relative;isolation:isolate;min-height:150px;overflow:hidden;display:flex;flex-direction:column;align-items:flex-start;justify-content:flex-end;padding:16px;color:#fff;border:1px solid rgba(255,255,255,.1);border-radius:15px;background:#08050e}.gs-art{position:absolute;z-index:-2;inset:0;background-image:var(--gs-art);background-size:cover;background-position:center;opacity:.55}.gs-grade{position:absolute;z-index:-1;inset:0;background:linear-gradient(0deg,rgba(5,3,11,.98),rgba(5,3,11,.12))}.gs-room>small{color:#5bddff;font-size:6px;font-weight:900;letter-spacing:.12em}.gs-room>b{margin-top:5px;font-size:17px}.gs-room>em{margin-top:4px;color:#ada2b5;font-size:7px;font-style:normal}.gs-room>strong{margin-top:10px;color:#aa99ec;font-size:6px;letter-spacing:.11em}.gs-team{grid-template-columns:52px minmax(0,1fr) auto;border-color:color-mix(in srgb,var(--gs-color) 32%,rgba(255,255,255,.08));background:linear-gradient(100deg,color-mix(in srgb,var(--gs-color) 8%,transparent),rgba(255,255,255,.018))}.gs-team>.team-logo{width:52px;height:52px;border-radius:14px}.gs-team>span>small,.gs-board>span>small,.gs-game>span>small{color:#5edfff;font-size:5.5px;font-weight:900;letter-spacing:.1em}.gs-team>strong,.gs-board>strong,.gs-game>strong{color:#9b8ce3;font-size:5.5px;letter-spacing:.1em}.gs-board,.gs-game{position:relative;isolation:isolate;min-height:95px;overflow:hidden;grid-template-columns:minmax(0,1fr) auto;padding:15px}.gs-board>.gs-art,.gs-game>.gs-art{opacity:.25}.gs-board:after,.gs-game:after{content:"";position:absolute;z-index:-1;inset:0;background:linear-gradient(90deg,rgba(5,3,11,.98),rgba(5,3,11,.55))}.gs-empty{display:flex;flex-direction:column;align-items:center;margin-top:13px;padding:70px 24px;border:1px solid rgba(84,216,255,.16);border-radius:24px;background:radial-gradient(circle at 50% 15%,rgba(54,202,255,.1),transparent 26%),rgba(7,4,13,.84);text-align:center}.gs-empty>span{width:62px;height:62px;display:grid;place-items:center;margin-bottom:17px;color:#5dddff;border:1px solid rgba(75,215,255,.2);border-radius:19px;background:rgba(51,200,255,.05)}.gs-empty>span svg{width:25px}.gs-empty h2{margin:7px 0 7px;font-size:29px;letter-spacing:-.04em}.gs-empty p{max-width:500px;margin:0;color:#8f8498;font-size:9px;line-height:1.55}.gs-empty button{margin-top:18px;padding:9px 13px;color:#a697e8;border:1px solid rgba(157,94,255,.2);border-radius:10px;background:rgba(145,78,255,.05);font:inherit;font-size:7px}
@media(max-width:700px){.global-search{padding-inline:13px}.gs-head{padding-top:25px}.gs-head h1{font-size:52px}.gs-head p{font-size:10px}.gs-query{height:60px;padding-inline:14px;grid-template-columns:22px minmax(0,1fr) auto}.gs-query input{font-size:11px}.gs-query em{display:none}.gs-section{padding:15px}.gs-people-grid,.gs-squads-grid,.gs-boards-grid,.gs-games-grid,.gs-rooms-grid{grid-template-columns:1fr}.gs-empty{padding:50px 18px}}
/* Game command center */
.game-command{max-width:1180px;padding-bottom:135px}.gc-hero{position:relative;isolation:isolate;min-height:460px;overflow:hidden;display:flex;align-items:flex-end;padding:40px;border:1px solid rgba(255,255,255,.1);border-radius:28px;background:#07040d}.gc-hero-art,.gc-hero-shade{position:absolute;inset:0}.gc-hero-art{z-index:-3;background-image:var(--gc-art);background-size:cover;background-position:center;filter:saturate(1.12)}.gc-hero-shade{z-index:-2;background:linear-gradient(90deg,rgba(5,3,11,.98) 0%,rgba(5,3,11,.82) 43%,rgba(5,3,11,.18) 80%),linear-gradient(0deg,rgba(5,3,11,.92),transparent 55%)}.gc-hero:after{content:"";position:absolute;z-index:-1;inset:0;background:radial-gradient(circle at 85% 20%,rgba(66,209,255,.13),transparent 27%)}.gc-hero-copy{max-width:700px}.gc-hero-copy>small,.gc-section header small,.gc-talk header small{color:#5cddff;font-size:7px;font-weight:900;letter-spacing:.19em}.gc-hero-copy h1{max-width:790px;margin:11px 0 8px;color:#fff;font-size:clamp(60px,8vw,104px);line-height:.82;letter-spacing:-.075em;text-transform:uppercase}.gc-hero-copy p{margin:0;color:#aaa0b2;font-size:11px}.gc-hero-actions{display:flex;align-items:center;gap:18px;margin-top:25px}.gc-hero-actions button,.gc-section>header>button,.gc-room-empty button{padding:13px 17px;color:#06030b;border:0;border-radius:11px;background:linear-gradient(100deg,#54ddff,#bc68ff);box-shadow:0 10px 32px rgba(77,214,255,.18);font:inherit;font-size:7px;font-weight:950;letter-spacing:.1em}.gc-hero-actions button span{margin-left:16px;font-size:12px}.gc-hero-actions a{color:#b3a6e9;font-size:7px;font-weight:900;letter-spacing:.1em}.gc-pulse{position:absolute;right:27px;bottom:26px;display:flex;border:1px solid rgba(255,255,255,.1);border-radius:14px;background:rgba(5,3,10,.76);backdrop-filter:blur(18px)}.gc-pulse span{min-width:96px;padding:14px 16px;border-right:1px solid rgba(255,255,255,.08)}.gc-pulse span:last-child{border:0}.gc-pulse b{display:block;color:#fff;font-size:19px}.gc-pulse small{display:block;margin-top:4px;color:#6e6476;font-size:5px;font-weight:900;letter-spacing:.12em}.gc-section,.gc-talk{min-width:0;margin-top:16px;padding:24px;border:1px solid rgba(255,255,255,.09);border-radius:22px;background:rgba(7,4,13,.87)}.gc-section>header,.gc-talk>header{display:flex;align-items:flex-end;justify-content:space-between;gap:20px;margin-bottom:17px}.gc-section header h2,.gc-talk header h2{margin:5px 0 0;color:#fff;font-size:24px;line-height:.95;letter-spacing:-.04em}.gc-section>header>a,.gc-section>header>b,.gc-talk>header>b{color:#9b8ce3;font-size:6px;font-weight:900;letter-spacing:.1em}.gc-room-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}.gc-room{position:relative;isolation:isolate;min-height:235px;overflow:hidden;display:flex;flex-direction:column;align-items:flex-start;justify-content:flex-end;padding:22px;color:#fff;border:1px solid rgba(255,255,255,.11);border-radius:17px}.gc-room-art,.gc-room-shade{position:absolute;inset:0}.gc-room-art{z-index:-2;background-image:var(--gc-art);background-size:cover;background-position:center;transition:transform .35s}.gc-room:hover .gc-room-art{transform:scale(1.035)}.gc-room-shade{z-index:-1;background:linear-gradient(0deg,rgba(4,2,9,.98),rgba(4,2,9,.08) 75%)}.gc-room>small{color:#63e1ff;font-size:6px;font-weight:900;letter-spacing:.13em}.gc-room>small i,.gc-person small i{display:inline-block;width:6px;height:6px;margin-right:5px;border-radius:50%;background:#49e78b;box-shadow:0 0 9px #49e78b}.gc-room>b{margin-top:7px;font-size:25px;letter-spacing:-.035em}.gc-room>em{margin-top:4px;color:#b0a5b7;font-size:8px;font-style:normal}.gc-room>strong{margin-top:14px;color:#c3b3ff;font-size:6px;letter-spacing:.13em}.gc-room-empty{display:flex;flex-direction:column;align-items:flex-start;padding:34px;border:1px dashed rgba(84,217,255,.2);border-radius:16px;background:radial-gradient(circle at 12% 30%,rgba(60,204,255,.08),transparent 26%)}.gc-room-empty>span{color:#5ddfff;font-size:6px;font-weight:900;letter-spacing:.14em}.gc-room-empty h3{margin:7px 0 4px;font-size:25px}.gc-room-empty p{margin:0;color:#887d90;font-size:9px}.gc-room-empty button{margin-top:16px}.gc-people{min-width:0;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:7px}.gc-person{min-width:0;display:grid;grid-template-columns:48px minmax(0,1fr) auto;align-items:center;gap:11px;padding:13px;border:1px solid rgba(255,255,255,.07);border-radius:13px;background:rgba(255,255,255,.02)}.gc-person>.avatar{width:48px;height:48px}.gc-person>span{min-width:0;display:flex;flex-direction:column}.gc-person small{color:#6d6275;font-size:5px;font-weight:900;letter-spacing:.11em}.gc-person span>a{overflow:hidden;margin-top:3px;color:#fff;font-size:9px;font-weight:850;white-space:nowrap;text-overflow:ellipsis}.gc-person em{overflow:hidden;margin-top:3px;color:#776c7f;font-size:6.5px;font-style:normal;white-space:nowrap;text-overflow:ellipsis}.gc-person p{margin:6px 0 0;color:#58ddff;font-size:5px;font-weight:900;letter-spacing:.08em}.gc-person .btn{padding:8px 10px;font-size:6px}.gc-talk{background:radial-gradient(circle at 80% 0,rgba(162,66,255,.09),transparent 32%),rgba(7,4,13,.9)}.gc-thread-list{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:7px}.gc-thread{min-width:0;display:grid;grid-template-columns:30px minmax(0,1fr) 14px;align-items:center;gap:10px;padding:16px;color:#fff;border:1px solid rgba(255,255,255,.07);border-radius:13px;background:rgba(255,255,255,.018)}.gc-thread>strong{color:#312b38;font-size:20px}.gc-thread>span{min-width:0;display:flex;flex-direction:column}.gc-thread small{color:#5edfff;font-size:5px;font-weight:900;letter-spacing:.1em}.gc-thread b{overflow:hidden;margin-top:5px;font-size:8px;line-height:1.25;white-space:nowrap;text-overflow:ellipsis}.gc-thread em{margin-top:7px;color:#74697d;font-size:6px;font-style:normal}.gc-thread>svg{width:13px;color:#70657a}.gc-no-talk{grid-column:1/-1;margin:0;padding:20px;color:#82778b;font-size:9px}.gc-board-open{display:block;width:100%;margin-top:9px;padding:12px;color:#a899e8;border:1px solid rgba(160,94,255,.18);border-radius:11px;background:rgba(144,74,255,.04);font:inherit;font-size:6px;font-weight:900;letter-spacing:.11em;text-align:center}
@media(max-width:760px){.game-command{max-width:100%;padding-inline:13px;overflow:hidden}.gc-hero{min-height:480px;padding:24px 20px}.gc-hero-shade{background:linear-gradient(0deg,rgba(5,3,11,.98) 0%,rgba(5,3,11,.7) 58%,rgba(5,3,11,.18))}.gc-hero-copy{padding-bottom:78px}.gc-hero-copy h1{font-size:54px;overflow-wrap:anywhere}.gc-hero-copy p{font-size:9px}.gc-hero-actions{align-items:flex-start;flex-direction:column;gap:14px}.gc-pulse{right:16px;bottom:14px;left:16px}.gc-pulse span{min-width:0;flex:1;padding:11px}.gc-pulse b{font-size:16px}.gc-section,.gc-talk{max-width:100%;padding:16px;overflow:hidden}.gc-section header h2,.gc-talk header h2{font-size:20px}.gc-section>header>button{padding:10px;white-space:nowrap}.gc-room-grid,.gc-people,.gc-thread-list{display:flex;overflow-x:auto;scroll-snap-type:x mandatory}.gc-room-grid>*,.gc-people>*,.gc-thread-list>*{min-width:80vw;scroll-snap-align:start}.gc-room{min-height:220px}.gc-person{min-width:84vw}.gc-offline{display:none}}
/* Squad command network */
.squad-command{max-width:1180px;padding-bottom:135px}.sq-command-head{position:relative;min-height:330px;overflow:hidden;display:flex;flex-direction:column;justify-content:center;padding:40px;border:1px solid rgba(255,255,255,.09);border-radius:27px;background:radial-gradient(circle at 80% 15%,rgba(68,210,255,.12),transparent 28%),radial-gradient(circle at 65% 95%,rgba(164,62,255,.12),transparent 34%),rgba(7,4,13,.9)}.sq-command-head:after{content:"CREW";position:absolute;right:-22px;top:18px;color:rgba(255,255,255,.018);font-size:180px;font-weight:950;letter-spacing:-.08em}.sq-command-head>div{position:relative;z-index:1;max-width:720px}.sq-command-head>div>small,.sq-section header small,.sq-empty>small{color:#5cddff;font-size:7px;font-weight:900;letter-spacing:.18em}.sq-command-head h1{margin:10px 0 10px;color:#fff;font-size:clamp(58px,7vw,88px);line-height:.82;letter-spacing:-.07em}.sq-command-head h1 span{color:transparent;-webkit-text-stroke:1px rgba(255,255,255,.5)}.sq-command-head p{max-width:600px;margin:0;color:#918698;font-size:10px;line-height:1.55}.sq-command-head>button{position:absolute;z-index:2;right:35px;bottom:34px;padding:14px 18px;color:#05030a;border:0;border-radius:11px;background:linear-gradient(100deg,#55ddff,#bb68ff);font:inherit;font-size:7px;font-weight:950;letter-spacing:.1em}.sq-command-head>button span{margin-left:18px;font-size:12px}.sq-command-head>aside{position:absolute;right:34px;top:35px;display:flex;border:1px solid rgba(255,255,255,.09);border-radius:13px;background:rgba(4,2,9,.6)}.sq-command-head>aside span{min-width:89px;padding:12px 14px;border-right:1px solid rgba(255,255,255,.07)}.sq-command-head>aside span:last-child{border:0}.sq-command-head>aside b{display:block;font-size:16px}.sq-command-head>aside small{display:block;margin-top:4px;color:#6d6275;font-size:5px;font-weight:900;letter-spacing:.1em}.sq-command-tabs{display:grid;grid-template-columns:1fr 1fr;gap:7px;margin-top:10px}.sq-command-tabs>button{display:grid;grid-template-columns:35px 1fr;align-items:center;padding:14px;color:#746a7d;border:1px solid rgba(255,255,255,.08);border-radius:13px;background:rgba(7,4,13,.76);font:inherit;text-align:left}.sq-command-tabs>button>small{font-size:8px}.sq-command-tabs>button>span{display:flex;flex-direction:column}.sq-command-tabs b{font-size:8px}.sq-command-tabs em{margin-top:3px;color:#5e5566;font-size:6px;font-style:normal}.sq-command-tabs button.on{color:#fff;border-color:rgba(80,218,255,.25);background:linear-gradient(90deg,rgba(58,206,255,.08),rgba(163,68,255,.05))}.sq-command-tabs button.on small{color:#5ddfff}.sq-section{min-width:0;margin-top:13px;padding:23px;border:1px solid rgba(255,255,255,.08);border-radius:21px;background:rgba(7,4,13,.84)}.sq-section>header{display:flex;align-items:flex-end;justify-content:space-between;gap:15px;margin-bottom:15px}.sq-section header h2{margin:5px 0 0;font-size:24px;letter-spacing:-.04em}.sq-section>header>b,.sq-section>header>button{color:#9b8be3;border:0;background:none;font:inherit;font-size:6px;font-weight:900;letter-spacing:.1em}.sq-team-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.sq-team{position:relative;isolation:isolate;min-height:290px;overflow:hidden;display:flex;flex-direction:column;justify-content:flex-end;padding:18px;color:#fff;border:1px solid color-mix(in srgb,var(--sq-color) 27%,rgba(255,255,255,.08));border-radius:16px;background:#08050e}.sq-team-art,.sq-team-grade{position:absolute;inset:0}.sq-team-art{z-index:-3;background-image:var(--sq-art);background-size:cover;background-position:center;opacity:.24}.sq-team-grade{z-index:-2;background:linear-gradient(0deg,rgba(5,3,11,.99) 0%,rgba(5,3,11,.78) 58%,rgba(5,3,11,.15))}.sq-team-top{position:absolute;top:15px;right:15px;left:15px;display:flex;justify-content:space-between}.sq-team-top small{color:#5edfff;font-size:5.5px;font-weight:900;letter-spacing:.11em}.sq-team-top b{color:#a99db1;font-size:5.5px;letter-spacing:.08em}.sq-team-id{display:grid;grid-template-columns:52px minmax(0,1fr);align-items:center;gap:11px}.sq-team-id>.team-logo{width:52px;height:52px;border-radius:13px}.sq-team-id>span{min-width:0}.sq-team-id small{color:#6adfff;font-size:5px;font-weight:900;letter-spacing:.09em}.sq-team-id h2{overflow:hidden;margin:4px 0 3px;font-size:21px;white-space:nowrap;text-overflow:ellipsis}.sq-team-id p{overflow:hidden;margin:0;color:#8d8295;font-size:6.5px;white-space:nowrap;text-overflow:ellipsis}.sq-team-meta{display:grid;grid-template-columns:.7fr .7fr 1.6fr;margin-top:14px;border-block:1px solid rgba(255,255,255,.07)}.sq-team-meta span{min-width:0;padding:10px;border-right:1px solid rgba(255,255,255,.07)}.sq-team-meta span:last-child{border:0}.sq-team-meta b{display:block;overflow:hidden;font-size:8px;white-space:nowrap;text-overflow:ellipsis}.sq-team-meta small{display:block;margin-top:3px;color:#655b6d;font-size:4.5px;font-weight:900;letter-spacing:.08em}.sq-team-actions{display:flex;align-items:center;justify-content:space-between;margin-top:12px}.sq-team-actions a{color:#b2a4eb;font-size:6px;font-weight:900;letter-spacing:.1em}.sq-team-actions button{padding:8px 10px;color:#05030a;border:0;border-radius:8px;background:linear-gradient(100deg,#59dcff,#ad6fff);font:inherit;font-size:5.5px;font-weight:950;letter-spacing:.08em}.sq-team-actions button.pending{color:#9a8fa2;border:1px solid rgba(255,255,255,.1);background:rgba(255,255,255,.03)}.sq-empty{margin-top:13px;padding:45px;border:1px dashed rgba(82,216,255,.2);border-radius:21px;background:radial-gradient(circle at 15% 30%,rgba(61,203,255,.08),transparent 27%),rgba(7,4,13,.8)}.sq-empty h2{margin:7px 0 5px;font-size:29px}.sq-empty p{margin:0;color:#857a8d;font-size:9px}.sq-empty button{margin-top:17px;padding:11px 14px;color:#05030a;border:0;border-radius:9px;background:linear-gradient(100deg,#59dcff,#b56cff);font:inherit;font-size:6px;font-weight:900}.sq-recruit-head{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-top:13px;padding:13px;border:1px solid rgba(255,255,255,.08);border-radius:16px;background:rgba(7,4,13,.82)}.sq-recruit-head nav{display:flex;gap:6px}.sq-recruit-head nav button{display:grid;grid-template-columns:25px auto;gap:3px 8px;padding:10px 12px;color:#716779;border:1px solid transparent;border-radius:10px;background:transparent;font:inherit;text-align:left}.sq-recruit-head nav small{grid-row:1/3;align-self:center;font-size:7px}.sq-recruit-head nav span{display:flex;flex-direction:column}.sq-recruit-head nav b{font-size:7px}.sq-recruit-head nav em{color:#5f5667;font-size:5.5px;font-style:normal}.sq-recruit-head nav button.on{color:#fff;border-color:rgba(79,216,255,.2);background:rgba(54,201,255,.05)}.sq-recruit-head nav button.on small{color:#5cddff}.sq-recruit-head>button{padding:10px 12px;color:#05030a;border:0;border-radius:9px;background:linear-gradient(100deg,#58dcff,#b569ff);font:inherit;font-size:6px;font-weight:900}.sq-lft-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:7px}.sq-lft{position:relative;padding:15px;border:1px solid transparent;border-radius:14px;background:rgba(255,255,255,.018)}.sq-lft::before{content:"";position:absolute;inset:0;border-radius:14px;padding:1.4px;background-image:linear-gradient(100deg,#38bdf8,#ff2d9b 25%,#7c5cff 50%,#ff2d9b 75%,#38bdf8 100%);background-size:300% 100%;-webkit-mask:linear-gradient(#000 0 0) content-box,linear-gradient(#000 0 0);-webkit-mask-composite:xor;mask-composite:exclude;animation:rimTravel 7s linear infinite;pointer-events:none}.sq-lft>a{display:grid;grid-template-columns:48px minmax(0,1fr);gap:10px;color:#fff}.sq-lft .avatar{width:48px;height:48px}.sq-lft>a>span{min-width:0}.sq-lft>a small{color:#5ddfff;font-size:5px;font-weight:900;letter-spacing:.09em}.sq-lft h3{margin:4px 0 3px;font-size:10px}.sq-lft p{overflow:hidden;margin:0;color:#796e81;font-size:6.5px;white-space:nowrap;text-overflow:ellipsis}.sq-lft>div{display:grid;grid-template-columns:repeat(3,1fr);margin-top:12px;border-block:1px solid rgba(255,255,255,.06)}.sq-lft>div span{min-width:0;padding:9px;border-right:1px solid rgba(255,255,255,.06)}.sq-lft>div span:last-child{border:0}.sq-lft>div small{display:block;color:#625968;font-size:4.5px;font-weight:900}.sq-lft>div b{display:block;overflow:hidden;margin-top:3px;font-size:7px;white-space:nowrap;text-overflow:ellipsis}.sq-lft>button{width:100%;margin-top:10px;padding:9px;color:#aa9be7;border:1px solid rgba(158,94,255,.17);border-radius:8px;background:rgba(147,76,255,.04);font:inherit;font-size:5.5px;font-weight:900;letter-spacing:.08em}
@media(max-width:760px){.squad-command{max-width:100%;padding-inline:13px;overflow:hidden}.sq-command-head{min-height:440px;padding:25px 20px;justify-content:flex-start}.sq-command-head h1{font-size:53px}.sq-command-head>aside{right:16px;top:auto;bottom:75px;left:16px}.sq-command-head>aside span{min-width:0;flex:1;padding:10px}.sq-command-head>button{right:16px;bottom:16px;left:16px;width:calc(100% - 32px)}.sq-command-tabs{grid-template-columns:1fr}.sq-section{max-width:100%;padding:15px;overflow:hidden}.sq-team-grid,.sq-lft-grid{grid-template-columns:1fr}.sq-recruit-head{align-items:stretch;flex-direction:column}.sq-recruit-head nav{display:grid;grid-template-columns:1fr 1fr}.sq-recruit-head nav button{padding:9px}.sq-empty{padding:30px 20px}}
/* LFT player-signal studio */
.lft-studio{max-width:1120px;padding-bottom:130px}.lft-studio>header{padding:34px 3px 25px}.lft-studio>header small,.lft-preview>small{color:#5cddff;font-size:7px;font-weight:900;letter-spacing:.18em}.lft-studio>header h1{margin:9px 0 10px;font-size:clamp(52px,6.8vw,82px);line-height:.84;letter-spacing:-.07em}.lft-studio>header h1 span{color:transparent;-webkit-text-stroke:1px rgba(255,255,255,.5)}.lft-studio>header p{max-width:650px;margin:0;color:#8d8295;font-size:10px;line-height:1.55}.lft-layout{display:grid;grid-template-columns:minmax(0,1fr) 330px;align-items:start;gap:12px}.lft-form{min-width:0;display:flex;flex-direction:column;gap:9px}.lft-form>section,.lft-preview{padding:20px;border:1px solid rgba(255,255,255,.08);border-radius:18px;background:rgba(7,4,13,.86)}.lft-form>section>header{display:grid;grid-template-columns:30px minmax(0,1fr);gap:9px;margin-bottom:14px}.lft-form>section>header>b{width:28px;height:28px;display:grid;place-items:center;color:#5edfff;border-radius:8px;background:rgba(53,201,255,.06);font-size:6px}.lft-form>section>header>span{display:flex;flex-direction:column}.lft-form>section>header strong{font-size:10px}.lft-form>section>header small{margin-top:3px;color:#6d6375;font-size:6.5px}.lft-selected{position:relative;isolation:isolate;width:100%;min-height:115px;overflow:hidden;display:flex;flex-direction:column;align-items:flex-start;justify-content:flex-end;margin-bottom:8px;padding:15px;color:#fff;border:1px solid rgba(83,216,255,.2);border-radius:13px;background:#08050e;font:inherit;text-align:left}.lft-selected>span,.lft-games button>span{position:absolute;z-index:-2;inset:0;background-image:var(--lft-art);background-size:cover;background-position:center}.lft-selected:after,.lft-games button:after{content:"";position:absolute;z-index:-1;inset:0;background:linear-gradient(0deg,rgba(5,3,11,.98),rgba(5,3,11,.15))}.lft-selected small{color:#5edfff;font-size:5.5px;font-weight:900;letter-spacing:.11em}.lft-selected b{margin-top:4px;font-size:17px}.lft-selected em{margin-top:3px;color:#756b7d;font-size:6px;font-style:normal}.lft-search{height:46px;display:grid;grid-template-columns:18px minmax(0,1fr) auto;align-items:center;gap:8px;padding:0 11px;border:1px solid rgba(255,255,255,.09);border-radius:10px;background:rgba(0,0,0,.2)}.lft-search svg{width:15px;color:#5edfff}.lft-search input{width:100%;color:#fff;border:0;outline:0;background:transparent;font:inherit;font-size:8px}.lft-search em{color:#665d6e;font-size:5.5px;font-style:normal}.lft-games{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:6px;margin-top:7px}.lft-games button{position:relative;isolation:isolate;min-width:0;min-height:78px;overflow:hidden;display:flex;flex-direction:column;align-items:flex-start;justify-content:flex-end;padding:9px;color:#fff;border:1px solid rgba(255,255,255,.07);border-radius:10px;background:#08050e;font:inherit;text-align:left}.lft-games button small{color:#5ddfff;font-size:4.5px;font-weight:900}.lft-games button b{max-width:100%;overflow:hidden;margin-top:3px;font-size:7px;white-space:nowrap;text-overflow:ellipsis}.lft-games button.on{border-color:rgba(86,218,255,.45);box-shadow:inset 0 0 24px rgba(61,205,255,.1)}.lft-fields{display:grid;grid-template-columns:1fr 1fr;gap:8px}.lft-fields label,.lft-note{display:flex;flex-direction:column}.lft-fields label>span,.lft-note>span{margin:0 0 6px 3px;color:#6e6476;font-size:5.5px;font-weight:900;letter-spacing:.1em}.lft-fields .field,.lft-note .field{margin:0;background:rgba(0,0,0,.21)}.lft-note textarea{resize:vertical}.lft-preview{position:sticky;top:78px}.lft-card{display:flex;flex-direction:column;align-items:flex-start;margin-top:12px;padding:20px;border:1px solid rgba(84,216,255,.14);border-radius:15px;background:radial-gradient(circle at 80% 0,rgba(164,64,255,.12),transparent 30%),rgba(0,0,0,.2)}.lft-card>.avatar{width:62px;height:62px}.lft-live{margin-top:14px;color:#5edfff;font-size:5px;font-weight:900;letter-spacing:.11em}.lft-card h2{margin:5px 0 5px;font-size:20px}.lft-card>p{min-height:46px;margin:0;color:#82778b;font-size:7.5px;line-height:1.5}.lft-card>div{width:100%;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));margin-top:15px;border-block:1px solid rgba(255,255,255,.07)}.lft-card>div span{min-width:0;padding:10px 6px;border-right:1px solid rgba(255,255,255,.07)}.lft-card>div span:last-child{border:0}.lft-card>div small{display:block;color:#615868;font-size:4.5px;font-weight:900}.lft-card>div b{display:block;overflow:hidden;margin-top:3px;font-size:6.5px;white-space:nowrap;text-overflow:ellipsis}.lft-card>em{margin-top:13px;color:#716777;font-size:6px;font-style:normal}.lft-preview>button{width:100%;margin-top:10px;padding:13px;color:#05030a;border:0;border-radius:10px;background:linear-gradient(100deg,#59dcff,#b668ff);font:inherit;font-size:6px;font-weight:950;letter-spacing:.09em}.lft-preview>button span{float:right}.lft-preview>p{margin:8px 4px 0;color:#615868;font-size:5.5px;line-height:1.5;text-align:center}
@media(max-width:760px){.lft-studio{max-width:100%;padding-inline:13px;overflow:hidden}.lft-studio>header{padding-top:20px}.lft-studio>header h1{font-size:49px}.lft-layout{display:flex;flex-direction:column}.lft-form,.lft-preview{width:100%;max-width:100%;min-width:0}.lft-preview{position:static}.lft-form>section,.lft-preview{padding:15px}.lft-games{display:flex;overflow-x:auto;scroll-snap-type:x mandatory}.lft-games>button{min-width:47vw;scroll-snap-align:start}.lft-fields{grid-template-columns:1fr}.lft-preview{order:2}}

/* Recruiting signals — deliberate publishing, removal, and durable outcomes. */
.lft-errors{margin-bottom:12px;padding:15px 17px;border:1px solid rgba(255,78,143,.35);border-radius:15px;background:rgba(91,20,48,.25)}.lft-errors>b{display:block;margin-bottom:7px;font-size:9px}.lft-errors span{display:flex;align-items:center;gap:7px;color:#ff94b9;font-size:7px;line-height:1.5}.lft-errors svg{width:13px}.lft-form>section.has-error{border-color:rgba(255,80,140,.34)}.lft-form>section.has-error .field,.lft-form>section.has-error .lft-search{border-color:rgba(255,80,140,.42)}.lft-preview>.lft-remove{color:#ff7fae;border:1px solid rgba(255,79,145,.23);background:rgba(255,61,127,.04)}
.sq-lft>footer{display:grid;grid-template-columns:1fr auto;gap:7px}.sq-lft>footer button{margin:0}.sq-lft>footer .remove{color:#ff7fae;border-color:rgba(255,79,145,.23);background:rgba(255,61,127,.035)}
.recruit-receipt{display:grid;grid-template-columns:43px minmax(0,1fr) auto;align-items:center;gap:13px;margin:14px 0;padding:15px 17px;border:1px solid rgba(74,235,164,.29);border-radius:17px;background:linear-gradient(110deg,rgba(14,53,48,.93),rgba(10,8,20,.95))}.recruit-receipt>span{width:42px;height:42px;display:grid;place-items:center;color:#4beaa3;border-radius:13px;background:rgba(75,234,163,.1)}.recruit-receipt>span svg{width:19px}.recruit-receipt small{display:block;color:#52eeb0;font-size:6px;font-weight:950;letter-spacing:.15em}.recruit-receipt b{display:block;margin-top:4px;font-size:12px}.recruit-receipt p{margin:3px 0 0;color:#8f8498;font-size:7px}.recruit-receipt>div:last-child{display:flex;gap:7px}.recruit-receipt>div:last-child button,.recruit-receipt>div:last-child a{min-height:32px;display:grid;place-items:center;padding:0 10px;color:#68dcff;border:1px solid rgba(91,219,255,.18);border-radius:9px;background:rgba(58,202,255,.04);font:inherit;font-size:6px;font-weight:950;letter-spacing:.09em}.recruit-receipt>div:last-child button:last-child{width:32px;padding:0;color:#786d81;border-color:rgba(255,255,255,.08)}.recruit-receipt.removed{border-color:rgba(255,93,148,.25);background:linear-gradient(110deg,rgba(67,19,43,.9),rgba(10,8,20,.95))}.recruit-receipt.removed>span{color:#ff79a9;background:rgba(255,75,137,.09)}
.recruit-decision{position:fixed;z-index:2270;inset:0;display:grid;place-items:center;padding:18px}.recruit-decision>button{position:absolute;inset:0;border:0;background:rgba(2,1,8,.85);backdrop-filter:blur(15px)}.recruit-decision>section{position:relative;width:min(570px,100%);max-height:calc(100dvh - 36px);overflow:auto;padding:27px;border:1px solid rgba(87,218,255,.34);border-radius:25px;background:radial-gradient(circle at 88% 0,rgba(160,66,255,.14),transparent 31%),#090711;box-shadow:0 35px 110px rgba(0,0,0,.7)}.recruit-decision>section>small{color:#5dddff;font-size:7px;font-weight:950;letter-spacing:.16em}.recruit-decision h2{margin:8px 0 7px;font-size:29px;letter-spacing:-.04em}.recruit-decision>section>p{margin:0;color:#867b8f;font-size:9px;line-height:1.5}.recruit-decision article{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;margin-top:20px;overflow:hidden;border:1px solid rgba(255,255,255,.09);border-radius:15px;background:rgba(255,255,255,.07)}.recruit-decision article>div{padding:14px;background:#0c0913}.recruit-decision article small{color:#62596a;font-size:5px;font-weight:900;letter-spacing:.1em}.recruit-decision article b{display:block;margin-top:4px;font-size:9px}.recruit-decision article>p{grid-column:1/-1;margin:0;padding:16px;color:#b8adbf;background:#0c0913;font-size:8px;line-height:1.5}.recruit-visibility{display:grid;grid-template-columns:39px 1fr;align-items:center;gap:10px;margin-top:10px;padding:13px;border:1px solid rgba(84,218,255,.14);border-radius:13px;background:rgba(54,199,255,.035)}.recruit-visibility>svg{width:21px;color:#5dddff}.recruit-visibility b,.recruit-visibility small{display:block}.recruit-visibility b{font-size:8px}.recruit-visibility small{margin-top:3px;color:#776d80;font-size:6.5px}.recruit-decision footer{display:grid;grid-template-columns:.8fr 1.2fr;gap:8px;margin-top:20px}.recruit-decision footer button{min-height:47px;color:#aaa0b2;border:1px solid rgba(255,255,255,.1);border-radius:12px;background:rgba(255,255,255,.025);font:inherit;font-size:7px;font-weight:950;letter-spacing:.09em}.recruit-decision footer .primary{color:#05030a;border:0;background:linear-gradient(100deg,#5dddff,#b76aff)}.recruit-decision.danger>section{border-color:rgba(255,83,143,.35)}.recruit-decision.danger article{display:block;padding:15px;color:#cbbfce;background:rgba(255,63,128,.045)}.recruit-decision.danger article b,.recruit-decision.danger article span{display:block}.recruit-decision.danger article span{margin-top:5px;color:#7c7183;font-size:7px}.recruit-decision footer .danger{color:#fff;border-color:rgba(255,79,145,.45);background:linear-gradient(100deg,#bd205d,#ff3c80)}
@media(max-width:640px){.recruit-receipt{grid-template-columns:36px minmax(0,1fr);padding:13px}.recruit-receipt>span{width:36px;height:36px}.recruit-receipt>div:last-child{grid-column:2}.recruit-decision{align-items:end;padding:10px}.recruit-decision>section{max-height:calc(100dvh - 20px);padding:21px;border-radius:23px}.recruit-decision h2{font-size:25px}.recruit-decision footer{grid-template-columns:1fr}.recruit-decision article{grid-template-columns:1fr 1fr}.recruit-decision article>div:nth-child(3){grid-column:1/-1}}

/* Squad applications — role + intent reach the captain, and withdrawal is deliberate. */
.team-journey-receipt{display:grid;grid-template-columns:43px minmax(0,1fr) auto;align-items:center;gap:13px;margin:14px 0;padding:15px 17px;border:1px solid rgba(74,235,164,.29);border-radius:17px;background:linear-gradient(110deg,rgba(14,53,48,.93),rgba(10,8,20,.95))}.team-journey-receipt>span{width:42px;height:42px;display:grid;place-items:center;color:#4beaa3;border-radius:13px;background:rgba(75,234,163,.1)}.team-journey-receipt>span svg{width:19px}.team-journey-receipt small{display:block;color:#52eeb0;font-size:6px;font-weight:950;letter-spacing:.15em}.team-journey-receipt b{display:block;margin-top:4px;font-size:12px}.team-journey-receipt p{margin:3px 0 0;color:#8f8498;font-size:7px}.team-journey-receipt>div:last-child{display:flex;gap:7px}.team-journey-receipt>div:last-child button,.team-journey-receipt>div:last-child a{min-height:32px;display:grid;place-items:center;padding:0 10px;color:#68dcff;border:1px solid rgba(91,219,255,.18);border-radius:9px;background:rgba(58,202,255,.04);font:inherit;font-size:6px;font-weight:950;letter-spacing:.09em}.team-journey-receipt>div:last-child button:last-child{width:32px;padding:0;color:#786d81;border-color:rgba(255,255,255,.08)}.team-journey-receipt.withdrawn{border-color:rgba(255,93,148,.25);background:linear-gradient(110deg,rgba(67,19,43,.9),rgba(10,8,20,.95))}.team-journey-receipt.withdrawn>span{color:#ff79a9;background:rgba(255,75,137,.09)}.team-hq>.team-journey-receipt{margin:12px auto;width:min(1160px,calc(100% - 28px))}
.team-decision{position:fixed;z-index:2280;inset:0;display:grid;place-items:center;padding:18px}.team-decision>button{position:absolute;inset:0;border:0;background:rgba(2,1,8,.85);backdrop-filter:blur(15px)}.team-decision>section{position:relative;width:min(590px,100%);max-height:calc(100dvh - 36px);overflow:auto;padding:27px;border:1px solid rgba(87,218,255,.34);border-radius:25px;background:radial-gradient(circle at 88% 0,rgba(160,66,255,.14),transparent 31%),#090711;box-shadow:0 35px 110px rgba(0,0,0,.7)}.team-decision>section>small{color:#5dddff;font-size:7px;font-weight:950;letter-spacing:.16em}.team-decision h2{margin:8px 0 7px;font-size:29px;letter-spacing:-.04em}.team-decision>section>p{margin:0;color:#867b8f;font-size:9px;line-height:1.5}.team-decision .td-team{position:relative;isolation:isolate;min-height:105px;overflow:hidden;display:flex;align-items:flex-end;margin-top:18px;padding:17px;border:1px solid rgba(255,255,255,.09);border-radius:15px;background:#0b0812}.td-team>span{position:absolute;z-index:-2;inset:0;background-image:var(--td-art);background-size:cover;background-position:center}.td-team:after{content:"";position:absolute;z-index:-1;inset:0;background:linear-gradient(90deg,rgba(6,3,11,.97),rgba(6,3,11,.35))}.td-team small{color:#5dddff;font-size:6px;font-weight:900;letter-spacing:.11em}.td-team b{display:block;margin-top:4px;font-size:18px}.td-team p{margin:3px 0 0;color:#a399aa;font-size:7px}.team-decision label{display:flex;flex-direction:column;margin-top:10px}.team-decision label>span{margin:0 0 6px 3px;color:#6f6577;font-size:6px;font-weight:900;letter-spacing:.11em}.team-decision .field{margin:0;background:rgba(0,0,0,.22)}.team-decision textarea{resize:vertical}.td-share{display:grid;grid-template-columns:38px 1fr;align-items:center;gap:10px;margin-top:10px;padding:13px;border:1px solid rgba(84,218,255,.14);border-radius:13px;background:rgba(54,199,255,.035)}.td-share>svg{width:21px;color:#5dddff}.td-share b,.td-share small{display:block}.td-share b{font-size:8px}.td-share small{margin-top:3px;color:#776d80;font-size:6.5px}.td-errors{margin-top:12px;padding:12px;border:1px solid rgba(255,80,141,.3);border-radius:12px;background:rgba(92,20,48,.23)}.td-errors span{display:flex;align-items:center;gap:6px;color:#ff92b7;font-size:7px}.td-errors svg{width:13px}.team-decision footer{display:grid;grid-template-columns:.8fr 1.2fr;gap:8px;margin-top:20px}.team-decision footer button{min-height:47px;color:#aaa0b2;border:1px solid rgba(255,255,255,.1);border-radius:12px;background:rgba(255,255,255,.025);font:inherit;font-size:7px;font-weight:950;letter-spacing:.09em}.team-decision footer .primary{color:#05030a;border:0;background:linear-gradient(100deg,#5dddff,#b76aff)}.team-decision.danger>section{border-color:rgba(255,83,143,.35)}.td-withdraw{display:grid;grid-template-columns:62px 1fr;align-items:center;gap:13px;margin-top:18px;padding:15px;border:1px solid rgba(255,80,141,.17);border-radius:15px;background:rgba(255,63,128,.04)}.td-withdraw .team-logo{width:60px;height:60px}.td-withdraw small{color:#ff83ad;font-size:6px;font-weight:900}.td-withdraw b{display:block;margin-top:4px;font-size:16px}.td-withdraw p{margin:4px 0 0;color:#7d7284;font-size:7px}.team-decision footer .danger{color:#fff;border-color:rgba(255,79,145,.45);background:linear-gradient(100deg,#bd205d,#ff3c80)}
@media(max-width:640px){.team-journey-receipt{grid-template-columns:36px minmax(0,1fr);padding:13px}.team-journey-receipt>span{width:36px;height:36px}.team-journey-receipt>div:last-child{grid-column:2}.team-decision{align-items:end;padding:10px}.team-decision>section{max-height:calc(100dvh - 20px);padding:21px;border-radius:23px}.team-decision h2{font-size:25px}.team-decision footer{grid-template-columns:1fr}.team-hq>.team-journey-receipt{width:calc(100% - 20px);margin:10px}}
/* Private crew-channel studio + invite */
.channel-studio{max-width:1120px;padding-bottom:130px}.channel-studio>header{position:relative;padding:32px 4px 25px}.channel-studio>header>small,.channel-invite small,.channel-missing small{color:#5dddff;font-size:7px;font-weight:900;letter-spacing:.18em}.channel-studio>header h1{margin:9px 0 10px;font-size:clamp(53px,7vw,84px);line-height:.83;letter-spacing:-.07em}.channel-studio>header h1 span{color:transparent;-webkit-text-stroke:1px rgba(255,255,255,.5)}.channel-studio>header p{max-width:680px;margin:0;color:#8d8295;font-size:10px;line-height:1.55}.channel-studio>header a{position:absolute;right:4px;bottom:26px;color:#a898e8;font-size:6px;font-weight:900;letter-spacing:.1em}.cs-layout{display:grid;grid-template-columns:minmax(0,1fr) 330px;align-items:start;gap:11px}.cs-form{min-width:0;display:flex;flex-direction:column;gap:8px}.cs-form>section,.cs-preview{padding:20px;border:1px solid rgba(255,255,255,.08);border-radius:18px;background:rgba(7,4,13,.87)}.cs-form>section>header{display:grid;grid-template-columns:30px minmax(0,1fr);gap:9px;margin-bottom:14px}.cs-form>section>header>b{width:28px;height:28px;display:grid;place-items:center;color:#5dddff;border-radius:8px;background:rgba(54,202,255,.06);font-size:6px}.cs-form>section>header>span{display:flex;flex-direction:column}.cs-form>section>header strong{font-size:10px}.cs-form>section>header small{margin-top:3px;color:#6e6476;font-size:6.5px}.cs-form>section>label:not(.ns-friend):not(.cs-door){display:flex;flex-direction:column;margin-top:8px}.cs-form>section>label>span:first-child{margin:0 0 6px 3px;color:#6c6274;font-size:5.5px;font-weight:900;letter-spacing:.1em}.cs-form .field{margin:0;background:rgba(0,0,0,.2)}.cs-friends{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:6px;max-height:285px;overflow:auto}.cs-friends .ns-friend{position:relative;min-width:0;display:grid;grid-template-columns:38px minmax(0,1fr);align-items:center;gap:8px;padding:9px;border:1px solid rgba(255,255,255,.07);border-radius:11px;background:rgba(255,255,255,.018);cursor:pointer}.cs-friends input{position:absolute;opacity:0}.cs-friends .avatar{width:38px;height:38px}.cs-friends .ns-friend>span:last-child{min-width:0;display:flex;flex-direction:column}.cs-friends .ns-friend b{overflow:hidden;font-size:7.5px;white-space:nowrap;text-overflow:ellipsis}.cs-friends .ns-friend small{overflow:hidden;margin-top:3px;color:#665d6e;font-size:5px;white-space:nowrap;text-overflow:ellipsis}.cs-friends .ns-friend small i{display:inline-block;width:5px;height:5px;margin-right:4px;border-radius:50%;background:#48e68a}.cs-check{position:absolute;z-index:2;right:6px;top:6px;width:14px;height:14px;display:none!important;place-items:center!important;color:#05030a;border-radius:50%;background:#5dddff}.cs-check svg{width:8px}.cs-friends input:checked~.cs-check{display:grid!important}.cs-friends .ns-friend:has(input:checked){border-color:rgba(83,217,255,.35);background:rgba(53,199,255,.05)}.cs-door{display:grid;grid-template-columns:40px minmax(0,1fr);align-items:center;gap:11px;padding:13px;border:1px solid rgba(255,255,255,.07);border-radius:12px;background:rgba(0,0,0,.18);cursor:pointer}.cs-door>input{position:absolute;opacity:0}.cs-door-toggle{width:38px;height:21px;padding:3px;border-radius:20px;background:#28222f}.cs-door-toggle i{display:block;width:15px;height:15px;border-radius:50%;background:#6c6275;transition:.2s}.cs-door>input:checked~.cs-door-toggle{background:rgba(76,216,255,.25)}.cs-door>input:checked~.cs-door-toggle i{transform:translateX(17px);background:#5edfff}.cs-door>span:last-child{display:flex;flex-direction:column}.cs-door b{font-size:8px}.cs-door small{margin-top:3px;color:#6e6476;font-size:6px;line-height:1.4}.cs-preview{position:sticky;top:78px}.cs-preview>small{color:#5dddff;font-size:6px;font-weight:900;letter-spacing:.13em}.cs-preview>article{margin-top:11px;padding:20px;border:1px solid rgba(84,216,255,.15);border-radius:15px;background:radial-gradient(circle at 80% 0,rgba(166,66,255,.12),transparent 30%),rgba(0,0,0,.22)}.cs-preview-mark{width:54px;height:54px;display:grid;place-items:center;color:#5dddff;border:1px solid rgba(82,216,255,.2);border-radius:14px;background:rgba(50,196,255,.05);font-size:22px;font-weight:900}.cs-preview article>em{display:block;margin-top:15px;color:#5dddff;font-size:5px;font-weight:900;font-style:normal;letter-spacing:.11em}.cs-preview h2{margin:5px 0 4px;font-size:20px}.cs-preview article>p{margin:0;color:#7d7285;font-size:7px}.cs-preview article>div{display:grid;grid-template-columns:1fr 1fr;margin-top:15px;border-block:1px solid rgba(255,255,255,.07)}.cs-preview article>div span{padding:10px 5px;border-right:1px solid rgba(255,255,255,.07)}.cs-preview article>div span:last-child{border:0}.cs-preview article>div b{display:block;font-size:7px}.cs-preview article>div small{display:block;margin-top:3px;color:#615869;font-size:4.5px}.cs-receipt{margin-top:9px}.cs-receipt>span{display:grid;grid-template-columns:20px minmax(0,1fr);gap:8px;padding:10px;border-bottom:1px solid rgba(255,255,255,.06)}.cs-receipt svg{width:15px;color:#7065b1}.cs-receipt p{margin:0}.cs-receipt b{display:block;font-size:6.5px}.cs-receipt small{display:block;margin-top:3px;color:#675e6f;font-size:5.5px}.cs-preview>button{width:100%;margin-top:10px;padding:13px;color:#05030a;border:0;border-radius:10px;background:linear-gradient(100deg,#58dcff,#b668ff);font:inherit;font-size:6px;font-weight:950;letter-spacing:.09em}.cs-preview>button span{float:right}.cs-preview>p{margin:8px 3px 0;color:#62596a;font-size:5.5px;text-align:center}.channel-invite{max-width:1040px;padding-bottom:130px}.ci-hero{position:relative;isolation:isolate;min-height:390px;overflow:hidden;display:flex;flex-direction:column;align-items:flex-start;justify-content:flex-end;padding:38px;border:1px solid rgba(255,255,255,.09);border-radius:27px}.ci-art,.ci-grade{position:absolute;inset:0}.ci-art{z-index:-3;background-image:var(--ci-art);background-size:cover;background-position:center;opacity:.52}.ci-grade{z-index:-2;background:linear-gradient(0deg,rgba(5,3,11,.98),rgba(5,3,11,.35))}.ci-status{position:absolute;top:22px;left:24px;display:flex;align-items:center;gap:6px;color:#5dddff;font-size:6px;font-weight:900;letter-spacing:.12em}.ci-status i{width:6px;height:6px;border-radius:50%;background:#4be78c;box-shadow:0 0 8px #4be78c}.ci-mark{width:58px;height:58px;display:grid;place-items:center;margin-bottom:14px;border:1px solid rgba(255,255,255,.16);border-radius:15px;background:var(--ci-grad);font-size:25px;font-weight:900}.ci-hero h1{margin:6px 0 5px;font-size:clamp(45px,6vw,72px);line-height:.9;letter-spacing:-.055em}.ci-hero p{margin:0;color:#aaa0b2;font-size:8px}.ci-layout{display:grid;grid-template-columns:minmax(0,1fr) 340px;gap:10px;margin-top:10px}.ci-main,.ci-layout>aside{padding:24px;border:1px solid rgba(255,255,255,.08);border-radius:18px;background:rgba(7,4,13,.87)}.ci-main h2,.ci-layout>aside h2{margin:7px 0 6px;font-size:24px;letter-spacing:-.04em}.ci-main>p,.ci-layout>aside>p{margin:0;color:#81768a;font-size:8px;line-height:1.55}.ci-facts{display:grid;grid-template-columns:repeat(3,1fr);gap:6px;margin-top:18px}.ci-facts>span{display:flex;flex-direction:column;padding:13px;border:1px solid rgba(255,255,255,.06);border-radius:11px;background:rgba(255,255,255,.018)}.ci-facts svg{width:16px;color:#5dddff}.ci-facts b{margin-top:12px;font-size:6px}.ci-facts small{margin-top:4px;color:#675e6f;font-size:5px;line-height:1.35}.ci-layout>aside>a,.ci-layout>aside>button{display:block;width:100%;margin-top:12px;padding:12px;color:#05030a;border:0;border-radius:9px;background:linear-gradient(100deg,#58dcff,#b668ff);font:inherit;font-size:6px;font-weight:950;letter-spacing:.09em;text-align:center}.ci-layout>aside>button+button{margin-top:7px;color:#a89ae6;border:1px solid rgba(156,92,255,.18);background:rgba(145,73,255,.04)}.ci-layout>aside>button.pending{color:#9a8fa2;border:1px solid rgba(255,255,255,.09);background:rgba(255,255,255,.03)}.channel-invite>footer{display:flex;align-items:center;justify-content:space-between;margin-top:10px;padding:15px 20px;border:1px solid rgba(255,255,255,.07);border-radius:14px;background:rgba(7,4,13,.8);color:#756b7d;font-size:7px}.channel-invite>footer a{color:#a99ae7;font-weight:900;letter-spacing:.09em}.channel-missing{max-width:900px;padding-block:90px;text-align:center}.channel-missing h1{margin:8px 0;font-size:40px}.channel-missing p{color:#807588}.channel-missing a{display:inline-block;margin-top:18px;color:#a99ae8;font-size:7px;font-weight:900}
@media(max-width:760px){.channel-studio,.channel-invite{max-width:100%;padding-inline:13px;overflow:hidden}.channel-studio>header{padding-top:20px}.channel-studio>header h1{font-size:48px}.channel-studio>header a{position:static;display:inline-block;margin-top:14px}.cs-layout,.ci-layout{display:flex;flex-direction:column}.cs-form,.cs-preview{width:100%;max-width:100%;min-width:0}.cs-preview{position:static}.cs-form>section,.cs-preview{padding:15px}.cs-friends{display:flex;max-height:none;overflow-x:auto;scroll-snap-type:x mandatory}.cs-friends .ns-friend{min-width:58vw;scroll-snap-align:start}.ci-hero{min-height:410px;padding:25px 20px}.ci-layout>aside{order:-1}.ci-facts{grid-template-columns:1fr}.channel-invite>footer{align-items:flex-start;flex-direction:column;gap:8px}}
/* Voice room command surface */
@media(min-width:980px){body:has(.voice-room) #app{margin-left:0;padding-bottom:0}}
.voice-room{position:relative;min-height:100dvh;overflow:hidden;padding:22px 26px 118px;background:radial-gradient(circle at 50% -10%,rgba(72,211,255,.09),transparent 30%),radial-gradient(circle at 100% 80%,rgba(164,58,255,.1),transparent 28%),#05030a}.voice-room:before{content:"";position:fixed;z-index:0;inset:0;pointer-events:none;background:linear-gradient(rgba(255,255,255,.012) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.012) 1px,transparent 1px);background-size:48px 48px}.voice-room>*{position:relative;z-index:1}.voice-head{display:grid;grid-template-columns:46px minmax(0,1fr) auto;align-items:center;gap:14px;max-width:1280px;margin:0 auto}.voice-head>button:first-child{width:44px;height:44px;display:grid;place-items:center;color:#9c8fa7;border:1px solid rgba(255,255,255,.1);border-radius:12px;background:rgba(255,255,255,.03)}.voice-head>button:first-child svg{width:18px}.voice-head>div small{display:flex;align-items:center;gap:6px;color:#5dddff;font-size:6px;font-weight:900;letter-spacing:.13em}.voice-head>div small i{width:6px;height:6px;border-radius:50%;background:#49e78a;box-shadow:0 0 9px #49e78a}.voice-head h1{margin:3px 0 2px;font-size:18px;letter-spacing:-.03em}.voice-head p{margin:0;color:#716777;font-size:6.5px}.voice-head>button:last-child{display:grid;grid-template-columns:16px auto;align-items:center;gap:9px;padding:10px 12px;color:#a598ac;border:1px solid rgba(255,255,255,.09);border-radius:11px;background:rgba(255,255,255,.025);font:inherit;text-align:left}.voice-head>button:last-child svg{width:13px;transform:rotate(90deg)}.voice-head>button:last-child span{display:flex;flex-direction:column}.voice-head>button:last-child b{font-size:6px}.voice-head>button:last-child small{margin-top:2px;color:#625969;font-size:5px}.voice-status{max-width:1280px;display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:14px;margin:14px auto 9px;padding:10px 13px;border:1px solid rgba(255,255,255,.08);border-radius:11px;background:rgba(7,4,13,.76)}.voice-status>span{display:flex;align-items:center;gap:7px}.voice-status>span i{width:6px;height:6px;border-radius:50%;background:#4ae68a}.voice-status.wait>span i{background:#e8b84d}.voice-status.warn>span i{background:#ad72ff}.voice-status b{color:#fff;font-size:6px;letter-spacing:.1em}.voice-status p{margin:0;color:#746a7c;font-size:6.5px}.voice-status em{color:#5dddff;font-size:5.5px;font-weight:900;font-style:normal;letter-spacing:.1em}.voice-stage{max-width:1280px;display:grid;gap:8px;margin:0 auto}.voice-stage.one{grid-template-columns:1fr}.voice-stage.two{grid-template-columns:1fr 1fr}.voice-stage.many{grid-template-columns:repeat(3,1fr)}.voice-person{position:relative;isolation:isolate;min-height:500px;overflow:hidden;border:1px solid rgba(255,255,255,.1);border-radius:22px;background:#090611}.voice-person.muted{filter:saturate(.45)}.vp-art,.vp-grade{position:absolute;inset:0}.vp-art{z-index:-3;background:var(--vp-bg)}.vp-grade{z-index:-2;background:linear-gradient(0deg,rgba(5,3,11,.98),rgba(5,3,11,.08) 68%),radial-gradient(circle at 50% 50%,transparent,rgba(5,3,11,.35))}.voice-person.me .vp-art{opacity:.72}.vp-top{position:absolute;top:16px;right:17px;left:17px;display:flex;align-items:center;justify-content:space-between}.vp-top>span{display:flex;align-items:center;gap:6px;color:#b0a4b8;font-size:5.5px;font-weight:900;letter-spacing:.1em}.vp-top i{width:6px;height:6px;border-radius:50%;background:#49e78a}.vp-top>b{color:rgba(255,255,255,.24);font-size:14px}.vp-avatar{position:absolute;top:50%;left:50%;width:100px;height:100px;display:grid;place-items:center;transform:translate(-50%,-55%);border:1px solid rgba(255,255,255,.14);border-radius:28px;background:rgba(255,255,255,.035);box-shadow:0 20px 60px rgba(0,0,0,.35);font-size:45px}.vp-name{position:absolute;right:22px;bottom:23px;left:22px}.vp-name small{color:#5dddff;font-size:5.5px;font-weight:900;letter-spacing:.11em}.vp-name h2{margin:5px 0 3px;font-size:29px;letter-spacing:-.04em}.vp-name p{margin:0;color:#8d8295;font-size:7px}.vp-audio{position:absolute;right:18px;bottom:21px;display:flex;align-items:flex-end;gap:3px;height:23px}.vp-audio span{width:3px;height:6px;border-radius:3px;background:#4b4352}.vp-audio span:nth-child(2){height:13px}.vp-audio span:nth-child(3){height:20px}.vp-audio span:nth-child(4){height:10px}.vp-audio span.on{background:#50ddff;box-shadow:0 0 9px rgba(80,221,255,.5);animation:voicebar 1s ease-in-out infinite alternate}.vp-audio span.on~span{background:#50ddff}@keyframes voicebar{to{height:20px}}.voice-context{max-width:1280px;display:grid;grid-template-columns:1fr 1fr auto;gap:7px;margin:9px auto 0}.voice-context>span,.voice-context>button{display:grid;grid-template-columns:23px minmax(0,1fr);align-items:center;gap:9px;padding:12px 14px;color:#fff;border:1px solid rgba(255,255,255,.08);border-radius:12px;background:rgba(7,4,13,.78);font:inherit;text-align:left}.voice-context svg{width:17px;color:#5dddff}.voice-context p{margin:0}.voice-context b{display:block;font-size:7px}.voice-context small{display:block;margin-top:3px;color:#655c6c;font-size:5.5px}.voice-context>button{min-width:200px}.voice-safety{position:fixed;z-index:20;right:22px;top:88px;width:min(390px,calc(100vw - 28px));max-height:calc(100dvh - 190px);overflow:auto;padding:20px;border:1px solid rgba(90,218,255,.2);border-radius:18px;background:rgba(7,4,13,.97);box-shadow:0 30px 90px rgba(0,0,0,.6);backdrop-filter:blur(22px)}.voice-safety>header{display:flex;align-items:flex-start;justify-content:space-between}.voice-safety h2{margin:4px 0 0;font-size:19px}.voice-safety>header>button{width:30px;height:30px;display:grid;place-items:center;color:#8c8095;border:1px solid rgba(255,255,255,.08);border-radius:8px;background:rgba(255,255,255,.03)}.voice-safety>header svg{width:11px}.voice-safety>p{color:#756b7d;font-size:7px;line-height:1.5}.voice-safety>div{display:flex;flex-direction:column;gap:6px}.voice-safety article{display:grid;grid-template-columns:38px minmax(0,1fr) auto auto;align-items:center;gap:8px;padding:10px;border:1px solid rgba(255,255,255,.07);border-radius:11px}.voice-safety .avatar{width:38px;height:38px}.voice-safety article>span{display:flex;flex-direction:column}.voice-safety article b{font-size:8px}.voice-safety article small{margin-top:2px;color:#665d6e;font-size:5px}.voice-safety article>button{padding:7px;color:#9f92a8;border:1px solid rgba(255,255,255,.09);border-radius:7px;background:rgba(255,255,255,.025);font:inherit;font-size:5px;font-weight:900}.voice-safety article>button.danger{color:#ff7eab;border-color:rgba(255,77,135,.18)}.voice-dock{position:fixed;z-index:15;right:50%;bottom:18px;display:flex;gap:6px;padding:7px;transform:translateX(50%);border:1px solid rgba(255,255,255,.1);border-radius:17px;background:rgba(7,4,13,.9);box-shadow:0 20px 55px rgba(0,0,0,.5);backdrop-filter:blur(22px)}.voice-dock>button{min-width:74px;height:57px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:5px;color:#786e80;border:1px solid transparent;border-radius:11px;background:transparent;font:inherit}.voice-dock svg{width:18px}.voice-dock span{font-size:5px;font-weight:900;letter-spacing:.08em}.voice-dock button.on{color:#5dddff;border-color:rgba(84,218,255,.2);background:rgba(54,200,255,.06)}.voice-dock button.off{color:#ff71a6;border-color:rgba(255,77,140,.2);background:rgba(255,61,125,.05)}.voice-dock button.end{color:#ff649d;border-color:rgba(255,68,132,.18);background:rgba(255,61,124,.05)}.voice-leave{position:fixed;z-index:30;inset:0;display:grid;place-items:center;padding:16px}.voice-leave>button{position:absolute;inset:0;border:0;background:rgba(1,0,3,.8);backdrop-filter:blur(12px)}.voice-leave>section{position:relative;width:min(430px,100%);padding:28px;border:1px solid rgba(255,86,145,.2);border-radius:20px;background:#090610;box-shadow:0 30px 100px rgba(0,0,0,.7)}.voice-leave>section>span{width:52px;height:52px;display:grid;place-items:center;color:#ff649d;border:1px solid rgba(255,80,142,.2);border-radius:14px;background:rgba(255,61,124,.05)}.voice-leave>section>span svg{width:22px}.voice-leave>section>small{display:block;margin-top:18px;color:#ff70a7;font-size:6px;font-weight:900;letter-spacing:.14em}.voice-leave h2{margin:6px 0 6px;font-size:27px}.voice-leave p{margin:0;color:#7d7285;font-size:8px;line-height:1.5}.voice-leave>section>div{display:grid;grid-template-columns:1fr 1fr;gap:7px;margin-top:19px}.voice-leave>section>div button{padding:12px;color:#a69baa;border:1px solid rgba(255,255,255,.09);border-radius:9px;background:rgba(255,255,255,.025);font:inherit;font-size:6px;font-weight:900}.voice-leave>section>div button.danger{color:#fff;border:0;background:linear-gradient(100deg,#ff397f,#a65eff)}
@media(max-width:760px){.voice-room{padding:14px 13px 104px}.voice-head{grid-template-columns:40px minmax(0,1fr) 40px;gap:9px}.voice-head>button:first-child{width:38px;height:38px}.voice-head h1{overflow:hidden;font-size:15px;white-space:nowrap;text-overflow:ellipsis}.voice-head>button:last-child{width:38px;height:38px;display:grid;grid-template-columns:1fr;place-items:center;padding:0}.voice-head>button:last-child span{display:none}.voice-status{grid-template-columns:auto minmax(0,1fr)}.voice-status em{display:none}.voice-stage.two,.voice-stage.many{display:flex;overflow-x:auto;scroll-snap-type:x mandatory}.voice-person{min-height:480px}.voice-stage.two .voice-person,.voice-stage.many .voice-person{min-width:88vw;scroll-snap-align:start}.voice-context{grid-template-columns:1fr 1fr}.voice-context>button{grid-column:1/-1;min-width:0}.voice-safety{right:14px;top:70px}.voice-dock{right:13px;bottom:13px;left:13px;justify-content:space-between;transform:none}.voice-dock>button{min-width:0;flex:1;height:54px}.voice-dock>button span{font-size:4.5px}.vp-name h2{font-size:25px}.voice-leave>section{padding:23px}}

/* My Rooms — one primary live room, with every future decision staged below it. */
.room-control{max-width:1260px;padding-bottom:130px}.rc-head{display:flex;align-items:flex-end;justify-content:space-between;gap:28px;padding:25px 3px 24px}.rc-head>div:first-child{max-width:750px}.rc-head>div>small,.rc-panel header small,.rc-current-copy>small,.rc-no-live small,.rc-foot small{color:#5dddff;font-size:6px;font-weight:950;letter-spacing:.15em}.rc-head h1{margin:9px 0 10px;font-size:clamp(50px,6.5vw,82px);line-height:.82;letter-spacing:-.065em}.rc-head h1 span{color:transparent;-webkit-text-stroke:1px rgba(255,255,255,.5)}.rc-head p{max-width:650px;margin:0;color:#8b8094;font-size:9px;line-height:1.55}.rc-counts{display:grid;grid-template-columns:repeat(3,95px);overflow:hidden;border:1px solid rgba(255,255,255,.08);border-radius:15px;background:rgba(7,4,13,.76)}.rc-counts>span{display:flex;flex-direction:column;padding:15px;border-left:1px solid rgba(255,255,255,.07)}.rc-counts>span:first-child{border-left:0}.rc-counts b{font-size:23px;line-height:1}.rc-counts small{margin-top:6px;color:#706678;font-size:5px;font-weight:900;letter-spacing:.08em}.rc-current{position:relative;isolation:isolate;min-height:470px;overflow:hidden;border:1px solid rgba(255,255,255,.1);border-radius:26px;background:#08050e}.rc-current-art,.rc-current-grade{position:absolute;inset:0}.rc-current-art{z-index:-3;background-image:var(--rc-art);background-size:cover;background-position:center;opacity:.68}.rc-current-grade{z-index:-2;background:linear-gradient(90deg,rgba(4,2,9,.96) 0%,rgba(4,2,9,.54) 55%,rgba(4,2,9,.82) 100%),linear-gradient(0deg,rgba(4,2,9,.94),transparent 65%)}.rc-current-top{position:absolute;top:22px;right:24px;left:25px;display:flex;align-items:center;justify-content:space-between}.rc-current-top>span{display:flex;align-items:center;gap:7px;color:#fff;font-size:6px;font-weight:950;letter-spacing:.13em}.rc-current-top i{width:7px;height:7px;border-radius:50%;background:#48e88a;box-shadow:0 0 10px #48e88a}.rc-current-top>b{color:#a797b2;font-size:5.5px;letter-spacing:.12em}.rc-current-copy{position:absolute;right:390px;bottom:34px;left:32px}.rc-current-copy h2{max-width:620px;margin:7px 0 8px;font-size:clamp(41px,5vw,65px);line-height:.9;letter-spacing:-.055em}.rc-current-copy>p{margin:0;color:#a99fad;font-size:9px}.rc-current-copy>div{display:flex;align-items:center;margin-top:20px}.rc-current-copy .avatar{width:39px;height:39px;margin-left:-8px;border:2px solid #07040c}.rc-current-copy .avatar:first-child{margin-left:0}.rc-open{width:39px;height:39px;display:grid;place-items:center;margin-left:-8px;color:#5dddff;border:1px dashed rgba(82,216,255,.35);border-radius:50%;background:rgba(10,7,15,.8)}.rc-current-copy em{margin-left:11px;color:#84798c;font-size:7px;font-style:normal}.rc-current>aside{position:absolute;right:24px;bottom:24px;width:340px;padding:21px;border:1px solid rgba(255,255,255,.1);border-radius:17px;background:rgba(7,4,13,.82);backdrop-filter:blur(18px)}.rc-current>aside>span{display:flex;flex-direction:column}.rc-current aside small{color:#b067ff;font-size:5.5px;font-weight:950;letter-spacing:.12em}.rc-current aside b{margin-top:6px;font-size:18px}.rc-current aside p{margin:7px 0 0;color:#807588;font-size:7px;line-height:1.5}.rc-current aside>div{display:grid;grid-template-columns:1fr 1fr;gap:6px;margin-top:17px}.rc-current aside a,.rc-current aside button{display:flex;align-items:center;justify-content:center;gap:5px;padding:11px;color:#05030a;border:0;border-radius:9px;background:linear-gradient(100deg,#58dcff,#b668ff);font:inherit;font-size:5.5px;font-weight:950;letter-spacing:.07em;text-align:center}.rc-current aside button{color:#bdaee8;border:1px solid rgba(166,94,255,.2);background:rgba(153,73,255,.06)}.rc-current aside button svg{width:13px}.rc-no-live{display:grid;grid-template-columns:70px minmax(0,1fr) auto auto;align-items:center;gap:18px;padding:32px;border:1px solid rgba(83,217,255,.14);border-radius:22px;background:radial-gradient(circle at 85% 20%,rgba(157,65,255,.11),transparent 28%),rgba(7,4,13,.82)}.rc-no-live>span{width:64px;height:64px;display:grid;place-items:center;color:#5dddff;border:1px solid rgba(83,217,255,.18);border-radius:17px;background:rgba(54,199,255,.05)}.rc-no-live h2{margin:4px 0;font-size:25px}.rc-no-live p{margin:0;color:#7d7285;font-size:8px}.rc-no-live>a{padding:12px 15px;color:#a79ae8;border:1px solid rgba(157,89,255,.2);border-radius:9px;font-size:6px;font-weight:950;letter-spacing:.07em}.rc-warning{display:flex;gap:12px;margin-top:9px;padding:12px 15px;border:1px solid rgba(255,180,72,.16);border-radius:11px;background:rgba(255,167,48,.035)}.rc-warning b{color:#ffc56b;font-size:7px}.rc-warning p{margin:0;color:#84745d;font-size:7px}.rc-grid{display:grid;grid-template-columns:1.08fr .92fr;gap:9px;margin-top:9px}.rc-panel{min-width:0;padding:22px;border:1px solid rgba(255,255,255,.08);border-radius:19px;background:rgba(7,4,13,.86)}.rc-panel>header{display:flex;align-items:flex-end;justify-content:space-between;margin-bottom:15px}.rc-panel h2{margin:4px 0 0;font-size:25px;letter-spacing:-.04em}.rc-panel>header>b{width:31px;height:31px;display:grid;place-items:center;color:#5dddff;border:1px solid rgba(82,216,255,.16);border-radius:9px;background:rgba(54,199,255,.04);font-size:10px}.rc-upcoming>div{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:7px}.rc-reservation{position:relative;isolation:isolate;min-height:250px;overflow:hidden;display:flex;flex-direction:column;justify-content:flex-end;padding:16px;border:1px solid rgba(255,255,255,.08);border-radius:14px;background:#08050e}.rc-res-art{position:absolute;z-index:-2;inset:0;background-image:linear-gradient(0deg,rgba(5,3,10,.98),rgba(5,3,10,.25)),var(--rc-art);background-size:cover;background-position:center;opacity:.74}.rc-res-top{position:absolute;top:13px;right:13px;left:13px;display:flex;align-items:center;justify-content:space-between}.rc-res-top small{color:#5dddff;font-size:4.8px;font-weight:950;letter-spacing:.1em}.rc-res-top b{color:#fff;font-size:5px;letter-spacing:.08em}.rc-res-copy>small{color:#5dddff;font-size:5px;font-weight:950;letter-spacing:.1em}.rc-res-copy h3{margin:5px 0 4px;font-size:18px}.rc-res-copy p{margin:0;color:#8a7f92;font-size:6.5px}.rc-reservation>strong{margin-top:12px;color:#b2a2eb;font-size:5.5px;letter-spacing:.08em}.rc-requests>div{display:flex;flex-direction:column;gap:7px}.rc-wait{overflow:hidden;border:1px solid rgba(255,255,255,.07);border-radius:13px;background:rgba(255,255,255,.015)}.rc-wait>a{position:relative;isolation:isolate;min-height:105px;display:flex;align-items:flex-end;padding:15px}.rc-wait-art{position:absolute;z-index:-2;inset:0;background-image:linear-gradient(90deg,rgba(6,3,12,.97),rgba(6,3,12,.45)),var(--rc-art);background-size:cover;background-position:center;opacity:.7}.rc-wait>a span:last-child{display:flex;flex-direction:column}.rc-wait>a small{color:#c173ff;font-size:5px;font-weight:950;letter-spacing:.1em}.rc-wait>a b{margin-top:4px;font-size:14px}.rc-wait>a p{margin:3px 0 0;color:#857a8d;font-size:6px}.rc-wait>div{display:grid;grid-template-columns:31px minmax(0,1fr) auto;align-items:center;gap:8px;padding:9px 11px;border-top:1px solid rgba(255,255,255,.06)}.rc-wait .avatar{width:31px;height:31px}.rc-wait>div>span{display:flex;flex-direction:column}.rc-wait>div small{color:#655c6c;font-size:4.5px}.rc-wait>div b{font-size:7px}.rc-wait button{padding:7px 9px;color:#ff76a9;border:1px solid rgba(255,84,143,.17);border-radius:7px;background:rgba(255,56,125,.035);font:inherit;font-size:5px;font-weight:950;letter-spacing:.07em}.rc-panel-empty{min-height:250px;display:flex!important;flex-direction:column!important;align-items:flex-start;justify-content:center;padding:24px;border:1px dashed rgba(255,255,255,.08);border-radius:14px}.rc-panel-empty>span{color:#5dddff}.rc-panel-empty b{margin-top:14px;font-size:14px}.rc-panel-empty p{max-width:360px;margin:5px 0 0;color:#716779;font-size:7px;line-height:1.5}.rc-foot{display:flex;align-items:center;justify-content:space-between;gap:18px;margin-top:9px;padding:17px 20px;border:1px solid rgba(255,255,255,.08);border-radius:15px;background:rgba(7,4,13,.83)}.rc-foot>span{display:grid;grid-template-columns:28px minmax(0,1fr);align-items:center;gap:9px}.rc-foot svg{grid-row:1/3;width:20px;color:#5dddff}.rc-foot>span>div{display:flex;flex-direction:column}.rc-foot b{margin-top:2px;font-size:8px}.rc-foot>div{display:flex;gap:7px}.rc-foot a{padding:10px 12px;color:#a99be8;border:1px solid rgba(158,91,255,.18);border-radius:8px;background:rgba(147,70,255,.035);font-size:5.5px;font-weight:950;letter-spacing:.07em}.rc-foot a:last-child{color:#05030a;border:0;background:linear-gradient(100deg,#58dcff,#b668ff)}
@media(max-width:760px){.room-control{max-width:100%;overflow:hidden;padding:8px 13px 112px}.rc-head{align-items:stretch;flex-direction:column;padding-top:17px}.rc-head h1{font-size:47px}.rc-head p{font-size:8px}.rc-counts{grid-template-columns:repeat(3,1fr)}.rc-counts>span{padding:12px}.rc-current{min-height:600px}.rc-current-grade{background:linear-gradient(0deg,rgba(4,2,9,.98) 0%,rgba(4,2,9,.43) 72%,rgba(4,2,9,.72))}.rc-current-copy{right:20px;bottom:230px;left:20px}.rc-current-copy h2{font-size:42px}.rc-current>aside{right:13px;bottom:13px;left:13px;width:auto}.rc-current aside>div{grid-template-columns:1fr 1fr}.rc-no-live{grid-template-columns:52px minmax(0,1fr);padding:20px;gap:13px}.rc-no-live>span{width:48px;height:48px}.rc-no-live>a{grid-column:1/-1;text-align:center}.rc-grid{display:flex;flex-direction:column}.rc-panel{padding:16px}.rc-upcoming>div{display:flex;overflow-x:auto;scroll-snap-type:x mandatory}.rc-foot{align-items:stretch;flex-direction:column}.rc-foot>div{display:grid;grid-template-columns:1fr 1fr}.rc-foot a{text-align:center}}

/* Full Lineup decision receipts + guarded cancellation. */
.sl-notice{position:relative;display:grid;grid-template-columns:46px minmax(0,1fr) auto 30px;align-items:center;gap:13px;margin:14px 0 3px;padding:15px 16px;border:1px solid rgba(84,218,255,.18);border-radius:15px;background:radial-gradient(circle at 90% 20%,rgba(154,68,255,.11),transparent 30%),rgba(7,4,13,.9);box-shadow:0 15px 40px rgba(0,0,0,.2)}.sl-notice>span{width:43px;height:43px;display:grid;place-items:center;color:#5dddff;border:1px solid rgba(84,218,255,.18);border-radius:12px;background:rgba(55,201,255,.05)}.sl-notice>span svg{width:18px}.sl-notice>div{min-width:0}.sl-notice small{color:#5dddff;font-size:5.5px;font-weight:950;letter-spacing:.13em}.sl-notice h2{margin:3px 0 2px;font-size:15px;letter-spacing:-.02em}.sl-notice p{margin:0;color:#7d7285;font-size:7px}.sl-notice>a{padding:9px 11px;color:#05030a;border-radius:8px;background:linear-gradient(100deg,#58dcff,#b668ff);font-size:5.5px;font-weight:950;letter-spacing:.07em;white-space:nowrap}.sl-notice>button{width:28px;height:28px;display:grid;place-items:center;color:#756a7d;border:1px solid rgba(255,255,255,.07);border-radius:8px;background:rgba(255,255,255,.02)}.sl-notice>button svg{width:10px}.sl-notice.accepted{border-color:rgba(74,230,138,.22)}.sl-notice.accepted>span{color:#4ae68a;border-color:rgba(74,230,138,.2);background:rgba(74,230,138,.05)}.sl-notice.passed,.sl-notice.canceled{border-color:rgba(255,104,155,.18)}.sl-notice.passed>span,.sl-notice.canceled>span{color:#ff74a8;border-color:rgba(255,104,155,.18);background:rgba(255,69,133,.04)}.session-cancel{position:fixed;z-index:80;inset:0;display:grid;place-items:center;padding:16px}.session-cancel>button{position:absolute;inset:0;border:0;background:rgba(1,0,3,.82);backdrop-filter:blur(12px)}.session-cancel>section{position:relative;width:min(450px,100%);padding:29px;border:1px solid rgba(255,94,149,.2);border-radius:21px;background:radial-gradient(circle at 90% 0,rgba(156,65,255,.12),transparent 28%),#090610;box-shadow:0 35px 110px rgba(0,0,0,.7)}.session-cancel>section>span{width:53px;height:53px;display:grid;place-items:center;color:#ff6ba2;border:1px solid rgba(255,94,149,.2);border-radius:14px;background:rgba(255,62,128,.05)}.session-cancel>section>span svg{width:22px}.session-cancel>section>small{display:block;margin-top:18px;color:#ff74a8;font-size:6px;font-weight:950;letter-spacing:.14em}.session-cancel h2{margin:6px 0;font-size:26px;line-height:1.05;letter-spacing:-.035em}.session-cancel p{margin:0;color:#82768a;font-size:8px;line-height:1.55}.session-cancel>section>div{display:grid;grid-template-columns:1fr 1fr;gap:7px;margin-top:20px}.session-cancel>section>div button{padding:12px;color:#a89cab;border:1px solid rgba(255,255,255,.09);border-radius:9px;background:rgba(255,255,255,.025);font:inherit;font-size:6px;font-weight:950;letter-spacing:.07em}.session-cancel>section>div button.danger{color:#fff;border:0;background:linear-gradient(100deg,#ff397f,#a65eff)}
@media(max-width:700px){.sl-notice{grid-template-columns:40px minmax(0,1fr) 28px;padding:13px;gap:10px}.sl-notice>span{width:38px;height:38px}.sl-notice>a{grid-column:2/4;width:max-content;margin-top:2px}.sl-notice p{line-height:1.45}.session-cancel>section{padding:23px}}

/* Player-card live journey + guarded relationship controls. */
.yp-live-room-cta{display:grid;grid-template-columns:8px minmax(0,1fr) auto;align-items:center;gap:10px;min-height:58px;padding:10px 13px;color:#fff;border:1px solid rgba(65,239,144,.38);border-radius:14px;background:linear-gradient(135deg,rgba(8,44,34,.94),rgba(18,15,35,.94));box-shadow:0 0 30px rgba(53,238,139,.12);text-decoration:none}.yp-live-room-cta>i{width:8px;height:8px;border-radius:50%;background:#36ef8b;box-shadow:0 0 13px #36ef8b}.yp-live-room-cta>span{min-width:0;display:flex;flex-direction:column}.yp-live-room-cta b{font-size:8px;letter-spacing:.11em}.yp-live-room-cta small{margin-top:4px;overflow:hidden;color:#9fcbb1;font-size:6.5px;white-space:nowrap;text-overflow:ellipsis}.yp-live-room-cta strong{font-size:7px;letter-spacing:.08em}.yp-blocked-state{display:flex;flex-direction:column;padding:12px 14px;border:1px solid rgba(255,255,255,.11);border-radius:13px;background:rgba(7,5,12,.78)}.yp-blocked-state b{color:#ff9fbc;font-size:8px;letter-spacing:.12em}.yp-blocked-state small{margin-top:4px;color:#8c8193;font-size:6.5px;line-height:1.35}.yp-action-notice{display:grid;grid-template-columns:32px minmax(0,1fr) 25px;align-items:center;gap:10px;margin-top:10px;padding:12px 15px;color:#fff;border:1px solid rgba(90,215,255,.25);border-radius:15px;background:linear-gradient(90deg,rgba(34,126,175,.13),rgba(10,7,16,.92))}.yp-action-notice.safe{border-color:rgba(54,239,139,.2);background:linear-gradient(90deg,rgba(54,239,139,.09),rgba(10,7,16,.92))}.yp-action-notice>span{width:32px;height:32px;display:grid;place-items:center;color:#64dcff;border-radius:10px;background:rgba(100,220,255,.08)}.yp-action-notice.safe>span{color:#4bef98;background:rgba(75,239,152,.08)}.yp-action-notice svg{width:15px}.yp-action-notice>div{display:flex;flex-direction:column}.yp-action-notice b{font-size:8px}.yp-action-notice small{margin-top:3px;color:#8e8397;font-size:6.5px}.yp-action-notice>button{padding:5px;color:#796e83;background:none;border:0}.yp-rooms-closed{padding:14px;color:#746a7c;border:1px dashed rgba(255,255,255,.1);border-radius:11px;font-size:7px;line-height:1.4}.yp-confirm-sheet .yp-confirm-mark{width:50px;height:50px;display:grid;place-items:center;margin:0 auto 12px;color:#ff7ca7;border:1px solid rgba(255,94,143,.28);border-radius:15px;background:rgba(255,76,134,.08);font-size:24px}.yp-confirm-copy{max-width:390px;margin:0 auto 17px!important;line-height:1.55}.yp-confirm-sheet .btn-danger{color:#fff;border:1px solid rgba(255,82,135,.55);background:linear-gradient(135deg,#b72b5f,#6d245f);box-shadow:0 10px 30px rgba(197,36,96,.2)}

/* Start Room: validation, final review, and publish receipt. */
.rb-error-summary{display:grid;grid-template-columns:34px minmax(0,1fr);align-items:center;gap:11px;margin-top:13px;padding:12px 14px;border:1px solid rgba(255,92,143,.26);border-radius:14px;background:rgba(255,54,124,.055)}.rb-error-summary>span{width:32px;height:32px;display:grid;place-items:center;color:#ff79aa;border-radius:9px;background:rgba(255,72,133,.09);font-size:14px;font-weight:950}.rb-error-summary>div{display:flex;flex-direction:column}.rb-error-summary b{color:#fff;font-size:9px}.rb-error-summary small{margin-top:3px;color:#a58c9a;font-size:7px;line-height:1.45}.rb-section.has-error{border-color:rgba(255,91,143,.3);box-shadow:inset 0 0 0 1px rgba(255,91,143,.04)}.rb-section.has-error .field{border-color:rgba(255,91,143,.4)}.rb-field-error{display:block;margin:6px 2px 0;color:#ff8eb5;font-size:7px;font-weight:750}.rb-review{position:fixed;z-index:90;inset:0;display:grid;place-items:center;padding:18px}.rb-review-scrim{position:absolute;inset:0;border:0;background:rgba(1,0,4,.84);backdrop-filter:blur(14px)}.rb-review>section{position:relative;width:min(620px,100%);max-height:calc(100dvh - 36px);overflow:auto;padding:22px;border:1px solid rgba(93,218,255,.2);border-radius:23px;background:radial-gradient(circle at 90% 0,rgba(165,67,255,.14),transparent 30%),#08050e;box-shadow:0 35px 120px rgba(0,0,0,.75)}.rb-review>section>header{display:flex;align-items:center;justify-content:space-between;margin-bottom:13px;color:#5cddff;font-size:7px;font-weight:950;letter-spacing:.15em}.rb-review>section>header button{width:31px;height:31px;display:grid;place-items:center;color:#8c8094;border:1px solid rgba(255,255,255,.09);border-radius:9px;background:rgba(255,255,255,.025)}.rb-review>section>header svg{width:11px}.rb-review-hero{position:relative;isolation:isolate;min-height:210px;overflow:hidden;display:flex;flex-direction:column;justify-content:flex-end;padding:21px;border:1px solid rgba(255,255,255,.1);border-radius:17px;background:#08050e}.rb-review-hero>span{position:absolute;z-index:-2;inset:0;background-image:linear-gradient(0deg,rgba(4,2,9,.97),rgba(4,2,9,.08)),var(--rb-review-art);background-size:cover;background-position:center}.rb-review-hero:after{content:"";position:absolute;z-index:-1;inset:0;background:linear-gradient(125deg,rgba(54,202,255,.08),rgba(170,63,255,.12))}.rb-review-hero small{color:#5cddff;font-size:6px;font-weight:950;letter-spacing:.13em}.rb-review-hero h2{margin:5px 0 4px;font-size:34px;line-height:.93;letter-spacing:-.05em}.rb-review-hero p{margin:0;color:#aaa0b3;font-size:8px}.rb-review-grid{display:grid;grid-template-columns:1fr 1fr;margin-top:10px;border:1px solid rgba(255,255,255,.08);border-radius:13px;overflow:hidden}.rb-review-grid>div{min-width:0;display:flex;flex-direction:column;padding:12px;border-top:1px solid rgba(255,255,255,.07);border-left:1px solid rgba(255,255,255,.07)}.rb-review-grid>div:nth-child(-n+2){border-top:0}.rb-review-grid>div:nth-child(odd){border-left:0}.rb-review-grid small{color:#665d6d;font-size:5.5px;font-weight:950;letter-spacing:.11em}.rb-review-grid b{margin-top:4px;color:#ddd5e2;font-size:8px}.rb-review-grid em{margin-top:3px;color:#766c7e;font-size:6px;font-style:normal}.rb-review-warning{display:flex;flex-direction:column;gap:3px;margin-top:10px;padding:11px 13px;color:#a9919d;border:1px solid rgba(255,93,146,.22);border-radius:11px;background:rgba(255,55,124,.045);font-size:7px;line-height:1.45}.rb-review-warning b{color:#ff8eb5;font-size:8px}.rb-review footer{display:grid;grid-template-columns:.75fr 1.25fr;gap:7px;margin-top:14px}.rb-review footer button{padding:12px;color:#a69bab;border:1px solid rgba(255,255,255,.09);border-radius:10px;background:rgba(255,255,255,.025);font:inherit;font-size:6px;font-weight:950;letter-spacing:.08em}.rb-review footer button.publish{color:#05030a;border:0;background:linear-gradient(100deg,#58dcff,#ba6cff);box-shadow:0 10px 30px rgba(116,84,255,.18)}.lr-publish-receipt{display:grid;grid-template-columns:46px minmax(0,1fr) auto 28px;align-items:center;gap:13px;margin:12px 0 0;padding:14px 15px;border:1px solid rgba(70,230,139,.22);border-radius:16px;background:radial-gradient(circle at 90% 15%,rgba(93,74,255,.12),transparent 28%),rgba(7,4,13,.9)}.lr-pr-mark{width:43px;height:43px;display:grid;place-items:center;color:#4ae68a;border:1px solid rgba(74,230,138,.2);border-radius:12px;background:rgba(74,230,138,.05)}.lr-publish-receipt.scheduled{border-color:rgba(84,218,255,.2)}.lr-publish-receipt.scheduled .lr-pr-mark{color:#5dddff;border-color:rgba(84,218,255,.18);background:rgba(54,199,255,.05)}.lr-pr-mark svg{width:18px}.lr-publish-receipt>div:nth-child(2){min-width:0}.lr-publish-receipt small{color:#4ae68a;font-size:5.5px;font-weight:950;letter-spacing:.13em}.lr-publish-receipt.scheduled small{color:#5dddff}.lr-publish-receipt h2{margin:3px 0 2px;font-size:15px}.lr-publish-receipt p{margin:0;color:#81768a;font-size:7px;line-height:1.45}.lr-pr-actions{display:flex;gap:6px}.lr-pr-actions button{padding:9px 10px;color:#05030a;border:0;border-radius:8px;background:linear-gradient(100deg,#58dcff,#b668ff);font:inherit;font-size:5.5px;font-weight:950;letter-spacing:.07em;white-space:nowrap}.lr-pr-actions button+button{color:#b6a9c0;border:1px solid rgba(255,255,255,.09);background:rgba(255,255,255,.025)}.lr-pr-close{width:27px;height:27px;display:grid;place-items:center;color:#756a7d;border:1px solid rgba(255,255,255,.07);border-radius:8px;background:rgba(255,255,255,.02)}.lr-pr-close svg{width:10px}
@media(max-width:700px){.rb-review{padding:10px}.rb-review>section{max-height:calc(100dvh - 20px);padding:16px;border-radius:19px}.rb-review-hero{min-height:190px}.rb-review-hero h2{font-size:29px}.rb-review-grid{grid-template-columns:1fr}.rb-review-grid>div,.rb-review-grid>div:nth-child(-n+2){border-top:1px solid rgba(255,255,255,.07);border-left:0}.rb-review-grid>div:first-child{border-top:0}.lr-publish-receipt{grid-template-columns:39px minmax(0,1fr) 25px;padding:12px;gap:10px}.lr-pr-mark{width:38px;height:38px}.lr-pr-actions{grid-column:2/4;display:grid;grid-template-columns:1fr 1fr;width:100%;margin-top:3px}.lr-pr-actions button{white-space:normal}.lr-pr-close{grid-column:3;grid-row:1}.lr-publish-receipt p{font-size:6.5px}}
/* Boards — durable decisions and aftermath */
.board-receipt{width:min(1180px,calc(100% - 34px));margin:18px auto 0;padding:17px 18px;display:grid;grid-template-columns:42px minmax(0,1fr) auto;align-items:center;gap:14px;border:1px solid rgba(72,242,184,.38);border-radius:18px;background:linear-gradient(110deg,rgba(18,57,55,.94),rgba(12,13,28,.96));box-shadow:0 18px 48px rgba(0,0,0,.25)}
.board-receipt>span{width:42px;height:42px;display:grid;place-items:center;border-radius:13px;color:#47f0b7;background:rgba(71,240,183,.12)}.board-receipt>span svg{width:20px}.board-receipt small{display:block;color:#47f0b7;font:800 10px/1.2 var(--font);letter-spacing:.18em}.board-receipt b{display:block;margin-top:4px;color:#fff;font-size:15px}.board-receipt p{margin:3px 0 0;color:var(--muted);font-size:12px}.board-receipt-actions{display:flex;align-items:center;gap:8px}.board-receipt-actions a,.board-receipt-actions button{border:0;background:none;color:#70dfff;font:800 11px var(--font);letter-spacing:.08em;cursor:pointer;text-decoration:none}.board-receipt-actions button:last-child{width:32px;height:32px;border-radius:9px;color:var(--muted);background:rgba(255,255,255,.06)}.board-receipt.deleted,.board-receipt.left{border-color:rgba(255,90,142,.3);background:linear-gradient(110deg,rgba(61,24,43,.94),rgba(12,13,28,.96))}.board-receipt.deleted>span,.board-receipt.left>span{color:#ff6c9f;background:rgba(255,85,145,.12)}.board-receipt.deleted small,.board-receipt.left small{color:#ff8bb3}
.board-decision{position:fixed;inset:0;z-index:2200;display:grid;place-items:center;padding:20px}.board-decision-bg{position:absolute;inset:0;border:0;background:rgba(2,3,12,.82);backdrop-filter:blur(16px)}.board-decision>section{position:relative;width:min(560px,100%);max-height:calc(100dvh - 40px);overflow:auto;padding:27px;border:1px solid rgba(104,217,255,.38);border-radius:26px;background:linear-gradient(145deg,#121328,#090a16 72%);box-shadow:0 28px 90px rgba(0,0,0,.6),0 0 50px rgba(79,191,255,.09)}.board-decision header small{color:#66ddff;font:800 10px var(--font);letter-spacing:.18em}.board-decision header h2{margin:8px 0 7px;color:#fff;font-size:28px;letter-spacing:-.04em}.board-decision header p{margin:0;color:var(--muted);line-height:1.55}.board-decision article{margin-top:22px;padding:18px;border:1px solid rgba(255,255,255,.1);border-radius:17px;background:rgba(255,255,255,.035)}.board-decision article small{color:#ff60ba;font:800 9px var(--font);letter-spacing:.16em}.board-decision article b{display:block;margin:7px 0;color:#fff;font-size:19px}.board-decision article p{margin:0;color:#c7c5da;line-height:1.5;white-space:pre-wrap}.board-decision article em{display:inline-block;margin-top:12px;color:#62dcff;font:800 9px var(--font);letter-spacing:.14em}.board-decision-proof{display:grid;grid-template-columns:1fr 1fr;gap:9px;margin-top:12px}.board-decision-proof span{display:grid;grid-template-columns:22px 1fr;column-gap:8px;padding:12px;border-radius:13px;background:rgba(255,255,255,.035)}.board-decision-proof svg{grid-row:1/3;width:18px;color:#47f0b7}.board-decision-proof b{color:#fff;font-size:12px}.board-decision-proof small{color:var(--muted);font-size:10px}.board-decision footer{display:grid;grid-template-columns:1fr 1.25fr;gap:10px;margin-top:22px}.board-decision footer button{min-height:48px;border:1px solid rgba(255,255,255,.14);border-radius:14px;background:transparent;color:#d7d5e6;font:850 11px var(--font);letter-spacing:.08em;cursor:pointer}.board-decision footer .primary{border-color:transparent;color:#061018;background:linear-gradient(100deg,#68e0ff,#49f0b2)}.board-decision.danger>section{border-color:rgba(255,74,142,.4)}.board-decision-warning{display:flex;gap:12px;margin-top:22px;padding:16px;border-radius:16px;background:rgba(255,66,129,.08);color:#ff76a6}.board-decision-warning svg{width:24px}.board-decision-warning b,.board-decision-warning small{display:block}.board-decision-warning b{color:#fff}.board-decision-warning small{margin-top:3px;color:#b9b6ca}.board-decision footer .danger-btn{border-color:rgba(255,76,142,.55);color:#fff;background:linear-gradient(100deg,#c92364,#ff3d82)}
.nbp-errors{max-width:1180px;margin:0 auto 16px;padding:14px 16px;border:1px solid rgba(255,82,142,.4);border-radius:15px;background:rgba(89,19,49,.32)}.nbp-errors>b{display:block;margin-bottom:7px;color:#fff}.nbp-errors span{display:flex;gap:7px;align-items:center;color:#ff9aba;font-size:12px}.nbp-errors svg{width:14px}.new-board-post .field.has-error{border-color:#ff4e91!important;box-shadow:0 0 0 3px rgba(255,78,145,.08)}.bdt-delete{display:flex;align-items:center;gap:7px;margin-left:auto;padding:8px 10px;border:1px solid rgba(255,89,147,.24);border-radius:10px;background:rgba(255,70,134,.06);color:#ff78aa}.bdt-delete svg{width:15px}.bdt-delete span{font:800 10px var(--font);letter-spacing:.08em}
@media(max-width:640px){.board-receipt{width:calc(100% - 24px);grid-template-columns:36px 1fr;margin-top:12px;padding:14px;gap:11px}.board-receipt>span{width:36px;height:36px}.board-receipt-actions{grid-column:2;justify-content:flex-start}.board-decision{padding:12px;align-items:end}.board-decision>section{max-height:calc(100dvh - 24px);padding:21px;border-radius:24px}.board-decision header h2{font-size:24px}.board-decision-proof{grid-template-columns:1fr}.board-decision footer{grid-template-columns:1fr}.bdt-delete span{display:none}.nbp-errors{margin:0 0 14px}}

/* Open Comms — deliberate access, reversible archive, and durable outcomes. */
.comms-receipt{display:grid;grid-template-columns:42px minmax(0,1fr) auto;align-items:center;gap:14px;margin:14px 0;padding:16px 17px;border:1px solid rgba(75,235,163,.3);border-radius:17px;background:linear-gradient(110deg,rgba(14,53,48,.93),rgba(10,8,20,.95));box-shadow:0 16px 45px rgba(0,0,0,.25)}.comms-receipt>span{width:42px;height:42px;display:grid;place-items:center;border-radius:13px;color:#4beaa3;background:rgba(75,234,163,.1)}.comms-receipt>span svg{width:19px}.comms-receipt>div:nth-child(2){min-width:0}.comms-receipt small{display:block;color:#52eeb0;font-size:7px;font-weight:950;letter-spacing:.16em}.comms-receipt b{display:block;margin-top:4px;color:#fff;font-size:13px}.comms-receipt p{margin:3px 0 0;color:#8f8498;font-size:8px;line-height:1.45}.comms-receipt-actions{display:flex;align-items:center;gap:7px}.comms-receipt-actions button{min-height:32px;padding:0 10px;color:#69dfff;border:1px solid rgba(91,219,255,.18);border-radius:9px;background:rgba(58,202,255,.04);font:inherit;font-size:6.5px;font-weight:950;letter-spacing:.09em;cursor:pointer}.comms-receipt-actions button:last-child{width:32px;padding:0;color:#786d81;border-color:rgba(255,255,255,.08);background:rgba(255,255,255,.025)}.comms-receipt.archived,.comms-receipt.canceled,.comms-receipt.declined{border-color:rgba(255,93,148,.25);background:linear-gradient(110deg,rgba(67,19,43,.9),rgba(10,8,20,.95))}.comms-receipt.archived>span,.comms-receipt.canceled>span,.comms-receipt.declined>span{color:#ff79a9;background:rgba(255,75,137,.09)}.oc-chat>.comms-receipt{margin:12px 16px 0}.channel-invite>.comms-receipt{margin:0 0 10px}
.comms-decision{position:fixed;z-index:2250;inset:0;display:grid;place-items:center;padding:18px}.comms-decision-bg{position:absolute;inset:0;border:0;background:rgba(2,1,8,.84);backdrop-filter:blur(15px)}.comms-decision>section{position:relative;width:min(560px,100%);max-height:calc(100dvh - 36px);overflow:auto;padding:27px;border:1px solid rgba(86,218,255,.34);border-radius:25px;background:radial-gradient(circle at 88% 0,rgba(167,73,255,.14),transparent 31%),#090711;box-shadow:0 35px 110px rgba(0,0,0,.7)}.comms-decision header small{color:#59dcff;font-size:7px;font-weight:950;letter-spacing:.16em}.comms-decision header h2{margin:8px 0 7px;font-size:29px;line-height:1;letter-spacing:-.04em}.comms-decision header p{margin:0;color:#887d91;font-size:9px;line-height:1.5}.comms-decision article{display:grid;grid-template-columns:54px minmax(0,1fr);align-items:center;gap:13px;margin-top:20px;padding:15px;border:1px solid rgba(255,255,255,.09);border-radius:15px;background:rgba(255,255,255,.025)}.cd-mark{width:52px;height:52px;display:grid;place-items:center;border:1px solid rgba(89,220,255,.25);border-radius:14px;color:#5dddff;background:rgba(54,199,255,.05);font-size:20px;font-weight:950}.comms-decision article small{color:#5dddff;font-size:6px;font-weight:950;letter-spacing:.12em}.comms-decision article b{display:block;margin-top:4px;font-size:15px}.comms-decision article p{margin:3px 0 0;color:#746a7d;font-size:7px}.cd-members{margin-top:10px;padding:14px;border:1px solid rgba(255,255,255,.07);border-radius:14px}.cd-members>small{color:#6e6476;font-size:6px;font-weight:950;letter-spacing:.12em}.cd-members>div{display:flex;align-items:center;flex-wrap:wrap;gap:7px;margin-top:9px}.cd-members>div>span{margin-right:7px;color:#b7acbf;font-size:7px}.cd-members p{margin:0;color:#776d80;font-size:8px}.cd-access{display:grid;grid-template-columns:43px minmax(0,1fr);align-items:center;gap:12px;margin-top:20px;padding:16px;border:1px solid rgba(84,218,255,.14);border-radius:15px;background:rgba(54,199,255,.035)}.cd-access>span{width:42px;height:42px;display:grid;place-items:center;color:#5dddff;border-radius:12px;background:rgba(54,199,255,.06)}.cd-access svg{width:19px}.cd-access b{font-size:10px}.cd-access p{margin:4px 0 0;color:#7b7184;font-size:8px;line-height:1.45}.comms-decision footer{display:grid;grid-template-columns:.8fr 1.2fr;gap:8px;margin-top:20px}.comms-decision footer button{min-height:47px;padding:0 12px;color:#aaa0b2;border:1px solid rgba(255,255,255,.1);border-radius:12px;background:rgba(255,255,255,.025);font:inherit;font-size:7px;font-weight:950;letter-spacing:.09em}.comms-decision footer .primary{color:#05030a;border:0;background:linear-gradient(100deg,#5dddff,#b76aff)}
.cs-errors{margin-bottom:10px;padding:14px 16px;border:1px solid rgba(255,83,143,.32);border-radius:14px;background:rgba(91,20,48,.25)}.cs-errors>b{display:block;margin-bottom:6px;font-size:9px}.cs-errors span{display:flex;align-items:center;gap:7px;color:#ff91b7;font-size:7px}.cs-errors svg{width:13px}.cs-form>section.has-error{border-color:rgba(255,80,140,.34)}.cs-form>section.has-error .field{border-color:rgba(255,80,140,.42)}
@media(max-width:640px){.comms-receipt{grid-template-columns:36px minmax(0,1fr);padding:13px;gap:10px}.comms-receipt>span{width:36px;height:36px}.comms-receipt-actions{grid-column:2}.oc-chat>.comms-receipt{margin-inline:12px}.comms-decision{align-items:end;padding:10px}.comms-decision>section{max-height:calc(100dvh - 20px);padding:21px;border-radius:23px}.comms-decision header h2{font-size:25px}.comms-decision footer{grid-template-columns:1fr}.cd-members>div{max-height:150px;overflow:auto}}
.comms-picker{position:fixed;z-index:2260;inset:0;display:grid;place-items:center;padding:18px}.comms-picker-bg{position:absolute;inset:0;border:0;background:rgba(2,1,8,.84);backdrop-filter:blur(15px)}.comms-picker>section{position:relative;width:min(590px,100%);max-height:calc(100dvh - 36px);overflow:auto;padding:24px;border:1px solid rgba(87,218,255,.3);border-radius:24px;background:radial-gradient(circle at 88% 0,rgba(160,66,255,.14),transparent 31%),#090711;box-shadow:0 35px 110px rgba(0,0,0,.7)}.comms-picker header{display:grid;grid-template-columns:48px minmax(0,1fr);align-items:center;gap:13px}.comms-picker header>span{width:47px;height:47px;display:grid;place-items:center;color:#5dddff;border:1px solid rgba(84,218,255,.2);border-radius:14px;background:rgba(54,199,255,.05)}.comms-picker header svg{width:20px}.comms-picker header small{color:#5dddff;font-size:6px;font-weight:950;letter-spacing:.15em}.comms-picker h2{margin:5px 0 4px;font-size:24px;letter-spacing:-.035em}.comms-picker header p{margin:0;color:#81768a;font-size:8px;line-height:1.45}.cp-list{display:grid;grid-template-columns:1fr 1fr;gap:7px;margin-top:18px}.cp-list>button{min-width:0;display:grid;grid-template-columns:42px minmax(0,1fr) auto;align-items:center;gap:9px;padding:10px;color:#fff;border:1px solid rgba(255,255,255,.08);border-radius:13px;background:rgba(255,255,255,.02);font:inherit;text-align:left}.cp-list>button:hover{border-color:rgba(84,218,255,.3);background:rgba(54,199,255,.04)}.cp-list .avatar{width:42px;height:42px}.cp-list span{min-width:0;display:flex;flex-direction:column}.cp-list b{overflow:hidden;font-size:8px;white-space:nowrap;text-overflow:ellipsis}.cp-list small{overflow:hidden;margin-top:3px;color:#6e6477;font-size:5.5px;white-space:nowrap;text-overflow:ellipsis}.cp-list small i,.cp-review small i{display:inline-block;width:5px;height:5px;margin-right:4px;border-radius:50%;background:#4be78c}.cp-list strong{color:#a899e6;font-size:5.5px;letter-spacing:.07em}.cp-review{display:flex;align-items:center;gap:13px;margin-top:19px;padding:16px;border:1px solid rgba(84,218,255,.16);border-radius:15px;background:rgba(54,199,255,.035)}.cp-review>span{display:flex;flex-direction:column}.cp-review small{color:#4be99e;font-size:6px;font-weight:900;letter-spacing:.1em}.cp-review b{margin-top:4px;font-size:16px}.cp-review p{margin:3px 0 0;color:#776d80;font-size:8px}.cp-warning{display:grid;grid-template-columns:35px minmax(0,1fr);align-items:center;gap:10px;margin-top:9px;padding:13px;border:1px solid rgba(255,105,155,.18);border-radius:13px;background:rgba(255,65,129,.035)}.cp-warning>svg{width:22px;color:#ff7caa}.cp-warning b,.cp-warning small{display:block}.cp-warning b{font-size:8px}.cp-warning small{margin-top:3px;color:#7b7084;font-size:6.5px}.comms-picker footer{display:grid;grid-template-columns:.9fr 1.1fr;gap:8px;margin-top:18px}.comms-picker footer.single{grid-template-columns:1fr}.comms-picker footer button{min-height:45px;color:#a99eaf;border:1px solid rgba(255,255,255,.09);border-radius:11px;background:rgba(255,255,255,.025);font:inherit;font-size:6.5px;font-weight:950;letter-spacing:.08em}.comms-picker footer .primary{color:#05030a;border:0;background:linear-gradient(100deg,#5dddff,#b76aff)}.cp-empty{display:flex;flex-direction:column;align-items:center;margin-top:18px;padding:30px;border:1px dashed rgba(255,255,255,.09);border-radius:14px;color:#5dddff;text-align:center}.cp-empty>svg{width:22px}.cp-empty b{margin-top:10px;color:#c7bdce}.cp-empty p{margin:5px 0 0;color:#746a7d;font-size:7px}
@media(max-width:640px){.comms-picker{align-items:end;padding:10px}.comms-picker>section{max-height:calc(100dvh - 20px);padding:19px;border-radius:22px}.cp-list{grid-template-columns:1fr}.comms-picker footer{grid-template-columns:1fr}.cp-list>button{grid-template-columns:40px minmax(0,1fr) auto}}

/* Roster authority — protected removal, captain succession, and voluntary departure. */
.th-private button:disabled{opacity:.45;cursor:not-allowed}.team-roster-receipt{display:grid;grid-template-columns:43px minmax(0,1fr) auto;align-items:center;gap:13px;width:min(1160px,calc(100% - 28px));margin:12px auto;padding:15px 17px;border:1px solid rgba(74,235,164,.29);border-radius:17px;background:linear-gradient(110deg,rgba(14,53,48,.93),rgba(10,8,20,.95))}.team-roster-receipt>span{width:42px;height:42px;display:grid;place-items:center;color:#4beaa3;border-radius:13px;background:rgba(75,234,163,.1)}.team-roster-receipt>span svg{width:19px}.team-roster-receipt small{display:block;color:#52eeb0;font-size:6px;font-weight:950;letter-spacing:.15em}.team-roster-receipt b{display:block;margin-top:4px;font-size:12px}.team-roster-receipt p{margin:3px 0 0;color:#8f8498;font-size:7px}.team-roster-receipt>div:last-child{display:flex;gap:7px}.team-roster-receipt>div:last-child a,.team-roster-receipt>div:last-child button{min-height:32px;display:grid;place-items:center;padding:0 10px;color:#68dcff;border:1px solid rgba(91,219,255,.18);border-radius:9px;background:rgba(58,202,255,.04);font:inherit;font-size:6px;font-weight:950;letter-spacing:.09em}.team-roster-receipt>div:last-child button:last-child{width:32px;padding:0;color:#786d81}.team-roster-receipt.left,.team-roster-receipt.removed{border-color:rgba(255,93,148,.25);background:linear-gradient(110deg,rgba(67,19,43,.9),rgba(10,8,20,.95))}.team-roster-receipt.left>span,.team-roster-receipt.removed>span{color:#ff79a9;background:rgba(255,75,137,.09)}
.team-roster-decision{position:fixed;z-index:2310;inset:0;display:grid;place-items:center;padding:18px}.team-roster-decision>button{position:absolute;inset:0;border:0;background:rgba(2,1,8,.88);backdrop-filter:blur(16px)}.team-roster-decision>section{position:relative;width:min(650px,100%);max-height:calc(100dvh - 36px);overflow:auto;padding:27px;border:1px solid rgba(87,218,255,.34);border-radius:25px;background:radial-gradient(circle at 88% 0,rgba(160,66,255,.15),transparent 32%),#090711;box-shadow:0 35px 110px rgba(0,0,0,.72)}.team-roster-decision.danger>section{border-color:rgba(255,83,143,.34)}.trd-close{position:absolute;z-index:2;top:16px;right:16px;width:34px;height:34px;color:#8d8295;border:1px solid rgba(255,255,255,.1);border-radius:10px;background:rgba(255,255,255,.035);font:inherit;cursor:pointer}.team-roster-decision header>small{color:#5dddff;font-size:7px;font-weight:950;letter-spacing:.16em}.team-roster-decision h2{max-width:560px;margin:8px 0 7px;font-size:30px;letter-spacing:-.045em}.team-roster-decision header>p{margin:0;color:#887d91;font-size:9px;line-height:1.5}.trd-person{display:grid;grid-template-columns:62px minmax(0,1fr);align-items:center;gap:13px;margin-top:19px;padding:15px;border:1px solid rgba(255,255,255,.09);border-radius:15px;background:rgba(255,255,255,.025)}.trd-person .avatar{width:60px;height:60px}.trd-person>span{display:flex;flex-direction:column}.trd-person small{color:#5dddff;font-size:6px;font-weight:900;letter-spacing:.1em}.trd-person b{margin-top:4px;font-size:16px}.trd-person p{margin:4px 0 0;color:#7d7285;font-size:7px;line-height:1.45}.trd-team{position:relative;isolation:isolate;min-height:130px;overflow:hidden;display:flex;align-items:flex-end;margin-top:19px;padding:18px;border:1px solid rgba(255,255,255,.09);border-radius:15px;background:#0b0812}.trd-team>span{position:absolute;z-index:-2;inset:0;background-image:var(--trd-art);background-size:cover;background-position:center}.trd-team:after{content:"";position:absolute;z-index:-1;inset:0;background:linear-gradient(90deg,rgba(6,3,11,.97),rgba(6,3,11,.35))}.trd-team small{color:#5dddff;font-size:6px;font-weight:900;letter-spacing:.11em}.trd-team b{display:block;margin-top:4px;font-size:20px}.trd-team p{margin:3px 0 0;color:#a399aa;font-size:7px}.trd-effects{display:grid;grid-template-columns:repeat(3,1fr);gap:7px;margin-top:10px}.trd-effects>span{display:grid;grid-template-columns:24px 1fr;align-content:start;column-gap:7px;padding:13px;border:1px solid rgba(255,255,255,.075);border-radius:13px;background:rgba(255,255,255,.02)}.trd-effects svg{grid-row:1/3;width:18px;color:#ff76a6}.team-roster-decision:not(.danger) .trd-effects svg{color:#56dfa5}.trd-effects b{font-size:7px}.trd-effects small{margin-top:3px;color:#73697b;font-size:6px;line-height:1.35}.trd-boundary{display:grid;grid-template-columns:38px minmax(0,1fr);align-items:center;gap:10px;margin-top:10px;padding:13px;border:1px solid rgba(84,218,255,.14);border-radius:13px;background:rgba(54,199,255,.035)}.trd-boundary>svg{width:21px;color:#5dddff}.trd-boundary b,.trd-boundary small{display:block}.trd-boundary b{font-size:8px}.trd-boundary small{margin-top:3px;color:#776d80;font-size:6.5px}.team-roster-decision footer{display:grid;grid-template-columns:.8fr 1.2fr;gap:8px;margin-top:20px}.team-roster-decision footer.single{grid-template-columns:1fr}.team-roster-decision footer button{min-height:48px;color:#aaa0b2;border:1px solid rgba(255,255,255,.1);border-radius:12px;background:rgba(255,255,255,.025);font:inherit;font-size:7px;font-weight:950;letter-spacing:.09em}.team-roster-decision footer .primary{color:#05030a;border:0;background:linear-gradient(100deg,#5dddff,#b76aff)}.team-roster-decision footer .danger{color:#fff;border-color:rgba(255,79,145,.45);background:linear-gradient(100deg,#bd205d,#ff3c80)}.trd-candidates{display:grid;grid-template-columns:1fr 1fr;gap:7px;margin-top:19px}.trd-candidates>button{min-width:0;display:grid;grid-template-columns:46px minmax(0,1fr) auto;align-items:center;gap:10px;padding:11px;color:#fff;border:1px solid rgba(255,255,255,.08);border-radius:13px;background:rgba(255,255,255,.02);font:inherit;text-align:left}.trd-candidates .avatar{width:45px;height:45px}.trd-candidates span{min-width:0;display:flex;flex-direction:column}.trd-candidates small{color:#5dddff;font-size:5.5px;font-weight:900}.trd-candidates b{margin-top:3px;font-size:10px}.trd-candidates p{overflow:hidden;margin:3px 0 0;color:#756a7d;font-size:6px;white-space:nowrap;text-overflow:ellipsis}.trd-candidates strong{color:#aa9aec;font-size:5.5px;letter-spacing:.07em}
.report-choice-grid{display:grid;grid-template-columns:1fr 1fr;gap:7px;margin-top:12px}.report-choice-grid button{min-height:47px;display:grid;grid-template-columns:24px minmax(0,1fr);align-items:center;gap:8px;padding:10px 12px;color:#aaa0b3;border:1px solid rgba(255,255,255,.09);border-radius:12px;background:rgba(255,255,255,.02);font:inherit;text-align:left}.report-choice-grid button>svg,.report-choice-grid button>i{width:17px;height:17px;color:#56dfa5}.report-choice-grid button>i{display:block;border:1px solid rgba(255,255,255,.16);border-radius:50%}.report-choice-grid button span{font-size:8px;font-weight:800}.report-choice-grid button.on{color:#fff;border-color:rgba(89,221,255,.32);background:linear-gradient(100deg,rgba(52,196,245,.075),rgba(164,74,255,.06))}.report-target{display:flex;flex-direction:column;margin-top:19px;padding:15px;border:1px solid rgba(255,255,255,.09);border-radius:14px;background:rgba(255,255,255,.025)}.report-target small{color:#5dddff;font-size:6px;font-weight:900;letter-spacing:.11em}.report-target b{margin-top:4px;font-size:13px}.report-decision footer .danger:disabled{opacity:.42;cursor:not-allowed;filter:saturate(.35)}
@media(max-width:640px){.team-roster-receipt{grid-template-columns:36px minmax(0,1fr);width:calc(100% - 20px);padding:13px}.team-roster-receipt>span{width:36px;height:36px}.team-roster-receipt>div:last-child{grid-column:2}.team-roster-decision{align-items:end;padding:10px}.team-roster-decision>section{max-height:calc(100dvh - 20px);padding:21px;border-radius:23px}.team-roster-decision h2{font-size:25px}.team-roster-decision footer{grid-template-columns:1fr}.trd-person{grid-template-columns:51px 1fr}.trd-person .avatar{width:50px;height:50px}.trd-effects,.trd-candidates,.report-choice-grid{grid-template-columns:1fr}.trd-candidates>button{grid-template-columns:43px minmax(0,1fr) auto}.trd-candidates .avatar{width:42px;height:42px}}

/* Squad invitations — captain offer, recipient review, and explicit access outcomes. */
.tid-close{position:absolute;z-index:2;top:16px;right:16px;width:34px;height:34px;color:#8d8295;border:1px solid rgba(255,255,255,.1);border-radius:10px;background:rgba(255,255,255,.035);font:inherit;cursor:pointer}
.team-invite-send-receipt,.team-invite-receipt{display:grid;grid-template-columns:43px minmax(0,1fr) auto;align-items:center;gap:13px;margin:14px 0;padding:15px 17px;border:1px solid rgba(74,235,164,.29);border-radius:17px;background:linear-gradient(110deg,rgba(14,53,48,.93),rgba(10,8,20,.95))}.team-invite-receipt{width:min(1160px,calc(100% - 28px));margin:12px auto}.team-invite-send-receipt>span,.team-invite-receipt>span{width:42px;height:42px;display:grid;place-items:center;color:#4beaa3;border-radius:13px;background:rgba(75,234,163,.1)}.team-invite-send-receipt>span svg,.team-invite-receipt>span svg{width:19px}.team-invite-send-receipt small,.team-invite-receipt small{display:block;color:#52eeb0;font-size:6px;font-weight:950;letter-spacing:.15em}.team-invite-send-receipt b,.team-invite-receipt b{display:block;margin-top:4px;font-size:12px}.team-invite-send-receipt p,.team-invite-receipt p{margin:3px 0 0;color:#8f8498;font-size:7px}.team-invite-send-receipt>div:last-child,.team-invite-receipt>div:last-child{display:flex;gap:7px}.team-invite-send-receipt>div:last-child button,.team-invite-receipt>div:last-child button,.team-invite-receipt>div:last-child a{min-height:32px;display:grid;place-items:center;padding:0 10px;color:#68dcff;border:1px solid rgba(91,219,255,.18);border-radius:9px;background:rgba(58,202,255,.04);font:inherit;font-size:6px;font-weight:950;letter-spacing:.09em}.team-invite-send-receipt>div:last-child button:last-child,.team-invite-receipt>div:last-child button{width:32px;padding:0;color:#786d81}.team-invite-send-receipt.canceled,.team-invite-receipt.declined{border-color:rgba(255,93,148,.25);background:linear-gradient(110deg,rgba(67,19,43,.9),rgba(10,8,20,.95))}.team-invite-send-receipt.canceled>span,.team-invite-receipt.declined>span{color:#ff79a9;background:rgba(255,75,137,.09)}
.team-invite-compose,.team-invite-decision{position:fixed;z-index:2300;inset:0;display:grid;place-items:center;padding:18px}.team-invite-compose>button,.team-invite-decision>button{position:absolute;inset:0;border:0;background:rgba(2,1,8,.87);backdrop-filter:blur(16px)}.team-invite-compose>section,.team-invite-decision>section{position:relative;width:min(640px,100%);max-height:calc(100dvh - 36px);overflow:auto;padding:27px;border:1px solid rgba(87,218,255,.34);border-radius:25px;background:radial-gradient(circle at 88% 0,rgba(160,66,255,.15),transparent 32%),#090711;box-shadow:0 35px 110px rgba(0,0,0,.72)}.team-invite-compose header>small,.team-invite-decision header>small{color:#5dddff;font-size:7px;font-weight:950;letter-spacing:.16em}.team-invite-compose h2,.team-invite-decision h2{margin:8px 0 7px;font-size:30px;letter-spacing:-.045em}.team-invite-compose header>p,.team-invite-decision header>p{margin:0;color:#887d91;font-size:9px;line-height:1.5}.team-invite-compose footer,.team-invite-decision footer{display:grid;grid-template-columns:.8fr 1.2fr;gap:8px;margin-top:20px}.team-invite-compose footer.single{grid-template-columns:1fr}.team-invite-compose footer button,.team-invite-decision footer button{min-height:48px;color:#aaa0b2;border:1px solid rgba(255,255,255,.1);border-radius:12px;background:rgba(255,255,255,.025);font:inherit;font-size:7px;font-weight:950;letter-spacing:.09em}.team-invite-compose footer .primary,.team-invite-decision footer .primary{color:#05030a;border:0;background:linear-gradient(100deg,#5dddff,#b76aff)}.team-invite-compose footer .danger,.team-invite-decision footer .danger{color:#fff;border-color:rgba(255,79,145,.45);background:linear-gradient(100deg,#bd205d,#ff3c80)}.team-invite-compose footer .danger-outline,.team-invite-decision footer .pass{color:#ff94b8;border-color:rgba(255,78,141,.25);background:rgba(255,61,127,.055)}.team-invite-compose.danger>section,.team-invite-decision.decline>section{border-color:rgba(255,83,143,.34)}
.tic-player,.tic-manage,.tid-captain,.tcd-person{display:grid;grid-template-columns:62px minmax(0,1fr);align-items:center;gap:13px;margin-top:19px;padding:15px;border:1px solid rgba(255,255,255,.09);border-radius:15px;background:rgba(255,255,255,.025)}.tic-player .avatar,.tid-captain .avatar{width:60px;height:60px}.tic-player>span,.tid-captain>span,.tic-manage>div{display:flex;flex-direction:column}.tic-player small,.tid-captain small,.tic-manage small{color:#5dddff;font-size:6px;font-weight:900;letter-spacing:.1em}.tic-player b,.tid-captain b,.tic-manage b{margin-top:4px;font-size:16px}.tic-player p,.tid-captain p,.tic-manage p{margin:4px 0 0;color:#7d7285;font-size:7px;line-height:1.45}.tic-player.compact{margin-bottom:14px}.tic-manage .team-logo{width:60px;height:60px}.tic-team,.tid-team,.tid-offer{position:relative;isolation:isolate;min-height:110px;overflow:hidden;display:flex;align-items:flex-end;margin-top:10px;padding:17px;border:1px solid rgba(255,255,255,.09);border-radius:15px;background:#0b0812}.tic-team>span,.tid-team>span,.tid-offer>span{position:absolute;z-index:-2;inset:0;background-image:var(--tic-art,var(--tid-art));background-size:cover;background-position:center}.tic-team:after,.tid-team:after,.tid-offer:after{content:"";position:absolute;z-index:-1;inset:0;background:linear-gradient(90deg,rgba(6,3,11,.97),rgba(6,3,11,.35))}.tic-team small,.tid-team small,.tid-offer small{color:#5dddff;font-size:6px;font-weight:900;letter-spacing:.11em}.tic-team b,.tid-team b,.tid-offer b{display:block;margin-top:4px;font-size:18px}.tic-team p,.tid-team p,.tid-offer p{margin:3px 0 0;color:#a399aa;font-size:7px}.team-invite-compose label{display:flex;flex-direction:column;margin-top:10px}.team-invite-compose label>span{margin:0 0 6px 3px;color:#6f6577;font-size:6px;font-weight:900;letter-spacing:.11em}.team-invite-compose .field{margin:0;background:rgba(0,0,0,.22)}.team-invite-compose textarea{resize:vertical}.tic-boundary,.tid-boundary{display:grid;grid-template-columns:38px minmax(0,1fr);align-items:center;gap:10px;margin-top:10px;padding:13px;border:1px solid rgba(84,218,255,.14);border-radius:13px;background:rgba(54,199,255,.035)}.tic-boundary>svg,.tid-boundary>svg{width:21px;color:#5dddff}.tic-boundary b,.tic-boundary small,.tid-boundary b,.tid-boundary small{display:block}.tic-boundary b,.tid-boundary b{font-size:8px}.tic-boundary small,.tid-boundary small{margin-top:3px;color:#776d80;font-size:6.5px}.tic-errors{margin-top:12px;padding:12px;border:1px solid rgba(255,80,141,.3);border-radius:12px;background:rgba(92,20,48,.23)}.tic-errors span{display:flex;align-items:center;gap:6px;color:#ff92b7;font-size:7px}.tic-errors svg{width:13px}.tic-team-list{display:grid;gap:8px}.tic-team-list>button{position:relative;isolation:isolate;min-width:0;overflow:hidden;display:grid;grid-template-columns:52px minmax(0,1fr) auto;align-items:center;gap:12px;padding:13px;color:#fff;border:1px solid rgba(255,255,255,.09);border-radius:15px;background:#0b0812;font:inherit;text-align:left}.tic-team-list>button>i{position:absolute;z-index:-2;inset:0;background-image:var(--tic-art);background-size:cover;background-position:center;opacity:.35}.tic-team-list>button:after{content:"";position:absolute;z-index:-1;inset:0;background:linear-gradient(90deg,rgba(7,4,13,.97),rgba(7,4,13,.55))}.tic-team-list .team-logo{width:50px;height:50px}.tic-team-list span{min-width:0;display:flex;flex-direction:column}.tic-team-list small{color:#5dddff;font-size:5.5px;font-weight:900}.tic-team-list b{margin-top:4px;font-size:13px}.tic-team-list p{overflow:hidden;margin:3px 0 0;color:#827789;font-size:6.5px;white-space:nowrap;text-overflow:ellipsis}.tic-team-list strong{color:#ac9cf1;font-size:6px;letter-spacing:.08em}
.tid-captain{margin-bottom:10px}.tid-offer{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:end}.tid-offer>strong{position:relative;padding:11px 13px;border:1px solid rgba(92,220,255,.18);border-radius:11px;background:rgba(5,3,11,.65)}.tid-offer>strong small,.tid-offer>strong b{display:block}.tid-offer>strong b{font-size:11px}.team-invite-decision blockquote{margin:10px 0 0;padding:16px;border:1px solid rgba(214,86,185,.17);border-radius:14px;background:rgba(214,65,170,.035)}.team-invite-decision blockquote small{color:#f274bf;font-size:6px;font-weight:950;letter-spacing:.13em}.team-invite-decision blockquote p{margin:7px 0 0;color:#c7bdcb;font-size:9px;line-height:1.55}.tid-proof{display:grid;grid-template-columns:repeat(3,1fr);margin-top:10px;border:1px solid rgba(255,255,255,.075);border-radius:13px}.tid-proof>span{min-width:0;padding:12px;border-left:1px solid rgba(255,255,255,.07)}.tid-proof>span:first-child{border-left:0}.tid-proof small,.tid-proof b{display:block}.tid-proof small{color:#6e6476;font-size:5px;font-weight:900;letter-spacing:.1em}.tid-proof b{overflow:hidden;margin-top:4px;font-size:7px;white-space:nowrap;text-overflow:ellipsis}.tid-effects{display:grid;grid-template-columns:repeat(3,1fr);gap:7px;margin-top:10px}.tid-effects>span{display:grid;grid-template-columns:24px 1fr;align-content:start;column-gap:7px;padding:13px;border:1px solid rgba(255,255,255,.075);border-radius:13px;background:rgba(255,255,255,.02)}.tid-effects svg{grid-row:1/3;width:18px;color:#56dfa5}.team-invite-decision.decline .tid-effects svg{color:#ff76a6}.tid-effects b{font-size:7px}.tid-effects small{margin-top:3px;color:#73697b;font-size:6px;line-height:1.35}
@media(max-width:640px){.team-invite-send-receipt,.team-invite-receipt{grid-template-columns:36px minmax(0,1fr);padding:13px}.team-invite-receipt{width:calc(100% - 20px)}.team-invite-send-receipt>span,.team-invite-receipt>span{width:36px;height:36px}.team-invite-send-receipt>div:last-child,.team-invite-receipt>div:last-child{grid-column:2}.team-invite-compose,.team-invite-decision{align-items:end;padding:10px}.team-invite-compose>section,.team-invite-decision>section{max-height:calc(100dvh - 20px);padding:21px;border-radius:23px}.team-invite-compose h2,.team-invite-decision h2{font-size:25px}.team-invite-compose footer,.team-invite-decision footer{grid-template-columns:1fr}.tic-player,.tic-manage,.tid-captain{grid-template-columns:51px 1fr}.tic-player .avatar,.tid-captain .avatar,.tic-manage .team-logo{width:50px;height:50px}.tid-offer{grid-template-columns:1fr}.tid-offer>strong{margin-top:12px}.tid-proof,.tid-effects{grid-template-columns:1fr}.tid-proof>span{border-left:0;border-top:1px solid rgba(255,255,255,.07)}.tid-proof>span:first-child{border-top:0}.tic-team-list>button{grid-template-columns:45px minmax(0,1fr)}.tic-team-list .team-logo{width:44px;height:44px}.tic-team-list strong{display:none}}

/* Captain queue — deliberate roster access, full applicant context, durable outcomes. */
.th-apps .th-applicant-proof{display:grid;gap:0}
@media(max-width:700px){.th-ops{display:grid;grid-template-columns:1fr;overflow:visible;scroll-snap-type:none}.th-ops>*{min-width:0}}
.th-apps>header>span>p{max-width:620px;margin:7px 0 0;color:#7f7488;font-size:7px;line-height:1.5}.th-apps>div{align-items:start}.th-apps .th-applicant{display:block;padding:0;overflow:hidden;background:linear-gradient(145deg,rgba(255,255,255,.035),rgba(255,255,255,.012))}.th-applicant>header{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:15px;border-bottom:1px solid rgba(255,255,255,.075)}.th-applicant>header>a{min-width:0;display:flex;align-items:center;gap:11px;color:#fff}.th-applicant>header>a>span{min-width:0;display:flex;flex-direction:column}.th-applicant .avatar{width:51px;height:51px}.th-applicant header small{color:#50e4a5}.th-applicant header small i{display:inline-block;width:5px;height:5px;margin-right:4px;border-radius:50%;background:#4be99d;box-shadow:0 0 8px #4be99d}.th-applicant header b{margin-top:4px;font-size:12px}.th-applicant header em{overflow:hidden;margin-top:3px;color:#74697c;font-size:6.5px;font-style:normal;white-space:nowrap;text-overflow:ellipsis}.th-applicant header>strong{flex:0 0 auto;padding:8px 10px;color:#64ddff;border:1px solid rgba(92,220,255,.18);border-radius:9px;background:rgba(54,199,255,.04);font-size:6px;letter-spacing:.1em}.th-applicant blockquote{min-height:69px;margin:0;padding:16px;color:#d0c7d5;font-size:8px;line-height:1.55}.th-applicant-proof{display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid rgba(255,255,255,.07);border-bottom:1px solid rgba(255,255,255,.07)}.th-applicant-proof>span{min-width:0;padding:12px;border-left:1px solid rgba(255,255,255,.07)}.th-applicant-proof>span:first-child{border-left:0}.th-applicant-proof small,.th-applicant-proof b{display:block}.th-applicant-proof small{color:#675d6f;font-size:5px;font-weight:900;letter-spacing:.11em}.th-applicant-proof b{overflow:hidden;margin-top:4px;color:#aaa0b2;font-size:6.5px;white-space:nowrap;text-overflow:ellipsis}.th-applicant>footer{display:grid;grid-template-columns:.72fr 1.28fr;gap:7px;padding:11px}.th-applicant>footer a,.th-applicant>footer button{min-height:39px;display:grid;place-items:center;color:#9a8fa2;border:1px solid rgba(255,255,255,.09);border-radius:10px;background:rgba(255,255,255,.02);font:inherit;font-size:6px;font-weight:950;letter-spacing:.08em}.th-applicant>footer button{color:#08040d;border:0;background:linear-gradient(100deg,#63ddff,#b76bff);cursor:pointer}
.team-captain-receipt{display:grid;grid-template-columns:43px minmax(0,1fr) auto;align-items:center;gap:13px;width:min(1160px,calc(100% - 28px));margin:12px auto;padding:15px 17px;border:1px solid rgba(74,235,164,.29);border-radius:17px;background:linear-gradient(110deg,rgba(14,53,48,.93),rgba(10,8,20,.95))}.team-captain-receipt>span{width:42px;height:42px;display:grid;place-items:center;color:#4beaa3;border-radius:13px;background:rgba(75,234,163,.1)}.team-captain-receipt>span svg{width:19px}.team-captain-receipt small{display:block;color:#52eeb0;font-size:6px;font-weight:950;letter-spacing:.15em}.team-captain-receipt b{display:block;margin-top:4px;font-size:12px}.team-captain-receipt p{margin:3px 0 0;color:#8f8498;font-size:7px}.team-captain-receipt>div:last-child{display:flex;gap:7px}.team-captain-receipt>div:last-child a,.team-captain-receipt>div:last-child button{min-height:32px;display:grid;place-items:center;padding:0 10px;color:#68dcff;border:1px solid rgba(91,219,255,.18);border-radius:9px;background:rgba(58,202,255,.04);font:inherit;font-size:6px;font-weight:950;letter-spacing:.09em}.team-captain-receipt>div:last-child button{width:32px;padding:0;color:#786d81}.team-captain-receipt.passed{border-color:rgba(255,93,148,.25);background:linear-gradient(110deg,rgba(67,19,43,.9),rgba(10,8,20,.95))}.team-captain-receipt.passed>span{color:#ff79a9;background:rgba(255,75,137,.09)}
.team-captain-decision{position:fixed;z-index:2290;inset:0;display:grid;place-items:center;padding:18px}.team-captain-decision>button{position:absolute;inset:0;border:0;background:rgba(2,1,8,.87);backdrop-filter:blur(16px)}.team-captain-decision>section{position:relative;width:min(650px,100%);max-height:calc(100dvh - 36px);overflow:auto;padding:27px;border:1px solid rgba(87,218,255,.34);border-radius:25px;background:radial-gradient(circle at 88% 0,rgba(160,66,255,.15),transparent 32%),#090711;box-shadow:0 35px 110px rgba(0,0,0,.72)}.team-captain-decision header>small{color:#5dddff;font-size:7px;font-weight:950;letter-spacing:.16em}.team-captain-decision h2{margin:8px 0 7px;font-size:30px;letter-spacing:-.045em}.team-captain-decision header>p{margin:0;color:#887d91;font-size:9px;line-height:1.5}.tcd-profile{margin-top:19px;overflow:hidden;border:1px solid rgba(255,255,255,.09);border-radius:16px;background:rgba(255,255,255,.025)}.tcd-profile>a{display:grid;grid-template-columns:61px minmax(0,1fr) auto;align-items:center;gap:13px;padding:15px;color:#fff;border-bottom:1px solid rgba(255,255,255,.075)}.tcd-profile .avatar{width:60px;height:60px}.tcd-profile>a>span{min-width:0;display:flex;flex-direction:column}.tcd-profile>a small{color:#51e5a4;font-size:6px;font-weight:900;letter-spacing:.11em}.tcd-profile>a small i{display:inline-block;width:5px;height:5px;margin-right:4px;border-radius:50%;background:#4be99d}.tcd-profile>a b{margin-top:4px;font-size:16px}.tcd-profile>a p{overflow:hidden;margin:4px 0 0;color:#796f82;font-size:7px;white-space:nowrap;text-overflow:ellipsis}.tcd-profile>a strong{color:#68dcff;font-size:6px;letter-spacing:.08em}.tcd-profile>div{display:grid;grid-template-columns:1fr 1fr}.tcd-profile>div>span{min-width:0;padding:13px;border:solid rgba(255,255,255,.065);border-width:0 1px 1px 0}.tcd-profile>div>span:nth-child(even){border-right:0}.tcd-profile>div>span:nth-last-child(-n+2){border-bottom:0}.tcd-profile>div small,.tcd-profile>div b{display:block}.tcd-profile>div small{color:#6c6274;font-size:5.5px;font-weight:900;letter-spacing:.11em}.tcd-profile>div b{overflow:hidden;margin-top:4px;font-size:7.5px;white-space:nowrap;text-overflow:ellipsis}.tcd-note{margin:10px 0 0;padding:16px;border:1px solid rgba(214,86,185,.17);border-radius:14px;background:rgba(214,65,170,.035)}.tcd-note small{color:#f274bf;font-size:6px;font-weight:950;letter-spacing:.13em}.tcd-note p{margin:7px 0 0;color:#c7bdcb;font-size:9px;line-height:1.55}.tcd-boundary{display:grid;grid-template-columns:37px minmax(0,1fr);align-items:center;gap:10px;margin-top:10px;padding:13px;border:1px solid rgba(84,218,255,.14);border-radius:13px;background:rgba(54,199,255,.035)}.tcd-boundary>svg{width:21px;color:#5dddff}.tcd-boundary b,.tcd-boundary small{display:block}.tcd-boundary b{font-size:8px}.tcd-boundary small{margin-top:3px;color:#776d80;font-size:6.5px}.team-captain-decision footer{display:grid;grid-template-columns:.8fr 1.2fr;gap:8px;margin-top:20px}.team-captain-decision footer button{min-height:48px;color:#aaa0b2;border:1px solid rgba(255,255,255,.1);border-radius:12px;background:rgba(255,255,255,.025);font:inherit;font-size:7px;font-weight:950;letter-spacing:.09em}.team-captain-decision footer .primary{color:#05030a;border:0;background:linear-gradient(100deg,#5dddff,#b76aff)}.team-captain-decision footer .pass,.team-captain-decision footer .danger{color:#ff94b8;border-color:rgba(255,78,141,.25);background:rgba(255,61,127,.055)}.team-captain-decision.decline>section{border-color:rgba(255,83,143,.34)}.team-captain-decision footer .danger{color:#fff;background:linear-gradient(100deg,#bd205d,#ff3c80)}.tcd-person{display:grid;grid-template-columns:62px minmax(0,1fr);align-items:center;gap:13px;margin-top:19px;padding:15px;border:1px solid rgba(255,255,255,.09);border-radius:15px;background:rgba(255,255,255,.025)}.tcd-person .avatar{width:60px;height:60px}.tcd-person>span{display:flex;flex-direction:column}.tcd-person small{color:#5dddff;font-size:6px;font-weight:900}.tcd-person b{margin-top:4px;font-size:16px}.tcd-person p{margin:4px 0 0;color:#7d7285;font-size:7px;line-height:1.45}.tcd-effects{display:grid;grid-template-columns:repeat(3,1fr);gap:7px;margin-top:10px}.tcd-effects>span{display:grid;grid-template-columns:24px 1fr;align-content:start;column-gap:7px;padding:13px;border:1px solid rgba(255,255,255,.075);border-radius:13px;background:rgba(255,255,255,.02)}.tcd-effects svg{grid-row:1/3;width:18px;color:#56dfa5}.team-captain-decision.decline .tcd-effects svg{color:#ff76a6}.tcd-effects b{font-size:7px}.tcd-effects small{margin-top:3px;color:#73697b;font-size:6px;line-height:1.35}
@media(max-width:640px){.th-applicant-proof{grid-template-columns:1fr}.th-applicant-proof>span{border-left:0;border-top:1px solid rgba(255,255,255,.07)}.th-applicant-proof>span:first-child{border-top:0}.th-applicant>footer{grid-template-columns:1fr}.team-captain-receipt{grid-template-columns:36px minmax(0,1fr);width:calc(100% - 20px);padding:13px}.team-captain-receipt>span{width:36px;height:36px}.team-captain-receipt>div:last-child{grid-column:2}.team-captain-decision{align-items:end;padding:10px}.team-captain-decision>section{max-height:calc(100dvh - 20px);padding:21px;border-radius:23px}.team-captain-decision h2{font-size:25px}.tcd-profile>a{grid-template-columns:50px minmax(0,1fr)}.tcd-profile .avatar{width:50px;height:50px}.tcd-profile>a strong{display:none}.tcd-profile>div{grid-template-columns:1fr}.tcd-profile>div>span{border-width:0 0 1px}.tcd-profile>div>span:nth-last-child(-n+2){border-bottom:1px solid rgba(255,255,255,.065)}.tcd-profile>div>span:last-child{border-bottom:0}.tcd-effects{grid-template-columns:1fr}.team-captain-decision footer{grid-template-columns:1fr}.tcd-person{grid-template-columns:51px 1fr}.tcd-person .avatar{width:50px;height:50px}}

/* Room lifecycle decisions — leaving a live social space is deliberate and legible. */
.rc-receipt{display:grid;grid-template-columns:46px minmax(0,1fr) auto;align-items:center;gap:14px;margin:0 0 10px;padding:16px 18px;border:1px solid rgba(87,222,255,.28);border-radius:17px;background:linear-gradient(110deg,rgba(12,48,58,.91),rgba(8,5,14,.96));box-shadow:0 20px 60px rgba(0,0,0,.25)}.rc-receipt>span{width:44px;height:44px;display:grid;place-items:center;color:#5dddff;border:1px solid rgba(85,220,255,.16);border-radius:13px;background:rgba(64,204,255,.07)}.rc-receipt>span svg{width:19px}.rc-receipt small{display:block;color:#5dddff;font-size:6px;font-weight:950;letter-spacing:.15em}.rc-receipt b{display:block;margin-top:4px;font-size:12px}.rc-receipt p{margin:3px 0 0;color:#8d8295;font-size:7px;line-height:1.45}.rc-receipt>div:last-child{display:flex;gap:7px}.rc-receipt>div:last-child a,.rc-receipt>div:last-child button{min-height:34px;display:grid;place-items:center;padding:0 11px;color:#b6a7ec;border:1px solid rgba(161,94,255,.22);border-radius:9px;background:rgba(147,68,255,.045);font:inherit;font-size:5.5px;font-weight:950;letter-spacing:.08em}.rc-receipt>div:last-child button:last-child{width:34px;padding:0;color:#746a7c;border-color:rgba(255,255,255,.08);background:rgba(255,255,255,.02)}.rc-receipt.ended{border-color:rgba(255,95,151,.25);background:linear-gradient(110deg,rgba(66,17,41,.88),rgba(8,5,14,.96))}.rc-receipt.ended>span{color:#ff78a9;border-color:rgba(255,94,148,.17);background:rgba(255,63,132,.06)}
.room-decision{position:fixed;z-index:2300;inset:0;display:grid;place-items:center;padding:18px}.room-decision-bg{position:absolute;inset:0;border:0;background:rgba(2,1,8,.87);backdrop-filter:blur(16px)}.room-decision>section{position:relative;width:min(610px,100%);max-height:calc(100dvh - 36px);overflow:auto;padding:28px;border:1px solid rgba(255,91,149,.35);border-radius:25px;background:radial-gradient(circle at 90% 0,rgba(186,54,116,.14),transparent 33%),#090711;box-shadow:0 38px 120px rgba(0,0,0,.75)}.room-decision header small{color:#ff7aaa;font-size:6.5px;font-weight:950;letter-spacing:.16em}.room-decision h2{margin:8px 0 7px;font-size:30px;line-height:1.02;letter-spacing:-.04em}.room-decision header p{margin:0;color:#8d8295;font-size:8.5px;line-height:1.5}.room-decision article{position:relative;isolation:isolate;min-height:145px;overflow:hidden;display:flex;align-items:flex-end;margin-top:19px;padding:18px;border:1px solid rgba(255,255,255,.09);border-radius:16px;background:#08050d}.room-decision article>span{position:absolute;z-index:-2;inset:0;background-image:var(--rd-art);background-size:cover;background-position:center;opacity:.65}.room-decision article:after{content:"";position:absolute;z-index:-1;inset:0;background:linear-gradient(90deg,rgba(5,3,10,.97),rgba(5,3,10,.28)),linear-gradient(0deg,rgba(5,3,10,.85),transparent)}.room-decision article small{color:#5dddff;font-size:6px;font-weight:950;letter-spacing:.12em}.room-decision article b{display:block;margin-top:5px;font-size:21px}.room-decision article p{margin:4px 0 0;color:#9b90a3;font-size:7px}.room-impact{display:grid;grid-template-columns:repeat(3,1fr);overflow:hidden;margin-top:10px;border:1px solid rgba(255,255,255,.08);border-radius:13px}.room-impact>span{min-width:0;padding:13px;border-left:1px solid rgba(255,255,255,.07);background:rgba(255,255,255,.018)}.room-impact>span:first-child{border-left:0}.room-impact small{display:block;color:#726779;font-size:5px;font-weight:950;letter-spacing:.1em}.room-impact b{display:block;margin-top:5px;color:#b3a8ba;font-size:7px;line-height:1.4}.room-decision footer{display:grid;grid-template-columns:.85fr 1.15fr;gap:8px;margin-top:19px}.room-decision footer button{min-height:48px;color:#a89ead;border:1px solid rgba(255,255,255,.1);border-radius:12px;background:rgba(255,255,255,.025);font:inherit;font-size:6.5px;font-weight:950;letter-spacing:.09em}.room-decision footer .danger{color:#fff;border-color:rgba(255,79,145,.46);background:linear-gradient(100deg,#b91e5a,#ff4385)}
@media(max-width:700px){.rc-receipt{grid-template-columns:40px 1fr;padding:13px}.rc-receipt>span{width:39px;height:39px}.rc-receipt>div:last-child{grid-column:1/-1;display:grid;grid-template-columns:1fr 34px}.room-decision{padding:10px}.room-decision>section{max-height:calc(100dvh - 20px);padding:21px 17px;border-radius:21px}.room-decision h2{font-size:25px}.room-decision article{min-height:125px}.room-impact{grid-template-columns:1fr}.room-impact>span{border-left:0;border-top:1px solid rgba(255,255,255,.07)}.room-impact>span:first-child{border-top:0}.room-decision footer{grid-template-columns:1fr}.room-decision footer button{min-height:45px}}

/* No-rematch restoration — explicit scope before a safety boundary changes. */
.avoid-decision{position:fixed;z-index:2310;inset:0;display:grid;place-items:center;padding:18px}.avoid-decision>button{position:absolute;inset:0;border:0;background:rgba(2,1,8,.88);backdrop-filter:blur(16px)}.avoid-decision>section{position:relative;width:min(650px,100%);max-height:calc(100dvh - 36px);overflow:auto;padding:28px;border:1px solid rgba(84,220,255,.34);border-radius:26px;background:radial-gradient(circle at 88% 0,rgba(70,208,255,.13),transparent 32%),#090711;box-shadow:0 38px 120px rgba(0,0,0,.75)}.avoid-decision header small{color:#5dddff;font-size:6.5px;font-weight:950;letter-spacing:.16em}.avoid-decision h2{margin:8px 0 7px;font-size:31px;line-height:1.02;letter-spacing:-.045em}.avoid-decision header p{margin:0;color:#8d8295;font-size:8.5px;line-height:1.5}.avoid-decision article{position:relative;isolation:isolate;min-height:145px;overflow:hidden;display:grid;grid-template-columns:66px minmax(0,1fr);align-items:end;gap:13px;margin-top:19px;padding:18px;border:1px solid rgba(255,255,255,.09);border-radius:16px;background:#08050d}.avoid-decision article>span:first-child{position:absolute;z-index:-2;inset:0;background-image:var(--ad-art);background-size:cover;background-position:center;opacity:.55}.avoid-decision article:after{content:"";position:absolute;z-index:-1;inset:0;background:linear-gradient(90deg,rgba(5,3,11,.97),rgba(5,3,11,.33)),linear-gradient(0deg,rgba(5,3,11,.9),transparent)}.avoid-decision article .avatar{width:64px;height:64px;border:2px solid rgba(255,255,255,.18)}.avoid-decision article>div{display:flex;flex-direction:column}.avoid-decision article small{color:#5dddff;font-size:6px;font-weight:950;letter-spacing:.1em}.avoid-decision article b{margin-top:5px;font-size:21px}.avoid-decision article p{margin:3px 0 0;color:#8f8498;font-size:7px}.ad-impact{display:grid;grid-template-columns:repeat(3,1fr);overflow:hidden;margin-top:10px;border:1px solid rgba(255,255,255,.08);border-radius:13px}.ad-impact>span{display:grid;grid-template-columns:22px 1fr;column-gap:7px;padding:13px;border-left:1px solid rgba(255,255,255,.07);background:rgba(255,255,255,.018)}.ad-impact>span:first-child{border-left:0}.ad-impact svg{grid-row:1/3;width:17px;color:#5dddff}.ad-impact b{font-size:6.5px}.ad-impact p{margin:4px 0 0;color:#746a7d;font-size:6px;line-height:1.4}.avoid-decision aside{display:grid;grid-template-columns:28px 1fr;align-items:center;gap:9px;margin-top:10px;padding:11px 13px;border:1px solid rgba(76,222,166,.15);border-radius:11px;background:rgba(55,211,153,.035)}.avoid-decision aside>span{color:#4be7a4}.avoid-decision aside svg{width:18px}.avoid-decision aside p{margin:0;color:#82778b;font-size:7px}.avoid-decision aside b{color:#b8ebd1}.avoid-decision footer{display:grid;grid-template-columns:.85fr 1.15fr;gap:8px;margin-top:19px}.avoid-decision footer button{min-height:48px;color:#a89ead;border:1px solid rgba(255,255,255,.1);border-radius:12px;background:rgba(255,255,255,.025);font:inherit;font-size:6.5px;font-weight:950;letter-spacing:.09em}.avoid-decision footer .primary{color:#05030a;border:0;background:linear-gradient(100deg,#59ddff,#a96dff)}
@media(max-width:700px){.avoid-decision{padding:10px}.avoid-decision>section{max-height:calc(100dvh - 20px);padding:21px 17px;border-radius:22px}.avoid-decision h2{font-size:25px}.avoid-decision article{min-height:125px}.ad-impact{grid-template-columns:1fr}.ad-impact>span{border-left:0;border-top:1px solid rgba(255,255,255,.07)}.ad-impact>span:first-child{border-top:0}.avoid-decision footer{grid-template-columns:1fr}.avoid-decision footer button{min-height:45px}}

/* Schedule handoff — choose the person with enough context to make the next step easy. */
.sf-picker{max-width:1240px}.sf-head{display:flex;align-items:flex-end;justify-content:space-between;gap:30px;padding:30px 3px 27px}.sf-head>div:first-child{max-width:820px}.sf-head h1{margin:9px 0 10px;font-size:clamp(51px,6.8vw,82px);line-height:.82;letter-spacing:-.068em}.sf-head h1 span{color:transparent;-webkit-text-stroke:1px rgba(255,255,255,.52)}.sf-head p{max-width:690px;margin:0;color:#918698;font-size:9.5px;line-height:1.55}.sf-metrics{display:grid;grid-template-columns:repeat(3,91px);overflow:hidden;border:1px solid rgba(255,255,255,.09);border-radius:15px;background:rgba(7,4,13,.78)}.sf-metrics>span{display:flex;flex-direction:column;padding:15px;border-left:1px solid rgba(255,255,255,.07)}.sf-metrics>span:first-child{border-left:0}.sf-metrics b{font-size:22px;line-height:1}.sf-metrics small{margin-top:6px;color:#6d6375;font-size:5px;font-weight:950;letter-spacing:.1em}.sf-filter{display:grid;grid-template-columns:repeat(3,1fr);gap:7px;margin-bottom:9px}.sf-filter button{display:grid;grid-template-columns:31px 1fr;align-items:center;gap:10px;padding:13px;color:#726879;border:1px solid rgba(255,255,255,.08);border-radius:13px;background:rgba(7,4,13,.78);font:inherit;text-align:left}.sf-filter button>small{font-size:7px}.sf-filter button>span{display:flex;flex-direction:column}.sf-filter button b{font-size:7px}.sf-filter button em{margin-top:3px;color:#5d5565;font-size:5.5px;font-style:normal}.sf-filter button.on{color:#fff;border-color:rgba(84,218,255,.26);background:linear-gradient(90deg,rgba(57,203,255,.08),rgba(163,69,255,.05))}.sf-filter button.on>small{color:#5dddff}.sf-lead{position:relative;isolation:isolate;min-height:500px;overflow:hidden;border:1px solid rgba(89,218,255,.23);border-radius:27px;background:#08050e}.sf-lead-art,.sf-lead-grade{position:absolute;inset:0}.sf-lead-art{z-index:-3;background-image:var(--sf-art);background-size:cover;background-position:center 35%;opacity:.67}.sf-lead-grade{z-index:-2;background:linear-gradient(90deg,rgba(4,2,9,.96) 0%,rgba(4,2,9,.5) 55%,rgba(4,2,9,.84) 100%),linear-gradient(0deg,rgba(4,2,9,.94),transparent 65%)}.sf-lead-signal{position:absolute;top:23px;left:25px;display:flex;align-items:center;gap:7px;color:#fff;font-size:6px;font-weight:950;letter-spacing:.14em}.sf-lead-signal i{width:7px;height:7px;border-radius:50%;background:#49ea8b;box-shadow:0 0 11px #49ea8b}.sf-lead-copy{position:absolute;right:390px;bottom:34px;left:31px}.sf-lead-copy>small{color:#5dddff;font-size:6.5px;font-weight:950;letter-spacing:.15em}.sf-lead-copy h2{margin:6px 0 6px;font-size:clamp(47px,5.8vw,72px);line-height:.88;letter-spacing:-.06em}.sf-lead-copy>p{max-width:570px;margin:0;color:#afa4b5;font-size:9px}.sf-lead-copy>div{display:flex;align-items:center;gap:10px;margin-top:19px}.sf-lead-copy .avatar{width:41px;height:41px;border:2px solid rgba(255,255,255,.16)}.sf-lead-copy>div>span{display:flex;flex-direction:column}.sf-lead-copy>div b{font-size:6px;letter-spacing:.1em}.sf-lead-copy>div em{margin-top:3px;color:#756b7e;font-size:6.5px;font-style:normal}.sf-lead>aside{position:absolute;right:24px;bottom:24px;width:340px;padding:21px;border:1px solid rgba(255,255,255,.1);border-radius:17px;background:rgba(7,4,13,.84);backdrop-filter:blur(18px)}.sf-lead aside>small{color:#b56cff;font-size:5.5px;font-weight:950;letter-spacing:.13em}.sf-lead aside>b{display:block;margin-top:6px;font-size:17px;line-height:1.15}.sf-lead aside>p{margin:7px 0 0;color:#81768a;font-size:7px;line-height:1.5}.sf-lead aside>button{width:100%;min-height:43px;margin-top:16px;color:#05030a;border:0;border-radius:10px;background:linear-gradient(100deg,#59dcff,#b668ff);font:inherit;font-size:6px;font-weight:950;letter-spacing:.07em}.sf-lead aside>a{display:block;margin-top:10px;color:#a89ae8;font-size:6px;font-weight:900;text-align:center;letter-spacing:.08em}.sf-list{margin-top:10px;padding:22px;border:1px solid rgba(255,255,255,.08);border-radius:21px;background:rgba(7,4,13,.84)}.sf-list>header{display:flex;align-items:flex-end;justify-content:space-between;margin-bottom:15px}.sf-list>header small{color:#5dddff;font-size:6px;font-weight:950;letter-spacing:.14em}.sf-list>header h2{margin:4px 0 0;font-size:25px}.sf-list>header>b{width:31px;height:31px;display:grid;place-items:center;color:#5dddff;border:1px solid rgba(83,217,255,.17);border-radius:9px;background:rgba(54,199,255,.04);font-size:10px}.sf-list>div{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.sf-person{position:relative;isolation:isolate;min-height:295px;overflow:hidden;display:flex;flex-direction:column;align-items:flex-start;padding:15px;border:1px solid rgba(255,255,255,.08);border-radius:15px;background:#08050e}.sf-person-art{position:absolute;z-index:-2;inset:0;background-image:linear-gradient(0deg,rgba(5,3,11,.99),rgba(5,3,11,.25)),var(--sf-art);background-size:cover;background-position:center;opacity:.58}.sf-person-top{width:100%;display:flex;align-items:center;justify-content:space-between}.sf-person-top>span{display:flex;align-items:center;gap:5px;color:#80758a;font-size:5px;font-weight:900;letter-spacing:.09em}.sf-person-top i{width:5px;height:5px;border-radius:50%;background:#665d6e}.sf-person-top span.on{color:#c8ffe0}.sf-person-top span.on i{background:#4aea8c;box-shadow:0 0 8px #4aea8c}.sf-person-top>a{color:#aa9be7;font-size:5px;font-weight:900}.sf-person>.avatar{width:55px;height:55px;margin-top:36px;border:2px solid rgba(255,255,255,.15)}.sf-person h3{margin:8px 0 3px;font-size:15px}.sf-person>p{height:30px;margin:0;color:#857a8d;font-size:7px;line-height:1.45;overflow:hidden}.sf-person>div:nth-last-of-type(1){width:100%;margin-top:auto;padding:10px 0;border-top:1px solid rgba(255,255,255,.07)}.sf-person>div small,.sf-person>div b{display:block}.sf-person>div small{color:#61586a;font-size:5px;font-weight:900;letter-spacing:.1em}.sf-person>div b{overflow:hidden;margin-top:4px;color:#b4a9bb;font-size:7px;white-space:nowrap;text-overflow:ellipsis}.sf-person>button{width:100%;padding:10px;color:#a99bea;border:1px solid rgba(160,94,255,.19);border-radius:9px;background:rgba(146,72,255,.04);font:inherit;font-size:5.5px;font-weight:950;letter-spacing:.07em}.sf-none{display:grid;grid-template-columns:60px minmax(0,1fr) auto;align-items:center;gap:17px;padding:30px;border:1px dashed rgba(83,217,255,.2);border-radius:20px;background:rgba(7,4,13,.82)}.sf-none>span{width:56px;height:56px;display:grid;place-items:center;color:#5dddff;border-radius:15px;background:rgba(54,200,255,.06)}.sf-none small{color:#5dddff;font-size:6px;font-weight:900;letter-spacing:.12em}.sf-none h2{margin:4px 0;font-size:22px}.sf-none p{margin:0;color:#776c80;font-size:7.5px}.sf-none button{padding:12px 14px;color:#05030a;border:0;border-radius:9px;background:linear-gradient(100deg,#59dcff,#b668ff);font:inherit;font-size:6px;font-weight:950}.sf-foot{display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:12px;margin-top:10px;padding:15px 17px;border:1px solid rgba(255,255,255,.08);border-radius:14px;background:rgba(7,4,13,.82)}.sf-foot>span{display:flex;align-items:center;gap:7px;color:#c2b6c9;font-size:7px}.sf-foot svg{width:16px;color:#5dddff}.sf-foot p{margin:0;color:#6f6478;font-size:6.5px}.sf-foot a{color:#a99ae9;font-size:6px;font-weight:950;letter-spacing:.08em}
@media(max-width:760px){.sf-picker{max-width:100%;padding-inline:13px;overflow:hidden}.sf-head{align-items:flex-start;padding:21px 3px 19px}.sf-head h1{font-size:52px}.sf-metrics{display:none}.sf-filter{display:flex;overflow-x:auto;scroll-snap-type:x mandatory}.sf-filter button{min-width:57vw;scroll-snap-align:start}.sf-lead{min-height:570px}.sf-lead-grade{background:linear-gradient(0deg,rgba(4,2,9,.98) 0%,rgba(4,2,9,.55) 72%,rgba(4,2,9,.18))}.sf-lead-copy{right:20px;bottom:218px;left:20px}.sf-lead-copy h2{font-size:51px}.sf-lead>aside{right:14px;bottom:14px;left:14px;width:auto}.sf-list{padding:15px}.sf-list>div{display:flex;overflow-x:auto;scroll-snap-type:x mandatory}.sf-person{min-width:80vw;scroll-snap-align:start}.sf-none{grid-template-columns:50px 1fr}.sf-none>button{grid-column:1/-1}.sf-foot{grid-template-columns:1fr auto}.sf-foot p{grid-column:1/-1;grid-row:2}.sf-foot a{grid-column:2;grid-row:1}}
@media(max-width:430px){.sf-head h1{font-size:44px}.sf-head p{font-size:8.5px}.sf-lead{min-height:600px}.sf-lead-copy{bottom:236px}.sf-lead-copy h2{font-size:44px}.sf-lead>aside{padding:17px}.sf-person{min-width:84vw}}

/* Player Card publish review — one card changes every social and matching surface. */
.profile-save-review{position:fixed;z-index:2320;inset:0;display:grid;place-items:center;padding:18px}.profile-save-review>button{position:absolute;inset:0;border:0;background:rgba(2,1,8,.89);backdrop-filter:blur(17px)}.profile-save-review>section{position:relative;width:min(680px,100%);max-height:calc(100dvh - 36px);overflow:auto;padding:28px;border:1px solid rgba(86,220,255,.34);border-radius:26px;background:radial-gradient(circle at 88% 0,rgba(78,211,255,.13),transparent 31%),radial-gradient(circle at 0 100%,rgba(172,74,255,.09),transparent 30%),#090711;box-shadow:0 40px 125px rgba(0,0,0,.76)}.profile-save-review header small{color:#5dddff;font-size:6.5px;font-weight:950;letter-spacing:.16em}.profile-save-review h2{margin:8px 0 7px;font-size:31px;line-height:1.02;letter-spacing:-.045em}.profile-save-review header p{margin:0;color:#8d8295;font-size:8.5px;line-height:1.5}.profile-save-review article{position:relative;isolation:isolate;min-height:150px;overflow:hidden;display:grid;grid-template-columns:68px minmax(0,1fr);align-items:end;gap:14px;margin-top:19px;padding:18px;border:1px solid rgba(255,255,255,.09);border-radius:16px;background:#08050d}.profile-save-review article>span{position:absolute;z-index:-2;inset:0;background-image:var(--psr-art);background-size:cover;background-position:center;opacity:.58}.profile-save-review article:after{content:"";position:absolute;z-index:-1;inset:0;background:linear-gradient(90deg,rgba(5,3,11,.97),rgba(5,3,11,.32)),linear-gradient(0deg,rgba(5,3,11,.9),transparent)}.profile-save-review article>.avatar{width:66px;height:66px;border:2px solid rgba(255,255,255,.2)}.profile-save-review article>div:last-child{display:flex;flex-direction:column}.profile-save-review article small{color:#5dddff;font-size:6px;font-weight:950;letter-spacing:.11em}.profile-save-review article b{margin-top:4px;font-size:22px}.profile-save-review article p{margin:3px 0 0;color:#9a8fa2;font-size:7px}.psr-changes{display:grid;grid-template-columns:repeat(4,1fr);overflow:hidden;margin-top:10px;border:1px solid rgba(255,255,255,.08);border-radius:12px}.psr-changes>span{display:flex;flex-direction:column;padding:11px;border-left:1px solid rgba(255,255,255,.07);background:rgba(255,255,255,.015)}.psr-changes>span:first-child{border-left:0}.psr-changes i{color:#62596a;font-size:5px;font-weight:950;font-style:normal;letter-spacing:.1em}.psr-changes b{margin-top:4px;color:#877c90;font-size:6.5px}.psr-changes span.on i{color:#5dddff}.psr-changes span.on b{color:#fff}.psr-reach{display:grid;grid-template-columns:repeat(4,1fr);gap:6px;margin-top:10px}.psr-reach>span{display:grid;grid-template-columns:24px 1fr;column-gap:7px;padding:11px;border:1px solid rgba(255,255,255,.075);border-radius:11px;background:rgba(255,255,255,.018)}.psr-reach svg{grid-row:1/3;width:17px;color:#5dddff}.psr-reach b{font-size:6.5px}.psr-reach small{margin-top:3px;color:#6e6477;font-size:5.5px;line-height:1.35}.psr-safe,.psr-warning{display:grid;grid-template-columns:29px 1fr;align-items:center;gap:10px;margin-top:10px;padding:12px 13px;border:1px solid rgba(71,225,163,.16);border-radius:12px;background:rgba(54,211,153,.035)}.psr-safe>span,.psr-warning>span{color:#4ce6a4}.psr-safe svg,.psr-warning svg{width:19px}.psr-safe p,.psr-warning p{margin:0;color:#7e7387;font-size:7px;line-height:1.45}.psr-safe b{color:#b9e9d1}.psr-warning{align-items:start;border-color:rgba(255,91,148,.24);background:rgba(255,53,124,.045)}.psr-warning>span{color:#ff79a9}.psr-warning>div{display:flex;flex-direction:column}.psr-warning small{color:#ff79a9;font-size:5.5px;font-weight:950;letter-spacing:.11em}.psr-warning b{margin-top:4px;font-size:8px}.psr-warning p{margin-top:3px}.profile-save-review footer{display:grid;grid-template-columns:.85fr 1.15fr;gap:8px;margin-top:19px}.profile-save-review footer button{min-height:48px;color:#a89ead;border:1px solid rgba(255,255,255,.1);border-radius:12px;background:rgba(255,255,255,.025);font:inherit;font-size:6.5px;font-weight:950;letter-spacing:.09em}.profile-save-review footer .primary{color:#05030a;border:0;background:linear-gradient(100deg,#59ddff,#b66aff)}
@media(max-width:700px){.profile-save-review{padding:10px}.profile-save-review>section{max-height:calc(100dvh - 20px);padding:21px 17px;border-radius:22px}.profile-save-review h2{font-size:25px}.profile-save-review article{min-height:125px}.psr-changes{grid-template-columns:1fr 1fr}.psr-changes>span:nth-child(3){border-left:0;border-top:1px solid rgba(255,255,255,.07)}.psr-changes>span:nth-child(4){border-top:1px solid rgba(255,255,255,.07)}.psr-reach{grid-template-columns:1fr 1fr}.profile-save-review footer{grid-template-columns:1fr}.profile-save-review footer button{min-height:45px}}

/* ========================================================================== */
/* LEGIBILITY CONTRACT — OGC is a social app, not a wall-sized control panel. */
/* New command surfaces previously used 5–9px type to fit an ultra-wide mockup.*/
/* Keep display headlines expressive, but make every decision and action       */
/* comfortably readable on a phone, laptop, and large desktop monitor.         */
/* ========================================================================== */
#app :is(p,em,label,input,textarea,select){font-size:14px;line-height:1.5}
#app li{font-size:14px;line-height:1.5}
#app small{font-size:12px;line-height:1.4}
#app :is(button,a){font-size:13px}
#app :is(b,strong){font-size:max(14px,100%)}
#app span{font-size:max(13px,100%)}
#app :is(h1,h2,h3,h4,h5,h6) span{font-size:inherit}
#app .vtick{font-size:10px}
#app .yp-identity h1 .vtick{font-size:13px}
#app .csig-review-ok{font-size:13px}
#app .csig-empty{font-size:13px}
#app button{min-height:42px}
#app :is(input,textarea,select){min-height:44px}
#app .hc-date :is(b,i){font-size:12px!important}
#app .hc-thread-label,#app :is(.pd-kicker,.rb-kicker,.bb-kicker,.sl-kicker){font-size:12px}
#app .stc-ring i{font-size:13px}
#app .pd-games .chip{font-size:12px!important}
#app .rr-filters button i,#app .rr-game-top i,#app .oc-tabs i,#app .yp-account i{font-size:12px}
#app .live-signals h3{font-size:14px}
#app :is(.re-kicker,.sd-kicker,.sd-card-kicker,.csig-kicker){font-size:12px}
#app .brd-tabs i,#app .csig-ladder i,#app .pe-locked i{font-size:12px}
#app .lr-tabs .seg button{min-height:42px!important;font-size:13px!important}

/* Comms decisions are mounted beside the screen node, so they need the same
   readable type contract explicitly instead of the old wall-mockup scale. */
.comms-receipt.passed{border-color:rgba(255,93,148,.25);background:linear-gradient(110deg,rgba(67,19,43,.9),rgba(10,8,20,.95))}
.comms-receipt.passed>span{color:#ff79a9;background:rgba(255,75,137,.09)}
.comms-decision.danger>section{border-color:rgba(255,83,143,.4);background:radial-gradient(circle at 88% 0,rgba(255,55,128,.12),transparent 31%),#090711}
.comms-decision footer .danger{color:#fff;border-color:rgba(255,79,145,.48);background:linear-gradient(100deg,#b91f5a,#ff4385)}
.comms-decision header small{font-size:11px}.comms-decision header p{font-size:14px}.comms-decision article small{font-size:10px}.comms-decision article b{font-size:17px}.comms-decision article p,.cd-access p,.cd-members p{font-size:13px}.cd-access b{font-size:15px}.cd-members>small{font-size:10px}.cd-members>div>span{font-size:12px}.comms-decision footer button{min-height:50px;font-size:12px}

@media(min-width:980px){
  #app-frame{max-width:1540px}
  #app{margin-left:220px}
  #tabbar{left:max(20px,calc(50vw - 770px));width:190px}
  .composer{left:max(220px,calc(50vw - 550px));right:max(0px,calc(50vw - 770px))}
  
  #app .screen{width:min(1320px,100%);margin-inline:auto}
}

@media(max-width:700px){
  body{font-size:16px}
  #app :is(p,em,label,input,textarea,select){font-size:15px}
  #app li{font-size:15px}
  #app small{font-size:12.5px}
  #app :is(button,a){font-size:14px}
  #app :is(b,strong){font-size:max(15px,100%)}
  #app span{font-size:max(14px,100%)}
  #app :is(h1,h2,h3,h4,h5,h6) span{font-size:inherit}
  #app button{min-height:46px}
  #app .hc-date :is(b,i){font-size:13px!important}
  #app .hc-thread-label,#app :is(.pd-kicker,.rb-kicker,.bb-kicker,.sl-kicker){font-size:12.5px}
  #app .stc-ring i{font-size:14px}
  #app .pd-games .chip{font-size:12.5px!important}
  #app .rr-filters button i,#app .rr-game-top i,#app .oc-tabs i,#app .yp-account i{font-size:12.5px}
  #app .live-signals h3{font-size:15px}
  #app :is(.re-kicker,.sd-kicker,.sd-card-kicker,.csig-kicker){font-size:12.5px}
  #app .brd-tabs i,#app .csig-ladder i,#app .pe-locked i{font-size:12.5px}
  #app .lr-tabs .seg button{min-height:46px!important;font-size:14px!important}
  #app .hc-metrics{grid-template-columns:repeat(2,minmax(0,1fr))}
  #app .hc-metrics a{align-items:center;min-height:64px;padding:11px 15px;flex-direction:row;gap:9px}
  #app .hc-metrics span{font-size:12px;line-height:1.2;white-space:normal}
  .comms-decision header p{font-size:15px}.comms-decision article p,.cd-access p,.cd-members p{font-size:14px}.comms-decision footer button{min-height:50px;font-size:13px}
  .oc-composer{bottom:calc(var(--tabbar-h) + var(--safe-b) + var(--vvb,0px) + 18px)}
  body.has-betabar .oc-composer{bottom:calc(var(--fb-h) + var(--tabbar-h) + var(--safe-b) + var(--vvb,0px) + 18px)}
}

/* A denied or unresolved camera prompt must read as a deliberate private state,
   not collide with the preview-only badge in the upper-left corner. */
.rs-stage .stream-wait.rs-wait-error{max-width:none;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:6px;padding:72px 24px;text-align:center}
.rs-stage .stream-wait.rs-wait-error span{max-width:320px}

/* Invite actions end in a durable receipt, not a transient one-line status. */
.iv-state.show{max-height:110px;padding:11px 12px;display:flex;align-items:flex-start;gap:10px;border-radius:11px;background:linear-gradient(135deg,rgba(52,211,153,.075),rgba(56,189,248,.035));border-color:rgba(52,211,153,.2);box-shadow:0 10px 30px rgba(0,0,0,.16)}
.iv-state>span{width:30px;height:30px;display:grid;place-items:center;flex:0 0 auto;border-radius:9px;color:#bfffe0;background:rgba(52,211,153,.1)}
.iv-state>span svg{width:15px}
.iv-state>div{display:flex;min-width:0;flex-direction:column}
.iv-state small{color:#83dab0;font-size:5.5px;font-weight:950;letter-spacing:.12em}
.iv-state b{margin-top:2px;color:#e9fff4;font-size:8px}
.iv-state p{margin:3px 0 0;color:#8c9e96;font-size:6.5px;line-height:1.45}
.iv-state.manual{background:linear-gradient(135deg,rgba(255,45,155,.08),rgba(168,85,247,.04));border-color:rgba(255,91,160,.2)}
.iv-state.manual>span{color:#ffc4dc;background:rgba(255,45,155,.1)}
.iv-state.manual small{color:#ff96c1}

/* New-player launch: full-size onboarding that matches the Home command center. */
body:has(.onb-entry),body:has(.onb-wizard){background:#05030a!important}
.onb-entry,.onb-wizard{position:relative;isolation:isolate;min-height:100dvh;color:#fff;background:radial-gradient(circle at 78% 18%,rgba(168,85,247,.17),transparent 34%),radial-gradient(circle at 12% 82%,rgba(56,189,248,.09),transparent 34%),rgba(5,3,10,.92)}
.onb-entry{overflow:hidden;padding:28px clamp(24px,5vw,76px) 34px;display:flex;flex-direction:column}
.onb-entry-grid{position:absolute;z-index:-3;inset:0;background-image:linear-gradient(rgba(168,85,247,.035) 1px,transparent 1px),linear-gradient(90deg,rgba(168,85,247,.035) 1px,transparent 1px);background-size:46px 46px;mask-image:radial-gradient(circle at 55% 42%,#000,transparent 80%)}
.onb-entry::after{content:"PLAYER";position:absolute;z-index:-2;right:-.03em;bottom:-.27em;color:transparent;-webkit-text-stroke:1px rgba(255,255,255,.025);font-size:min(27vw,390px);font-weight:950;letter-spacing:-.09em}
.onb-entry>header,.onw-top{display:flex;align-items:center;justify-content:space-between;gap:18px}
.onb-entry>header img,.onw-top img{width:170px;filter:drop-shadow(0 0 15px rgba(56,189,248,.22))}
.onb-entry>header span,.onw-top>span{color:#9b8ca6;font-size:11px;font-weight:950;letter-spacing:.16em}
.onb-entry-layout{width:min(1320px,100%);margin:auto;display:grid;grid-template-columns:minmax(0,1.15fr) minmax(350px,.72fr);gap:clamp(40px,7vw,110px);align-items:center}
.onb-entry-copy>small{display:flex;align-items:center;gap:8px;color:#67d9ff;font-size:11px;font-weight:900;letter-spacing:.14em}.onb-entry-copy>small i{width:8px;height:8px;border-radius:50%;background:#48e39e;box-shadow:0 0 13px #48e39e}
.onb-entry-copy h1{margin:16px 0 0;font-size:clamp(68px,8vw,118px);line-height:.79;letter-spacing:-.085em}.onb-entry-copy h1 span{color:transparent;-webkit-text-stroke:1px rgba(255,255,255,.55);text-shadow:0 0 36px rgba(255,45,155,.16)}
.onb-entry-copy>p{max-width:760px;margin:24px 0 0;color:#a69aac;font-size:17px;line-height:1.65}
.onb-entry-actions{max-width:710px;margin-top:28px;display:grid;grid-template-columns:1.25fr .9fr;gap:12px}.onb-entry-actions button{min-height:80px;padding:16px 18px;display:flex;flex-direction:column;align-items:flex-start;justify-content:center;border-radius:16px;color:#fff;background:rgba(12,8,20,.78);border:1px solid rgba(255,255,255,.12);font:inherit;text-align:left;cursor:pointer}.onb-entry-actions button:first-child{background:linear-gradient(135deg,#ff2d9b,#8e48ee);border-color:rgba(255,126,201,.7);box-shadow:0 18px 45px rgba(255,45,155,.18)}.onb-entry-actions b{font-size:13px;letter-spacing:.08em}.onb-entry-actions small{margin-top:6px;color:rgba(255,255,255,.68);font-size:12px;line-height:1.35}
.onb-entry-proof{padding:16px;border-radius:28px;background:linear-gradient(150deg,rgba(18,9,28,.94),rgba(7,4,13,.96));border:1px solid rgba(168,85,247,.28);box-shadow:0 30px 80px rgba(0,0,0,.38)}
.onb-entry-card{position:relative;overflow:hidden;min-height:500px;padding:28px;display:flex;flex-direction:column;justify-content:flex-end;border-radius:20px;background:radial-gradient(circle at 50% 17%,rgba(255,45,155,.18),transparent 34%),linear-gradient(165deg,#17081f,#07040c 72%);border:1px solid rgba(255,255,255,.11)}.onb-entry-card::before{content:"?";position:absolute;top:70px;left:50%;transform:translateX(-50%);color:transparent;-webkit-text-stroke:1px rgba(255,255,255,.07);font-size:180px;font-weight:950}.oec-status{position:absolute;top:18px;left:18px;display:flex;align-items:center;gap:8px;color:#bdfde0;font-size:10px;font-weight:900;letter-spacing:.12em}.oec-status i{width:7px;height:7px;border-radius:50%;background:#48e39e;box-shadow:0 0 10px #48e39e}.oec-avatar{width:62px;height:62px;display:grid;place-items:center;margin-bottom:18px;border-radius:18px;color:#fff;background:linear-gradient(135deg,#ff2d9b,#714cff);font-size:24px;font-weight:950;box-shadow:0 0 28px rgba(168,85,247,.34)}.onb-entry-card>small{color:#65d7ff;font-size:10px;font-weight:950;letter-spacing:.15em}.onb-entry-card h2{margin:7px 0 0;font-size:34px;letter-spacing:-.055em}.onb-entry-card>p{margin:9px 0 20px;color:#978a9f;font-size:14px;line-height:1.5}.onb-entry-card>div:last-child{display:grid;grid-template-columns:1fr;gap:8px}.onb-entry-card>div:last-child span{padding:12px 13px;display:flex;align-items:center;justify-content:space-between;border-radius:11px;background:rgba(255,255,255,.035);border:1px solid rgba(255,255,255,.08)}.onb-entry-card>div:last-child b{font-size:10px;letter-spacing:.1em}.onb-entry-card>div:last-child em{color:#807486;font-size:11px;font-style:normal}
.onb-entry-pillars{width:min(1320px,100%);margin:26px auto 0;display:grid;grid-template-columns:repeat(3,1fr);gap:10px}.onb-entry-pillars article{position:relative;padding:18px;display:grid;grid-template-columns:38px 34px 1fr;align-items:center;gap:13px;border-radius:16px;background:rgba(9,6,16,.72);border:1px solid rgba(255,255,255,.09)}.onb-entry-pillars article>span{position:absolute;top:10px;right:12px;color:#635b68;font-size:10px;font-weight:950}.onb-entry-pillars svg{width:27px;color:#64d8ff}.onb-entry-pillars article:nth-child(2) svg{color:#ff6fb7}.onb-entry-pillars article:nth-child(3) svg{color:#70e8b1}.onb-entry-pillars b{font-size:14px}.onb-entry-pillars p{margin:4px 0 0;color:#85798b;font-size:12px;line-height:1.45}.onb-entry>footer{width:min(1320px,100%);margin:18px auto 0;display:flex;justify-content:space-between;color:#706778;font-size:10px;font-weight:850;letter-spacing:.11em}.onb-entry>footer b{color:#9c90a3}

.onb-wizard{padding:24px clamp(20px,4vw,64px) 60px}.onw-top{width:min(1420px,100%);margin:auto}.onw-top>button{padding:11px 14px;border-radius:10px;color:#c2b6ca;background:rgba(255,255,255,.035);border:1px solid rgba(255,255,255,.11);font:inherit;font-size:11px;font-weight:900;letter-spacing:.07em;cursor:pointer}
.onw-progress{width:min(1420px,100%);margin:24px auto 0;display:grid;grid-template-columns:repeat(4,1fr);overflow:hidden;border-radius:16px;background:rgba(8,5,14,.82);border:1px solid rgba(255,255,255,.09)}.onw-progress>span{position:relative;padding:14px 16px 14px 52px;display:flex;min-height:68px;flex-direction:column;justify-content:center;border-left:1px solid rgba(255,255,255,.08)}.onw-progress>span:first-child{border-left:0}.onw-progress i{position:absolute;left:16px;top:50%;transform:translateY(-50%);width:27px;height:27px;display:grid;place-items:center;border-radius:8px;color:#776c80;background:rgba(255,255,255,.04);font-size:9px;font-style:normal;font-weight:950}.onw-progress b{color:#827687;font-size:11px}.onw-progress em{margin-top:3px;color:#5f5665;font-size:8px;font-style:normal;font-weight:850;letter-spacing:.1em}.onw-progress .now{background:linear-gradient(110deg,rgba(168,85,247,.15),rgba(255,45,155,.06))}.onw-progress .now i{color:#fff;background:linear-gradient(135deg,#ff2d9b,#8b4eed);box-shadow:0 0 20px rgba(255,45,155,.23)}.onw-progress .now b{color:#fff}.onw-progress .now em{color:#67d9ff}.onw-progress .done i{color:#bdfde0;background:rgba(52,211,153,.1)}.onw-progress .done b{color:#b7aebe}.onw-progress .done em{color:#68c79b}
.onw-layout{width:min(1420px,100%);margin:18px auto 0;display:grid;grid-template-columns:minmax(0,1fr) 370px;gap:18px;align-items:start}.onw-main{min-width:0}.onw-heading{padding:14px 4px 22px}.onw-heading>small{color:#64d8ff;font-size:10px;font-weight:950;letter-spacing:.15em}.onw-heading h1{max-width:840px;margin:9px 0 0;font-size:clamp(42px,5.4vw,74px);line-height:.9;letter-spacing:-.065em}.onw-heading p{max-width:820px;margin:13px 0 0;color:#93879a;font-size:15px;line-height:1.6}.onw-errors{margin-bottom:12px;padding:14px 16px;display:flex;flex-direction:column;gap:7px;border-radius:14px;background:rgba(255,45,112,.07);border:1px solid rgba(255,84,137,.24)}.onw-errors>b{color:#ff9cbd;font-size:10px;letter-spacing:.12em}.onw-errors span{display:flex;align-items:center;gap:7px;color:#efced9;font-size:13px}.onw-errors svg{width:15px;color:#ff5f9d}
.onw-panel{padding:24px;border-radius:22px;background:rgba(8,5,14,.9);border:1px solid rgba(255,255,255,.1);box-shadow:0 22px 60px rgba(0,0,0,.23)}.onw-identity{display:grid;grid-template-columns:210px 1fr;gap:26px;align-items:start}.onw-photo{display:flex;align-items:center;flex-direction:column;gap:9px}.onw-photo>.avatar{width:148px;height:148px;border-radius:34px;font-size:40px}.onw-photo label,.onw-photo button{min-width:148px;padding:10px 12px;border-radius:9px;color:#fff;background:rgba(168,85,247,.11);border:1px solid rgba(168,85,247,.27);font:inherit;font-size:10px;font-weight:900;text-align:center;cursor:pointer}.onw-photo button{color:#a79cae;background:transparent;border-color:rgba(255,255,255,.09)}.onw-fields{display:grid;grid-template-columns:1fr 1fr;gap:14px}.onw-fields label,.onw-two label,.onw-code-fields label,.onw-textarea{display:flex;flex-direction:column;gap:7px}.onw-fields label:first-child,.onw-fields label:nth-child(3){grid-column:1/-1}.onw-fields label>span,.onw-two label>span,.onw-code-fields label>span,.onw-textarea>span{color:#8c8094;font-size:10px;font-weight:900;letter-spacing:.1em}.onw-panel .field{min-height:50px;font-size:15px}.onw-locked{min-height:50px;padding:0 15px;display:flex;align-items:center;justify-content:space-between;border-radius:13px;color:#8a7d91;background:rgba(255,255,255,.025);border:1px solid rgba(255,255,255,.08)}.onw-locked i{padding:5px 7px;border-radius:6px;color:#706677;background:rgba(255,255,255,.035);font-size:8px;font-style:normal;font-weight:900}.onw-colors{margin-top:20px;padding-top:16px;border-top:1px solid rgba(255,255,255,.08)}.onw-colors>small,.onw-selected>small,.onw-pick>small,.onw-code-fields>small{color:#8c8094;font-size:10px;font-weight:900;letter-spacing:.1em}.onw-colors>div{display:flex;gap:9px;margin-top:10px}.onw-colors .grad-pick{width:42px;height:42px}
.onw-selected{padding:16px;border-radius:15px;background:rgba(168,85,247,.055);border:1px solid rgba(168,85,247,.16)}.onw-selected>div{display:flex;flex-wrap:wrap;gap:9px;margin-top:11px}.onw-selected>div button{position:relative;overflow:hidden;min-width:150px;min-height:76px;padding:12px;display:flex;align-items:flex-end;border-radius:12px;color:#fff;background:#100a19;border:1px solid rgba(255,255,255,.12);font:inherit;text-align:left;cursor:pointer}.onw-selected>div button>span{position:absolute;inset:0;background:linear-gradient(90deg,rgba(5,3,10,.94),rgba(5,3,10,.28)),var(--onw-game) center/cover}.onw-selected b,.onw-selected em,.onw-selected svg{position:relative;z-index:1}.onw-selected b{font-size:13px}.onw-selected em{margin-left:auto;color:#ff9dc8;font-size:8px;font-style:normal}.onw-selected svg{width:14px;margin-left:4px}.onw-selected>p{margin:9px 0 0;color:#84788c;font-size:13px}.onw-game-search{margin-top:14px;padding:0 14px;min-height:54px;display:flex;align-items:center;gap:10px;border-radius:14px;background:rgba(255,255,255,.035);border:1px solid rgba(255,255,255,.1)}.onw-game-search svg{width:19px;color:#64d8ff}.onw-game-search input{min-width:0;flex:1;color:#fff;background:transparent;border:0;outline:0;font:inherit;font-size:15px}.onw-game-search em{color:#706677;font-size:9px;font-style:normal;font-weight:900;letter-spacing:.08em}.onw-game-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:9px;margin-top:10px}.onw-game-grid button{position:relative;isolation:isolate;overflow:hidden;min-height:112px;padding:13px;display:flex;align-items:flex-end;flex-direction:column;justify-content:flex-end;border-radius:14px;color:#fff;background:#0c0812;border:1px solid rgba(255,255,255,.09);font:inherit;text-align:left;cursor:pointer}.onw-game-grid button>span{position:absolute;z-index:-2;inset:0;background:linear-gradient(0deg,rgba(5,3,10,.96),rgba(5,3,10,.2)),var(--onw-game) center/cover}.onw-game-grid button::after{content:"";position:absolute;z-index:-1;inset:0;border:2px solid transparent;border-radius:inherit}.onw-game-grid button.on::after{border-color:#60d7ff;box-shadow:inset 0 0 24px rgba(56,189,248,.18)}.onw-game-grid b{width:100%;font-size:14px}.onw-game-grid small{width:100%;margin-top:4px;color:#8d8295;font-size:9px;font-weight:900;letter-spacing:.08em}.onw-game-grid .on small{color:#9eeaff}.onw-custom-game{display:grid;grid-template-columns:1fr auto;gap:9px;margin-top:11px}.onw-custom-game button{padding:0 17px;border-radius:12px;color:#fff;background:rgba(168,85,247,.12);border:1px solid rgba(168,85,247,.28);font:inherit;font-size:10px;font-weight:900;cursor:pointer}.onw-pick{margin-top:22px;padding-top:18px;border-top:1px solid rgba(255,255,255,.08)}.onw-pick>div{display:flex;flex-wrap:wrap;gap:9px;margin-top:10px}.onw-pick .chip{min-height:42px;padding:10px 15px;font-size:13px}.onw-code-fields{margin-top:18px;display:grid;grid-template-columns:repeat(2,1fr);gap:10px}.onw-code-fields>small{grid-column:1/-1}.onw-two{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-top:18px}.onw-textarea textarea{min-height:110px;resize:vertical}.onw-boundary-note{padding:15px;display:flex;align-items:center;gap:12px;border-radius:14px;background:rgba(56,189,248,.045);border:1px solid rgba(56,189,248,.16)}.onw-boundary-note>svg{width:27px;color:#64d8ff}.onw-boundary-note>span{display:flex;flex-direction:column}.onw-boundary-note b{font-size:14px}.onw-boundary-note small{margin-top:4px;color:#867a8e;font-size:12px;line-height:1.4}.onw-ready{margin-top:22px;padding:20px;border-radius:16px;background:linear-gradient(120deg,rgba(255,45,155,.08),rgba(168,85,247,.07));border:1px solid rgba(255,78,171,.2)}.onw-ready small{color:#ff83bc;font-size:10px;font-weight:950;letter-spacing:.12em}.onw-ready h3{margin:6px 0 0;font-size:28px}.onw-ready p{margin:7px 0 0;color:#9b8da1;font-size:13px}
.onw-actions{display:grid;grid-template-columns:auto 1fr;gap:10px;margin-top:14px}.onw-actions>button{min-height:56px;padding:0 18px;border-radius:13px;color:#b8acbf;background:rgba(255,255,255,.035);border:1px solid rgba(255,255,255,.1);font:inherit;font-size:11px;font-weight:900;letter-spacing:.06em;cursor:pointer}.onw-actions>.primary{color:#fff;background:linear-gradient(135deg,#ff2d9b,#8f48ed);border-color:rgba(255,117,195,.55);box-shadow:0 14px 36px rgba(255,45,155,.15)}.onw-exit{width:100%;padding:12px;color:#746a7b;background:transparent;border:0;font:inherit;font-size:11px;cursor:pointer}
.onw-preview{position:sticky;top:18px;padding:14px;border-radius:22px;background:linear-gradient(150deg,rgba(16,8,24,.97),rgba(7,4,13,.97));border:1px solid rgba(168,85,247,.22)}.onw-preview-label{display:flex;justify-content:space-between;padding:3px 3px 11px;color:#897d92;font-size:9px;font-weight:950;letter-spacing:.11em}.onw-preview-label b{color:#ff91c4}.onw-preview>article{position:relative;isolation:isolate;overflow:hidden;min-height:480px;padding:20px;display:flex;flex-direction:column;justify-content:flex-end;border-radius:17px;background:#08050e;border:1px solid rgba(255,255,255,.1)}.onw-preview-image{position:absolute;z-index:-3;inset:0;background:var(--onw-cover) center/cover;filter:saturate(.82)}.onw-preview-grade{position:absolute;z-index:-2;inset:0;background:linear-gradient(0deg,rgba(5,3,10,.98) 12%,rgba(5,3,10,.66) 55%,rgba(5,3,10,.16)),linear-gradient(120deg,rgba(56,189,248,.1),rgba(255,45,155,.08))}.onw-preview-status{position:absolute;top:15px;left:15px;display:flex;align-items:center;gap:7px;color:#c1fbe0;font-size:8px;font-weight:950;letter-spacing:.1em}.onw-preview-status i{width:6px;height:6px;border-radius:50%;background:#48e39e;box-shadow:0 0 9px #48e39e}.onw-preview-copy>.avatar{width:54px;height:54px;margin-bottom:13px}.onw-preview-copy>small{color:#67d9ff;font-size:9px;font-weight:950;letter-spacing:.12em}.onw-preview-copy h2{margin:5px 0 0;font-size:35px;letter-spacing:-.055em}.onw-preview-copy p{margin:7px 0 12px;color:#a294aa;font-size:13px;line-height:1.45}.onw-preview-copy>div{display:flex;flex-wrap:wrap;gap:6px}.onw-preview-copy>div span{padding:6px 8px;border-radius:999px;color:#d6cddd;background:rgba(8,5,14,.7);border:1px solid rgba(255,255,255,.13);font-size:9px}.onw-proof{display:grid;grid-template-columns:repeat(3,1fr);margin-top:10px;overflow:hidden;border-radius:12px;background:rgba(255,255,255,.025);border:1px solid rgba(255,255,255,.08)}.onw-proof>span{padding:10px 6px;display:grid;grid-template-columns:18px 1fr;grid-template-rows:auto auto;border-left:1px solid rgba(255,255,255,.07)}.onw-proof>span:first-child{border-left:0}.onw-proof svg{grid-row:1/3;width:14px;color:#615969}.onw-proof b{font-size:13px}.onw-proof small{color:#655c6d;font-size:7px}.onw-proof .on svg{color:#67d9ff}.onw-proof .on b{color:#fff}.onw-preview>p{margin:11px 4px 2px;color:#716777;font-size:10px;line-height:1.45;text-align:center}

.onb-final{position:fixed;z-index:320;inset:0;display:grid;place-items:center;padding:20px}.onb-final>button{position:absolute;inset:0;background:rgba(3,2,8,.84);border:0;backdrop-filter:blur(18px)}.onb-final>section{position:relative;overflow:auto;width:min(760px,100%);max-height:min(92dvh,860px);padding:24px;border-radius:24px;background:linear-gradient(150deg,#12091c,#07040d 68%);border:1px solid rgba(255,255,255,.14);box-shadow:0 35px 100px rgba(0,0,0,.65)}.onb-final header small{color:#65d8ff;font-size:10px;font-weight:950;letter-spacing:.14em}.onb-final header h2{margin:8px 0 0;font-size:38px;letter-spacing:-.055em}.onb-final header p{margin:9px 0 0;color:#9b8fa3;font-size:14px;line-height:1.55}.onb-final article{position:relative;isolation:isolate;overflow:hidden;margin-top:18px;padding:18px;display:grid;grid-template-columns:62px 1fr;align-items:end;gap:13px;min-height:190px;border-radius:17px;background:#0a0610;border:1px solid rgba(255,255,255,.1)}.onb-final article>span{position:absolute;z-index:-2;inset:0;background:linear-gradient(0deg,rgba(5,3,10,.98),rgba(5,3,10,.28)),var(--onf-art) center/cover}.onb-final article>.avatar{width:56px;height:56px;grid-row:1/4}.onb-final article>div:last-child{display:flex;flex-direction:column}.onb-final article small{color:#66d8ff;font-size:9px;font-weight:900;letter-spacing:.1em}.onb-final article b{margin-top:3px;font-size:25px}.onb-final article p{margin:4px 0 0;color:#a296aa;font-size:12px}.onf-grid{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-top:10px}.onf-grid span{padding:13px;display:flex;flex-direction:column;border-radius:12px;background:rgba(255,255,255,.03);border:1px solid rgba(255,255,255,.08)}.onf-grid small{color:#817587;font-size:8px;font-weight:950;letter-spacing:.11em}.onf-grid b{margin-top:4px;color:#eee8f1;font-size:12px;line-height:1.4}.onb-final aside{margin-top:10px;padding:13px;display:flex;align-items:center;gap:11px;border-radius:12px;background:rgba(52,211,153,.045);border:1px solid rgba(52,211,153,.15)}.onb-final aside>svg{width:24px;color:#6de6ad}.onb-final aside>span{display:flex;flex-direction:column}.onb-final aside b{font-size:12px}.onb-final aside small{margin-top:3px;color:#819489;font-size:10px;line-height:1.4}.onb-final footer{display:grid;grid-template-columns:auto 1fr;gap:9px;margin-top:14px}.onb-final footer button{min-height:52px;padding:0 16px;border-radius:12px;color:#b7abbf;background:rgba(255,255,255,.035);border:1px solid rgba(255,255,255,.1);font:inherit;font-size:10px;font-weight:900;cursor:pointer}.onb-final footer .primary{color:#fff;background:linear-gradient(135deg,#ff2d9b,#8f48ed);border-color:rgba(255,117,195,.55)}

@media(max-width:900px){.onb-entry{overflow:auto}.onb-entry-layout{grid-template-columns:1fr;gap:24px;margin:70px auto 20px}.onb-entry-proof{display:none}.onb-entry-pillars{grid-template-columns:1fr}.onw-layout{grid-template-columns:1fr}.onw-preview{position:static;order:-1}.onw-preview>article{min-height:360px}.onw-progress>span{padding:12px;min-height:58px}.onw-progress i{position:static;transform:none;width:24px;height:24px}.onw-progress b,.onw-progress em{display:none}}
@media(max-width:620px){.onb-entry{padding:18px 16px 28px}.onb-entry>header img,.onw-top img{width:126px}.onb-entry>header span,.onw-top>span{font-size:8px}.onb-entry-layout{margin-top:54px}.onb-entry-copy>small{font-size:9px}.onb-entry-copy h1{font-size:58px}.onb-entry-copy>p{margin-top:19px;font-size:14px}.onb-entry-actions{grid-template-columns:1fr}.onb-entry-actions button{min-height:72px}.onb-entry-pillars article{grid-template-columns:30px 1fr;padding:15px}.onb-entry-pillars article>span{display:none}.onb-entry-pillars svg{width:24px}.onb-entry>footer{align-items:flex-start;flex-direction:column;gap:5px}.onb-wizard{padding:17px 13px 34px}.onw-top>button{font-size:8px;padding:9px}.onw-progress{margin-top:16px}.onw-layout{margin-top:10px}.onw-heading{padding:14px 2px 18px}.onw-heading h1{font-size:40px}.onw-heading p{font-size:13px}.onw-panel{padding:15px;border-radius:17px}.onw-identity{grid-template-columns:1fr}.onw-photo>.avatar{width:118px;height:118px}.onw-fields{grid-template-columns:1fr}.onw-fields label:first-child,.onw-fields label:nth-child(3){grid-column:auto}.onw-game-grid{grid-template-columns:1fr 1fr}.onw-game-grid button{min-height:102px}.onw-game-search em{display:none}.onw-custom-game{grid-template-columns:1fr}.onw-custom-game button{min-height:44px}.onw-two,.onw-code-fields{grid-template-columns:1fr}.onw-code-fields>small{grid-column:auto}.onw-pick .chip{min-height:44px;font-size:12px}.onw-actions{position:sticky;z-index:8;bottom:8px;grid-template-columns:86px 1fr;padding:8px;border-radius:15px;background:rgba(7,4,13,.95);border:1px solid rgba(255,255,255,.09);box-shadow:0 16px 40px rgba(0,0,0,.42)}.onw-actions>button{padding:0 10px;font-size:9px}.onw-preview{padding:11px}.onw-preview>article{min-height:330px}.onb-final{padding:10px}.onb-final>section{padding:17px;border-radius:19px}.onb-final header h2{font-size:31px}.onf-grid{grid-template-columns:1fr}.onb-final footer{grid-template-columns:1fr}.onb-final footer button{min-height:48px}}
@media(max-width:900px){.onw-preview{order:initial}}

/* Squad Foundry launch review: a permanent crew gets a deliberate final gate. */
.team-create-review{position:fixed;z-index:2450;inset:0;display:grid;place-items:center;padding:18px}.team-create-review>button{position:absolute;inset:0;border:0;background:rgba(3,2,8,.88);backdrop-filter:blur(18px)}.team-create-review>section{position:relative;width:min(760px,100%);max-height:calc(100dvh - 36px);overflow:auto;padding:26px;border:1px solid rgba(168,85,247,.34);border-radius:25px;background:radial-gradient(circle at 90% 0,rgba(255,45,155,.12),transparent 31%),radial-gradient(circle at 0 100%,rgba(56,189,248,.08),transparent 32%),#090611;box-shadow:0 40px 120px rgba(0,0,0,.72)}.team-create-review header>small{color:#64d9ff;font-weight:950;letter-spacing:.14em}.team-create-review h2{margin:8px 0 0;font-size:38px;line-height:1;letter-spacing:-.055em}.team-create-review header p{margin:10px 0 0;color:#9b8fa3;line-height:1.55}.team-create-review article{position:relative;isolation:isolate;overflow:hidden;min-height:185px;margin-top:18px;padding:20px;display:grid;grid-template-columns:64px 1fr;align-items:end;gap:14px;border:1px solid rgba(255,255,255,.1);border-radius:18px;background:#08050d}.team-create-review article>span{position:absolute;z-index:-2;inset:0;background:linear-gradient(0deg,rgba(5,3,10,.97),rgba(5,3,10,.22)),var(--tcr-art) center/cover}.tcr-crest{width:60px;height:60px;display:grid;place-items:center;border-radius:17px;color:#fff;background:linear-gradient(145deg,var(--tcr-color),color-mix(in srgb,var(--tcr-color) 58%,#08050d));border:1px solid rgba(255,255,255,.18);font-weight:950;letter-spacing:.04em;box-shadow:0 0 28px color-mix(in srgb,var(--tcr-color) 34%,transparent)}.team-create-review article>div:last-child{display:flex;min-width:0;flex-direction:column}.team-create-review article small{color:#6bddff;font-weight:900;letter-spacing:.1em}.team-create-review article b{margin-top:4px;font-size:27px}.team-create-review article p{margin:5px 0 0;color:#ada0b4}.tcr-grid{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-top:10px}.tcr-grid>span{padding:13px;display:flex;min-width:0;flex-direction:column;border:1px solid rgba(255,255,255,.08);border-radius:12px;background:rgba(255,255,255,.025)}.tcr-grid small{color:#817588;font-weight:950;letter-spacing:.1em}.tcr-grid b{margin-top:4px;color:#f1ebf4;line-height:1.35}.tcr-grid em{margin-top:4px;color:#817588;font-style:normal;line-height:1.4}.tcr-access{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin-top:10px}.tcr-access>span{padding:13px;display:grid;grid-template-columns:24px 1fr;column-gap:9px;border:1px solid rgba(255,255,255,.08);border-radius:12px;background:rgba(255,255,255,.02)}.tcr-access svg{grid-row:1/3;width:19px;color:#65d9ff}.tcr-access b{line-height:1.25}.tcr-access small{margin-top:4px;color:#7f7486;line-height:1.4}.team-create-review aside{margin-top:10px;padding:13px;display:flex;align-items:center;gap:11px;border:1px solid rgba(52,211,153,.17);border-radius:12px;background:rgba(52,211,153,.045)}.team-create-review aside>svg{width:24px;color:#6be3ab}.team-create-review aside>span{display:flex;flex-direction:column}.team-create-review aside small{margin-top:3px;color:#82958a;line-height:1.4}.team-create-review footer{display:grid;grid-template-columns:auto 1fr;gap:9px;margin-top:15px}.team-create-review footer button{min-height:52px;padding:0 17px;border:1px solid rgba(255,255,255,.11);border-radius:12px;color:#b8adc0;background:rgba(255,255,255,.03);font:inherit;font-weight:900;letter-spacing:.06em}.team-create-review footer .primary{color:#fff;border-color:rgba(255,115,193,.5);background:linear-gradient(135deg,#ff2d9b,#8e49ed)}
.team-create-receipt{margin:12px clamp(14px,3vw,32px) 0;padding:14px 16px;display:grid;grid-template-columns:42px 1fr auto;align-items:center;gap:13px;border:1px solid rgba(52,211,153,.25);border-radius:15px;background:linear-gradient(110deg,rgba(21,81,61,.27),rgba(8,6,16,.96));box-shadow:0 18px 45px rgba(0,0,0,.22)}.team-create-receipt>span{width:42px;height:42px;display:grid;place-items:center;border-radius:12px;color:#7af0b9;background:rgba(52,211,153,.1)}.team-create-receipt>span svg{width:20px}.team-create-receipt>div:nth-child(2){display:flex;min-width:0;flex-direction:column}.team-create-receipt small{color:#79dbad;font-weight:950;letter-spacing:.1em}.team-create-receipt b{margin-top:2px}.team-create-receipt p{margin:3px 0 0;color:#899a91}.team-create-receipt>div:last-child{display:flex;align-items:center;gap:8px}.team-create-receipt a,.team-create-receipt button{min-height:42px;padding:0 13px;display:grid;place-items:center;border:1px solid rgba(255,255,255,.1);border-radius:10px;color:#d8d0dc;background:rgba(255,255,255,.035);font:inherit;font-weight:900;text-decoration:none}.team-create-receipt button{width:42px;padding:0}
@media(max-width:700px){.team-create-review{padding:10px}.team-create-review>section{max-height:calc(100dvh - 20px);padding:18px 16px;border-radius:20px}.team-create-review h2{font-size:31px}.team-create-review article{min-height:155px;padding:16px;grid-template-columns:54px 1fr}.tcr-crest{width:50px;height:50px;border-radius:14px}.team-create-review article b{font-size:22px}.tcr-grid,.tcr-access{grid-template-columns:1fr}.team-create-review footer{grid-template-columns:1fr}.team-create-review footer button{min-height:48px}.team-create-receipt{grid-template-columns:38px 1fr;margin-inline:12px;padding:12px}.team-create-receipt>span{width:38px;height:38px}.team-create-receipt>div:last-child{grid-column:1/-1;display:grid;grid-template-columns:1fr 44px}.team-create-receipt a,.team-create-receipt button{min-height:44px}}

/* Book Play final check: a request must be understood before it leaves. */
.schedule-invite-review{position:fixed;z-index:2460;inset:0;display:grid;place-items:center;padding:18px}.schedule-invite-review>button{position:absolute;inset:0;border:0;background:rgba(3,2,8,.88);backdrop-filter:blur(18px)}.schedule-invite-review>section{position:relative;width:min(740px,100%);max-height:calc(100dvh - 36px);overflow:auto;padding:26px;border:1px solid rgba(56,189,248,.34);border-radius:25px;background:radial-gradient(circle at 90% 0,rgba(56,189,248,.12),transparent 31%),radial-gradient(circle at 0 100%,rgba(168,85,247,.1),transparent 32%),#080611;box-shadow:0 40px 120px rgba(0,0,0,.72)}.schedule-invite-review header>small{color:#68dcff;font-weight:950;letter-spacing:.14em}.schedule-invite-review h2{margin:8px 0 0;font-size:38px;line-height:1;letter-spacing:-.055em}.schedule-invite-review header p{margin:10px 0 0;color:#9a8fa2;line-height:1.55}.schedule-invite-review article{position:relative;isolation:isolate;overflow:hidden;min-height:165px;margin-top:18px;padding:19px;display:grid;grid-template-columns:62px 1fr;align-items:end;gap:14px;border:1px solid rgba(255,255,255,.1);border-radius:18px;background:#08050d}.schedule-invite-review article>span:first-child{position:absolute;z-index:-2;inset:0;background:linear-gradient(0deg,rgba(5,3,10,.98),rgba(5,3,10,.24)),var(--sir-art) center/cover}.schedule-invite-review article>.avatar{width:58px;height:58px}.schedule-invite-review article>div{display:flex;min-width:0;flex-direction:column}.schedule-invite-review article small{color:#70dcff;font-weight:900;letter-spacing:.09em}.schedule-invite-review article small i{display:inline-block;width:7px;height:7px;margin-right:6px;border-radius:50%;background:#49e39e;box-shadow:0 0 9px #49e39e}.schedule-invite-review article b{margin-top:4px;font-size:26px}.schedule-invite-review article p{margin:4px 0 0;color:#aa9daf}.sir-plan{display:grid;grid-template-columns:1.2fr 1fr 1fr 1fr;overflow:hidden;margin-top:10px;border:1px solid rgba(255,255,255,.08);border-radius:13px;background:rgba(255,255,255,.02)}.sir-plan>span{padding:13px;display:flex;min-width:0;flex-direction:column;border-left:1px solid rgba(255,255,255,.07)}.sir-plan>span:first-child{border-left:0}.sir-plan small{color:#817588;font-weight:950;letter-spacing:.09em}.sir-plan b{margin-top:4px;color:#f0eaf3;line-height:1.35}.sir-effects{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin-top:10px}.sir-effects>span{padding:13px;display:grid;grid-template-columns:24px 1fr;column-gap:9px;border:1px solid rgba(255,255,255,.08);border-radius:12px;background:rgba(255,255,255,.02)}.sir-effects svg{grid-row:1/3;width:19px;color:#68dafe}.sir-effects b{line-height:1.25}.sir-effects small{margin-top:4px;color:#7f7486;line-height:1.4}.schedule-invite-review aside{margin-top:10px;padding:13px;display:flex;align-items:center;gap:11px;border:1px solid rgba(52,211,153,.17);border-radius:12px;background:rgba(52,211,153,.04)}.schedule-invite-review aside>svg{width:24px;color:#6ce4ad}.schedule-invite-review aside>span{display:flex;flex-direction:column}.schedule-invite-review aside small{margin-top:3px;color:#82958a;line-height:1.4}.schedule-invite-review footer{display:grid;grid-template-columns:auto 1fr;gap:9px;margin-top:15px}.schedule-invite-review footer button{min-height:52px;padding:0 17px;border:1px solid rgba(255,255,255,.11);border-radius:12px;color:#b8adc0;background:rgba(255,255,255,.03);font:inherit;font-weight:900;letter-spacing:.06em}.schedule-invite-review footer .primary{color:#05030a;border-color:rgba(116,224,255,.5);background:linear-gradient(135deg,#67dcff,#9a69ff)}
@media(max-width:700px){.schedule-invite-review{padding:10px}.schedule-invite-review>section{max-height:calc(100dvh - 20px);padding:18px 16px;border-radius:20px}.schedule-invite-review h2{font-size:31px}.schedule-invite-review article{min-height:145px;padding:15px;grid-template-columns:54px 1fr}.schedule-invite-review article>.avatar{width:50px;height:50px}.schedule-invite-review article b{font-size:22px}.sir-plan{grid-template-columns:1fr 1fr}.sir-plan>span:nth-child(3){border-left:0;border-top:1px solid rgba(255,255,255,.07)}.sir-plan>span:nth-child(4){border-top:1px solid rgba(255,255,255,.07)}.sir-effects{grid-template-columns:1fr}.schedule-invite-review footer{grid-template-columns:1fr}.schedule-invite-review footer button{min-height:48px}}

/* Incoming schedule decisions explain the shared-state change before applying it. */
.schedule-decision{position:fixed;z-index:2470;inset:0;display:grid;place-items:center;padding:18px}.schedule-decision>button{position:absolute;inset:0;border:0;background:rgba(3,2,8,.88);backdrop-filter:blur(18px)}.schedule-decision>section{position:relative;width:min(700px,100%);max-height:calc(100dvh - 36px);overflow:auto;padding:26px;border:1px solid rgba(56,189,248,.34);border-radius:25px;background:radial-gradient(circle at 90% 0,rgba(56,189,248,.12),transparent 31%),#080611;box-shadow:0 40px 120px rgba(0,0,0,.72)}.schedule-decision.pass>section{border-color:rgba(255,90,150,.34);background:radial-gradient(circle at 90% 0,rgba(255,45,125,.1),transparent 31%),#090611}.schedule-decision header>small{color:#69dcff;font-weight:950;letter-spacing:.14em}.schedule-decision.pass header>small{color:#ff89ba}.schedule-decision h2{margin:8px 0 0;font-size:36px;line-height:1;letter-spacing:-.052em}.schedule-decision header p{margin:10px 0 0;color:#9a8fa2;line-height:1.55}.schedule-decision article{position:relative;isolation:isolate;overflow:hidden;min-height:155px;margin-top:18px;padding:18px;display:grid;grid-template-columns:60px 1fr;align-items:end;gap:14px;border:1px solid rgba(255,255,255,.1);border-radius:17px;background:#08050d}.schedule-decision article>span:first-child{position:absolute;z-index:-2;inset:0;background:linear-gradient(0deg,rgba(5,3,10,.98),rgba(5,3,10,.24)),var(--sdr-art) center/cover}.schedule-decision article>.avatar{width:56px;height:56px}.schedule-decision article>div{display:flex;flex-direction:column}.schedule-decision article small{color:#6fdcff;font-weight:900;letter-spacing:.09em}.schedule-decision article b{margin-top:4px;font-size:25px}.schedule-decision article p{margin:4px 0 0;color:#a99cae}.sdr-effects{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin-top:10px}.sdr-effects>span{padding:13px;display:grid;grid-template-columns:24px 1fr;column-gap:9px;border:1px solid rgba(255,255,255,.08);border-radius:12px;background:rgba(255,255,255,.02)}.sdr-effects svg{grid-row:1/3;width:19px;color:#69dcff}.schedule-decision.pass .sdr-effects svg{color:#ff84b6}.sdr-effects b{line-height:1.25}.sdr-effects small{margin-top:4px;color:#7f7486;line-height:1.4}.schedule-decision aside{margin-top:10px;padding:13px;display:flex;align-items:center;gap:11px;border:1px solid rgba(52,211,153,.17);border-radius:12px;background:rgba(52,211,153,.04)}.schedule-decision aside>svg{width:24px;color:#6ce4ad}.schedule-decision aside>span{display:flex;flex-direction:column}.schedule-decision aside small{margin-top:3px;color:#82958a}.schedule-decision footer{display:grid;grid-template-columns:auto 1fr;gap:9px;margin-top:15px}.schedule-decision footer button{min-height:52px;padding:0 17px;border:1px solid rgba(255,255,255,.11);border-radius:12px;color:#b8adc0;background:rgba(255,255,255,.03);font:inherit;font-weight:900;letter-spacing:.06em}.schedule-decision footer .primary{color:#05030a;border-color:rgba(116,224,255,.5);background:linear-gradient(135deg,#67dcff,#9a69ff)}.schedule-decision footer .danger{color:#fff;border-color:rgba(255,91,151,.48);background:linear-gradient(135deg,#b91f5a,#ff4385)}
@media(max-width:700px){.schedule-decision{padding:10px}.schedule-decision>section{max-height:calc(100dvh - 20px);padding:18px 16px;border-radius:20px}.schedule-decision h2{font-size:30px}.schedule-decision article{min-height:140px;padding:15px;grid-template-columns:52px 1fr}.schedule-decision article>.avatar{width:48px;height:48px}.sdr-effects{grid-template-columns:1fr}.schedule-decision footer{grid-template-columns:1fr}.schedule-decision footer button{min-height:48px}}

/* Existing session time changes get a final comparison before anything is sent. */
.reschedule-review{position:fixed;z-index:2480;inset:0;display:grid;place-items:center;padding:18px}.reschedule-review>button{position:absolute;inset:0;border:0;background:rgba(3,2,8,.88);backdrop-filter:blur(18px)}.reschedule-review>section{position:relative;width:min(700px,100%);max-height:calc(100dvh - 36px);overflow:auto;padding:26px;border:1px solid rgba(168,85,247,.38);border-radius:25px;background:radial-gradient(circle at 90% 0,rgba(168,85,247,.14),transparent 31%),radial-gradient(circle at 0 100%,rgba(56,189,248,.08),transparent 34%),#080611;box-shadow:0 40px 120px rgba(0,0,0,.72)}.reschedule-review header>small{color:#b785ff;font-weight:950;letter-spacing:.14em}.reschedule-review h2{margin:8px 0 0;font-size:36px;line-height:1;letter-spacing:-.052em}.reschedule-review header p{margin:10px 0 0;color:#9a8fa2;line-height:1.55}.reschedule-review article{position:relative;isolation:isolate;overflow:hidden;min-height:145px;margin-top:18px;padding:18px;display:grid;grid-template-columns:60px 1fr;align-items:end;gap:14px;border:1px solid rgba(255,255,255,.1);border-radius:17px;background:#08050d}.reschedule-review article>span:first-child{position:absolute;z-index:-2;inset:0;background:linear-gradient(0deg,rgba(5,3,10,.98),rgba(5,3,10,.24)),var(--rsr-art) center/cover}.reschedule-review article>.avatar{width:56px;height:56px}.reschedule-review article>div{display:flex;flex-direction:column}.reschedule-review article small{color:#70dcff;font-weight:900;letter-spacing:.09em}.reschedule-review article b{margin-top:4px;font-size:25px}.reschedule-review article p{margin:4px 0 0;color:#a99cae}.rsr-compare{display:grid;grid-template-columns:1fr 34px 1fr;align-items:stretch;margin-top:10px}.rsr-compare>span{padding:14px;display:flex;min-width:0;flex-direction:column;border:1px solid rgba(255,255,255,.08);border-radius:13px;background:rgba(255,255,255,.02)}.rsr-compare>span.new{border-color:rgba(168,85,247,.28);background:rgba(168,85,247,.055)}.rsr-compare>i{display:grid;place-items:center;color:#83778b;font-style:normal}.rsr-compare small{color:#817588;font-weight:950;letter-spacing:.09em}.rsr-compare .new small{color:#b88aff}.rsr-compare b{margin-top:5px;color:#f0eaf3;line-height:1.35}.rsr-compare em{margin-top:4px;color:#9a8fa2;font-style:normal}.rsr-effects{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin-top:10px}.rsr-effects>span{padding:13px;display:grid;grid-template-columns:24px 1fr;column-gap:9px;border:1px solid rgba(255,255,255,.08);border-radius:12px;background:rgba(255,255,255,.02)}.rsr-effects svg{grid-row:1/3;width:19px;color:#b887ff}.rsr-effects b{line-height:1.25}.rsr-effects small{margin-top:4px;color:#7f7486;line-height:1.4}.reschedule-review footer{display:grid;grid-template-columns:auto 1fr;gap:9px;margin-top:15px}.reschedule-review footer button{min-height:52px;padding:0 17px;border:1px solid rgba(255,255,255,.11);border-radius:12px;color:#b8adc0;background:rgba(255,255,255,.03);font:inherit;font-weight:900;letter-spacing:.06em}.reschedule-review footer .primary{color:#fff;border-color:rgba(190,125,255,.5);background:linear-gradient(135deg,#6fdcff,#9b59ed,#ff4fa2)}.reschedule-review footer .primary:disabled{cursor:not-allowed;opacity:.36;filter:saturate(.3)}
@media(max-width:700px){.reschedule-review{padding:10px}.reschedule-review>section{max-height:calc(100dvh - 20px);padding:18px 16px;border-radius:20px}.reschedule-review h2{font-size:30px}.reschedule-review article{min-height:135px;padding:15px;grid-template-columns:52px 1fr}.reschedule-review article>.avatar{width:48px;height:48px}.rsr-compare{grid-template-columns:1fr 24px 1fr}.rsr-compare>span{padding:11px}.rsr-effects{grid-template-columns:1fr}.reschedule-review footer{grid-template-columns:1fr}.reschedule-review footer button{min-height:48px}}

/* Calm background (?calmbg=1): kill every looping video for GPU-flicker machines;
   a static neon gradient stands in so the look survives. */
.calm-bg #bgvideo video, .calm-bg video.ph-v, .calm-bg .auth-moon video, .calm-bg .tab-logo video, .calm-bg #tabbar video { display: none !important; }
.calm-bg #bgvideo { background: radial-gradient(60% 45% at 20% 8%, rgba(255,45,155,.14), transparent 60%), radial-gradient(55% 45% at 85% 12%, rgba(56,189,248,.12), transparent 60%), radial-gradient(70% 55% at 50% 100%, rgba(168,85,247,.14), transparent 65%), #05030b; }

/* Seam-flash guard: keep looping videos on their own compositor layer so a loop wrap
   never re-rasterizes the window (the sub-second whole-screen black flash on some GPUs). */
#bgvideo video, video.ph-v, .auth-moon video, #tabbar video { transform: translateZ(0); will-change: transform; backface-visibility: hidden; }

/* THE CORNER — cool-off coach */
.corner-page{max-width:1080px;margin-inline:auto;padding-bottom:130px}
.cn-hero{padding:20px 4px 14px}.cn-hero h1{margin:8px 0 10px;font-size:clamp(34px,5vw,52px);line-height:.92;letter-spacing:-.05em;color:#fff}
.cn-hero p{max-width:560px;margin:0;color:#a79cbb;font-size:13.5px;line-height:1.55}
.cn-log{display:flex;flex-direction:column;gap:10px;min-height:48vh;max-height:64vh;overflow-y:auto;padding:20px;border:1px solid rgba(255,255,255,.09);border-bottom:0;border-radius:20px 20px 0 0;background:rgba(7,4,13,.84)}
.cn-msg{align-self:flex-start;max-width:78%;padding:14px 18px;border-radius:18px 18px 18px 6px;background:rgba(56,189,248,.09);border:1px solid rgba(56,189,248,.18);color:#e8e2f0;font-size:16px;line-height:1.55;white-space:pre-wrap}
.cn-msg.cn-me{align-self:flex-end;border-radius:16px 16px 5px 16px;background:rgba(255,45,155,.10);border-color:rgba(255,45,155,.22)}
.cn-typing i{display:inline-block;width:7px;height:7px;margin-right:4px;border-radius:50%;background:#56d8ff;animation:cnb 1.2s infinite}
.cn-typing i:nth-child(2){animation-delay:.2s}.cn-typing i:nth-child(3){animation-delay:.4s;margin-right:0}
@keyframes cnb{0%,60%,100%{opacity:.25;transform:translateY(0)}30%{opacity:1;transform:translateY(-3px)}}
.cn-err{align-self:center;padding:9px 13px;color:#ff9dc4;border:1px solid rgba(255,45,155,.25);border-radius:11px;background:rgba(255,45,155,.06);font-size:12.5px;text-align:center}
.cn-composer{display:flex;align-items:flex-end;gap:9px;margin-top:0;padding:12px 18px 16px;border:1px solid rgba(255,255,255,.09);border-top:0;border-radius:0 0 20px 20px;background:rgba(7,4,13,.84)}
.cn-composer textarea{flex:1;min-height:132px;font-size:16px;padding:14px 16px;border-radius:14px;border:1.5px solid rgba(168,85,247,.34);background:rgba(255,255,255,.05);color:#efe9f6;font:inherit;font-size:15px;line-height:1.45;resize:none;outline:none}
.cn-composer textarea:focus{border-color:#38bdf8;box-shadow:0 0 0 3px rgba(56,189,248,.18)}
.cn-composer button{padding:15px 22px;border:0;border-radius:14px;font-size:14px;font-weight:800;color:#fff;cursor:pointer;background:linear-gradient(135deg,#ff2d9b,#a855f7)}
.cn-composer button:disabled{opacity:.55;cursor:default}
.cn-foot{display:flex;flex-direction:column;gap:8px;margin-top:14px;padding:0 4px}
.cn-foot button{padding:0;border:0;background:none;color:#8f82a4;font:inherit;font-size:12.5px;cursor:pointer;text-align:left}
.cn-foot p{margin:0;color:#8f82a4;font-size:12.5px;line-height:1.5}.cn-foot a{color:#56d8ff}

@media(max-width:700px){.cn-log{min-height:34vh;max-height:46vh}.cn-msg{max-width:88%}.cn-composer{padding:10px 12px 12px}.cn-composer textarea{min-height:52px}.cn-composer button{padding:13px 16px}}

/* Corner tab mascot icon — sized to match the SVG tab icons */
.tab .tab-bot{width:24px;height:24px;object-fit:contain;display:block;filter:drop-shadow(0 0 6px rgba(255,45,155,.35))}
#tabbar .tab[data-tab="corner"] span{white-space:nowrap}

/* Mobile stat-strip hardening (2026-07-14): minmax(0,1fr) tracks can never exceed
   the container, so these strips physically cannot bleed off a phone screen the way
   auto-min 1fr tracks can. Full-width on phones; long labels ellipsize. */
@media(max-width:640px){
  .lh-status{grid-template-columns:repeat(2,minmax(0,1fr))!important}
  .lh-status>span{min-width:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
  .bd-metrics,.oc-meter{width:100%;grid-template-columns:repeat(3,minmax(0,1fr))!important}
  .bd-metrics>span,.oc-meter>span{min-width:0;overflow:hidden}
  .lh-head{flex-wrap:wrap}
  .live-signals,.board-directory,.open-comms{max-width:100vw}
}

/* TikTok-style chat overlay on the mobile Watch Room stage — last few messages float
   over the video; full chat + composer stay below. Desktop keeps the side rail. */
.wr-chat-overlay{display:none}
@media(max-width:700px){
  .wr-chat-overlay{position:absolute;z-index:2;left:13px;right:80px;bottom:128px;display:flex;flex-direction:column;align-items:flex-start;gap:5px;pointer-events:none;-webkit-mask-image:linear-gradient(0deg,#000 78%,transparent);mask-image:linear-gradient(0deg,#000 78%,transparent)}
  .wr-chat-overlay span{max-width:100%;padding:6px 10px;border-radius:12px;color:#fff;background:rgba(4,2,9,.42);backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);font-size:12.5px;line-height:1.35;text-shadow:0 1px 4px rgba(0,0,0,.85);overflow:hidden;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical}
  .wr-chat-overlay b{margin-right:5px;color:#8be0ff;font-size:11.5px}
}

/* Mobile Watch Room: no scrolling to chat. The overlay shows the live flow on the
   video; the composer pins to the bottom of the screen (same viewport-var recipe as
   the DM composer, so it rides the iOS keyboard). History stays inline below. */
@media(max-width:700px){
  .wr-chat .stream-composer{position:fixed;z-index:60;left:10px;right:10px;bottom:calc(var(--tabbar-h) + var(--safe-b) + var(--vvb, 0px) + 8px);margin:0;padding:8px 10px;border:1px solid rgba(255,255,255,.18);border-radius:15px;background:rgba(8,5,14,.8);backdrop-filter:blur(18px);-webkit-backdrop-filter:blur(18px)}
  .watch-room{padding-bottom:210px}
}

/* Board doors + board-room hero play the page's own background loop (same src as
   #bgvideo, class ph-v so rotation retargeting, the seam guard, and calm-bg all
   apply). The photo art stays underneath as the calm-mode / autoplay-cap fallback. */
video.door-loop{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;z-index:-2;pointer-events:none}
/* Hero subtitles were grey ghosts over bright loops at the 44% veil — lift them. */
.bd-head p, .lh-head p, .oc-hero p, .rr-head p, .bh-head p, .rb-head p { color:#ddd5e4; text-shadow:0 1px 3px rgba(0,0,0,.95), 0 2px 22px rgba(0,0,0,.8); }

/* Filter chips: brighter labels so they read over any loop. */
.rr-filters button{color:#b3a8c0}

/* TikTok-Live grammar for the mobile Watch Room (2026-07-14): the video fills the
   viewport down to the tab bar, no giant title painted on the stream (host + count
   ride the top), and the chat feed is a taller column hugging the pinned composer. */
/* Mobile Watch Room: the video pins to the TOP at natural aspect, the chat flows
   directly under it (her call — no full-height letterbox with black gaps). */
@media(max-width:700px){
  .watch-room{padding-inline:12px;padding-bottom:120px}
  .watch-room .wr-room-head, .wr-stage-top, .wr-stage-copy{display:none}
  .watch-room .wr-stage{aspect-ratio:16/9;height:auto;border-radius:16px;margin:6px 0 0}
  .watch-room .wr-stage .stream-video{object-fit:cover}
  .watch-room .wr-chat{position:static;margin-top:10px}
  .watch-room .wr-chat .stream-chat{height:auto!important;min-height:0!important;max-height:none!important;overflow:visible!important}
  .watch-room .wr-chat .stream-composer{position:static;margin-top:10px}
  .wr-chat-overlay{display:none}
}

/* door-loop videos that are NOT ph-v (per-door picks) still respect calm mode and
   the GPU seam guard. */
.calm-bg video.door-loop{display:none!important}
video.door-loop{transform:translateZ(0);will-change:transform;backface-visibility:hidden}

/* Board doors: solid neon panels (per-board stable tone). The video lives on the
   board page itself (brd-hero mirrors the page background loop). */
.bd-door.tone-0,.rr-game.tone-0{background:linear-gradient(135deg,#1c0530 0%,#71209f 62%,#ff2d9b 140%)}
.bd-door.tone-1,.rr-game.tone-1{background:linear-gradient(135deg,#03122b 0%,#0b4f9e 62%,#38bdf8 140%)}
.bd-door.tone-2,.rr-game.tone-2{background:linear-gradient(135deg,#140430 0%,#5b21b6 62%,#a855f7 140%)}
.bd-door.tone-3,.rr-game.tone-3{background:linear-gradient(135deg,#031f28 0%,#0e7490 62%,#22d3ee 140%)}
.bd-door.tone-4,.rr-game.tone-4{background:linear-gradient(135deg,#2e0618 0%,#d61f84 62%,#ff8fd0 140%)}
.bd-door.tone-5,.rr-game.tone-5{background:linear-gradient(135deg,#06263f 0%,#1e88d4 62%,#9fe1ff 140%)}
.bd-door.has-cover{background:#07040e !important}
.bd-door-art{background:var(--bd-art) center/cover !important;opacity:.23;filter:saturate(.85) brightness(.85)}
.bd-door.has-cover .bd-door-grade{background:linear-gradient(0deg,#05030b 6%,rgba(5,3,11,.42) 74%,rgba(5,3,11,.6) 100%),linear-gradient(100deg,rgba(5,3,11,.7),rgba(5,3,11,.15) 72%)}
.bd-door[class*="tone-"] .bd-door-grade{background:linear-gradient(0deg,rgba(4,2,9,.78) 8%,rgba(4,2,9,.12) 65%,transparent)}

/* ═════ Neon pass 2026-07-14 (late): cycling outline strokes, Go Live rim cards,
   catalog header rebalance ═════ */
/* Outlined display words -> the TRAVELING sidebar-rim gradient runs through the
   letters (background-image longhand on purpose: shorthand freezes rimTravel). */
.iv-head h1 span, .ref-entry-copy h1 span, .ntf-head h1 span, .agc-head h1 span, .rr-head h1 span,
.csig-hero h1 span, .gs-head h1 span, .sq-command-head h1 span, .lft-studio>header h1 span,
.channel-studio>header h1 span, .rc-head h1 span, .sf-head h1 span, .onb-entry-copy h1 span {
  color: transparent; -webkit-text-stroke: 0;
  background-image: linear-gradient(100deg, #38bdf8, #ff2d9b 25%, #7c5cff 50%, #ff2d9b 75%, #38bdf8);
  background-size: 300% 100%;
  -webkit-background-clip: text; background-clip: text;
  animation: rimTravel 7s linear infinite;
}
/* Go Live source cards: traveling blue↔pink rims (same masked-ring recipe). */
.bb-source-grid>button{position:relative;isolation:isolate;border-color:transparent!important}
.bb-source-grid>button::before{content:"";position:absolute;inset:0;border-radius:15px;padding:1.4px;background-image:linear-gradient(100deg,#38bdf8,#ff2d9b 25%,#7c5cff 50%,#ff2d9b 75%,#38bdf8 100%);background-size:300% 100%;-webkit-mask:linear-gradient(#000 0 0) content-box,linear-gradient(#000 0 0);-webkit-mask-composite:xor;mask-composite:exclude;animation:rimTravel 7s linear infinite;pointer-events:none}
.bb-source-grid>button:nth-child(2)::before{animation-delay:-3.5s}
/* Catalog header: hero text bigger on phones, ADD A GAME tile compact. */
@media(max-width:700px){
  .rr-head h1{font-size:56px}
  .rr-head p{font-size:12px;line-height:1.5}
  .rr-head>a{min-width:0;grid-template-columns:26px 1fr;gap:1px 8px;padding:9px 11px;border-radius:11px}
  .rr-head>a>svg{width:14px}
}
@media (prefers-reduced-motion: reduce){
  .bb-source-grid>button::before{animation:none}
  .iv-head h1 span, .ref-entry-copy h1 span, .ntf-head h1 span, .agc-head h1 span, .rr-head h1 span,
  .csig-hero h1 span, .gs-head h1 span, .sq-command-head h1 span, .lft-studio>header h1 span,
  .channel-studio>header h1 span, .rc-head h1 span, .sf-head h1 span, .onb-entry-copy h1 span { animation: none; }
}

/* Board door names in the big display voice — giant heavy uppercase fills the
   neon panel (same type language as the page heroes). */
.bd-door-copy>b{margin-top:8px;font-size:clamp(38px,5.2vw,72px);line-height:.86;letter-spacing:-.06em;text-transform:uppercase;font-weight:900}
.bd-door.big .bd-door-copy>b{font-size:clamp(48px,6.5vw,92px)}
.bd-door-copy>em{margin-top:9px}

/* The #app b/strong readability floor (max(14px,100%)) caps the door names — these
   carry #app specificity so the display size actually lands. */
#app .bd-door-copy>b{font-size:clamp(38px,5.2vw,72px)}
#app .bd-door.big .bd-door-copy>b{font-size:clamp(48px,6.5vw,92px)}
@media(max-width:430px){#app .bd-door-copy>b{font-size:34px}#app .bd-door.big .bd-door-copy>b{font-size:40px}}

/* Giant names made the copy climb into the status pill — reserve its lane. */
#app .bd-door{padding-top:50px}

/* Mobile Live header zone (her circle): strip labels were ghost-grey, and the two
   filter groups stacked with dead space — one bright strip + one scrolling chip row. */
@media(max-width:640px){
  .lh-status>span{color:#c3bacd}
  .lh-status b{font-size:15px}
  .lh-filter-row{flex-wrap:nowrap;justify-content:flex-start;gap:6px;overflow-x:auto;scrollbar-width:none}
  .lh-filter-row::-webkit-scrollbar{display:none}
  .lh-filter-tabs,.lh-game-tabs{width:auto;flex:0 0 auto;overflow:visible}
  .lh-game-tabs{padding-left:8px;border-left:1px solid rgba(255,255,255,.14)}
}

/* Board-room hero: inset rounded command card (was full-bleed) — matches the
   OGC COMMAND panel language: smaller box, big radius, pink hairline. */
.brd-hero{min-height:330px;width:min(1240px,calc(100% - 32px));margin:14px auto 0;padding:26px 28px;border-radius:26px;overflow:hidden;border:1px solid rgba(255,45,155,.32);box-shadow:0 24px 70px rgba(0,0,0,.4)}
.brd-status{left:22px;top:18px}
@media(max-width:700px){.brd-hero{min-height:300px;width:calc(100% - 20px);padding:20px 16px;border-radius:22px}.brd-status{left:16px}}

/* Doors on phones: full-width STACKS (her rule — no cramped 2-col; the base ≤700px
   rules already flex-column the grids at full door height). Keep only the meta sizing. */
@media(max-width:700px){
  #app .bd-door{min-width:0}
  .bd-door-copy>em{font-size:11px}
  .bd-door-copy>span{font-size:10px}
  .bd-door-foot{left:12px;right:12px}
}

/* Chats tab row: pills only, no slab behind them (her call — stays sticky). */
.oc-tabs{background:transparent}

/* Home command stats on phones: compact rows (number + label inline), half the height. */
@media(max-width:700px){
  #app .hc-metrics a{min-height:0;padding:11px 12px;display:flex;flex-direction:row;align-items:center;gap:8px}
  #app .hc-metrics b{font-size:18px}
}

/* Room hero plays the page loop (art photo stays as calm/autoplay fallback);
   auto z so DOM order slots it above the art, below the grade. */
.re-hero video.door-loop{z-index:auto}

/* Room cards show Tovah's cover banners (2026-07-17: photos restored — she wants
   the covers, not solid tone panels). Big display names ride over the photo. */
.rr-room{border:1px solid rgba(255,255,255,.14)}
.rr-room-grade{background:linear-gradient(0deg,rgba(4,2,9,.9) 4%,rgba(4,2,9,.28) 48%,rgba(4,2,9,.12) 88%)}
#app .rr-room-copy h2{font-size:clamp(22px,2.1vw,30px);line-height:.92;letter-spacing:-.045em;text-transform:uppercase;font-weight:900}

/* Created-cover games render as neon tone panels with display names. */
.rr-game[class*="tone-"] .rr-game-grade{background:linear-gradient(0deg,rgba(4,2,9,.72) 8%,rgba(4,2,9,.08) 62%,transparent)}
#app .rr-game[class*="tone-"] .rr-game-copy>b{font-size:clamp(24px,2.2vw,34px);line-height:.9;letter-spacing:-.05em;text-transform:uppercase;font-weight:900}

/* Play controls: light CATALOG-style glass is the DEFAULT; the active one goes neon. */
.rr-mode a{background:rgba(255,255,255,.055);border:1px solid rgba(190,170,255,.28);color:#e6dff0}
.rr-mode small{color:#bfb3d9;background:rgba(255,255,255,.07)}
.rr-mode a.on{color:#fff;border-color:rgba(255,45,155,.62);background:rgba(255,45,155,.09);box-shadow:0 0 20px rgba(255,45,155,.28)}
.rr-mode a.on small{color:#ff9ecb;background:rgba(255,45,155,.14)}
.rr-search{background:rgba(255,255,255,.05);border-color:rgba(190,170,255,.24)}
.rr-filters button{background:rgba(255,255,255,.05);border-color:rgba(190,170,255,.22);color:#cfc5e2}
.rr-filters button.on{color:#fff;border-color:rgba(56,189,248,.6);background:rgba(56,189,248,.1);box-shadow:0 0 16px rgba(56,189,248,.25)}

/* ADD A GAME: "Open its room immediately" glows through changing neon lights. */
@keyframes neonText{0%,100%{color:#5bdcff;text-shadow:0 0 12px rgba(91,220,255,.55)}33%{color:#ff7cc0;text-shadow:0 0 12px rgba(255,45,155,.6)}66%{color:#c9a6ff;text-shadow:0 0 12px rgba(168,85,247,.6)}}
.rr-head>a small{animation:neonText 4.5s ease-in-out infinite}
@media (prefers-reduced-motion: reduce){.rr-head>a small{animation:none}}

/* Member room header plays the page loop over its photo layer (grade stays on top). */
.lr-head video.door-loop{opacity:.6}
/* Search bar: dark fill back (light glass washed out over bright loops), lavender rim stays. */
.rr-search{background:rgba(10,7,20,.62);border-color:rgba(190,170,255,.3)}
.rr-search input::placeholder{color:#b9aecb}
/* Filter chip counts in neon. */
.rr-filters button i{color:#5bdcff;background:rgba(56,189,248,.12);text-shadow:0 0 8px rgba(91,220,255,.6)}
.rr-filters button.on i{color:#ff9ecb;background:rgba(255,45,155,.16);text-shadow:0 0 8px rgba(255,45,155,.6)}

/* Squad hero plays the page loop above the still art, under the grade + copy. */
.th-hero video.th-loop{z-index:0}
.rb-covers{display:flex;flex-direction:column;gap:8px;margin-top:14px}.rb-covers>span{color:var(--cyan);font-size:7px;font-weight:900;letter-spacing:.17em}.rb-covers>div,.sf-covers{display:flex;flex-wrap:wrap;gap:8px}.sf-covers{margin-top:6px}.cover-swatch{width:74px;height:48px;border-radius:11px;background-size:cover;background-position:center;border:2px solid rgba(255,255,255,.14);cursor:pointer;padding:0}.cover-swatch.on{border-color:#5ad0ff;box-shadow:0 0 14px rgba(90,208,255,.45)}
.ent-covers{display:flex;flex-wrap:wrap;gap:8px;margin-top:8px;max-height:214px;overflow-y:auto;padding-right:2px}
.ent-cover-label{color:#9db2ff;font-size:11px;font-weight:900;letter-spacing:.1em;margin-top:16px}
.cg-help-btn .cg-solo-q{font-size:16px;font-weight:900;line-height:1}
.oc-goto{text-decoration:none;color:inherit}.oc-goto:hover{border-color:rgba(126,151,255,.4)}

@media(max-width:700px){.agc-results>div,.agc-community>div{grid-template-columns:1fr}.agc-results>div>.agc-game:nth-child(n+9){display:none}}
.cn-past{margin-top:14px}.cn-past>small{display:block;color:var(--cyan);font-size:7px;font-weight:900;letter-spacing:.17em;margin-bottom:8px}.cn-past>div{display:flex;flex-wrap:wrap;gap:8px}.cn-past button{display:flex;flex-direction:column;gap:3px;max-width:300px;padding:10px 13px;color:#cfc6da;background:rgba(7,4,13,.8);border:1px solid rgba(168,85,247,.24);border-radius:12px;font:inherit;text-align:left;cursor:pointer}.cn-past button:hover{border-color:rgba(90,208,255,.4)}.cn-past b{font-size:12px;color:#fff;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:270px}.cn-past em{color:#7d7287;font-size:10px;font-style:normal}
.rb-game-search{display:grid;grid-template-columns:30px minmax(0,1fr) auto;gap:10px;align-items:center;margin:2px 0 12px;padding:0 14px;border:1px solid rgba(255,255,255,.1);border-radius:13px;background:rgba(7,4,13,.8)}.rb-game-search svg{width:15px;color:#59dcff}.rb-game-search input{min-width:0;height:48px;color:#fff;background:none;border:0;outline:0;font:inherit;font-size:14px}.rb-game-search input::placeholder{color:#655b70}.rb-game-search em{color:#716677;font-size:6px;font-weight:900;letter-spacing:.14em;font-style:normal}

@media(max-width:700px){.oc-section-head{flex-direction:column;align-items:flex-start;gap:8px}.oc-head-cta{white-space:nowrap;order:-1;width:max-content}.oc-section-head>strong{display:none}}

@media(max-width:700px){#app .rr-mode b{font-size:11px;letter-spacing:.05em;white-space:nowrap}#app .rr-mode small{font-size:9px}}

@media(max-width:700px){.yp-tonight>div{display:flex;flex-direction:column;gap:8px}.yp-tonight>div>a{display:grid;grid-template-columns:36px minmax(0,1fr);column-gap:12px;row-gap:2px;align-items:center;width:100%}.yp-tonight>div>a>span{grid-row:1/4}.yp-tonight>div>a b,.yp-tonight>div>a em{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;min-width:0}}

.bb-poster-draft{background:radial-gradient(circle at 50% 34%,rgba(124,92,246,.24),transparent 55%),linear-gradient(160deg,#140b22,#07040d)}.bb-poster-draft .bb-person{position:absolute;inset:0;display:grid;place-items:center;color:rgba(180,160,230,.5)}.bb-poster-draft .bb-person svg{width:96px;height:96px;filter:drop-shadow(0 0 18px rgba(124,92,246,.35))}

/* 2026-07-15 late: the appbar slab is gone — the icons carry their own chrome. */
.appbar{background:none;border-bottom:0;box-shadow:none;backdrop-filter:none}

/* anon roster row — richer per-member info, blurred avatar (profile locked), opens the player card */
.th-roster article.anon{grid-template-columns:30px 51px minmax(0,1fr) auto;cursor:pointer}
.th-roster article.anon:hover{background:rgba(255,255,255,.02)}
.th-anon-av{position:relative;width:51px;height:51px;overflow:hidden;border-radius:15px;flex:0 0 auto}
.th-anon-av .avatar{width:51px;height:51px;filter:blur(6px) saturate(1.1)}
.th-anon-av em{position:absolute;inset:0;display:grid;place-items:center;color:#dfe6ff;background:rgba(6,4,13,.34)}
.th-anon-av em svg{width:17px}
.th-anon-info{display:flex;flex-direction:column;min-width:0}
.th-anon-meta{display:flex;align-items:center;gap:5px;margin-top:6px;color:#8b809f;font-size:6.5px;font-style:normal;text-decoration:none;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.th-anon-meta i{width:5px;height:5px;flex:0 0 auto;border-radius:50%;background:#5d5563}
.th-anon-meta i.on{background:#43ed91;box-shadow:0 0 6px #43ed91}
.th-anon-cta{display:flex;align-items:center;gap:4px;color:#8fa6ff;font-size:6.5px;font-weight:900;letter-spacing:.05em;white-space:nowrap}
.th-anon-cta svg{width:11px}
@media(max-width:700px){.th-roster article.anon{grid-template-columns:26px 44px minmax(0,1fr);row-gap:6px}.th-anon-cta{grid-column:2/-1;justify-content:flex-start}}
/* Search-the-club: roomier PERMANENT TEAMS rows (bigger margins) */
.global-search .gs-teams-grid{display:flex;flex-direction:column;gap:11px}
.global-search .gs-team{padding:17px 20px;gap:15px}
/* roster-originated player card: blur the face (identity stays locked until teammates) */
.peek-blur .pd-photo{filter:blur(24px) saturate(1.05);transform:scale(1.08)}
.peek-lock{position:absolute;top:14px;left:14px;z-index:4;display:flex;align-items:center;gap:7px;padding:8px 11px;border-radius:999px;color:#dfe6ff;background:rgba(6,4,13,.62);border:1px solid rgba(126,151,255,.3);backdrop-filter:blur(8px);font-size:9px;font-weight:800}
.peek-lock svg{width:13px;flex:0 0 auto;color:#8fa6ff}
/* host Edit-room button on the room hero */
.re-edit{display:inline-flex;align-items:center;gap:6px;margin-top:14px;padding:9px 14px;color:#dfe6ff;border:1px solid rgba(255,255,255,.22);border-radius:11px;background:rgba(10,7,20,.55);backdrop-filter:blur(8px);font:inherit;font-size:11px;font-weight:800;cursor:pointer}
.re-edit:hover{border-color:rgba(126,151,255,.5)}
.re-edit svg{width:13px}
/* team roster: invite-your-friends button */
.th-invite-friends{width:100%;display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:11px;margin:14px 0 4px;padding:13px 15px;color:#fff;border:1px solid rgba(126,151,255,.3);border-radius:14px;background:linear-gradient(120deg,rgba(56,189,248,.09),rgba(168,85,247,.1));font:inherit;cursor:pointer;text-align:left}
.th-invite-friends:hover{border-color:rgba(126,151,255,.55)}
.th-invite-friends>svg:first-child{width:20px;color:#8fa6ff}
.th-invite-friends>svg:last-child{width:14px;color:#8fa6ff;justify-self:end}
.th-invite-friends span{display:flex;flex-direction:column;min-width:0}
.th-invite-friends b{font-size:11px}
.th-invite-friends small{margin-top:2px;color:#9d92aa;font-size:8px}
/* voice-lounge button: pull the label + subline closer */
.th-command>div>button span{gap:0}
.th-command>div>button b{line-height:1.05}
.th-command>div>button small{margin-top:1px;line-height:1.1}

.lh-plan-host{display:inline-flex;align-items:center;gap:8px;margin-top:6px;color:#a79db1;text-decoration:none;font-size:12px}.lh-plan-host:hover span{color:#5ad0ff}.lh-plan-host .avatar{width:24px;height:24px}

@media(max-width:700px){.rb-game-picks{grid-template-columns:1fr!important;display:grid;gap:8px}.rb-game-search{grid-template-columns:30px minmax(0,1fr)}.rb-game-search em{display:none}}

.lh-head-actions a small{animation:neonText 4.5s ease-in-out infinite}

body[data-bg="auth"] #bgvideo{display:none}
.rr-seeall{color:#42ee91;background:none;border:0;font:inherit;font-size:10px;font-weight:900;letter-spacing:.12em;cursor:pointer}.rr-seeall:hover{color:#5ad0ff}

/* ── Setup tour: the Steam receipts step — a live match-card preview ── */
.onb-steam-card { position: relative; display: flex; align-items: center; gap: 14px; padding: 16px; border-radius: 18px;
  background: linear-gradient(135deg, rgba(56,189,248,0.10), rgba(255,45,155,0.08));
  border: 1px solid rgba(56,189,248,0.40); overflow: hidden; }
.onb-steam-card .osc-ava { width: 54px; height: 54px; border-radius: 14px; flex: 0 0 auto;
  display: flex; align-items: center; justify-content: center; font-weight: 900; font-size: 20px; color: #fff; }
.onb-steam-card .osc-copy { min-width: 0; }
.onb-steam-card .osc-copy small { display: block; color: #38bdf8; font-size: 9.5px; font-weight: 900; letter-spacing: 0.18em; }
.onb-steam-card .osc-copy b { display: block; color: #fff; font-size: 16px; font-weight: 900; line-height: 1.2; }
.onb-steam-card .osc-copy span { color: #a79cbb; font-size: 12px; }
.onb-steam-card .osc-badge { margin-left: auto; flex: 0 0 auto; padding: 8px 12px; border-radius: 999px;
  font-size: 10.5px; font-weight: 900; letter-spacing: 0.06em; color: #052015;
  background: linear-gradient(135deg, #7CFCB1, #26e0a8);
  box-shadow: 0 0 18px rgba(124,252,177,0.60); animation: oscPulse 1.6s ease-in-out infinite; }
@keyframes oscPulse { 50% { box-shadow: 0 0 32px rgba(124,252,177,0.95); transform: scale(1.06); } }
.onb-steam-card.linked .osc-badge { animation: none; }
.osc-note { padding: 10px 14px; border-radius: 12px; background: rgba(56,189,248,0.08);
  border: 1px solid rgba(56,189,248,0.35); color: #8be0ff; font-size: 12.5px; font-weight: 700; line-height: 1.5; }

/* ── deck photo-overlay (the part she loves: info ON the photo) ── */
.pd-overlay { position: absolute; left: 0; right: 0; bottom: 0; z-index: 2; display: none; padding: 18px 16px 14px;
  background: linear-gradient(0deg, rgba(5,3,10,.95) 45%, rgba(5,3,10,.55) 78%, transparent); border-radius: 0 0 21px 21px; }
.pd-overlay .po-id span { color: #8be0ff; font-size: 13px; font-weight: 900; letter-spacing: .2em; text-transform: uppercase;
  text-shadow: 0 0 4px rgba(139,224,255,.9), 0 0 12px rgba(56,189,248,.75), 0 0 26px rgba(56,189,248,.45); }
.pd-overlay .po-id h2 { color: #fff; font-size: 30px; font-weight: 900; line-height: 1.05; letter-spacing: -0.02em; margin: 1px 0 6px; }
#app .pd-overlay .po-id h2 { text-shadow: 0 0 5px rgba(255,255,255,.85), 0 0 16px rgba(255,45,155,.8), 0 0 34px rgba(255,45,155,.5), 0 0 60px rgba(255,45,155,.28);
  animation: neonSignBreathe 3.4s ease-in-out infinite alternate; }
#app .pd-intel .pd-kicker { text-shadow: 0 0 4px rgba(139,224,255,.85), 0 0 12px rgba(56,189,248,.65), 0 0 24px rgba(56,189,248,.35); }
@keyframes neonSignBreathe {
  from { text-shadow: 0 0 5px rgba(255,255,255,.85), 0 0 16px rgba(255,45,155,.8), 0 0 34px rgba(255,45,155,.5), 0 0 60px rgba(255,45,155,.28); }
  to   { text-shadow: 0 0 6px rgba(255,255,255,.95), 0 0 20px rgba(255,45,155,.95), 0 0 44px rgba(255,45,155,.65), 0 0 80px rgba(56,189,248,.4); }
}
.pd-overlay .po-tag { color: #fff; font-weight: 800; font-size: 15px; line-height: 1.4; }
.pd-overlay .po-again { margin-top: 5px; color: #cfc3dd; font-size: 13px; }
.pd-overlay .po-again b { color: #38bdf8; }
.pd-overlay .po-steam { margin-top: 4px; color: #43e2a6; font-size: 13px; font-weight: 800; }
.pd-overlay .po-chips { display: flex; flex-wrap: wrap; gap: 6px; margin-top: 9px; }
.pd-overlay .po-chips .chip { font-size: 11px; padding: 6px 11px; background: rgba(10,7,16,.55); backdrop-filter: blur(6px); }
.pd-overlay .po-chips .chip b { font-weight: 900; }
.pd-overlay .po-why { margin-top: 11px; background: rgba(255,255,255,.09); border: 1px solid rgba(255,255,255,.2); border-radius: 999px;
  color: #fff; font-weight: 800; font-size: 12px; padding: 8px 14px; cursor: pointer; }
.pd-overlay .po-receipts { margin-top: 9px; color: #e6dff0; font-size: 12.5px; line-height: 1.85; font-weight: 600; }

/* ═══════════ THE IDENTITY LAYER (2026-07-17): Top 8 · grid · song · flair · Yap · Daniel ═══════════ */

/* falling flair — MySpace hearts, club palette */
.yp-flair { position: fixed; inset: 0; z-index: 5; pointer-events: none; overflow: hidden; }
.yp-flair span { position: absolute; top: -44px; display: block; opacity: 0; animation: flairFall linear infinite; }
.yp-flair span svg { width: 100%; height: 100%; display: block; }
.yp-flair span:nth-child(odd) { color: #ff2d9b; filter: drop-shadow(0 0 8px rgba(255,45,155,.75)); }
.yp-flair span:nth-child(even) { color: #38bdf8; filter: drop-shadow(0 0 8px rgba(56,189,248,.75)); }
.yp-flair span:nth-child(3n) { transform: scale(.8); }
@keyframes flairFall {
  0% { transform: translateY(0) rotate(0deg); opacity: 0; }
  6% { opacity: .9; }
  85% { opacity: .8; }
  100% { transform: translateY(115vh) rotate(58deg); opacity: 0; }
}
@media (prefers-reduced-motion: reduce) { .yp-flair { display: none; } }
/* CARD FLAIR (z:5) falls IN FRONT of every box but BEHIND the words. The five frosted
   cards drop their backdrop-filter (the frost is invisible on the ~black profile bg) so
   they stop trapping text in a stacking context; then only the TEXT + UI leaves lift to
   z:6 (above the flair) while box backgrounds, avatars and media stay beneath it. */
.pr-page :is(.pr-post, .pr-composer, .yp-panel, .yp-side-card, .pr-quote) {
  backdrop-filter: none !important; -webkit-backdrop-filter: none !important; }
.pr-page :is(h1, h2, h3, p, b, strong, small, time, em, i, blockquote, button, label) {
  position: relative; z-index: 6; }

/* TOP 8 */
.yp-top8 .top8-grid { display: grid; grid-template-columns: repeat(4, minmax(0,1fr)); gap: 10px; }
@media (max-width: 700px) { .yp-top8 .top8-grid { grid-template-columns: repeat(2, minmax(0,1fr)); } }
.top8-cell { position: relative; display: flex; flex-direction: column; align-items: center; gap: 7px; padding: 16px 8px 13px;
  border-radius: 16px; background: rgba(255,255,255,.035); border: 1.5px solid rgba(168,85,247,.28); text-align: center; color: inherit; }
.top8-cell:nth-child(1) { border-color: rgba(255,45,155,.55); box-shadow: 0 0 18px rgba(255,45,155,.16) inset; }
.top8-cell i { position: absolute; top: 7px; left: 9px; font-style: normal; font-size: 10px; font-weight: 900; color: #38bdf8;
  text-shadow: 0 0 8px rgba(56,189,248,.7); }
.top8-cell b { font-size: 12.5px; color: #fff; max-width: 100%; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.top8-cell small { font-size: 10.5px; color: #a79cbb; max-width: 100%; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.top8-add { cursor: pointer; border-style: dashed; color: #cfc3dd; background: transparent; font: inherit; }
.top8-add span { font-size: 22px; line-height: 1; color: #38bdf8; }
.top8-sheet .top8-picklist { max-height: 46vh; overflow-y: auto; margin: 10px 0 14px; display: flex; flex-direction: column; gap: 7px; }
.top8-pickrow { display: flex; align-items: center; gap: 10px; width: 100%; padding: 9px 12px; border-radius: 13px; cursor: pointer;
  background: rgba(255,255,255,.035); border: 1.5px solid rgba(255,255,255,.1); color: inherit; font: inherit; text-align: left; }
.top8-pickrow span { min-width: 0; flex: 1; display: flex; flex-direction: column; }
.top8-pickrow b { color: #fff; font-size: 13px; } .top8-pickrow small { color: #a79cbb; font-size: 11px; }
.top8-pickrow i { font-style: normal; font-weight: 900; font-size: 13px; color: #cfc3dd; }
.top8-pickrow.on { border-color: rgba(255,45,155,.6); background: rgba(255,45,155,.08); }
.top8-pickrow.on i { color: #ff2d9b; text-shadow: 0 0 8px rgba(255,45,155,.7); }

/* THE GRID — photos, Instagram bones, club rules */
.yp-photos .ph-grid { display: grid; grid-template-columns: repeat(3, minmax(0,1fr)); gap: 6px; }
.ph-cell { position: relative; margin: 0; aspect-ratio: 1; border-radius: 12px; overflow: hidden; background: rgba(255,255,255,.04); }
.ph-cell img { width: 100%; height: 100%; object-fit: cover; display: block; }
.ph-add { display: grid; place-items: center; aspect-ratio: 1; border-radius: 12px; border: 1.5px dashed rgba(56,189,248,.45);
  color: #38bdf8; font-size: 26px; cursor: pointer; background: rgba(56,189,248,.05); }
.ph-like { position: absolute; right: 6px; bottom: 6px; width: 32px; height: 32px; display: grid; place-items: center;
  border-radius: 50%; border: 0; cursor: pointer; color: #fff; background: rgba(5,3,10,.55); backdrop-filter: blur(6px); }
.ph-like svg { width: 16px; }
.ph-like.on { color: #ff2d9b; filter: drop-shadow(0 0 7px rgba(255,45,155,.8)); }
.ph-count { position: absolute; left: 6px; bottom: 6px; display: inline-flex; align-items: center; gap: 4px; padding: 4px 8px;
  border-radius: 99px; font-size: 10.5px; font-weight: 900; color: #ffb3d9; background: rgba(5,3,10,.6); backdrop-filter: blur(6px); }
.ph-count svg { width: 11px; }
.ph-del { position: absolute; top: 6px; right: 6px; width: 24px; height: 24px; border-radius: 50%; border: 0; cursor: pointer;
  color: #fff; background: rgba(5,3,10,.6); font-size: 13px; line-height: 1; }

/* PROFILE SONG */
.yp-song iframe { border-radius: 13px; border: 0; margin-top: 9px; }
.yp-song .yp-song-set { display: flex; gap: 7px; margin-top: 9px; }
.yp-song .yp-song-set input { flex: 1; min-width: 0; padding: 10px 12px; border-radius: 11px; color: #fff; font: inherit; font-size: 12.5px;
  background: rgba(255,255,255,.05); border: 1px solid rgba(255,255,255,.14); }
.yp-song .yp-song-set button { padding: 10px 14px; border-radius: 11px; border: 1px solid rgba(56,189,248,.4); color: #8be0ff;
  background: rgba(56,189,248,.08); font: inherit; font-size: 12px; font-weight: 900; cursor: pointer; }
.yp-song em, .yp-flairpick em { display: block; margin-top: 8px; color: #81768b; font-size: 10.5px; font-style: normal; line-height: 1.45; }
.pe-song-set { display: flex; align-items: stretch; gap: 8px; margin-top: 13px; }
.pe-song-set .field { flex: 1; min-width: 0; margin: 0; }
.pe-song-set button { flex: 0 0 auto; padding: 0 18px; color: #8be0ff; background: rgba(56,189,248,.08);
  border: 1px solid rgba(56,189,248,.4); border-radius: 10px; font: inherit; font-size: 11.5px; font-weight: 900; cursor: pointer; }
.pe-song-remove { margin-top: 11px; font-size: 11px; }
.pe-hint { display: block; margin-top: 10px; color: #81768b; font-size: 10.5px; font-style: normal; line-height: 1.45; }
.yp-flairpick .flair-mini { display: inline-block; width: 12px; height: 12px; margin-right: 5px; vertical-align: -1px; }
.yp-flairpick .flair-mini svg { width: 100%; height: 100%; display: block; }

/* Daniel */
.daniel-tab { display: block; width: 26px; height: 26px; border-radius: 50%; overflow: hidden; border: 1.5px solid rgba(56,189,248,.55);
  box-shadow: 0 0 10px rgba(56,189,248,.35); }
.daniel-tab img { width: 100%; height: 100%; object-fit: cover; object-position: top; display: block; }
#tabbar a.on .daniel-tab { border-color: #ff2d9b; box-shadow: 0 0 12px rgba(255,45,155,.6); }
.dn-hero { display: flex; gap: 16px; align-items: center; }
.dn-hero .dn-face { flex: 0 0 auto; width: 84px; height: 84px; border-radius: 50%; overflow: hidden;
  border: 2px solid rgba(255,45,155,.5); box-shadow: 0 0 22px rgba(255,45,155,.3), 0 0 44px rgba(56,189,248,.2); }
.dn-hero .dn-face img { width: 100%; height: 100%; object-fit: cover; object-position: top; }
.dn-thread { display: flex; align-items: center; gap: 11px; margin-bottom: 12px; padding: 12px 14px; border-radius: 16px;
  background: linear-gradient(100deg, rgba(255,45,155,.08), rgba(56,189,248,.06)); border: 1.5px solid rgba(255,45,155,.35); color: inherit; }
.dn-thread .oc-thread-copy { min-width: 0; flex: 1; display: flex; flex-direction: column; }
.dn-thread b { color: #fff; font-size: 13.5px; display: flex; align-items: center; gap: 7px; }
.dn-thread small { color: #a79cbb; font-size: 11.5px; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
.dn-thread em { font-style: normal; color: #38bdf8; font-weight: 900; }
.dn-tag { font-style: normal; font-size: 8px; font-weight: 900; letter-spacing: .12em; color: #8be0ff; padding: 2.5px 7px;
  border-radius: 99px; background: rgba(56,189,248,.12); border: 1px solid rgba(56,189,248,.35); }
.yp-daniel-cta { display: inline-flex; align-items: center; gap: 9px; padding: 13px 18px; border-radius: 14px; color: #fff;
  font-weight: 900; font-size: 12.5px; letter-spacing: .06em; background: linear-gradient(120deg,#4d70dc,#c23f99);
  border: 1px solid rgba(225,113,190,.4); }
.yp-daniel-cta svg { width: 16px; }

/* YAP — the pulse */
.yap-page { max-width: 660px; margin: 0 auto; }
.yap-hero h1 { font-size: 54px; letter-spacing: -.05em; margin: 6px 0 4px; }
.yap-hero p { color: #a79cbb; margin: 0 0 16px; }
.yap-composer { padding: 14px; border-radius: 18px; background: rgba(255,255,255,.035); border: 1px solid rgba(255,255,255,.12); }
.yap-composer textarea { width: 100%; resize: none; border: 0; background: transparent; color: #fff; font: inherit; font-size: 15px; outline: none; }
.yap-tools { display: flex; align-items: center; justify-content: space-between; margin-top: 8px; }
.yap-tools small { color: #81768b; font-size: 11px; font-weight: 800; }
.yap-feed { margin-top: 18px; display: flex; flex-direction: column; gap: 10px; }
.yap-row { display: flex; gap: 11px; padding: 14px; border-radius: 16px; background: rgba(255,255,255,.03); border: 1px solid rgba(255,255,255,.09); }
.yap-ava { flex: 0 0 auto; }
.yap-main { min-width: 0; flex: 1; }
.yap-main header { display: flex; align-items: baseline; gap: 7px; flex-wrap: wrap; }
.yap-main header b { color: #fff; font-size: 13.5px; }
.yap-main header span, .yap-main header time { color: #81768b; font-size: 11.5px; }
.yap-main p { margin: 5px 0 8px; color: #e6dff0; font-size: 14px; line-height: 1.55; overflow-wrap: break-word; }
.yap-main footer { display: flex; align-items: center; gap: 14px; }
.yap-like { display: inline-flex; align-items: center; gap: 6px; padding: 4px 8px; border-radius: 10px; border: 0;
  background: transparent; color: #a79cbb; cursor: pointer; font: inherit; font-size: 11.5px; font-weight: 800; }
.yap-like svg { width: 14px; }
.yap-like.on { color: #a79cbb; }   /* liked = the heart fills; the pill stays calm (her call) */
.yap-like.on svg { color: #ff2d9b; filter: drop-shadow(0 0 6px rgba(255,45,155,.7)); }
.yap-like i { font-style: normal; }
/* yap like sits at the top-right of the header row (in-flow — never over the text);
   wall likes stay in their footer where they were. */
.pr-post.is-yap .pr-post-main header { flex-wrap: nowrap; }
.pr-post.is-yap .pr-post-main header .yap-like { margin-left: auto; align-self: center; flex-shrink: 0; }
/* breathing room between the yap rows in the YAPS panel (they were touching) */
.yp-panel .pr-post + .pr-post { margin-top: 13px; }
.yp-panel .yp-section-head { margin-bottom: 14px; }
.yap-del { border: 0; background: transparent; color: #81768b; font: inherit; font-size: 11px; cursor: pointer; }

/* seven tabs still breathe on small phones */
@media (max-width: 430px) {
  #tabbar a { font-size: 9px; }
  #tabbar a svg { width: 21px; }
  .daniel-tab { width: 23px; height: 23px; }
}

/* ═══════════ PROFILES v2 (2026-07-17): Facebook bones · MySpace soul · club skin ═══════════ */
.pr-page { max-width: 1060px; margin: 0 auto; padding: 0 0 40px; }

/* cover */
.pr-cover { position: relative; height: 250px; border-radius: 0 0 22px 22px; overflow: hidden; background: #120d1c; }
.pr-cover .pr-cover-img { position: absolute; inset: 0; background: var(--pr-cover, var(--pr-grad, linear-gradient(150deg,#2b2740,#1b1928))) center/cover; }
.pr-cover .pr-cover-grade { position: absolute; inset: 0; background: linear-gradient(0deg, rgba(6,4,12,.82), rgba(6,4,12,.05) 55%); }
.pr-cover-btns { position: absolute; right: 12px; bottom: 12px; display: flex; gap: 7px; }
.pr-cover-edit { display: inline-flex; align-items: center; gap: 6px; padding: 8px 12px; border-radius: 10px; cursor: pointer;
  color: #fff; font: inherit; font-size: 10.5px; font-weight: 900; letter-spacing: .08em;
  background: rgba(5,3,10,.6); border: 1px solid rgba(255,255,255,.25); backdrop-filter: blur(8px); }
.pr-cover-edit svg { width: 12px; }

/* head */
.pr-head { position: relative; display: flex; gap: 18px; align-items: flex-end; padding: 0 22px; margin-top: -46px; flex-wrap: wrap; }
.pr-ava .avatar.av-xl { width: 124px; height: 124px; font-size: 40px; border: 4px solid #0a0812;
  box-shadow: 0 0 0 2px rgba(56,189,248,.5), 0 0 28px rgba(56,189,248,.25); }
.pr-id { flex: 1; min-width: 220px; padding-bottom: 4px; }
.pr-id h1 { margin: 0; font-size: 34px; font-weight: 900; letter-spacing: -.03em; color: #fff;
  text-shadow: 0 0 5px rgba(255,255,255,.6), 0 0 18px rgba(255,45,155,.55), 0 0 38px rgba(255,45,155,.3); }
.pr-sub { margin: 3px 0 0; color: #8be0ff; font-size: 13px; font-weight: 800; display: flex; align-items: center; gap: 8px; flex-wrap: wrap; }
.pr-counts { margin: 5px 0 0; color: #a79cbb; font-size: 12.5px; }
.pr-counts b { color: #fff; }
.pr-minis { display: flex; margin-top: 9px; }
.pr-minis a { margin-right: -8px; transition: transform .15s; }
.pr-minis a:hover { transform: translateY(-3px); }
.pr-minis .avatar.av-sm { width: 30px; height: 30px; border: 2px solid #0a0812; }
.pr-actions { display: flex; gap: 8px; align-items: center; flex-wrap: wrap; padding-bottom: 8px; }
.pr-btn { display: inline-flex; align-items: center; gap: 8px; padding: 11px 16px; border-radius: 12px; cursor: pointer;
  color: #e6dff0; font: inherit; font-size: 11.5px; font-weight: 900; letter-spacing: .06em; text-decoration: none;
  background: rgba(255,255,255,.06); border: 1px solid rgba(255,255,255,.16); }
.pr-btn svg { width: 15px; }
.pr-btn.primary { color: #fff; background: linear-gradient(120deg,#4d70dc,#c23f99); border-color: rgba(225,113,190,.4); }

/* live-now ribbon */
.pr-live { display: flex; align-items: center; gap: 12px; margin: 14px 22px 0; padding: 12px 16px; border-radius: 14px; color: inherit;
  background: linear-gradient(100deg, rgba(52,211,153,.1), rgba(56,189,248,.06)); border: 1.5px solid rgba(52,211,153,.4); }
.pr-live i { width: 9px; height: 9px; border-radius: 50%; background: #34d399; box-shadow: 0 0 10px #34d399; animation: neonBreathe 2.6s ease-in-out infinite; }
.pr-live span { flex: 1; min-width: 0; display: flex; flex-direction: column; }
.pr-live b { color: #7CFCB1; font-size: 11px; letter-spacing: .12em; }
.pr-live small { color: #cfc3dd; font-size: 12px; margin-top: 2px; }
.pr-live strong { color: #fff; font-size: 12px; }

/* tabs — FB grammar, neon underline */
.pr-tabs { display: flex; gap: 2px; margin: 34px 14px 16px; padding: 0 8px; border-bottom: 1px solid rgba(255,255,255,.1); overflow-x: auto; }
.pr-tabs button { position: relative; padding: 12px 16px 13px; border: 0; background: transparent; cursor: pointer;
  color: #a79cbb; font: inherit; font-size: 12px; font-weight: 900; letter-spacing: .1em; white-space: nowrap; }
.pr-tabs button.on { color: #fff; text-shadow: 0 0 10px rgba(56,189,248,.6); }
.pr-tabs button.on::after { content: ''; position: absolute; left: 8px; right: 8px; bottom: -1px; height: 3px; border-radius: 3px;
  background: #38bdf8; box-shadow: 0 0 12px rgba(56,189,248,.7); }
/* the ACTIVE tab's WORDS travel through a rainbow */
.pr-tabs button.on, .pr-tabs button.on .t-full, .pr-tabs button.on .t-short {
  background: linear-gradient(90deg, #ff2d9b, #ff8a3d, #ffe14d, #7CFCB1, #38bdf8, #a855f7, #ff2d9b);
  background-size: 300% 100%;
  -webkit-background-clip: text; background-clip: text;
  -webkit-text-fill-color: transparent; color: transparent;
  animation: tabRainbow 3.5s linear infinite;
  text-shadow: none;
  filter: drop-shadow(0 0 8px rgba(255,45,155,.35));
}
@keyframes tabRainbow { to { background-position: 300% 0; } }
.t-short { display: none; }

/* body */
.pr-body { padding: 18px 14px 0; }
.pr-cols { display: grid; grid-template-columns: 340px minmax(0,1fr); gap: 16px; align-items: start; }
.pr-yapcol { min-width: 0; display: flex; flex-direction: column; gap: 10px; }
.pr-yapcol .pr-feed-label { margin-top: 0; }
.pr-rail { display: flex; flex-direction: column; gap: 14px; min-width: 0; }
.pr-rail .yp-side-card, .pr-rail .yp-panel { margin: 0; }
.pr-rail .yp-top8 .top8-grid { grid-template-columns: repeat(2, minmax(0,1fr)); }
.pr-single { display: flex; flex-direction: column; gap: 14px; }
.pr-feed { min-width: 0; display: flex; flex-direction: column; gap: 10px; }
.pr-about .pr-tagline { margin: 8px 0 2px; color: #fff; font-size: 14px; font-weight: 800; line-height: 1.45; }
.pr-facts { display: flex; flex-direction: column; gap: 8px; margin-top: 9px; }
.pr-facts span { display: flex; align-items: center; gap: 9px; color: #cfc3dd; font-size: 12.5px; }
.pr-facts svg { width: 14px; color: #38bdf8; flex: 0 0 auto; }
.pr-facts b { font-weight: 700; color: #e6dff0; }
.pr-friend-mini-grid { display: grid; grid-template-columns: repeat(3, minmax(0,1fr)); gap: 8px; margin-top: 10px; }
.pr-friend { display: flex; flex-direction: column; align-items: center; gap: 5px; padding: 10px 6px; border-radius: 13px; color: inherit;
  text-align: center; background: rgba(255,255,255,.03); border: 1px solid rgba(255,255,255,.08); }
.pr-friend b { color: #fff; font-size: 11.5px; max-width: 100%; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.pr-friend small { color: #a79cbb; font-size: 10px; max-width: 100%; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.pr-friend-grid { display: grid; grid-template-columns: repeat(4, minmax(0,1fr)); gap: 10px; }
@media (max-width: 700px) { .pr-friend-grid { grid-template-columns: repeat(2, minmax(0,1fr)); } }

/* the wall */
.pr-composer { display: flex; gap: 10px; align-items: flex-start; padding: 13px; border-radius: 16px;
  background: rgba(255,255,255,.035); border: 1px solid rgba(255,255,255,.12); }
.pr-composer textarea { flex: 1; min-width: 0; resize: none; border: 0; background: transparent; color: #fff; font: inherit; font-size: 14px; outline: none; padding-top: 6px; }
.pr-composer .pr-btn { flex: 0 0 auto; }
.pr-post { display: flex; gap: 11px; padding: 13px 14px; border-radius: 16px;
  background: rgba(255,255,255,.03); border: 1px solid rgba(255,255,255,.09); }
.pr-post.is-yap { border-color: rgba(56,189,248,.22); }
.pr-post-ava { flex: 0 0 auto; }
.pr-post-main { min-width: 0; flex: 1; }
.pr-post-main header { display: flex; align-items: baseline; gap: 7px; flex-wrap: wrap; }
.pr-post-main header b { color: #fff; font-size: 13px; }
.pr-post-main header span, .pr-post-main header time { color: #81768b; font-size: 11px; }
.pr-post-main p { margin: 4px 0 0; color: #e6dff0; font-size: 13.5px; line-height: 1.55; overflow-wrap: break-word; }
.pr-post-main footer { margin-top: 7px; }
.pr-post-del { margin-left: auto; border: 0; background: transparent; color: #81768b; font-size: 15px; line-height: 1; cursor: pointer; }
.pr-yap-tag { font-style: normal; font-size: 8px; font-weight: 900; letter-spacing: .12em; color: #8be0ff; padding: 2px 6px;
  border-radius: 99px; background: rgba(56,189,248,.1); border: 1px solid rgba(56,189,248,.3); }
.pr-feed-label { margin: 12px 2px 2px; color: #38bdf8; font-size: 10.5px; font-weight: 900; letter-spacing: .16em;
  text-shadow: 0 0 8px rgba(56,189,248,.5); }
.pr-empty { padding: 22px 16px; border-radius: 14px; text-align: center; color: #a79cbb; font-size: 13px;
  background: rgba(255,255,255,.02); border: 1px dashed rgba(255,255,255,.14); }
.pr-empty a { color: #8be0ff; font-weight: 800; }
.pr-safety { display: flex; gap: 16px; justify-content: center; margin-top: 26px; }
.pr-safety button { border: 0; background: transparent; color: #81768b; font: inherit; font-size: 11.5px; cursor: pointer; text-decoration: underline; }

/* cover + backdrop sheets */
.cover-sheet .cover-grid { display: grid; grid-template-columns: repeat(3, minmax(0,1fr)); gap: 7px; max-height: 44vh; overflow-y: auto; margin-top: 10px; }
.cover-cell { aspect-ratio: 16/10; border-radius: 10px; border: 2px solid rgba(255,255,255,.1); cursor: pointer; background-size: cover; background-position: center; }
.cover-cell.on { border-color: #ff2d9b; box-shadow: 0 0 12px rgba(255,45,155,.5); }
.bg-sheet .bg-grid { display: grid; grid-template-columns: repeat(3, minmax(0,1fr)); gap: 7px; max-height: 48vh; overflow-y: auto; margin-top: 10px; }
.bg-cell { position: relative; aspect-ratio: 16/10; border-radius: 10px; border: 2px solid rgba(255,255,255,.1); cursor: pointer; overflow: hidden; background: #14101f; padding: 0; }
.bg-cell video { width: 100%; height: 100%; object-fit: cover; display: block; pointer-events: none; }
.bg-cell.on { border-color: #38bdf8; box-shadow: 0 0 12px rgba(56,189,248,.5); }
.bg-cell.bg-off { display: grid; place-items: center; color: #8be0ff; font-size: 10px; font-weight: 900; letter-spacing: .1em; text-align: center; }

/* mobile */
@media (max-width: 860px) {
  .pr-cols { grid-template-columns: 1fr; }
  .pr-cover { height: 175px; border-radius: 0 0 18px 18px; }
  .pr-head { padding: 0 14px; margin-top: -40px; gap: 12px; }
  .pr-ava .avatar.av-xl { width: 96px; height: 96px; font-size: 30px; }
  .pr-id h1 { font-size: 26px; }
  .pr-actions { width: 100%; }
  .pr-actions .pr-btn { flex: 1; justify-content: center; }
  .pr-live { margin: 12px 14px 0; }
  .pr-body { padding: 14px 10px 0; }
  /* phones: wall first, yaps second, rail cards last */
  .pr-cols { display: flex; flex-direction: column; }
  .pr-cols .pr-feed { order: 1; }
  .pr-cols .pr-yapcol { order: 2; }
  .pr-cols .pr-rail { order: 3; }
}
/* rail cards run compact type — display headings belong to full-width panels */
.pr-rail .yp-panel h2, .pr-rail .yp-panel .yp-section-head h2 { font-size: 19px; line-height: 1.15; letter-spacing: -.02em; }
.pr-rail .yp-panel { padding: 16px; }
.pr-rail .top8-cell { padding: 12px 6px 10px; }
.pr-rail .top8-cell .avatar.av-lg { width: 54px; height: 54px; }
/* TOP 8 rides full-width above the wall — eight across like it's 2006 */
.pr-body > .yp-top8 { margin-bottom: 16px; }
.pr-body > .yp-top8 .top8-grid { grid-template-columns: repeat(8, minmax(0,1fr)); }
@media (max-width: 860px) { .pr-body > .yp-top8 .top8-grid { grid-template-columns: repeat(4, minmax(0,1fr)); } }

/* ═══ ABOUT tab = neon signs (her call: every section header glows like the deck) ═══ */
.pr-single .yp-panel, .pr-single .yp-side-card { border-color: rgba(168,85,247,.28);
  background: radial-gradient(circle at 88% 0, rgba(168,85,247,.09), transparent 42%), rgba(255,255,255,.028); }
#app .pr-single .yp-section-head small { color: #8be0ff; font-size: 11px; font-weight: 900; letter-spacing: .24em;
  text-shadow: 0 0 4px rgba(139,224,255,.9), 0 0 13px rgba(56,189,248,.75), 0 0 28px rgba(56,189,248,.45); }
#app .pr-single .yp-section-head h2 { font-size: 30px; letter-spacing: -.03em; color: #fff;
  text-shadow: 0 0 5px rgba(255,255,255,.8), 0 0 16px rgba(255,45,155,.7), 0 0 36px rgba(255,45,155,.4); }
#app .pr-single .yp-section-head p { color: #a79cbb; }

/* ═══ wall v2: photos on posts, replies, likes ═══ */
.pr-composer-main { flex: 1; min-width: 0; display: flex; flex-direction: column; gap: 8px; }
.pr-composer-side { display: flex; flex-direction: column; gap: 7px; align-items: stretch; }
.pr-attach-btn { display: grid; place-items: center; width: 40px; height: 40px; border-radius: 11px; cursor: pointer;
  color: #38bdf8; background: rgba(56,189,248,.08); border: 1px dashed rgba(56,189,248,.45); margin: 0 auto; }
.pr-attach-btn svg { width: 16px; }
.pr-attach { position: relative; width: 120px; }
.pr-attach img { width: 100%; border-radius: 10px; display: block; }
.pr-attach button { position: absolute; top: -7px; right: -7px; width: 22px; height: 22px; border-radius: 50%; border: 0;
  cursor: pointer; color: #fff; background: rgba(5,3,10,.85); font-size: 12px; line-height: 1; }
.pr-post-media { max-width: 100%; max-height: 340px; border-radius: 13px; margin-top: 8px; display: block; object-fit: cover; }
.pr-reply-btn { border: 0; background: transparent; color: #a79cbb; font: inherit; font-size: 11.5px; font-weight: 800; cursor: pointer; }
.pr-reply-btn.on { color: #38bdf8; }
.pr-post-main footer { display: flex; align-items: center; gap: 12px; }
.pr-reply { display: flex; gap: 9px; margin-top: 10px; padding: 9px 11px; border-radius: 12px;
  background: rgba(255,255,255,.03); border-left: 2px solid rgba(56,189,248,.4); }
.pr-reply > div { min-width: 0; flex: 1; }
.pr-reply header { display: flex; align-items: baseline; gap: 6px; }
.pr-reply b { color: #fff; font-size: 12px; }
.pr-reply time { color: #81768b; font-size: 10.5px; }
.pr-reply p { margin: 3px 0 4px; color: #e6dff0; font-size: 12.5px; line-height: 1.5; overflow-wrap: break-word; }
.yap-like.sm { padding: 3px 8px; font-size: 10.5px; }
.yap-like.sm svg { width: 11px; }
.pr-reply-composer { margin-top: 10px; padding: 9px; }
.pr-reply-composer textarea { font-size: 13px; }
/* earned Top-8 slots (5-8) read cyan — chosen read pink */
.top8-cell.t8-earned { border-color: rgba(56,189,248,.4); }
.top8-cell.t8-earned i { color: #7CFCB1; display: inline-flex; align-items: center; gap: 2px; }
.top8-cell.t8-earned i svg { width: 9px; height: 9px; filter: drop-shadow(0 0 4px rgba(124,252,177,.8)); }
/* profile pages carry a heavier veil — glass cards sit on member-chosen loops */
body:has(.pr-page) .bg-veil { background: rgba(0,0,0,.85); }   /* profiles run WAY darker — cards are the show */
body:has(.pr-page) #bgvideo video { filter: saturate(1.05) brightness(.45) !important; }
.pr-btn.is-on { color: #7CFCB1; border-color: rgba(52,211,153,.45); background: rgba(52,211,153,.08); }
/* Follow button: no pill — just the neon-sign color-cycling label */
.pr-btn[data-act="follow"] { padding: 9px 6px; background: none; border-color: transparent; }
.pr-btn[data-act="follow"]:not(.is-on) { animation: neonSign 4.5s ease-in-out infinite; }
.pr-btn[data-act="follow"] svg { color: inherit; }
/* wall + about cards get real dark glass — member backdrops stay art, text stays text */
.pr-page .pr-composer, .pr-page .pr-post { background: rgba(10,7,16,.62); backdrop-filter: blur(12px); }
.pr-page .yp-panel, .pr-page .yp-side-card {
  background: radial-gradient(circle at 88% 0, rgba(168,85,247,.1), transparent 42%), rgba(10,7,16,.58);
  backdrop-filter: blur(12px); }
.pr-page .pr-reply { background: rgba(255,255,255,.045); }
/* ═══ profile song = Spotify's own player in a neon box (always visible) ═══ */
.song-embed-box { margin-top: 10px; border-radius: 15px; overflow: hidden;
  border: 1.5px solid rgba(56,189,248,.3); background: #181212; box-shadow: 0 0 18px rgba(56,189,248,.12); }
.song-embed-box iframe { display: block; border: 0; width: 100%; }
/* mobile: song rides above the wall; rail copy hides; all five tabs fit */
.pr-song-mobile { display: none; }
@media (max-width: 860px) {
  .pr-song-mobile { display: block; margin-bottom: 12px; }
  .pr-song-mobile .yp-song { margin: 0; }
  .pr-rail .yp-song { display: none; }
  .pr-tabs { margin: 24px 6px 12px; padding: 0 2px; justify-content: space-between; }
  .pr-tabs button { padding: 11px 8px 12px; font-size: 10.5px; letter-spacing: .05em; }
}
/* club Yap page: dark glass + heavier veil (bright loops were eating the feed) */
body:has(.yap-page) .bg-veil { background: rgba(0,0,0,.72); }
.yap-composer, .yap-row { background: rgba(10,7,16,.62); backdrop-filter: blur(12px); border-color: rgba(255,255,255,.12); }
/* liked hearts FILL (stroke-only read as unliked) */
.ph-like.on svg, .yap-like.on svg { fill: currentColor; }
/* reaction popover: neon icons, no emoji */
.mm-btn svg { width: 18px; }
.mm-heart { color: #ff2d9b; filter: drop-shadow(0 0 6px rgba(255,45,155,.6)); }
.mm-heart.on svg { fill: currentColor; }
.mm-down { color: #8be0ff; filter: drop-shadow(0 0 6px rgba(56,189,248,.45)); }
.mm-down.on svg { fill: currentColor; }
/* peek card: the WHY behind the match % */
.peek-receipts { display: flex; flex-direction: column; gap: 4px; margin: 8px 0 2px; }
.peek-receipts span { color: #7CFCB1; font-size: 12px; font-weight: 700; }
.peek-when { margin: 7px 0 0; display: flex; align-items: center; gap: 7px; color: #8be0ff; font-size: 12px; font-weight: 800; }
.peek-when svg { width: 13px; }
.peek-roles { margin: 6px 0 0; color: #cfc3dd; font-size: 12px; }
.peek-roles b { color: #fff; }
/* ABOUT: bio + the match-signal grid */
.yp-bio { margin: 10px 0 0; color: #cfc3dd; font-size: 13.5px; line-height: 1.65; }
.yp-matchsig .yp-signal-grid.msig { display: grid; grid-template-columns: repeat(2, minmax(0,1fr)); gap: 14px; }
@media (max-width: 700px) { .yp-matchsig .yp-signal-grid.msig { grid-template-columns: 1fr; } }
.yp-matchsig .yp-tags span.on { color: #7CFCB1; border-color: rgba(52,211,153,.4); }
.yp-matchsig .yp-tags.hardno span { color: #ffb3d9; border-color: rgba(255,45,155,.35); }
/* deck: boundaries + energy chips; upside-down thumbs-up */
.pd-bounds { display: flex; flex-wrap: wrap; gap: 6px; margin-top: 10px; }
.pd-bounds .chip.no { color: #ffb3d9; border-color: rgba(255,45,155,.35); }
.mm-down svg.flip { transform: rotate(180deg); }

/* ═══ Daniel's page: chat + sidebar ═══ */
.dn-cols { display: grid; grid-template-columns: minmax(0,1fr) 320px; gap: 18px; align-items: start; max-width: 1180px; margin: 0 auto; }
@media (max-width: 980px) { .dn-cols { grid-template-columns: 1fr; } }
.dn-main { min-width: 0; }
.dn-hero p b { color: #8be0ff; font-weight: 800; }
.dn-prompts { display: flex; flex-wrap: wrap; gap: 7px; margin: 12px 0 2px; }
.dn-side { display: flex; flex-direction: column; gap: 14px; }
.dn-side-card { padding: 16px; border-radius: 18px; background: rgba(10,7,16,.6); backdrop-filter: blur(12px); border: 1px solid rgba(168,85,247,.28); }
.dn-side-card > small { color: #8be0ff; font-size: 10.5px; font-weight: 900; letter-spacing: .2em;
  text-shadow: 0 0 4px rgba(139,224,255,.8), 0 0 12px rgba(56,189,248,.6); }
.dn-can { list-style: none; margin: 12px 0 0; padding: 0; display: flex; flex-direction: column; gap: 11px; }
.dn-can li { display: flex; gap: 10px; align-items: flex-start; color: #cfc3dd; font-size: 12.5px; line-height: 1.5; }
.dn-can li svg { width: 15px; flex: 0 0 auto; margin-top: 2px; color: #ff2d9b; filter: drop-shadow(0 0 6px rgba(255,45,155,.5)); }
.dn-can li b { color: #fff; }
.dn-past { display: flex; flex-direction: column; gap: 7px; margin-top: 11px; }
.dn-past button { display: flex; flex-direction: column; gap: 2px; width: 100%; padding: 10px 12px; border-radius: 12px; cursor: pointer;
  background: rgba(255,255,255,.035); border: 1px solid rgba(255,255,255,.1); color: inherit; font: inherit; text-align: left; }
.dn-past b { color: #e6dff0; font-size: 12px; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; max-width: 100%; }
.dn-past em { color: #81768b; font-size: 10.5px; font-style: normal; }
.dn-openers { margin-top: 11px; }
.dn-hero .dn-can { margin-top: 12px; }
.dn-hero .dn-can li { font-size: 13px; }
.dn-ainote { margin: 12px 0 0; color: #81768b; font-size: 11.5px; line-height: 1.5; }
/* game+rank chips: quiet dark glass, rank = neon text, NO grey pills (final authority) */
.chip.game { background: rgba(10,7,16,.55) !important; border-color: rgba(255,255,255,.16) !important; color: #fff; font-weight: 800; }
.rank, .rank.gold, .rank.plat, .rank.diamond, .rank.pro { background: transparent !important; padding: 0 0 0 3px; font-weight: 900; }
.rank { color: #8be0ff; text-shadow: 0 0 8px rgba(139,224,255,.55); }
.rank.gold { color: #ff9edb; text-shadow: 0 0 8px rgba(255,45,155,.5); }
.rank.plat { color: #8be0ff; text-shadow: 0 0 8px rgba(56,189,248,.55); }
.rank.diamond { color: #b8a9ff; text-shadow: 0 0 8px rgba(168,85,247,.55); }
.rank.pro { color: #fff; text-shadow: 0 0 6px rgba(255,255,255,.5), 0 0 14px rgba(255,45,155,.55); }
/* TOP 8 breathes */
.pr-body > .yp-top8 { padding: 22px 20px 20px; }
.yp-top8 .yp-section-head { margin-bottom: 16px; }
.yp-top8 .top8-grid { gap: 12px; }
/* ABOUT v3 — home command-center grammar */
.pr-cc { gap: 12px; }
.pr-quote { padding: 18px 20px; border-radius: 20px; background: rgba(10,7,16,.6); backdrop-filter: blur(12px); border: 1px solid rgba(168,85,247,.28); }
.pr-quote blockquote { margin: 0; color: #fff; font-size: clamp(17px, 2.2vw, 24px); font-weight: 800; line-height: 1.3; letter-spacing: -.02em;
  text-shadow: 0 0 5px rgba(255,255,255,.4), 0 0 14px rgba(255,45,155,.35); }
.pr-quote p { margin: 10px 0 0; color: #cfc3dd; font-size: 13px; line-height: 1.6; }
.pr-cc-block > header h2 { text-shadow: 0 0 5px rgba(255,255,255,.6), 0 0 16px rgba(255,45,155,.5); }
.pr-cc-block > div { grid-template-columns: repeat(3, 1fr); }
.pr-cc-block a em { overflow: hidden; white-space: nowrap; text-overflow: ellipsis; }
/* FRIENDS tab breathes; cells stay tight */
.yp-panel .pr-friend-grid { margin-top: 18px; gap: 12px; }
.yp-panel .yp-section-head { margin-bottom: 6px; }
.pr-friend { padding: 16px 10px 14px; gap: 8px; }
/* ABOUT tiles: arcade energy — four neon tones rotating, glowing icons, real values */
.pr-cc-block a { border-radius: 16px; transition: transform .16s ease, box-shadow .16s ease; }
.pr-cc-block a:hover { transform: translateY(-3px); }
.pr-cc-block a b { font-size: 12.5px; text-shadow: 0 0 10px rgba(255,255,255,.28); }
.pr-cc-block a em { font-size: 8px; }
.pr-cc-block a:nth-child(4n+1) { background: radial-gradient(circle at 100% 0, rgba(255,45,155,.18), transparent 58%), rgba(10,7,16,.62); border-color: rgba(255,45,155,.38); }
.pr-cc-block a:nth-child(4n+1) > span { color: #ff2d9b; background: rgba(255,45,155,.13); box-shadow: 0 0 16px rgba(255,45,155,.3); }
.pr-cc-block a:nth-child(4n+1) small { color: #ff9edb; }
.pr-cc-block a:nth-child(4n+2) { background: radial-gradient(circle at 100% 0, rgba(56,189,248,.18), transparent 58%), rgba(10,7,16,.62); border-color: rgba(56,189,248,.38); }
.pr-cc-block a:nth-child(4n+2) > span { color: #38bdf8; background: rgba(56,189,248,.12); box-shadow: 0 0 16px rgba(56,189,248,.3); }
.pr-cc-block a:nth-child(4n+2) small { color: #8be0ff; }
.pr-cc-block a:nth-child(4n+3) { background: radial-gradient(circle at 100% 0, rgba(52,211,153,.16), transparent 58%), rgba(10,7,16,.62); border-color: rgba(52,211,153,.36); }
.pr-cc-block a:nth-child(4n+3) > span { color: #34d399; background: rgba(52,211,153,.12); box-shadow: 0 0 16px rgba(52,211,153,.3); }
.pr-cc-block a:nth-child(4n+3) small { color: #7CFCB1; }
.pr-cc-block a:nth-child(4n+4) { background: radial-gradient(circle at 100% 0, rgba(168,85,247,.2), transparent 58%), rgba(10,7,16,.62); border-color: rgba(168,85,247,.4); }
.pr-cc-block a:nth-child(4n+4) > span { color: #b8a9ff; background: rgba(168,85,247,.14); box-shadow: 0 0 16px rgba(168,85,247,.32); }
.pr-cc-block a:nth-child(4n+4) small { color: #cdb9ff; }
/* ABOUT v4: no boxes — giant glowing words on glass (deck-overlay energy) */
.pr-hype { display: flex; flex-wrap: wrap; align-items: center; gap: 14px; padding: 6px 8px 2px; }
.pr-hype b { font-size: clamp(26px, 4vw, 44px); font-weight: 950; letter-spacing: -.03em; text-transform: uppercase; color: #fff; }
.pr-hype b:nth-child(4n+1) { text-shadow: 0 0 6px rgba(255,255,255,.8), 0 0 20px rgba(255,45,155,.85), 0 0 44px rgba(255,45,155,.45); }
.pr-hype b:nth-child(4n+3) { text-shadow: 0 0 6px rgba(255,255,255,.8), 0 0 20px rgba(56,189,248,.85), 0 0 44px rgba(56,189,248,.45); }
.pr-hype b:nth-child(4n+5), .pr-hype b:nth-child(4n) { text-shadow: 0 0 6px rgba(255,255,255,.8), 0 0 20px rgba(52,211,153,.8), 0 0 40px rgba(52,211,153,.4); }
.pr-hype i { color: #4e4459; font-style: normal; font-size: 30px; }
.pr-cc-block > div { display: grid; grid-template-columns: repeat(3, minmax(0,1fr)); gap: 22px 26px; }
.pr-stat { min-width: 0; }
.pr-stat small { display: block; color: #74697e; font-size: 10px; font-weight: 900; letter-spacing: .2em; }
.pr-stat b { display: block; margin-top: 5px; color: #fff; font-size: clamp(17px, 2vw, 24px); font-weight: 900; letter-spacing: -.02em; line-height: 1.15;
  text-shadow: 0 0 5px rgba(255,255,255,.5), 0 0 16px rgba(255,45,155,.45); }
.pr-cc-block .pr-stat:nth-child(3n+2) b { text-shadow: 0 0 5px rgba(255,255,255,.5), 0 0 16px rgba(56,189,248,.5); }
.pr-cc-block .pr-stat:nth-child(3n) b { text-shadow: 0 0 5px rgba(255,255,255,.5), 0 0 16px rgba(52,211,153,.45); }
.pr-stat em { display: block; margin-top: 3px; color: #a79cbb; font-size: 12px; font-style: normal; }
@media (max-width: 700px) { .pr-cc-block > div { grid-template-columns: repeat(2, minmax(0,1fr)); gap: 18px; } }
/* ABOUT: full-length highlights marquee (the hype line, now a ticker) */
.pr-hype { display: none; }
.pr-marquee { overflow: hidden; padding: 13px 0; border-radius: 14px;
  background: rgba(10,7,16,.55); border: 1px solid rgba(255,255,255,.1); backdrop-filter: blur(10px);
  mask-image: linear-gradient(90deg, transparent, #000 4%, #000 96%, transparent); }
.pr-marquee-track { display: flex; width: max-content; animation: prTicker 36s linear infinite; }
.pr-marquee-track span { display: inline-flex; align-items: center; gap: 18px; padding-right: 18px; white-space: nowrap; }
.pr-marquee-track b { font-size: 19px; font-weight: 950; letter-spacing: .02em; color: #fff; }
.pr-marquee-track span b:nth-child(6n+1) { text-shadow: 0 0 4px rgba(255,255,255,.6), 0 0 14px rgba(255,45,155,.75); }
.pr-marquee-track span b:nth-child(6n+3) { text-shadow: 0 0 4px rgba(255,255,255,.6), 0 0 14px rgba(56,189,248,.75); }
.pr-marquee-track span b:nth-child(6n+5) { text-shadow: 0 0 4px rgba(255,255,255,.6), 0 0 14px rgba(52,211,153,.7); }
.pr-marquee-track span b:nth-child(6n+2), .pr-marquee-track span b:nth-child(6n+4), .pr-marquee-track span b:nth-child(6n) {
  text-shadow: 0 0 4px rgba(255,255,255,.55), 0 0 14px rgba(168,85,247,.7); }
.pr-marquee-track i { color: #5a4f66; font-style: normal; font-size: 11px; }
@keyframes prTicker { to { transform: translateX(-50%); } }
@media (prefers-reduced-motion: reduce) { .pr-marquee-track { animation: none; } }
/* Daniel: the chat is ONE box — log and composer share the glass */
.dn-chatbox { border-radius: 20px; background: rgba(10,7,16,.62); border: 1px solid rgba(168,85,247,.3); backdrop-filter: blur(12px); overflow: hidden; }
.dn-chatbox .cn-log { background: transparent !important; border: 0 !important; border-radius: 0; box-shadow: none; }
.dn-chatbox .cn-composer { margin: 0 !important; border: 0 !important; border-top: 1px solid rgba(255,255,255,.1) !important;
  border-radius: 0 !important; background: rgba(255,255,255,.025) !important; }
.dn-for { margin-top: 14px; }
.dn-main .dn-for .dn-can li { font-size: 13px; }
.dn-cols.solo { grid-template-columns: minmax(0, 780px); justify-content: center; }
/* rank text: NOTHING but glowing letters (kills the frosted .rank.pro pill + all rims) */
.rank, .rank.pro, .rank.gold, .rank.plat, .rank.diamond {
  background: none !important; border: 0 !important; box-shadow: none !important;
  backdrop-filter: none !important; -webkit-backdrop-filter: none !important;
  padding: 0 0 0 4px !important; border-radius: 0 !important;
  -webkit-text-fill-color: currentColor !important;
}
/* game chips: flat dark tag, no pill rims */
.chip.game { border-radius: 10px !important; padding: 8px 12px !important; }
/* marquee: calmer glow, smaller on phones */
.pr-marquee-track span b:nth-child(6n+1) { text-shadow: 0 0 2px rgba(255,255,255,.35), 0 0 8px rgba(255,45,155,.4); }
.pr-marquee-track span b:nth-child(6n+3) { text-shadow: 0 0 2px rgba(255,255,255,.35), 0 0 8px rgba(56,189,248,.4); }
.pr-marquee-track span b:nth-child(6n+5) { text-shadow: 0 0 2px rgba(255,255,255,.35), 0 0 8px rgba(52,211,153,.38); }
.pr-marquee-track span b:nth-child(6n+2), .pr-marquee-track span b:nth-child(6n+4), .pr-marquee-track span b:nth-child(6n) {
  text-shadow: 0 0 2px rgba(255,255,255,.32), 0 0 8px rgba(168,85,247,.38); }
@media (max-width: 700px) {
  .pr-marquee { padding: 9px 0; }
  .pr-marquee-track b { font-size: 13.5px; }
  .pr-marquee-track span { gap: 12px; padding-right: 12px; }
  .pr-marquee-track i { font-size: 9px; }
}
.ph-cell img[data-full], .pr-post-media[data-full] { cursor: zoom-in; }
/* marquee: no black bar — the ticker floats on the page */
.pr-marquee { background: transparent !important; border: 0 !important; backdrop-filter: none !important; padding: 8px 0 10px; }
.pr-body > .pr-marquee, .pr-cc > .pr-marquee { margin-bottom: 6px; }
/* game chips: traveling blue↔pink rim (longhand bg-image — shorthand freezes keyframes) */
.chip.game { position: relative; border: 0 !important; background: rgba(10,7,16,.62) !important; }
.chip.game::before { content: ""; position: absolute; inset: 0; border-radius: 10px; padding: 1.3px;
  background-image: linear-gradient(100deg, #38bdf8, #ff2d9b 25%, #7c5cff 50%, #ff2d9b 75%, #38bdf8 100%);
  background-size: 300% 100%;
  -webkit-mask: linear-gradient(#000 0 0) content-box, linear-gradient(#000 0 0);
  -webkit-mask-composite: xor; mask-composite: exclude;
  animation: rimTravel 7s linear infinite; pointer-events: none; }
/* compact on phones so game chips share one row */
@media (max-width: 700px) {
  .chip.game { font-size: 11px !important; padding: 7px 10px !important; white-space: nowrap; }
  .peek-body .wrap { gap: 6px; }
}
/* COVER/BACKDROP buttons must beat the overlapping profile header for real taps */
.pr-cover-btns { z-index: 8; }
.pr-head { pointer-events: none; }
.pr-head .pr-ava, .pr-head .pr-id, .pr-head .pr-actions { pointer-events: auto; }
.pe-viewme { display: inline-flex; align-items: center; gap: 8px; margin-top: 14px; padding: 11px 16px; border-radius: 12px;
  color: #fff; font-size: 11.5px; font-weight: 900; letter-spacing: .08em;
  background: rgba(56,189,248,.09); border: 1px solid rgba(56,189,248,.4); }
.pe-viewme svg { width: 14px; color: #38bdf8; }
/* backdrop picker: hard-sized cells — videos can't spill */
.bg-sheet .bg-grid { max-height: 52vh; }
.bg-cell { height: 92px; aspect-ratio: auto; }
.bg-cell video { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; }
.bg-cell.bg-off { position: relative; }
/* cover picker: fixed-height cells (Safari collapses aspect-ratio grids into strips) */
.cover-sheet .cover-grid { max-height: 48vh; }
.cover-cell { height: 92px; aspect-ratio: auto; }
/* cover: the WHOLE image shows (contain); a chosen neon fill owns the rest */
.pr-cover .pr-cover-fill { position: absolute; inset: 0; background: var(--pr-fill, linear-gradient(150deg,#191227,#0c0815)); }
.pr-cover .pr-cover-img { background: var(--pr-cover, var(--pr-grad)) center/contain no-repeat; }
.pr-cover .pr-cover-img { background-image: var(--pr-cover, var(--pr-grad)); background-size: contain; background-position: center; background-repeat: no-repeat; }
.fill-row { display: flex; align-items: center; gap: 8px; margin: 4px 0 12px; }
.fill-row small { color: #8be0ff; font-size: 9.5px; font-weight: 900; letter-spacing: .18em; margin-right: 4px; }
.fill-swatch { width: 34px; height: 34px; border-radius: 50%; border: 2px solid rgba(255,255,255,.15); cursor: pointer; }
.fill-swatch.on { border-color: #fff; box-shadow: 0 0 12px rgba(255,255,255,.5); }
/* the banner owns the whole header — it ends just above the tab bar */
.pr-cover { height: 330px; }
.pr-cover .pr-cover-grade { background: linear-gradient(0deg, rgba(6,4,12,.94) 0%, rgba(6,4,12,.6) 34%, rgba(6,4,12,.06) 68%); }
.pr-head { margin-top: -178px; }
@media (max-width: 860px) {
  .pr-cover { height: 350px; }
  .pr-head { margin-top: -212px; }
}
.pr-single > .pr-live { margin: 0 0 4px; }
/* cover controls ride the TOP of the banner — the header owns the bottom now */
.pr-cover-btns { top: 12px; bottom: auto; }

/* NO cover banner — identity sits directly over the page backdrop video */
.pr-cover { display: none !important; }
.pr-head { margin-top: 0 !important; padding-top: 14px; }
.pr-page { padding-top: 8px; }
/* the backdrop already carries a heavy veil; give the identity its own soft lift */
.pr-id h1 { text-shadow: 0 0 6px rgba(0,0,0,.7), 0 0 5px rgba(255,255,255,.5), 0 0 18px rgba(255,45,155,.5); }
.pr-sub, .pr-counts { text-shadow: 0 1px 6px rgba(0,0,0,.8); }
.pr-head .pr-actions { align-self: flex-start; margin-top: 4px; }
@media (max-width: 860px) {
  .pr-head { margin-top: 0 !important; flex-direction: column; align-items: flex-start; }
  .pr-head .pr-actions { width: 100%; }
}
/* mobile: all six tabs fit — no scroll, CLUB replaces IN THE CLUB, even spread */
@media (max-width: 700px) {
  .pr-tabs { overflow-x: visible; gap: 0; padding: 0 2px; justify-content: space-between; }
  .pr-tabs button { padding: 11px 3px 12px; font-size: 11px; letter-spacing: 0; }
  .pr-tabs .t-full { display: none; }
  .pr-tabs .t-short { display: inline; }
  .pr-tabs button.on::after { left: 4px; right: 4px; }
}
/* big, unmissable VIEW MY PROFILE at the top of the edit studio */
.pe-viewbig { display: flex; align-items: center; gap: 12px; margin: 4px 0 18px; padding: 15px 18px; border-radius: 15px; color: #fff;
  background: linear-gradient(110deg, rgba(56,189,248,.14), rgba(168,85,247,.12)); border: 1.5px solid rgba(56,189,248,.45); }
.pe-viewbig svg { width: 20px; flex: 0 0 auto; color: #38bdf8; filter: drop-shadow(0 0 8px rgba(56,189,248,.6)); }
.pe-viewbig span { font-size: 14px; font-weight: 900; letter-spacing: .04em; }
.pe-viewbig em { margin-left: auto; color: #8be0ff; font-size: 11px; font-style: normal; font-weight: 800; }
@media (max-width: 700px) { .pe-viewbig em { display: none; } }
.pr-preview-ribbon { display: flex; align-items: center; gap: 10px; margin: 4px 0 8px; padding: 11px 15px; border-radius: 13px;
  background: rgba(56,189,248,.1); border: 1px solid rgba(56,189,248,.4); }
.pr-preview-ribbon svg { width: 15px; color: #38bdf8; flex: 0 0 auto; }
.pr-preview-ribbon b { color: #fff; font-size: 11.5px; letter-spacing: .04em; }
.pr-preview-ribbon a { margin-left: auto; color: #8be0ff; font-size: 11px; font-weight: 900; white-space: nowrap; }
/* YOU DASHBOARD — the #/me ALL view is a gamer command center, not a profile */
.you-dash { display: flex; flex-direction: column; gap: 14px; }
.you-stats { display: grid; grid-template-columns: repeat(6, minmax(0,1fr)); gap: 10px; }
@media (max-width: 860px) { .you-stats { grid-template-columns: repeat(3, minmax(0,1fr)); } }
.you-stat { padding: 15px 14px; border-radius: 16px; text-align: left;
  background: radial-gradient(circle at 90% 0, rgba(168,85,247,.12), transparent 55%), rgba(10,7,16,.6);
  border: 1px solid rgba(168,85,247,.3); backdrop-filter: blur(12px); }
.you-stat small { display: block; color: #8be0ff; font-size: 9.5px; font-weight: 900; letter-spacing: .16em; }
.you-stat b { display: block; margin-top: 6px; color: #fff; font-size: 22px; font-weight: 950; letter-spacing: -.02em;
  text-shadow: 0 0 6px rgba(255,255,255,.4), 0 0 16px rgba(255,45,155,.45); }
.you-stat:nth-child(3n+2) b { text-shadow: 0 0 6px rgba(255,255,255,.4), 0 0 16px rgba(56,189,248,.5); }
.you-stat:nth-child(3n) b { text-shadow: 0 0 6px rgba(255,255,255,.4), 0 0 16px rgba(52,211,153,.45); }
.you-tonight { margin: 0; }
/* the match card as a modal (non-friend profiles) */
.deck-peek { position: fixed; inset: 0; z-index: 240; display: grid; place-items: center; padding: 18px; }
.deck-peek .peek-backdrop { position: absolute; inset: 0; background: rgba(2,1,6,.82); border: 0; backdrop-filter: blur(10px); }
.deck-peek .peek-deck { position: relative; width: min(100%, 1000px); max-height: 92vh; overflow-y: auto; border-radius: 26px; }
.deck-peek .peek-deck .pd-card { margin: 0; }
.deck-peek .peek-x { position: absolute; z-index: 3; top: 14px; right: 14px; width: 38px; height: 38px; display: grid; place-items: center;
  border-radius: 50%; border: 0; cursor: pointer; color: #fff; background: rgba(5,3,10,.7); backdrop-filter: blur(8px); }
.deck-peek .peek-x svg { width: 16px; }
.pr-gate-note { display: flex; align-items: center; gap: 11px; margin: 6px 0 14px; padding: 13px 16px; border-radius: 15px;
  background: rgba(56,189,248,.1); border: 1px solid rgba(56,189,248,.4); }
.pr-gate-note svg { width: 17px; color: #38bdf8; flex: 0 0 auto; }
.pr-gate-note b { color: #fff; font-size: 13.5px; } .pr-gate-note small { display: block; color: #a79cbb; font-size: 11.5px; margin-top: 2px; }
@media (max-width: 700px) { .deck-peek { padding: 0; } .deck-peek .peek-deck { max-height: 100dvh; border-radius: 0; } }
/* matched card actions: 3-up Message / Schedule / View Profile */
.pd-actions.pd-friend { display: grid; grid-template-columns: auto auto 1fr; gap: 8px; }
.pd-actions.pd-friend .pd-pass { display: inline-flex; align-items: center; gap: 7px; padding: 0 16px; }
.pd-actions.pd-friend .pd-pass svg { width: 15px; }
/* profile header dropdowns (Player Card / Profile · Edit/View) */
.pr-dd { position: relative; }
.pr-dd-caret { font-style: normal; margin-left: 4px; font-size: 11px; opacity: .8; }
.pr-icon-btn { padding: 0 14px; }
.pr-menu { position: absolute; z-index: 30; top: calc(100% + 6px); left: 0; min-width: 160px; display: flex; flex-direction: column;
  padding: 6px; border-radius: 14px; background: rgba(12,9,18,.96); border: 1px solid rgba(168,85,247,.4); backdrop-filter: blur(16px);
  box-shadow: 0 20px 50px rgba(0,0,0,.6); }
.pr-menu a { display: flex; align-items: center; gap: 9px; padding: 11px 13px; border-radius: 10px; color: #e6dff0; font-size: 13px; font-weight: 800; }
.pr-menu a:hover { background: rgba(255,255,255,.06); color: #fff; }
.pr-menu a svg { width: 14px; color: #8be0ff; }
.pe-save-desktop { margin-top: 16px; text-align: center; }
.pe-save-desktop small { display: block; margin-top: 8px; color: #81768b; font-size: 11px; }
@media (max-width: 860px) { .pe-save-desktop { display: none; } }
.bg-cell.bg-black { display: grid; place-items: center; background: #000; color: #8be0ff; font-size: 10px; font-weight: 900; letter-spacing: .1em; text-align: center; }
.pe-pick .pe-bg { display: grid; grid-template-columns: repeat(auto-fill, minmax(104px, 1fr)); gap: 7px; margin-top: 9px; max-height: 300px; overflow-y: auto; }
.pe-flair .flair-mini { display: inline-block; width: 12px; height: 12px; margin-right: 5px; vertical-align: -1px; }
.pe-flair .flair-mini svg { width: 100%; height: 100%; }
.pr-post-mute { margin-left: auto; border: 0; background: transparent; color: #81768b; cursor: pointer; padding: 2px; }
.pr-post-mute svg { width: 13px; }
.pr-post-mute + .pr-post-del { margin-left: 6px; }
/* team-invite review: clear the iPhone status bar / notch — the header sat under the clock */
.team-invite-decision{padding:calc(16px + env(safe-area-inset-top, 0px)) 16px calc(16px + env(safe-area-inset-bottom, 0px))}
.team-invite-decision>section{max-height:calc(100dvh - 32px - env(safe-area-inset-top, 0px) - env(safe-area-inset-bottom, 0px));padding-top:36px}
/* neon notification pill — traveling rim, neon bell, glowing text, width hugs the message,
   whole pill deep-links to the notification (2026-07-19) */
.toast{width:max-content;max-width:min(92vw,560px);border:0;padding:11px 12px 11px 15px;overflow:visible}
.toast::before{content:"";position:absolute;inset:0;border-radius:18px;padding:1.5px;
  background-image:linear-gradient(100deg,#38bdf8,#ff2d9b 25%,#7c5cff 50%,#ff2d9b 75%,#38bdf8 100%);
  background-size:300% 100%;animation:rimTravel 7s linear infinite;
  -webkit-mask:linear-gradient(#000 0 0) content-box,linear-gradient(#000 0 0);-webkit-mask-composite:xor;mask-composite:exclude;pointer-events:none}
.toast .toast-msg{display:flex;align-items:center;gap:9px;min-width:0;color:#ffd9ee;text-decoration:none;font-weight:500;letter-spacing:.01em;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;
  text-shadow:0 0 3px #ffcbea,0 0 9px #ff56ad,0 0 16px rgba(255,45,155,.45)}
.toast .toast-msg b{font-weight:500;letter-spacing:.01em;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.toast .nt-ic{display:inline-flex;flex:0 0 auto;color:#ff8fd0;filter:drop-shadow(0 0 6px rgba(255,45,155,.85))}
.toast .nt-ic svg{width:16px;height:16px}
@media (max-width:640px){.toast .toast-msg,.toast .toast-msg b{white-space:normal;line-height:1.35}}
.lr-end{color:#ff9fc6;border-color:rgba(255,45,155,.3)}
.lr-end:hover{border-color:rgba(255,45,155,.55)}
/* host action row: borderless glow chips, icons match their text glow, one line on mobile */
.lr-host-actions{display:flex;flex-wrap:wrap;gap:8px;margin-top:14px}
.lr-host-actions .re-edit{margin-top:0;border:0;background:rgba(10,7,20,.55);white-space:nowrap}
.lr-host-actions .re-edit,.lr-host-actions .re-edit svg{color:#cfe1ff}
.lr-host-actions .re-edit{text-shadow:0 0 8px rgba(94,160,255,.55)}
.lr-host-actions .re-edit svg{filter:drop-shadow(0 0 5px rgba(94,160,255,.7))}
.lr-host-actions .lr-invite,.lr-host-actions .lr-invite svg{color:#ffd9ee}
.lr-host-actions .lr-invite{text-shadow:0 0 8px rgba(255,45,155,.5)}
.lr-host-actions .lr-invite svg{filter:drop-shadow(0 0 5px rgba(255,45,155,.7))}
.lr-host-actions .lr-end,.lr-host-actions .lr-end svg{color:#ff9fc6}
.lr-host-actions .lr-end{text-shadow:0 0 8px rgba(255,45,155,.45)}
.lr-host-actions .lr-end svg{filter:drop-shadow(0 0 5px rgba(255,45,155,.6))}
@media (max-width:640px){
  .lr-host-actions{gap:7px;justify-content:center}
  #app .lr-host-actions .re-edit{font-size:12.5px;padding:9px 10px}
  .lr-host-actions .re-edit svg{width:13px}
}
/* voice stage: EVERYONE on one screen — no side-scroll (2026-07-19) */
@media (max-width:760px){
  .voice-stage.two,.voice-stage.many{display:grid;overflow:visible;scroll-snap-type:none}
  .voice-stage.two{grid-template-columns:1fr}
  .voice-stage.two .voice-person{min-width:0;min-height:33vh}
  .voice-stage.many{grid-template-columns:1fr 1fr}
  .voice-stage.many .voice-person{min-width:0;min-height:29vh}
  .voice-stage .vp-avatar{width:70px;height:70px;font-size:30px}
  .voice-stage .vp-name h2{font-size:20px}
}
/* in-call screen share stage (2026-07-19) */
.call-share{position:relative;max-width:1280px;margin:0 auto 9px;border:1px solid rgba(84,218,255,.28);border-radius:18px;overflow:hidden;background:#000}
.call-share #streamVideoSlot{width:100%;max-height:52vh;min-height:180px;display:block}
.call-share #streamVideoSlot video{max-height:52vh}
.call-share .cs-tag{position:absolute;top:10px;left:12px;padding:5px 9px;border-radius:999px;color:#dcf9ff;background:rgba(5,3,11,.7);border:1px solid rgba(84,218,255,.3);font-size:8px;font-weight:900;letter-spacing:.12em}

/* Board host moderation (v593). */
.bdp-moderate{width:auto!important;padding:0 9px!important;gap:6px;color:#7ee5ff!important;border:1px solid rgba(104,224,255,.2)!important;border-radius:9px!important;background:rgba(104,224,255,.06)!important}.bdp-moderate span{font-size:7px;font-weight:850}.bd-post.is-hidden{border-color:rgba(255,173,74,.32);opacity:.82}.bdp-hidden-note,.bdt-hidden-note{display:flex;align-items:center;gap:9px;padding:10px 14px;color:#ffc06a;background:rgba(255,157,54,.08);border-bottom:1px solid rgba(255,173,74,.18)}.bdp-hidden-note svg,.bdt-hidden-note svg{width:18px}.bdp-hidden-note span,.bdt-hidden-note span{display:flex;flex:1;flex-direction:column}.bdp-hidden-note b,.bdt-hidden-note b{color:#fff;font-size:8px}.bdp-hidden-note small,.bdt-hidden-note small{margin-top:2px;color:#a99b91;font-size:6.5px}.bdp-hidden-note button{padding:6px 9px;color:#ffc06a;background:none;border:1px solid rgba(255,173,74,.25);border-radius:8px;font:800 7px var(--font)}.bdt-hidden-note{margin:8px 0 12px;border:1px solid rgba(255,173,74,.22);border-radius:13px}.bdt-delete.host{color:#72e2ff;border-color:rgba(114,226,255,.25);background:rgba(114,226,255,.06)}.board-decision.moderation>section{border-color:rgba(104,224,255,.38)}.board-moderation-choices{display:grid;gap:10px;margin-top:22px}.board-moderation-choices>button{display:flex;align-items:center;gap:13px;padding:16px;text-align:left;color:#71e1ff;background:rgba(104,224,255,.06);border:1px solid rgba(104,224,255,.25);border-radius:16px;font:inherit;cursor:pointer}.board-moderation-choices>button.danger{color:#ff77a9;background:rgba(255,68,134,.07);border-color:rgba(255,68,134,.28)}.board-moderation-choices svg{width:24px;flex:0 0 auto}.board-moderation-choices span{display:flex;flex-direction:column}.board-moderation-choices b{color:#fff;font-size:12px}.board-moderation-choices small{margin-top:3px;color:#9992a7;font-size:9px}.board-decision.moderation footer{grid-template-columns:1fr}.board-decision.moderation footer button{max-width:180px;justify-self:end;width:100%}

/* Profile song dock — the one true player; body-level so tab renders never reload it. */
#songDock { position: fixed; right: 12px; bottom: calc(86px + env(safe-area-inset-bottom, 0px)); width: min(320px, calc(100vw - 24px)); z-index: 900; border-radius: 14px; overflow: hidden; box-shadow: 0 10px 34px rgba(0,0,0,.55), 0 0 0 1px rgba(255,45,155,.28), 0 0 18px rgba(56,189,248,.18); }
#songDock iframe { display: block; width: 100%; height: 80px; border: 0; }
.yp-song-note { font-size: 12.5px; color: #cfc3dd; margin: 6px 0 0; }
.song-embed-slot { height: 152px; border-radius: 14px; }
#songDock iframe { height: 152px; }
.pr-count-link { background: none; border: 0; padding: 0; color: inherit; font: inherit; cursor: pointer; }
.pr-count-link b { color: #fff; }
button.you-stat { cursor: pointer; text-align: inherit; font: inherit; color: inherit; background: none; border: 0; }
.yp-version { padding: 12px 4px 2px; text-align: center; font-size: 11px; letter-spacing: .04em; color: #6f6685; }

/* ── Build-a-player + player grid (Play) ───────────────────────────────── */
.pd-viewseg { margin: 4px 0 14px; }
.bp-head { margin-bottom: 16px; }
.bp-head h1 { font-size: clamp(26px, 5vw, 40px); line-height: 1.02; margin: 4px 0 6px; }
.bp-head p { color: #b7adc9; max-width: 620px; }
.bp-forge { display: flex; flex-direction: column; align-items: center; gap: 14px; margin: 8px 0 22px; }
.bp-avatar { width: 118px; height: 118px; border-radius: 26px; background: var(--bp-grad); display: grid; place-items: center; box-shadow: 0 0 34px rgba(124,92,255,.45), inset 0 0 30px rgba(255,255,255,.12); }
.bp-avatar span { font-size: 54px; filter: drop-shadow(0 3px 8px rgba(0,0,0,.4)); }
.bp-skinrow { display: flex; gap: 10px; flex-wrap: wrap; justify-content: center; }
.bp-skin { width: 46px; height: 46px; border-radius: 14px; background: var(--bp-grad); border: 2px solid transparent; display: grid; place-items: center; cursor: pointer; opacity: .58; transition: opacity .15s, transform .15s; }
.bp-skin span { font-size: 22px; }
.bp-skin.on { opacity: 1; border-color: #fff; transform: translateY(-2px); }
.bp-spec { display: grid; grid-template-columns: 1fr; gap: 16px; margin-bottom: 24px; }
@media (min-width: 700px) { .bp-spec { grid-template-columns: 1fr 1fr; } }
.bp-field { display: block; }
.bp-field > span { display: block; font-size: 11px; letter-spacing: .09em; font-weight: 800; color: #8be0ff; margin-bottom: 8px; }
.bp-chips { gap: 7px; }
.bp-filterbar { display: flex; flex-wrap: wrap; gap: 8px; margin-bottom: 20px; }
.bp-filterbar .game-select { width: auto; min-width: 128px; flex: 0 1 auto; }
.pf-clear { border-color: rgba(255,45,155,.5) !important; }
.bp-results > header { display: flex; align-items: flex-end; justify-content: space-between; gap: 12px; margin: 6px 0 14px; }
.bp-results h2 { font-size: clamp(19px, 3vw, 26px); margin: 2px 0 0; }
.bp-results small { font-size: 11px; letter-spacing: .09em; color: #8be0ff; font-weight: 800; }
.bp-clear, .bp-results header button { background: none; border: 1px solid rgba(255,255,255,.18); color: #cfc3dd; border-radius: 999px; padding: 7px 15px; font-size: 12px; cursor: pointer; }
.pg-grid { display: grid; grid-template-columns: repeat(auto-fill, minmax(150px, 1fr)); gap: 12px; }
.pg-card { position: relative; display: flex; flex-direction: column; gap: 5px; padding: 12px; border-radius: 18px; background: rgba(20,16,32,.55); border: 1px solid rgba(255,255,255,.08); text-decoration: none; overflow: hidden; transition: transform .15s, border-color .15s; }
.pg-card:hover { transform: translateY(-3px); border-color: rgba(124,92,255,.5); }
.pg-photo { position: relative; aspect-ratio: 1; border-radius: 14px; background: var(--pg-grad); background-size: cover; background-position: center; display: grid; place-items: center; margin-bottom: 4px; }
.pg-photo em { font-size: 34px; }
.pg-dot { position: absolute; right: 8px; bottom: 8px; width: 12px; height: 12px; border-radius: 50%; background: #34d399; border: 2px solid #0a0812; }
.pg-name { color: #fff; font-size: 14px; }
.pg-name b { font-weight: 700; }
.pg-game { color: #b7adc9; font-size: 12px; }
.pg-tags { display: flex; flex-wrap: wrap; gap: 4px; }
.pg-tags em { font-style: normal; font-size: 10.5px; color: #9a90ad; background: rgba(255,255,255,.06); border-radius: 6px; padding: 2px 6px; }
.pg-role { position: absolute; top: 10px; right: 10px; font-size: 10px; font-weight: 800; letter-spacing: .04em; color: #0a0812; background: #8be0ff; border-radius: 6px; padding: 3px 7px; }
.bp-empty { text-align: center; padding: 40px 20px; color: #b7adc9; }
.bp-empty span { display: inline-flex; opacity: .5; margin-bottom: 10px; }
.bp-empty b { display: block; color: #fff; font-size: 17px; margin-bottom: 4px; }
.bp-empty .btn { margin-top: 14px; }

/* ── Saved player builds ───────────────────────────────────────────────── */
.bp-back { background: none; border: 0; color: #8be0ff; font-size: 13px; font-weight: 700; cursor: pointer; padding: 0 0 10px; }
.bp-name { margin-top: 14px; max-width: 460px; text-align: center; }
.bp-livecount { text-align: center; color: #b7adc9; margin: 4px 0 18px; font-size: 14px; }
.bp-livecount b { color: #fff; font-size: 18px; }
.bp-save-row { display: flex; gap: 12px; align-items: center; justify-content: center; margin-bottom: 24px; }
.bp-delete { background: none; border: 1px solid rgba(255,45,155,.4); color: #ff89c2; border-radius: 999px; padding: 10px 18px; font-size: 13px; cursor: pointer; }
.bp-newbuild { display: flex; align-items: center; gap: 12px; width: 100%; text-align: left; padding: 16px; border-radius: 18px; background: rgba(124,92,255,.12); border: 1px dashed rgba(124,92,255,.45); color: #fff; cursor: pointer; margin-bottom: 16px; }
.bp-newbuild b { display: block; font-size: 15px; }
.bp-newbuild small { color: #b7adc9; font-size: 12px; }
.bp-buildlist { display: grid; grid-template-columns: 1fr; gap: 12px; }
@media (min-width: 700px) { .bp-buildlist { grid-template-columns: 1fr 1fr; } }
.bp-buildcard { display: flex; align-items: center; gap: 14px; text-align: left; padding: 16px; border-radius: 20px; background: rgba(20,16,32,.6); border: 1px solid rgba(255,255,255,.09); cursor: pointer; transition: transform .15s, border-color .15s; }
.bp-buildcard:hover { transform: translateY(-2px); border-color: rgba(124,92,255,.5); }
.bp-avatar.sm { width: 54px; height: 54px; border-radius: 16px; flex: 0 0 auto; box-shadow: 0 0 18px rgba(124,92,255,.4); }
.bp-avatar.sm span { font-size: 26px; }
.bp-bc-body { flex: 1; min-width: 0; display: flex; flex-direction: column; gap: 6px; }
.bp-bc-body > b { color: #fff; font-size: 16px; }
.bp-summary { gap: 5px; }
.bp-summary em { font-style: normal; font-size: 11px; color: #cdb9ff; background: rgba(124,92,255,.16); border-radius: 7px; padding: 3px 8px; }
.bp-bc-matches { display: flex; align-items: center; gap: 8px; margin-top: 2px; }
.bp-faces { display: inline-flex; }
.bp-faces > * { margin-left: -8px; border: 2px solid #0a0812; border-radius: 50%; }
.bp-faces > *:first-child { margin-left: 0; }
.bp-bc-matches em { font-style: normal; font-size: 12px; color: #34d399; font-weight: 700; }
.bp-bc-go { color: #8be0ff; font-size: 22px; flex: 0 0 auto; }
.bp-first { display: flex; flex-direction: column; align-items: center; gap: 8px; }
.bp-first .bp-avatar { margin-bottom: 6px; }
.bp-first .pe-save { margin-top: 14px; }
.bp-open-id { display: flex; align-items: center; gap: 14px; margin: 6px 0 8px; }
.bp-open-id h1 { margin: 0 0 6px; }
.bp-edit-link { background: none; border: 1px solid rgba(255,255,255,.18); color: #cfc3dd; border-radius: 999px; padding: 8px 16px; font-size: 13px; cursor: pointer; display: inline-flex; align-items: center; gap: 6px; }

/* ── The bulletin (they're looking for you) ────────────────────────────── */
.bl-list { display: grid; grid-template-columns: 1fr; gap: 14px; }
@media (min-width: 700px) { .bl-list { grid-template-columns: 1fr 1fr; } }
.bl-card { padding: 18px; border-radius: 20px; background: rgba(20,16,32,.6); border: 1px solid rgba(255,255,255,.09); display: flex; flex-direction: column; gap: 12px; }
.bl-who { display: flex; align-items: center; gap: 12px; text-decoration: none; }
.bl-who b { color: #fff; }
.bl-who small { display: block; color: #b7adc9; font-size: 12px; }
.bl-want { display: flex; align-items: center; gap: 12px; padding: 12px; border-radius: 14px; background: rgba(124,92,255,.1); }
.bl-want b { color: #fff; display: block; margin-bottom: 5px; }
.bl-fit { display: flex; align-items: center; gap: 7px; font-size: 12.5px; color: #34d399; font-weight: 600; }
.bl-fit svg { width: 15px; height: 15px; }
.bl-raise { border: 0; border-radius: 999px; padding: 12px; font-size: 14px; font-weight: 700; color: #fff; cursor: pointer; background: linear-gradient(135deg,#ff2d9b,#7c5cff); }
.bl-raise:disabled { opacity: .6; background: rgba(255,255,255,.14); }

/* raised-hand on a matched player + build note */
.pg-raised { border-color: rgba(255,45,155,.55); box-shadow: 0 0 20px rgba(255,45,155,.22); }
.pg-hand { position: absolute; top: 8px; left: 8px; z-index: 2; font-size: 18px; filter: drop-shadow(0 0 8px rgba(255,45,155,.9)); }
.bp-raised-note { display: flex; align-items: center; gap: 8px; padding: 12px 14px; border-radius: 14px; margin-bottom: 14px; background: rgba(255,45,155,.12); border: 1px solid rgba(255,45,155,.35); color: #ffd0e6; font-size: 13.5px; }
.bp-raised-note b { color: #fff; }
a.bp-back { display: inline-block; text-decoration: none; }
a.bp-edit-link { text-decoration: none; }



/* ═══ Play sub-tabs: identical to the Home action cards (icon + title + subtitle) ═══ */
.pd-viewseg.hc-launchbar { margin: 4px 0 16px; }
.pd-viewseg.hc-launchbar > a.active { box-shadow: inset 0 0 0 1.5px rgba(124,92,255,.95), 0 0 16px rgba(124,92,255,.4), 0 0 30px rgba(255,45,155,.18); }
.pd-viewseg.hc-launchbar > a.active b { color: #fff; }
@media (max-width: 640px) { .pd-viewseg.hc-launchbar { grid-template-columns: 1fr 1fr; } }

/* Play hero headlines get the neon-sign glow (#app-scoped to beat the global #app :is(h1…) readability shadow, like .hv-headline) */
#app .bp-head h1 { color: #fff; text-shadow: 0 0 10px rgba(255,45,155,0.85), 0 0 24px rgba(255,45,155,0.6), 0 0 48px rgba(56,189,248,0.5); }
/* the lone "Online now" toggle should read like the filter selects, not a stray chip */
.bp-filterbar .chip { min-width: 128px; padding: 12px 16px; border-radius: 13px; font-size: 13px; font-weight: 700; background: rgba(255,255,255,.05); border: 1px solid rgba(148,120,255,.2); color: #cfc3dd; }
.bp-filterbar .chip.on { background: rgba(124,92,255,.2); border-color: rgba(124,92,255,.55); color: #fff; box-shadow: 0 0 12px rgba(124,92,255,.25); }
.bp-filterbar .pf-clear { border-color: rgba(255,45,155,.5); color: #ff9ecb; }

/* Skins are now real neon role emblems (images) */
.bp-avatar { background-size: cover; background-position: center; }
.bp-avatar span { display: none; }
.bp-skin { background-size: cover; background-position: center; }
.bp-skin span { display: none; }
.bp-avatar.sm { background-size: cover; background-position: center; }
/* Play headlines: the same neon-glow treatment as the Home section headers
   (solid color + soft glow, no rotation), a different color per view:
   My builds = pink, You fit = purple, Filters = blue. */
#app .bp-head h1 {
  --hc: #dcf9ff; --hg: #5edfff; --hg2: rgba(56,189,248,.5);
  background: none; color: var(--hc); -webkit-text-fill-color: var(--hc); -webkit-text-stroke: 0;
  animation: none; filter: none; font-weight: 400; letter-spacing: -.01em;
  text-shadow: 0 0 4px var(--hc), 0 0 15px var(--hg), 0 0 32px var(--hg2);
}
#app .bp-head.h-pink   h1 { --hc:#ffd0e8; --hg:#ff56ad; --hg2:rgba(255,45,155,.55); }
#app .bp-head.h-purple h1 { --hc:#e6d6ff; --hg:#a875ff; --hg2:rgba(150,86,255,.6); }
#app .bp-head.h-blue   h1 { --hc:#9fb0ff; --hg:#4d78ff; --hg2:rgba(68,120,255,.6); }
/* Online-now: a clean borderless toggle, not a bordered box */
.bp-filterbar .chip { border: 0 !important; background: rgba(255,255,255,.06); box-shadow: none; }
.bp-filterbar .chip.on { background: linear-gradient(135deg, rgba(255,45,155,.32), rgba(124,92,255,.32)); color: #fff; box-shadow: 0 0 14px rgba(124,92,255,.3); }

/* media grid add-tile + video cells */
.ph-add { display: flex; flex-direction: column; align-items: center; justify-content: center; gap: 6px; cursor: pointer; color: #a99cc0; background: rgba(124,92,255,.1); border: 1px dashed rgba(124,92,255,.4); }
.ph-add svg { width: 26px; }
.ph-add small { font-size: 10.5px; }
.ph-cell video { width: 100%; height: 100%; object-fit: cover; display: block; }
.ph-play { position: absolute; inset: 0; display: grid; place-items: center; font-size: 26px; color: rgba(255,255,255,.9); text-shadow: 0 2px 8px rgba(0,0,0,.6); pointer-events: none; }

/* Play cards get the ROTATING conic multi-color border (spins in a circle) + glow */
.bp-buildcard, .bp-newbuild, .bl-card { position: relative; border-color: transparent !important; box-shadow: 0 0 18px rgba(124,92,255,.22), 0 0 34px rgba(255,45,155,.12); }
.bp-buildcard::before, .bp-newbuild::before, .bl-card::before {
  content: ""; position: absolute; inset: 0; border-radius: inherit; padding: 1.6px;
  background: conic-gradient(from var(--neonAngle, 0deg), #ff2d9b, #38bdf8, #a855f7, #38bdf8, #ff2d9b);
  -webkit-mask: linear-gradient(#000 0 0) content-box, linear-gradient(#000 0 0); -webkit-mask-composite: xor;
  mask: linear-gradient(#000 0 0) content-box, linear-gradient(#000 0 0); mask-composite: exclude;
  animation: neonSpin 8s linear infinite; pointer-events: none;
}
.bp-buildlist > *:nth-child(2n)::before, .bl-list > *:nth-child(2n)::before { animation-delay: -4s; }



.ph-del svg { width: 15px; }

/* per-view kicker colors */
.pd-kicker.k-pink { color: #ff6bb8; }
.pd-kicker.k-purple { color: #a855f7; }

/* ── Play page spacing rhythm: give every section room to breathe ── */
.build-player { padding-bottom: 80px; }
.build-player .pd-mode { margin: 6px 0 12px; }
.build-player .pd-viewseg.hc-launchbar { margin: 0 0 26px; }
.build-player .hc-launchbar > a { padding: 15px 17px; }
.build-player .bp-head { margin: 4px 0 26px; }
.build-player .bp-head h1 { margin: 8px 0 10px; }
.build-player .bp-head .pd-kicker { margin-bottom: 4px; }
.build-player .bp-forge { margin: 10px 0 28px; gap: 16px; }
.build-player .bp-spec { margin-bottom: 30px; gap: 20px; }
.build-player .bp-filterbar { margin-bottom: 28px; gap: 10px; }
.build-player .bp-results > header { margin: 10px 0 18px; }
.build-player .bp-newbuild { margin-bottom: 20px; padding: 18px; }
.build-player .bp-buildlist, .build-player .bl-list, .build-player .pg-grid { gap: 16px; }
.build-player .bp-raised-note { margin-bottom: 18px; }

/* ── Team night: multi-player scheduling ── */
.sp-team { gap: 8px; }
.sp-team .chip.sp-host { background: rgba(124,92,255,.22); border-color: rgba(124,92,255,.5); color: #fff; cursor: default; }
.spp-person.spp-team { align-items: center; }
.spp-stack { display: flex; }
.spp-stack .avatar { margin-left: -10px; border: 2px solid #0b0713; border-radius: 50%; }
.spp-stack .avatar:first-child { margin-left: 0; }
.sir-team { min-height: 96px; align-items: center; }
.sir-roster { display: flex; flex-wrap: wrap; gap: 12px; padding: 4px 2px; }
.sir-roster > span { display: flex; flex-direction: column; align-items: center; gap: 5px; font-size: 11px; font-weight: 700; color: #e7dcff; }
.sd-roster-list { list-style: none; margin: 4px 0 10px; padding: 0; display: flex; flex-direction: column; gap: 10px; }
.sd-roster-list li { display: flex; align-items: center; gap: 10px; }
.sd-roster-list li b { flex: 1; font-size: 14px; color: #f2ecff; }
.sd-roster-list li em { font-style: normal; font-size: 11px; font-weight: 800; letter-spacing: .04em; padding: 4px 9px; border-radius: 999px; }
.sd-roster-list li em.in { color: #9affc8; background: rgba(67,224,138,.16); }
.sd-roster-list li em.pend { color: #cbb6ff; background: rgba(124,92,255,.16); }
.sd-roster-list li em.out { color: #ffb0b0; background: rgba(255,90,90,.14); }

/* Session detail: inline accept (invitee no longer routes to Schedule) + roster player-card links */
.sd-answer { display: flex; flex-direction: column; gap: 12px; padding: 16px; border-radius: 14px; background: rgba(124,92,255,.1); border: 1px solid rgba(124,92,255,.28); }
.sd-answer-copy b { display: block; font-size: 15px; color: #f2ecff; }
.sd-answer-copy span { display: block; margin-top: 3px; font-size: 12.5px; color: #b9abd6; }
.sd-answer-btns { display: flex; gap: 10px; }
.sd-answer-btns .btn { flex: 1; }
.sd-roster-who { display: flex; align-items: center; gap: 10px; flex: 1; text-decoration: none; color: inherit; min-width: 0; }
.sd-roster-who:hover b { color: #fff; text-decoration: underline; }

/* Session detail: breathing room between stacked action buttons */
.sd-arrival .btn-block { margin-top: 14px; }
.sd-arrival .sd-join { margin-top: 4px; }

/* ═══ SOCIAL TAB: Boards + Hangouts toggle ═══ */
.social-toggle { display: grid; grid-template-columns: 1fr 1fr; gap: 8px; margin: 0 0 14px; }
.social-toggle a { display: flex; align-items: center; justify-content: center; gap: 8px; padding: 13px; border-radius: 14px; text-decoration: none;
  background: rgba(12,8,20,.6); border: 1px solid rgba(145,110,255,.16); color: #b9abd6; font-weight: 800; font-size: 14px; letter-spacing: .01em; transition: transform .12s ease, border-color .12s ease, color .12s ease; }
.social-toggle a svg { width: 17px; }
.social-toggle a.on { color: #fff; border-color: rgba(124,92,255,.6); background: rgba(124,92,255,.16); box-shadow: 0 0 16px rgba(124,92,255,.25); }
.social-toggle a:not(.on):hover { color: #e7dcff; border-color: rgba(145,110,255,.4); transform: translateY(-1px); }

/* ═══ HANGOUTS panel ═══ */
.hangouts { padding-bottom: 80px; }
.hg-head { display: flex; gap: 18px; align-items: stretch; justify-content: space-between; margin-bottom: 22px; flex-wrap: wrap; }
.hg-head h1 { font-size: clamp(26px,4.4vw,40px); line-height: 1.04; margin: 6px 0 8px; }
.hg-head h1 span { color: #ff9ed6; text-shadow: 0 0 12px rgba(255,45,155,.6), 0 0 30px rgba(124,92,255,.4); }
.hg-head > div { max-width: 560px; }
.hg-head p { color: #b9abd6; font-size: 14px; }
.hg-start { display: flex; align-items: center; gap: 12px; padding: 16px 18px; border-radius: 16px; cursor: pointer; text-align: left;
  background: linear-gradient(120deg, rgba(255,45,155,.16), rgba(124,92,255,.16)); border: 1px solid rgba(255,86,173,.4); color: #fff; align-self: center; }
.hg-start svg { width: 22px; color: #ff9ed6; }
.hg-start b { display: block; font-size: 15px; } .hg-start small { display: block; color: #cbb6e6; font-size: 12px; margin-top: 2px; }
.hg-start:hover { border-color: rgba(255,86,173,.7); box-shadow: 0 0 20px rgba(255,45,155,.25); }
.hg-section { margin-bottom: 26px; }
.hg-section-head { display: flex; align-items: flex-end; justify-content: space-between; margin-bottom: 12px; }
.hg-section-head small { display: block; color: #8f7bbf; font-size: 11px; font-weight: 800; letter-spacing: .08em; }
.hg-section-head b { font-size: 16px; color: #f2ecff; }
.hg-section-head strong { color: #b79dff; font-size: 22px; font-weight: 800; }
.hg-grid { display: grid; grid-template-columns: repeat(auto-fill, minmax(240px, 1fr)); gap: 14px; }
/* Hangout cards speak the room-card language (her call — the purple-pill draft read wrong):
   dark glass badge pill, full-bleed art behind a heavy grade, copy anchored at the bottom. */
.hg-card { position: relative; overflow: hidden; display: flex; flex-direction: column; justify-content: flex-end; min-height: 200px; padding: 14px; border-radius: 18px;
  text-decoration: none; color: #fff; background: #0a0712; box-shadow: inset 0 0 0 1px rgba(255,255,255,.12); }
.hg-card .hg-art { position: absolute; inset: 0; background: var(--hg-art) center/cover; filter: saturate(.9) brightness(.3); }
.hg-card:not([style]) .hg-art { background: radial-gradient(120% 120% at 20% 0%, rgba(124,92,255,.3), rgba(10,7,18,.95)); filter: none; }
.hg-grade { position: absolute; inset: 0; background:
    linear-gradient(90deg, rgba(4,3,9,.88) 0%, rgba(6,4,12,.55) 48%, rgba(6,4,12,.28) 80%),
  linear-gradient(0deg, rgba(5,3,10,.94), rgba(5,3,10,.18) 62%); }
.hg-card > * { position: relative; }
.hg-state { position: absolute; z-index: 2; top: 12px; left: 12px; display: flex; align-items: center; gap: 6px; padding: 5px 9px; border-radius: 999px;
  color: #fff; background: rgba(5,3,10,.72); -webkit-backdrop-filter: blur(12px); backdrop-filter: blur(12px);
  font-size: 8.5px; letter-spacing: .12em; font-weight: 850; text-transform: uppercase; }
.hg-state i { width: 7px; height: 7px; border-radius: 50%; background: #54e08a; box-shadow: 0 0 8px #54e08a; }
.hg-card.closed .hg-state i { background: #ff5a5a; box-shadow: 0 0 8px #ff5a5a; }
.hg-copy { z-index: 2; display: flex; flex-direction: column; min-width: 0; }
.hg-copy small { color: var(--cyan); font-size: 9px; font-weight: 850; letter-spacing: .12em; text-transform: uppercase; }
.hg-copy h2 { font-size: 17px; line-height: 1.1; margin: 3px 0 0; }
.hg-copy p { color: #bdb4d7; font-size: 9.5px; margin-top: 5px; }
#app .hg-card strong { z-index: 2; margin-top: 9px; align-self: flex-start; color: #ffd4e9; font-size: 10px; font-weight: 850; letter-spacing: .07em; text-transform: uppercase; }
.hg-card:hover { box-shadow: inset 0 0 0 1px rgba(92,200,255,.35), 0 0 22px rgba(124,92,255,.18); }
.hg-empty { display: flex; align-items: center; gap: 14px; padding: 22px; border-radius: 16px; background: rgba(12,8,20,.5); border: 1px dashed rgba(145,110,255,.3); flex-wrap: wrap; }
.hg-empty svg { width: 26px; color: #b79dff; } .hg-empty b { font-size: 15px; color: #f2ecff; } .hg-empty p { color: #b9abd6; font-size: 13px; margin-top: 2px; }

/* ═══ Hangout detail ═══ */
.hangout-detail { padding-bottom: 80px; }
.hd-hero { position: relative; overflow: hidden; border-radius: 20px; min-height: 220px; display: flex; flex-direction: column; justify-content: flex-end; padding: 18px; margin-bottom: 16px; background: var(--hd-art) center/cover; }
.hd-grade { position: absolute; inset: 0; background: linear-gradient(180deg, rgba(8,5,14,.2), rgba(8,5,14,.9)); }
.hd-hero > *:not(.hd-grade) { position: relative; }
.hd-state { align-self: flex-start; font-size: 11px; font-weight: 800; letter-spacing: .06em; padding: 6px 11px; border-radius: 999px; background: rgba(84,224,138,.18); border: 1px solid rgba(84,224,138,.4); color: #9affc8; display: flex; align-items: center; gap: 6px; }
.hd-state i { width: 7px; height: 7px; border-radius: 50%; background: #54e08a; box-shadow: 0 0 8px #54e08a; }
.hd-copy { margin-top: 12px; } .hd-copy h1 { font-size: clamp(24px,4vw,34px); margin: 4px 0; } .hd-copy p { color: #cbbce0; }
.hd-card, .hd-side { background: rgba(12,8,20,.6); border: 1px solid rgba(145,110,255,.18); border-radius: 16px; padding: 18px; margin-bottom: 14px; }
.hd-card-kicker { font-size: 11px; font-weight: 800; letter-spacing: .06em; color: #8f7bbf; margin-bottom: 12px; }
.hd-help { color: #b9abd6; font-size: 13.5px; margin-bottom: 14px; }
.hd-people { display: flex; flex-wrap: wrap; gap: 14px; margin-bottom: 16px; }
.hd-person { display: flex; flex-direction: column; align-items: center; gap: 5px; text-decoration: none; color: #e7dcff; font-size: 12px; font-weight: 700; }
.hd-empty-line { color: #8f7bbf; font-size: 13px; }
.hd-inside-tag { display: inline-flex; align-items: center; gap: 7px; color: #9affc8; font-weight: 800; font-size: 13px; margin-bottom: 10px; }
.hd-inside-tag svg { width: 16px; }
.hd-leave { display: block; margin-top: 4px; background: none; border: 0; color: #ff9ba8; font-weight: 700; font-size: 13px; cursor: pointer; }
.hd-note { display: flex; gap: 12px; align-items: flex-start; padding: 14px 16px; border-radius: 14px; background: rgba(124,92,255,.08); border: 1px solid rgba(124,92,255,.2); }
.hd-note svg { width: 18px; color: #b79dff; flex: none; } .hd-note b { display: block; color: #e7dcff; font-size: 13.5px; } .hd-note small { color: #b9abd6; }
.hg-locked { text-align: center; padding: 48px 20px; } .hg-locked svg { width: 32px; color: #b79dff; } .hg-locked b { display: block; margin: 12px 0 18px; font-size: 16px; color: #f2ecff; }

/* ═══ New hangout form ═══ */
.new-hangout { padding-bottom: 80px; }
.nh-head { margin-bottom: 22px; } .nh-head h1 { font-size: clamp(26px,4.4vw,38px); line-height: 1.04; margin: 6px 0 8px; }
.nh-head h1 span { color: #ff9ed6; text-shadow: 0 0 12px rgba(255,45,155,.55), 0 0 28px rgba(124,92,255,.4); } .nh-head p { color: #b9abd6; }
.nh-form { display: flex; flex-direction: column; gap: 18px; }
.nh-field span { display: block; font-size: 11px; font-weight: 800; letter-spacing: .06em; color: #8f7bbf; margin-bottom: 8px; }
.nh-field .dim2 { font-weight: 600; letter-spacing: 0; text-transform: none; }
.hg-kinds { display: grid; grid-template-columns: repeat(3, 1fr); gap: 10px; }
.hg-kind { padding: 14px 10px; border-radius: 14px; background: rgba(12,8,20,.6); border: 1px solid rgba(145,110,255,.2); color: #cfc3dd; cursor: pointer; text-align: center; }
.hg-kind b { display: block; font-size: 14px; }
.hg-teams { display: flex; flex-wrap: wrap; gap: 8px; }
.hg-team { padding: 9px 14px; border-radius: 12px; background: rgba(12,8,20,.6); border: 1px solid rgba(145,110,255,.25); color: #cfc3dd; font-weight: 800; font-size: 13px; cursor: pointer; }
.hg-team.on { border-color: #7c5cff; background: rgba(124,92,255,.18); color: #fff; } .hg-kind small { display: block; font-size: 11px; color: #9a8cc0; margin-top: 3px; }
.hg-kind.on { color: #fff; border-color: rgba(124,92,255,.6); background: rgba(124,92,255,.18); box-shadow: 0 0 14px rgba(124,92,255,.2); }
.hg-women { display: flex; align-items: center; gap: 12px; padding: 14px 16px; border-radius: 14px; background: rgba(12,8,20,.6); border: 1px solid rgba(145,110,255,.2); color: #e7dcff; cursor: pointer; text-align: left; }
.hg-women i { width: 20px; height: 20px; border-radius: 6px; border: 2px solid rgba(168,117,255,.5); flex: none; }
.hg-women.on { border-color: rgba(255,86,173,.5); } .hg-women.on i { background: #ff56ad; border-color: #ff56ad; box-shadow: 0 0 10px rgba(255,45,155,.5); }
.hg-women b { display: block; font-size: 14px; } .hg-women small { display: block; font-size: 12px; color: #9a8cc0; }
.nh-go { margin-top: 4px; } .nh-fine { color: #8f7bbf; font-size: 12px; text-align: center; }

/* Social page: create-action buttons up top (below header) */
.social-page { padding-bottom: 80px; }
.soc-create { display: grid; grid-template-columns: 1fr 1fr; gap: 12px; margin: 0 0 22px; }
/* Social borrows Home's hv-mod section shells; Home spaces them via .home-v7 gap, here via margin. */
.social-page .hv-mod + .hv-mod, .social-page .hv-mod + section { margin-top: 15px; }
.soc-create-btn { display: flex; align-items: center; gap: 12px; padding: 16px 18px; border-radius: 16px; cursor: pointer; text-align: left; color: #fff; border: 1px solid rgba(145,110,255,.28); }
.soc-create-btn svg { width: 22px; flex: none; }
.soc-create-btn span { flex: 1; } .soc-create-btn b { display: block; font-size: 15px; } .soc-create-btn small { display: block; color: #cbb6e6; font-size: 12px; margin-top: 2px; }
.soc-create-btn em { font-size: 22px; font-style: normal; color: #b79dff; font-weight: 300; }
.soc-create-btn.hangout { background: linear-gradient(120deg, rgba(255,45,155,.16), rgba(124,92,255,.16)); border-color: rgba(255,86,173,.4); }
.soc-create-btn.hangout svg { color: #ff9ed6; }
.soc-create-btn.board { background: linear-gradient(120deg, rgba(56,189,248,.14), rgba(124,92,255,.14)); border-color: rgba(56,189,248,.35); }
.soc-create-btn.board svg { color: #7fd7ff; }
.soc-create-btn:hover { transform: translateY(-1px); box-shadow: 0 0 20px rgba(124,92,255,.22); }
@media (max-width: 560px) { .soc-create { grid-template-columns: 1fr; } }

/* Hangout chat */
.hd-chat .hd-card-kicker { display: flex; align-items: center; justify-content: space-between; }
.hd-arch-btn { background: none; border: 0; color: #b79dff; font-weight: 700; font-size: 11px; letter-spacing: .02em; cursor: pointer; text-transform: none; }
.hd-arch-btn:hover { color: #d3c4ff; text-decoration: underline; }
.hd-msgs { display: flex; flex-direction: column; gap: 8px; max-height: 320px; overflow-y: auto; padding: 4px 2px 12px; }
.hd-msg { max-width: 82%; align-self: flex-start; background: rgba(255,255,255,.05); border: 1px solid rgba(145,110,255,.16); padding: 8px 12px; border-radius: 14px; }
.hd-msg.me { align-self: flex-end; background: rgba(124,92,255,.22); border-color: rgba(124,92,255,.4); }
.hd-msg b { display: block; font-size: 11px; color: #b79dff; margin-bottom: 2px; }
.hd-msg span { font-size: 14px; color: #f2ecff; word-break: break-word; }
.hd-msg-empty { color: #8f7bbf; font-size: 13px; text-align: center; padding: 18px 10px; }
.hd-composer { display: flex; gap: 8px; align-items: flex-end; }
.hd-composer textarea { flex: 1; resize: none; min-height: 44px; max-height: 120px; }
.hd-composer .btn { flex: none; }
.hd-archive .hd-arch-session { margin-bottom: 14px; }
.hd-archive .hd-arch-session small { display: block; font-size: 10px; font-weight: 800; letter-spacing: .08em; color: #8f7bbf; margin-bottom: 8px; }
.hd-archive .hd-arch-session .hd-msg { max-width: 100%; }

/* Hangout auto-close warning overlay */
.hangout-solo-warn { position: fixed; inset: 0; z-index: 9000; display: flex; align-items: center; justify-content: center; padding: 24px; background: rgba(6,4,12,.72); backdrop-filter: blur(6px); animation: hswIn .18s ease; }
@keyframes hswIn { from { opacity: 0; } to { opacity: 1; } }
.hsw-card { width: min(360px, 100%); text-align: center; padding: 28px 24px; border-radius: 22px; background: linear-gradient(160deg, rgba(24,12,34,.98), rgba(12,8,20,.98)); border: 1px solid rgba(255,86,173,.4); box-shadow: 0 0 40px rgba(255,45,155,.25); }
.hsw-ring { display: inline-flex; align-items: center; justify-content: center; width: 74px; height: 74px; border-radius: 50%; border: 3px solid rgba(255,86,173,.5); box-shadow: 0 0 20px rgba(255,45,155,.4), inset 0 0 16px rgba(255,45,155,.2); margin-bottom: 14px; }
.hsw-ring b { font-size: 30px; font-weight: 800; color: #ff9ed6; }
.hsw-card h3 { font-size: 19px; color: #fff; margin-bottom: 6px; }
.hsw-card p { color: #cbb6e6; font-size: 14px; margin-bottom: 18px; }
.hsw-actions .btn { width: 100%; }

/* Host-handoff sheet (leaving a lobby/hangout you host to open a hangout) */
.handoff-sheet { position: fixed; inset: 0; z-index: 9000; display: flex; align-items: center; justify-content: center; padding: 22px; }
.handoff-bg { position: absolute; inset: 0; background: rgba(6,4,12,.72); backdrop-filter: blur(6px); border: 0; cursor: pointer; }
.handoff-sheet > section { position: relative; width: min(400px, 100%); border-radius: 22px; padding: 26px 24px; background: linear-gradient(160deg, rgba(22,12,32,.98), rgba(12,8,20,.98)); border: 1px solid rgba(124,92,255,.4); box-shadow: 0 0 40px rgba(124,92,255,.25); animation: hswIn .18s ease; }
.handoff-sheet header small { font-size: 11px; font-weight: 800; letter-spacing: .07em; color: #b79dff; }
.handoff-sheet header h2 { font-size: 20px; color: #fff; margin: 6px 0 8px; }
.handoff-sheet header p { color: #cbb6e6; font-size: 13.5px; }
.handoff-pick { display: block; margin: 18px 0 12px; }
.handoff-pick span { display: block; font-size: 11px; font-weight: 800; letter-spacing: .06em; color: #8f7bbf; margin-bottom: 7px; }
.handoff-people { display: flex; flex-direction: column; gap: 8px; max-height: 240px; overflow-y: auto; }
.handoff-person { display: flex; align-items: center; gap: 12px; width: 100%; text-align: left; padding: 9px 11px; border-radius: 14px; background: rgba(255,255,255,.04); border: 1.5px solid rgba(255,255,255,.09); color: #fff; cursor: pointer; transition: border-color .12s, background .12s; }
.handoff-person:hover { border-color: rgba(124,92,255,.5); }
.handoff-person.on { border-color: #7c5cff; background: rgba(124,92,255,.15); }
.handoff-person .avatar { flex: 0 0 auto; }
.handoff-person-name { display: flex; flex-direction: column; min-width: 0; flex: 1; }
.handoff-person-name b { font-weight: 800; font-size: 15px; line-height: 1.15; }
.handoff-person-name small { color: #8f84a3; font-size: 12px; }
.handoff-view { flex: 0 0 auto; color: #7cc9ff; font-weight: 800; font-size: 12px; padding: 6px 10px; border-radius: 9px; background: rgba(56,189,248,.12); border: 1px solid rgba(56,189,248,.28); white-space: nowrap; }
.handoff-view:hover { background: rgba(56,189,248,.22); }
.handoff-check { flex: 0 0 auto; opacity: 0; color: #b79dff; font-weight: 900; font-size: 15px; }
.handoff-person.on .handoff-check { opacity: 1; }
.handoff-note { display: flex; gap: 9px; align-items: flex-start; font-size: 12.5px; color: #b9abd6; background: rgba(124,92,255,.1); border: 1px solid rgba(124,92,255,.22); border-radius: 12px; padding: 11px 13px; }
.handoff-note svg { width: 15px; flex: none; color: #b79dff; margin-top: 1px; }
.handoff-sheet footer { display: flex; gap: 10px; margin-top: 20px; }
.handoff-sheet footer button { flex: 1; padding: 13px; border-radius: 13px; font-weight: 800; font-size: 14px; cursor: pointer; border: 1px solid rgba(145,110,255,.3); background: rgba(255,255,255,.05); color: #cfc3dd; }
.handoff-sheet footer button.primary { background: linear-gradient(120deg, #ff2d9b, #7c5cff); border: 0; color: #fff; }

@media(max-width:700px){.rr-live>a{font-size:10px;padding:15px;letter-spacing:.08em}}

/* ═══ Play radar hero = the HOME command-panel language (her call — she loves Home,
   hated the full-bleed editorial block). Contained glass panel, Home-scale headline,
   stats as the joined strip, mode pills in the launchbar anatomy. ═══ */
.room-radar .rr-head{position:relative;overflow:hidden;isolation:isolate;flex-direction:column;align-items:flex-start;gap:4px;margin-top:14px;padding:26px 26px 24px;border-bottom:0;border:1px solid rgba(150,115,255,.18);border-radius:26px;
  background:radial-gradient(120% 95% at 10% -5%,rgba(70,45,140,.4),transparent 55%),radial-gradient(90% 90% at 98% 115%,rgba(255,45,155,.14),transparent 58%),linear-gradient(160deg,#100b20,#08060f 70%)}
.room-radar .rr-head h1{margin:14px 0 10px;font-style:italic;font-weight:300;text-transform:none;font-size:clamp(26px,3.6vw,44px);line-height:1.12;letter-spacing:.045em;word-spacing:-.045em}
#app .room-radar .rr-head h1{color:#ff9ed6;text-shadow:0 0 3px #ffcbea,0 0 8px #ff70c1,0 0 15px #ff2d9b,0 0 27px rgba(255,45,155,.5)}
#app .room-radar .rr-head h1 span{color:#ff9ed6;-webkit-text-stroke:0;text-shadow:inherit}
.room-radar .rr-head p{font-size:11px}
.room-radar .rr-head-count{flex-direction:row;align-items:stretch;gap:0;margin-top:12px;min-width:0;overflow:hidden;border:1px solid rgba(255,255,255,.13);border-radius:15px;background:rgba(8,5,14,.62)}
.room-radar .rr-head-count b{padding:12px 16px;font-size:23px;letter-spacing:-.03em;animation:hvNeonCycle 7s linear infinite}
.room-radar .rr-head-count span{align-self:center;padding:0 16px 0 0;margin:0;color:#8e83a3;font-size:9px;font-weight:800;letter-spacing:.12em}
.room-radar .rr-head-count small{align-self:center;padding:0 16px;margin:0;border-left:1px solid rgba(255,255,255,.08);color:#8e83a3;font-size:8px}
.room-radar .rr-mode{gap:9px;margin-top:12px}
.room-radar .rr-mode a{position:relative;overflow:hidden;border:0;border-radius:15px;background:linear-gradient(145deg,rgba(18,13,32,.94),rgba(8,6,16,.9));box-shadow:inset 0 0 0 1px rgba(168,85,247,.28);color:#fff}
.room-radar .rr-mode a::after{content:"";position:absolute;inset:auto 14px 0;height:1px;background:linear-gradient(90deg,transparent,var(--violet),var(--pink),transparent);box-shadow:0 0 9px rgba(244,114,182,.65)}
.room-radar .rr-mode a.on{box-shadow:inset 0 0 0 1px rgba(92,200,255,.6),0 0 14px rgba(56,189,248,.2)}
.room-radar .rr-mode a.on small{color:#5bdcff}
@media(max-width:700px){.room-radar .rr-head{padding:20px 16px}.room-radar .rr-head h1{font-size:clamp(24px,6.4vw,34px)}.room-radar .rr-head-count{display:flex}}

/* Board tabs on phones: 2x2 grid, full-width — no sideways trail-off (her rule). */
@media(max-width:700px){.brd-tabs{display:grid;grid-template-columns:1fr 1fr;gap:7px;overflow:visible;padding:10px 14px}.brd-tabs button{flex:none;width:100%;min-height:42px;padding:10px 12px}}

/* Mode-pill icons (were 01/02/03 — numbers read as an order). Launchbar colors. */
.rr-mode small svg{width:14px;height:14px;color:var(--cyan);filter:drop-shadow(0 0 5px rgba(92,200,255,.5))}
.rr-mode a:nth-child(2) small svg{color:var(--pink);filter:drop-shadow(0 0 5px rgba(244,114,182,.5))}
.rr-mode a.on small{background:rgba(56,189,248,.1)}

/* #app-scoped: the readability floor was overriding every badge size tweak. */
/* Mobile-only: the readability floor override that finally sizes the badge to fit.
   Desktop keeps the base 9px (v721 size — her call). */
@media(max-width:700px){ #app .home-v7 .hc-room .hc-room-time { font-size: 7.5px; letter-spacing: .05em; } }
