/* =====================================================================
   SIMURBAN v0.9.67 — transporte funcional, rota por faixa e janelas pareadas
   Carregado depois de styles-ui-v0966.css.
   ===================================================================== */

:root{
  --v967-fleet-owned-w:430px;
  --v967-fleet-buy-w:600px;
  --v967-fleet-gap:12px;
  --v967-fleet-total:1042px;
}

/* Zoneamento: mesma leitura visual, bem menos altura. */
body.city-mode #toolPanel[data-active-tool="zone"]{
  width:min(270px,calc(100vw - 90px))!important;
  max-width:270px!important;
}
body.city-mode #toolPanel[data-active-tool="zone"] .tool-section.active{
  gap:6px!important;
  padding:8px!important;
  max-height:none!important;
}
body.city-mode #toolPanel[data-active-tool="zone"] .classic-subtitle{
  font-size:8px!important;
  line-height:1.15!important;
  max-height:20px!important;
  overflow:hidden!important;
}
body.city-mode #toolPanel[data-active-tool="zone"] .zone-buttons:not(.zone-grid-toggle-row){
  grid-template-columns:repeat(2,84px)!important;
  gap:6px!important;
}
body.city-mode #toolPanel[data-active-tool="zone"] .zone-buttons:not(.zone-grid-toggle-row) button{
  width:84px!important;
  min-width:84px!important;
  height:84px!important;
  aspect-ratio:1/1!important;
  gap:5px!important;
  padding:6px!important;
  font-size:9px!important;
}
body.city-mode #toolPanel[data-active-tool="zone"] .zone-buttons:not(.zone-grid-toggle-row) button .ui-ico{
  width:22px!important;
  height:22px!important;
}
body.city-mode #toolPanel[data-active-tool="zone"] .zone-density-wrap{
  padding:6px!important;
}
body.city-mode #toolPanel[data-active-tool="zone"] .zone-density-title{
  margin-bottom:4px!important;
}
body.city-mode #toolPanel[data-active-tool="zone"] .zone-density-buttons button,
body.city-mode #toolPanel[data-active-tool="zone"] .zone-brush-buttons button{
  height:27px!important;
  min-height:27px!important;
}
body.city-mode #toolPanel[data-active-tool="zone"] .zone-grid-toggle-row button{
  height:31px!important;
  min-height:31px!important;
}
body.city-mode #toolPanel[data-active-tool="zone"] .tool-hint{display:none!important}

/* Frota + compras: duas janelas independentes, lado a lado e centralizadas. */
body.city-mode.fleet-purchase-layout #toolPanel[data-active-tool="vehicles"]{
  display:block!important;
  position:fixed!important;
  width:var(--v967-fleet-owned-w)!important;
  max-width:var(--v967-fleet-owned-w)!important;
  min-width:0!important;
  left:max(12px,calc(50vw - var(--v967-fleet-total) / 2))!important;
  right:auto!important;
  bottom:82px!important;
  top:auto!important;
  transform:none!important;
  max-height:min(470px,calc(100vh - 150px))!important;
  z-index:44!important;
}
body.city-mode.fleet-purchase-layout #toolPanel[data-active-tool="vehicles"] .tool-section.active{
  max-height:min(415px,calc(100vh - 210px))!important;
  overflow-y:auto!important;
  overflow-x:hidden!important;
}
body.city-mode #transitFleetPanel.transit-fleet-panel{
  width:min(var(--v967-fleet-buy-w),calc(100vw - 24px))!important;
  max-width:var(--v967-fleet-buy-w)!important;
  bottom:82px!important;
  top:auto!important;
  max-height:min(470px,calc(100vh - 150px))!important;
  overflow:hidden!important;
}
body.city-mode #transitFleetPanel.transit-fleet-panel.hidden{display:none!important}
body.city-mode.fleet-purchase-layout #transitFleetPanel.transit-fleet-panel{
  display:block!important;
  left:max(calc(12px + var(--v967-fleet-owned-w) + var(--v967-fleet-gap)),calc(50vw - var(--v967-fleet-total) / 2 + var(--v967-fleet-owned-w) + var(--v967-fleet-gap)))!important;
  right:auto!important;
  transform:none!important;
}
body.city-mode #transitFleetPanel .tool-panel-head{
  float:none!important;
  position:relative!important;
  width:100%!important;
  height:auto!important;
  min-height:54px!important;
  margin:0!important;
  box-sizing:border-box!important;
  display:flex!important;
  align-items:center!important;
  justify-content:space-between!important;
  padding:9px 12px!important;
  border-radius:0!important;
  border:0!important;
  border-bottom:1px solid rgba(255,255,255,.08)!important;
  background:rgba(10,21,20,.98)!important;
}
body.city-mode #transitFleetPanel .tool-panel-head>div{
  min-width:0!important;
  width:auto!important;
}
body.city-mode #transitFleetPanel .tool-panel-head .panel-title{
  display:block!important;
  font-size:13px!important;
  line-height:1.1!important;
}
body.city-mode #transitFleetPanel .tool-panel-subtitle{
  display:block!important;
  margin-top:3px!important;
  font-size:9px!important;
  line-height:1.2!important;
}
body.city-mode #transitFleetPanel .transit-fleet-body{
  max-height:min(416px,calc(100vh - 210px))!important;
  overflow-y:auto!important;
  overflow-x:hidden!important;
  padding:10px!important;
}
body.city-mode #transitFleetPanel .fleet-catalog-grid{
  grid-template-columns:repeat(2,minmax(0,1fr))!important;
  gap:8px!important;
}
body.city-mode #transitFleetPanel .fleet-catalog-card{
  display:flex!important;
  flex-direction:column!important;
  min-height:142px!important;
}
body.city-mode #transitFleetPanel .fleet-card-actions{
  margin-top:auto!important;
}

/* Em telas menores, as duas janelas continuam utilizáveis sem estouro. */
@media(max-width:1120px){
  :root{--v967-fleet-owned-w:360px;--v967-fleet-buy-w:510px;--v967-fleet-total:882px}
  body.city-mode #transitFleetPanel .fleet-catalog-grid{grid-template-columns:1fr!important}
}
@media(max-width:900px){
  body.city-mode.fleet-purchase-layout #toolPanel[data-active-tool="vehicles"]{display:none!important}
  body.city-mode #transitFleetPanel.transit-fleet-panel.hidden{display:none!important}
body.city-mode.fleet-purchase-layout #transitFleetPanel.transit-fleet-panel{
  display:block!important;
    left:10px!important;
    right:10px!important;
    width:auto!important;
    max-width:none!important;
  }
}
