/* EarthRoute2Scanner V12.7 — Responsive UI Polish Only
   CSS-only layout repair. No OCR, route, scanner, driver, navigation or storage logic changed. */

/* Reset legacy fixed-bar transforms and accidental oversizing */
.v66-appbar{
  box-sizing:border-box!important;
  display:flex!important;
  align-items:center!important;
  justify-content:space-between!important;
  gap:12px!important;
  width:100%!important;
  max-width:none!important;
  height:auto!important;
  min-height:72px!important;
  margin:0!important;
  inset:auto!important;
  top:0!important;
  left:0!important;
  right:0!important;
  transform:none!important;
  -webkit-transform:none!important;
  padding:calc(8px + env(safe-area-inset-top)) 14px 10px!important;
}
.v66-brand{display:flex!important;align-items:center!important;flex:1 1 auto!important;min-width:0!important;overflow:hidden!important;}
.v66-brand>div:last-child{min-width:0!important;overflow:hidden!important;}
.v66-brand-title,.earthroute2-wordmark{display:block!important;min-width:0!important;overflow:hidden!important;}
.earthroute2-wordmark-top,.earthroute2-wordmark-bottom,.v66-brand-sub{display:block!important;overflow:hidden!important;text-overflow:ellipsis!important;}

/* Keep every page inside the iPhone viewport */
html,body{width:100%!important;max-width:100%!important;overflow-x:hidden!important;}
main{width:100%!important;max-width:100%!important;box-sizing:border-box!important;padding-bottom:calc(116px + env(safe-area-inset-bottom))!important;}
.v67-page,.v65-home,.v91-home-shell,.card,.batch,.sticky-nav{max-width:100%!important;box-sizing:border-box!important;}

/* Route current-stop panel: restore semantic separation and wrapping */
#currentNav{
  display:block!important;
  width:100%!important;
  padding:18px!important;
  overflow:hidden!important;
  white-space:normal!important;
  overflow-wrap:anywhere!important;
  word-break:normal!important;
  line-height:1.45!important;
  border-radius:22px!important;
}
#currentNav>.row{
  width:100%!important;
  max-width:100%!important;
  box-sizing:border-box!important;
  white-space:normal!important;
}
#currentNav>.row:first-child{
  display:grid!important;
  grid-template-columns:minmax(0,1fr) auto!important;
  gap:10px!important;
  align-items:center!important;
  margin-bottom:12px!important;
}
#currentNav>.row:first-child>b{
  display:block!important;
  min-width:0!important;
  font-size:15px!important;
  line-height:1.35!important;
}
#currentNav>.row:first-child>.pill{
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  max-width:150px!important;
  padding:7px 10px!important;
  white-space:normal!important;
  text-align:center!important;
  line-height:1.2!important;
}
#currentNav>div:nth-child(2){
  display:block!important;
  margin:0 0 16px!important;
  padding:14px!important;
  border-radius:15px!important;
  background:rgba(148,163,184,.09)!important;
  font-size:17px!important;
  font-weight:700!important;
  line-height:1.45!important;
  white-space:normal!important;
  overflow-wrap:anywhere!important;
}
#currentNav>.row:nth-child(3){
  display:grid!important;
  grid-template-columns:minmax(0,1fr) 88px!important;
  gap:12px!important;
  align-items:center!important;
  margin:0 0 14px!important;
}
#currentNav>.row:nth-child(3) label{display:block!important;min-width:0!important;font-weight:700!important;line-height:1.3!important;}
#currentNav #stopParcels{width:88px!important;min-width:0!important;max-width:88px!important;margin:0!important;text-align:center!important;}
#currentNav>.row:last-child{
  display:grid!important;
  grid-template-columns:1fr 1fr!important;
  gap:10px!important;
  align-items:stretch!important;
  margin:0!important;
}
#currentNav>.row:last-child>a{display:block!important;width:100%!important;min-width:0!important;text-decoration:none!important;}
#currentNav>.row:last-child button{
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  width:100%!important;
  min-width:0!important;
  min-height:54px!important;
  height:100%!important;
  margin:0!important;
  padding:11px 10px!important;
  white-space:normal!important;
  overflow-wrap:anywhere!important;
  text-align:center!important;
  line-height:1.22!important;
  font-size:13px!important;
}

/* Floating continue button belongs above, not beside, bottom navigation */
#v66ContinueRoute.show{
  left:50%!important;
  right:auto!important;
  bottom:calc(92px + env(safe-area-inset-bottom))!important;
  width:min(360px,calc(100% - 32px))!important;
  min-height:56px!important;
  justify-content:center!important;
  transform:translateX(-50%)!important;
  -webkit-transform:translateX(-50%)!important;
  text-align:center!important;
}

/* True full-width six-tab iPhone navigation */
.v6-bottom-nav{
  box-sizing:border-box!important;
  display:grid!important;
  grid-template-columns:repeat(6,minmax(0,1fr))!important;
  left:8px!important;
  right:8px!important;
  bottom:calc(7px + env(safe-area-inset-bottom))!important;
  width:calc(100% - 16px)!important;
  max-width:none!important;
  min-width:0!important;
  margin:0!important;
  padding:6px!important;
  gap:2px!important;
  transform:none!important;
  -webkit-transform:none!important;
  border-radius:21px!important;
}
.v6-bottom-nav button{
  display:flex!important;
  flex-direction:column!important;
  align-items:center!important;
  justify-content:center!important;
  width:100%!important;
  min-width:0!important;
  min-height:56px!important;
  margin:0!important;
  padding:5px 1px!important;
  overflow:hidden!important;
  white-space:nowrap!important;
  border-radius:14px!important;
}
.v6-bottom-nav button span:first-child{display:block!important;font-size:18px!important;line-height:1!important;}
.v6-bottom-nav button span:last-child{display:block!important;max-width:100%!important;overflow:hidden!important;text-overflow:ellipsis!important;font-size:8.5px!important;line-height:1.15!important;}

/* Driver-mode cards must never concatenate dynamic copy */
.v110-driver-screen,.v110-current-card,.v110-next-card{max-width:100%!important;box-sizing:border-box!important;overflow:hidden!important;}
.v110-address,.v110-next-card p,.v110-status{display:block!important;white-space:normal!important;overflow-wrap:anywhere!important;word-break:normal!important;}
.v110-primary-grid,.v110-delivery-grid,.v110-secondary-grid{width:100%!important;max-width:100%!important;box-sizing:border-box!important;}

@media(max-width:430px){
  .v66-appbar{min-height:68px!important;padding-left:12px!important;padding-right:12px!important;}
  .v66-logo{width:46px!important;height:46px!important;min-width:46px!important;flex-basis:46px!important;border-radius:14px!important;}
  .earthroute2-wordmark-top{font-size:14px!important;letter-spacing:.01em!important;}
  .earthroute2-wordmark-bottom{font-size:9px!important;}
  #v68ThemeButton{width:46px!important;height:46px!important;min-width:46px!important;flex:0 0 46px!important;}
  #currentNav{padding:16px!important;}
  #currentNav>.row:first-child{grid-template-columns:1fr!important;}
  #currentNav>.row:first-child>.pill{justify-self:start!important;max-width:100%!important;}
  #currentNav>.row:last-child{grid-template-columns:1fr!important;}
  #currentNav>.row:last-child button{font-size:14px!important;min-height:54px!important;}
  .v110-primary-grid,.v110-delivery-grid{grid-template-columns:1fr 1fr!important;gap:9px!important;}
}

@media(max-width:360px){
  .v66-brand-sub{display:none!important;}
  .v6-bottom-nav button span:last-child{font-size:7.5px!important;}
  .v110-primary-grid,.v110-delivery-grid{grid-template-columns:1fr!important;}
}
