/**
 * Base CSS Styles
 * Fundamental styles, resets, and typography
 */

/* Typography */
body {
  font-family: 'Inter', -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, 'Helvetica Neue', Arial, sans-serif;
  line-height: 1.6;
  color: var(--text-primary);
  background-color: var(--bg-primary);
  transition: background-color var(--transition-normal), color var(--transition-normal);
  font-feature-settings: 'kern' 1, 'liga' 1;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}

/* Enhanced Typography */
h1, h2, h3, h4, h5, h6 {
  font-weight: var(--font-weight-bold);
  line-height: 1.2;
  margin-bottom: var(--spacing-md);
  color: var(--text-primary);
}

h1 { font-size: var(--font-size-3xl); }
h2 { font-size: var(--font-size-2xl); }
h3 { font-size: var(--font-size-xl); }
h4 { font-size: var(--font-size-lg); }
h5 { font-size: var(--font-size-base); }
h6 { font-size: var(--font-size-sm); }

p {
  margin-bottom: var(--spacing-md);
  color: var(--text-secondary);
}

a {
  color: var(--primary-600);
  text-decoration: none;
  transition: color var(--transition-fast);
}

a:hover {
  color: var(--primary-700);
  text-decoration: underline;
}

/* Enhanced navbar clearance for glassmorphism design */
body {
  padding-top: 0;
}

.main-content {
  padding-top: 100px; /* Increased for better clearance with enhanced navbar */
  position: relative;
}

@media (max-width: 768px) {
  .main-content {
    padding-top: 80px; /* Reduced padding on mobile for more content space */
  }
}

/* Enhanced Container */
.container, .container-fluid {
  padding-left: var(--spacing-md);
  padding-right: var(--spacing-md);
}

@media (min-width: 1200px) {
  .container {
    max-width: 1140px;
  }
}

/* Custom scrollbar */
::-webkit-scrollbar {
  width: 8px;
  height: 8px;
}

::-webkit-scrollbar-track {
  background: var(--gray-100);
  border-radius: var(--radius-md);
}

::-webkit-scrollbar-thumb {
  background: var(--gray-400);
  border-radius: var(--radius-md);
}

::-webkit-scrollbar-thumb:hover {
  background: var(--gray-500);
}

/* Dark mode scrollbar */
.dark-mode ::-webkit-scrollbar-track {
  background: var(--gray-800);
}

.dark-mode ::-webkit-scrollbar-thumb {
  background: var(--gray-600);
}

.dark-mode ::-webkit-scrollbar-thumb:hover {
  background: var(--gray-500);
}

/* Responsive adjustments */
@media (max-width: 768px) {
  .container, .container-fluid {
    padding-left: var(--spacing-sm);
    padding-right: var(--spacing-sm);
  }
  
  body {
    font-size: var(--font-size-sm);
  }
}