/* Small-screen controls share one clear icon size and touch rhythm. */
@media (max-width: 680px) {
  .masthead { padding-left: 16px; padding-right: 16px; }
  .header-actions .account-button svg,
  .header-actions .icon-button svg { width: 22px; height: 22px; stroke-width: 2; }
  .language-switch { min-width: 44px; min-height: 44px; }
  .global-search input,
  .global-search input::placeholder { font-size: 15px; }
  .search-submit svg,
  .search-clear svg { width: 21px; height: 21px; stroke-width: 2; }

  .topup-form {
    grid-template-columns: minmax(0, .85fr) minmax(0, 1.15fr);
    grid-template-areas: "amount recipient" "pay pay" "status status" "terms terms";
    gap: 9px 10px;
  }
  .topup-tabs button { font-size: 14px; }
  .topup-tabs img,
  .topup-tabs svg { width: 20px; height: 20px; }
  .topup-field { min-height: 74px; }
  .topup-field > span { font-size: 12px; }
  .topup-field input { font-size: 18px; }
  .topup-field input::placeholder { font-size: 13px; }
  .topup-pay { min-height: 54px; font-size: 16px; }
  .topup-status { grid-area: status; font-size: 13px; line-height: 1.5; }
  .topup-terms { grid-area: terms; font-size: 13px; min-height: 44px; }
  .topup-terms svg { width: 16px; height: 16px; }
  .topup-help summary,
  .topup-purchase-help { font-size: 12px; min-height: 44px; }

  .mobile-nav { padding-inline: 4px; }
  .mobile-nav a,
  .mobile-nav button { min-height: 54px; font-size: 11px; gap: 4px; }
  .mobile-nav svg { width: 23px; height: 23px; stroke-width: 2; }
  .mobile-nav .is-active { color: var(--ink); }
  .mobile-nav .is-active svg { color: var(--red); }

  .product-route .product-back svg,
  .product-route .product-page-actions svg,
  .product-route .checkout-pay svg { width: 20px; height: 20px; stroke-width: 2; }
  .store-dialog > header .icon-button { min-width: 44px; min-height: 44px; }
  .store-dialog > header .icon-button svg { width: 21px; height: 21px; stroke-width: 2; }
}

@media (max-width: 359px) {
  .topup-form { grid-template-columns: minmax(0, 1fr); grid-template-areas: "amount" "recipient" "pay" "status" "terms"; }
  .topup-field { min-height: 66px; }
  .topup-tabs button { font-size: 12px; padding-inline: 6px; }
  .mobile-nav a,
  .mobile-nav button { font-size: 10px; }
}
