/* BUSVE Proyecto 2 — SeatMap Lite
   Scope propio: no modifica los estilos originales del panel. */
.busve-seat-lite-overlay{position:fixed;inset:0;display:none;align-items:center;justify-content:center;background:rgba(2,6,23,.72);backdrop-filter:blur(10px);z-index:999999;padding:16px;box-sizing:border-box;font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Arial,sans-serif}.busve-seat-lite-overlay.is-open{display:flex}.busve-seat-lite-modal{width:min(1020px,100%);max-height:94vh;background:#fff;border-radius:26px;overflow:hidden;box-shadow:0 34px 110px rgba(0,0,0,.38);border:1px solid rgba(255,255,255,.6)}.busve-seat-lite-head{display:flex;align-items:flex-start;justify-content:space-between;gap:14px;padding:17px 20px;background:linear-gradient(135deg,#061b4e,#0b3d91);color:#fff}.busve-seat-lite-head h3{margin:0;color:#fff;font-size:21px;font-weight:950;letter-spacing:-.03em}.busve-seat-lite-head p{margin:4px 0 0;color:#bfdbfe;font-size:13px;font-weight:750}.busve-seat-lite-close{width:38px;height:38px;border-radius:999px;border:0;background:rgba(255,255,255,.14);color:#fff;font-size:22px;font-weight:900;cursor:pointer}.busve-seat-lite-body{display:grid;grid-template-columns:minmax(380px,1fr) 300px;max-height:calc(94vh - 76px);overflow:auto}.busve-seat-lite-main{padding:16px;background:linear-gradient(180deg,#f8fafc,#fff)}.busve-seat-lite-side{padding:17px;border-left:1px solid #e2e8f0;background:#fff}.busve-seat-lite-side h4{margin:0 0 10px;color:#0f172a;font-size:17px;font-weight:950}.busve-seat-lite-tabs{display:flex;gap:8px;margin-bottom:12px;justify-content:center}.busve-seat-lite-tab{border:1px solid #dbeafe;background:#eff6ff;color:#1e40af;border-radius:999px;padding:9px 15px;font-weight:950;cursor:pointer}.busve-seat-lite-tab.active{background:#0b3d91;color:#fff;border-color:#0b3d91}.busve-seat-lite-editor-bar{margin-bottom:12px}.busve-seat-lite-tools{display:flex;flex-wrap:wrap;gap:8px;background:#fff;border:1px solid #e2e8f0;border-radius:18px;padding:10px;box-shadow:0 8px 20px rgba(15,23,42,.06)}.busve-seat-lite-tools button{border:1px solid #dbeafe;background:#eff6ff;color:#1e40af;border-radius:999px;padding:8px 10px;font-size:12px;font-weight:900;cursor:pointer}.busve-seat-lite-tools button.active{background:#0b3d91;color:#fff;border-color:#0b3d91}.busve-seat-lite-bus-shell{display:flex;justify-content:center;overflow:auto;padding:8px}.busve-seat-lite-bus{position:relative;width:min(100%,430px);min-width:300px;padding:58px 18px 28px;border:4px solid #cbd5e1;border-radius:70px 70px 34px 34px;background:#fff;box-shadow:inset 0 0 0 5px #f1f5f9,0 18px 45px rgba(15,23,42,.14)}.busve-seat-lite-windshield{position:absolute;top:15px;left:50%;transform:translateX(-50%);width:44%;height:30px;border-radius:25px 25px 10px 10px;background:linear-gradient(180deg,#dbeafe,#f8fafc);border:1px solid #bfdbfe}.busve-seat-lite-grid{display:grid;gap:9px;align-items:center}.busve-seat-lite-cell{min-height:42px;border:2px solid #cbd5e1;border-radius:14px;background:#fff;color:#334155;font-weight:950;font-size:13px;cursor:pointer;display:flex;align-items:center;justify-content:center;flex-direction:column;line-height:1.05;transition:.14s ease;box-shadow:0 4px 10px rgba(15,23,42,.04)}.busve-seat-lite-cell:hover{transform:translateY(-1px);border-color:#0ea5e9}.busve-seat-lite-cell.seat{border-color:#94a3b8;background:#fff;color:#0f172a}.busve-seat-lite-cell.seat.selected{background:linear-gradient(180deg,#38bdf8,#0ea5e9);border-color:#0284c7;color:#fff;box-shadow:0 8px 16px rgba(14,165,233,.24)}.busve-seat-lite-cell.seat.occupied{background:#fee2e2;border-color:#ef4444;color:#991b1b;cursor:not-allowed}.busve-seat-lite-cell.blocked,.busve-seat-lite-cell.blocked:hover{background:repeating-linear-gradient(135deg,#f1f5f9 0 6px,#d1d5db 6px 12px);border-color:#9ca3af;color:#475569;text-decoration:line-through;cursor:pointer}.busve-seat-lite-cell.blocked:after{content:""}.busve-seat-lite-cell.aisle{border:0;background:linear-gradient(90deg,transparent,#f1f5f9,transparent);box-shadow:none;color:transparent;cursor:pointer}.busve-seat-lite-cell.empty{border:1px dashed transparent;background:transparent;box-shadow:none;color:transparent}.busve-seat-lite-cell.bathroom{background:#ecfeff;border-color:#67e8f9;color:#155e75}.busve-seat-lite-cell.stairs{background:#f5f3ff;border-color:#ddd6fe;color:#5b21b6}.busve-seat-lite-cell.door{background:#fef9c3;border-color:#fde047;color:#854d0e}.busve-seat-lite-cell.driver{background:#fff7ed;border-color:#fed7aa;color:#9a3412}.busve-seat-lite-cell span{font-size:18px}.busve-seat-lite-cell small{font-size:9px;font-weight:900;margin-top:2px}.busve-seat-lite-legend{display:flex;justify-content:center;flex-wrap:wrap;gap:10px;margin-top:12px;color:#334155;font-size:12px;font-weight:850}.busve-seat-lite-legend i{width:12px;height:12px;border-radius:4px;display:inline-block;margin-right:5px;vertical-align:-2px;border:1px solid #cbd5e1;background:#fff}.busve-seat-lite-legend i.available{background:#fff}.busve-seat-lite-legend i.selected{background:#0ea5e9;border-color:#0284c7}.busve-seat-lite-legend i.occupied{background:#ef4444;border-color:#ef4444}.busve-seat-lite-legend i.blocked{background:#94a3b8}.busve-seat-lite-legend i.aisle{background:#f1f5f9;border-color:#e2e8f0}.busve-seat-lite-selected{background:#eff6ff;border:1px solid #bfdbfe;color:#0b3d91;border-radius:16px;padding:14px;font-weight:950;margin-bottom:12px}.busve-seat-lite-note{background:#f8fafc;border:1px solid #e2e8f0;border-radius:14px;padding:12px;color:#64748b;font-size:12px;line-height:1.45;font-weight:750;margin:0 0 12px}.busve-seat-lite-actions{display:grid;gap:9px}.busve-seat-lite-primary,.busve-seat-lite-secondary{border:0;border-radius:14px;padding:13px 14px;font-size:14px;font-weight:950;cursor:pointer}.busve-seat-lite-primary{background:linear-gradient(135deg,#0b3d91,#1e40af);color:#fff;box-shadow:0 10px 24px rgba(30,64,175,.22)}.busve-seat-lite-secondary{background:#f1f5f9;color:#334155;border:1px solid #e2e8f0}.busve-seat-lite-side label{display:block;margin:12px 0 5px;color:#334155;font-size:12px;font-weight:900}.busve-seat-lite-side input,.busve-seat-lite-side select{width:100%;padding:11px;border:1px solid #cbd5e1;border-radius:12px;font-weight:850;box-sizing:border-box}.busve-seatmap-lite-config{background:#f8fafc;border:1px solid #dbeafe;border-radius:14px;padding:14px;margin:0 0 18px 0;box-sizing:border-box}.busve-seatmap-lite-config label{display:flex;align-items:center;gap:8px;color:#0f172a;font-weight:900;font-size:13px;margin-bottom:10px}.busve-seatmap-lite-config input[type="checkbox"]{width:18px;height:18px}.busve-seatmap-lite-config select,.busve-seatmap-lite-config input[type="number"]{width:100%;padding:12px;border:1px solid #cbd5e1;border-radius:10px;font-weight:850;margin-bottom:10px;box-sizing:border-box}.busve-seatmap-lite-actions{display:grid;grid-template-columns:1fr 1fr;gap:8px}.busve-seatmap-lite-actions button{border:0;border-radius:12px;padding:11px 10px;font-weight:950;cursor:pointer}.busve-seatmap-lite-edit{background:#0b3d91;color:#fff}.busve-seatmap-lite-generate{background:#e0f2fe;color:#0369a1;border:1px solid #bae6fd!important}.busve-seatmap-pos-box{background:#eff6ff;border:1px solid #bfdbfe;border-radius:12px;padding:10px;margin:0 0 10px}.busve-seatmap-pos-box button{width:100%;border:0;border-radius:10px;background:#0b3d91;color:#fff;font-weight:950;padding:10px;cursor:pointer}.busve-seatmap-pos-box small{display:block;color:#0b3d91;font-weight:850;margin-top:7px}@media(max-width:820px){.busve-seat-lite-modal{border-radius:22px}.busve-seat-lite-body{grid-template-columns:1fr}.busve-seat-lite-side{border-left:0;border-top:1px solid #e2e8f0}.busve-seat-lite-bus{max-width:360px}.busve-seatmap-lite-actions{grid-template-columns:1fr}}@media(max-width:480px){.busve-seat-lite-overlay{padding:8px;align-items:flex-end}.busve-seat-lite-head{padding:15px}.busve-seat-lite-head h3{font-size:18px}.busve-seat-lite-main{padding:10px}.busve-seat-lite-bus{padding:50px 10px 24px;border-radius:54px 54px 28px 28px}.busve-seat-lite-grid{gap:7px}.busve-seat-lite-cell{min-height:36px;font-size:12px;border-radius:12px}.busve-seat-lite-tools button{font-size:11px;padding:7px 9px}}


/* =========================================================
   BUSVE v7.8.8.7 - Refuerzo visual SeatMap Lite
   Evita aspecto lavado/opaco en el mapa de asientos
========================================================= */
.busve-seat-lite-overlay,
.busve-seat-lite-modal,
.busve-seat-lite-modal *,
#busve_seatmap_lite_overlay,
#busve_seatmap_lite_overlay *{
  opacity:1 !important;
  filter:none !important;
  text-shadow:none !important;
}

.busve-seat-lite-modal{
  background:#ffffff !important;
}
.busve-seat-lite-main{
  background:linear-gradient(180deg,#f8fafc 0%, #ffffff 100%) !important;
}
.busve-seat-lite-side{
  background:#ffffff !important;
}
.busve-seat-lite-bus{
  background:#ffffff !important;
  border-color:#cbd5e1 !important;
  box-shadow:inset 0 0 0 5px #f1f5f9,0 18px 45px rgba(15,23,42,.14) !important;
}
.busve-seat-lite-windshield{
  background:linear-gradient(180deg,#dbeafe,#f8fafc) !important;
  border-color:#bfdbfe !important;
}

.busve-seat-lite-cell,
.busve-seat-lite-grid .busve-seat-lite-cell,
#busve_seat_lite_bus .busve-seat-lite-cell{
  opacity:1 !important;
  color:#334155 !important;
  border:2px solid #cbd5e1 !important;
  background:#ffffff !important;
  box-shadow:0 4px 10px rgba(15,23,42,.04) !important;
}
.busve-seat-lite-cell *,
#busve_seat_lite_bus .busve-seat-lite-cell *{
  color:inherit !important;
  -webkit-text-fill-color:currentColor !important;
  opacity:1 !important;
}
.busve-seat-lite-cell.seat{
  background:#ffffff !important;
  color:#0f172a !important;
  border-color:#94a3b8 !important;
}
.busve-seat-lite-cell.seat.selected{
  background:linear-gradient(180deg,#38bdf8,#0ea5e9) !important;
  border-color:#0284c7 !important;
  color:#ffffff !important;
  box-shadow:0 8px 16px rgba(14,165,233,.24) !important;
}
.busve-seat-lite-cell.seat.occupied{
  background:#fee2e2 !important;
  border-color:#ef4444 !important;
  color:#991b1b !important;
}
.busve-seat-lite-cell.blocked,
.busve-seat-lite-cell.blocked:hover{
  background:repeating-linear-gradient(135deg,#f1f5f9 0 6px,#d1d5db 6px 12px) !important;
  border-color:#9ca3af !important;
  color:#475569 !important;
}
.busve-seat-lite-cell.aisle{
  border-color:transparent !important;
  background:linear-gradient(90deg,transparent,#f1f5f9,transparent) !important;
  color:transparent !important;
  box-shadow:none !important;
}
.busve-seat-lite-cell.empty{
  border-color:transparent !important;
  background:transparent !important;
  color:transparent !important;
  box-shadow:none !important;
}
.busve-seat-lite-cell.bathroom{
  background:#ecfeff !important;
  border-color:#67e8f9 !important;
  color:#155e75 !important;
}
.busve-seat-lite-cell.stairs{
  background:#f5f3ff !important;
  border-color:#ddd6fe !important;
  color:#5b21b6 !important;
}
.busve-seat-lite-cell.door{
  background:#fef9c3 !important;
  border-color:#fde047 !important;
  color:#854d0e !important;
}
.busve-seat-lite-cell.driver{
  background:#fff7ed !important;
  border-color:#fed7aa !important;
  color:#9a3412 !important;
}
.busve-seat-lite-cell small{
  font-size:9px !important;
  font-weight:900 !important;
}

.busve-seat-lite-selected{
  background:#eff6ff !important;
  border:1px solid #bfdbfe !important;
  color:#0b3d91 !important;
}
.busve-seat-lite-note{
  background:#f8fafc !important;
  border:1px solid #e2e8f0 !important;
  color:#475569 !important;
}
.busve-seat-lite-primary{
  background:linear-gradient(135deg,#0b3d91,#1e40af) !important;
  color:#ffffff !important;
}
.busve-seat-lite-secondary{
  background:#f1f5f9 !important;
  color:#334155 !important;
  border:1px solid #e2e8f0 !important;
}



/* =========================================================
   BUSVE v7.8.8.8 - Estado seleccionado SeatMap
   El asiento seleccionado NO debe quedar blanco.
   Se respeta la paleta del sistema y se aísla de botones globales.
========================================================= */
#busve_seatmap_lite_overlay .busve-seat-lite-cell.seat.selected,
#busve_seatmap_lite_overlay .busve-seat-lite-cell.selected,
.busve-seat-lite-overlay .busve-seat-lite-cell.seat.selected,
.busve-seat-lite-overlay .busve-seat-lite-cell.selected,
.busve-seat-lite-grid .busve-seat-lite-cell.seat.selected,
.busve-seat-lite-grid .busve-seat-lite-cell.selected{
  background:linear-gradient(135deg,#12b6e8 0%,#2563eb 100%) !important;
  border-color:#0ea5e9 !important;
  color:#ffffff !important;
  -webkit-text-fill-color:#ffffff !important;
  box-shadow:0 10px 22px rgba(37,99,235,.28), inset 0 0 0 2px rgba(255,255,255,.35) !important;
  opacity:1 !important;
  filter:none !important;
}
#busve_seatmap_lite_overlay .busve-seat-lite-cell.seat.selected *,
#busve_seatmap_lite_overlay .busve-seat-lite-cell.selected *,
.busve-seat-lite-overlay .busve-seat-lite-cell.seat.selected *,
.busve-seat-lite-overlay .busve-seat-lite-cell.selected *{
  color:#ffffff !important;
  -webkit-text-fill-color:#ffffff !important;
  opacity:1 !important;
}
#busve_seatmap_lite_overlay .busve-seat-lite-cell.seat.selected::after,
.busve-seat-lite-overlay .busve-seat-lite-cell.seat.selected::after{
  content:'✓' !important;
  position:absolute !important;
  top:-7px !important;
  right:-7px !important;
  width:20px !important;
  height:20px !important;
  border-radius:999px !important;
  background:#22c55e !important;
  color:#ffffff !important;
  -webkit-text-fill-color:#ffffff !important;
  display:flex !important;
  align-items:center !important;
  justify-content:center !important;
  font-size:12px !important;
  font-weight:950 !important;
  box-shadow:0 6px 12px rgba(34,197,94,.24) !important;
}
#busve_seatmap_lite_overlay .busve-seat-lite-cell,
.busve-seat-lite-overlay .busve-seat-lite-cell{
  position:relative !important;
}

/* Asegurar que los estados especiales NO sean pintados como botón global */
#busve_seatmap_lite_overlay .busve-seat-lite-cell.blocked,
.busve-seat-lite-overlay .busve-seat-lite-cell.blocked{
  background:repeating-linear-gradient(135deg,#f1f5f9 0 6px,#d1d5db 6px 12px) !important;
  color:#475569 !important;
  -webkit-text-fill-color:#475569 !important;
}
#busve_seatmap_lite_overlay .busve-seat-lite-cell.occupied,
.busve-seat-lite-overlay .busve-seat-lite-cell.occupied{
  background:#fee2e2 !important;
  color:#991b1b !important;
  -webkit-text-fill-color:#991b1b !important;
}


/* =========================================================
   BUSVE v7.8.8.14 - Refuerzo de contraste para controles SeatMap Lite
========================================================= */
#busve_seatmap_lite_overlay .busve-seat-lite-tools button,
.busve-seat-lite-overlay .busve-seat-lite-tools button{
  background:#eff6ff !important;
  color:#1e3a8a !important;
  -webkit-text-fill-color:#1e3a8a !important;
  border:1px solid #dbeafe !important;
}
#busve_seatmap_lite_overlay .busve-seat-lite-tools button.active,
.busve-seat-lite-overlay .busve-seat-lite-tools button.active,
#busve_seatmap_lite_overlay .busve-seat-lite-primary,
.busve-seat-lite-overlay .busve-seat-lite-primary,
#busve_seatmap_lite_overlay .busve-seat-lite-tab.active,
.busve-seat-lite-overlay .busve-seat-lite-tab.active{
  background:linear-gradient(135deg,#0f3d91 0%,#1d4ed8 100%) !important;
  color:#ffffff !important;
  -webkit-text-fill-color:#ffffff !important;
  border-color:#1d4ed8 !important;
}
#busve_seatmap_lite_overlay .busve-seat-lite-secondary,
.busve-seat-lite-overlay .busve-seat-lite-secondary,
#busve_seatmap_lite_overlay .busve-seat-lite-tab,
.busve-seat-lite-overlay .busve-seat-lite-tab{
  background:#eff6ff !important;
  color:#1e3a8a !important;
  -webkit-text-fill-color:#1e3a8a !important;
  border:1px solid #dbeafe !important;
}


/* =========================================================
   BUSVE v7.9.85 - Pasillo visible en SeatMap Lite
   El pasillo ya no queda en blanco al guardar/aplicar el mapa.
========================================================= */
#busve_seatmap_lite_overlay .busve-seat-lite-cell.aisle,
.busve-seat-lite-overlay .busve-seat-lite-cell.aisle,
#busve_seat_lite_bus .busve-seat-lite-cell.aisle,
.busve-seat-lite-cell.aisle{
  background:linear-gradient(180deg,#f8fafc 0%,#eef2f7 100%) !important;
  border:1px dashed #cbd5e1 !important;
  color:transparent !important;
  -webkit-text-fill-color:transparent !important;
  box-shadow:inset 0 0 0 1px rgba(148,163,184,.22) !important;
  text-decoration:none !important;
  position:relative !important;
  overflow:hidden !important;
}
#busve_seatmap_lite_overlay .busve-seat-lite-cell.aisle::before,
.busve-seat-lite-overlay .busve-seat-lite-cell.aisle::before,
#busve_seat_lite_bus .busve-seat-lite-cell.aisle::before,
.busve-seat-lite-cell.aisle::before{
  content:'' !important;
  display:block !important;
  width:56% !important;
  height:4px !important;
  border-radius:999px !important;
  background:repeating-linear-gradient(90deg,#cbd5e1 0 7px,transparent 7px 12px) !important;
  opacity:.95 !important;
}
#busve_seatmap_lite_overlay .busve-seat-lite-cell.aisle:hover,
.busve-seat-lite-overlay .busve-seat-lite-cell.aisle:hover,
#busve_seat_lite_bus .busve-seat-lite-cell.aisle:hover,
.busve-seat-lite-cell.aisle:hover{
  border-color:#94a3b8 !important;
  background:linear-gradient(180deg,#f1f5f9 0%,#e2e8f0 100%) !important;
}
.busve-seat-lite-legend i.aisle{
  background:#eef2f7 !important;
  border:1px dashed #94a3b8 !important;
}


/* =========================================================
   BUSVE v8.0.8 - Iconografía profesional SeatMap Lite
========================================================= */
.busve-seat-lite-tools button{display:inline-flex!important;align-items:center!important;gap:8px!important;padding:8px 12px!important}
.busve-seat-lite-tools .bv-sm-tool-ico{display:inline-flex;align-items:center;justify-content:center;width:18px;height:18px;flex:0 0 18px}
.busve-seat-lite-tools .bv-sm-tool-text{display:inline-flex;align-items:center;line-height:1}
.busve-seat-lite-cell .bv-sm-cell-ico{display:flex;align-items:center;justify-content:center;width:18px;height:18px;margin:0 auto 2px}
.busve-seat-lite-cell .bv-sm-svg{width:18px;height:18px;display:block}
.busve-seat-lite-tools .bv-sm-svg{width:18px;height:18px;display:block}
.busve-seat-lite-cell.driver .bv-sm-cell-ico{width:20px;height:20px}
.busve-seat-lite-cell.door .bv-sm-cell-ico,.busve-seat-lite-cell.bathroom .bv-sm-cell-ico,.busve-seat-lite-cell.stairs .bv-sm-cell-ico{width:18px;height:18px}
.busve-seat-lite-cell.blocked .bv-sm-cell-ico{margin-bottom:0}
#busve_seatmap_lite_overlay .busve-seat-lite-cell .bv-sm-svg,
.busve-seat-lite-overlay .busve-seat-lite-cell .bv-sm-svg,
#busve_seatmap_lite_overlay .busve-seat-lite-tools .bv-sm-svg,
.busve-seat-lite-overlay .busve-seat-lite-tools .bv-sm-svg{color:currentColor!important;fill:currentColor!important;stroke:currentColor!important;-webkit-text-fill-color:currentColor!important}


/* =========================================================
   BUSVE v8.0.9 - SeatMap Pro Visual (carrocería tipo bus)
========================================================= */
.busve-seat-lite-bus-shell{padding:14px 8px 18px}
.busve-seat-lite-bus{
  position:relative;
  width:min(100%,460px);
  min-width:300px;
  padding:96px 22px 68px;
  border:4px solid #cbd5e1;
  border-radius:92px 92px 42px 42px;
  background:linear-gradient(180deg,#ffffff 0%,#f8fbff 72%,#f1f5f9 100%);
  box-shadow:inset 0 0 0 6px #edf2f7, inset 0 -24px 30px rgba(148,163,184,.10), 0 24px 55px rgba(15,23,42,.16);
  overflow:visible;
}
.busve-seat-lite-bus::before,
.busve-seat-lite-bus::after{
  content:"";
  position:absolute;
  top:126px;
  bottom:96px;
  width:12px;
  border-radius:12px;
  background:linear-gradient(180deg,#1e293b,#334155);
  box-shadow:0 0 0 4px #e2e8f0;
  opacity:.92;
}
.busve-seat-lite-bus::before{left:-10px}
.busve-seat-lite-bus::after{right:-10px}
.busve-seat-lite-bus-front{
  position:absolute;
  top:14px;
  left:16px;
  right:16px;
  height:62px;
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:flex-start;
  pointer-events:none;
}
.busve-seat-lite-destination{
  width:46%;
  height:10px;
  border-radius:999px;
  background:linear-gradient(90deg,#102a57,#1d4ed8,#102a57);
  box-shadow:0 2px 8px rgba(29,78,216,.22);
  margin-bottom:6px;
}
.busve-seat-lite-windshield{
  position:relative;
  top:auto;left:auto;transform:none;
  width:72%;
  height:38px;
  border-radius:26px 26px 16px 16px;
  background:linear-gradient(180deg,#d8ecff 0%,#f8fcff 100%);
  border:1px solid #93c5fd;
  box-shadow:inset 0 2px 0 rgba(255,255,255,.92), 0 8px 16px rgba(148,163,184,.18);
  overflow:hidden;
}
.busve-seat-lite-windshield::before{
  content:"";
  position:absolute;
  inset:4px 49% 4px calc(49% - 1px);
  background:rgba(59,130,246,.18);
  border-radius:3px;
}
.busve-seat-lite-windshield::after{
  content:"";
  position:absolute;
  top:4px; left:8px; right:8px; height:10px;
  border-radius:999px;
  background:linear-gradient(90deg,rgba(255,255,255,.0),rgba(255,255,255,.88),rgba(255,255,255,.0));
}
.busve-seat-lite-headlights,
.busve-seat-lite-taillights{
  position:absolute;
  left:0; right:0;
  display:flex;
  justify-content:space-between;
  align-items:center;
  padding:0 26px;
}
.busve-seat-lite-headlights{top:34px}
.busve-seat-lite-headlights span,
.busve-seat-lite-taillights span{
  display:block;
  width:20px;
  height:10px;
  border-radius:999px;
}
.busve-seat-lite-headlights .left,
.busve-seat-lite-headlights .right{
  background:linear-gradient(90deg,#fde68a,#facc15);
  box-shadow:0 0 12px rgba(250,204,21,.55);
}
.busve-seat-lite-mirror{
  position:absolute;
  top:20px;
  width:18px;
  height:8px;
  border-radius:999px;
  background:#334155;
  box-shadow:0 0 0 3px #e2e8f0;
}
.busve-seat-lite-mirror.left{left:4px; transform:rotate(-18deg)}
.busve-seat-lite-mirror.right{right:4px; transform:rotate(18deg)}
.busve-seat-lite-bus-rear{
  position:absolute;
  left:16px;
  right:16px;
  bottom:12px;
  height:36px;
  pointer-events:none;
}
.busve-seat-lite-taillights{bottom:10px;padding:0 22px}
.busve-seat-lite-taillights .left,
.busve-seat-lite-taillights .right{
  background:linear-gradient(90deg,#ef4444,#dc2626);
  box-shadow:0 0 10px rgba(239,68,68,.45);
}
.busve-seat-lite-bumper{
  position:absolute;
  left:20%; right:20%; bottom:0;
  height:6px;
  border-radius:999px;
  background:linear-gradient(90deg,#64748b,#94a3b8,#64748b);
}
.busve-seat-lite-grid{position:relative;z-index:2}
.busve-seat-lite-cell{min-height:48px;border-radius:16px}
.busve-seat-lite-cell.seat{background:linear-gradient(180deg,#ffffff 0%,#f8fafc 100%)}
.busve-seat-lite-cell.seat.selected{background:linear-gradient(180deg,#38bdf8 0%,#2563eb 100%)}
.busve-seat-lite-cell.aisle{
  background:repeating-linear-gradient(180deg,transparent 0 8px, rgba(203,213,225,.65) 8px 12px, transparent 12px 20px)!important;
  border:0!important;
}
.busve-seat-lite-legend{margin-top:16px;padding:10px 12px;border:1px solid #e2e8f0;border-radius:16px;background:#fff;box-shadow:0 8px 22px rgba(15,23,42,.05)}
@media(max-width:480px){
  .busve-seat-lite-bus{padding:82px 12px 58px;border-radius:68px 68px 30px 30px}
  .busve-seat-lite-windshield{width:78%;height:32px}
  .busve-seat-lite-headlights{top:30px;padding:0 18px}
  .busve-seat-lite-headlights span,.busve-seat-lite-taillights span{width:16px;height:8px}
  .busve-seat-lite-bus::before,.busve-seat-lite-bus::after{top:108px;bottom:82px}
  .busve-seat-lite-cell{min-height:40px;border-radius:13px}
}


/* =========================================================
   BUSVE v8.1.0 - SeatMap Pro estados visuales y numeración
========================================================= */
.busve-seat-lite-cell.seat{
  background:linear-gradient(180deg,#ffffff 0%,#f8fafc 100%)!important;
  border-color:#94a3b8!important;
  color:#0f172a!important;
}
.busve-seat-lite-cell .bv-sm-seat-wrap{
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:center;
  gap:2px;
  line-height:1;
}
.busve-seat-lite-cell .bv-sm-seat-icon{
  display:flex;
  align-items:center;
  justify-content:center;
  width:20px;
  height:18px;
  color:#2563eb;
}
.busve-seat-lite-cell .bv-sm-seat-icon .bv-sm-svg{
  width:18px;
  height:18px;
  display:block;
}
.busve-seat-lite-cell .bv-sm-seat-num{
  font-size:10px;
  font-weight:950;
  color:#0f172a;
  letter-spacing:.02em;
}
#busve_seatmap_lite_overlay .busve-seat-lite-cell.seat.selected,
#busve_seatmap_lite_overlay .busve-seat-lite-cell.selected,
.busve-seat-lite-overlay .busve-seat-lite-cell.seat.selected,
.busve-seat-lite-overlay .busve-seat-lite-cell.selected,
.busve-seat-lite-grid .busve-seat-lite-cell.seat.selected,
.busve-seat-lite-grid .busve-seat-lite-cell.selected{
  background:linear-gradient(180deg,#ef4444 0%,#dc2626 100%) !important;
  border-color:#b91c1c !important;
  color:#ffffff !important;
  -webkit-text-fill-color:#ffffff !important;
  box-shadow:0 12px 24px rgba(220,38,38,.28), inset 0 0 0 2px rgba(255,255,255,.35) !important;
}
#busve_seatmap_lite_overlay .busve-seat-lite-cell.seat.selected .bv-sm-seat-icon,
.busve-seat-lite-overlay .busve-seat-lite-cell.seat.selected .bv-sm-seat-icon,
#busve_seatmap_lite_overlay .busve-seat-lite-cell.selected .bv-sm-seat-icon,
.busve-seat-lite-overlay .busve-seat-lite-cell.selected .bv-sm-seat-icon{
  color:#ffffff !important;
}
#busve_seatmap_lite_overlay .busve-seat-lite-cell.seat.selected .bv-sm-seat-num,
.busve-seat-lite-overlay .busve-seat-lite-cell.seat.selected .bv-sm-seat-num,
#busve_seatmap_lite_overlay .busve-seat-lite-cell.selected .bv-sm-seat-num,
.busve-seat-lite-overlay .busve-seat-lite-cell.selected .bv-sm-seat-num{
  opacity:.15 !important;
  color:#ffffff !important;
}
#busve_seatmap_lite_overlay .busve-seat-lite-cell.seat.selected::after,
.busve-seat-lite-overlay .busve-seat-lite-cell.seat.selected::after{
  content:attr(data-seatno) !important;
  position:absolute !important;
  top:-8px !important;
  right:-8px !important;
  min-width:24px !important;
  height:24px !important;
  padding:0 6px !important;
  border-radius:999px !important;
  background:#22c55e !important;
  color:#ffffff !important;
  -webkit-text-fill-color:#ffffff !important;
  display:flex !important;
  align-items:center !important;
  justify-content:center !important;
  font-size:10px !important;
  font-weight:950 !important;
  line-height:1 !important;
  box-shadow:0 8px 16px rgba(34,197,94,.30) !important;
  border:2px solid #ffffff !important;
}
#busve_seatmap_lite_overlay .busve-seat-lite-cell.seat.occupied,
.busve-seat-lite-overlay .busve-seat-lite-cell.seat.occupied{
  background:linear-gradient(180deg,#fee2e2 0%,#fecaca 100%) !important;
  border-color:#ef4444 !important;
  color:#991b1b !important;
}
#busve_seatmap_lite_overlay .busve-seat-lite-cell.seat.occupied .bv-sm-seat-icon,
.busve-seat-lite-overlay .busve-seat-lite-cell.seat.occupied .bv-sm-seat-icon{color:#dc2626 !important}
#busve_seatmap_lite_overlay .busve-seat-lite-cell.seat.occupied .bv-sm-seat-num,
.busve-seat-lite-overlay .busve-seat-lite-cell.seat.occupied .bv-sm-seat-num{color:#991b1b !important}
#busve_seatmap_lite_overlay .busve-seat-lite-cell.seat.occupied::after,
.busve-seat-lite-overlay .busve-seat-lite-cell.seat.occupied::after{
  content:attr(data-seatno) !important;
  position:absolute !important;
  top:-8px !important;
  right:-8px !important;
  min-width:24px !important;
  height:24px !important;
  padding:0 6px !important;
  border-radius:999px !important;
  background:#ef4444 !important;
  color:#ffffff !important;
  display:flex !important;
  align-items:center !important;
  justify-content:center !important;
  font-size:10px !important;
  font-weight:950 !important;
  line-height:1 !important;
  border:2px solid #ffffff !important;
}
.busve-seat-lite-legend i.selected{background:#dc2626!important;border-color:#b91c1c!important}
.busve-seat-lite-legend i.available{background:#fff!important;border-color:#94a3b8!important}
.busve-seat-lite-legend i.occupied{background:#ef4444!important;border-color:#dc2626!important}
@media(max-width:480px){
  .busve-seat-lite-cell .bv-sm-seat-icon{width:18px;height:16px}
  .busve-seat-lite-cell .bv-sm-seat-icon .bv-sm-svg{width:16px;height:16px}
  .busve-seat-lite-cell .bv-sm-seat-num{font-size:9px}
  #busve_seatmap_lite_overlay .busve-seat-lite-cell.seat.selected::after,
  .busve-seat-lite-overlay .busve-seat-lite-cell.seat.selected::after,
  #busve_seatmap_lite_overlay .busve-seat-lite-cell.seat.occupied::after,
  .busve-seat-lite-overlay .busve-seat-lite-cell.seat.occupied::after{min-width:22px!important;height:22px!important;font-size:9px!important}
}


/* =========================================================
   BUSVE v8.1.1 - SeatMap Pro completo: herramientas y leyenda
========================================================= */
.busve-seat-lite-tools{gap:9px!important}
.busve-seat-lite-tools button{min-height:38px!important;border-radius:14px!important;white-space:nowrap!important}
.busve-seat-lite-tools button.active{box-shadow:0 10px 22px rgba(29,78,216,.22)!important}
.busve-seat-lite-cell.front_door,
.busve-seat-lite-cell.rear_door,
.busve-seat-lite-cell.door{
  background:#fff7ed!important;
  border-color:#fb923c!important;
  color:#9a3412!important;
}
.busve-seat-lite-cell.front_door .bv-sm-cell-ico,
.busve-seat-lite-cell.rear_door .bv-sm-cell-ico,
.busve-seat-lite-cell.door .bv-sm-cell-ico{color:#ea580c!important}
.busve-seat-lite-cell.collector{
  background:#eef2ff!important;
  border-color:#c7d2fe!important;
  color:#3730a3!important;
}
.busve-seat-lite-cell.collector .bv-sm-cell-ico{color:#4f46e5!important}
.busve-seat-lite-cell.luggage{
  background:#f0fdf4!important;
  border-color:#bbf7d0!important;
  color:#166534!important;
}
.busve-seat-lite-cell.luggage .bv-sm-cell-ico{color:#16a34a!important}
.busve-seat-lite-legend{
  justify-content:flex-start!important;
  gap:8px!important;
}
.busve-seat-lite-legend span{
  display:inline-flex!important;
  align-items:center!important;
  gap:6px!important;
  padding:7px 9px!important;
  border:1px solid #e2e8f0!important;
  border-radius:999px!important;
  background:#ffffff!important;
  line-height:1!important;
}
.busve-seat-lite-legend .bv-sm-legend-special b{
  display:inline-flex!important;
  width:16px!important;
  height:16px!important;
  align-items:center!important;
  justify-content:center!important;
  color:#1d4ed8!important;
}
.busve-seat-lite-legend .bv-sm-legend-special svg{
  width:16px!important;
  height:16px!important;
  display:block!important;
}
.busve-seat-lite-cell .bv-sm-cell-ico .bv-sm-svg,
.busve-seat-lite-tools .bv-sm-svg,
.busve-seat-lite-legend .bv-sm-svg{
  color:currentColor!important;
  fill:currentColor!important;
  stroke:currentColor!important;
}
@media(max-width:560px){
  .busve-seat-lite-tools button{flex:1 1 calc(50% - 8px)!important;justify-content:center!important}
  .busve-seat-lite-legend span{font-size:11px!important;padding:6px 8px!important}
}


/* =========================================================
   BUSVE v8.1.2 - SeatMap: asientos SVG reales y visibles
========================================================= */
.busve-seat-lite-cell.seat{
  min-height:58px!important;
  border-radius:18px!important;
  background:linear-gradient(180deg,#ffffff 0%,#f8fafc 100%)!important;
}
.busve-seat-lite-cell .bv-sm-seat-wrap{gap:3px!important;min-width:0!important;width:100%!important}
.busve-seat-lite-cell .bv-sm-seat-icon{width:34px!important;height:30px!important;color:#1d4ed8!important;display:flex!important;align-items:center!important;justify-content:center!important}
.busve-seat-lite-cell .bv-sm-seat-icon .bv-sm-seat-svg{width:34px!important;height:30px!important;display:block!important;overflow:visible!important}
.busve-seat-lite-tools .bv-sm-seat-svg{width:20px!important;height:20px!important;display:block!important}
.busve-seat-lite-cell .bv-sm-seat-svg .bv-seat-back,
.busve-seat-lite-cell .bv-sm-seat-svg .bv-seat-base,
.busve-seat-lite-cell .bv-sm-seat-svg .bv-seat-arm,
.busve-seat-lite-cell .bv-sm-seat-svg .bv-seat-leg,
.busve-seat-lite-cell .bv-sm-seat-svg .bv-seat-cushion{stroke:currentColor!important;fill:none!important}
.busve-seat-lite-cell .bv-sm-seat-num{font-size:11px!important;font-weight:950!important;letter-spacing:.03em!important;color:#0f172a!important}
#busve_seatmap_lite_overlay .busve-seat-lite-cell.seat.selected .bv-sm-seat-icon,
.busve-seat-lite-overlay .busve-seat-lite-cell.seat.selected .bv-sm-seat-icon{color:#ffffff!important}
#busve_seatmap_lite_overlay .busve-seat-lite-cell.seat.occupied .bv-sm-seat-icon,
.busve-seat-lite-overlay .busve-seat-lite-cell.seat.occupied .bv-sm-seat-icon{color:#b91c1c!important}
@media(max-width:480px){.busve-seat-lite-cell.seat{min-height:48px!important}.busve-seat-lite-cell .bv-sm-seat-icon{width:28px!important;height:24px!important}.busve-seat-lite-cell .bv-sm-seat-icon .bv-sm-seat-svg{width:28px!important;height:24px!important}.busve-seat-lite-cell .bv-sm-seat-num{font-size:9px!important}}


/* =========================================================
   BUSVE v8.1.3 - Asiento SVG refinado
========================================================= */
.bv-sm-seat-svg{overflow:visible}
.busve-seat-lite-cell .bv-sm-seat-icon{width:22px;height:22px}
.busve-seat-lite-cell .bv-sm-seat-icon .bv-sm-seat-svg{width:22px;height:22px;display:block}
.busve-seat-lite-cell .bv-sm-seat-svg .bv-seat-fill{opacity:.16}
.busve-seat-lite-tools .bv-sm-seat-svg{width:20px;height:20px;display:block}
#busve_seatmap_lite_overlay .busve-seat-lite-cell.seat.selected .bv-sm-seat-svg,
.busve-seat-lite-overlay .busve-seat-lite-cell.seat.selected .bv-sm-seat-svg{filter:drop-shadow(0 1px 0 rgba(255,255,255,.18))}


/* =========================================================
   BUSVE v8.1.4 - Estados finales SeatMap
   Seleccionado azul BUSVE / Ocupado rojo
========================================================= */
#busve_seatmap_lite_overlay .busve-seat-lite-cell.seat.selected,
#busve_seatmap_lite_overlay .busve-seat-lite-cell.selected,
.busve-seat-lite-overlay .busve-seat-lite-cell.seat.selected,
.busve-seat-lite-overlay .busve-seat-lite-cell.selected,
.busve-seat-lite-grid .busve-seat-lite-cell.seat.selected,
.busve-seat-lite-grid .busve-seat-lite-cell.selected{
  background:linear-gradient(135deg,#12b6e8 0%,#2563eb 100%) !important;
  border-color:#0ea5e9 !important;
  color:#ffffff !important;
  -webkit-text-fill-color:#ffffff !important;
  box-shadow:0 12px 24px rgba(37,99,235,.30), inset 0 0 0 2px rgba(255,255,255,.36) !important;
}
#busve_seatmap_lite_overlay .busve-seat-lite-cell.seat.selected .bv-sm-seat-icon,
.busve-seat-lite-overlay .busve-seat-lite-cell.seat.selected .bv-sm-seat-icon,
#busve_seatmap_lite_overlay .busve-seat-lite-cell.selected .bv-sm-seat-icon,
.busve-seat-lite-overlay .busve-seat-lite-cell.selected .bv-sm-seat-icon{
  color:#ffffff !important;
}
#busve_seatmap_lite_overlay .busve-seat-lite-cell.seat.selected .bv-sm-seat-num,
.busve-seat-lite-overlay .busve-seat-lite-cell.seat.selected .bv-sm-seat-num,
#busve_seatmap_lite_overlay .busve-seat-lite-cell.selected .bv-sm-seat-num,
.busve-seat-lite-overlay .busve-seat-lite-cell.selected .bv-sm-seat-num{
  color:#ffffff !important;
  opacity:.16 !important;
}
#busve_seatmap_lite_overlay .busve-seat-lite-cell.seat.selected::after,
.busve-seat-lite-overlay .busve-seat-lite-cell.seat.selected::after{
  background:#22c55e !important;
  color:#ffffff !important;
  -webkit-text-fill-color:#ffffff !important;
  border:2px solid #ffffff !important;
}
#busve_seatmap_lite_overlay .busve-seat-lite-cell.seat.occupied,
#busve_seatmap_lite_overlay .busve-seat-lite-cell.occupied,
.busve-seat-lite-overlay .busve-seat-lite-cell.seat.occupied,
.busve-seat-lite-overlay .busve-seat-lite-cell.occupied,
.busve-seat-lite-grid .busve-seat-lite-cell.seat.occupied,
.busve-seat-lite-grid .busve-seat-lite-cell.occupied{
  background:linear-gradient(180deg,#ef4444 0%,#dc2626 100%) !important;
  border-color:#b91c1c !important;
  color:#ffffff !important;
  -webkit-text-fill-color:#ffffff !important;
  box-shadow:0 10px 22px rgba(220,38,38,.24), inset 0 0 0 2px rgba(255,255,255,.22) !important;
}
#busve_seatmap_lite_overlay .busve-seat-lite-cell.seat.occupied .bv-sm-seat-icon,
.busve-seat-lite-overlay .busve-seat-lite-cell.seat.occupied .bv-sm-seat-icon,
#busve_seatmap_lite_overlay .busve-seat-lite-cell.occupied .bv-sm-seat-icon,
.busve-seat-lite-overlay .busve-seat-lite-cell.occupied .bv-sm-seat-icon{
  color:#ffffff !important;
}
#busve_seatmap_lite_overlay .busve-seat-lite-cell.seat.occupied .bv-sm-seat-num,
.busve-seat-lite-overlay .busve-seat-lite-cell.seat.occupied .bv-sm-seat-num,
#busve_seatmap_lite_overlay .busve-seat-lite-cell.occupied .bv-sm-seat-num,
.busve-seat-lite-overlay .busve-seat-lite-cell.occupied .bv-sm-seat-num{
  color:#ffffff !important;
  opacity:.18 !important;
}
#busve_seatmap_lite_overlay .busve-seat-lite-cell.seat.occupied::after,
.busve-seat-lite-overlay .busve-seat-lite-cell.seat.occupied::after{
  background:#991b1b !important;
  color:#ffffff !important;
  -webkit-text-fill-color:#ffffff !important;
  border:2px solid #ffffff !important;
}
.busve-seat-lite-legend i.selected{background:linear-gradient(135deg,#12b6e8,#2563eb)!important;border-color:#0ea5e9!important}
.busve-seat-lite-legend i.occupied{background:#dc2626!important;border-color:#b91c1c!important}

/* =========================================================
   BUSVE v8.7.1 - SeatMap visual tipo bus real
   Asientos con SVG, número integrado y estados claros.
========================================================= */
#busve_seatmap_lite_overlay .busve-seat-lite-bus,
.busve-seat-lite-overlay .busve-seat-lite-bus{
  width:min(100%,360px) !important;
  max-width:360px !important;
  min-width:270px !important;
  padding:92px 14px 58px !important;
  border-radius:62px 62px 24px 24px !important;
  border:3px solid #d1d5db !important;
  background:linear-gradient(180deg,#f8fafc 0%,#ffffff 18%,#ffffff 80%,#f1f5f9 100%) !important;
  box-shadow:inset 0 0 0 5px #eef2f7,0 22px 50px rgba(15,23,42,.14) !important;
}
#busve_seatmap_lite_overlay .busve-seat-lite-grid,
.busve-seat-lite-overlay .busve-seat-lite-grid{
  gap:4px 5px !important;
  align-items:center !important;
}
#busve_seatmap_lite_overlay .busve-seat-lite-grid .busve-seat-lite-cell,
.busve-seat-lite-overlay .busve-seat-lite-grid .busve-seat-lite-cell{
  position:relative !important;
  min-height:48px !important;
  padding:0 !important;
  border-radius:10px !important;
  box-shadow:none !important;
}
#busve_seatmap_lite_overlay .busve-seat-lite-cell.seat,
.busve-seat-lite-overlay .busve-seat-lite-cell.seat,
.busve-seat-lite-grid .busve-seat-lite-cell.seat{
  background:transparent !important;
  border:1px solid transparent !important;
  color:#64748b !important;
  -webkit-text-fill-color:currentColor !important;
}
#busve_seatmap_lite_overlay .busve-seat-lite-cell.seat:hover,
.busve-seat-lite-overlay .busve-seat-lite-cell.seat:hover{
  transform:translateY(-1px) !important;
  background:#f8fafc !important;
  border-color:#dbeafe !important;
}
#busve_seatmap_lite_overlay .busve-seat-lite-cell .bv-sm-seat-wrap,
.busve-seat-lite-overlay .busve-seat-lite-cell .bv-sm-seat-wrap{
  position:relative !important;
  width:40px !important;
  height:42px !important;
  margin:auto !important;
  display:flex !important;
  align-items:center !important;
  justify-content:center !important;
  flex-direction:row !important;
  gap:0 !important;
}
#busve_seatmap_lite_overlay .busve-seat-lite-cell .bv-sm-seat-icon,
.busve-seat-lite-overlay .busve-seat-lite-cell .bv-sm-seat-icon{
  position:absolute !important;
  inset:0 !important;
  width:40px !important;
  height:42px !important;
  color:#6b7280 !important;
  display:flex !important;
  align-items:center !important;
  justify-content:center !important;
}
#busve_seatmap_lite_overlay .busve-seat-lite-cell .bv-sm-seat-icon .bv-sm-seat-svg,
.busve-seat-lite-overlay .busve-seat-lite-cell .bv-sm-seat-icon .bv-sm-seat-svg{
  width:40px !important;
  height:42px !important;
  display:block !important;
  overflow:visible !important;
}
#busve_seatmap_lite_overlay .busve-seat-lite-cell .bv-sm-seat-svg .bv-seat-back,
#busve_seatmap_lite_overlay .busve-seat-lite-cell .bv-sm-seat-svg .bv-seat-cushion,
#busve_seatmap_lite_overlay .busve-seat-lite-cell .bv-sm-seat-svg .bv-seat-arm,
#busve_seatmap_lite_overlay .busve-seat-lite-cell .bv-sm-seat-svg .bv-seat-leg,
#busve_seatmap_lite_overlay .busve-seat-lite-cell .bv-sm-seat-svg .bv-seat-shine,
.busve-seat-lite-overlay .busve-seat-lite-cell .bv-sm-seat-svg .bv-seat-back,
.busve-seat-lite-overlay .busve-seat-lite-cell .bv-sm-seat-svg .bv-seat-cushion,
.busve-seat-lite-overlay .busve-seat-lite-cell .bv-sm-seat-svg .bv-seat-arm,
.busve-seat-lite-overlay .busve-seat-lite-cell .bv-sm-seat-svg .bv-seat-leg,
.busve-seat-lite-overlay .busve-seat-lite-cell .bv-sm-seat-svg .bv-seat-shine{
  stroke:currentColor !important;
}
#busve_seatmap_lite_overlay .busve-seat-lite-cell .bv-sm-seat-svg .bv-seat-fill,
.busve-seat-lite-overlay .busve-seat-lite-cell .bv-sm-seat-svg .bv-seat-fill{
  fill:currentColor !important;
  opacity:.04 !important;
}
#busve_seatmap_lite_overlay .busve-seat-lite-cell .bv-sm-seat-num,
.busve-seat-lite-overlay .busve-seat-lite-cell .bv-sm-seat-num{
  position:absolute !important;
  top:16px !important;
  left:50% !important;
  transform:translateX(-50%) !important;
  z-index:3 !important;
  min-width:18px !important;
  text-align:center !important;
  font-size:10px !important;
  line-height:1 !important;
  font-weight:950 !important;
  letter-spacing:-.02em !important;
  color:#0f172a !important;
  -webkit-text-fill-color:#0f172a !important;
  opacity:1 !important;
  text-shadow:0 1px 0 rgba(255,255,255,.75) !important;
}
#busve_seatmap_lite_overlay .busve-seat-lite-cell.seat.selected,
#busve_seatmap_lite_overlay .busve-seat-lite-cell.selected,
.busve-seat-lite-overlay .busve-seat-lite-cell.seat.selected,
.busve-seat-lite-overlay .busve-seat-lite-cell.selected,
.busve-seat-lite-grid .busve-seat-lite-cell.seat.selected,
.busve-seat-lite-grid .busve-seat-lite-cell.selected{
  background:transparent !important;
  border-color:transparent !important;
  box-shadow:none !important;
  color:#0f9f8d !important;
  -webkit-text-fill-color:currentColor !important;
}
#busve_seatmap_lite_overlay .busve-seat-lite-cell.seat.selected .bv-sm-seat-icon,
#busve_seatmap_lite_overlay .busve-seat-lite-cell.selected .bv-sm-seat-icon,
.busve-seat-lite-overlay .busve-seat-lite-cell.seat.selected .bv-sm-seat-icon,
.busve-seat-lite-overlay .busve-seat-lite-cell.selected .bv-sm-seat-icon{
  color:#0f9f8d !important;
  filter:drop-shadow(0 3px 3px rgba(15,159,141,.20)) !important;
}
#busve_seatmap_lite_overlay .busve-seat-lite-cell.seat.selected .bv-seat-fill,
#busve_seatmap_lite_overlay .busve-seat-lite-cell.selected .bv-seat-fill,
.busve-seat-lite-overlay .busve-seat-lite-cell.seat.selected .bv-seat-fill,
.busve-seat-lite-overlay .busve-seat-lite-cell.selected .bv-seat-fill{
  opacity:.88 !important;
}
#busve_seatmap_lite_overlay .busve-seat-lite-cell.seat.selected .bv-sm-seat-num,
#busve_seatmap_lite_overlay .busve-seat-lite-cell.selected .bv-sm-seat-num,
.busve-seat-lite-overlay .busve-seat-lite-cell.seat.selected .bv-sm-seat-num,
.busve-seat-lite-overlay .busve-seat-lite-cell.selected .bv-sm-seat-num{
  color:#ffffff !important;
  -webkit-text-fill-color:#ffffff !important;
  opacity:1 !important;
  text-shadow:0 1px 2px rgba(0,0,0,.35) !important;
}
#busve_seatmap_lite_overlay .busve-seat-lite-cell.seat.selected::after,
#busve_seatmap_lite_overlay .busve-seat-lite-cell.selected::after,
.busve-seat-lite-overlay .busve-seat-lite-cell.seat.selected::after,
.busve-seat-lite-overlay .busve-seat-lite-cell.selected::after{
  content:none !important;
  display:none !important;
}
#busve_seatmap_lite_overlay .busve-seat-lite-cell.seat.occupied,
#busve_seatmap_lite_overlay .busve-seat-lite-cell.occupied,
.busve-seat-lite-overlay .busve-seat-lite-cell.seat.occupied,
.busve-seat-lite-overlay .busve-seat-lite-cell.occupied,
.busve-seat-lite-grid .busve-seat-lite-cell.seat.occupied,
.busve-seat-lite-grid .busve-seat-lite-cell.occupied{
  background:transparent !important;
  border-color:transparent !important;
  box-shadow:none !important;
  color:#dc2626 !important;
  -webkit-text-fill-color:currentColor !important;
}
#busve_seatmap_lite_overlay .busve-seat-lite-cell.seat.occupied .bv-sm-seat-icon,
#busve_seatmap_lite_overlay .busve-seat-lite-cell.occupied .bv-sm-seat-icon,
.busve-seat-lite-overlay .busve-seat-lite-cell.seat.occupied .bv-sm-seat-icon,
.busve-seat-lite-overlay .busve-seat-lite-cell.occupied .bv-sm-seat-icon{
  color:#dc2626 !important;
}
#busve_seatmap_lite_overlay .busve-seat-lite-cell.seat.occupied .bv-seat-fill,
#busve_seatmap_lite_overlay .busve-seat-lite-cell.occupied .bv-seat-fill,
.busve-seat-lite-overlay .busve-seat-lite-cell.seat.occupied .bv-seat-fill,
.busve-seat-lite-overlay .busve-seat-lite-cell.occupied .bv-seat-fill{
  opacity:.10 !important;
}
#busve_seatmap_lite_overlay .busve-seat-lite-cell.seat.occupied .bv-sm-seat-num,
#busve_seatmap_lite_overlay .busve-seat-lite-cell.occupied .bv-sm-seat-num,
.busve-seat-lite-overlay .busve-seat-lite-cell.seat.occupied .bv-sm-seat-num,
.busve-seat-lite-overlay .busve-seat-lite-cell.occupied .bv-sm-seat-num{
  color:#991b1b !important;
  -webkit-text-fill-color:#991b1b !important;
  opacity:1 !important;
}
#busve_seatmap_lite_overlay .busve-seat-lite-cell.seat.occupied::after,
#busve_seatmap_lite_overlay .busve-seat-lite-cell.occupied::after,
.busve-seat-lite-overlay .busve-seat-lite-cell.seat.occupied::after,
.busve-seat-lite-overlay .busve-seat-lite-cell.occupied::after{
  content:'×' !important;
  position:absolute !important;
  inset:7px 7px auto auto !important;
  width:17px !important;
  height:17px !important;
  border-radius:999px !important;
  display:flex !important;
  align-items:center !important;
  justify-content:center !important;
  background:#dc2626 !important;
  color:#fff !important;
  -webkit-text-fill-color:#fff !important;
  border:2px solid #fff !important;
  font-size:14px !important;
  line-height:1 !important;
  font-weight:950 !important;
  box-shadow:0 4px 10px rgba(220,38,38,.25) !important;
}
#busve_seatmap_lite_overlay .busve-seat-lite-cell.blocked,
.busve-seat-lite-overlay .busve-seat-lite-cell.blocked{
  background:transparent !important;
  border:1px solid transparent !important;
  color:#dc2626 !important;
  -webkit-text-fill-color:#dc2626 !important;
  text-decoration:none !important;
}
#busve_seatmap_lite_overlay .busve-seat-lite-cell.blocked .bv-sm-cell-ico,
.busve-seat-lite-overlay .busve-seat-lite-cell.blocked .bv-sm-cell-ico{
  width:36px !important;
  height:36px !important;
  border:2px solid #ef4444 !important;
  border-radius:8px !important;
  display:flex !important;
  align-items:center !important;
  justify-content:center !important;
  color:#ef4444 !important;
}
#busve_seatmap_lite_overlay .busve-seat-lite-cell.aisle,
.busve-seat-lite-overlay .busve-seat-lite-cell.aisle{
  background:linear-gradient(90deg,transparent 0 43%,rgba(203,213,225,.45) 43% 57%,transparent 57% 100%) !important;
  border:0 !important;
  min-height:48px !important;
}
#busve_seatmap_lite_overlay .busve-seat-lite-cell.front_door,
#busve_seatmap_lite_overlay .busve-seat-lite-cell.rear_door,
#busve_seatmap_lite_overlay .busve-seat-lite-cell.door,
.busve-seat-lite-overlay .busve-seat-lite-cell.front_door,
.busve-seat-lite-overlay .busve-seat-lite-cell.rear_door,
.busve-seat-lite-overlay .busve-seat-lite-cell.door{
  background:#e5e7eb !important;
  border:1px solid #cbd5e1 !important;
  border-radius:10px !important;
  color:#334155 !important;
  writing-mode:vertical-rl !important;
  text-orientation:mixed !important;
  font-weight:950 !important;
  letter-spacing:.02em !important;
}
#busve_seatmap_lite_overlay .busve-seat-lite-cell.front_door small,
#busve_seatmap_lite_overlay .busve-seat-lite-cell.rear_door small,
#busve_seatmap_lite_overlay .busve-seat-lite-cell.door small,
.busve-seat-lite-overlay .busve-seat-lite-cell.front_door small,
.busve-seat-lite-overlay .busve-seat-lite-cell.rear_door small,
.busve-seat-lite-overlay .busve-seat-lite-cell.door small{
  color:#334155 !important;
  -webkit-text-fill-color:#334155 !important;
  font-size:9px !important;
  writing-mode:vertical-rl !important;
}
#busve_seatmap_lite_overlay .busve-seat-lite-cell.driver,
#busve_seatmap_lite_overlay .busve-seat-lite-cell.collector,
.busve-seat-lite-overlay .busve-seat-lite-cell.driver,
.busve-seat-lite-overlay .busve-seat-lite-cell.collector{
  background:transparent !important;
  border-color:transparent !important;
  color:#9ca3af !important;
}
#busve_seatmap_lite_overlay .busve-seat-lite-cell.driver .bv-sm-cell-ico,
#busve_seatmap_lite_overlay .busve-seat-lite-cell.collector .bv-sm-cell-ico,
.busve-seat-lite-overlay .busve-seat-lite-cell.driver .bv-sm-cell-ico,
.busve-seat-lite-overlay .busve-seat-lite-cell.collector .bv-sm-cell-ico{
  color:#9ca3af !important;
}
#busve_seatmap_lite_overlay .busve-seat-lite-legend i.selected,
.busve-seat-lite-overlay .busve-seat-lite-legend i.selected{background:#0f9f8d !important;border-color:#0f9f8d !important}
#busve_seatmap_lite_overlay .busve-seat-lite-legend i.occupied,
.busve-seat-lite-overlay .busve-seat-lite-legend i.occupied{background:#dc2626 !important;border-color:#dc2626 !important}
@media(max-width:480px){
  #busve_seatmap_lite_overlay .busve-seat-lite-bus,
  .busve-seat-lite-overlay .busve-seat-lite-bus{width:min(100%,320px)!important;min-width:260px!important;padding:84px 9px 50px!important;border-radius:54px 54px 22px 22px!important}
  #busve_seatmap_lite_overlay .busve-seat-lite-grid,
  .busve-seat-lite-overlay .busve-seat-lite-grid{gap:3px 4px!important}
  #busve_seatmap_lite_overlay .busve-seat-lite-grid .busve-seat-lite-cell,
  .busve-seat-lite-overlay .busve-seat-lite-grid .busve-seat-lite-cell{min-height:43px!important}
  #busve_seatmap_lite_overlay .busve-seat-lite-cell .bv-sm-seat-wrap,
  .busve-seat-lite-overlay .busve-seat-lite-cell .bv-sm-seat-wrap{width:35px!important;height:38px!important}
  #busve_seatmap_lite_overlay .busve-seat-lite-cell .bv-sm-seat-icon,
  .busve-seat-lite-overlay .busve-seat-lite-cell .bv-sm-seat-icon,
  #busve_seatmap_lite_overlay .busve-seat-lite-cell .bv-sm-seat-icon .bv-sm-seat-svg,
  .busve-seat-lite-overlay .busve-seat-lite-cell .bv-sm-seat-icon .bv-sm-seat-svg{width:35px!important;height:38px!important}
  #busve_seatmap_lite_overlay .busve-seat-lite-cell .bv-sm-seat-num,
  .busve-seat-lite-overlay .busve-seat-lite-cell .bv-sm-seat-num{top:15px!important;font-size:9px!important}
}


/* =========================================================
   BUSVE v8.7.4 - Refinamiento visual profesional SeatMap
   Chofer con asiento + volante, escaleras mejoradas,
   asiento no disponible gris, ocupado rojo, números en círculo.
========================================================= */
#busve_seatmap_lite_overlay .busve-seat-lite-cell,
.busve-seat-lite-overlay .busve-seat-lite-cell{
  overflow:visible !important;
}
#busve_seatmap_lite_overlay .busve-seat-lite-cell .bv-sm-seat-wrap,
.busve-seat-lite-overlay .busve-seat-lite-cell .bv-sm-seat-wrap{
  width:42px !important;
  height:44px !important;
}
#busve_seatmap_lite_overlay .busve-seat-lite-cell .bv-sm-seat-icon,
.busve-seat-lite-overlay .busve-seat-lite-cell .bv-sm-seat-icon{
  width:42px !important;
  height:44px !important;
  color:#64748b !important;
}
#busve_seatmap_lite_overlay .busve-seat-lite-cell .bv-sm-seat-icon .bv-sm-seat-svg,
.busve-seat-lite-overlay .busve-seat-lite-cell .bv-sm-seat-icon .bv-sm-seat-svg{
  width:42px !important;
  height:44px !important;
}
#busve_seatmap_lite_overlay .busve-seat-lite-cell .bv-sm-seat-num,
.busve-seat-lite-overlay .busve-seat-lite-cell .bv-sm-seat-num{
  top:13px !important;
  left:50% !important;
  transform:translateX(-50%) !important;
  min-width:19px !important;
  height:19px !important;
  padding:0 5px !important;
  border-radius:999px !important;
  background:#ffffff !important;
  border:1.6px solid #cbd5e1 !important;
  color:#0f172a !important;
  -webkit-text-fill-color:#0f172a !important;
  font-size:10px !important;
  display:inline-flex !important;
  align-items:center !important;
  justify-content:center !important;
  box-shadow:0 3px 10px rgba(15,23,42,.12) !important;
  text-shadow:none !important;
}
#busve_seatmap_lite_overlay .busve-seat-lite-cell.seat.selected,
#busve_seatmap_lite_overlay .busve-seat-lite-cell.selected,
.busve-seat-lite-overlay .busve-seat-lite-cell.seat.selected,
.busve-seat-lite-overlay .busve-seat-lite-cell.selected,
.busve-seat-lite-grid .busve-seat-lite-cell.seat.selected,
.busve-seat-lite-grid .busve-seat-lite-cell.selected{
  background:rgba(15,159,141,.06) !important;
  border:1px solid rgba(15,159,141,.18) !important;
  border-radius:14px !important;
  box-shadow:0 10px 18px rgba(15,159,141,.10) !important;
}
#busve_seatmap_lite_overlay .busve-seat-lite-cell.seat.selected .bv-sm-seat-icon,
#busve_seatmap_lite_overlay .busve-seat-lite-cell.selected .bv-sm-seat-icon,
.busve-seat-lite-overlay .busve-seat-lite-cell.seat.selected .bv-sm-seat-icon,
.busve-seat-lite-overlay .busve-seat-lite-cell.selected .bv-sm-seat-icon{
  color:#0f9f8d !important;
}
#busve_seatmap_lite_overlay .busve-seat-lite-cell.seat.selected .bv-sm-seat-num,
#busve_seatmap_lite_overlay .busve-seat-lite-cell.selected .bv-sm-seat-num,
.busve-seat-lite-overlay .busve-seat-lite-cell.seat.selected .bv-sm-seat-num,
.busve-seat-lite-overlay .busve-seat-lite-cell.selected .bv-sm-seat-num{
  background:#0f9f8d !important;
  border-color:#0b7f70 !important;
  color:#ffffff !important;
  -webkit-text-fill-color:#ffffff !important;
  box-shadow:0 4px 12px rgba(15,159,141,.28) !important;
}
#busve_seatmap_lite_overlay .busve-seat-lite-cell.seat.occupied,
#busve_seatmap_lite_overlay .busve-seat-lite-cell.occupied,
.busve-seat-lite-overlay .busve-seat-lite-cell.seat.occupied,
.busve-seat-lite-overlay .busve-seat-lite-cell.occupied,
.busve-seat-lite-grid .busve-seat-lite-cell.seat.occupied,
.busve-seat-lite-grid .busve-seat-lite-cell.occupied{
  background:rgba(220,38,38,.06) !important;
  border:1px solid rgba(220,38,38,.18) !important;
  border-radius:14px !important;
  box-shadow:0 10px 18px rgba(220,38,38,.10) !important;
  color:#dc2626 !important;
}
#busve_seatmap_lite_overlay .busve-seat-lite-cell.seat.occupied .bv-sm-seat-icon,
#busve_seatmap_lite_overlay .busve-seat-lite-cell.occupied .bv-sm-seat-icon,
.busve-seat-lite-overlay .busve-seat-lite-cell.seat.occupied .bv-sm-seat-icon,
.busve-seat-lite-overlay .busve-seat-lite-cell.occupied .bv-sm-seat-icon{
  color:#dc2626 !important;
}
#busve_seatmap_lite_overlay .busve-seat-lite-cell.seat.occupied .bv-sm-seat-num,
#busve_seatmap_lite_overlay .busve-seat-lite-cell.occupied .bv-sm-seat-num,
.busve-seat-lite-overlay .busve-seat-lite-cell.seat.occupied .bv-sm-seat-num,
.busve-seat-lite-overlay .busve-seat-lite-cell.occupied .bv-sm-seat-num{
  background:#dc2626 !important;
  border-color:#b91c1c !important;
  color:#ffffff !important;
  -webkit-text-fill-color:#ffffff !important;
  box-shadow:0 4px 12px rgba(220,38,38,.24) !important;
}
#busve_seatmap_lite_overlay .busve-seat-lite-cell.seat.occupied::after,
#busve_seatmap_lite_overlay .busve-seat-lite-cell.occupied::after,
.busve-seat-lite-overlay .busve-seat-lite-cell.seat.occupied::after,
.busve-seat-lite-overlay .busve-seat-lite-cell.occupied::after{
  inset:5px 5px auto auto !important;
  width:16px !important;
  height:16px !important;
  font-size:12px !important;
  background:#991b1b !important;
  border-color:#ffffff !important;
}
#busve_seatmap_lite_overlay .busve-seat-lite-cell.blocked,
.busve-seat-lite-overlay .busve-seat-lite-cell.blocked{
  background:linear-gradient(180deg,#f3f4f6 0%,#e5e7eb 100%) !important;
  border:1px solid #cbd5e1 !important;
  border-radius:14px !important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.85),0 8px 16px rgba(148,163,184,.10) !important;
  color:#64748b !important;
  -webkit-text-fill-color:#64748b !important;
}
#busve_seatmap_lite_overlay .busve-seat-lite-cell.blocked .bv-sm-cell-ico,
.busve-seat-lite-overlay .busve-seat-lite-cell.blocked .bv-sm-cell-ico{
  width:34px !important;
  height:34px !important;
  border:1.8px solid #94a3b8 !important;
  border-radius:10px !important;
  background:rgba(255,255,255,.66) !important;
  color:#64748b !important;
}
#busve_seatmap_lite_overlay .busve-seat-lite-cell.driver,
#busve_seatmap_lite_overlay .busve-seat-lite-cell.collector,
.busve-seat-lite-overlay .busve-seat-lite-cell.driver,
.busve-seat-lite-overlay .busve-seat-lite-cell.collector{
  background:linear-gradient(180deg,#f8fafc 0%,#eef2f7 100%) !important;
  border:1px solid #d8dee8 !important;
  border-radius:14px !important;
  color:#64748b !important;
}
#busve_seatmap_lite_overlay .busve-seat-lite-cell.driver .bv-sm-cell-ico,
#busve_seatmap_lite_overlay .busve-seat-lite-cell.collector .bv-sm-cell-ico,
.busve-seat-lite-overlay .busve-seat-lite-cell.driver .bv-sm-cell-ico,
.busve-seat-lite-overlay .busve-seat-lite-cell.collector .bv-sm-cell-ico{
  width:26px !important;
  height:26px !important;
  color:#64748b !important;
}
#busve_seatmap_lite_overlay .busve-seat-lite-cell.stairs,
.busve-seat-lite-overlay .busve-seat-lite-cell.stairs{
  background:linear-gradient(180deg,#eef2ff 0%,#e0e7ff 100%) !important;
  border:1px solid #c7d2fe !important;
  border-radius:14px !important;
  color:#4f46e5 !important;
}
#busve_seatmap_lite_overlay .busve-seat-lite-cell.stairs .bv-sm-cell-ico,
.busve-seat-lite-overlay .busve-seat-lite-cell.stairs .bv-sm-cell-ico{
  width:22px !important;
  height:22px !important;
  color:#4f46e5 !important;
}
#busve_seatmap_lite_overlay .busve-seat-lite-cell.driver small,
#busve_seatmap_lite_overlay .busve-seat-lite-cell.stairs small,
.busve-seat-lite-overlay .busve-seat-lite-cell.driver small,
.busve-seat-lite-overlay .busve-seat-lite-cell.stairs small{
  color:currentColor !important;
  -webkit-text-fill-color:currentColor !important;
  font-size:8.5px !important;
}
#busve_seatmap_lite_overlay .busve-seat-lite-legend i.blocked,
.busve-seat-lite-overlay .busve-seat-lite-legend i.blocked{
  background:#cbd5e1 !important;
  border-color:#94a3b8 !important;
}


/* =========================================================
   BUSVE v8.7.5 - Ajuste fino solicitado por usuario
   Mantener badge superior como antes y solo cambiar ícono.
========================================================= */
#busve_seatmap_lite_overlay .busve-seat-lite-cell .bv-sm-seat-wrap,
.busve-seat-lite-overlay .busve-seat-lite-cell .bv-sm-seat-wrap{
  width:40px !important;
  height:42px !important;
}
#busve_seatmap_lite_overlay .busve-seat-lite-cell .bv-sm-seat-icon,
.busve-seat-lite-overlay .busve-seat-lite-cell .bv-sm-seat-icon{
  inset:auto !important;
  position:relative !important;
  width:40px !important;
  height:42px !important;
  color:#64748b !important;
}
#busve_seatmap_lite_overlay .busve-seat-lite-cell .bv-sm-seat-icon .bv-sm-seat-svg,
.busve-seat-lite-overlay .busve-seat-lite-cell .bv-sm-seat-icon .bv-sm-seat-svg{
  width:40px !important;
  height:42px !important;
}
#busve_seatmap_lite_overlay .busve-seat-lite-cell .bv-sm-seat-num,
.busve-seat-lite-overlay .busve-seat-lite-cell .bv-sm-seat-num{
  position:absolute !important;
  top:3px !important;
  right:2px !important;
  left:auto !important;
  transform:none !important;
  z-index:5 !important;
  min-width:18px !important;
  height:18px !important;
  padding:0 4px !important;
  border-radius:999px !important;
  background:#ffffff !important;
  border:1.6px solid #cbd5e1 !important;
  color:#0f172a !important;
  -webkit-text-fill-color:#0f172a !important;
  font-size:9px !important;
  line-height:1 !important;
  font-weight:950 !important;
  display:inline-flex !important;
  align-items:center !important;
  justify-content:center !important;
  box-shadow:0 2px 8px rgba(15,23,42,.14) !important;
  text-shadow:none !important;
  white-space:nowrap !important;
}
#busve_seatmap_lite_overlay .busve-seat-lite-cell.seat,
.busve-seat-lite-overlay .busve-seat-lite-cell.seat{
  background:transparent !important;
  border-color:transparent !important;
  box-shadow:none !important;
}
#busve_seatmap_lite_overlay .busve-seat-lite-cell.seat.selected,
#busve_seatmap_lite_overlay .busve-seat-lite-cell.selected,
.busve-seat-lite-overlay .busve-seat-lite-cell.seat.selected,
.busve-seat-lite-overlay .busve-seat-lite-cell.selected,
.busve-seat-lite-grid .busve-seat-lite-cell.seat.selected,
.busve-seat-lite-grid .busve-seat-lite-cell.selected{
  background:transparent !important;
  border-color:transparent !important;
  box-shadow:none !important;
}
#busve_seatmap_lite_overlay .busve-seat-lite-cell.seat.selected .bv-sm-seat-icon,
#busve_seatmap_lite_overlay .busve-seat-lite-cell.selected .bv-sm-seat-icon,
.busve-seat-lite-overlay .busve-seat-lite-cell.seat.selected .bv-sm-seat-icon,
.busve-seat-lite-overlay .busve-seat-lite-cell.selected .bv-sm-seat-icon{
  color:#0A4CFF !important;
  filter:drop-shadow(0 3px 6px rgba(10,76,255,.22)) !important;
}
#busve_seatmap_lite_overlay .busve-seat-lite-cell.seat.selected .bv-seat-fill,
#busve_seatmap_lite_overlay .busve-seat-lite-cell.selected .bv-seat-fill,
.busve-seat-lite-overlay .busve-seat-lite-cell.seat.selected .bv-seat-fill,
.busve-seat-lite-overlay .busve-seat-lite-cell.selected .bv-seat-fill{
  opacity:.18 !important;
}
#busve_seatmap_lite_overlay .busve-seat-lite-cell.seat.selected .bv-sm-seat-num,
#busve_seatmap_lite_overlay .busve-seat-lite-cell.selected .bv-sm-seat-num,
.busve-seat-lite-overlay .busve-seat-lite-cell.seat.selected .bv-sm-seat-num,
.busve-seat-lite-overlay .busve-seat-lite-cell.selected .bv-sm-seat-num{
  background:#0A4CFF !important;
  border-color:#0837b8 !important;
  color:#ffffff !important;
  -webkit-text-fill-color:#ffffff !important;
  box-shadow:0 3px 10px rgba(10,76,255,.28) !important;
}
#busve_seatmap_lite_overlay .busve-seat-lite-cell.seat.selected::after,
#busve_seatmap_lite_overlay .busve-seat-lite-cell.selected::after,
.busve-seat-lite-overlay .busve-seat-lite-cell.seat.selected::after,
.busve-seat-lite-overlay .busve-seat-lite-cell.selected::after{
  content:'✓' !important;
  position:absolute !important;
  left:2px !important;
  top:3px !important;
  width:16px !important;
  height:16px !important;
  border-radius:999px !important;
  display:flex !important;
  align-items:center !important;
  justify-content:center !important;
  background:#0A4CFF !important;
  color:#fff !important;
  -webkit-text-fill-color:#fff !important;
  border:2px solid #fff !important;
  box-shadow:0 3px 10px rgba(10,76,255,.22) !important;
  font-size:10px !important;
  font-weight:950 !important;
  line-height:1 !important;
  z-index:6 !important;
}
#busve_seatmap_lite_overlay .busve-seat-lite-cell.seat.occupied,
#busve_seatmap_lite_overlay .busve-seat-lite-cell.occupied,
.busve-seat-lite-overlay .busve-seat-lite-cell.seat.occupied,
.busve-seat-lite-overlay .busve-seat-lite-cell.occupied,
.busve-seat-lite-grid .busve-seat-lite-cell.seat.occupied,
.busve-seat-lite-grid .busve-seat-lite-cell.occupied{
  background:transparent !important;
  border-color:transparent !important;
  box-shadow:none !important;
}
#busve_seatmap_lite_overlay .busve-seat-lite-cell.seat.occupied .bv-sm-seat-icon,
#busve_seatmap_lite_overlay .busve-seat-lite-cell.occupied .bv-sm-seat-icon,
.busve-seat-lite-overlay .busve-seat-lite-cell.seat.occupied .bv-sm-seat-icon,
.busve-seat-lite-overlay .busve-seat-lite-cell.occupied .bv-sm-seat-icon{
  color:#dc2626 !important;
}
#busve_seatmap_lite_overlay .busve-seat-lite-cell.seat.occupied .bv-seat-fill,
#busve_seatmap_lite_overlay .busve-seat-lite-cell.occupied .bv-seat-fill,
.busve-seat-lite-overlay .busve-seat-lite-cell.seat.occupied .bv-seat-fill,
.busve-seat-lite-overlay .busve-seat-lite-cell.occupied .bv-seat-fill{
  opacity:.18 !important;
}
#busve_seatmap_lite_overlay .busve-seat-lite-cell.seat.occupied .bv-sm-seat-num,
#busve_seatmap_lite_overlay .busve-seat-lite-cell.occupied .bv-sm-seat-num,
.busve-seat-lite-overlay .busve-seat-lite-cell.seat.occupied .bv-sm-seat-num,
.busve-seat-lite-overlay .busve-seat-lite-cell.occupied .bv-sm-seat-num{
  background:#dc2626 !important;
  border-color:#b91c1c !important;
  color:#ffffff !important;
  -webkit-text-fill-color:#ffffff !important;
}
#busve_seatmap_lite_overlay .busve-seat-lite-cell.seat.occupied::after,
#busve_seatmap_lite_overlay .busve-seat-lite-cell.occupied::after,
.busve-seat-lite-overlay .busve-seat-lite-cell.seat.occupied::after,
.busve-seat-lite-overlay .busve-seat-lite-cell.occupied::after{
  content:'×' !important;
  inset:3px auto auto 2px !important;
  width:16px !important;
  height:16px !important;
  font-size:10px !important;
  background:#dc2626 !important;
  border:2px solid #fff !important;
  z-index:6 !important;
}
#busve_seatmap_lite_overlay .busve-seat-lite-cell.blocked,
.busve-seat-lite-overlay .busve-seat-lite-cell.blocked{
  background:transparent !important;
  border:1px solid transparent !important;
  box-shadow:none !important;
}
#busve_seatmap_lite_overlay .busve-seat-lite-cell.blocked .bv-sm-cell-ico,
.busve-seat-lite-overlay .busve-seat-lite-cell.blocked .bv-sm-cell-ico{
  width:34px !important;
  height:34px !important;
  border:1.8px solid #94a3b8 !important;
  border-radius:10px !important;
  background:linear-gradient(180deg,#f3f4f6 0%,#e5e7eb 100%) !important;
  color:#64748b !important;
  box-shadow:0 4px 10px rgba(148,163,184,.10) !important;
}
#busve_seatmap_lite_overlay .busve-seat-lite-cell.driver,
#busve_seatmap_lite_overlay .busve-seat-lite-cell.collector,
.busve-seat-lite-overlay .busve-seat-lite-cell.driver,
.busve-seat-lite-overlay .busve-seat-lite-cell.collector,
#busve_seatmap_lite_overlay .busve-seat-lite-cell.stairs,
.busve-seat-lite-overlay .busve-seat-lite-cell.stairs{
  overflow:hidden !important;
}
#busve_seatmap_lite_overlay .busve-seat-lite-cell.driver small,
#busve_seatmap_lite_overlay .busve-seat-lite-cell.collector small,
#busve_seatmap_lite_overlay .busve-seat-lite-cell.stairs small,
.busve-seat-lite-overlay .busve-seat-lite-cell.driver small,
.busve-seat-lite-overlay .busve-seat-lite-cell.collector small,
.busve-seat-lite-overlay .busve-seat-lite-cell.stairs small{
  margin-top:1px !important;
  line-height:1.05 !important;
}
@media(max-width:480px){
  #busve_seatmap_lite_overlay .busve-seat-lite-cell .bv-sm-seat-wrap,
  .busve-seat-lite-overlay .busve-seat-lite-cell .bv-sm-seat-wrap{width:35px !important;height:37px !important}
  #busve_seatmap_lite_overlay .busve-seat-lite-cell .bv-sm-seat-icon,
  .busve-seat-lite-overlay .busve-seat-lite-cell .bv-sm-seat-icon,
  #busve_seatmap_lite_overlay .busve-seat-lite-cell .bv-sm-seat-icon .bv-sm-seat-svg,
  .busve-seat-lite-overlay .busve-seat-lite-cell .bv-sm-seat-icon .bv-sm-seat-svg{width:35px !important;height:37px !important}
  #busve_seatmap_lite_overlay .busve-seat-lite-cell .bv-sm-seat-num,
  .busve-seat-lite-overlay .busve-seat-lite-cell .bv-sm-seat-num{top:2px !important;right:1px !important;min-width:16px !important;height:16px !important;font-size:8px !important}
  #busve_seatmap_lite_overlay .busve-seat-lite-cell.seat.selected::after,
  #busve_seatmap_lite_overlay .busve-seat-lite-cell.selected::after,
  .busve-seat-lite-overlay .busve-seat-lite-cell.seat.selected::after,
  .busve-seat-lite-overlay .busve-seat-lite-cell.selected::after,
  #busve_seatmap_lite_overlay .busve-seat-lite-cell.seat.occupied::after,
  #busve_seatmap_lite_overlay .busve-seat-lite-cell.occupied::after,
  .busve-seat-lite-overlay .busve-seat-lite-cell.seat.occupied::after,
  .busve-seat-lite-overlay .busve-seat-lite-cell.occupied::after{width:14px !important;height:14px !important;font-size:9px !important}
}


/* =========================================================
   BUSVE v8.7.6 - SeatMap sin chulito/check
   Seleccionado = verde, ocupado = rojo, bloqueado = gris.
========================================================= */
#busve_seatmap_lite_overlay .busve-seat-lite-cell.seat.selected::after,
#busve_seatmap_lite_overlay .busve-seat-lite-cell.selected::after,
.busve-seat-lite-overlay .busve-seat-lite-cell.seat.selected::after,
.busve-seat-lite-overlay .busve-seat-lite-cell.selected::after{
  content:none !important;
  display:none !important;
}
#busve_seatmap_lite_overlay .busve-seat-lite-cell.seat.selected .bv-sm-seat-icon,
#busve_seatmap_lite_overlay .busve-seat-lite-cell.selected .bv-sm-seat-icon,
.busve-seat-lite-overlay .busve-seat-lite-cell.seat.selected .bv-sm-seat-icon,
.busve-seat-lite-overlay .busve-seat-lite-cell.selected .bv-sm-seat-icon{
  color:#10b981 !important;
  filter:drop-shadow(0 3px 6px rgba(16,185,129,.20)) !important;
}
#busve_seatmap_lite_overlay .busve-seat-lite-cell.seat.selected .bv-seat-fill,
#busve_seatmap_lite_overlay .busve-seat-lite-cell.selected .bv-seat-fill,
.busve-seat-lite-overlay .busve-seat-lite-cell.seat.selected .bv-seat-fill,
.busve-seat-lite-overlay .busve-seat-lite-cell.selected .bv-seat-fill{
  opacity:.18 !important;
}
#busve_seatmap_lite_overlay .busve-seat-lite-cell.seat.selected .bv-sm-seat-num,
#busve_seatmap_lite_overlay .busve-seat-lite-cell.selected .bv-sm-seat-num,
.busve-seat-lite-overlay .busve-seat-lite-cell.seat.selected .bv-sm-seat-num,
.busve-seat-lite-overlay .busve-seat-lite-cell.selected .bv-sm-seat-num{
  background:#10b981 !important;
  border-color:#059669 !important;
  color:#ffffff !important;
  -webkit-text-fill-color:#ffffff !important;
  box-shadow:0 3px 10px rgba(16,185,129,.26) !important;
}
#busve_seatmap_lite_overlay .busve-seat-lite-cell.seat.occupied .bv-sm-seat-icon,
#busve_seatmap_lite_overlay .busve-seat-lite-cell.occupied .bv-sm-seat-icon,
.busve-seat-lite-overlay .busve-seat-lite-cell.seat.occupied .bv-sm-seat-icon,
.busve-seat-lite-overlay .busve-seat-lite-cell.occupied .bv-sm-seat-icon{
  color:#ef4444 !important;
  filter:drop-shadow(0 3px 6px rgba(239,68,68,.16)) !important;
}
#busve_seatmap_lite_overlay .busve-seat-lite-cell.seat.occupied .bv-sm-seat-num,
#busve_seatmap_lite_overlay .busve-seat-lite-cell.occupied .bv-sm-seat-num,
.busve-seat-lite-overlay .busve-seat-lite-cell.seat.occupied .bv-sm-seat-num,
.busve-seat-lite-overlay .busve-seat-lite-cell.occupied .bv-sm-seat-num{
  background:#ef4444 !important;
  border-color:#dc2626 !important;
  color:#ffffff !important;
  -webkit-text-fill-color:#ffffff !important;
}
#busve_seatmap_lite_overlay .busve-seat-lite-cell.seat.occupied::after,
#busve_seatmap_lite_overlay .busve-seat-lite-cell.occupied::after,
.busve-seat-lite-overlay .busve-seat-lite-cell.seat.occupied::after,
.busve-seat-lite-overlay .busve-seat-lite-cell.occupied::after{
  content:none !important;
  display:none !important;
}
#busve_seatmap_lite_overlay .busve-seat-lite-cell.blocked .bv-sm-cell-ico,
.busve-seat-lite-overlay .busve-seat-lite-cell.blocked .bv-sm-cell-ico{
  background:linear-gradient(180deg,#f3f4f6 0%,#e5e7eb 100%) !important;
  color:#6b7280 !important;
  border-color:#9ca3af !important;
}
#busve_seatmap_lite_overlay .busve-seat-lite-cell.blocked small,
.busve-seat-lite-overlay .busve-seat-lite-cell.blocked small{
  color:#6b7280 !important;
  -webkit-text-fill-color:#6b7280 !important;
}


/* =========================================================
   BUSVE v8.7.7 - Seleccionado verde más marcado
   Debe verse como ocupado rojo, pero en verde.
========================================================= */
#busve_seatmap_lite_overlay .busve-seat-lite-cell.seat.selected,
#busve_seatmap_lite_overlay .busve-seat-lite-cell.selected,
.busve-seat-lite-overlay .busve-seat-lite-cell.seat.selected,
.busve-seat-lite-overlay .busve-seat-lite-cell.selected,
.busve-seat-lite-grid .busve-seat-lite-cell.seat.selected,
.busve-seat-lite-grid .busve-seat-lite-cell.selected{
  background:transparent !important;
  border-color:transparent !important;
  box-shadow:none !important;
}
#busve_seatmap_lite_overlay .busve-seat-lite-cell.seat.selected .bv-sm-seat-icon,
#busve_seatmap_lite_overlay .busve-seat-lite-cell.selected .bv-sm-seat-icon,
.busve-seat-lite-overlay .busve-seat-lite-cell.seat.selected .bv-sm-seat-icon,
.busve-seat-lite-overlay .busve-seat-lite-cell.selected .bv-sm-seat-icon{
  color:#22c55e !important;
  filter:drop-shadow(0 3px 6px rgba(34,197,94,.18)) !important;
}
#busve_seatmap_lite_overlay .busve-seat-lite-cell.seat.selected .bv-sm-seat-icon svg,
#busve_seatmap_lite_overlay .busve-seat-lite-cell.selected .bv-sm-seat-icon svg,
.busve-seat-lite-overlay .busve-seat-lite-cell.seat.selected .bv-sm-seat-icon svg,
.busve-seat-lite-overlay .busve-seat-lite-cell.selected .bv-sm-seat-icon svg{
  color:#22c55e !important;
}
#busve_seatmap_lite_overlay .busve-seat-lite-cell.seat.selected .bv-seat-fill,
#busve_seatmap_lite_overlay .busve-seat-lite-cell.selected .bv-seat-fill,
.busve-seat-lite-overlay .busve-seat-lite-cell.seat.selected .bv-seat-fill,
.busve-seat-lite-overlay .busve-seat-lite-cell.selected .bv-seat-fill{
  opacity:.22 !important;
  fill:currentColor !important;
}
#busve_seatmap_lite_overlay .busve-seat-lite-cell.seat.selected .bv-sm-seat-num,
#busve_seatmap_lite_overlay .busve-seat-lite-cell.selected .bv-sm-seat-num,
.busve-seat-lite-overlay .busve-seat-lite-cell.seat.selected .bv-sm-seat-num,
.busve-seat-lite-overlay .busve-seat-lite-cell.selected .bv-sm-seat-num{
  background:#22c55e !important;
  border-color:#16a34a !important;
  color:#ffffff !important;
  -webkit-text-fill-color:#ffffff !important;
  box-shadow:0 3px 10px rgba(34,197,94,.24) !important;
}


/* =========================================================
   BUSVE v8.7.8 - Relleno interno por estado en asientos
   Disponible, seleccionado, ocupado y no disponible.
========================================================= */
#busve_seatmap_lite_overlay .busve-seat-lite-cell.seat .bv-sm-seat-icon,
.busve-seat-lite-overlay .busve-seat-lite-cell.seat .bv-sm-seat-icon,
.busve-seat-lite-grid .busve-seat-lite-cell.seat .bv-sm-seat-icon{
  color:#64748b !important;
}
#busve_seatmap_lite_overlay .busve-seat-lite-cell.seat .bv-seat-fill,
.busve-seat-lite-overlay .busve-seat-lite-cell.seat .bv-seat-fill,
.busve-seat-lite-grid .busve-seat-lite-cell.seat .bv-seat-fill{
  fill:#e2e8f0 !important;
  opacity:1 !important;
}
#busve_seatmap_lite_overlay .busve-seat-lite-cell.seat.selected .bv-sm-seat-icon,
#busve_seatmap_lite_overlay .busve-seat-lite-cell.selected .bv-sm-seat-icon,
.busve-seat-lite-overlay .busve-seat-lite-cell.seat.selected .bv-sm-seat-icon,
.busve-seat-lite-overlay .busve-seat-lite-cell.selected .bv-sm-seat-icon,
.busve-seat-lite-grid .busve-seat-lite-cell.seat.selected .bv-sm-seat-icon,
.busve-seat-lite-grid .busve-seat-lite-cell.selected .bv-sm-seat-icon{
  color:#16a34a !important;
}
#busve_seatmap_lite_overlay .busve-seat-lite-cell.seat.selected .bv-seat-fill,
#busve_seatmap_lite_overlay .busve-seat-lite-cell.selected .bv-seat-fill,
.busve-seat-lite-overlay .busve-seat-lite-cell.seat.selected .bv-seat-fill,
.busve-seat-lite-overlay .busve-seat-lite-cell.selected .bv-seat-fill,
.busve-seat-lite-grid .busve-seat-lite-cell.seat.selected .bv-seat-fill,
.busve-seat-lite-grid .busve-seat-lite-cell.selected .bv-seat-fill{
  fill:#86efac !important;
  opacity:1 !important;
}
#busve_seatmap_lite_overlay .busve-seat-lite-cell.seat.occupied .bv-sm-seat-icon,
#busve_seatmap_lite_overlay .busve-seat-lite-cell.occupied .bv-sm-seat-icon,
.busve-seat-lite-overlay .busve-seat-lite-cell.seat.occupied .bv-sm-seat-icon,
.busve-seat-lite-overlay .busve-seat-lite-cell.occupied .bv-sm-seat-icon,
.busve-seat-lite-grid .busve-seat-lite-cell.seat.occupied .bv-sm-seat-icon,
.busve-seat-lite-grid .busve-seat-lite-cell.occupied .bv-sm-seat-icon{
  color:#ef4444 !important;
}
#busve_seatmap_lite_overlay .busve-seat-lite-cell.seat.occupied .bv-seat-fill,
#busve_seatmap_lite_overlay .busve-seat-lite-cell.occupied .bv-seat-fill,
.busve-seat-lite-overlay .busve-seat-lite-cell.seat.occupied .bv-seat-fill,
.busve-seat-lite-overlay .busve-seat-lite-cell.occupied .bv-seat-fill,
.busve-seat-lite-grid .busve-seat-lite-cell.seat.occupied .bv-seat-fill,
.busve-seat-lite-grid .busve-seat-lite-cell.occupied .bv-seat-fill{
  fill:#fecaca !important;
  opacity:1 !important;
}
#busve_seatmap_lite_overlay .busve-seat-lite-cell.blocked .bv-sm-cell-ico,
.busve-seat-lite-overlay .busve-seat-lite-cell.blocked .bv-sm-cell-ico,
.busve-seat-lite-grid .busve-seat-lite-cell.blocked .bv-sm-cell-ico{
  background:linear-gradient(180deg,#e5e7eb 0%,#d1d5db 100%) !important;
  color:#6b7280 !important;
  border-color:#9ca3af !important;
}
#busve_seatmap_lite_overlay .busve-seat-lite-cell.seat .bv-sm-seat-num,
.busve-seat-lite-overlay .busve-seat-lite-cell.seat .bv-sm-seat-num,
.busve-seat-lite-grid .busve-seat-lite-cell.seat .bv-sm-seat-num{
  z-index:7 !important;
}


/* BUSVE ERP MASTER v9.2.1.9 — SeatMap sobre checkout flotante */
.busve-seat-lite-overlay.is-open,
.busve-seat-lite-overlay{
  z-index:10000040!important;
}
