:root {
    --color-bg:       #F9FAFB;
    --color-surface:  #FFFFFF;
    --color-primary:  #A8C5A0;
    --color-accent:   #C9956C;
    --color-text:     #1E293B;
    --color-muted:    #64748B;
    --color-error:    #EF4444;
    --color-success:  #22C55E;
    --color-warning:  #F59E0B;
    --color-info:     #3B82F6;

    --color-primary-dark:  #8DAF84;
    --color-primary-light: #C5DCC0;
    --color-accent-dark:   #B07A52;
    --color-accent-light:  #DEB89A;

    --color-border:        #E2E8F0;
    --color-border-focus:  #A8C5A0;

    --radius:         12px;
    --radius-sm:      6px;
    --radius-lg:      16px;
    --radius-full:    9999px;

    --shadow-card:    0 1px 4px rgba(0,0,0,0.08);
    --shadow-modal:   0 8px 32px rgba(0,0,0,0.16);
    --shadow-sm:      0 1px 2px rgba(0,0,0,0.05);
    --shadow-lg:      0 4px 16px rgba(0,0,0,0.12);

    --font-family:    'Poppins', sans-serif;
    --font-size-xs:   0.75rem;
    --font-size-sm:   0.875rem;
    --font-size-base: 1rem;
    --font-size-lg:   1.125rem;
    --font-size-xl:   1.25rem;
    --font-size-2xl:  1.5rem;
    --font-size-3xl:  1.875rem;

    --font-weight-normal:   400;
    --font-weight-medium:   500;
    --font-weight-semibold: 600;
    --font-weight-bold:     700;

    --line-height-tight:  1.25;
    --line-height-normal: 1.5;
    --line-height-loose:  1.75;

    --spacing-1:  0.25rem;
    --spacing-2:  0.5rem;
    --spacing-3:  0.75rem;
    --spacing-4:  1rem;
    --spacing-5:  1.25rem;
    --spacing-6:  1.5rem;
    --spacing-8:  2rem;
    --spacing-10: 2.5rem;
    --spacing-12: 3rem;
    --spacing-16: 4rem;

    --sidebar-width:        240px;
    --sidebar-width-collapsed: 64px;
    --topbar-height:        60px;

    --transition-fast:   150ms ease;
    --transition-normal: 250ms ease;
    --transition-slow:   350ms ease;

    --z-sidebar:  100;
    --z-topbar:   200;
    --z-modal:    300;
    --z-toast:    400;
    --z-dropdown: 150;

    /* ─── Gradients ──────────────────────────────────────────────────────────── */
    --gradient-primary:    linear-gradient(135deg, #A8C5A0 0%, #8DAF84 100%);
    --gradient-accent:     linear-gradient(135deg, #C9956C 0%, #B07A52 100%);
    --gradient-surface:    linear-gradient(180deg, #FFFFFF 0%, #F9FAFB 100%);
    --gradient-hero:       linear-gradient(135deg, #A8C5A0 0%, #7BA573 50%, #C9956C 100%);

    /* ─── Extended Shadow Scale ──────────────────────────────────────────────── */
    --shadow-xs:           0 1px 2px rgba(0,0,0,0.04);
    --shadow-md:           0 4px 12px rgba(0,0,0,0.10);
    --shadow-xl:           0 12px 32px rgba(0,0,0,0.14);
    --shadow-2xl:          0 24px 48px rgba(0,0,0,0.18);
    --shadow-glow-primary: 0 4px 16px rgba(168,197,160,0.40);
    --shadow-glow-accent:  0 4px 16px rgba(201,149,108,0.40);

    /* ─── Animation Tokens ───────────────────────────────────────────────────── */
    --duration-instant:    75ms;
    --duration-fast:       150ms;
    --duration-normal:     250ms;
    --duration-slow:       400ms;
    --duration-slower:     600ms;
    --ease-in:             cubic-bezier(0.4, 0, 1, 1);
    --ease-out:            cubic-bezier(0, 0, 0.2, 1);
    --ease-in-out:         cubic-bezier(0.4, 0, 0.2, 1);
    --ease-bounce:         cubic-bezier(0.34, 1.56, 0.64, 1);

    /* ─── Component Tokens ───────────────────────────────────────────────────── */
    --input-height:        44px;
    --btn-height-sm:       32px;
    --btn-height-md:       40px;
    --btn-height-lg:       48px;
    --topbar-glass-bg:     rgba(255, 255, 255, 0.85);

    /* ─── Status Tokens ──────────────────────────────────────────────────────── */
    --status-booked-bg:    #DBEAFE;
    --status-confirmed-bg: #D1FAE5;
    --status-completed-bg: #F1F5F9;
    --status-cancelled-bg: #FEE2E2;

    /* ─── KPI Tokens ─────────────────────────────────────────────────────────── */
    --kpi-green-bg:        rgba(34, 197, 94, 0.10);
    --kpi-amber-bg:        rgba(245, 158, 11, 0.10);
    --kpi-red-bg:          rgba(239, 68, 68, 0.10);

    /* ─── Tab Balance Tokens ─────────────────────────────────────────────────── */
    --tab-balance-green-bg: #D1FAE5;
    --tab-balance-amber-bg: #FEF3C7;
    --tab-balance-red-bg:   #FEE2E2;
}
