/* ==========================================================================
   EVISCHURCH — Centralized color system
   Single source of truth for all accent colors. Loads LAST so it overrides
   every other CSS file.

   To rebrand or theme an environment, edit ONLY --primary / --primary-dark /
   --primary-light below (or in the body.env-* override at the bottom).
   Every opacity variant (--primary-soft, --primary-06, --primary-22, ...)
   and every module alias (--academy-primary, --gc-accent, --landing-accent,
   calendar events, buttons, ...) is derived from those 3 values via
   color-mix(), so nothing else needs to be touched or kept in sync by hand.
   ========================================================================== */

/* Keep derived color tokens on body so they resolve from the final
   --primary value before being inherited by page components. */
body {
    /* Brand color - Brun église palette. Change these 3 and everything
       below recomputes automatically. */
    --primary: #B89A7A;
    --primary-dark: #8B6E55;
    --primary-light: #D4B5A0;

    /* Opacity washes, derived from --primary — do not hardcode rgba() here */
    --primary-soft: color-mix(in srgb, var(--primary) 10%, transparent);
    --primary-soft-2: color-mix(in srgb, var(--primary) 16%, transparent);
    --primary-border: color-mix(in srgb, var(--primary) 18%, transparent);
    --primary-bg: color-mix(in srgb, var(--primary) 8%, transparent);
    --primary-03: color-mix(in srgb, var(--primary) 3%, transparent);
    --primary-06: color-mix(in srgb, var(--primary) 6%, transparent);
    --primary-12: color-mix(in srgb, var(--primary) 12%, transparent);
    --primary-15: color-mix(in srgb, var(--primary) 15%, transparent);
    --primary-20: color-mix(in srgb, var(--primary) 20%, transparent);
    --primary-22: color-mix(in srgb, var(--primary) 22%, transparent);
    --primary-24: color-mix(in srgb, var(--primary) 24%, transparent);
    --primary-28: color-mix(in srgb, var(--primary) 28%, transparent);
    --primary-30: color-mix(in srgb, var(--primary) 30%, transparent);
    --primary-40: color-mix(in srgb, var(--primary) 40%, transparent);
    --primary-50: color-mix(in srgb, var(--primary) 50%, transparent);
    --primary-55: color-mix(in srgb, var(--primary) 55%, transparent);
    --primary-78: color-mix(in srgb, var(--primary) 78%, transparent);
    --primary-85: color-mix(in srgb, var(--primary) 85%, transparent);

    /* Calendar event colors */
    --event-bg: var(--primary);
    --event-bg-hover: var(--primary-dark);
    --event-text: #ffffff;

    /* Aliases for different modules — all derive from --primary above */
    --academy-primary: var(--primary);
    --academy-primary-soft: var(--primary-06);
    --academy-primary-border: var(--primary-22);
    --gc-accent: var(--primary);
    --gc-accent-hover: var(--primary-light);
    --gc-accent-soft: var(--primary-06);
    --gc-accent-border: var(--primary-22);
    --plan-accent: var(--primary);
    --plan-accent-hover: var(--primary-light);
    --plan-accent-soft: var(--primary-06);
    --plan-accent-border: var(--primary-22);
    --comm-primary: var(--primary);
    --comm-primary-soft: var(--primary-soft);
    --comm-primary-border: var(--primary-border);
    --landing-accent: var(--primary);
    --landing-accent-hover: var(--primary-dark);
    --landing-accent-soft: var(--primary-bg);
    --landing-accent-border: var(--primary-border);
    --landing-hero-accent: var(--primary);
    --env-accent: var(--primary);
    --env-accent-soft: var(--primary-12);
    --env-accent-border: var(--primary-24);
    --env-accent-text: var(--primary-dark);
}

