/* Each desktop data row becomes one readable card on phones. */
.cell-content{min-width:0;overflow-wrap:anywhere}
@media(max-width:680px){
  input:not([type=checkbox]),select,textarea{font-size:16px;max-width:100%}
  .route-edit select,.route-edit input{font-size:16px}
  .nav-button{min-height:44px}
  button{min-height:46px}
  .toolbar{flex-wrap:wrap}
  .toolbar>.primary{flex:1;min-width:140px}
  .date-label{flex:1}
  .date-label input{width:100%;font-size:16px}
  .panel.table-scroll{border:0;background:transparent;box-shadow:none;overflow:visible}
  .table-scroll table,.table-scroll tbody{display:block;width:100%}
  .table-scroll thead{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}
  .table-scroll tbody>tr{display:block;background:#fff;border:1px solid var(--line);border-radius:12px;padding:.65rem 1rem;margin-bottom:.8rem;box-shadow:0 2px 4px #17294a03}
  .table-scroll td{display:grid;grid-template-columns:minmax(80px,30%) minmax(0,1fr);gap:1rem;align-items:start;border:0;border-bottom:1px solid #f0f3f8;padding:.7rem 0;font-size:.94rem}
  .table-scroll td:last-child{border-bottom:0}
  .table-scroll td:before{content:attr(data-label);font-size:.79rem;color:#8592a7;line-height:1.5;overflow-wrap:normal}
  .table-scroll tr:hover td{background:transparent}
  .cell-content{width:100%}
  .cell-content input[type=checkbox]{width:24px;height:24px;margin:3px 0}
  .cell-content select{max-width:100%}
  .cell-content small{font-size:.8rem;line-height:1.6}
  .route-edit{min-width:0;width:100%}
  .route-edit strong{font-size:.875rem}
  .inline{align-items:stretch}
  .inline>select,.inline>input,.inline>button{min-width:0;max-width:100%}
  .inline>select,.inline>input{flex-basis:100%}
  .inline>button{flex:1 1 auto}
  .candidate{align-items:flex-start;flex-wrap:wrap}
  .candidate>button{width:100%}
  .remote-screen{overscroll-behavior:contain}
  #provider-screen{min-width:700px;width:100%}
  #login-dialog .remote-screen{max-height:50svh;overflow:auto;touch-action:pan-x pan-y}
  #login-dialog>p{font-size:.875rem}
  .dialog-heading h2{font-size:1.15rem}
  .compact-actions{width:100%}
  .compact-actions button{flex:1}
  .section-bar .muted{font-size:.875rem}
  .search{font-size:16px!important}
}
@media(max-width:360px){
  .stats{grid-template-columns:1fr 1fr}
  .stat{padding:.8rem}.stat-label{font-size:.75rem}
  .table-scroll td{grid-template-columns:80px minmax(0,1fr);gap:.6rem}
  .table-scroll tbody>tr{padding:.5rem .75rem}
}

.saved-driver-link{border-top:1px solid var(--line,#dce3ec);padding:16px 0}.saved-driver-link input{width:100%;margin-top:10px}.nav-link{display:inline-flex;align-items:center;justify-content:center;min-height:44px;border-radius:12px;padding:10px 16px;text-decoration:none;background:#eaf0f9;color:#173764;font-weight:700}.saved-driver-link .inline{flex-wrap:wrap}
