/* ===========================================================================
   GENERATED FILE — DO NOT EDIT BY HAND
   Source : client-ops/system/brand.css
   Command: node scripts/sync-brand.js --site sovereignminds
   Site   : Sovereign-Minds (hub)   accent = var(--sm-blue)

   Edit the source and re-run the script. A hand edit here will be silently
   overwritten on the next sync and will put this site out of step with the
   rest of the estate.
   =========================================================================== */

/* =============================================================================
   SOVEREIGN-MINDS — BRAND CORE
   The portable half of the design system: typefaces, the raw palette, and the
   dimensional scales. Everything here is true of every Sovereign-Minds
   property — the public sites and the client operations documents alike.

   WHAT LIVES HERE          raw values that never change between contexts
   WHAT DOES NOT            semantic mapping (--ink, --surface, --accent),
                            because a document, a dark marketing site and a
                            print stylesheet map these constants differently

   Consumed by:
     · system/tokens.css        documents — imports this, adds semantics + themes
     · <site>/css/brand.css     public sites — copied by scripts/sync-brand.js

   Sites cannot link this file across origins: every property sets a CSP of
   `style-src 'self'`, which blocks cross-origin stylesheets outright. So each
   site carries a generated copy, and sync-brand.js is what keeps those copies
   provably identical. Do not hand-edit a generated copy.
   ============================================================================= */

/* --- Typefaces. Self-hosted everywhere; `font-src 'self'` forbids remotes. -- */
@font-face{font-family:'Unbounded';font-style:normal;font-weight:400;font-display:swap;src:url('../fonts/unbounded-latin-400-normal.woff2') format('woff2')}
@font-face{font-family:'Unbounded';font-style:normal;font-weight:600;font-display:swap;src:url('../fonts/unbounded-latin-600-normal.woff2') format('woff2')}
@font-face{font-family:'Unbounded';font-style:normal;font-weight:800;font-display:swap;src:url('../fonts/unbounded-latin-800-normal.woff2') format('woff2')}
@font-face{font-family:'Outfit';font-style:normal;font-weight:300;font-display:swap;src:url('../fonts/outfit-latin-300-normal.woff2') format('woff2')}
@font-face{font-family:'Outfit';font-style:normal;font-weight:400;font-display:swap;src:url('../fonts/outfit-latin-400-normal.woff2') format('woff2')}
@font-face{font-family:'Outfit';font-style:normal;font-weight:500;font-display:swap;src:url('../fonts/outfit-latin-500-normal.woff2') format('woff2')}
@font-face{font-family:'Outfit';font-style:normal;font-weight:600;font-display:swap;src:url('../fonts/outfit-latin-600-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:700;font-display:swap;src:url('../fonts/jetbrains-mono-latin-700-normal.woff2') format('woff2')}

:root{

  /* --- Neutral ramp — the Sovereign-Minds "cool graphite" ----------------- */
  --sm-black:      #04070D;
  --sm-void:       #060A12;   /* canonical page background */
  --sm-panel-2:    #0A0F1A;
  --sm-panel:      #0C1320;
  --sm-panel-3:    #111A2B;
  --sm-edge:       #1A2536;
  --sm-edge-hi:    #263349;
  --sm-slate:      #8494AB;
  --sm-mist:       #B9C6D6;
  --sm-paper:      #EAF2F9;
  --sm-white:      #FFFFFF;

  /* --- Signal ramp — the green ground ------------------------------------
     Mercury's ground. Worth knowing before you use it: these values sit only
     a few units from the cool ramp (#060A0B against #060A12 differs in the
     blue channel alone, by 7/255) and the difference is close to invisible at
     the page level. The tint is real at the edge and in the text, where it
     reads green rather than blue. It is kept because collapsing it would be a
     change to a live property made for tidiness rather than for a reason.

     Three grounds is the current ceiling. A fourth would mean the pattern has
     stopped being a system and started being per-site licence.               */
  --sm-signal-void:  #060A0B;
  --sm-signal-panel: #0B1210;
  --sm-signal-edge:  #16241E;
  --sm-signal-paper: #DEE8E2;
  --sm-signal-slate: #74887E;
  --sm-signal-deep:  #1E8A61;
  --sm-signal-hi:    #7BF0C4;

  /* --- Forge ramp — the warm ground -------------------------------------
     Vulcan does not sit on the cool graphite. Its warm ground is a deliberate
     identity, not drift, so it is promoted into the system rather than erased:
     one source of truth, two documented grounds. A property picks a ramp; the
     accent then carries the agent. Nothing else in the system branches.       */
  --sm-forge-void:  #07070B;
  --sm-forge-panel: #100D0C;
  --sm-forge-edge:  #251C15;
  --sm-forge-paper: #E8E2DA;
  --sm-forge-slate: #9E9186;

  /* --- Light neutrals — the printed counterpart of the ramp above --------- */
  --sm-parchment:  #FBFCFD;
  --sm-parchment-2:#F3F6F9;
  --sm-parchment-3:#E8EDF3;
  --sm-rule:       #D6DEE8;
  --sm-rule-strong:#B4C0CE;
  --sm-graphite:   #5A6779;
  --sm-ink:        #0B1220;

  /* --- Signal hues. One per agent, plus semantic status. ------------------
     Agent hues are canonical here and on the hub's agent map. Where a
     satellite site disagreed, the hub won — see scripts/sync-brand.js. */
  --sm-blue:       #55A4D6;   /* Sovereign-Minds — the house accent */
  --sm-blue-deep:  #2E6C96;
  --sm-blue-lift:  #7BBCE4;
  --sm-teal:       #4DD4CE;   /* Aion   */
  --sm-fire:       #F0865A;   /* Vulcan */
  --sm-ember:      #D2662B;   /* Vulcan, deep  */
  --sm-hot:        #FFB37E;   /* Vulcan, lift  */
  --sm-teal-deep:  #2E8F8B;   /* Aion,   deep  */
  --sm-violet:     #8F7CF0;   /* Augur  */
  --sm-green:      #3ED598;   /* healthy / delivered */
  --sm-amber:      #F0B45A;   /* attention / pending */
  --sm-red:        #FF5D5D;   /* blocked / breach    */

  /* Print-safe variants. Screen hues are tuned for luminous dark panels and
     wash out on paper; same hues darkened for white stock. */
  --sm-blue-print:   #1C5F8C;
  --sm-green-print:  #147A52;
  --sm-amber-print:  #8A5A0B;
  --sm-red-print:    #A81F1F;
  --sm-violet-print: #4B3B9E;

  /* --- Typefaces ---------------------------------------------------------- */
  --sm-font-display: 'Unbounded','Outfit',system-ui,sans-serif;
  --sm-font-sans:    'Outfit',-apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif;
  --sm-font-mono:    'JetBrains Mono',ui-monospace,Menlo,Consolas,monospace;

  /* Legacy aliases. The public sites shipped with these names; keeping them
     lets a site migrate without a find-and-replace across every rule. */
  --disp: var(--sm-font-display);
  --sans: var(--sm-font-sans);
  --mono: var(--sm-font-mono);

  /* --- Spacing — 4px base ------------------------------------------------- */
  --s-0:0;      --s-1:4px;   --s-2:8px;   --s-3:12px;  --s-4:16px;
  --s-5:20px;   --s-6:24px;  --s-7:32px;  --s-8:40px;  --s-9:48px;
  --s-10:64px;  --s-11:80px; --s-12:96px; --s-13:128px;

  /* --- Tracking. Wide mono tracking is the system's strongest signature. --- */
  --track-mono:  .18em;
  --track-label: .09em;
  --track-tight: -.02em;

  /* --- Line heights ------------------------------------------------------- */
  --lh-tight: 1.15;
  --lh-snug:  1.35;
  --lh-body:  1.62;
  --lh-loose: 1.75;

  /* --- Geometry. The system is sharp-edged: radius is 0 almost everywhere. - */
  --r-0:0; --r-1:2px;
  --hair:1px;

  /* --- Motion ------------------------------------------------------------- */
  --motion-fast: .14s ease;
  --motion:      .22s cubic-bezier(.4,0,.2,1);
}
