/* Phone and tablet refinements shared by the public site and account screens. */
.auth-toolbar { position: absolute; top: 12px; left: 24px; right: 22px; z-index: 30; display: flex; align-items: center; justify-content: space-between; gap: 16px; }
.auth-back { color: var(--mut); font-size: 14px; font-weight: 600; min-height: 44px; display: inline-flex; align-items: center; }
.auth-toolbar .lang button { min-width: 44px; min-height: 44px; }
@media (max-width: 900px) {
  body { min-height: 100svh; background-attachment: scroll; }
  .field input, .field select, .field textarea, .coverage-search input { min-height: 48px; font-size: 16px; }
  .auth-toolbar { position: relative; top: auto; left: auto; right: auto; padding: 12px 20px; }
  .auth, body[data-page="create"] .auth { min-height: 0; padding: 28px 20px 40px; align-items: start; }
  .guide-rail { top: 69px; }
  .guide-rail nav a { min-height: 48px; }
  .matrix-wrap, .adapter-table-wrap { min-width: 0; max-width: 100%; overscroll-behavior-x: contain; }
}
@media (max-width: 680px) {
  body { -webkit-text-size-adjust: 100%; }
  .wrap { padding-inline: max(20px, env(safe-area-inset-left)) max(20px, env(safe-area-inset-right)); }
  .btn { min-height: 48px; white-space: normal; line-height: 1.4; }
  .btn.sm { min-height: 44px; }
  .field input, .field select, .field textarea, .coverage-search input { min-height: 48px; font-size: 16px; }
  .field textarea { min-height: 140px; }
  .field, .split > *, .acct-grid > *, .grid > *, .contact-line > div { min-width: 0; }
  .page-head { padding: 32px 0 24px; }
  .page-head h1 { font-size: clamp(29px, 8.2vw, 42px); line-height: 1.15; overflow-wrap: break-word; }
  .page-head .lede { font-size: 15px; line-height: 1.7; }
  .eyebrow { font-size: 10px; letter-spacing: .1em; }
  .prerelease-banner { font-size: 11px; line-height: 1.5; padding: 10px 20px; }
  .prose { overflow-wrap: anywhere; }
  .prose p, .prose li { font-size: 14px; line-height: 1.8; }
  .pricing { grid-template-columns: 1fr; gap: 24px; }
  .price-card { padding: 24px; }
  .price-card .amt { flex-wrap: wrap; }
  .matrix { min-width: 640px; }
  .matrix td, .matrix th { padding: 14px; font-size: 13px; }
  .matrix th:first-child, .matrix td:first-child { position: sticky; left: 0; z-index: 1; width: 160px; min-width: 160px; max-width: 160px; background: #151219; box-shadow: 1px 0 var(--hair); overflow-wrap: anywhere; }
  .account-section .matrix td:first-child { position: static; min-width: 0; max-width: none; width: auto; background: transparent; box-shadow: none; }
  .contact-line { align-items: flex-start; }
  .contact-line a, .contact-line span { overflow-wrap: anywhere; }
  .faq summary, .adapter-setup summary, .guide-disclosure > summary { min-height: 48px; }
  .docs-shortcuts b { font-size: 12px; overflow-wrap: anywhere; }
  .guide-section-head p, .guide-section-intro, .guide-tech-card p, .guide-help p { font-size: 14px; }
  .guide-section-intro { margin-left: 0; }
  .features-intro h1 { font-size: clamp(29px, 8vw, 38px); overflow-wrap: break-word; }
  .guide-start-actions { gap: 12px; align-items: stretch; flex-direction: column; }
  .guide-start-actions a { min-height: 44px; display: inline-flex; align-items: center; }
  .guide-help .btn { width: 100%; }
  .auth-toolbar { position: relative; top: auto; left: auto; right: auto; padding: 12px 20px; }
  .auth, body[data-page="create"] .auth { min-height: 0; padding: 28px 20px 40px; align-items: start; }
  .auth-inline .check { min-height: 44px; align-items: center; }
  .auth-card { min-width: 0; }
  .auth-inline { gap: 12px; flex-wrap: wrap; }
  .auth-inline a, .auth-foot a { display: inline-flex; align-items: center; min-height: 44px; }
  .lang.floating { top: max(12px, env(safe-area-inset-top)); right: max(16px, env(safe-area-inset-right)); }
  .lang.floating button { min-width: 44px; min-height: 44px; }
  .billing-dialog { max-height: calc(100dvh - 24px); }
  .billing-dialog .billing-close { min-width: 44px; min-height: 44px; }
  footer .foot { grid-template-columns: repeat(2,minmax(0,1fr)); gap: 28px 20px; }
  footer .foot > div:first-child { grid-column: 1 / -1; }
  footer .foot .about { max-width: 360px; font-size: 13px; }
  footer .foot h5 { margin-bottom: 8px; }
  footer .foot a:not(.logo) { display: flex; align-items: center; min-height: 44px; padding-block: 8px; margin: 0; font-size: 12px; }
  footer .socials { width: auto; display: flex; gap: 12px; }
  footer .socials a { min-width: 44px; min-height: 44px; }
  footer .foot-bot { align-items: flex-start; flex-direction: column; gap: 20px; padding-bottom: max(24px, env(safe-area-inset-bottom)); }
}
@media (hover: none) {
  .card:hover, .price-card:hover { transform: none; }
}
@media (prefers-reduced-motion: reduce) {
  html { scroll-behavior: auto; }
}
