/* ==========================================================================
   ZWAB Theme — central design tokens
   Change brand colours here and the whole site follows.
   Distribution target: ~55% ivory/cream/white · 30% green · 10% secondary green · 5% gold
   ========================================================================== */

:root {
    /* Brand greens */
    --zwab-forest: #073B24;       /* primary brand colour */
    --zwab-evergreen: #052B1A;    /* deepest shade */
    --zwab-green: #145A35;        /* secondary green */

    /* Gold accents */
    --zwab-gold: #C69A3A;         /* primary accent */
    --zwab-gold-light: #D9B65D;   /* hover / soft accent */
    --zwab-gold-muted: #A67C28;   /* dividers / metadata */

    /* Neutrals */
    --zwab-ivory: #F6F1E4;        /* warm light background */
    --zwab-cream: #FBF8EF;        /* lightest background */
    --zwab-white: #FFFFFF;

    /* Text */
    --zwab-text: #1C2A22;
    --zwab-text-secondary: #5D675F;
    --zwab-text-on-dark: #FFFFFF;
    --zwab-text-on-dark-muted: #E8E4D8;

    /* Lines & surfaces */
    --zwab-border: rgba(198, 154, 58, 0.28);
    --zwab-border-soft: rgba(28, 42, 34, 0.10);

    /* Typography */
    --zwab-font-body: "Segoe UI", system-ui, -apple-system, "Helvetica Neue", Arial, sans-serif;
    --zwab-font-display: "Georgia", "Times New Roman", "Iowan Old Style", serif;
    --zwab-font-size-base: 1rem;
    --zwab-line-height: 1.7;

    /* Spacing & rhythm */
    --zwab-section-y: clamp(3.5rem, 7vw, 6.5rem);
    --zwab-container-max: 1200px;
    --zwab-container-narrow: 820px;
    --zwab-radius-sm: 6px;
    --zwab-radius: 12px;
    --zwab-radius-lg: 20px;
    --zwab-radius-pill: 999px;

    /* Elevation (used sparingly) */
    --zwab-shadow-sm: 0 1px 2px rgba(7, 59, 36, 0.06);
    --zwab-shadow: 0 8px 24px rgba(7, 59, 36, 0.10);
    --zwab-shadow-lg: 0 18px 48px rgba(7, 59, 36, 0.16);

    /* Motion */
    --zwab-transition: 220ms ease;
    --zwab-ease: cubic-bezier(0.22, 0.61, 0.36, 1);

    /* Map Radzen tokens so Phase 2 admin grids stay on-brand */
    --rz-primary: var(--zwab-forest);
    --rz-primary-lighter: var(--zwab-green);
    --rz-base-background-color: var(--zwab-cream);
    --rz-base-text-color: var(--zwab-text);
    --rz-border-color: var(--zwab-border);
    --rz-body-background-color: var(--zwab-cream);
}
