@media (max-width: 1024px) {
  .footer-grid { grid-template-columns: 1fr 1fr; }
  .dashboard-grid { grid-template-columns: 1fr; }
}

@media (max-width: 768px) {
  h1 { font-size: var(--fs-3xl); }
  .nav-links { display: none; }
  .nav-toggle { display: inline-flex; }
  .book-row { grid-template-columns: 44px 1fr auto; }
  .book-row .col-status, .book-row .col-progress, .book-row .col-rating { display: none; }
  .footer-grid { grid-template-columns: 1fr 1fr; gap: var(--space-4); }
  .hero-media { min-height: 460px; }
  .stat-grid { grid-template-columns: repeat(2, 1fr); }
}

@media (max-width: 480px) {
  .container { padding-inline: var(--space-4); }
  .footer-grid { grid-template-columns: 1fr; }
  .stat-grid { grid-template-columns: 1fr 1fr; }
  h1 { font-size: var(--fs-2xl); }
  .btn-lg { padding: 0.8rem 1.4rem; }
}

/* Mobile navigation drawer */
.mobile-nav {
  position: fixed; inset: 0; z-index: 300;
  background: var(--navy-950);
  padding: var(--space-6) var(--space-5);
  display: none;
  flex-direction: column;
  gap: var(--space-5);
}
.mobile-nav.open { display: flex; }
.mobile-nav a, .mobile-nav button {
  font-family: var(--font-display); font-size: var(--fs-xl); text-align: left;
  color: var(--text-primary);
}
