/* ==========================================================================
   SalesFlowPro - Global Design System (Fixed Theme)
   ========================================================================== */

:root {
    /* Colors - Standardized Navy & Blue Palette */
    --color-primary: #1e3a8a;       /* Navy Blue */
    --color-primary-light: #3b82f6; /* Blue Accent */
    --color-primary-dark: #172554;  /* Deep Navy */
    
    /* Backgrounds - Unified Surface Colors */
    --color-bg: #F8F9FA;            /* Light Gray Surface */
    --color-surface: #FFFFFF;       /* Pure White Card/Sidebar */
    --color-border: #E5E7EB;        /* Soft Border */
    
    /* Text - Optimized for Legibility */
    --color-text-main: #333333;     /* Main Body Text */
    --color-text-sub: #4A4A4A;      /* Subtitles & Descriptions */
    --color-text-muted: #6B7280;    /* Muted Text */
    --color-text-white: #FFFFFF;
    
    /* Typography - Fixed Scales */
    --font-main: 'Pretendard', system-ui, -apple-system, sans-serif;
    --size-title: 28px;
    --size-subtitle: 20px;
    --size-body: 16px;
    --size-small: 14px;
    
    /* Spacing & Components */
    --radius-xl: 1rem;              /* 16px */
    --radius-lg: 0.75rem;           /* 12px */
    --radius-md: 0.5rem;            /* 8px */
    --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);
}

/* Global Reset & Base Styles */
* {
    margin: 0;
    padding: 0;
    box-sizing: border-box;
}

html, body {
    font-family: var(--font-main) !important;
    background-color: var(--color-bg) !important;
    color: var(--color-text-main);
    line-height: 1.5;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
}

/* Typography Standards */
h1, .main-title {
    font-size: var(--size-title) !important;
    font-weight: 700 !important;
    color: var(--color-primary) !important;
    letter-spacing: -0.025em;
}

h2, .sub-title {
    font-size: var(--size-subtitle) !important;
    font-weight: 600 !important;
    color: var(--color-text-main) !important;
}

p, .body-text {
    font-size: var(--size-body) !important;
    color: var(--color-text-sub);
}

.small-text {
    font-size: var(--size-small) !important;
    color: var(--color-text-muted);
}

/* Component Rules - Fixed Side Effects */
.btn-primary {
    background-color: var(--color-primary) !important;
    color: var(--color-text-white) !important;
    border-radius: var(--radius-md) !important;
    padding: 0.625rem 1.25rem !important;
    font-weight: 600 !important;
    transition: all 0.2s ease !important;
    border: none !important;
    cursor: pointer;
}

.btn-primary:hover {
    opacity: 0.9;
    transform: translateY(-1px);
}

/* Navigation Overrides */
.nav-link.active, .active {
    background-color: #eff6ff !important;
    color: var(--color-primary) !important;
}

/* Scrollbar Customization */
::-webkit-scrollbar {
    width: 8px;
}
::-webkit-scrollbar-track {
    background: var(--color-bg);
}
::-webkit-scrollbar-thumb {
    background: #D1D5DB;
    border-radius: 4px;
}
::-webkit-scrollbar-thumb:hover {
    background: #9CA3AF;
}
