/**
 * EatFree Brand System V1
 * Canonical colour + typography tokens
 * Source: approved EatFree Sprouting mark, 2026-09-06
 *
 * BRAND ANCHORS (never redefine elsewhere):
 *   Green       #61A439
 *   Orange      #FEAB03
 *   White       #FEFEFE
 *   Charcoal    #555358
 *   Shadow Grey #28282A
 *
 * Derived UI shades below are controlled tonal derivatives of the anchors.
 */
:root {
    /* ===== Exact brand anchors ===== */
    --ef-brand-green: #61A439 !important;
    --ef-brand-orange: #FEAB03 !important;
    --ef-brand-white: #FEFEFE !important;
    --ef-brand-charcoal: #555358 !important;
    --ef-brand-shadow: #28282A !important;

    /* ===== Controlled green scale ===== */
    --ef-green-900: #355B20 !important;
    --ef-green-800: #437128 !important;
    --ef-green-700: #508830 !important;
    --ef-green-500: #61A439 !important;
    --ef-green-300: #A3D586 !important;
    --ef-green-100: #EBF6E5 !important;

    /* ===== Controlled orange scale ===== */
    --ef-orange-700: #C18101 !important;
    --ef-orange-500: #FEAB03 !important;
    --ef-orange-300: #FED98F !important;
    --ef-orange-100: #FFF0D1 !important;

    /* ===== Neutral / surface system ===== */
    --ef-ink: #28282A !important;
    --ef-copy: #555358 !important;
    --ef-white: #FEFEFE !important;
    --ef-surface: #FEFEFE !important;
    --ef-surface-soft: #F7FAF5 !important;
    --ef-surface-green: #EBF6E5 !important;
    --ef-surface-orange: #FFF0D1 !important;
    --ef-line: #E1E6DE !important;
    --ef-shadow-soft: 0 8px 26px rgba(40,40,42,.07) !important;
    --ef-shadow-card: 0 18px 48px rgba(40,40,42,.09) !important;

    /* ===== Typography ===== */
    --ef-font-display: 'CaprasimoLocal', 'Caprasimo', Georgia, serif !important;
    --ef-font-ui: 'Montserrat', Arial, sans-serif !important;

    /* ===== Accessible component tokens =====
       Exact logo green is an accent colour. For small white text on green,
       use green-800/900 for sufficient contrast. Orange carries dark text. */
    --ef-action: #437128 !important;
    --ef-action-hover: #355B20 !important;
    --ef-accent: #FEAB03 !important;
    --ef-accent-text: #28282A !important;

    /* ===== Legacy EatFree aliases ===== */
    --ef-primary: var(--ef-brand-green) !important;
    --ef-primary-dark: var(--ef-green-800) !important;
    --ef-primary-light: var(--ef-green-300) !important;
    --ef-secondary: var(--ef-brand-orange) !important;
    --ef-secondary-dark: var(--ef-orange-700) !important;
    --ef-green: var(--ef-brand-green) !important;
    --ef-green-dark: var(--ef-green-800) !important;
    --ef-green-deep: var(--ef-green-900) !important;
    --ef-green-soft: var(--ef-green-100) !important;
    --ef-yellow: var(--ef-brand-orange) !important;
    --ef-yellow-bright: var(--ef-brand-orange) !important;
    --ef-yellow-soft: var(--ef-orange-100) !important;
    --ef-orange: var(--ef-brand-orange) !important;
    --ef-dark: var(--ef-brand-shadow) !important;
    --ef-dark-grey: var(--ef-brand-charcoal) !important;
    --ef-muted: var(--ef-brand-charcoal) !important;
    --ef-text: var(--ef-brand-shadow) !important;
    --ef-text-main: var(--ef-brand-shadow) !important;
    --ef-text-soft: var(--ef-brand-charcoal) !important;
    --ef-cream: var(--ef-surface-orange) !important;
    --ef-soft: var(--ef-surface-soft) !important;
    --ef-page: var(--ef-surface-soft) !important;
    --ef-card: var(--ef-brand-white) !important;
    --ef-border: var(--ef-line) !important;
    --ef-gray-900: var(--ef-brand-shadow) !important;
    --ef-gray-700: var(--ef-brand-charcoal) !important;
    --ef-gray-500: #77757A !important;
    --ef-gray-300: #D7D7D8 !important;
    --ef-gray-200: #E7E7E8 !important;
    --ef-gray-100: #F6F6F6 !important;

    /* ===== Admin compatibility ===== */
    --admin-rail: var(--ef-brand-shadow) !important;
    --admin-rail-2: #323235 !important;
    --admin-green: var(--ef-green-800) !important;
    --admin-green-2: var(--ef-brand-green) !important;
    --admin-lime: var(--ef-green-300) !important;
    --admin-gold: var(--ef-brand-orange) !important;
    --admin-white: var(--ef-brand-white) !important;
    --admin-text: var(--ef-brand-shadow) !important;
    --admin-muted: var(--ef-brand-charcoal) !important;
    --admin-line: var(--ef-line) !important;
    --admin-bg: var(--ef-surface-soft) !important;

    /* ===== Shop registration compatibility ===== */
    --reg-green: var(--ef-brand-green) !important;
    --reg-green-dark: var(--ef-green-800) !important;
    --reg-green-deep: var(--ef-green-900) !important;
    --reg-lime-soft: var(--ef-green-100) !important;
    --reg-cream: var(--ef-orange-100) !important;
    --reg-cream-2: #FFF7E3 !important;
    --reg-yellow: var(--ef-brand-orange) !important;
    --reg-white: var(--ef-brand-white) !important;
    --reg-text: var(--ef-brand-shadow) !important;
    --reg-muted: var(--ef-brand-charcoal) !important;
    --reg-border: var(--ef-line) !important;

    /* ===== ePOS compatibility ===== */
    --efepos-green: var(--ef-brand-green) !important;
    --efepos-green-dark: var(--ef-green-800) !important;
    --efepos-yellow: var(--ef-brand-orange) !important;
    --efepos-orange: var(--ef-brand-orange) !important;
    --efepos-soft: var(--ef-surface-soft) !important;
    --efepos-cream: var(--ef-orange-100) !important;
    --efepos-white: var(--ef-brand-white) !important;
    --efepos-dark: var(--ef-brand-shadow) !important;
    --efepos-muted: var(--ef-brand-charcoal) !important;
    --efepos-border: var(--ef-line) !important;

    /* ===== Generic tokens used by newer EatFree modules ===== */
    --green: var(--ef-brand-green) !important;
    --green-dark: var(--ef-green-800) !important;
    --green-soft: var(--ef-green-100) !important;
    --yellow: var(--ef-brand-orange) !important;
    --yellow-soft: var(--ef-orange-100) !important;
    --orange: var(--ef-brand-orange) !important;
    --white: var(--ef-brand-white) !important;
    --dark: var(--ef-brand-shadow) !important;
    --text: var(--ef-brand-shadow) !important;
    --muted: var(--ef-brand-charcoal) !important;
    --line: var(--ef-line) !important;
}

/* Brand utilities are opt-in; they intentionally do not restyle whole pages. */
.ef-brand-wordmark {
    font-family: var(--ef-font-display);
    font-weight: 400;
    letter-spacing: -.045em;
    color: var(--ef-brand-green);
}
.ef-brand-wordmark .accent { color: var(--ef-brand-orange); }
.ef-brand-bg-green { background: var(--ef-brand-green) !important; }
.ef-brand-bg-orange { background: var(--ef-brand-orange) !important; color: var(--ef-brand-shadow) !important; }
.ef-brand-text-green { color: var(--ef-green-800) !important; }
.ef-brand-text-orange { color: var(--ef-orange-700) !important; }
.ef-brand-action { background: var(--ef-action) !important; color: var(--ef-brand-white) !important; }
.ef-brand-action:hover { background: var(--ef-action-hover) !important; }
