/* ──────────────────────────────────────────────────────────
 * OTS LMS — CSS Variables (Design System)
 * v3.0.0
 * ────────────────────────────────────────────────────────── */

:root {
    /* Primary Colors */
    --ots-primary: #1e3a5f;
    --ots-primary-light: #2c5282;
    --ots-primary-dark: #142944;
    --ots-primary-50: #e8edf4;
    --ots-primary-100: #c5d1e5;
    --ots-primary-200: #9fb3d4;
    --ots-primary-500: #1e3a5f;
    --ots-primary-700: #142944;
    --ots-primary-900: #0c1a2e;

    /* Accent */
    --ots-accent: #c5a55a;
    --ots-accent-light: #d4ba7a;
    --ots-accent-dark: #a88d42;

    /* Semantic */
    --ots-success: #10b981;
    --ots-success-light: #d1fae5;
    --ots-warning: #f59e0b;
    --ots-warning-light: #fef3c7;
    --ots-danger: #ef4444;
    --ots-danger-light: #fee2e2;
    --ots-info: #3b82f6;
    --ots-info-light: #dbeafe;

    /* Neutrals */
    --ots-white: #ffffff;
    --ots-gray-50: #f8fafc;
    --ots-gray-100: #f1f5f9;
    --ots-gray-200: #e2e8f0;
    --ots-gray-300: #cbd5e1;
    --ots-gray-400: #94a3b8;
    --ots-gray-500: #64748b;
    --ots-gray-600: #475569;
    --ots-gray-700: #334155;
    --ots-gray-800: #1e293b;
    --ots-gray-900: #0f172a;
    --ots-black: #020617;

    /* Typography */
    --ots-font-primary: 'Inter', -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, sans-serif;
    --ots-font-heading: 'Inter', -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, sans-serif;
    --ots-font-mono: 'JetBrains Mono', 'Fira Code', 'Cascadia Code', monospace;

    --ots-text-xs: 0.75rem;
    --ots-text-sm: 0.875rem;
    --ots-text-base: 1rem;
    --ots-text-lg: 1.125rem;
    --ots-text-xl: 1.25rem;
    --ots-text-2xl: 1.5rem;
    --ots-text-3xl: 1.875rem;
    --ots-text-4xl: 2.25rem;

    --ots-leading-tight: 1.25;
    --ots-leading-normal: 1.5;
    --ots-leading-relaxed: 1.625;

    /* Spacing */
    --ots-space-1: 0.25rem;
    --ots-space-2: 0.5rem;
    --ots-space-3: 0.75rem;
    --ots-space-4: 1rem;
    --ots-space-5: 1.25rem;
    --ots-space-6: 1.5rem;
    --ots-space-8: 2rem;
    --ots-space-10: 2.5rem;
    --ots-space-12: 3rem;
    --ots-space-16: 4rem;
    --ots-space-20: 5rem;

    /* Borders */
    --ots-radius-sm: 0.375rem;
    --ots-radius: 0.5rem;
    --ots-radius-md: 0.625rem;
    --ots-radius-lg: 0.75rem;
    --ots-radius-xl: 1rem;
    --ots-radius-2xl: 1.5rem;
    --ots-radius-full: 9999px;

    --ots-border: 1px solid var(--ots-gray-200);

    /* Shadows */
    --ots-shadow-xs: 0 1px 2px rgba(0, 0, 0, 0.05);
    --ots-shadow-sm: 0 1px 3px rgba(0, 0, 0, 0.1), 0 1px 2px rgba(0, 0, 0, 0.06);
    --ots-shadow: 0 4px 6px -1px rgba(0, 0, 0, 0.1), 0 2px 4px -1px rgba(0, 0, 0, 0.06);
    --ots-shadow-md: 0 10px 15px -3px rgba(0, 0, 0, 0.1), 0 4px 6px -2px rgba(0, 0, 0, 0.05);
    --ots-shadow-lg: 0 20px 25px -5px rgba(0, 0, 0, 0.1), 0 10px 10px -5px rgba(0, 0, 0, 0.04);
    --ots-shadow-xl: 0 25px 50px -12px rgba(0, 0, 0, 0.25);

    /* Transitions */
    --ots-transition-fast: 150ms ease;
    --ots-transition: 200ms ease;
    --ots-transition-slow: 300ms ease;

    /* Z-index */
    --ots-z-dropdown: 100;
    --ots-z-sticky: 200;
    --ots-z-modal-backdrop: 900;
    --ots-z-modal: 1000;
    --ots-z-toast: 1100;

    /* Layout */
    --ots-container-sm: 640px;
    --ots-container-md: 768px;
    --ots-container-lg: 1024px;
    --ots-container-xl: 1280px;
    --ots-container-2xl: 1440px;
    --ots-sidebar-width: 280px;
}

/* Dark Mode (optional) */
@media (prefers-color-scheme: dark) {
    :root.ots-auto-dark {
        --ots-white: #0f172a;
        --ots-gray-50: #1e293b;
        --ots-gray-100: #334155;
        --ots-gray-200: #475569;
        --ots-gray-300: #64748b;
        --ots-gray-400: #94a3b8;
        --ots-gray-500: #cbd5e1;
        --ots-gray-600: #e2e8f0;
        --ots-gray-700: #f1f5f9;
        --ots-gray-800: #f8fafc;
        --ots-gray-900: #ffffff;
        --ots-black: #ffffff;
    }
}
