:root {
    --color-primary: #19c37d;
    --color-primary-dark: #12a56a;
    --color-secondary: #ec4899;
    --color-accent: #f59e0b;
    --color-info: #3b82f6;
    --color-success: #10b981;
    --color-success-dark: #166534;
    --color-success-soft: #dcfce7;
    --color-warning: #f59e0b;
    --color-danger: #ef4444;
    --color-surface: #ffffff;
    --color-background: #f5f7fb;
    --color-text: #172033;
    --color-text-muted: #64748b;
    --color-border: #e2e8f0;

    /* Backward-compatible aliases used by existing modules. */
    --primary: var(--color-primary);
    --primary-dark: var(--color-primary-dark);
    --secondary: var(--color-secondary);
    --hotel-primary: var(--color-primary);
    --hotel-primary-dark: var(--color-primary-dark);
    --hotel-accent: var(--color-accent);
    --bg: var(--color-background);
    --card: var(--color-surface);
    --text: var(--color-text);
    --muted: var(--color-text-muted);
    --line: var(--color-border);
}

.bg-theme-primary { background-color: var(--color-primary) !important; }
.bg-theme-primary-dark { background-color: var(--color-primary-dark) !important; }
.bg-theme-secondary { background-color: var(--color-secondary) !important; }
.bg-theme-accent { background-color: var(--color-accent) !important; }
.text-success { color: var(--color-success) !important; }
.text-danger { color: var(--color-danger) !important; }
.btn-status-success { background: #ecfdf5; color: #166534; border-color: #86efac; }
.btn-status-warning { background: #fff7ed; color: #c2410c; border-color: #fdba74; }
.btn-status-danger { background: #fee2e2; color: #991b1b; border-color: #fecaca; }
