/* ===== Base Styles ===== */
body {
  background: var(--bg);
  color: var(--text-primary);
  font-family: var(--font-body);
  font-size: 14px;
  font-weight: 400;
  transition: background var(--transition-base), color var(--transition-base);
}

a {
  color: var(--text-primary);
  transition: color var(--transition-fast), opacity var(--transition-fast);
}

a:hover {
  opacity: 0.8;
}

h1 {
  font-family: var(--font-heading);
  font-size: 2.4rem;
  font-weight: 700;
  color: var(--text-primary);
}

h2 {
  font-family: var(--font-heading);
  font-size: 1.5rem;
  font-weight: 600;
  color: var(--text-primary);
  margin-bottom: var(--space-lg);
}

h3 {
  font-family: var(--font-heading);
  font-size: 1.15rem;
  font-weight: 600;
  color: var(--text-primary);
  margin-bottom: var(--space-sm);
}

h4 {
  font-family: var(--font-heading);
  font-size: 1rem;
  font-weight: 600;
}

p {
  color: var(--text-secondary);
  line-height: 1.8;
  font-size: 0.875rem;
}

/* Custom Scrollbar */
::-webkit-scrollbar {
  width: 6px;
}

::-webkit-scrollbar-track {
  background: var(--scrollbar-track);
}

::-webkit-scrollbar-thumb {
  background: var(--scrollbar-thumb);
  border-radius: var(--radius-full);
}

/* Selection */
::selection {
  background: var(--accent);
  color: #fff;
}
