

@font-face{
  font-family:'Archivo';
  font-style:normal;
  font-weight:400 900;
  font-stretch:62% 125%;
  font-display:swap;
  src:url(fuentes/archivo-400900-latin-ext.woff2) format('woff2');
  unicode-range:U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
@font-face{
  font-family:'Archivo';
  font-style:normal;
  font-weight:400 900;
  font-stretch:62% 125%;
  font-display:swap;
  src:url(fuentes/archivo-400900-latin.woff2) format('woff2');
  unicode-range:U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
@font-face{
  font-family:'IBM Plex Mono';
  font-style:normal;
  font-weight:500;
  font-display:swap;
  src:url(fuentes/ibm-plex-mono-500-latin-ext.woff2) format('woff2');
  unicode-range:U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
@font-face{
  font-family:'IBM Plex Mono';
  font-style:normal;
  font-weight:500;
  font-display:swap;
  src:url(fuentes/ibm-plex-mono-500-latin.woff2) format('woff2');
  unicode-range:U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
@font-face{
  font-family:'IBM Plex Mono';
  font-style:normal;
  font-weight:600;
  font-display:swap;
  src:url(fuentes/ibm-plex-mono-600-latin-ext.woff2) format('woff2');
  unicode-range:U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
@font-face{
  font-family:'IBM Plex Mono';
  font-style:normal;
  font-weight:600;
  font-display:swap;
  src:url(fuentes/ibm-plex-mono-600-latin.woff2) format('woff2');
  unicode-range:U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}


:root{
  --bg:#e6e4de; --surface:#f7f6f2; --surface-2:#edebe5;
  --ink:#15171b; --ink-2:#4a4d54; --ink-3:#62646a;
  --line:#c9c6bd; --line-strong:#a9a69c;
  --ocre:#c58a12; --ocre-ink:#7d5605; --ocre-soft:#f5ecd6;
  --alto:#ae3826; --alto-soft:#f3ddd8;
  --ok:#2c6b4f; --ok-soft:#dde9e2;
  --max:960px;
  --r:2px;
  --sombra-barra:rgba(21,23,27,.3);
}
@media (prefers-color-scheme:dark){
  :root:not([data-theme="light"]){
    --bg:#121317; --surface:#1a1c21; --surface-2:#22252b;
    --ink:#e8e6e0; --ink-2:#a9aab0; --ink-3:#8a8d95;
    --line:#32353c; --line-strong:#474b53;
    --ocre:#e0a52c; --ocre-ink:#e8b449; --ocre-soft:#33290f;
    --alto:#e66850; --alto-soft:#3a201b;
    --ok:#59a882; --ok-soft:#1b2f26;
    --sombra-barra:rgba(0,0,0,.65);
  }
}
:root[data-theme="dark"]{
  --bg:#121317; --surface:#1a1c21; --surface-2:#22252b;
  --ink:#e8e6e0; --ink-2:#a9aab0; --ink-3:#8a8d95;
  --line:#32353c; --line-strong:#474b53;
  --ocre:#e0a52c; --ocre-ink:#e8b449; --ocre-soft:#33290f;
  --alto:#e66850; --alto-soft:#3a201b;
  --ok:#59a882; --ok-soft:#1b2f26;
  --sombra-barra:rgba(0,0,0,.65);
}

*{box-sizing:border-box}

html{-webkit-text-size-adjust:100%;overflow-x:hidden;overflow-x:clip;scroll-padding:1rem 0 6rem}
::selection{background:var(--ocre);color:var(--ink)}
*{scrollbar-color:var(--line-strong) var(--surface-2)}
body{
  margin:0;background:var(--bg);color:var(--ink);
  font-family:'Archivo',system-ui,-apple-system,'Segoe UI',sans-serif;
  font-variation-settings:'wdth' 100;
  font-size:16px;line-height:1.55;-webkit-font-smoothing:antialiased;
  overflow-x:hidden;overflow-x:clip;
}
.wrap{
  width:100%;max-width:var(--max);margin-inline:auto;
  padding-left:max(.75rem,env(safe-area-inset-left));
  padding-right:max(.75rem,env(safe-area-inset-right));
}


.tics{height:14px;background-image:repeating-linear-gradient(90deg,var(--line-strong) 0 1px,transparent 1px 16px);border-bottom:1px solid var(--line)}



.marca{display:inline-flex;align-items:stretch;gap:.45rem;margin:0;font-size:1rem}
.marca__texto{font-variation-settings:'wdth' 125,'wght' 800;font-size:1.4rem;line-height:1;letter-spacing:-.02em;text-transform:uppercase;display:flex;align-items:center}
.marca__cl{
  font-family:'IBM Plex Mono',ui-monospace,monospace;font-weight:600;font-size:.6rem;letter-spacing:.06em;
  display:flex;align-items:center;padding:0 .26rem;border:.1rem solid currentColor;border-radius:.13rem;
}

header.app{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:.6rem .75rem;padding-block:1rem}
header.app>div:first-child{flex:1 1 0}
header.app>.seg{flex-wrap:nowrap;gap:.25rem}
header.app>.seg button{flex:0 0 auto;padding-inline:.55rem;font-size:.74rem}
.sub{font-family:'IBM Plex Mono',monospace;font-size:.72rem;letter-spacing:.09em;text-transform:uppercase;color:var(--ink-3)}


.panel__cab{
  display:flex;align-items:flex-start;justify-content:space-between;gap:.75rem;
  padding:.8rem .85rem;border-bottom:1px solid var(--line);background:var(--surface-2);
}
.panel__t{font-variation-settings:'wdth' 112,'wght' 700;font-size:.98rem;margin:0}


.pasos{background:var(--surface);border:1px solid var(--line)}
.paso{border-top:0;margin:0;padding:0}
.paso+.paso{border-top:1px solid var(--line)}
.paso__cab{
  display:grid;grid-template-columns:1.9rem minmax(0,1fr) 1rem;align-items:center;gap:.8rem;
  min-height:62px;padding:.75rem .85rem;list-style:none;cursor:pointer;
  background:var(--surface-2);color:var(--ink);
  font-size:inherit;font-weight:inherit;font-variation-settings:normal;
}
.paso__cab::-webkit-details-marker{display:none}
.paso[open]>.paso__cab{background:var(--surface);box-shadow:inset 0 -1px 0 var(--line)}
.paso__cab:focus-visible{outline:2px solid var(--ocre);outline-offset:-2px}
.paso__n{
  display:grid;place-items:center;width:1.9rem;height:1.9rem;
  font-family:'IBM Plex Mono',monospace;font-weight:600;font-size:.8rem;line-height:1;
  border:.1rem solid var(--line-strong);border-radius:.13rem;color:var(--ink-2);
}
.paso[open] .paso__n{background:var(--ink);border-color:var(--ink);color:var(--surface)}
.paso[data-estado="falta"]:not([open]) .paso__n{border-color:var(--alto);color:var(--alto)}
.paso__txt{display:flex;flex-direction:column;gap:.12rem;min-width:0}
.paso__t{margin:0;font-size:1rem;line-height:1.25;font-variation-settings:'wdth' 112,'wght' 700}
.paso__res{
  font-family:'IBM Plex Mono',monospace;font-size:.76rem;line-height:1.4;color:var(--ink-2);
  font-variant-numeric:tabular-nums;overflow-wrap:anywhere;
  display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2;overflow:hidden;
}
.paso__res:empty{display:none}

.paso__falta{font-size:.8rem;line-height:1.35;font-weight:600;color:var(--alto)}
.paso__falta:empty{display:none}
.paso__chev{
  width:.6rem;height:.6rem;justify-self:center;
  border-right:2px solid var(--ink-3);border-bottom:2px solid var(--ink-3);
  transform:translateY(-25%) rotate(45deg);transition:transform .2s cubic-bezier(.2,.8,.2,1);
}
.paso[open] .paso__chev{transform:translateY(25%) rotate(225deg)}
@media (hover:hover){
  .paso:not([open])>.paso__cab:hover{background:var(--surface)}
  .paso__cab:hover .paso__chev{border-color:var(--ink)}
}
.paso__c{padding:1rem .85rem 1.1rem}
.paso__c>:first-child{margin-top:0}

.paso[open]>.paso__c{animation:paso-abre .22s cubic-bezier(.2,.8,.2,1)}
@keyframes paso-abre{from{opacity:0;transform:translateY(-.4rem)}}
.paso__sig{
  display:flex;align-items:center;justify-content:space-between;gap:.75rem;width:100%;
  margin-top:1.2rem;min-height:48px;padding:.7rem .9rem;
  font:inherit;font-size:.86rem;font-weight:600;text-align:left;cursor:pointer;
  color:var(--ink);background:var(--surface-2);border:1px solid var(--line-strong);border-radius:var(--r);
}
.paso__sig::after{content:"";flex:none;width:.5rem;height:.5rem;
  border-right:2px solid currentColor;border-bottom:2px solid currentColor;transform:rotate(-45deg)}
.paso__sig:hover{border-color:var(--ink)}
.paso__sig:focus-visible{outline:2px solid var(--ocre);outline-offset:2px}
@media (prefers-reduced-motion:reduce){
  .paso[open]>.paso__c{animation:none}
  .paso__chev{transition:none}
}
.costos-viaje{margin-top:1rem}
.grupo--precio{margin-top:1.5rem;padding-top:1rem;border-top:1px solid var(--line)}


.campos{display:grid;gap:.85rem;grid-template-columns:minmax(0,1fr)}
.campo{display:flex;flex-direction:column;gap:.28rem;min-width:0}
.campo--ancho{grid-column:1/-1}
label{font-size:.8rem;color:var(--ink-2);font-weight:500}
.hint{font-size:.78rem;color:var(--ink-3);line-height:1.4}

.hint--ref{color:var(--ocre-ink)}
input[data-origen="referencia"]{border-color:var(--ocre);background:var(--ocre-soft)}
input[type=number],input[type=text],input[type=date],select{
  font-family:'IBM Plex Mono',ui-monospace,monospace;font-variant-numeric:tabular-nums;
  min-height:44px;font-size:16px;color:var(--ink);background:var(--surface-2);
  border:1px solid var(--line-strong);border-radius:var(--r);
  padding:.5rem .6rem;width:100%;min-width:0;
}

input::placeholder{color:var(--ink-3);opacity:1}
input:focus-visible,select:focus-visible,button:focus-visible{outline:2px solid var(--ocre);outline-offset:2px}
.conUnidad{position:relative;display:flex;align-items:center}
.conUnidad input{padding-right:3.2rem}
.conUnidad span{position:absolute;right:.6rem;font-family:'IBM Plex Mono',monospace;font-size:.74rem;color:var(--ink-3);pointer-events:none}


.autocompletar{position:relative;min-width:0}
.sugerencias{
  position:absolute;z-index:30;inset:calc(100% + .25rem) 0 auto;
  max-height:min(18rem,45vh);overflow-y:auto;overscroll-behavior:contain;
  border:1px solid var(--line-strong);background:var(--surface);
  box-shadow:0 8px 20px rgba(21,23,27,.16);
}
.sugerencias[hidden]{display:none}
.sugerencia,.modelo{
  display:flex;align-items:center;gap:.65rem;width:100%;min-height:44px;
  padding:.65rem .7rem;text-align:left;color:var(--ink);background:var(--surface);
  border:0;border-bottom:1px solid var(--line);cursor:pointer;font:inherit;font-size:.84rem;
}
.sugerencia:last-child,.modelo:last-child{border-bottom:0}
.sugerencia:hover,.sugerencia[data-activa="true"],
.modelo:hover,.modelo[data-activa="true"]{background:var(--ocre-soft)}
.sugerencia[aria-selected="true"],.modelo[aria-selected="true"]{
  box-shadow:inset 3px 0 0 var(--ocre);
}
.sugerencia:focus-visible,.modelo:focus-visible{outline:2px solid var(--ocre);outline-offset:-2px}
.sugerencia-vacia{padding:.75rem;color:var(--ink-3);font-size:.8rem;line-height:1.4}

.sugerencia__capital{margin-left:auto;padding-left:.5rem;color:var(--ink-2);
  font-size:.76rem;text-align:right;line-height:1.25}


.seg{display:flex;flex-wrap:wrap;gap:.4rem}
.seg button{
  font-family:inherit;font-size:.8rem;font-weight:500;color:var(--ink-2);
  background:var(--surface-2);border:1px solid var(--line-strong);border-radius:var(--r);
  min-height:44px;padding:.58rem .7rem;cursor:pointer;flex:1 1 auto;
}

.seg .seg__aparte{flex-basis:100%}
.seg button[aria-pressed="true"]{background:var(--ink);color:var(--surface);border-color:var(--ink)}
.campos--trayecto .seg button:not(.seg__aparte){flex:1 1 0}


.vehiculos{display:grid;gap:.5rem;grid-template-columns:repeat(2,minmax(0,1fr))}
.veh{
  background:var(--surface-2);border:1px solid var(--line-strong);border-radius:var(--r);
  padding:.6rem .5rem .5rem;cursor:pointer;display:flex;flex-direction:column;gap:.35rem;text-align:left;
  font-family:inherit;color:var(--ink-2);
  
  --picto-hueco:var(--surface-2);
}
.veh[aria-pressed="true"]{
  background:var(--surface);border-color:var(--ocre);box-shadow:inset 0 -3px 0 var(--ocre);
  color:var(--ink);--picto-hueco:var(--surface);
}
.veh svg{display:block;width:100%;height:auto;color:currentColor}
.veh__n{font-size:.72rem;font-weight:600;line-height:1.2}
.veh__c{font-family:'IBM Plex Mono',monospace;font-size:.72rem;color:var(--ink-3)}
.grupo{font-family:'IBM Plex Mono',monospace;font-size:.72rem;letter-spacing:.12em;text-transform:uppercase;color:var(--ink-3);margin:.9rem 0 .5rem}
.grupo:first-child{margin-top:0}


.comps{display:grid;gap:1px;background:var(--line);border:1px solid var(--line);margin-top:.4rem}
.comp{
  background:var(--surface);display:grid;align-items:center;
  grid-template-columns:46px minmax(0,1fr) auto;gap:.4rem .65rem;
  padding:.7rem;min-width:0;
}

.comp[data-off="1"]{background:var(--surface-2)}
.comp[data-off="1"] .comp__n{color:var(--ink-2)}
.comp[data-off="1"] input{color:var(--ink-3);background:transparent;border-style:dashed}
.comp__n{grid-column:2/-1;font-size:.83rem;min-width:0}
.comp input{grid-column:2;width:100%;min-width:0}
.comp__nota{grid-column:2/-1;font-size:.75rem;line-height:1.4;color:var(--ink-3)}
.comp__u{grid-column:3;font-family:'IBM Plex Mono',monospace;font-size:.72rem;color:var(--ink-3);min-width:46px;flex:none}
.sw{grid-column:1;grid-row:1;position:relative;width:46px;height:44px;flex:none;background:transparent;border:0;cursor:pointer;padding:0}
.sw::before{content:"";position:absolute;top:9px;left:0;width:46px;height:26px;background:var(--line-strong);border-radius:13px}
.sw::after{content:"";position:absolute;top:12px;left:3px;width:20px;height:20px;background:var(--surface);border-radius:50%;transition:left .12s}
.sw[aria-pressed="true"]::before{background:var(--ok)}
.sw[aria-pressed="true"]::after{left:23px}
@media (prefers-reduced-motion:reduce){.sw::after{transition:none}}


.km2{display:grid;gap:1px;background:var(--line);border:1px solid var(--line);grid-template-columns:minmax(0,1fr);margin-top:1rem}
.km2 div{background:var(--surface-2);padding:.85rem 1rem}
.km2 .et{font-family:'IBM Plex Mono',monospace;font-size:.72rem;letter-spacing:.1em;text-transform:uppercase;color:var(--ink-3);display:block}
.km2 .v{font-variation-settings:'wdth' 100,'wght' 700;font-variant-numeric:tabular-nums;font-size:clamp(1.3rem,1rem + 1.6vw,1.8rem);letter-spacing:-.02em}


.res{background:var(--surface);border:1px solid var(--line)}
.res__barra{height:4px;background:var(--ocre)}
.cifras{display:grid;gap:1px;background:var(--line);border-block:1px solid var(--line);grid-template-columns:minmax(0,1fr)}
.cifra{background:var(--surface-2);padding:.8rem 1rem}
.cifra .et{font-family:'IBM Plex Mono',monospace;font-size:.72rem;letter-spacing:.09em;text-transform:uppercase;color:var(--ink-3);display:block;margin-bottom:.1rem}
.cifra .v{font-variation-settings:'wdth' 100,'wght' 700;font-variant-numeric:tabular-nums;font-size:1.25rem;letter-spacing:-.02em;display:block}
.cifra--destacada{background:var(--surface)}
.cifra--destacada .v{font-size:clamp(1.5rem,1.2rem + 1.8vw,2.1rem)}
.cifra--piso .v{color:var(--alto)}

.fila{display:flex;justify-content:space-between;align-items:flex-start;gap:.75rem;padding:.65rem .85rem;border-bottom:1px solid var(--line);font-size:.87rem}
.fila:last-child{border-bottom:0}
.fila__n{color:var(--ink-2)}
.fila__v{font-family:'IBM Plex Mono',monospace;font-variant-numeric:tabular-nums;font-weight:500}
.fila--total{background:var(--surface-2)}
.fila--total .fila__n{color:var(--ink);font-variation-settings:'wdth' 112,'wght' 700}
.fila--total .fila__v{font-weight:600}
.fila--piso{background:var(--alto-soft)}
.fila--piso .fila__n,.fila--piso .fila__v{color:var(--alto);font-weight:600}

body[data-modo="viaje"] .cifra--piso .v{color:var(--ink)}
body[data-modo="viaje"] .fila--piso{background:var(--surface-2)}
body[data-modo="viaje"] .fila--piso .fila__n,
body[data-modo="viaje"] .fila--piso .fila__v{color:var(--ink)}
body[data-modo="viaje"] .fila--piso .fila__n{font-variation-settings:'wdth' 112,'wght' 700}
.fila__sub{font-size:.78rem;color:var(--ink-3);display:block}


.avisos{display:flex;flex-direction:column;gap:.5rem;padding:.85rem}
.avisos:empty{display:none}
.aviso{display:flex;gap:.7rem;padding:.7rem .85rem;border:1px solid var(--line);background:var(--surface-2);align-items:flex-start}
.aviso__m{width:4px;flex:none;align-self:stretch;background:var(--ink-3)}
.aviso--alto{background:var(--alto-soft);border-color:var(--alto)}
.aviso--alto .aviso__m{background:var(--alto)}
.aviso--ojo .aviso__m{background:var(--ocre)}
.aviso--ok{background:var(--ok-soft)}
.aviso--ok .aviso__m{background:var(--ok)}
.aviso__t{font-variation-settings:'wdth' 112,'wght' 700;font-size:.84rem;display:block}
.aviso__d{font-size:.79rem;color:var(--ink-2);line-height:1.45}


.cob{padding:.8rem .85rem;border-top:1px solid var(--line);font-size:.79rem;color:var(--ink-2)}
.cob__barra{height:6px;background:var(--surface-2);border:1px solid var(--line);margin-top:.4rem;position:relative}
.cob__lleno{position:absolute;inset:0 auto 0 0;background:var(--ok)}
.cob__lleno[data-parcial="1"]{background:var(--ocre)}


details{border-top:1px solid var(--line);margin-top:1rem;padding-top:.15rem}
summary{cursor:pointer;min-height:44px;padding-block:.65rem;font-size:.84rem;font-weight:600;color:var(--ocre-ink);font-variation-settings:'wdth' 112,'wght' 700}
.acciones{display:flex;flex-direction:column;gap:.5rem;margin-top:1rem}
.btn{
  width:100%;min-height:44px;font-family:inherit;font-size:.85rem;font-weight:600;padding:.65rem .95rem;
  border-radius:var(--r);border:1px solid var(--ink);background:var(--ink);color:var(--bg);cursor:pointer;
}
.btn--fantasma{background:transparent;color:var(--ink-2);border-color:var(--line-strong);font-weight:500}
.mono{font-family:'IBM Plex Mono',monospace;font-variant-numeric:tabular-nums}
.pie{padding-block:2rem;color:var(--ink-3);font-size:.78rem;line-height:1.6}
.pie a{color:var(--ocre-ink)}
.oculto{display:none!important}
.modos[hidden]{display:none}



.modos{display:grid;grid-template-columns:1fr 1fr;margin:.75rem 0 0;
  border:1px solid var(--line-strong);border-radius:var(--r);background:var(--surface-2)}
.modo{text-align:center;padding:.6rem .5rem;background:transparent;
  min-height:48px;border:0;border-radius:0;cursor:pointer;
  color:var(--ink-2);font:inherit;display:block}
.modo+.modo{border-left:1px solid var(--line-strong)}
@media (hover:hover){.modo:not([aria-pressed="true"]):hover{color:var(--ink);background:var(--surface)}}
.modo[aria-pressed="true"]{background:var(--surface);box-shadow:inset 0 -3px 0 var(--ocre);color:var(--ink)}
.modo__t{display:block;font-size:.9rem;line-height:1.25;font-variation-settings:'wdth' 108,'wght' 650}
.modo__d{display:none;font-size:.78rem;color:var(--ink-3);margin-top:.15rem}
.modo:focus-visible{outline:2px solid var(--ocre);outline-offset:-2px}
.modo-intro{max-width:70ch;margin:.65rem 0 .85rem;color:var(--ink-2);font-size:.86rem}


body[data-modo="viaje"] .solo-servicio,
body[data-modo="servicio"] .solo-viaje{display:none!important}



.vehiculos-carga{margin-top:0;border-top:0;padding-top:0}
.vehiculos-carga .vehiculos{margin-top:.65rem}
.alcance-cotizador{max-width:72ch;margin:.6rem 0 0;padding:.7rem .8rem;
  border:1px solid var(--line-strong);box-shadow:inset 0 3px 0 var(--ocre);
  background:var(--ocre-soft);color:var(--ink-2);
  font-size:.82rem;line-height:1.45}
.alcance-cotizador strong{color:var(--ink)}
.datos-auto{display:grid;grid-template-columns:minmax(0,1fr);gap:1px;
  margin-top:1rem;background:var(--line);border:1px solid var(--line)}
.datos-auto>div{background:var(--surface-2);padding:.7rem .8rem;min-width:0}
.datos-auto__et{display:block;font-size:.72rem;color:var(--ink-3);margin-bottom:.08rem}
.datos-auto strong{display:block;font-family:'IBM Plex Mono',monospace;font-size:.84rem;
  font-weight:600;font-variant-numeric:tabular-nums;overflow-wrap:anywhere}
.identificar,.ajustes-tecnicos{margin-top:.8rem}
.datos-necesarios:not(:empty){margin-top:.9rem}
.identificar>summary .elegido{display:block;margin-top:.15rem;font-family:'IBM Plex Mono',monospace;
  font-size:.74rem;font-weight:500;letter-spacing:0;color:var(--ink-2);
  font-variation-settings:normal;overflow-wrap:anywhere}
.identificar>summary .elegido[hidden]{display:none}
.kilometraje-mensual,.conductor{margin-top:.9rem}

.peajes{margin-top:.35rem}
.peajes summary{cursor:pointer;color:var(--ink-2);text-decoration:underline;
  text-underline-offset:2px;padding:.25rem 0}
.peajes summary:focus-visible{outline:2px solid var(--ocre-ink);outline-offset:2px}
.peajes__l{list-style:none;margin:.3rem 0 0;padding:0}
.peajes__l li{display:flex;justify-content:space-between;gap:1rem;
  padding:.18rem 0;border-bottom:1px solid var(--line)}
.peajes__l li span:last-child{font-family:'IBM Plex Mono',monospace;flex:none}
.peajes__n{margin:.4rem 0 0;color:var(--ink-3)}


.modelos{display:grid;background:var(--surface)}
.modelo{align-items:baseline;flex-wrap:wrap;font-size:.82rem}
.modelo__n{flex:1;min-width:0;color:var(--ink)}
.modelo__r{font-family:'IBM Plex Mono',monospace;font-size:.76rem;
  color:var(--ink-2);width:100%;flex:none;white-space:nowrap}


.resumen{position:fixed;left:0;right:0;bottom:0;z-index:20;background:var(--surface);
  box-shadow:0 -10px 24px -14px var(--sombra-barra);
  padding-bottom:env(safe-area-inset-bottom)}
.resumen::before{content:"";display:block;height:3px;background:var(--ocre)}
.resumen[hidden]{display:none}
.resumen__int{padding-block:.3rem}
.resumen__ir{display:flex;align-items:center;gap:1.1rem;width:100%;
  background:none;border:0;min-height:56px;padding:.3rem 0;cursor:pointer;text-align:left;color:inherit;font:inherit}
.resumen__grupo{display:flex;flex-direction:column;align-items:flex-start;gap:.05rem;min-width:0}
.resumen__et{font-family:'IBM Plex Mono',monospace;font-size:.72rem;letter-spacing:.08em;
  text-transform:uppercase;color:var(--ink-3);flex:none}
.resumen__v{font-family:'IBM Plex Mono',monospace;font-size:1.08rem;font-weight:600;
  font-variant-numeric:tabular-nums;color:var(--ink);white-space:nowrap}
.resumen__v--fuerte{color:var(--ocre-ink)}
.resumen__ver{display:flex;align-items:center;gap:.45rem;margin-left:auto;font-size:.8rem;
  font-weight:600;color:var(--ink-2);flex:none}
.resumen__ver::after{content:"";width:.45rem;height:.45rem;margin-top:.25rem;
  border-left:2px solid currentColor;border-top:2px solid currentColor;transform:rotate(45deg)}
.resumen__ir:focus-visible{outline:2px solid var(--ocre-ink);outline-offset:2px}

.disposicion{padding-bottom:5.5rem}


.imp{display:none}
.acciones--res{border-top:1px solid var(--line);margin-top:0;padding:.85rem}


.pendientes{padding:.75rem 1.1rem;border-bottom:1px solid var(--line);background:var(--alto-soft)}
.pendientes[hidden]{display:none}
.pendientes__t{margin:0 0 .45rem;font-family:'IBM Plex Mono',monospace;font-size:.72rem;
  letter-spacing:.09em;text-transform:uppercase;color:var(--alto)}
.pendientes__nota{margin:0 0 .6rem;font-size:.8rem;line-height:1.45;color:var(--ink-2)}
.pendientes__nota:empty{display:none}
.pendientes__l{display:flex;flex-wrap:wrap;gap:.4rem}
.pendiente{border:1px solid var(--alto);background:var(--surface);color:var(--alto);
  min-height:44px;font:inherit;font-size:.79rem;line-height:1.3;padding:.5rem .65rem;cursor:pointer;
  text-align:left}
.pendiente:hover{background:var(--alto);color:var(--surface)}
.pendiente:focus-visible{outline:2px solid var(--ocre-ink);outline-offset:2px}
.cifra[data-pendiente]{background:var(--alto-soft)}
.cifra[data-pendiente] .v{font-family:'Archivo',sans-serif;font-size:1rem;
  font-variation-settings:'wdth' 105,'wght' 680;color:var(--alto)}
.fila--pendiente{background:var(--alto-soft);color:var(--alto)}
.btn:disabled{cursor:not-allowed;opacity:.62;filter:saturate(.45)}
.trazabilidad{margin-top:1rem;border:1px solid var(--line);background:var(--surface-2)}
.trazabilidad>summary{cursor:pointer;padding:.7rem .8rem;font-size:.82rem;
  font-weight:650;color:var(--ink)}
.trazabilidad>summary:focus-visible{outline:2px solid var(--ocre-ink);outline-offset:2px}
.trazabilidad__intro{margin:0;padding:0 .8rem .7rem}
.trazabilidad__lista{display:grid;grid-template-columns:minmax(0,1fr);
  gap:1px;background:var(--line);border-top:1px solid var(--line)}
.trazabilidad__item{min-width:0;padding:.7rem .8rem;background:var(--surface)}
.trazabilidad__cab{display:flex;align-items:baseline;justify-content:space-between;
  gap:.6rem}
.trazabilidad__nivel{flex:none;font-family:'IBM Plex Mono',monospace;font-size:.72rem;
  font-weight:600;letter-spacing:.06em;color:var(--ok)}
.trazabilidad__item[data-nivel="revisar"] .trazabilidad__nivel{color:var(--alto)}
.trazabilidad__item[data-nivel="usuario"] .trazabilidad__nivel,
.trazabilidad__item[data-nivel="derivada"] .trazabilidad__nivel,
.trazabilidad__item[data-nivel="mixta"] .trazabilidad__nivel{color:var(--ocre-ink)}
.trazabilidad__item p{margin:.3rem 0 0;color:var(--ink-2);font-size:.78rem;line-height:1.45}

.trazabilidad__item a{display:inline-flex;align-items:center;min-height:44px;color:var(--ocre-ink);
  font-size:.76rem;text-underline-offset:2px}

@media (min-width:40rem){
  .wrap{
    padding-left:max(1.1rem,env(safe-area-inset-left));
    padding-right:max(1.1rem,env(safe-area-inset-right));
  }
  header.app{gap:1rem;padding-block:1.1rem}
  .panel__cab{align-items:center;padding:.85rem 1.1rem}
  .paso__cab{padding:.8rem 1.1rem}
  .paso__c{padding:1.1rem 1.1rem 1.25rem}
  .campos{gap:.9rem;grid-template-columns:repeat(auto-fit,minmax(180px,1fr))}
  .campos--trayecto{grid-template-columns:repeat(2,minmax(0,1fr))}
  body[data-modo="servicio"] #campo-retorno{grid-column:1/-1}
  .vehiculos{grid-template-columns:repeat(auto-fill,minmax(10rem,1fr))}
  .comp{display:flex;gap:.7rem;padding:.55rem .75rem;flex-wrap:wrap}
  .comp__n{flex:1 1 120px}
  .comp input{width:120px;flex:none}
  .comp__u{width:58px}
  .comp__nota{flex:1 1 100%}
  .km2{grid-template-columns:1fr 1fr}
  .cifras{grid-template-columns:repeat(auto-fit,minmax(150px,1fr))}
  .fila{align-items:baseline;gap:1rem;padding:.5rem 1.1rem}
  .avisos{padding:1.1rem}
  .cob{padding:.8rem 1.1rem}
  .acciones--res{padding:.9rem 1.1rem}
  .acciones{flex-direction:row;flex-wrap:wrap}
  .btn{width:auto}
  .modos{margin-top:1.1rem}
  .modo{text-align:left;padding:.7rem .85rem;min-height:64px}
  .modo__d{display:block}
  .modo-intro{margin-bottom:1rem}
  .datos-auto{grid-template-columns:repeat(3,minmax(0,1fr))}
  .modelo__r{width:auto;margin-left:auto}
  .resumen__ir{gap:1.6rem}
  .resumen__grupo{flex-direction:row;align-items:baseline;gap:.5rem}
  .trazabilidad__lista{grid-template-columns:repeat(2,minmax(0,1fr))}
  .trazabilidad__cab{align-items:baseline}
}


@media (min-width:64rem){
  :root{--max:76rem}
  .wrap{
    padding-left:max(1.6rem,env(safe-area-inset-left));
    padding-right:max(1.6rem,env(safe-area-inset-right));
  }
  html{scroll-padding:1rem 0}
  .disposicion{display:grid;grid-template-columns:minmax(0,1fr) minmax(22rem,25rem);
    gap:0 1.25rem;align-items:start;padding-bottom:0}
  .columna{min-width:0}
  .res{position:sticky;top:1rem;margin-top:1.1rem;max-height:calc(100dvh - 2rem);
    overflow-y:auto;overscroll-behavior:contain}
  .res .cifras,.res .trazabilidad__lista{grid-template-columns:minmax(0,1fr)}
  .res .btn{width:100%}
  .pie{grid-column:1/-1}
  .resumen{display:none!important}
  .paso__sig{display:none}
  
  .paso[open] .paso__n{background:none;border-color:var(--line-strong);color:var(--ink-2)}
  .paso[data-estado="falta"] .paso__n{border-color:var(--alto);color:var(--alto)}
}


@media (min-width:40rem) and (pointer:fine){
  input[type=number],input[type=text],input[type=date],select{min-height:0;font-size:.95rem}
  .seg button{min-height:0;padding:.42rem .7rem;flex:0 1 auto}
  summary{min-height:0;padding-block:.15rem}
  .btn{min-height:0;padding:.55rem .95rem}
  .sw{width:34px;height:19px;border-radius:10px}
  .sw::before{top:0;width:34px;height:19px;border-radius:10px}
  .sw::after{top:2px;left:2px;width:15px;height:15px}
  .sw[aria-pressed="true"]::after{left:17px}
  .trazabilidad__item a{min-height:24px;margin-top:.2rem}
}

@media print{
  
  @page{margin:14mm 12mm}
  
  html:root:not([data-theme="light"]),html:root[data-theme="light"]{
    --bg:#fff; --surface:#fff; --surface-2:#f2f1ed;
    --ink:#000; --ink-2:#333; --ink-3:#555;
    --line:#999; --line-strong:#666;
    --ocre:#c58a12; --ocre-ink:#7d5605; --ocre-soft:#f5ecd6;
    --alto:#ae3826; --alto-soft:#f3ddd8;
    --ok:#2c6b4f; --ok-soft:#dde9e2;
  }
  body{background:#fff;color:#000}
  
  .pasos,.acciones,header.app,.modo-intro,
  .modos,.resumen,.tics,.res__barra,.pie,.trazabilidad,.pendientes{display:none}
  .disposicion{display:block;padding-bottom:0}
  .res{position:static;max-height:none;overflow:visible}
  .wrap{max-width:none;padding:0}

  .res{border:0;box-shadow:none}
  .res .panel__cab{display:none}          
  .res .campos{display:none}              

  .imp{display:block}
  .imp--cab{border-bottom:2px solid #000;padding-bottom:.5rem;margin-bottom:1rem}
  .imp__marca{display:flex;justify-content:space-between;align-items:baseline;
              font-size:9pt;letter-spacing:.04em;text-transform:uppercase}
  .imp__sello{flex:none;font-variation-settings:'wdth' 125,'wght' 800;
              font-size:8pt;color:#555;letter-spacing:.06em}
  .imp__emisor{font-size:14pt;font-variation-settings:'wdth' 112,'wght' 700;
               margin:.55rem 0 0;line-height:1.15;letter-spacing:-.01em}
  .imp__titulo{font-size:16pt;margin:.3rem 0 .15rem;line-height:1.15;font-weight:600}
  .imp__linea{font-size:9.5pt;color:#333;margin:0}

  .cifras{border:1px solid #999;page-break-inside:avoid}
  .cifra .v{color:#000}

  
  body[data-modo="servicio"] .cifras,
  body[data-modo="servicio"] #desglose,
  body[data-modo="servicio"] .avisos,
  body[data-modo="servicio"] .cob,
  body[data-modo="servicio"] .imp--pie{display:none}

  .imp__alerta{border:1.5px solid #000;padding:.5rem .7rem;font-size:9.5pt;margin:0 0 1rem}
  .imp__precio{width:100%;border-collapse:collapse;margin-top:1.4rem;
               page-break-inside:avoid}
  .imp__precio td{padding:.5rem 0;border-bottom:1px solid #ccc;font-size:11pt}
  .imp__precio td:last-child{text-align:right;font-variant-numeric:tabular-nums;
                             white-space:nowrap}
  .imp__precio--total td{border-top:1.5px solid #000;border-bottom:0;
    padding-top:.7rem;font-size:15pt;font-variation-settings:'wdth' 112,'wght' 700}
  .imp__cierre{margin-top:1.2rem;font-size:8pt;color:#555;line-height:1.45}

  .imp--pie{margin-top:1.1rem;padding-top:.6rem;border-top:1px solid #999;
            page-break-inside:avoid}
  .imp__h2{font-size:10pt;text-transform:uppercase;letter-spacing:.05em;margin:0 0 .45rem}
  .imp__sup{font-size:8.5pt;margin:0}
  .imp__sup dt{font-weight:600;margin-top:.35rem}
  .imp__sup dd{margin:.05rem 0 0;color:#333;line-height:1.35}
  .imp__nota{font-size:8pt;color:#444;margin-top:.8rem;line-height:1.4;
             border-left:2px solid #999;padding-left:.5rem}

  
  #desglose > *,.aviso{page-break-inside:avoid}
  a[href]::after{content:""}              
}
