/* ============================================
   DapDigital Design Tokens
   White/Pastel Theme with Dark Mode Support
   ============================================ */

:root {
    /* ---- Colors (Light Mode - White/Pastel) ---- */
    --color-primary: #6366f1;
    --color-primary-hover: #4f46e5;
    --color-primary-light: #eef2ff;
    --color-primary-dark: #4338ca;

    --color-secondary: #a78bfa;
    --color-secondary-hover: #8b5cf6;

    --color-success: #34d399;
    --color-success-light: #ecfdf5;
    --color-warning: #fbbf24;
    --color-warning-light: #fffbeb;
    --color-danger: #f87171;
    --color-danger-light: #fef2f2;
    --color-info: #67e8f9;
    --color-info-light: #ecfeff;

    --color-bg: #ffffff;
    --color-bg-secondary: #faf8ff;
    --color-bg-tertiary: #f3f0ff;
    --color-surface: #ffffff;
    --color-surface-hover: #faf8ff;
    --color-surface-raised: #ffffff;

    --color-text: #1e1b4b;
    --color-text-secondary: #6b7280;
    --color-text-tertiary: #9ca3af;
    --color-text-inverse: #ffffff;

    --color-border: #e8e5f0;
    --color-border-hover: #d4d0e0;
    --color-border-focus: #6366f1;

    --color-overlay: rgba(30, 27, 75, 0.4);

    /* ---- Typography ---- */
    --font-sans: 'Inter', -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, sans-serif;
    --font-mono: 'JetBrains Mono', 'Fira Code', 'Cascadia Code', monospace;

    --font-size-xs: 0.75rem;    /* 12px */
    --font-size-sm: 0.875rem;   /* 14px */
    --font-size-base: 1rem;     /* 16px */
    --font-size-lg: 1.125rem;   /* 18px */
    --font-size-xl: 1.25rem;    /* 20px */
    --font-size-2xl: 1.5rem;    /* 24px */
    --font-size-3xl: 1.875rem;  /* 30px */
    --font-size-4xl: 2.25rem;   /* 36px */

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

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

    /* ---- Spacing ---- */
    --space-xs: 0.25rem;   /* 4px */
    --space-sm: 0.5rem;    /* 8px */
    --space-md: 1rem;      /* 16px */
    --space-lg: 1.5rem;    /* 24px */
    --space-xl: 2rem;      /* 32px */
    --space-2xl: 3rem;     /* 48px */
    --space-3xl: 4rem;     /* 64px */

    /* ---- Border Radius ---- */
    --radius-sm: 0.375rem;  /* 6px */
    --radius-md: 0.5rem;    /* 8px */
    --radius-lg: 0.75rem;   /* 12px */
    --radius-xl: 1rem;      /* 16px */
    --radius-full: 9999px;

    /* ---- Shadows ---- */
    --shadow-sm: 0 1px 2px rgba(99, 102, 241, 0.04);
    --shadow-md: 0 4px 6px -1px rgba(99, 102, 241, 0.06), 0 2px 4px -2px rgba(99, 102, 241, 0.04);
    --shadow-lg: 0 10px 15px -3px rgba(99, 102, 241, 0.07), 0 4px 6px -4px rgba(99, 102, 241, 0.03);
    --shadow-xl: 0 20px 25px -5px rgba(99, 102, 241, 0.08), 0 8px 10px -6px rgba(99, 102, 241, 0.03);

    /* ---- Layout ---- */
    --container-max: 1200px;
    --container-narrow: 800px;
    --nav-height: 64px;
    --sidebar-width: 320px;

    /* ---- Transitions ---- */
    --transition-fast: 150ms ease;
    --transition-base: 200ms ease;
    --transition-slow: 300ms ease;

    /* ---- Z-Index ---- */
    --z-dropdown: 100;
    --z-sticky: 200;
    --z-overlay: 300;
    --z-modal: 400;
    --z-toast: 500;
}

/* ---- Dark Mode ---- */
[data-theme="dark"] {
    --color-primary: #818cf8;
    --color-primary-hover: #a5b4fc;
    --color-primary-light: #1e1b4b;
    --color-primary-dark: #c7d2fe;

    --color-secondary: #a78bfa;
    --color-secondary-hover: #c4b5fd;

    --color-success: #34d399;
    --color-success-light: #064e3b;
    --color-warning: #fbbf24;
    --color-warning-light: #78350f;
    --color-danger: #f87171;
    --color-danger-light: #7f1d1d;
    --color-info: #67e8f9;
    --color-info-light: #164e63;

    --color-bg: #0f0d1a;
    --color-bg-secondary: #1a1726;
    --color-bg-tertiary: #252236;
    --color-surface: #1a1726;
    --color-surface-hover: #252236;
    --color-surface-raised: #211e30;

    --color-text: #f1f0f7;
    --color-text-secondary: #a5a2b5;
    --color-text-tertiary: #6b6880;
    --color-text-inverse: #0f0d1a;

    --color-border: #2d2a3e;
    --color-border-hover: #3d3a52;
    --color-border-focus: #818cf8;

    --color-overlay: rgba(0, 0, 0, 0.7);

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