@media (max-width: 768px) {
  .navbar { flex-direction: column; gap: 12px; padding: 16px; }
  .nav-links { flex-wrap: wrap; justify-content: center; gap: 14px; font-size: 0.85rem; }
  .hero h2 { font-size: 1.5rem; }
  .cards, .resources, .stats {
    grid-template-columns: repeat(auto-fit, minmax(160px, 1fr));
    padding: 20px;
  }
  .streak-summary { flex-wrap: wrap; }
  .add-form { flex-direction: column; align-items: stretch; }
  .add-form input, .add-form select, .add-form textarea { width: 100%; }
}

@media (max-width: 480px) {
  .logo { font-size: 1.2rem; }
  .nav-links { gap: 10px; font-size: 0.78rem; }
  .dashboard-header h2, .assignment-header h2, .notes-header h2,
  .dsa-header h2, .placement-header h2, .profile-header h2 { font-size: 1.4rem; }
  .stat-card, .streak-card { padding: 14px; }
  .stat-card h3, .streak-card h3 { font-size: 1.4rem; }
  .assignment-item, .dsa-item, .note-card {
    flex-direction: column; align-items: flex-start; gap: 8px;
  }
  .profile-card, .profile-form { max-width: 90%; padding: 20px 16px; }
  .form-actions { flex-direction: column; }
}