/* Auth + onboarding — compact mobile */

@media (max-width: 768px) {
  #cabLogin.cab-auth {
    content-visibility: visible;
    contain-intrinsic-size: auto;
    align-items: flex-start;
    justify-content: flex-start;
    padding: max(12px, env(safe-area-inset-top)) 12px 24px;
    min-height: calc(100dvh - 56px);
    overflow-y: auto;
    -webkit-overflow-scrolling: touch;
  }

  #cabLogin > .cab-auth__box {
    width: 100%;
    max-width: 100%;
    min-width: 0;
    box-sizing: border-box;
  }

  #cabLogin .cab-auth__box input:not([type="checkbox"]) {
    min-height: 42px;
  }

  #cabLogin .cab-auth__box .btn {
    min-height: 42px;
    font-size: 0.82rem;
    white-space: normal;
  }

  .cab-onboarding__box {
    padding: 20px 16px;
    border-radius: 18px;
  }

  .cab-onboarding__title { font-size: 1.15rem; }
  .cab-onboarding__sub { font-size: 0.78rem; }
}

@media (max-width: 480px) {
  #cabLogin.cab-auth { padding-inline: 10px; }

  #cabLogin > .cab-auth__box {
    padding: 16px 14px 14px;
    gap: 12px;
    border-radius: 16px;
  }

  #cabLogin .cab-auth__head { gap: 6px; }
  #cabLogin .cab-auth__logo { font-size: 0.88rem; }
  #cabLogin .cab-auth__sub { font-size: 0.72rem; }
  #cabLogin .cab-auth__box h2 { font-size: 1.1rem; }
  #cabLogin .cab-auth__box form { gap: 8px; }

  #cabLogin .cab-auth__box input:not([type="checkbox"]) {
    padding: 10px 11px;
    font-size: 0.84rem;
    min-height: 40px;
  }

  #cabLogin .cab-auth__box .legal-consent {
    font-size: 0.68rem;
    line-height: 1.35;
  }

  #cabLogin .cab-auth__hint,
  #cabLogin .cab-auth__note {
    font-size: 0.7rem;
    line-height: 1.4;
  }
}
