/** Sistema visual JF Host — baseado na identidade Jackson Felipe. */
:root {
  color-scheme: light;
  --jf-ink: #ffffff;
  --jf-ink-soft: #f5f5f3;
  --jf-surface: #ffffff;
  --jf-surface-raised: #fafafa;
  --jf-border: rgba(0, 0, 0, .12);
  --jf-text: #000000;
  --jf-muted: #5a5a5a;
  --jf-cyan: #ffb900;
  --jf-cyan-bright: #000000;
  --jf-copper: #ffb900;
  --jf-success: #28744a;
  --jf-warning: #9c7000;
  --jf-danger: #b52525;
  --jf-shadow: 0 18px 42px rgba(0, 0, 0, .09);
  --bg: var(--jf-ink);
  --bg-muted: var(--jf-ink-soft);
  --surface: var(--jf-surface);
  --surface-strong: var(--jf-surface-raised);
  --border: var(--jf-border);
  --text: var(--jf-text);
  --text-muted: var(--jf-muted);
  --accent: var(--jf-cyan);
  --accent-glow: var(--jf-cyan);
  --accent-secondary: var(--jf-copper);
  --success: var(--jf-success);
  --premium-bg: var(--jf-ink);
  --premium-bg-soft: var(--jf-ink-soft);
  --premium-surface: var(--jf-surface);
  --premium-surface-strong: var(--jf-surface-raised);
  --premium-border: var(--jf-border);
  --premium-border-gold: rgba(255, 185, 0, .45);
  --premium-text: var(--jf-text);
  --premium-muted: var(--jf-muted);
  --premium-gold: #ffb900;
  --premium-gold-light: #000000;
  --premium-orange: #d99d00;
  --premium-green: var(--jf-success);
  --premium-shadow: var(--jf-shadow);
  --jf-infra: #ffb900;
  --jf-infra-muted: rgba(255, 185, 0, .14);
  --gradient-gold: linear-gradient(120deg, #ffb900 0%, #ffd45e 100%);
  --gradient-hero-overlay: linear-gradient(100deg, rgba(255,255,255,.97), rgba(255,255,255,.82) 55%, rgba(255,255,255,.35));
  --font: "DM Sans", "Segoe UI", system-ui, sans-serif;
  --font-display: "Manrope", "DM Sans", system-ui, sans-serif;
  --mono: "IBM Plex Mono", Consolas, monospace;
  --radius: 10px;
  --radius-md: 16px;
  --radius-lg: 24px;
  --container: 1160px;
}
html { color-scheme: light; }
a, .section-header a, .doc-list a { color: #000; }
a:hover { color: #6b5000; }
:focus-visible { outline: 3px solid #ffb900; outline-offset: 3px; }
.ecosystem-bar { display: none; }
.brand-tagline { color: #000; }
