/**
 * CSS Design Tokens / Custom Properties
 * Crisis Chat Application
 */
@import url("/customization/brandColor.css");

:root {
    /* Color Palette */
    --color-primary: #26a69a;
    --color-primary-light: #4db6ac;
    --color-primary-dark: #00897b;

    /* Landing Page Color Bands */
    --color-band-middle: #a8c5a8;
    --color-band-bottom: #c8dcc8;

    --color-secondary: #6c757d;
    --color-secondary-light: #868e96;
    --color-secondary-dark: #545b62;

    --color-success: #28a745;
    --color-success-light: #48c764;
    --color-success-dark: #1e7e34;

    --color-danger: #dc3545;
    --color-danger-light: #e4606d;
    --color-danger-dark: #bd2130;

    --color-warning: #ffc107;
    --color-warning-light: #ffcd39;
    --color-warning-dark: #d39e00;

    --color-info: #17a2b8;
    --color-info-light: #3ab4c6;
    --color-info-dark: #117a8b;

    /* Neutral Colors */
    --color-white: #ffffff;
    --color-gray-100: #f8f9fa;
    --color-gray-200: #e9ecef;
    --color-gray-300: #dee2e6;
    --color-gray-400: #ced4da;
    --color-gray-500: #adb5bd;
    --color-gray-600: #6c757d;
    --color-gray-700: #495057;
    --color-gray-800: #343a40;
    --color-gray-900: #212529;
    --color-black: #000000;

    /* Message Colors */
    --color-message-sent: #e3f2fd;
    --color-message-sent-text: #1565c0;
    --color-message-received: #f5f5f5;
    --color-message-received-text: #333333;
    --color-message-system: #fff3e0;
    --color-message-system-text: #e65100;

    /* Distinct colors for User vs Agent messages */
    --color-user-message-bg: #e8f5e9;
    --color-user-message-text: #2e7d32;
    --color-agent-message-bg: #ede7f6;
    --color-agent-message-text: #5e35b1;

    /* Typography */
    --font-family-base: -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, 'Helvetica Neue', Arial, sans-serif;
    --font-family-mono: SFMono-Regular, Menlo, Monaco, Consolas, 'Liberation Mono', 'Courier New', 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-weight-light: 300;
    --font-weight-normal: 400;
    --font-weight-medium: 500;
    --font-weight-semibold: 600;
    --font-weight-bold: 700;

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

    /* Spacing */
    --spacing-0: 0;
    --spacing-1: 0.25rem;   /* 4px */
    --spacing-2: 0.5rem;    /* 8px */
    --spacing-3: 0.75rem;   /* 12px */
    --spacing-4: 1rem;      /* 16px */
    --spacing-5: 1.25rem;   /* 20px */
    --spacing-6: 1.5rem;    /* 24px */
    --spacing-8: 2rem;      /* 32px */
    --spacing-10: 2.5rem;   /* 40px */
    --spacing-12: 3rem;     /* 48px */
    --spacing-16: 4rem;     /* 64px */

    /* Border Radius */
    --radius-none: 0;
    --radius-sm: 0.25rem;   /* 4px */
    --radius-base: 0.375rem; /* 6px */
    --radius-md: 0.5rem;    /* 8px */
    --radius-lg: 0.75rem;   /* 12px */
    --radius-xl: 1rem;      /* 16px */
    --radius-2xl: 1.5rem;   /* 24px */
    --radius-full: 9999px;

    /* Shadows */
    --shadow-sm: 0 1px 2px 0 rgba(0, 0, 0, 0.05);
    --shadow-base: 0 1px 3px 0 rgba(0, 0, 0, 0.1), 0 1px 2px 0 rgba(0, 0, 0, 0.06);
    --shadow-md: 0 4px 6px -1px rgba(0, 0, 0, 0.1), 0 2px 4px -1px rgba(0, 0, 0, 0.06);
    --shadow-lg: 0 10px 15px -3px rgba(0, 0, 0, 0.1), 0 4px 6px -2px rgba(0, 0, 0, 0.05);
    --shadow-xl: 0 20px 25px -5px rgba(0, 0, 0, 0.1), 0 10px 10px -5px rgba(0, 0, 0, 0.04);

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

    /* Z-Index */
    --z-dropdown: 1000;
    --z-sticky: 1020;
    --z-fixed: 1030;
    --z-modal-backdrop: 1040;
    --z-modal: 1050;
    --z-popover: 1060;
    --z-tooltip: 1070;

    /* Container */
    --container-max-width: 1200px;
    --container-padding: var(--spacing-4);

    /* Input */
    --input-height: 2.5rem;
    --input-height-sm: 2rem;
    --input-height-lg: 3rem;
    --input-padding-x: var(--spacing-3);
    --input-border-color: var(--color-gray-300);
    --input-focus-border-color: var(--color-primary);
    --input-focus-shadow: 0 0 0 3px rgba(38, 166, 154, 0.25);

    /* Button */
    --btn-padding-x: var(--spacing-4);
    --btn-padding-y: var(--spacing-2);
    --btn-padding-x-sm: var(--spacing-3);
    --btn-padding-y-sm: var(--spacing-1);
    --btn-padding-x-lg: var(--spacing-6);
    --btn-padding-y-lg: var(--spacing-3);
}

/* Dark mode support (can be enabled later) */
@media (prefers-color-scheme: dark) {
    :root.dark-mode {
        --color-gray-100: #1a1a2e;
        --color-gray-200: #252540;
        --color-gray-300: #3a3a5c;
        --color-gray-800: #e9ecef;
        --color-gray-900: #f8f9fa;
        --color-message-sent: #1e3a5f;
        --color-message-received: #2a2a4a;
    }
}
