/* ==========================================================================
   ForgedLink Design Tokens — Single Source of Truth
   All pages load this file. Canonical names from style-enhanced.css plus
   shorthand aliases used by standalone pages (home, HIW, RFQ, declare).
   ========================================================================== */

:root {
    /* ── Brand ── */
    --primary-yellow:       #f0ff00;
    --primary-yellow-dim:   #d4e000;
    --primary-black:        #0b1a33;

    /* ── Navy scale ── */
    --color-navy-900:       #060e1c;
    --color-navy-800:       #0b1a33;
    --color-navy-700:       #162d50;
    --color-navy-600:       #1e3d68;
    --color-navy-50:        #f0f3f7;

    /* ── Semantic ── */
    --color-primary:        #0b1a33;
    --color-primary-dark:   #060e1c;
    --color-primary-light:  #162d50;
    --color-primary-lightest: #f0f3f7;
    --color-success:        #059669;
    --color-warning:        #d97706;
    --color-error:          #dc2626;

    /* ── Text ── */
    --color-text-primary:   #0b1a33;
    --color-text-secondary: #3a4a5c;
    --color-text-tertiary:  #7a8fa8;
    --color-text-inverse:   #ffffff;
    --color-text-muted:     #7a8fa8;

    /* ── Backgrounds ── */
    --color-background:           #ffffff;
    --color-background-secondary: #f7f8fa;
    --color-background-tertiary:  #eef0f3;

    /* ── Borders ── */
    --color-border:         #e4e8ed;
    --color-border-hover:   #c4cad3;
    --color-border-yellow:  rgba(240, 255, 0, 0.18);
    --color-border-navy:    rgba(11, 26, 51, 0.12);

    /* ── Gradients ── */
    --gradient-primary:     linear-gradient(135deg, #0b1a33 0%, #162d50 100%);
    --gradient-dark:        linear-gradient(135deg, #060e1c 0%, #0b1a33 100%);
    --gradient-success:     linear-gradient(135deg, #059669 0%, #10b981 100%);

    /* ── Shadows ── */
    --shadow-sm:            0 1px 4px rgba(11,26,51,0.06);
    --shadow-md:            0 2px 8px rgba(11,26,51,0.08);
    --shadow-lg:            0 4px 16px rgba(11,26,51,0.10);
    --shadow-xl:            0 8px 32px rgba(11,26,51,0.12);

    /* ── Typography ── */
    --font-display: 'Barlow Condensed', 'Arial Narrow', sans-serif;
    --font-sans:    'Barlow', -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif;
    --font-mono:    'IBM Plex Mono', 'SF Mono', 'Cascadia Code', Consolas, monospace;

    /* ── Spacing ── */
    --space-1: 0.25rem;  --space-2: 0.5rem;   --space-3: 0.75rem;
    --space-4: 1rem;     --space-5: 1.25rem;  --space-6: 1.5rem;
    --space-8: 2rem;     --space-10: 2.5rem;  --space-12: 3rem;
    --space-16: 4rem;    --space-20: 5rem;

    /* ── Border Radius ── */
    --radius-sm:   2px;
    --radius-md:   3px;
    --radius-lg:   4px;
    --radius-xl:   6px;
    --radius-2xl:  8px;
    --radius-full: 9999px;

    /* ── Transitions ── */
    --transition-fast:   150ms ease;
    --transition-base:   220ms ease;
    --transition-slow:   350ms ease;
    --transition-bounce: 450ms cubic-bezier(0.34, 1.56, 0.64, 1);

    /* ══════════════════════════════════════════════════════════════════
       Shorthand aliases — used by standalone pages (home, HIW, RFQ, declare)
       These resolve to canonical tokens so we have ONE definition.
       ══════════════════════════════════════════════════════════════════ */
    --navy:       var(--color-navy-800);
    --navy-mid:   var(--color-navy-700);
    --navy-light: var(--color-navy-600);
    --navy2:      #0e2040;
    --yellow:     var(--primary-yellow);
    --yellow-dim: var(--primary-yellow-dim);
    --mid:        #5a6a7e;
    --bg:         #f8f9fb;
    --green:      #16a34a;
    --amber:      #d97706;
    --white:      #f4f5f0;
    --muted:      #8a9ab0;
    --muted-dim:  #5a6a7e;
    --surface:    rgba(22,45,80,0.4);

    /* Font aliases */
    --fd: var(--font-display);
    --fb: var(--font-sans);
    --fm: var(--font-mono);
    --font-body: var(--font-sans);

    /* Misc aliases */
    --ease:       cubic-bezier(.4,0,.2,1);
    --border:     var(--color-border);
    --border-y:   var(--color-border-yellow);
    --border-dim: rgba(255,255,255,0.08);
}
