/* Desktop layout: ab 920px */
:root { --bottom-nav-height: 0px; }
.app-shell, .site-header__inner { width: min(var(--content), calc(100% - 44px)); }
.app-shell { padding: 38px 0 50px; }
.portal-link { display: inline-flex; }
.class-grid { grid-template-columns: repeat(auto-fit, minmax(205px, 1fr)); }
.class-card, .class-card img { min-height: 290px; }
.mode-grid { grid-template-columns: repeat(3, minmax(0, 1fr)); }
.metric-grid { grid-template-columns: repeat(4, minmax(0, 1fr)); }
.topic-grid { grid-template-columns: repeat(4, minmax(0, 1fr)); }
.settings-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
.safety-symbol-grid { grid-template-columns: repeat(3, minmax(0, 1fr)); }
.result-actions { grid-template-columns: repeat(2, minmax(0, 1fr)); }
.exam-action-row { grid-template-columns: 1fr 1fr; }
.hero-card__overlay { padding: 70px 46px 38px; }
.mobile-nav { position: static; width: min(var(--content), calc(100% - 44px)); height: auto; margin: 14px auto 0; grid-template-columns: repeat(4, minmax(120px, 1fr)); border: 1px solid var(--line); border-radius: 18px; padding: 7px; box-shadow: var(--shadow-soft); }
.mobile-nav button { min-height: 52px; grid-auto-flow: column; justify-content: center; gap: 8px; font-size: .8rem; }
.mobile-nav button span { font-size: 1.05rem; }
.question-layout--exam { grid-template-columns: minmax(0, 1fr) 280px; }
.exam-navigator { position: sticky; top: 104px; }
.question-card { padding: 28px; }

@media (min-width: 1280px) {
  .question-layout--exam { grid-template-columns: minmax(0, 1fr) 310px; gap: 22px; }
  .dashboard-hero { padding: 38px; }
}
