/**
 * VixShield Site Shell — dashboard-aligned global look
 * Injected on every HTML page via injectPhoenixBoot.
 * Matches public/dashboard.html :root tokens.
 * Last updated: 2026-08-05
 */

@import url('https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700;800&family=Space+Grotesk:wght@400;500;600;700;800&family=DM+Sans:wght@400;500;600;700&family=JetBrains+Mono:wght@400;500&display=swap');

:root {
  --green: #00C853;
  --green-dim: rgba(0, 200, 83, 0.13);
  --green-glow: rgba(0, 200, 83, 0.08);
  --red: #FF1744;
  --gold: #D4AF37;
  --gold-dim: rgba(212, 175, 55, 0.12);
  --bg: #0A1F3D;
  --bg-primary: #0A1F3D;
  --bg-card: #0F2744;
  --bg-raised: #162E50;
  --bg-elevated: #162E50;
  --bg-deep: #081629;
  --border: #1A3355;
  --border-green: rgba(0, 200, 83, 0.3);
  --text: #F0F4F8;
  --text-primary: #F0F4F8;
  --text-2: #94AAC0;
  --text-secondary: #94AAC0;
  --text-3: #4E6680;
  --text-dim: #4E6680;
  /* Legacy aliases used by older pages */
  --vx-bg: #0A0E17;
  --vx-surface: #0F2744;
  --vx-text: #F0F4F8;
  --vx-muted: #94AAC0;
  --vx-dim: #4E6680;
  --vx-border: #1A3355;
  --vx-green: #00C853;
}

html {
  background: var(--bg);
}

/* Force brand shell on all public/member pages (dashboard parity) */
body {
  font-family: 'DM Sans', system-ui, -apple-system, sans-serif !important;
  background: var(--bg) !important;
  color: var(--text) !important;
  min-height: 100vh;
}

h1, h2, h3, h4, h5, h6 {
  font-family: 'Inter', 'Space Grotesk', sans-serif !important;
  color: var(--text);
  letter-spacing: -0.3px;
}

a {
  color: var(--green);
}

/* Content shell helpers (optional classes pages can adopt) */
.vx-page-wrap {
  max-width: 1100px;
  margin: 0 auto;
  padding: 2rem 1.5rem 5rem;
}
.vx-card {
  background: var(--bg-card);
  border: 1px solid var(--border);
  border-radius: 16px;
  padding: 1.35rem 1.45rem;
  box-shadow: 0 4px 24px rgba(5, 12, 28, 0.25);
}
.vx-btn {
  display: inline-block;
  padding: 0.75rem 1.25rem;
  border-radius: 8px;
  background: var(--green);
  color: var(--bg) !important;
  font-weight: 700;
  font-size: 0.9rem;
  text-decoration: none !important;
  font-family: 'Space Grotesk', sans-serif;
  border: none;
  cursor: pointer;
}
.vx-btn:hover {
  background: #00E060;
}
.vx-btn-ghost {
  background: transparent;
  color: var(--text) !important;
  border: 1px solid var(--border);
}
.vx-btn-ghost:hover {
  border-color: rgba(0, 200, 83, 0.4);
  color: var(--green) !important;
  background: rgba(0, 200, 83, 0.06);
}
.vx-muted { color: var(--text-2); }
.vx-dim { color: var(--text-3); }
.vx-crumb { font-size: 0.8rem; color: var(--text-3); margin-bottom: 1.25rem; }
.vx-crumb a { color: var(--text-2); text-decoration: none; }
.vx-crumb a:hover { color: var(--green); }

/* Soft-normalize common off-brand pure blacks used on older pages */
body[style*="#0A0E17"],
body[style*="#0a0e17"] {
  background: var(--bg) !important;
}
