/**
 * SOLVUH Design System - CSS Variables
 * =====================================
 * Unified design tokens for the entire platform
 */

:root {
    /* ========================================
       COLOR PALETTE
       ======================================== */

    /* Primary Brand (Green) */
    --primary-50: #f0fdf4;
    --primary-100: #dcfce7;
    --primary-200: #bbf7d0;
    --primary-300: #86efac;
    --primary-400: #4ade80;
    --primary-500: #22c55e;
    --primary-600: #16a34a;
    --primary-700: #15803d;
    --primary-800: #166534;
    --primary-900: #14532d;

    /* Surface (Dark Mode) */
    --surface-50: #fafafa;
    --surface-100: #f4f4f5;
    --surface-200: #e4e4e7;
    --surface-300: #d4d4d8;
    --surface-400: #a1a1aa;
    --surface-500: #71717a;
    --surface-600: #52525b;
    --surface-700: #3f3f46;
    --surface-800: #27272a;
    --surface-850: #1f1f23;
    --surface-900: #18181b;
    --surface-925: #121214;
    --surface-950: #09090b;
    --surface-975: #050505;

    /* Agent Colors */
    --agent-claude: #6366f1;
    --agent-gemini: #a855f7;
    --agent-openai: #10b981;
    --agent-orchestrator: #3b82f6;
    --agent-architect: #8b5cf6;
    --agent-implementation: #22c55e;
    --agent-evaluator: #f59e0b;

    /* Status Colors */
    --success: #22c55e;
    --warning: #f59e0b;
    --danger: #ef4444;
    --info: #3b82f6;

    /* Score Colors */
    --score-excellent: #22c55e;  /* 9.0+ */
    --score-good: #84cc16;       /* 8.0-8.9 */
    --score-fair: #f59e0b;       /* 7.0-7.9 */
    --score-poor: #ef4444;       /* <7.0 */

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

    --font-size-xs: 0.75rem;     /* 12px */
    --font-size-sm: 0.8125rem;   /* 13px */
    --font-size-base: 0.875rem;  /* 14px */
    --font-size-md: 0.9375rem;   /* 15px */
    --font-size-lg: 1rem;        /* 16px */
    --font-size-xl: 1.125rem;    /* 18px */
    --font-size-2xl: 1.25rem;    /* 20px */
    --font-size-3xl: 1.5rem;     /* 24px */
    --font-size-4xl: 2rem;       /* 32px */

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

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

    /* ========================================
       BORDERS & RADIUS
       ======================================== */
    --radius-sm: 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;

    --border-width: 1px;

    /* ========================================
       SHADOWS
       ======================================== */
    --shadow-xs: 0 1px 2px rgba(0, 0, 0, 0.2);
    --shadow-sm: 0 1px 3px rgba(0, 0, 0, 0.3);
    --shadow-md: 0 4px 6px rgba(0, 0, 0, 0.4);
    --shadow-lg: 0 10px 15px rgba(0, 0, 0, 0.5);
    --shadow-xl: 0 20px 25px rgba(0, 0, 0, 0.6);
    --shadow-2xl: 0 25px 50px rgba(0, 0, 0, 0.7);

    /* Glow effects */
    --glow-primary: 0 0 20px rgba(34, 197, 94, 0.3);
    --glow-info: 0 0 20px rgba(59, 130, 246, 0.3);
    --glow-warning: 0 0 20px rgba(245, 158, 11, 0.3);

    /* ========================================
       Z-INDEX SCALE
       ======================================== */
    --z-base: 0;
    --z-dropdown: 100;
    --z-sticky: 200;
    --z-fixed: 300;
    --z-modal-backdrop: 400;
    --z-modal: 500;
    --z-popover: 600;
    --z-toast: 700;
    --z-tooltip: 800;

    /* ========================================
       TRANSITIONS
       ======================================== */
    --transition-fast: 150ms ease;
    --transition-base: 200ms ease;
    --transition-slow: 300ms ease;
    --transition-slower: 500ms ease;

    /* ========================================
       LAYOUT
       ======================================== */
    --sidebar-width: 16rem;        /* 256px */
    --sidebar-collapsed: 4rem;     /* 64px */
    --header-height: 3.5rem;       /* 56px */
    --right-panel-width: 20rem;    /* 320px */
    --max-content-width: 72rem;    /* 1152px */
    --max-chat-width: 56rem;       /* 896px */

    /* ========================================
       COMPONENT-SPECIFIC
       ======================================== */

    /* Cards */
    --card-bg: var(--surface-900);
    --card-border: var(--surface-800);
    --card-hover-border: var(--surface-700);

    /* Inputs */
    --input-bg: var(--surface-900);
    --input-border: var(--surface-700);
    --input-focus-border: var(--primary-500);
    --input-placeholder: var(--surface-500);

    /* Buttons */
    --btn-primary-bg: var(--primary-600);
    --btn-primary-hover: var(--primary-500);
    --btn-secondary-bg: var(--surface-800);
    --btn-secondary-border: var(--surface-700);

    /* Pipeline stages */
    --stage-pending: var(--surface-600);
    --stage-active: var(--warning);
    --stage-complete: var(--success);
    --stage-failed: var(--danger);
}

/* ========================================
   LIGHT MODE OVERRIDES
   ======================================== */
html.light {
    --surface-50: #09090b;
    --surface-100: #18181b;
    --surface-200: #27272a;
    --surface-300: #3f3f46;
    --surface-400: #52525b;
    --surface-500: #71717a;
    --surface-600: #a1a1aa;
    --surface-700: #d4d4d8;
    --surface-800: #e4e4e7;
    --surface-850: #f4f4f5;
    --surface-900: #f9fafb;
    --surface-925: #fafafa;
    --surface-950: #ffffff;
    --surface-975: #ffffff;

    --shadow-xs: 0 1px 2px rgba(0, 0, 0, 0.05);
    --shadow-sm: 0 1px 3px rgba(0, 0, 0, 0.1);
    --shadow-md: 0 4px 6px rgba(0, 0, 0, 0.1);
    --shadow-lg: 0 10px 15px rgba(0, 0, 0, 0.1);
}
