/* ==========================================================================
   ToolsRisePro Core — Design Tokens
   Loaded site-wide, before homepage.css. Single source of truth for the
   visual language (approved Design System v1). Prefixed --trp-* to avoid
   collisions with Astra / Elementor. Themes via [data-theme] + prefers-color.
   ========================================================================== */
:root {
  /* fonts */
  --trp-font-head: 'Poppins', system-ui, -apple-system, "Segoe UI", sans-serif;
  --trp-font-body: 'Inter', system-ui, -apple-system, "Segoe UI", sans-serif;
  --trp-font-mono: 'JetBrains Mono', ui-monospace, "SFMono-Regular", Menlo, monospace;

  /* brand ramps */
  --trp-primary-50:#eff5ff; --trp-primary-100:#dbe6ff; --trp-primary-300:#93b4fb;
  --trp-primary:#2563EB; --trp-primary-600:#1d4fd0; --trp-primary-700:#1740aa;
  --trp-purple-100:#ece2fd; --trp-purple:#7C3AED; --trp-purple-600:#6b2ed6;

  /* neutral ramp (cool bias) */
  --trp-n-0:#ffffff; --trp-n-25:#fbfcfe; --trp-n-50:#f6f8fc; --trp-n-100:#eef1f7;
  --trp-n-200:#e3e8f2; --trp-n-300:#cdd5e5; --trp-n-400:#9aa6be; --trp-n-500:#64708a;
  --trp-n-600:#48546b; --trp-n-700:#333d52; --trp-n-800:#1f273a; --trp-n-900:#111827;

  /* semantic */
  --trp-success:#0f9d63; --trp-success-bg:#e4f6ee;
  --trp-warning:#b9770c; --trp-warning-bg:#fbf1dc;
  --trp-error:#d64545;   --trp-error-bg:#fbe9e9;

  /* applied roles — LIGHT */
  --trp-bg:var(--trp-n-50); --trp-surface:var(--trp-n-0); --trp-surface-2:var(--trp-n-25);
  --trp-surface-3:var(--trp-n-100); --trp-border:var(--trp-n-200); --trp-border-2:var(--trp-n-300);
  --trp-ink:var(--trp-n-900); --trp-ink-2:var(--trp-n-700); --trp-muted:var(--trp-n-500);
  --trp-faint:var(--trp-n-400); --trp-accent:var(--trp-primary); --trp-accent-hov:var(--trp-primary-600);
  --trp-accent-soft:var(--trp-primary-100); --trp-on-accent:#ffffff;
  --trp-grad:linear-gradient(120deg, var(--trp-primary), var(--trp-purple));

  /* radius / elevation */
  --trp-r-sm:8px; --trp-r-md:12px; --trp-r-lg:16px; --trp-r-xl:22px; --trp-r-pill:999px;
  --trp-sh-xs:0 1px 2px rgba(17,24,39,.05);
  --trp-sh-sm:0 1px 3px rgba(17,24,39,.06),0 1px 2px rgba(17,24,39,.04);
  --trp-sh-md:0 4px 14px rgba(17,24,39,.07),0 2px 4px rgba(17,24,39,.04);
  --trp-sh-lg:0 12px 34px rgba(17,24,39,.10);
  --trp-sh-focus:0 0 0 3px var(--trp-accent-soft);

  /* spacing (4px base) */
  --trp-s1:4px; --trp-s2:8px; --trp-s3:12px; --trp-s4:16px; --trp-s5:24px;
  --trp-s6:32px; --trp-s7:48px; --trp-s8:64px; --trp-s9:96px;

  /* containers */
  --trp-w-wide:1280px; --trp-w-content:1160px; --trp-w-tool:880px; --trp-w-prose:720px;
}

/* DARK — system default (no explicit choice) */
:root:not([data-theme="light"]) {
  @media (prefers-color-scheme: dark) {
    --trp-bg:#0b0e15; --trp-surface:#141a26; --trp-surface-2:#10151f; --trp-surface-3:#1c2333;
    --trp-border:#242c3d; --trp-border-2:#333d52;
    --trp-ink:#eef1f7; --trp-ink-2:#c6cedd; --trp-muted:#96a1b6; --trp-faint:#6a7488;
    --trp-accent:#5b8dff; --trp-accent-hov:#7aa2ff; --trp-accent-soft:#1c2c4d; --trp-on-accent:#0b0e15;
    --trp-primary-100:#1c2c4d; --trp-purple-100:#2a2145;
    --trp-success:#3fca8c; --trp-success-bg:#14261e;
    --trp-warning:#e0a94b; --trp-warning-bg:#2b2413;
    --trp-error:#f0796f; --trp-error-bg:#2c1717;
    --trp-sh-xs:0 1px 2px rgba(0,0,0,.4); --trp-sh-sm:0 1px 3px rgba(0,0,0,.5);
    --trp-sh-md:0 4px 16px rgba(0,0,0,.5); --trp-sh-lg:0 16px 40px rgba(0,0,0,.55);
    --trp-sh-focus:0 0 0 3px rgba(91,141,255,.35);
    --trp-grad:linear-gradient(120deg,#3f6fe0,#8a5cf0);
  }
}
/* DARK — explicit toggle wins in both directions */
:root[data-theme="dark"] {
  --trp-bg:#0b0e15; --trp-surface:#141a26; --trp-surface-2:#10151f; --trp-surface-3:#1c2333;
  --trp-border:#242c3d; --trp-border-2:#333d52;
  --trp-ink:#eef1f7; --trp-ink-2:#c6cedd; --trp-muted:#96a1b6; --trp-faint:#6a7488;
  --trp-accent:#5b8dff; --trp-accent-hov:#7aa2ff; --trp-accent-soft:#1c2c4d; --trp-on-accent:#0b0e15;
  --trp-primary-100:#1c2c4d; --trp-purple-100:#2a2145;
  --trp-success:#3fca8c; --trp-success-bg:#14261e;
  --trp-warning:#e0a94b; --trp-warning-bg:#2b2413;
  --trp-error:#f0796f; --trp-error-bg:#2c1717;
  --trp-sh-xs:0 1px 2px rgba(0,0,0,.4); --trp-sh-sm:0 1px 3px rgba(0,0,0,.5);
  --trp-sh-md:0 4px 16px rgba(0,0,0,.5); --trp-sh-lg:0 16px 40px rgba(0,0,0,.55);
  --trp-sh-focus:0 0 0 3px rgba(91,141,255,.35);
  --trp-grad:linear-gradient(120deg,#3f6fe0,#8a5cf0);
}
