/* ============================================================================
   PeakScale Ops — brand tokens. SINGLE SOURCE OF TRUTH.

   Authored at  src/styles/brand-tokens.css
   Published at /brand.css  (copied by the prebuild step in package.json)

   Everything loads this one file: the Astro site imports it, and the generated
   checklist pages and runner apps link /brand.css. Do not redeclare a colour
   anywhere else. Raw hex outside this file fails `npm run check:tokens`.

   Values follow peakscale_mock-v6.html. The orange follows the approved logo
   assets in Marketing/assets/logos - marks (every SVG and PNG is #C24F1F).

   Offline exception: the single-file download packs cannot link a stylesheet,
   so the build inlines this same block into them.
   ========================================================================= */

/* ---- typeface: self-hosted. Never load fonts from a third party: the site's
   own CSP blocks it, it leaks visitors, and it breaks the offline promise. -- */
@font-face{font-family:'Inter Tight';font-style:normal;font-weight:400;font-display:swap;src:url('/fonts/inter-tight-latin-400-normal.woff2') format('woff2')}
@font-face{font-family:'Inter Tight';font-style:normal;font-weight:500;font-display:swap;src:url('/fonts/inter-tight-latin-500-normal.woff2') format('woff2')}
@font-face{font-family:'Inter Tight';font-style:normal;font-weight:600;font-display:swap;src:url('/fonts/inter-tight-latin-600-normal.woff2') format('woff2')}
@font-face{font-family:'Inter Tight';font-style:normal;font-weight:700;font-display:swap;src:url('/fonts/inter-tight-latin-700-normal.woff2') format('woff2')}
@font-face{font-family:'Inter Tight';font-style:normal;font-weight:800;font-display:swap;src:url('/fonts/inter-tight-latin-800-normal.woff2') format('woff2')}
@font-face{font-family:'JetBrains Mono';font-style:normal;font-weight:400;font-display:swap;src:url('/fonts/jetbrains-mono-latin-400-normal.woff2') format('woff2')}
@font-face{font-family:'JetBrains Mono';font-style:normal;font-weight:500;font-display:swap;src:url('/fonts/jetbrains-mono-latin-500-normal.woff2') format('woff2')}
@font-face{font-family:'JetBrains Mono';font-style:normal;font-weight:600;font-display:swap;src:url('/fonts/jetbrains-mono-latin-600-normal.woff2') format('woff2')}
@font-face{font-family:'Space Grotesk';font-style:normal;font-weight:500;font-display:swap;src:url('/fonts/space-grotesk-latin-500-normal.woff2') format('woff2')}

:root{
  /* ---- surfaces ---- */
  --cream:#F4F1EA;          /* page background */
  --white:#FCFBF8;          /* raised card */
  --cream2:#EFEBE1;         /* alternating band */
  --sunken:#EDE9DF;         /* inset panel */

  /* ---- brand ---- */
  --brick:#C24F1F;          /* approved brand orange — matches every logo asset */
  --brick-deep:#A8431A;     /* hover / pressed */

  /* ---- accents ---- */
  --green:#3F5742;          /* actually green. Do not use it for the orange. */
  --green2:#4A6B4E;
  --clay:#9C6A4F;
  --pine:#2C3E30;           /* Pillars row 4 (.pl-pine) */
  --pine-2:#23302E;         /* dark product mock ground */

  /* ---- text ---- */
  --ink:#1C1A17;
  --body:#5A554C;
  --muted:#8A8478;

  /* ---- lines ---- */
  --line:#E2DCCF;
  --line-soft:#ECE7DC;

  /* ---- widths: one scale, chosen by job ---- */
  --w-page:1200px;          /* marketing pages */
  --w-read:920px;           /* long-form reading: checklist and compliance pages */
  --w-app:680px;            /* phone app */

  /* ---- geometry ---- */
  --radius:16px;
  --radius-sm:10px;
  --radius-lg:22px;

  /* ---- type ---- */
  --font-sans:'Inter Tight',-apple-system,'Segoe UI',Helvetica,Arial,sans-serif;
  --font-mono:'JetBrains Mono',ui-monospace,Menlo,monospace;
  --font-brand:'Space Grotesk',system-ui,-apple-system,sans-serif;  /* wordmark only */

  /* ---- v6.5 home: signal tints (miss / pass chips + severity dots) ---- */
  --miss-tint:#F6E4DC;       /* alarm chip / hot sensor cell background */
  --miss-line:#E0B4A0;       /* its border */
  --pass-tint:#E4ECE4;       /* verified / pass chip background */
  --pass-line:#B9CDBA;       /* its border */
  --dot-warn:#B8893C;        /* severity dot — warning (gold) */
  --dot-info:#5E748C;        /* severity dot — info (slate) */

  /* ---- v6.5 home: text & accents on the dark pine bands ---- */
  --on-pine:#E6EAE4;         /* primary light text on --pine */
  --on-pine-soft:#EDE9DF;    /* softer light text (closer line, chat bubble) */
  --on-pine-body:#C9D2C9;    /* body copy on pine */
  --on-pine-muted:#A9B8AA;   /* muted subhead / meta on pine */
  --on-pine-dim:#9DA99E;     /* dimmest meta / fineprint on pine */
  --on-pine-peach:#E8B9A8;   /* peach accent on pine (index, accent, glyph) */
  --on-pine-cap:#B9C0B2;     /* chat caption label on --pine-2 */
  --on-pine-cap-dim:#7E8B7E; /* chat caption dim on --pine-2 */
  --pine-line:#41513F;       /* hairline / border on --pine-2 */
  --pure-white:#FFFFFF;      /* pure white — headings / button text on saturated fills */

  /* ==== legacy names, kept so existing markup keeps working ================
     These are ALIASES, not new values. Use the canonical names above in any
     new code. Nothing here may hold its own colour. ---------------------- */
  --brandPrimary:var(--brick);
  --brandPrimarySoft:#D97757;
  --brandPrimaryTint:#F5DDC8;
  --surfacePage:var(--cream);
  --surfacePageSoft:var(--white);
  --surfaceRaised:var(--white);
  --surfaceSunken:var(--sunken);
  --textPrimary:var(--ink);
  --textSecondary:var(--body);
  --textTertiary:var(--muted);
  --textInverse:var(--cream);
  --lineHairline:var(--line);
  --lineDefault:#C8BFA7;
  --lineStrong:#9C927B;
  --accentForest:var(--green);
  --accentBlue:#5B7BA8;
  --accentPurple:#9C6BD9;
  --statusInfo:#0B56B6;
  --statusWarn:#A37514;
  --darkGreenDeep:#13301D;
  --darkGreenMid:#1A3320;
  --darkGreenSoft:#2D5538;
  --radius-md:14px;
  --radius-xl:28px;
  --bg:var(--cream);
  --surface:var(--white);
  --surface-soft:var(--white);
  --line:var(--line);
  --teal:var(--brick);
  --teal-deep:var(--brick-deep);
  --rust:var(--brick);
  --slate:#5B7BA8;
  --indigo:#9C6BD9;
  --shadow-soft:0 10px 24px -20px rgba(28,26,23,.4),0 4px 10px rgba(28,26,23,.06);
  --shadow-panel:0 26px 42px -34px rgba(28,26,23,.42);
  --amber:var(--clay);          /* runner apps use this name */
  --shadow:0 0 0 1px var(--line);
}
