/* TRAMPU 10.6.48 — navegador compacto. Somente apresentação; lógica de rota intacta. */
.nav-page-v112{
  --v34-gutter:clamp(10px,3vw,18px);
  --v34-top:max(12px,env(safe-area-inset-top));
  background:#eaf0f4;
}
.nav-page-v112 .nav-topbar-v34,
.nav-page-v112 .nav-topbar-v34:has(.v29-account-entry){
  position:absolute;top:var(--v34-top);
  left:var(--v34-gutter);right:var(--v34-gutter);
  display:grid;grid-template-columns:42px minmax(0,1fr) 42px;
  align-items:center;gap:8px;padding:5px 7px;
  min-height:52px;max-height:60px;
  border-radius:18px;
  border:1px solid rgba(225,233,239,.92);
  background:rgba(255,255,255,.96);
  box-shadow:0 4px 15px rgba(8,27,58,.09);
  backdrop-filter:blur(12px);
  z-index:15;
}
.nav-page-v112 .nav-topbar-v34 .nav-round,
.nav-page-v112 .nav-topbar-v34 .v29-account-entry{
  width:42px;min-width:42px;height:42px;min-height:42px;
  border:0;box-shadow:none;background:transparent;
  border-radius:12px;padding:0;display:inline-grid;place-items:center;
  font-size:22px;color:#08203f;
}
.nav-page-v112 .nav-topbar-v34 .v29-account-entry span{display:none}
.nav-page-v112 .nav-topbar-v34 .nav-destination{
  min-width:0;margin:0;padding:1px 2px;
  border:0;border-radius:0;box-shadow:none;background:transparent;
  text-align:center;
}
.nav-page-v112 .nav-topbar-v34 .nav-destination span{
  display:block;color:#637b8b;font-size:10px;letter-spacing:0;
  font-weight:850;text-transform:none;
  white-space:nowrap;overflow:hidden;text-overflow:ellipsis;
}
.nav-page-v112 .nav-topbar-v34 .nav-destination strong{
  display:block;margin-top:2px;color:#0b2849;font-size:12px;
  line-height:1.2;font-weight:850;
  white-space:nowrap;overflow:hidden;text-overflow:ellipsis;
}
.nav-page-v112 .trampu-nav-brand{display:none!important}

/* Uma linha de informação, sem cartões secundários sobrepostos. */
.nav-page-v112 .nav-overview-v34{
  position:absolute;top:calc(var(--v34-top) + 62px);
  left:var(--v34-gutter);right:var(--v34-gutter);
  z-index:10;display:flex;align-items:center;justify-content:center;
  flex-wrap:nowrap;gap:clamp(3px,1.5vw,8px);
  min-height:31px;max-height:34px;margin:0;padding:6px 9px;
  border:1px solid rgba(225,233,239,.72);border-radius:11px;
  background:rgba(255,255,255,.91);
  box-shadow:0 3px 10px rgba(8,27,58,.06);
  color:#496071;font-size:clamp(9.5px,2.55vw,11px);
  line-height:1.1;white-space:nowrap;
}
.nav-page-v112 .nav-overview-v34 span{
  display:inline;min-width:0;margin:0;padding:0;
  font-size:inherit;white-space:nowrap;
}
.nav-page-v112 .nav-overview-v34 b{font-size:inherit;font-weight:900;color:#102d49}
.nav-page-v112 .nav-overview-v34 i{font-style:normal;color:#98a9b6}

/* Instrução é o único bloco de contraste forte da navegação. */
.nav-page-v112 .nav-instruction-v34{
  position:absolute;top:calc(var(--v34-top) + 103px);
  left:var(--v34-gutter);right:var(--v34-gutter);
  display:grid;grid-template-columns:42px minmax(0,1fr) 38px;
  align-items:center;gap:11px;
  min-height:80px;margin:0;padding:11px 12px;
  border-radius:18px;
  background:rgba(8,27,58,.96);
  box-shadow:0 8px 24px rgba(8,27,58,.18);
  color:#fff;z-index:12;
}
.nav-page-v112 .nav-instruction-v34.arrived{background:#176b42}
.nav-page-v112 .nav-instruction-v34 .maneuver-ico-v112{
  width:42px;height:48px;flex:0 0 42px;
  border-radius:11px;background:rgba(255,255,255,.09);
  display:grid;place-items:center;font-size:31px;line-height:1;
}
.nav-page-v112 .nav-instruction-v34 .nav-instruction-copy-v112{
  display:flex;flex-direction:column;align-items:flex-start;
  justify-content:center;min-width:0;gap:3px;
}
.nav-page-v112 .nav-instruction-v34 .nav-turn-distance-v112{
  display:inline-flex!important;align-items:center;
  margin:0!important;padding:3px 7px!important;
  border-radius:8px;background:#c7f36b;
  color:#173314!important;
  line-height:1;font-size:12px!important;font-weight:900!important;
}
.nav-page-v112 .nav-instruction-v34 #navInstruction{
  display:block;margin:0;
  font-size:clamp(15px,3.5vw,18px);
  font-weight:880;line-height:1.16;letter-spacing:-.025em;
  overflow-wrap:break-word;color:#fff;
}
.nav-page-v112 .nav-instruction-v34 #navInstructionDetail{
  display:block;margin:0;color:#b8c9d6;font-size:11px;line-height:1.2;
}
.nav-page-v112 .nav-instruction-v34 #navInstructionDetail:empty{display:none}
.nav-page-v112 .nav-voice-v34{
  width:38px;height:42px;padding:0;display:grid;place-items:center;
  border:1px solid rgba(255,255,255,.15);border-radius:11px;
  background:rgba(255,255,255,.09);color:#fff;font-size:18px;
  cursor:pointer;align-self:center;
}
.nav-page-v112 .nav-voice-v34.active{background:rgba(199,243,107,.15)}
.nav-page-v112 .nav-error{
  top:calc(var(--v34-top) + 197px);left:var(--v34-gutter);right:var(--v34-gutter);
  margin:0;padding:8px 10px;border-radius:10px;
  font-size:11px;line-height:1.35;max-height:78px;overflow:auto;
}
.nav-page-v112 .nav-follow-state-v112{display:none!important}
.nav-page-v112>.vehicle-access-v25{
  position:absolute;top:calc(var(--v34-top) + 205px);
  left:var(--v34-gutter);right:var(--v34-gutter);
  margin:0;z-index:11;max-height:90px;overflow:auto;
}

/* Estimativa ao pé do mapa: um bloco curto e legível. */
.nav-page-v112 .nav-stats-v34{
  position:absolute;z-index:13;
  left:50%;right:auto;bottom:calc(116px + env(safe-area-inset-bottom));
  transform:translateX(-50%);
  width:min(365px,calc(100vw - 2 * var(--v34-gutter)));
  min-width:0;min-height:55px;
  margin:0;padding:7px 10px;
  display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr) 76px;
  align-items:center;gap:7px;
  border-radius:17px;border:1px solid rgba(220,229,236,.90);
  background:rgba(255,255,255,.95);
  box-shadow:0 7px 20px rgba(8,27,58,.12);
}
.nav-page-v112 .nav-stats-v34>div{
  display:flex;flex-direction:column;gap:3px;
  min-width:0;margin:0;padding:0 2px;
  align-items:center;text-align:center;
}
.nav-page-v112 .nav-stats-v34>div strong{
  display:block;font-size:17px;font-weight:900;line-height:1.05;
  color:#081b3a;white-space:nowrap;
}
.nav-page-v112 .nav-stats-v34>div span{
  margin:0;display:block;font-size:9px;line-height:1.15;color:#718495;
  white-space:nowrap;
}
.nav-page-v112 .nav-recenter-v112{
  width:76px!important;min-width:0!important;height:43px!important;
  min-height:43px!important;padding:4px 7px!important;
  border:0!important;border-radius:12px!important;
  display:flex!important;flex-direction:column;justify-content:center;
  align-items:center;gap:1px;
  background:#eaf4e4!important;color:#26573a!important;
}
.nav-page-v112 .nav-recenter-v112 b{font-size:17px;line-height:1}
.nav-page-v112 .nav-recenter-v112 span{font-size:10px;font-weight:850}
.nav-page-v112 .nav-recenter-v112:not(.is-following){
  background:#fff1d3!important;color:#785019!important
}

/* Rodapé de 2 linhas, botões com área de toque confortável. */
.nav-page-v112 .nav-bottom-v34{
  z-index:15;position:absolute;left:0;right:0;bottom:0;
  display:grid;grid-template-columns:minmax(0,1fr);
  gap:8px;min-height:0;
  margin:0;padding:9px var(--v34-gutter)
    calc(10px + env(safe-area-inset-bottom));
  border-top:1px solid rgba(219,230,236,.92);
  background:rgba(255,255,255,.98);
  box-shadow:0 -4px 16px rgba(8,27,58,.07);
}
.nav-page-v112 .nav-package-v112{
  display:flex;flex-wrap:wrap;align-items:baseline;
  gap:4px 11px;min-width:0;
}
.nav-page-v112 .nav-package-v112 span,
.nav-page-v112 .nav-package-v112 small,
.nav-page-v112 .nav-package-v112 b{display:inline;margin:0;line-height:1.2}
.nav-page-v112 .nav-package-v112 span{font-size:11px;color:#6e8091}
.nav-page-v112 .nav-package-v112 b{font-size:13px;font-weight:900;color:#0c2a4c}
.nav-page-v112 .nav-package-v112 small{font-size:11px;font-weight:760;color:#718599;overflow-wrap:anywhere}
.nav-page-v112 .nav-action-row-v112{
  display:grid;grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr);
  width:100%;gap:8px;align-items:stretch;
}
.nav-page-v112 .nav-action-row-v112 button{
  display:flex;align-items:center;justify-content:center;
  min-width:0;min-height:46px;
  margin:0;padding:8px 10px;border-radius:13px;
  font-size:13px;font-weight:860;line-height:1.2;
  white-space:nowrap;
}
.nav-page-v112 .nav-bottom-v34 .nav-deliver{
  background:#081b3a;color:#fff;
}
.nav-page-v112 .nav-bottom-v34 .nav-deliver.done{
  background:#e7f7ec;color:#197c45;
}
@media(max-width:360px){
  .nav-page-v112 .nav-topbar-v34 .nav-destination strong{font-size:11px}
  .nav-page-v112 .nav-overview-v34{padding:6px 4px;gap:3px;font-size:9px}
  .nav-page-v112 .nav-instruction-v34{gap:8px;padding:9px 10px;grid-template-columns:38px minmax(0,1fr) 34px}
  .nav-page-v112 .nav-instruction-v34 .maneuver-ico-v112{width:38px;flex-basis:38px}
  .nav-page-v112 .nav-voice-v34{width:34px;height:38px}
  .nav-page-v112 .nav-stats-v34{grid-template-columns:minmax(0,1fr) minmax(0,1fr) 68px}
  .nav-page-v112 .nav-recenter-v112{width:68px!important}
}
@media(max-height:640px){
  .nav-page-v112 .nav-instruction-v34{top:calc(var(--v34-top) + 98px);padding:8px 10px}
  .nav-page-v112 .nav-stats-v34{bottom:calc(107px + env(safe-area-inset-bottom))}
  .nav-page-v112 .nav-bottom-v34{gap:5px;padding-top:6px;padding-bottom:calc(7px + env(safe-area-inset-bottom))}
}
