/* ──────────────────────────────────────────────────────────────────────────
   btb-v7.css — "Midnight Refined" v7 design system (BillTaylorBass.com)
   2026-06-10 · Direction A. Evolves the beta dark look: calmer ink canvas,
   one confident blue accent (glow dialed back), Space Grotesk display type,
   flat bordered surfaces. Pages opt in with <body class="v7">. Component
   classes are prefixed v7- so they don't collide with legacy page styles.
   ────────────────────────────────────────────────────────────────────────── */

:root {
  --v7-bg:        #0b0f16;   /* deep ink canvas */
  --v7-bg-2:      #0e1420;
  --v7-surface:   #121a26;   /* cards */
  --v7-surface-2: #0f1722;
  --v7-border:    rgba(255,255,255,.09);
  --v7-border-2:  rgba(255,255,255,.16);
  --v7-text:      #e9eef7;
  --v7-muted:     #9fb0cc;
  --v7-dim:       #6f7f99;
  --v7-accent:    #3b82f6;   /* one confident blue — actions */
  --v7-accent-2:  #6aa3ff;   /* links / eyebrows */
  --v7-gold:      #ffd86b;   /* reserved highlight (Hall of Fame, featured) */
  --v7-radius:    14px;
  --v7-radius-lg: 18px;
  --v7-display:   'Space Grotesk', system-ui, -apple-system, Segoe UI, Roboto, Helvetica, Arial, sans-serif;
  --v7-sans:      system-ui, -apple-system, Segoe UI, Roboto, Helvetica, Arial, sans-serif;
}

body.v7 {
  margin: 0;
  font-family: var(--v7-sans);
  color: var(--v7-text);
  background:
    radial-gradient(900px 520px at 12% -10%, rgba(59,130,246,.10), transparent 60%),
    linear-gradient(180deg, var(--v7-bg), var(--v7-bg-2));
  min-height: 100vh;
  -webkit-font-smoothing: antialiased;
}
body.v7 a { color: var(--v7-accent-2); text-decoration: none; }
body.v7 a:hover { color: #fff; }

.v7-wrap { max-width: 1200px; margin: 0 auto; padding: 28px 22px 80px; }

.v7-eyebrow { font-family: var(--v7-display); font-size: 11px; font-weight: 700; letter-spacing: .22em; text-transform: uppercase; color: var(--v7-accent-2); margin: 4px 0 10px; }
.v7-title { font-family: var(--v7-display); font-size: clamp(28px,4vw,46px); font-weight: 700; letter-spacing: -.02em; line-height: 1.04; margin: 0 0 12px; }
.v7-sub { color: var(--v7-muted); font-size: 15px; line-height: 1.62; max-width: 66ch; margin: 0 0 8px; }
.v7-h2 { font-family: var(--v7-display); font-size: 13px; font-weight: 700; letter-spacing: .15em; text-transform: uppercase; color: rgba(255,255,255,.70); margin: 40px 0 6px; }

/* stat chips */
.v7-stats { display: flex; flex-wrap: wrap; gap: 12px; margin: 22px 0 8px; }
.v7-stat { border: 1px solid var(--v7-border); background: rgba(255,255,255,.03); border-radius: var(--v7-radius); padding: 12px 18px; min-width: 96px; }
.v7-stat-val { font-family: var(--v7-display); font-size: 23px; font-weight: 700; line-height: 1.1; }
.v7-stat-lab { font-size: 10.5px; font-weight: 700; letter-spacing: .06em; text-transform: uppercase; color: var(--v7-dim); margin-top: 4px; }

/* surfaces */
.v7-card { border: 1px solid var(--v7-border); background: var(--v7-surface); border-radius: var(--v7-radius-lg); padding: 16px 18px; transition: border-color .14s, transform .14s; }
a.v7-card:hover, .v7-card.is-link:hover { border-color: rgba(59,130,246,.5); transform: translateY(-2px); }

/* buttons / pills */
.v7-btn { display: inline-block; font-family: var(--v7-display); font-size: 13px; font-weight: 700; border-radius: 999px; padding: 9px 18px; cursor: pointer; border: 0; background: var(--v7-accent); color: #fff; }
.v7-btn:hover { background: #5a98ff; color: #fff; }
.v7-btn--ghost { background: transparent; color: var(--v7-text); border: 1px solid var(--v7-border-2); }
.v7-pill { font-size: 12.5px; font-weight: 600; color: #cdd8ef; background: rgba(255,255,255,.05); border: 1px solid var(--v7-border); border-radius: 999px; padding: 6px 13px; }
.v7-pill.on { color: #0a1320; background: var(--v7-accent); border-color: var(--v7-accent); }

/* beta banner + footer (shared chrome) */
.v7-banner { background: #14202e; color: var(--v7-accent-2); padding: 8px 16px; text-align: center; font-size: 12px; border-bottom: 1px solid #223247; }
.v7-banner a { color: var(--v7-accent-2); }
.v7-footer { color: var(--v7-dim); font-size: 12px; margin-top: 44px; text-align: center; }
.v7-error { display: none; background: rgba(248,113,113,.10); border: 1px solid rgba(248,113,113,.35); color: #fca5a5; padding: 12px 16px; border-radius: 12px; margin: 12px 0 18px; font-size: 14px; }
