/* =====================================================================
   GTyres Design System — Theme Tokens
   Single source of truth for color. Built around #0D1B4C (navy).
   Light is the default; [data-theme="dark"] overrides the same names.
   Reference: .claude/skills/mvc-design/SKILL.md
   ===================================================================== */

:root {
    /* Core palette */
    --c-primary: #0D1B4C;
    --c-primary-hover: #1E3A8A;
    --c-primary-light: #3B58D8;
    --c-primary-dark: #071033;
    --c-secondary: #1E40AF;
    --c-secondary-light: #2563EB;
    --c-accent: #3882F6;
    --c-accent-light: #93C5FD;

    /* Neutral grayscale */
    --c-gray-900: #0F172A;
    --c-gray-700: #334155;
    --c-gray-500: #64748B;
    --c-gray-300: #CBD5E1;
    --c-gray-200: #E2E8F0;
    --c-gray-100: #F1F5F9;

    /* Menu / navigation */
    --c-nav-bg: #0D1B4C;
    --c-nav-hover: #1E293B;
    --c-nav-brand: #1E293B;
    --c-nav-item-hover: #1563E8;
    --c-nav-item-active-bg: #EFF6FF;
    --c-nav-item-active-text: #0D1B4C;
    --c-nav-text: #FFFFFF;

    /* Backgrounds / surfaces */
    --c-bg-main: #FFFFFF;
    --c-bg-page: #F8FAFC;
    --c-card-bg: #FFFFFF;
    --c-section-bg: #F1F5F9;
    --c-elevated-bg: #E2E8F0;
    --c-border: #E2E8F0;

    /* Text */
    --c-text-primary: #0F172A;
    --c-text-secondary: #334155;
    --c-text-tertiary: #64748B;
    --c-text-disabled: #94A3B8;

    /* Semantic */
    --c-success: #16A34A;
    --c-success-light: #DCFCE7;
    --c-info: #0EA5E9;
    --c-info-light: #E0F2FE;
    --c-warning: #F59E0B;
    --c-warning-light: #FEF3C7;
    --c-error: #DC2626;
    --c-error-light: #FEE2E2;
    /* Money paid before goods arrive — a ledger state of its own, distinct from
       success (settled) and info (neutral). Used by supplier advances. */
    --c-advance: #9333EA;
    --c-advance-light: #F3E8FF;

    /* Gradients & misc */
    --c-gradient-primary: linear-gradient(135deg, #0D1B4C, #1E40AF);
    --c-gradient-accent: linear-gradient(135deg, #2563EB, #60A5FA);
    --c-radius: 8px;
    --c-shadow: 0 1px 3px rgba(15, 23, 42, .08), 0 1px 2px rgba(15, 23, 42, .06);

    /* Legacy bridge — existing rules using var(--bg-color-layout) adopt navy */
    --bg-color-layout: var(--c-primary);
}

:root[data-theme="dark"],
body.theme-dark {
    /* Core palette */
    --c-primary: #0D1B4C;
    --c-primary-hover: #1E40AF;
    --c-primary-light: #3B58E8;
    --c-primary-dark: #020617;
    --c-secondary: #1E3A8A;
    --c-secondary-light: #2563EB;
    --c-accent: #60A5FA;
    --c-accent-light: #93C5FD;

    /* Neutral grayscale */
    --c-gray-900: #020617;
    --c-gray-700: #1E293B;
    --c-gray-500: #475569;
    --c-gray-300: #94A3B8;
    --c-gray-200: #334155;
    --c-gray-100: #1E293B;

    /* Menu / navigation */
    --c-nav-bg: #020617;
    --c-nav-hover: #0F172A;
    --c-nav-brand: #1E40AF;
    --c-nav-item-hover: #1E293B;
    --c-nav-item-active-bg: #1E293B;
    --c-nav-item-active-text: #E2E8F0;
    --c-nav-text: #E2E8F0;

    /* Backgrounds / surfaces */
    --c-bg-main: #020617;
    --c-bg-page: #0B1220;
    --c-card-bg: #0F172A;
    --c-section-bg: #1E293B;
    --c-elevated-bg: #1E293B;
    --c-border: #1E293B;

    /* Text */
    --c-text-primary: #F8FAFC;
    --c-text-secondary: #CBD5E1;
    --c-text-tertiary: #94A3B8;
    --c-text-disabled: #64748B;

    /* Semantic */
    --c-success: #16A34A;
    --c-success-light: #064E3B;
    --c-info: #0EA5E9;
    --c-info-light: #0C4A6E;
    --c-warning: #F59E0B;
    --c-warning-light: #78350F;
    --c-error: #DC2626;
    --c-error-light: #7F1D1D;
    /* #9333EA fails contrast on the dark card surface — lift it. */
    --c-advance: #C084FC;
    --c-advance-light: #4C1D95;

    --c-shadow: 0 1px 3px rgba(0, 0, 0, .5), 0 1px 2px rgba(0, 0, 0, .4);
}
