/* =====================================================================
   CARWAY v15 — LAYOUT
   Topbar, tabbar, páginas, barra de veículos
   ===================================================================== */

/* ---------- TOPBAR ---------- */
#topbar{
  position:sticky;top:0;z-index:60;
  display:flex;align-items:center;justify-content:space-between;gap:8px;
  padding:12px 14px;
  background:rgba(11,17,32,.94);
  backdrop-filter:blur(12px);
  -webkit-backdrop-filter:blur(12px);
  border-bottom:1px solid var(--linha);
}
body.tema-claro #topbar{background:rgba(255,255,255,.94)}

.tb-left{display:flex;align-items:center;gap:10px;min-width:0}
.brand-ico{
  background:linear-gradient(135deg,var(--azul),var(--roxo));
  width:38px;height:38px;border-radius:12px;
  display:grid;place-items:center;flex:none;overflow:hidden;
}
img.brand-ico{
  background:none;padding:0;object-fit:cover;display:block;
}
.tb-left strong{display:block;font-size:16px;line-height:1.1;color:var(--txt)}
.tb-left small{
  color:var(--txt2);font-size:11px;display:block;
  max-width:190px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;
}
.tb-right{display:flex;align-items:center;gap:8px}

.icon-btn{
  background:var(--card);border:1px solid var(--linha);color:var(--txt);
  width:38px;height:38px;border-radius:11px;
  display:grid;place-items:center;cursor:pointer;
  transition:transform .12s;
}
.icon-btn:active{transform:scale(.94)}
.icon-btn .ms{font-size:22px}

.tema-btn .ms{transition:transform .3s}

/* ---------- BARRA DE VEÍCULOS ---------- */
.barra-veic{
  position:sticky;top:63px;z-index:55;
  display:flex;gap:8px;overflow-x:auto;
  padding:10px 14px;
  background:rgba(11,17,32,.94);
  backdrop-filter:blur(12px);
  -webkit-backdrop-filter:blur(12px);
  border-bottom:1px solid var(--linha);
  scrollbar-width:none;
}
body.tema-claro .barra-veic{background:rgba(255,255,255,.94)}
.barra-veic::-webkit-scrollbar{display:none}

.pill{
  flex:none;background:var(--card);border:1.5px solid var(--linha);
  color:var(--txt2);border-radius:99px;
  padding:8px 14px 8px 11px;font-size:12.5px;font-weight:600;
  cursor:pointer;display:flex;align-items:center;gap:6px;position:relative;
  transition:transform .12s;
}
.pill .ms{font-size:18px}
.pill.sel{
  background:color-mix(in srgb, var(--c) 18%, transparent);
  border-color:var(--c);color:#fff;
}
.pill.sel .ms{color:var(--c)}
.pill:active{transform:scale(.96)}
.pill .badge{
  position:absolute;top:-4px;right:-2px;
  background:var(--amarelo);color:#000;
  font-size:9.5px;font-weight:800;
  min-width:17px;height:17px;border-radius:99px;
  display:grid;place-items:center;font-style:normal;padding:0 4px;
  border:2px solid var(--bg);
}
.pill .badge.urg{background:var(--vermelho);color:#fff}

/* ---------- PÁGINAS ---------- */
#app{padding:14px 14px 6px;max-width:860px;margin:0 auto}

.pagina{display:none;animation:entra .25s ease}
.pagina.ativa{display:block}
@keyframes entra{from{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}

/* ---------- PLACEHOLDER DAS FATIAS FUTURAS ---------- */
.placeholder{
  display:flex;flex-direction:column;align-items:center;justify-content:center;
  text-align:center;padding:60px 20px;
  border:1px dashed var(--linha);border-radius:var(--r);
  background:var(--card);
}
.placeholder .ms{font-size:54px;color:var(--txt2);opacity:.5;margin-bottom:12px}
.placeholder b{display:block;font-size:17px;color:var(--txt);margin-bottom:6px}
.placeholder small{color:var(--txt2);font-size:13px}

/* ---------- MENU ---------- */
.menu-cabecalho{
  display:flex;align-items:center;gap:12px;margin-bottom:20px;
}
.menu-cabecalho img.menu-logo{
  width:56px;height:56px;border-radius:16px;
  object-fit:cover;flex:none;display:block;background:none;
}
.menu-cabecalho b{display:block;font-size:19px;color:var(--txt)}
.menu-cabecalho small{display:block;color:var(--txt2);font-size:12.5px;margin-top:2px}

.menu-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px}

.menu-card{
  background:var(--card);border:1px solid var(--linha);
  border-radius:18px;padding:20px 12px;
  display:flex;flex-direction:column;align-items:center;gap:8px;
  cursor:pointer;text-align:center;
  transition:transform .15s, background .15s;
  color:var(--txt);
  font-family:inherit;
}
body.tema-claro .menu-card{
  box-shadow:0 1px 3px rgba(15,23,42,.06);
}
.menu-card:active{transform:scale(.96);background:var(--card2)}
.menu-card .ms{font-size:32px}
.menu-card b{font-size:14px;font-weight:600}
.menu-card small{font-size:11px;color:var(--txt2);line-height:1.35}

.menu-card.azul .ms{color:var(--azul2)}
.menu-card.verde .ms{color:var(--verde)}
.menu-card.roxo .ms{color:var(--roxo)}
.menu-card.ciano .ms{color:var(--ciano)}
.menu-card.amarelo .ms{color:var(--amarelo)}
.menu-card.vermelho .ms{color:var(--vermelho)}
.menu-card.cinza .ms{color:#94a3b8}

/* ---------- TABBAR ---------- */
#tabbar{
  position:fixed;left:0;right:0;bottom:0;z-index:70;
  display:flex;
  background:rgba(11,17,32,.96);
  backdrop-filter:blur(14px);
  -webkit-backdrop-filter:blur(14px);
  border-top:1px solid var(--linha);
  padding:8px 4px calc(8px + var(--safe));
}
body.tema-claro #tabbar{background:rgba(255,255,255,.96)}
#tabbar.oculto{display:none}

.tab{
  flex:1;background:transparent;border:0;color:var(--txt2);
  display:flex;flex-direction:column;align-items:center;gap:2px;
  padding:5px 2px;cursor:pointer;border-radius:11px;
  font-family:inherit;transition:background .15s;
}
.tab .ms{font-size:24px}
.tab small{font-size:10px}
.tab.ativa{color:var(--azul2);background:rgba(59,130,246,.10)}
.tab:active{background:var(--card2)}