/**
 * Design Token CSS Custom Properties
 * Adobe-style UI Optimization for 交立方 AI 平台
 * 
 * All design values are defined as CSS custom properties for easy theming and consistency.
 * These values should be used throughout the application instead of hardcoded values.
 */

:root {
  /* ========================================
     COLOR TOKENS
     ======================================== */
  
  /* Primary Brand Colors (6-level scale) */
  --color-primary-50: #EFF6FF;
  --color-primary-100: #DBEAFE;
  --color-primary-200: #BFDBFE;
  --color-primary-300: #93C5FD;
  --color-primary-400: #60A5FA;
  --color-primary-500: #3B82F6;
  --color-primary-600: #2563EB;
  --color-primary-700: #1D4ED8;
  --color-primary-800: #1E40AF;
  --color-primary-900: #1E3A8A;
  
  /* Neutral Colors */
  --color-neutral-50: #F8FAFC;
  --color-neutral-100: #F1F5F9;
  --color-neutral-200: #E2E8F0;
  --color-neutral-300: #CBD5E1;
  --color-neutral-400: #94A3B8;
  --color-neutral-500: #64748B;
  --color-neutral-600: #475569;
  --color-neutral-700: #334155;
  --color-neutral-800: #1E293B;
  --color-neutral-900: #0F172A;
  
  /* Success Colors */
  --color-success-50: #F0FDF4;
  --color-success-100: #DCFCE7;
  --color-success-200: #BBF7D0;
  --color-success-300: #86EFAC;
  --color-success-400: #4ADE80;
  --color-success-500: #22C55E;
  --color-success-600: #16A34A;
  
  /* Warning Colors */
  --color-warning-50: #FFFBEB;
  --color-warning-100: #FEF3C7;
  --color-warning-200: #FDE68A;
  --color-warning-300: #FCD34D;
  --color-warning-400: #FBBF24;
  --color-warning-500: #F59E0B;
  --color-warning-600: #D97706;
  
  /* Error Colors */
  --color-error-50: #FEF2F2;
  --color-error-100: #FEE2E2;
  --color-error-200: #FECACA;
  --color-error-300: #FCA5A5;
  --color-error-400: #F87171;
  --color-error-500: #EF4444;
  --color-error-600: #DC2626;
  
  /* Semantic Background Colors (Dark Theme) */
  --color-bg-main: #0F172A;
  --color-bg-panel: #1E293B;
  --color-bg-control: #334155;
  --color-bg-hover: #475569;
  --color-bg-active: #64748B;
  
  /* Border Colors */
  --color-border: #334155;
  --color-border-hover: #475569;
  
  /* Semantic Text Colors */
  --color-text-primary: #F1F5F9;
  --color-text-secondary: #94A3B8;
  --color-text-disabled: #64748B;
  --color-text-inverse: #0F172A;
  
  /* ========================================
     SPACING TOKENS (8px Grid System)
     ======================================== */
  
  --spacing-xs: 4px;
  --spacing-sm: 8px;
  --spacing-md: 16px;
  --spacing-lg: 24px;
  --spacing-xl: 32px;
  --spacing-xxl: 48px;
  
  /* ========================================
     TYPOGRAPHY TOKENS
     ======================================== */
  
  /* Font Families */
  --font-family-primary: Inter, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;
  --font-family-mono: "SF Mono", Monaco, "Cascadia Code", "Roboto Mono", Consolas, "Courier New", monospace;
  
  /* Font Sizes */
  --font-size-xs: 12px;
  --font-size-sm: 14px;
  --font-size-md: 16px;
  --font-size-lg: 18px;
  --font-size-xl: 20px;
  --font-size-xxl: 24px;
  
  /* Font Weights */
  --font-weight-regular: 400;
  --font-weight-medium: 500;
  --font-weight-semibold: 600;
  --font-weight-bold: 700;
  
  /* Line Heights */
  --line-height-tight: 1.25;
  --line-height-normal: 1.5;
  --line-height-relaxed: 1.75;
  
  /* ========================================
     BORDER RADIUS TOKENS
     ======================================== */
  
  --border-radius-sm: 4px;
  --border-radius-md: 8px;
  --border-radius-lg: 12px;
  --border-radius-full: 9999px;
  
  /* ========================================
     SHADOW TOKENS
     ======================================== */
  
  --shadow-sm: 0 1px 2px 0 rgba(0, 0, 0, 0.05);
  --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);
  
  /* ========================================
     TRANSITION TOKENS
     ======================================== */
  
  --transition-fast: 150ms;
  --transition-normal: 300ms;
  --transition-slow: 500ms;
  --transition-easing: cubic-bezier(0.4, 0, 0.2, 1);
  
  /* ========================================
     LAYOUT DIMENSION TOKENS
     ======================================== */
  
  --layout-nav-height: 56px;
  --layout-function-panel-width: 280px;
  --layout-function-panel-collapsed: 64px;
  --layout-export-panel-width: 320px;
  --layout-export-panel-collapsed: 64px;
  --layout-timeline-height: 200px;
  --layout-min-clickable: 48px;
  --layout-function-card-height: 56px;
  --layout-form-control-height: 36px;
  --layout-view-control-height: 32px;
  --layout-primary-button-height: 44px;
  --layout-primary-button-min-width: 160px;
}

/* ========================================
   LIGHT THEME OVERRIDES (Optional)
   ======================================== */

[data-theme="light"] {
  /* Background Colors */
  --color-bg-main: #F8FAFC;
  --color-bg-panel: #FFFFFF;
  --color-bg-control: #F1F5F9;
  --color-bg-hover: #E2E8F0;
  
  /* Text Colors */
  --color-text-primary: #0F172A;
  --color-text-secondary: #475569;
  --color-text-disabled: #94A3B8;
  --color-text-inverse: #F1F5F9;
}
