/**
 * DentOS Enterprise Design System — Semantic Tokens
 * Bi-directional (LTR/RTL) & Multi-theme (Light/Dark/System)
 */

:root {
    /* Color Palette - Primitives */
    --dentos-blue-50: #eff6ff;
    --dentos-blue-100: #dbeafe;
    --dentos-blue-200: #bfdbfe;
    --dentos-blue-500: #3b82f6;
    --dentos-blue-600: #2563eb;
    --dentos-blue-700: #1d4ed8;
    --dentos-blue-800: #1e40af;
    --dentos-blue-900: #1e3a8a;

    --dentos-teal-50: #f0fdfa;
    --dentos-teal-100: #ccfbf1;
    --dentos-teal-600: #0d9488;
    --dentos-teal-700: #0f766e;

    --dentos-gray-50: #f8fafc;
    --dentos-gray-100: #f1f5f9;
    --dentos-gray-200: #e2e8f0;
    --dentos-gray-300: #cbd5e1;
    --dentos-gray-400: #94a3b8;
    --dentos-gray-500: #64748b;
    --dentos-gray-600: #475569;
    --dentos-gray-700: #334155;
    --dentos-gray-800: #1e293b;
    --dentos-gray-900: #0f172a;

    --dentos-green-50: #f0fdf4;
    --dentos-green-100: #dcfce7;
    --dentos-green-600: #16a34a;
    --dentos-green-700: #15803d;

    --dentos-red-50: #fef2f2;
    --dentos-red-100: #fee2e2;
    --dentos-red-600: #dc2626;
    --dentos-red-700: #b91c1c;

    --dentos-amber-50: #fffbeb;
    --dentos-amber-100: #fef3c7;
    --dentos-amber-500: #f59e0b;
    --dentos-amber-600: #d97706;

    --dentos-purple-50: #faf5ff;
    --dentos-purple-100: #f3e8ff;
    --dentos-purple-600: #9333ea;
    --dentos-purple-700: #7e22ce;

    /* Spacing Scale (4px base) */
    --dentos-space-1: 0.25rem;  /* 4px */
    --dentos-space-2: 0.5rem;   /* 8px */
    --dentos-space-3: 0.75rem;  /* 12px */
    --dentos-space-4: 1rem;     /* 16px */
    --dentos-space-5: 1.25rem;  /* 20px */
    --dentos-space-6: 1.5rem;   /* 24px */
    --dentos-space-8: 2rem;     /* 32px */
    --dentos-space-10: 2.5rem;  /* 40px */
    --dentos-space-12: 3rem;    /* 48px */

    /* Radii */
    --dentos-radius-sm: 0.25rem;  /* 4px */
    --dentos-radius-md: 0.375rem; /* 6px */
    --dentos-radius-lg: 0.5rem;   /* 8px */
    --dentos-radius-xl: 0.75rem;  /* 12px */
    --dentos-radius-full: 9999px;

    /* Transitions */
    --dentos-transition-fast: 150ms cubic-bezier(0.4, 0, 0.2, 1);
    --dentos-transition-base: 200ms cubic-bezier(0.4, 0, 0.2, 1);
    --dentos-transition-smooth: 300ms cubic-bezier(0.4, 0, 0.2, 1);

    /* Z-Index Layers */
    --dentos-z-sidebar: 1020;
    --dentos-z-topbar: 1030;
    --dentos-z-backdrop: 1040;
    --dentos-z-modal: 1050;
    --dentos-z-toast: 1060;

    /* Shell Layout Dimensions */
    --dentos-sidebar-width: 260px;
    --dentos-sidebar-collapsed-width: 72px;
    --dentos-topbar-height: 60px;
}

/* Light Theme (Default) */
:root, [data-theme="light"] {
    --dentos-bg-canvas: #f8fafc;
    --dentos-bg-surface: #ffffff;
    --dentos-bg-surface-elevated: #ffffff;
    --dentos-bg-subtle: #f1f5f9;
    --dentos-bg-muted: #e2e8f0;
    --dentos-bg-card: #ffffff;

    --dentos-text-primary: #0f172a;
    --dentos-text-secondary: #475569;
    --dentos-text-muted: #64748b;
    --dentos-text-inverse: #ffffff;

    --dentos-border-subtle: #f1f5f9;
    --dentos-border-default: #e2e8f0;
    --dentos-border-strong: #cbd5e1;

    --dentos-primary: #0284c7;
    --dentos-primary-hover: #0369a1;
    --dentos-primary-subtle: #e0f2fe;
    --dentos-primary-contrast: #ffffff;

    --dentos-success: #16a34a;
    --dentos-success-subtle: #dcfce7;
    --dentos-warning: #d97706;
    --dentos-warning-subtle: #fef3c7;
    --dentos-danger: #dc2626;
    --dentos-danger-subtle: #fee2e2;
    --dentos-info: #0284c7;
    --dentos-info-subtle: #e0f2fe;

    --dentos-sidebar-bg: #0f172a;
    --dentos-sidebar-text: #e2e8f0;
    --dentos-sidebar-text-muted: #94a3b8;
    --dentos-sidebar-active-bg: rgba(255, 255, 255, 0.12);
    --dentos-sidebar-active-indicator: #38bdf8;
    --dentos-sidebar-border: rgba(255, 255, 255, 0.08);

    --dentos-topbar-bg: #ffffff;
    --dentos-topbar-border: #e2e8f0;

    --dentos-shadow-sm: 0 1px 2px 0 rgba(0, 0, 0, 0.05);
    --dentos-shadow-md: 0 4px 6px -1px rgba(0, 0, 0, 0.1), 0 2px 4px -2px rgba(0, 0, 0, 0.1);
    --dentos-shadow-lg: 0 10px 15px -3px rgba(0, 0, 0, 0.1), 0 4px 6px -4px rgba(0, 0, 0, 0.1);
    --dentos-shadow-xl: 0 20px 25px -5px rgba(0, 0, 0, 0.1), 0 8px 10px -6px rgba(0, 0, 0, 0.1);

    color-scheme: light;
}

/* Dark Theme */
[data-theme="dark"] {
    --dentos-bg-canvas: #090d16;
    --dentos-bg-surface: #0f172a;
    --dentos-bg-surface-elevated: #1e293b;
    --dentos-bg-subtle: #1e293b;
    --dentos-bg-muted: #334155;
    --dentos-bg-card: #0f172a;

    --dentos-text-primary: #f8fafc;
    --dentos-text-secondary: #cbd5e1;
    --dentos-text-muted: #94a3b8;
    --dentos-text-inverse: #0f172a;

    --dentos-border-subtle: #1e293b;
    --dentos-border-default: #334155;
    --dentos-border-strong: #475569;

    --dentos-primary: #38bdf8;
    --dentos-primary-hover: #7dd3fc;
    --dentos-primary-subtle: rgba(56, 189, 248, 0.15);
    --dentos-primary-contrast: #0f172a;

    --dentos-success: #22c55e;
    --dentos-success-subtle: rgba(34, 197, 94, 0.15);
    --dentos-warning: #f59e0b;
    --dentos-warning-subtle: rgba(245, 158, 11, 0.15);
    --dentos-danger: #ef4444;
    --dentos-danger-subtle: rgba(239, 68, 68, 0.15);
    --dentos-info: #38bdf8;
    --dentos-info-subtle: rgba(56, 189, 248, 0.15);

    --dentos-sidebar-bg: #0b1120;
    --dentos-sidebar-text: #f1f5f9;
    --dentos-sidebar-text-muted: #94a3b8;
    --dentos-sidebar-active-bg: rgba(56, 189, 248, 0.15);
    --dentos-sidebar-active-indicator: #38bdf8;
    --dentos-sidebar-border: rgba(255, 255, 255, 0.06);

    --dentos-topbar-bg: #0f172a;
    --dentos-topbar-border: #334155;

    --dentos-shadow-sm: 0 1px 2px 0 rgba(0, 0, 0, 0.5);
    --dentos-shadow-md: 0 4px 6px -1px rgba(0, 0, 0, 0.4), 0 2px 4px -2px rgba(0, 0, 0, 0.4);
    --dentos-shadow-lg: 0 10px 15px -3px rgba(0, 0, 0, 0.5), 0 4px 6px -4px rgba(0, 0, 0, 0.5);
    --dentos-shadow-xl: 0 20px 25px -5px rgba(0, 0, 0, 0.6), 0 8px 10px -6px rgba(0, 0, 0, 0.6);

    color-scheme: dark;
}
