/* 
 * Global CSS Variables
 * 모든 스타일에서 공통으로 사용하는 변수들을 정의
 */

:root {
  /* ===== COLORS ===== */
  /* Primary colors */
  --primary: #2c3e50;
  --primary-light: #34495e;
  --primary-gradient: linear-gradient(135deg, var(--primary) 0%, var(--primary-light) 100%);
  
  /* Secondary colors */
  --secondary: #6c757d;
  --secondary-light: #adb5bd;
  --secondary-gradient: linear-gradient(135deg, var(--secondary) 0%, var(--text-muted) 100%);
  
  /* Text colors */
  --text: #333;
  --text-light: #6c757d;
  --text-muted: #495057;
  
  /* Background colors */
  --bg: #fff;
  --bg-light: #f8f9fa;
  --bg-gray: #f1f3f4;
  
  /* Border colors */
  --border: #e9ecef;
  --border-light: #dee2e6;
  --border-dark: #ced4da;
  
  /* Shadow colors */
  --shadow: rgba(0, 0, 0, 0.1);
  --shadow-md: rgba(0, 0, 0, 0.07);
  --shadow-lg: rgba(0, 0, 0, 0.12);
  
  /* Accent colors (for specific sections) */
  --accent-research: #7c3aed;
  --accent-industry: #0ea5e9;
  --accent-hardware: #10b981;
  
  /* ===== SPACING ===== */
  --space-xs: 0.25rem;    /* 4px */
  --space-sm: 0.5rem;     /* 8px */
  --space-md: 1rem;       /* 16px */
  --space-lg: 2rem;       /* 32px */
  --space-xl: 3rem;       /* 48px */
  --space-2xl: 4rem;      /* 64px */
  
  /* ===== FONT SIZES ===== */
  --text-xs: 0.75rem;     /* 12px */
  --text-sm: 0.85rem;     /* ~13.6px */
  --text-base: 1rem;      /* 16px */
  --text-lg: 1.125rem;    /* 18px */
  --text-xl: 1.25rem;     /* 20px */
  --text-2xl: 1.5rem;     /* 24px */
  --text-3xl: 2rem;       /* 32px */
  --text-4xl: 2.5rem;     /* 40px */
  
  /* ===== LAYOUT ===== */
  --container-max: 1200px;
  --nav-height: 64px;
  
  /* ===== BREAKPOINTS ===== */
  --breakpoint-mobile: 480px;
  --breakpoint-tablet: 768px;
  --breakpoint-desktop: 1024px;
  
  /* ===== BORDER RADIUS ===== */
  --border-radius: 8px;
  --border-radius-lg: 16px;
  --border-radius-xl: 20px;
  --border-radius-full: 50px;
  
  /* ===== TRANSITIONS ===== */
  --transition: all 0.3s ease;
  --transition-fast: all 0.2s ease;
  --transition-slow: all 0.4s ease;
  
  /* ===== SHADOWS (preset combinations) ===== */
  --shadow-sm: 0 1px 2px var(--shadow);
  --shadow-card: 0 4px 6px var(--shadow-md);
  --shadow-hover: 0 10px 15px var(--shadow-lg);
  --shadow-float: 0 20px 25px rgba(0, 0, 0, 0.1);
  
  /* ===== Z-INDEX LAYERS ===== */
  --z-dropdown: 1000;
  --z-sticky: 1020;
  --z-fixed: 1030;
  --z-modal: 1040;
  --z-tooltip: 1050;
}

/* ===== UTILITY CLASSES ===== */
.container {
  max-width: var(--container-max);
  margin: 0 auto;
  padding: 0 var(--space-lg);
}

.transition {
  transition: var(--transition);
}

.shadow {
  box-shadow: var(--shadow-card);
}

.border-radius {
  border-radius: var(--border-radius);
}

.border-radius-lg {
  border-radius: var(--border-radius-lg);
}