/* Member hub — builds on styles.css (shares the light/teal theme variables). */

.hub-nav{position:sticky;top:0;z-index:60;display:flex;align-items:center;justify-content:space-between;
  padding:16px 28px;backdrop-filter:blur(12px);background:rgba(244,246,248,.78);border-bottom:1px solid var(--line)}
.hub-nav .right{display:flex;align-items:center;gap:14px}
.hub-nav .who{font-family:var(--mono);font-size:12px;color:var(--muted)}
.hub-nav .btn{padding:9px 15px;font-size:13px}

main.hub{position:relative;z-index:1;max-width:1280px;margin:0 auto;padding:34px 28px 80px;min-height:60vh}

/* ── Centered auth states (signed out / no access / loading / error) ──────── */
.gate{max-width:560px;margin:8vh auto 0;text-align:center;border:1px solid var(--hair);border-radius:24px;padding:48px 40px;
  background:radial-gradient(120% 150% at 50% 0%,rgba(var(--accent-rgb),.14),transparent 56%),#fff;box-shadow:var(--shadow-lg)}
.gate .mk{width:48px;height:48px;border-radius:14px;background:var(--accent);margin:0 auto 22px;
  display:flex;align-items:center;justify-content:center;color:#fff;font-family:var(--display);font-weight:800;font-size:18px;
  box-shadow:0 12px 30px -8px rgba(var(--accent-rgb),.6)}
.gate .mk::after{content:"LV"}
.gate h1{font-family:var(--display);font-weight:800;font-size:clamp(26px,4vw,38px);letter-spacing:-.02em;color:var(--ink)}
.gate p{color:var(--muted);margin:14px auto 0;max-width:44ch;font-size:15px}
.gate .actions{margin-top:28px;display:flex;gap:12px;justify-content:center;flex-wrap:wrap}
.gate .actions .btn{padding:14px 26px;font-size:15px}
.gate .whop-glyph{width:18px;height:18px;border-radius:5px;background:#fff;display:inline-block}
.gate .fine{margin-top:20px;font-family:var(--mono);font-size:11px;color:var(--faint);letter-spacing:.04em}
.gate .err{margin-top:16px;font-family:var(--mono);font-size:12px;color:var(--supply)}

.spinner{width:30px;height:30px;border-radius:50%;border:3px solid var(--hair);border-top-color:var(--accent);
  margin:6vh auto;animation:spin 1s linear infinite}
@keyframes spin{to{transform:rotate(360deg)}}

/* ── Member board header ─────────────────────────────────────────────────── */
.board-head{display:flex;align-items:flex-end;justify-content:space-between;gap:20px;flex-wrap:wrap;
  padding-bottom:22px;border-bottom:1px solid var(--line)}
.board-head h1{font-family:var(--display);font-weight:800;font-size:clamp(26px,3.4vw,36px);letter-spacing:-.02em;color:var(--ink)}
.board-head .meta{font-family:var(--mono);font-size:12.5px;color:var(--muted);margin-top:9px;display:flex;gap:16px;flex-wrap:wrap}
.board-head .meta .u{color:var(--accent)}
.board-head .live{display:flex;gap:10px;flex-wrap:wrap}
.board-head .live .btn{padding:10px 16px;font-size:13px}

.dates{display:flex;gap:8px;flex-wrap:wrap;margin-top:20px}
.date-chip{font-family:var(--mono);font-size:12px;color:var(--muted);background:#fff;border:1px solid var(--hair);
  padding:7px 13px;border-radius:9px;cursor:pointer;transition:.15s}
.date-chip:hover{border-color:var(--accent);color:var(--ink)}
.date-chip.active{background:var(--accent);color:#fff;border-color:transparent;font-weight:600}

/* ── Member ticker cards (richer than the public teaser) ─────────────────── */
/* Centered reading column for the member feed */
.board-head,.dates,.boardnav,.mgrid{max-width:940px;margin-left:auto;margin-right:auto}

/* Ticker quick-nav + futures/equities filter (sticky) */
.boardnav{position:sticky;top:62px;z-index:40;margin-top:18px;padding:12px 0 10px;
  background:rgba(244,246,248,.9);backdrop-filter:blur(8px)}
.boardnav .filters{display:flex;gap:6px;margin-bottom:10px}
.fbtn{font-family:var(--mono);font-size:11px;letter-spacing:.06em;text-transform:uppercase;color:var(--muted);
  background:#fff;border:1px solid var(--hair);padding:6px 13px;border-radius:9px;cursor:pointer;transition:.15s}
.fbtn:hover{border-color:var(--accent);color:var(--ink)}
.fbtn.active{background:var(--accent);color:#fff;border-color:transparent}
.tnav-row{display:flex;gap:7px;overflow-x:auto;padding-bottom:4px}
.tnav{font-family:var(--display);font-weight:700;font-size:13px;color:var(--ink);background:#fff;border:1px solid var(--hair);
  padding:6px 12px;border-radius:9px;cursor:pointer;white-space:nowrap;transition:.15s}
.tnav:hover{border-color:var(--accent);color:var(--accent-deep)}

/* Chart-led member cards (screenshot hero -> thesis + levels) */
.mgrid{display:flex;flex-direction:column;gap:22px;margin-top:22px}
.mcard{border:1px solid var(--hair);border-radius:18px;background:#fff;overflow:hidden;box-shadow:var(--shadow-card);scroll-margin-top:120px}
.mcard .head{display:flex;align-items:center;justify-content:space-between;padding:16px 20px 13px;border-bottom:1px solid var(--hair-soft)}
.mcard .head .l{display:flex;align-items:center;gap:10px}
.mcard .head .sym{font-family:var(--display);font-weight:800;font-size:22px;color:var(--ink)}
.mcard .head .kind{font-family:var(--mono);font-size:9px;letter-spacing:.12em;color:var(--faint);border:1px solid var(--hair);padding:3px 7px;border-radius:6px}
.mcard .head .tf{font-family:var(--mono);font-size:10.5px;color:var(--faint);letter-spacing:.04em}
.mchart{background:var(--panel-2);border-bottom:1px solid var(--hair-soft)}
.mchart img{display:block;width:100%;height:auto}
.mbody{display:grid;grid-template-columns:1.35fr 1fr;gap:24px;padding:18px 20px 20px}
.lab{font-family:var(--mono);font-size:10px;letter-spacing:.1em;text-transform:uppercase;color:var(--faint);margin-bottom:8px}
.thesis{font-size:14.5px;line-height:1.65;color:#28323d;white-space:pre-wrap}
.thesis.muted{color:var(--muted)}
@media(max-width:760px){.mbody{grid-template-columns:1fr;gap:16px}}

.notice{max-width:560px;margin:8vh auto 0;text-align:center;color:var(--muted);font-size:15px}
.notice h2{font-family:var(--display);font-weight:700;font-size:22px;color:var(--ink);margin-bottom:10px}
@media(max-width:760px){.mgrid{grid-template-columns:1fr}}

/* Nav-right cluster (theme toggle + member info) */
.hub-nav .hub-right{display:flex;align-items:center;gap:12px}

/* ===== Dark mode — hub-specific surface/contrast fixes ===== */
[data-theme="dark"] .hub-nav{background:rgba(11,14,18,.72);border-bottom-color:rgba(255,255,255,.06)}
[data-theme="dark"] .boardnav{background:rgba(11,14,18,.85)}
[data-theme="dark"] .gate{background:radial-gradient(120% 150% at 50% 0%,rgba(25,211,190,.14),transparent 56%),var(--surface)}
[data-theme="dark"] .date-chip,
[data-theme="dark"] .fbtn,
[data-theme="dark"] .tnav,
[data-theme="dark"] .mcard{background:var(--surface)}
[data-theme="dark"] .thesis,
[data-theme="dark"] .commentary{color:#c7cdd4}
