/* Ensigna Tours V9.0.7.5.4
   - Canje responsive sin select nativo desbordado
   - Disponibilidad inteligente de zona de asiento en registro WhatsApp
*/

/* ---------- Canje Puntos Ensigna ---------- */
#v8RedeemPoints.v90754-redeem-native{
  position:absolute!important;
  width:1px!important;
  height:1px!important;
  padding:0!important;
  margin:-1px!important;
  overflow:hidden!important;
  clip:rect(0 0 0 0)!important;
  white-space:nowrap!important;
  border:0!important;
  opacity:0!important;
  pointer-events:none!important;
}
.v90754-redeem-trigger{
  width:100%;
  min-height:52px;
  border:1px solid rgba(84,65,230,.28);
  border-radius:14px;
  background:rgba(255,255,255,.92);
  color:#1d2440;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:12px;
  padding:10px 13px;
  text-align:left;
  cursor:pointer;
  box-shadow:0 8px 22px rgba(48,33,201,.07);
  font:inherit;
  max-width:100%;
  box-sizing:border-box;
}
.v90754-redeem-trigger:focus-visible{outline:3px solid rgba(61,46,230,.22);outline-offset:2px}
.v90754-redeem-trigger.is-disabled{opacity:.68;cursor:not-allowed}
.v90754-redeem-trigger-copy{min-width:0;display:grid;gap:2px}
.v90754-redeem-trigger-copy small{font-size:10px;font-weight:850;letter-spacing:.09em;color:#6a70a0}
.v90754-redeem-trigger-copy strong{font-size:14px;line-height:1.25;white-space:normal;overflow-wrap:anywhere;color:#2516aa}
.v90754-redeem-chevron{font-size:22px;color:#5541e6;line-height:1;flex:none}

.v90754-redeem-overlay{
  position:fixed;
  inset:0;
  z-index:2147483000;
  display:flex;
  align-items:flex-end;
  justify-content:center;
  opacity:0;
  pointer-events:none;
  transition:opacity .18s ease;
  padding:max(12px,env(safe-area-inset-top)) 12px max(12px,env(safe-area-inset-bottom));
  box-sizing:border-box;
}
.v90754-redeem-overlay[hidden]{display:none!important}
.v90754-redeem-overlay.is-open{opacity:1;pointer-events:auto}
.v90754-redeem-backdrop{position:absolute;inset:0;background:rgba(10,12,32,.52);backdrop-filter:blur(3px)}
.v90754-redeem-sheet{
  position:relative;
  width:min(100%,520px);
  max-height:min(78vh,620px);
  overflow:auto;
  overscroll-behavior:contain;
  background:#fff;
  border:1px solid rgba(84,65,230,.18);
  border-radius:24px 24px 18px 18px;
  box-shadow:0 28px 80px rgba(13,17,55,.28);
  padding:10px 16px 18px;
  box-sizing:border-box;
  transform:translateY(24px);
  transition:transform .18s ease;
}
.v90754-redeem-overlay.is-open .v90754-redeem-sheet{transform:translateY(0)}
.v90754-redeem-handle{width:42px;height:4px;border-radius:999px;background:#d8d9eb;margin:0 auto 10px}
.v90754-redeem-sheet-head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}
.v90754-redeem-sheet-head small{font-size:10px;font-weight:900;letter-spacing:.11em;color:#168dcc}
.v90754-redeem-sheet-head h3{margin:2px 0 0;font-size:20px;color:#171c35}
.v90754-redeem-sheet>p{margin:8px 0 14px;color:#64708b;font-size:13px;line-height:1.45}
.v90754-redeem-close{width:38px;height:38px;border:0;border-radius:12px;background:#f1f2fb;color:#3724c8;font-size:27px;line-height:1;cursor:pointer;flex:none}
.v90754-redeem-options{display:grid;gap:9px}
.v90754-redeem-option{
  width:100%;
  min-height:54px;
  border:1px solid #e0e3f2;
  background:#f9faff;
  border-radius:14px;
  padding:12px 14px;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:12px;
  color:#202844;
  font:inherit;
  font-weight:800;
  text-align:left;
  cursor:pointer;
  box-sizing:border-box;
}
.v90754-redeem-option.is-selected{border-color:#5a42ef;background:#f1efff;color:#2f1fc3}
.v90754-redeem-option i{font-style:normal;color:#5a42ef;font-size:18px}
.v90754-redeem-empty{padding:16px;border-radius:14px;background:#f6f7fb;color:#747d96;text-align:center}
body.v90754-sheet-open{overflow:hidden!important}

@media (min-width:700px){
  .v90754-redeem-overlay{align-items:center}
  .v90754-redeem-sheet{border-radius:22px;max-height:70vh;padding:16px 18px 20px}
  .v90754-redeem-handle{display:none}
}

/* ---------- Disponibilidad por zona ---------- */
.v90754-seat-availability{
  margin-top:10px;
  border-radius:14px;
  padding:11px 12px;
  display:grid;
  gap:5px;
  background:#f5f7ff;
  border:1px solid #e1e5f7;
  color:#303951;
  box-sizing:border-box;
  width:100%;
}
.v90754-seat-availability>strong{font-size:12px;color:#2721a8}
.v90754-seat-availability>span{font-size:11px;line-height:1.4;color:#66708a}
.v90754-seat-availability.is-loading{background:#f7f8fb}
.v90754-seat-availability.is-pending{background:#fff8e9;border-color:#f4dda6}
.v90754-seat-availability.is-pending>strong{color:#9d6300}
.v90754-zone-chips{display:flex;flex-wrap:wrap;gap:6px;margin-top:3px}
.v90754-zone-chip{display:inline-flex;align-items:center;min-height:28px;padding:5px 8px;border-radius:999px;font-size:10px;font-weight:850;background:#ecfbf2;color:#177342;border:1px solid #cbeed8}
.v90754-zone-chip.is-partial{background:#fff5de;color:#995d00;border-color:#f3d79a}
.v90754-zone-chip.is-full{background:#fff0ef;color:#aa3b34;border-color:#f0cac6}
.v90754-seat-availability em{font-style:normal;font-size:11px;line-height:1.4;color:#4c5872;margin-top:2px}
.v90754-seat-availability em.is-warning{color:#975a00;font-weight:750}

@media (max-width:480px){
  .v90754-redeem-trigger{min-height:50px;border-radius:12px;padding:9px 11px}
  .v90754-redeem-trigger-copy strong{font-size:13px}
  .v90754-redeem-sheet{width:100%;max-height:82vh}
  .v90754-redeem-option{min-height:56px;font-size:14px}
  .v90754-seat-availability{padding:10px;border-radius:12px}
}
