.emuseum-admin {
    /* Neutrals (Tailwind gray scale) */
    --em-admin-color-white: #ffffff;
    --em-admin-color-gray-50: #f9fafb;
    --em-admin-color-gray-100: #f3f4f6;
    --em-admin-color-gray-200: #e5e7eb;
    --em-admin-color-gray-300: #d1d5db;
    --em-admin-color-gray-400: #9ca3af;
    --em-admin-color-gray-500: #6b7280;
    --em-admin-color-gray-600: #4b5563;
    --em-admin-color-gray-700: #374151;
    --em-admin-color-gray-800: #1f2937;
    --em-admin-color-gray-900: #111827;

    /* Accent (Tailwind blue scale) */
    --em-admin-color-accent-50: #eff6ff;
    --em-admin-color-accent-300: #93c5fd;
    --em-admin-color-accent-500: #3b82f6;
    --em-admin-color-accent-600: #2563eb;
    --em-admin-color-accent-700: #1d4ed8;

    /* Purple (Tailwind violet scale — dashboard stat cards) */
    --em-admin-color-purple-600: #7c3aed;

    /* Brand (Tailwind orange scale — matches the eMuseum logo) */
    --em-admin-color-brand-50: #fff7ed;
    --em-admin-color-brand-500: #f97316;
    --em-admin-color-brand-600: #ea580c;
    --em-admin-color-brand-700: #c2410c;

    /* Destructive (Tailwind red scale) */
    --em-admin-color-error-50: #fef2f2;
    --em-admin-color-error-300: #fca5a5;
    --em-admin-color-error-400: #f87171;
    --em-admin-color-error-600: #dc2626;
    --em-admin-color-error-700: #b91c1c;

    /* Success (Tailwind green scale) */
    --em-admin-color-success-50: #f0fdf4;
    --em-admin-color-success-300: #86efac;
    --em-admin-color-success-600: #16a34a;
    --em-admin-color-success-700: #15803d;

    /* Warning (Tailwind amber scale) */
    --em-admin-color-warning-50: #fffbeb;
    --em-admin-color-warning-300: #fcd34d;
    --em-admin-color-warning-600: #d97706;
    --em-admin-color-warning-700: #b45309;

    --em-admin-status-success-bg: var(--em-admin-color-success-50);
    --em-admin-status-success-border: var(--em-admin-color-success-300);
    --em-admin-status-success-icon: var(--em-admin-color-success-600);
    --em-admin-status-success-text: var(--em-admin-color-success-700);

    --em-admin-status-warning-bg: var(--em-admin-color-warning-50);
    --em-admin-status-warning-border: var(--em-admin-color-warning-300);
    --em-admin-status-warning-icon: var(--em-admin-color-warning-600);
    --em-admin-status-warning-text: var(--em-admin-color-warning-700);

    --em-admin-status-danger-bg: var(--em-admin-color-error-50);
    --em-admin-status-danger-border: var(--em-admin-color-error-300);
    --em-admin-status-danger-icon: var(--em-admin-color-error-600);
    --em-admin-status-danger-text: var(--em-admin-color-error-700);

    --em-admin-status-info-bg: var(--em-admin-color-accent-50);
    --em-admin-status-info-border: var(--em-admin-color-accent-300);
    --em-admin-status-info-icon: var(--em-admin-color-accent-600);
    --em-admin-status-info-text: var(--em-admin-color-accent-700);

    --em-admin-bg: var(--em-admin-color-white);
    --em-admin-surface: var(--em-admin-color-white);
    --em-admin-content-bg: var(--em-admin-color-gray-50);
    --em-admin-border: var(--em-admin-color-gray-200);
    --em-admin-divider: var(--em-admin-color-gray-300);

    --em-admin-text-primary: var(--em-admin-color-gray-900);
    --em-admin-text-secondary: var(--em-admin-color-gray-600);
    --em-admin-text-muted: var(--em-admin-color-gray-500);
    --em-admin-text-faint: var(--em-admin-color-gray-400);

    --em-admin-hover-bg: var(--em-admin-color-accent-50);
    --em-admin-hover-text: var(--em-admin-color-accent-600);

    --em-admin-active-bg: var(--em-admin-color-accent-50);
    --em-admin-active-text: var(--em-admin-color-accent-600);
    --em-admin-active-indicator: var(--em-admin-color-accent-600);

    --em-admin-focus-ring: var(--em-admin-color-accent-500);

    --em-admin-text-label: var(--em-admin-color-gray-700);
    --em-admin-input-border: var(--em-admin-color-gray-300);
    --em-admin-input-radius: var(--em-admin-radius-lg);

    /* Tab accent — brand orange */
    --em-admin-tab-accent-text: var(--em-admin-color-brand-600);
    --em-admin-tab-accent-border: var(--em-admin-color-brand-500);

    --em-admin-font-family: "Plus Jakarta Sans", "Plus Jakarta Sans Fallback", system-ui, sans-serif;
    --em-admin-font-size-xs: 12px;
    --em-admin-font-size-sm: 14px;
    --em-admin-font-size-base: 16px;
    --em-admin-font-size-lg: 18px;
    --em-admin-font-size-xl: 20px;
    --em-admin-font-size-2xl: 24px;
    --em-admin-font-weight-normal: 400;
    --em-admin-font-weight-medium: 500;
    --em-admin-font-weight-semibold: 600;
    --em-admin-line-height-tight: 1.25;
    --em-admin-line-height-normal: 1.5;

    --em-admin-space-1: 4px;
    --em-admin-space-2: 8px;
    --em-admin-space-3: 12px;
    --em-admin-space-4: 16px;
    --em-admin-space-5: 20px;
    --em-admin-space-6: 24px;
    --em-admin-space-8: 32px;

    --em-admin-radius-sm: 4px;
    --em-admin-radius-md: 6px;
    --em-admin-radius-lg: 8px;

    --em-admin-header-height: 64px;
    --em-admin-sidebar-width: 208px;
    --em-admin-sidebar-width-collapsed: 56px;

    --em-admin-shadow-sm: 0 1px 2px rgba(0, 0, 0, 0.05);
    --em-admin-transition-fast: 150ms ease;

    /* Apply base font to the admin root so descendants inherit */
    font-family: var(--em-admin-font-family);
    font-size: var(--em-admin-font-size-base);
    line-height: var(--em-admin-line-height-normal);
    color: var(--em-admin-text-primary);
    background-color: var(--em-admin-bg);
}
