/* =========================================================================
   FIRMEZA "LEDGER" TOKENS
   Source of truth: the Developer handoff board. Loads after custom.css.

   1. Handoff tokens        — the names used in the design files
   2. Legacy alias layer    — the older --fz-* names re-pointed at the new
                              values, so pages not yet converted follow the
                              redesign without edits
   3. Bootstrap bridge      — Bootstrap's own variables follow the tokens
   ========================================================================= */

/* 1. Handoff tokens ----------------------------------------------------- */
:root {
    --navy-900: #101B33;  --navy-800: #16264A;
    --navy-700: #23396B;  --navy-100: #E8ECF5;
    --amber-500: #E9A23B; --amber-700: #9A5B00;
    --amber-50: #FDF4E3;

    --ink: #101828;       --ink-2: #344054;
    --slate: #475467;     --muted: #5F6B7E;
    --line-strong: #D0D5DD;
    --line: #E4E7EC;      --line-soft: #F0F2F5;
    --ground: #F6F7F9;
    --surface: #FFFFFF;   --header-row: #F9FAFB;

    --success: #067647;   --success-bg: #ECFDF3;  --success-dot: #17B26A;
    --warning: #93370D;   --warning-bg: #FFFAEB;  --warning-dot: #DC6803;
    --danger:  #B42318;   --danger-bg:  #FEF3F2;  --danger-dot:  #F04438;
    --info:    #175CD3;   --info-bg:    #EFF8FF;  --info-dot:    #2E90FA;
    --neutral: #475467;   --neutral-bg: #F2F4F7;  --neutral-dot: #98A2B3;

    --font: "Plus Jakarta Sans", system-ui, sans-serif;
    --mono: "JetBrains Mono", monospace;
    --radius-sm: 6px;  --radius-md: 12px;  --radius-pill: 999px;
    --shadow-overlay: 0 12px 32px rgba(16, 24, 40, .12);
    --focus-ring: 0 0 0 3px rgba(22, 38, 74, .28);
    --focus-ring-danger: 0 0 0 3px #FEE4E2;

    --control-h: 40px;  --control-h-sm: 32px;  --control-h-phone: 48px;
}

/* 2. Legacy alias layer ------------------------------------------------- */
:root {
    --fz-font: var(--font);
    --bs-font-sans-serif: var(--font);
    --bs-body-font-family: var(--font);

    --fz-navy: var(--navy-800);
    --fz-primary: var(--navy-800);
    --fz-primary-dark: var(--navy-900);
    --fz-gold: var(--amber-500);
    --fz-gold-dark: var(--amber-700);
    --fz-gold-soft: var(--amber-50);
    --fz-accent: var(--navy-800);
    --fz-accent-soft: var(--navy-100);

    --fz-ink: var(--ink);
    --fz-ink-body: var(--ink-2);
    --fz-ink-muted: var(--muted);
    --fz-ink-subtle: #667085;      /* placeholders: 4.8:1 on white */
    --fz-ink-inverse: #FFFFFF;

    --fz-bg: var(--ground);
    --fz-surface: var(--surface);
    --fz-surface-alt: var(--header-row);
    --fz-border: var(--line);
    --fz-border-strong: var(--line-strong);
    --fz-hover: rgba(16, 24, 40, .04);

    --fz-success: var(--success);  --fz-success-soft: var(--success-bg);
    --fz-warning: var(--warning);  --fz-warning-soft: var(--warning-bg);
    --fz-danger:  var(--danger);   --fz-danger-soft:  var(--danger-bg);
    --fz-info:    var(--info);     --fz-info-soft:    var(--info-bg);
    --fz-neutral: var(--neutral);  --fz-neutral-soft: var(--neutral-bg);

    --fz-radius-xs: 6px;
    --fz-radius-sm: 6px;
    --fz-radius-md: 6px;
    --fz-radius-lg: 12px;
    --fz-radius-xl: 12px;
    --fz-radius-pill: 999px;
    --fz-radius: 12px;

    /* Type: 14px body, 24px page title, 28px key figures */
    --fz-text-xl: 1.5rem;
    --fz-text-2xl: 1.75rem;

    /* Flat surfaces: cards and tables carry a border, not a shadow.
       Only overlays (menus, dialogs, toasts) are raised. */
    --fz-shadow-xs: none;
    --fz-shadow-sm: none;
    --fz-shadow-md: none;
    --fz-shadow-lg: var(--shadow-overlay);

    --fz-control-height: var(--control-h);
    --fz-control-height-sm: var(--control-h-sm);
}

/* 3. Bootstrap bridge --------------------------------------------------- */
:root {
    --bs-primary: var(--navy-800);
    --bs-primary-rgb: 22, 38, 74;
    --bs-link-color: var(--navy-800);
    --bs-link-color-rgb: 22, 38, 74;
    --bs-link-hover-color: var(--navy-700);
    --bs-success: var(--success);
    --bs-danger: var(--danger);
    --bs-warning: var(--warning);
    --bs-info: var(--info);
    --bs-body-color: var(--ink);
    --bs-border-radius: 6px;
    --bs-border-radius-sm: 6px;
    --bs-border-radius-lg: 12px;
    --bs-border-radius-xl: 12px;
    --bs-border-radius-xxl: 12px;
}
