/* ─── Brand Layer ──────────────────────────────────────────────────────
   This file is the SINGLE place to rebrand the entire product.
   Change `--brand-primary-h` (hue) / `--brand-primary-c` (chroma) — that's it.
   The light / hover / soft / ink ramps below are derived from those two
   numbers in OKLCH, so the whole app re-tints in one step.
   See Docs/UI_Modernization_Plan.md §2.
   ──────────────────────────────────────────────────────────────────────── */
:root {
    /* === BRAND INPUTS === change these to rebrand the entire product ===
       Primary = BizGo emerald (#19C88F ≈ oklch H164), secondary = BizGo teal
       (#0AA3C4 ≈ oklch H219) — the two endpoints of the brand accent gradient
       used by the logo (see Shared/BizGoLogo.razor + Claude Design handoff). */
    --brand-primary-h: 165;
    --brand-primary-c: 0.13;
    --brand-secondary-h: 219;
    --brand-secondary-c: 0.10;
    --brand-tertiary-h: 280;
    --brand-tertiary-c: 0.08;

    /* === Derived ramps (DO NOT edit — derived from brand inputs above) === */
    --primary:        oklch(0.58 var(--brand-primary-c) var(--brand-primary-h));
    --primary-hover:  oklch(0.52 var(--brand-primary-c) var(--brand-primary-h));
    --primary-soft:   oklch(0.95 0.03 var(--brand-primary-h));
    --primary-ink:    oklch(0.42 var(--brand-primary-c) var(--brand-primary-h));
    --primary-on:     #ffffff; /* text colour on primary backgrounds */

    /* Theme-stable brand solids for FILLED surfaces (buttons, FAB, chat
       bubbles, pagination). Held at L0.58 / hover L0.52 in BOTH themes — they
       are deliberately NOT re-defined in the dark block below, so white text
       stays legible on the brighter dark-mode --primary (L0.72). Still fully
       token-driven: they re-tint with the brand hue/chroma inputs above and the
       live BrandTuner. The emerald→teal gradient (--primary-solid →
       --secondary-solid) is the marquee CTA fill. */
    --primary-solid:          oklch(0.58 var(--brand-primary-c) var(--brand-primary-h));
    --primary-solid-hover:    oklch(0.52 var(--brand-primary-c) var(--brand-primary-h));
    --secondary-solid:        oklch(0.58 var(--brand-secondary-c) var(--brand-secondary-h));
    --secondary-solid-hover:  oklch(0.52 var(--brand-secondary-c) var(--brand-secondary-h));

    --secondary:        oklch(0.58 var(--brand-secondary-c) var(--brand-secondary-h));
    --secondary-hover:  oklch(0.52 var(--brand-secondary-c) var(--brand-secondary-h));
    --secondary-soft:   oklch(0.95 0.03 var(--brand-secondary-h));
    --secondary-ink:    oklch(0.42 var(--brand-secondary-c) var(--brand-secondary-h));
    --secondary-on:     #ffffff;

    --tertiary:         oklch(0.60 var(--brand-tertiary-c) var(--brand-tertiary-h));
    --tertiary-hover:   oklch(0.54 var(--brand-tertiary-c) var(--brand-tertiary-h));
    --tertiary-soft:    oklch(0.95 0.03 var(--brand-tertiary-h));
    --tertiary-ink:     oklch(0.42 var(--brand-tertiary-c) var(--brand-tertiary-h));
    --tertiary-on:      #ffffff;
}

[data-theme="dark"] {
    --primary:        oklch(0.72 0.13 var(--brand-primary-h));
    --primary-hover:  oklch(0.78 0.13 var(--brand-primary-h));
    --primary-soft:   oklch(0.30 0.05 var(--brand-primary-h));
    --primary-ink:    oklch(0.85 0.10 var(--brand-primary-h));

    --secondary:        oklch(0.72 0.12 var(--brand-secondary-h));
    --secondary-hover:  oklch(0.78 0.12 var(--brand-secondary-h));
    --secondary-soft:   oklch(0.30 0.05 var(--brand-secondary-h));
    --secondary-ink:    oklch(0.85 0.10 var(--brand-secondary-h));

    --tertiary:         oklch(0.74 0.11 var(--brand-tertiary-h));
    --tertiary-hover:   oklch(0.80 0.11 var(--brand-tertiary-h));
    --tertiary-soft:    oklch(0.30 0.05 var(--brand-tertiary-h));
    --tertiary-ink:     oklch(0.85 0.10 var(--brand-tertiary-h));
}
