/* Subiendo Driver Home — capa visual del mapa. No mueve mapa, toggle ni overlays. */

/* Barra superior sin caja: piezas sueltas de vidrio sobre el mapa. */
#screen-home .driver-topbar{
  background:linear-gradient(180deg,rgba(255,255,255,.55) 0%,rgba(255,255,255,0) 100%);
  pointer-events:none;
}
#screen-home .driver-topbar > *{pointer-events:auto}
#screen-home .driver-topbar-inner{
  display:grid;grid-template-columns:1fr auto auto;
  grid-template-areas:"gps bell avatar" "toggle toggle toggle";
  align-items:center;gap:.6rem .5rem;
  padding:0;background:transparent;border:0;border-radius:0;box-shadow:none;
  backdrop-filter:none;-webkit-backdrop-filter:none;pointer-events:none;
}
#screen-home .driver-topbar-inner > *{pointer-events:auto}
#screen-home .driver-topbar-inner > div:first-child{grid-area:gps;justify-self:start}
#screen-home .driver-topbar-inner > [data-subite-notif-bell]{grid-area:bell;margin-right:0 !important}
#screen-home .dh-gps{
  font-size:.7rem;font-weight:800;padding:.5rem .8rem;border-radius:99px;
  background:linear-gradient(135deg,#34d399,#059669);color:#fff;
  box-shadow:0 6px 16px rgba(5,150,105,.32);letter-spacing:.02em;white-space:nowrap;
}
#screen-home .online-toggle-wrap{
  grid-area:toggle;display:flex;align-items:center;gap:.75rem;
  padding:.6rem .7rem .6rem 1rem;border-radius:18px;
  background:rgba(255,255,255,.9);border:1px solid rgba(255,255,255,.7);
  box-shadow:0 10px 28px rgba(15,23,42,.14);
  backdrop-filter:blur(18px) saturate(1.4);-webkit-backdrop-filter:blur(18px) saturate(1.4);
}
#screen-home .online-toggle-wrap > div{order:-1;flex:1;min-width:0}
#screen-home .toggle-info-title,
#screen-home .toggle-info-sub{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
#screen-home .leaflet-control-zoom{display:none}
#screen-home .dh-demand{
  display:flex;align-items:center;justify-content:center;gap:.4rem;
  margin:.45rem auto 0;width:max-content;max-width:100%;
  padding:.4rem .8rem;border-radius:99px;font-size:.72rem;font-weight:700;
  color:#1e3a8a;background:rgba(255,255,255,.95);
  border:1px solid rgba(37,99,235,.18);box-shadow:0 6px 18px rgba(15,23,42,.12);
  backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);
}
#screen-home .dh-demand[hidden]{display:none}
#screen-home .dh-demand b{font-size:.85rem;font-variant-numeric:tabular-nums;color:#1d4ed8}
#screen-home .dh-demand-sep{color:#94a3b8}
#screen-home .dh-demand-dot{
  width:8px;height:8px;border-radius:50%;background:#22c55e;
  box-shadow:0 0 0 0 rgba(34,197,94,.6);animation:dhDemandPulse 2s infinite;
}
@keyframes dhDemandPulse{
  0%{box-shadow:0 0 0 0 rgba(34,197,94,.55)}
  70%{box-shadow:0 0 0 8px rgba(34,197,94,0)}
  100%{box-shadow:0 0 0 0 rgba(34,197,94,0)}
}
html[data-theme="dark"] #screen-home .dh-demand{
  background:rgba(30,41,59,.94) !important;border-color:var(--border) !important;color:#cbd5e1 !important;
}
html[data-theme="dark"] #screen-home .dh-demand b{color:#60a5fa}
#screen-home .toggle-info-title{font-weight:800;letter-spacing:-.01em}
#screen-home .driver-avatar{
  grid-area:avatar;width:40px;height:40px;border-radius:50%;
  background-color:#2563eb;background-image:linear-gradient(135deg,#2563eb,#22d3ee);
  background-size:cover;background-position:center;
  box-shadow:0 0 0 2px rgba(255,255,255,.95),0 0 0 4px rgba(34,211,238,.4),0 6px 14px rgba(37,99,235,.3);
}
#screen-home .driver-avatar.has-photo{color:transparent !important}

#screen-home .stats-strip{
  border-radius:18px;padding:.35rem;gap:.35rem;
  background:rgba(255,255,255,.94);border:1px solid rgba(37,99,235,.12);
  box-shadow:0 10px 28px rgba(15,23,42,.12);
  backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);
}
#screen-home .strip-stat{
  border-radius:14px;padding:.5rem .35rem;text-align:center;
  background:linear-gradient(180deg,#f8fafc,#eff6ff);border:1px solid rgba(37,99,235,.1);
}
#screen-home .strip-val{font-size:1rem;font-weight:800;font-variant-numeric:tabular-nums;color:#1d4ed8}
#screen-home .strip-lbl{font-size:.6rem;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--text3,#64748b)}

#screen-home .shift-strip{
  border-radius:16px;border:1px solid rgba(37,99,235,.12);
  background:rgba(255,255,255,.95);box-shadow:0 8px 22px rgba(15,23,42,.08);
}
#screen-home .shift-strip-label{letter-spacing:.08em}
#screen-home .shift-strip-fill{background:linear-gradient(90deg,#22d3ee,#2563eb,#4f46e5)}

#screen-home > .reservas-entry-btn{
  border-radius:16px;border:1px solid rgba(255,255,255,.12);color:#fff;
  background:
    radial-gradient(120% 140% at 100% 0%,rgba(251,191,36,.35) 0%,transparent 55%),
    linear-gradient(135deg,#1e3a8a 0%,#2563eb 60%,#4f46e5 100%);
  box-shadow:0 12px 28px rgba(37,99,235,.28);
}
#screen-home > .reservas-entry-btn:active{transform:scale(.98)}

#screen-home .driver-sponsor-banner{
  border-radius:18px;border:1px solid rgba(37,99,235,.14);
  background:linear-gradient(135deg,#eef6ff,#e4f2ff);
  box-shadow:0 8px 20px rgba(15,23,42,.1);
}
#screen-home .driver-sponsor-image{border-radius:12px}

#screen-home .driver-bottom-nav{
  backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);
  background:rgba(255,255,255,.94);box-shadow:0 -8px 32px rgba(15,23,42,.1);
}

html[data-theme="dark"] #screen-home .driver-topbar{background:linear-gradient(180deg,rgba(11,18,32,.6) 0%,rgba(11,18,32,0) 100%) !important}
html[data-theme="dark"] #screen-home .driver-topbar-inner{
  background:transparent !important;border-color:transparent !important;
}
html[data-theme="dark"] #screen-home .online-toggle-wrap{
  background:rgba(30,41,59,.82) !important;border-color:rgba(148,163,184,.18) !important;
  box-shadow:0 10px 28px rgba(0,0,0,.35);
}
html[data-theme="dark"] #screen-home .driver-avatar{
  box-shadow:0 0 0 2px #111827,0 0 0 4px rgba(34,211,238,.4),0 6px 14px rgba(0,0,0,.35);
}
html[data-theme="dark"] #screen-home .stats-strip{
  background:rgba(30,41,59,.94) !important;border-color:var(--border) !important;
}
html[data-theme="dark"] #screen-home .strip-stat{background:#243044 !important;border-color:var(--border)}
html[data-theme="dark"] #screen-home .strip-val{color:#60a5fa}
html[data-theme="dark"] #screen-home .shift-strip{
  background:rgba(30,41,59,.94) !important;border-color:var(--border) !important;
}
html[data-theme="dark"] #screen-home > .reservas-entry-btn{
  color:#fff !important;border:1px solid rgba(255,255,255,.12) !important;
  background:
    radial-gradient(120% 140% at 100% 0%,rgba(251,191,36,.35) 0%,transparent 55%),
    linear-gradient(135deg,#1e3a8a 0%,#2563eb 60%,#4f46e5 100%) !important;
}
html[data-theme="dark"] #screen-home .driver-bottom-nav{background:rgba(30,41,59,.96) !important}
