/* Crowd Waitlist — shared base */
@import url('https://fonts.googleapis.com/css2?family=Geist:wght@300;400;500;600;700&family=Geist+Mono:wght@400;500;600;700&display=swap');

:root {
  --bg: #0E0C0B;
  --card: #16110F;
  --muted: #221E1B;
  --border: #2A2522;
  --fg: #F1ECE6;
  --fg-2: #8E867F;
  --fg-3: #D6CEC5;
  --orange: #FF7300;
  --orange-soft: #FF9A4D;
  --green: #22C55E;
  --red: #EF4444;
  --yellow: #F59E0B;
  --blue: #38BDF8;
}
* { box-sizing: border-box; }
html, body { margin: 0; padding: 0; background: var(--bg); color: var(--fg); }
body { font-family: 'Geist', system-ui, sans-serif; -webkit-font-smoothing: antialiased; font-size: 14px; }
.mono { font-family: 'Geist Mono', monospace; font-feature-settings: 'tnum' 1; }
.bracket { color: var(--orange); cursor: pointer; transition: opacity .15s; }
.bracket:hover { opacity: .8; }
button, input { font-family: inherit; }
input:focus { outline: none; }

/* Joiner ticker shared */
.joiner-row { display: flex; align-items: center; gap: 8px; font-size: 12px; }
.joiner-av { width: 18px; height: 18px; border-radius: 4px; display: flex; align-items: center; justify-content: center; font-size: 9px; font-weight: 700; color: #fff; flex-shrink: 0; }
.joiner-name { color: var(--fg); font-weight: 500; }
.joiner-time { color: var(--fg-2); font-family: 'Geist Mono', monospace; font-size: 11px; }
