@media (max-width: 900px) {
  .graph-node__body, .sidebar-list__item { min-height: 40px; }
  .node-title { font-size: var(--fs-xl); }
  .branch-grid { grid-template-columns: 1fr; }
  .course-grid { grid-template-columns: 1fr; }
  .node-view { touch-action: pan-y; }
}

@media (max-width: 520px) {
  .topbar { padding: 0 var(--sp-3); gap: var(--sp-2); }
  .topbar__brand span.wordmark { display: none; }
  .content-wrap { padding: var(--sp-4) var(--sp-3) var(--sp-7); }
  .node-nav { flex-direction: column; }
  .node-nav__btn { max-width: 100%; }
}

@media (hover: none) {
  .graph-node__body, .branch-card, .course-card, .quiz-option, .crumb {
    transition: none;
  }
}
