/* Design System Variables */
:root {
    /* Primary Brand Colors (refined) */
    --primary-color: #1e1e1e; /* deep navy */
    --secondary-color: #151515; /* darker */
    --accent-color: #f5821f; /* vivid blue */
    --highlight-color: #df3131; /* warm red accent */
    --success-color: #008250; /* emerald */
    --warning-color: #ff8c00; /* amber */

    /* Background Colors */
    --dark-bg: #151515;
    --light-bg: #faf9f7;
    --card-bg: #ffffff;
    --section-bg: #ffffff;
    
    /* Text Colors */
    --text-dark: #1e1e1e;
    --text-light: #565656;
    --text-muted: #8f8f8f;
    --text-white: #ffffff;
    --white: #ffffff;
    
    /* Border & Divider Colors */
    --border-light: #e6e2db;
    --border-medium: #d9d4cb;
    --divider: #efece6;
    
    /* Gradients */
    --gradient-primary: linear-gradient(135deg, #f5821f 0%, #fdb94e 100%);
    --gradient-secondary: linear-gradient(135deg, #df3131 0%, #e8635f 100%);
    --gradient-accent: linear-gradient(135deg, #fbb055 0%, #ffcf8f 100%);
    --gradient-hero: linear-gradient(135deg, #151515 0%, #1e1e1e 50%, #f5821f 100%);
    --gradient-card: linear-gradient(145deg, #ffffff 0%, #faf9f7 100%);
    --gradient-subtle: linear-gradient(145deg, #ffffff 0%, #efece6 100%);
    --gradient-1: linear-gradient(135deg, #f5821f 0%, #fdb94e 100%);
    --gradient-2: linear-gradient(135deg, #008250 0%, #00693f 100%);
    --gradient-3: linear-gradient(135deg, #8b6755 0%, #6b4a3a 100%);
    
    /* Shadows */
    --shadow-xs: 0 1px 2px rgba(0, 0, 0, 0.05);
    --shadow-sm: 0 2px 4px rgba(0, 0, 0, 0.06);
    --shadow-md: 0 4px 12px rgba(0, 0, 0, 0.08);
    --shadow-lg: 0 8px 25px rgba(0, 0, 0, 0.12);
    --shadow-xl: 0 20px 40px rgba(0, 0, 0, 0.15);
    --shadow-2xl: 0 25px 50px rgba(0, 0, 0, 0.25);
    
    /* Border Radius */
    --radius-xs: 4px;
    --radius-sm: 8px;
    --radius-md: 12px;
    --radius-lg: 16px;
    --radius-xl: 24px;
    --radius-2xl: 32px;
    --radius-full: 9999px;

    /* Border Radius — legacy aliases for --border-radius-* naming in style.css/pages.css */
    --border-radius-xs: var(--radius-xs);
    --border-radius-sm: var(--radius-sm);
    --border-radius-md: var(--radius-md);
    --border-radius-lg: var(--radius-lg);
    --border-radius-xl: var(--radius-xl);
    --border-radius-2xl: var(--radius-2xl);
    --border-radius-full: var(--radius-full);
    
    /* Spacing */
    --space-xs: 0.5rem;
    --space-sm: 1rem;
    --space-md: 1.5rem;
    --space-lg: 2rem;
    --space-xl: 3rem;
    --space-2xl: 4rem;
    --space-3xl: 6rem;
    
    /* Typography */
    /* Noto Sans KR을 Inter보다 앞에 두어 한글 글리프 우선 적용 (Edge에서 한글 깨짐 방지) */
    --font-sans: 'Noto Sans KR', 'Inter', -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif;
    --font-mono: 'JetBrains Mono', 'Fira Code', monospace;
    
    /* Font Sizes */
    --text-xs: 0.75rem;
    --text-sm: 0.875rem;
    --text-base: 1rem;
    --text-lg: 1.125rem;
    --text-xl: 1.25rem;
    --text-2xl: 1.5rem;
    --text-3xl: 1.875rem;
    --text-4xl: 2.25rem;
    --text-5xl: 3rem;
    --text-6xl: 3.75rem;
    
    /* Line Heights */
    --leading-tight: 1.25;
    --leading-snug: 1.375;
    --leading-normal: 1.5;
    --leading-relaxed: 1.625;
    --leading-loose: 2;
    
    /* Transitions */
    --transition-fast: 0.15s ease-out;
    --transition-base: 0.3s ease-out;
    --transition-slow: 0.5s ease-out;
    
    /* Z-Index Scale */
    --z-dropdown: 1000;
    --z-sticky: 1020;
    --z-fixed: 1030;
    --z-modal-backdrop: 1040;
    --z-modal: 1050;
    --z-popover: 1060;
    --z-tooltip: 1070;
}

/* Accessibility: Reduced motion */
@media (prefers-reduced-motion: reduce) {
    *,
    *::before,
    *::after {
        animation-duration: 0.01ms !important;
        animation-iteration-count: 1 !important;
        transition-duration: 0.01ms !important;
        scroll-behavior: auto !important;
    }
}
