/* Mobile / coarse-pointer hit targets ≥ 44px without changing desktop density. */

@media (max-width: 900px), (pointer: coarse) {
  .theme-button,
  .search-button,
  .mobile-menu-button,
  .palette-option,
  .palette-hint-popover__btn {
    box-sizing: border-box;
    min-width: 44px;
    min-height: 44px;
  }

  .palette-option {
    width: 44px;
    height: 44px;
  }

  .palette-option i {
    width: 18px;
    height: 18px;
  }

  .exam-switch a {
    box-sizing: border-box;
    min-height: 44px;
    min-width: 44px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    padding-inline: 12px;
  }

  .sec-theme {
    min-width: 44px;
    min-height: 44px;
    height: 44px;
  }

  .sec-themes {
    gap: 8px;
  }

  .sec-btn,
  .sec-iconbtn,
  .sec-icon-btn,
  .sec-topbar button,
  .sec-sidebar a,
  .sec-sidebar button,
  .sec-students__tab,
  .sec-search {
    box-sizing: border-box;
    min-height: 44px;
  }

  .sec-btn.is-icon,
  .sec-iconbtn,
  .sec-icon-btn {
    min-width: 44px;
    width: 44px;
    height: 44px;
  }

  .sec-students__tab {
    min-width: 44px;
    padding-inline: 12px;
  }

  .account-ui-btn,
  .login-btn,
  .login-button,
  button.toggle-password {
    box-sizing: border-box;
    min-height: 44px;
  }
}
