/* Phone layout only. Keep this layer last and leave desktop rules unchanged. */
@media (max-width: 760px) {
  .container { width:calc(100% - 32px); }
  .nav { min-height:64px; gap:8px; }
  .topbar .brand { min-width:0; gap:8px; }
  .topbar .brand-logo-image { width:40px; height:40px; flex-basis:40px; }
  .topbar .brand-copy strong { font-size:16px; }
  .mobile-menu summary { min-height:44px; display:flex; align-items:center; justify-content:center; }

  /* All four trust points remain visible, without a four-row banner. */
  .trustbar-inner { grid-template-columns:repeat(2,minmax(0,1fr)); gap:8px 12px; padding:12px 0; }
  /* app.css hides these with !important; retain every trust point on phones. */
  .trustbar .hide-mobile { display:flex!important; }
  .trustbar-inner > span { font-size:12px; line-height:1.6; }
  .hero { padding:28px 0 32px; }
  .hero-grid { gap:24px; }
  .hero-copy h1 { font-size:clamp(28px,7.8vw,36px); line-height:1.35; }
  .hero-copy > p { font-size:16px; line-height:1.75; }
  .hero-kicker { max-width:100%; border-radius:12px; font-size:12px; }
  .status-dot { flex-shrink:0; }
  .hero-copy .actions { grid-template-columns:repeat(2,minmax(0,1fr)); gap:8px; }
  .hero-copy .actions .btn { padding-inline:8px; font-size:14px; }
  .hero-trust { flex-wrap:wrap; gap:8px; overflow:visible; }
  .hero-trust span { flex:0 1 auto; min-width:0; white-space:normal; font-size:12px; }
  .hero-search-form { grid-template-columns:repeat(2,minmax(0,1fr)); gap:12px; }
  .hero-panel { padding:16px; box-shadow:var(--shadow-sm); }
  .hero-search-card > p { font-size:14px; line-height:1.7; margin-bottom:16px; }
  .section-heading { margin-bottom:20px; }
  .section-heading h2,.market-head h2 { font-size:clamp(24px,6.5vw,30px); line-height:1.4; }
  .section-heading p { font-size:14px; line-height:1.75; }
  .section-link,.panel-link,.feature-card > a { display:inline-flex; align-items:center; min-height:44px; }
  .listing-grid,.wanted-grid { gap:16px; }
  .listing-body { padding:16px; }
  .listing-card .plate { font-size:26px; line-height:1.45; }
  .listing-card .price { font-size:24px; margin:8px 0 12px; }
  .listing-meta { line-height:1.7; }
  .listing-card .card-action { display:flex; align-items:center; justify-content:space-between; min-height:48px; padding-top:10px; }

  /* Search and long forms: readable labels, stable tracks and generous targets. */
  .search-panel { grid-template-columns:minmax(0,1fr); padding:16px; gap:14px; }
  .search-panel .search-advanced,.search-actions { grid-column:1/-1; }
  .search-panel .search-actions { display:grid; grid-template-columns:minmax(0,1fr) auto; }
  .search-advanced summary { max-width:100%; min-height:44px; }
  .active-filters { flex-wrap:wrap; overflow:visible; }
  .filter-chip { min-width:0; max-width:100%; overflow-wrap:anywhere; }
  .field label { line-height:1.6; }
  .btn,input:not([type=checkbox]):not([type=radio]):not([type=hidden]),select { min-height:48px; }
  input:not([type=checkbox]):not([type=radio]),select,textarea { min-width:0; font-size:16px; }
  .password-toggle { min-width:48px; min-height:44px; }
  .form-step-grid { gap:18px; }
  .sell-form .form-step { padding:20px 16px; }
  .form-step-head { grid-template-columns:34px minmax(0,1fr); gap:10px; }
  .choice-card,.plate-type-card,.confirm-check { min-height:48px; }
  .auth h1 { font-size:28px; line-height:1.4; }
  .auth-trust span { font-size:12px; }
  .pagination { gap:8px; }
  .pagination-link { min-width:0; min-height:48px; padding-inline:8px; font-size:14px; }
  .account-overview-card span,.account-overview-card small { font-size:13px; line-height:1.6; }
  .listing-facts span { overflow-wrap:anywhere; }
  .mobile-card-table td { grid-template-columns:minmax(80px,.36fr) minmax(0,.64fr); }
  .mobile-card-table td .btn { white-space:normal; width:100%; }

  /* Keep floating controls above the home indicator and clear of the detail action. */
  body { padding-bottom:calc(76px + env(safe-area-inset-bottom)); }
  body.has-mobile-primary-bar { padding-bottom:calc(160px + env(safe-area-inset-bottom)); }
  .mobile-primary-bar { padding-bottom:calc(10px + env(safe-area-inset-bottom)); }
  .support-launcher { right:16px; bottom:calc(12px + env(safe-area-inset-bottom)); min-height:44px; padding:10px 14px; }
  .cookie-settings { left:16px; bottom:calc(12px + env(safe-area-inset-bottom)); font-size:13px; }
  body.has-mobile-primary-bar .support-launcher,body.has-mobile-primary-bar .cookie-preferences:not([open]) > .cookie-settings { bottom:calc(96px + env(safe-area-inset-bottom)); }
  .cookie-banner { padding-inline:16px; }
  .cookie-banner p { font-size:14px; }
  .support-chip { min-height:44px; }
  .support-body { min-height:0; overscroll-behavior:contain; }
  .footer { margin-top:24px; }
  .footer-bottom { font-size:12px; line-height:1.7; }
}

@media (max-width: 360px) {
  .container { width:calc(100% - 24px); }
  .topbar .brand-copy strong { font-size:15px; }
  .trustbar-inner { column-gap:8px; }
  .account-listing-controls,.account-listing-controls form { grid-template-columns:minmax(0,1fr)!important; }
}
