/* Emich Trucking v9.9.23 · interfaz consolidada + distancia unificada */
:root{--v9923-wine:#8f1f3d;--v9923-wine-dark:#71182f;--v9923-border:#e3e7e9;--v9923-soft:#f7f8f9;--v9923-text:#252b2f;--v9923-muted:#737c82}
*{box-sizing:border-box}
#view,#modalbox{min-width:0}
#view .card,#view .v9-card,#view [class*="-card"],#modalbox .card{min-width:0}
#view button,#modalbox button,.top-actions button{max-width:100%;box-sizing:border-box;white-space:normal;overflow-wrap:anywhere;word-break:normal;line-height:1.15}
#view input,#view select,#view textarea,#modalbox input,#modalbox select,#modalbox textarea{max-width:100%;min-width:0;box-sizing:border-box}
#view .actions,#modalbox .actions{display:flex;flex-wrap:wrap;gap:8px;align-items:stretch}
#view .actions>button,#modalbox .actions>button{min-height:40px}
#view .section-title,#view .v9-section-head,#view [class*="-section-head"]{min-width:0;gap:12px;flex-wrap:wrap}
#view h1,#view h2,#view h3,#view h4,#modalbox h1,#modalbox h2,#modalbox h3{overflow-wrap:anywhere}

/* Navegación canónica: evita capas viejas/duplicadas y el flash Viajes->Salidas */
.mobilebar:not(.v9-mobilebar){display:none!important}
#nav button span:last-child,.v9-mobilebar button small{white-space:nowrap}

/* Fuentes de distancia: estructura legible y separada */
.v9922-km-sources{display:none!important}
.v9923-distance-panel{margin:18px 0;border:1px solid var(--v9923-border);border-radius:18px;background:#fff;padding:16px;min-width:0;box-shadow:0 5px 18px rgba(40,27,32,.035)}
.v9923-distance-head{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;margin-bottom:14px;flex-wrap:wrap}
.v9923-distance-head h3{margin:2px 0 0;font-size:1.08rem;color:var(--v9923-text)}
.v9923-distance-head p{margin:0;max-width:580px;color:var(--v9923-muted);font-size:.72rem;line-height:1.45}
.v9923-distance-stack{display:flex;flex-direction:column;gap:12px}
.v9923-distance-segment{border:1px solid #e8ebed;border-radius:15px;padding:13px;background:linear-gradient(180deg,#fff,#fcfcfd);min-width:0}
.v9923-distance-segment-head{display:flex;align-items:center;justify-content:space-between;gap:10px;flex-wrap:wrap;margin-bottom:10px}
.v9923-distance-name{display:flex;align-items:center;gap:9px;min-width:0}
.v9923-distance-name>span{display:inline-flex;align-items:center;justify-content:center;min-height:30px;padding:5px 9px;border-radius:9px;background:#f3e8ec;color:#762740;font-size:.65rem;font-weight:900;letter-spacing:.06em}
.v9923-distance-name>div{min-width:0}.v9923-distance-name b,.v9923-distance-name small{display:block}.v9923-distance-name b{font-size:.86rem}.v9923-distance-name small{margin-top:2px;color:var(--v9923-muted);font-size:.66rem;overflow-wrap:anywhere}
.v9923-health{display:inline-flex;align-items:center;min-height:30px;padding:5px 9px;border-radius:999px;background:#eef7f1;color:#2f6845;font-size:.62rem;font-weight:850;white-space:nowrap}
.v9923-health.warn{background:#fff3df;color:#80591b}
.v9923-source-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}
.v9923-source-card{min-width:0;padding:10px 11px;border-radius:11px;background:var(--v9923-soft);border:1px solid transparent}
.v9923-source-card.used{border-color:#d5b5bf;background:#fbf5f7}
.v9923-source-card small,.v9923-source-card b,.v9923-source-card em{display:block}.v9923-source-card small{color:#7b8489;font-size:.62rem}.v9923-source-card b{margin-top:3px;color:#2e3539;font-size:.86rem;overflow-wrap:anywhere}.v9923-source-card em{margin-top:3px;font-style:normal;color:#6e777c;font-size:.57rem;line-height:1.3}
.v9923-distance-foot{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-top:10px;padding-top:10px;border-top:1px solid #eef0f1;flex-wrap:wrap}
.v9923-track-meta{display:flex;gap:7px 12px;flex-wrap:wrap;color:#737c82;font-size:.61rem}.v9923-track-meta b{color:#4d565c;font-weight:800}
.v9923-distance-action{appearance:none;border:1px solid #d9dfe2;background:#fff;color:#354149;border-radius:10px;min-height:38px;padding:8px 12px;font:inherit;font-size:.7rem;font-weight:850;cursor:pointer}
.v9923-distance-action:hover{border-color:#c7cfd3;background:#fbfbfc}
.v9923-distance-action[disabled]{opacity:.45;cursor:not-allowed}
.v9923-live-dot{display:inline-block;width:7px;height:7px;border-radius:50%;background:#3d8b5f;margin-right:5px;vertical-align:1px}

/* Wialon en vivo: complemento, no duplicado confuso */
.v693-gps-inline,.v699-inline-live .v693-gps-inline{border:1px solid #e4e7e9!important;border-radius:14px!important;background:#fff!important;padding:12px!important;min-width:0!important}
.v693-gps-head{gap:10px!important;flex-wrap:wrap!important}.v693-gps-head>div{min-width:0}.v693-gps-head b{font-size:.82rem!important}.v693-gps-head span{white-space:normal!important;overflow-wrap:anywhere!important}
.v693-gps-grid{display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:8px!important}
.v693-gps-grid>div{min-width:0!important;padding:9px 10px!important;border-radius:10px!important;background:#f7f8f9!important;border:0!important}
.v693-gps-grid span,.v693-gps-grid small{font-size:.62rem!important;color:#7b8388!important}.v693-gps-grid b{display:block!important;margin-top:3px!important;font-size:.82rem!important;overflow-wrap:anywhere!important}
.v693-gps-meta{margin-top:8px!important;display:flex!important;gap:6px 12px!important;flex-wrap:wrap!important;font-size:.64rem!important;color:#6f787d!important}
.v9923-live-compare{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-top:8px}.v9923-live-compare>span{padding:8px 10px;border-radius:10px;background:#fbf5f7;min-width:0}.v9923-live-compare small,.v9923-live-compare b{display:block}.v9923-live-compare small{font-size:.6rem;color:#7a8287}.v9923-live-compare b{margin-top:2px;font-size:.76rem;color:#762740;overflow-wrap:anywhere}

/* Consolidación visual transversal */
.btn,.v9-btn,.v9919-mini,.v9919-program,.v9920-primary,.v9920-secondary{border-radius:11px!important}
.btn.primary,.v9-btn.primary,.v9919-mini.primary,.v9919-program,.v9920-primary{background:var(--v9923-wine)!important;border-color:var(--v9923-wine)!important;color:#fff!important}
.btn.danger,.v9-btn.danger{border-color:#dcb7c1!important}
#view .tablewrap,#view .v9-tablewrap,#view .v9921-table-wrap{max-width:100%;min-width:0}
#view table{max-width:100%}
#modalbox{max-width:min(980px,calc(100vw - 28px))!important}
#modalbox .formgrid,#modalbox [class*="-grid"]{min-width:0}

/* Reduce explicaciones heredadas redundantes sin ocultar datos funcionales */
.v9923-legacy-note{display:none!important}

@media(max-width:980px){
  .v9923-source-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
  .v693-gps-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}
}
@media(max-width:720px){
  .v9923-distance-panel{padding:13px}
  .v9923-distance-head{flex-direction:column;gap:6px}
  .v9923-source-grid{grid-template-columns:1fr 1fr}
  .v9923-source-card:last-child{grid-column:1/-1}
  .v9923-distance-foot{align-items:stretch;flex-direction:column}
  .v9923-distance-action{width:100%}
  .v693-gps-grid,.v9923-live-compare{grid-template-columns:1fr 1fr!important}
  #view .actions,#modalbox .actions{display:grid!important;grid-template-columns:1fr 1fr;width:100%}
  #view .actions>button,#modalbox .actions>button{width:100%}
}
@media(max-width:460px){
  .v9923-source-grid,.v693-gps-grid,.v9923-live-compare{grid-template-columns:1fr!important}
  .v9923-source-card:last-child{grid-column:auto}
  #view .actions,#modalbox .actions{grid-template-columns:1fr}
  .top-actions{gap:6px!important}.top-actions .btn,.top-actions .v9-btn{min-width:0!important;padding-left:10px!important;padding-right:10px!important}
}

/* Tabs móviles: todas las opciones quedan dentro de pantalla; no hay controles "fuera" del viewport. */
@media(max-width:720px){
  #view .v9-tabs,#view .v61-config-tabs,#view .catalog-tabs.admin-tabs,#view .v5-tabs{
    display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:7px!important;overflow:visible!important;width:100%!important;max-width:100%!important;padding:0!important;
  }
  #view .v9-tabs>button,#view .v61-config-tabs>button,#view .catalog-tabs.admin-tabs>button,#view .v5-tabs>button{
    width:100%!important;min-width:0!important;max-width:100%!important;justify-content:center!important;text-align:center!important;white-space:normal!important;overflow-wrap:anywhere!important;
  }
}
@media(max-width:360px){
  #view .v9-tabs,#view .v61-config-tabs,#view .catalog-tabs.admin-tabs,#view .v5-tabs{grid-template-columns:1fr!important}
}
