:root,body{font-family:'SUITE Variable',sans-serif}
button,input,select,textarea,dialog{font-family:inherit}
.map-pin,.route-step-pin{font-family:'SUITE Variable',sans-serif}
@media(max-width:550px){
  html{-webkit-text-size-adjust:100%;text-size-adjust:100%}
  main,.flight-main,.flight-route-panel,.field{min-width:0}
  input:not([type=checkbox]):not([type=radio]),select,textarea{font-size:16px;max-width:100%;min-height:44px}
  button{touch-action:manipulation}
  .header-actions button{min-height:40px;font-size:11px}
  #nav button{min-height:44px;font-size:13px}
  #nav{scrollbar-width:none}
  #nav::-webkit-scrollbar{display:none}
  .page-heading h2{font-size:22px;line-height:1.4}
  .page-heading p{font-size:13px;line-height:1.7}
  .flight-section,.flight-route-panel{padding:16px}
  .flight-search{gap:12px 10px}
  .flight-option{flex-wrap:wrap}
  .flight-caveat,.connection-card>p,.transit-option>p{font-size:13px;line-height:1.8}
  .route-map-toolbar button,.route-card-tools button{min-height:40px;font-size:12px}
  .route-step-content>strong{font-size:14px}
  .route-step-instruction{font-size:13px}
  .route-step-content>small,.route-step-stops{font-size:12px}
  .time-trigger{min-height:46px}
  .time-trigger>strong{font-size:16px}
  .time-options button{min-height:44px;font-size:16px}
  .time-popup-actions button{min-height:44px;font-size:13px}
  dialog{max-width:calc(100vw - 24px);max-height:calc(100dvh - 24px);overflow-y:auto}
}

/* Keep the map visible on phones as well as desktop. */
@media(max-width:850px){
 .schedule-layout{display:flex;flex-direction:column;min-height:0}
 .schedule-layout[data-mobile=list] .map-panel,.schedule-layout[data-mobile=map] .schedule-list{display:flex}
 .schedule-layout .map-panel{order:-1;min-height:0;scroll-margin-top:76px}
 .schedule-layout .schedule-list{display:block!important;max-height:none;min-height:0;scroll-margin-top:76px}
 .map-stage{flex:none;height:320px;min-height:320px}
 #map-canvas{position:absolute;height:320px;min-height:320px}
 .map-unconnected{min-height:320px}
 .mobile-switch button{min-height:44px}
}

.auto-plan-launch{gap:8px;flex-wrap:wrap}.free-route-leg{padding:14px 12px;border-top:1px solid #ddd;font-size:13px}.free-route-leg>div{display:flex;gap:8px;flex-wrap:wrap;margin-top:10px}.free-route-leg a{font-size:12px;padding:8px;border:1px solid #ddd;border-radius:4px}.routes-list{max-height:360px}.routes-list>.note{padding:12px;line-height:1.8}
