/* V252.33 · Estadías Públicas Enterprise integradas a RENTALS 360 */
.public-booking-v25231a {
  display: grid;
  gap: 14px;
  margin-top: 8px;
  padding-top: 18px;
  border-top: 1px solid var(--border, rgba(148,163,184,.24));
}
.public-booking-v25231a[hidden] { display: none !important; }
.public-booking-v25231a h3 { margin: 0; color: var(--heading); font-size: 1.16rem; }
.public-booking-v25231a p { margin: 0; color: var(--text-muted); line-height: 1.55; }
.public-booking-badge-v25231a {
  display: inline-flex; width: max-content; padding: 6px 9px; border-radius: 999px;
  border: 1px solid color-mix(in srgb, var(--accent) 42%, transparent);
  background: color-mix(in srgb, var(--accent) 12%, transparent); color: var(--accent);
  font-size: .7rem; font-weight: 900; letter-spacing: .09em; text-transform: uppercase;
}
.public-booking-form-v25231a { display: grid; gap: 12px; }
.public-booking-grid-v25231a { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 10px; }
.public-booking-grid-v25231a .field { min-width: 0; }
.public-booking-grid-v25231a .field.is-wide { grid-column: 1 / -1; }
.public-booking-grid-v25231a input,
.public-booking-grid-v25231a select,
.public-booking-grid-v25231a textarea {
  width: 100%; box-sizing: border-box;
}
.public-booking-quote-v25231a {
  display: grid; gap: 8px; padding: 13px; border-radius: 18px;
  border: 1px solid var(--border, rgba(148,163,184,.24));
  background: color-mix(in srgb, var(--surface-alt, #0f172a) 78%, transparent);
}
.public-booking-quote-v25231a div { display: flex; justify-content: space-between; gap: 12px; color: var(--text-muted); }
.public-booking-quote-v25231a div:last-child { padding-top: 8px; border-top: 1px solid var(--border); color: var(--heading); font-weight: 900; }
.public-booking-quote-v25231a .is-discount-v25236 { color: #15803d; }
.public-booking-status-v25231a { padding: 11px 12px; border-radius: 14px; line-height: 1.45; }
.public-booking-status-v25231a.is-info { background: rgba(59,130,246,.12); border: 1px solid rgba(59,130,246,.32); }
.public-booking-status-v25231a.is-success { background: rgba(34,197,94,.12); border: 1px solid rgba(34,197,94,.34); }
.public-booking-status-v25231a.is-error { background: rgba(239,68,68,.12); border: 1px solid rgba(239,68,68,.34); }
.public-booking-note-v25231a { font-size: .78rem; color: var(--text-soft, var(--text-muted)); }
.public-stay-calendar-v25233 {
  display: grid; gap: 12px; min-width: 0; padding: 16px; border: 1px solid var(--border);
  border-radius: 20px; background: linear-gradient(145deg,color-mix(in srgb,var(--surface) 95%,var(--accent) 5%),var(--surface-alt));
  box-shadow: 0 18px 45px rgba(2,6,23,.08);
}
.public-stay-calendar-head-v25233 { display: grid; grid-template-columns: minmax(0,1fr); align-items: start; gap: 11px; }
.public-stay-calendar-head-v25233>div:first-child{display:grid;gap:3px}
.public-stay-calendar-head-v25233 strong { color: var(--heading); font-size: .98rem; line-height: 1.25; }
.public-stay-calendar-head-v25233 span { color: var(--text-muted); font-size: .76rem; line-height: 1.4; }
.public-stay-calendar-legend-v25233 { display: flex; flex-wrap: wrap; gap: 16px; padding: 1px 2px; color: var(--text-muted); font-size: .74rem; }
.public-stay-calendar-legend-v25233 span { display: inline-flex; align-items: center; gap: 5px; }
.public-stay-calendar-legend-v25233 i { width: 8px; height: 8px; border-radius: 999px; background: rgba(148,163,184,.55); }
.public-stay-calendar-legend-v25233 i.is-available { background: #21c276; box-shadow: 0 0 0 4px rgba(33,194,118,.12); }
.public-stay-month-nav-v25237{display:grid;grid-template-columns:34px minmax(120px,1fr) 34px;align-items:center;gap:7px;width:100%}.public-stay-month-nav-v25237 button{display:grid;place-items:center;width:34px;height:34px;padding:0;border:1px solid var(--border);border-radius:11px;background:var(--surface);color:var(--heading);cursor:pointer}.public-stay-month-nav-v25237 button:disabled{opacity:.35;cursor:not-allowed}.public-stay-month-nav-v25237 b{text-align:center;text-transform:capitalize;font-size:.82rem}.public-stay-calendar-week-v25237,.public-stay-calendar-grid-v25233{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:5px}.public-stay-calendar-week-v25237 span{text-align:center;color:var(--text-muted);font-size:.66rem;font-weight:850}.public-stay-calendar-grid-v25233 { padding: 2px 0 4px; }
.public-stay-day-v25233 { display: grid; align-content:space-between; gap: 2px; min-width:0; min-height: 70px; padding: 6px; border: 1px solid var(--border); border-radius: 10px; background: var(--surface); color: var(--heading); text-align: left; cursor: pointer; }
.public-stay-day-v25233 span { color: var(--text-muted); font-size: .68rem; text-transform: uppercase; }
.public-stay-day-v25233 b { font-size: .82rem; }
.public-stay-day-v25233 strong { color: var(--accent); font-size: .66rem; white-space:nowrap; overflow:hidden; text-overflow:ellipsis }
.public-stay-day-v25233 small { color: var(--text-muted); font-size: .58rem; line-height:1.2 }
.public-stay-day-v25233.is-empty{visibility:hidden}
.public-stay-day-v25233.is-available:hover,.public-stay-day-v25233.is-available:focus-visible { border-color: color-mix(in srgb,var(--accent) 65%,transparent); transform: translateY(-1px); box-shadow: 0 10px 24px rgba(2,6,23,.12); }
.public-stay-day-v25233.is-unavailable { opacity: .48; cursor: not-allowed; background: color-mix(in srgb,var(--surface-alt) 86%,transparent); }
.public-stay-message-v25233 { display: grid; gap: 12px; padding: 15px; border: 1px solid var(--border); border-radius: 20px; background: color-mix(in srgb,var(--surface) 92%,var(--accent) 8%); }
.public-stay-message-v25233 form { display: grid; gap: 9px; }
.public-stay-message-v25233 .field { display: grid; gap: 5px; }
.public-stay-message-v25233 input,.public-stay-message-v25233 textarea { width: 100%; box-sizing: border-box; }
.public-stay-direct-contact-v25237{display:grid;gap:8px;margin-top:12px;padding:12px;border:1px solid color-mix(in srgb,#21c276 42%,var(--border));border-radius:15px;background:color-mix(in srgb,#21c276 7%,var(--surface))}.public-stay-direct-contact-v25237>div{display:flex;flex-wrap:wrap;gap:8px}.public-stay-direct-contact-v25237 .btn{flex:1 1 120px;justify-content:center}.public-stay-direct-contact-v25237 small{color:var(--text-muted);font-size:.7rem}.public-stay-direct-contact-v25237.is-pending{border-color:var(--border);background:var(--surface-alt)}.public-stay-whatsapp-v25237{border-color:rgba(33,194,118,.55);color:#15803d}.public-stay-call-v25237{border-color:rgba(59,130,246,.45)}
.detail-feature-chip-v25233 { display: inline-flex !important; align-items: center; gap: 7px; }
.detail-feature-chip-v25233 i { display: inline-grid; place-items: center; min-width: 22px; height: 22px; padding: 0 3px; border-radius: 8px; background: color-mix(in srgb,var(--accent) 14%,transparent); color: var(--accent); font-style: normal; font-size: .72rem; font-weight: 900; }
.customer-bookings-board-v25231a { display: grid; gap: 14px; }
.customer-booking-card-v25231a {
  display: grid; grid-template-columns: 112px minmax(0,1fr); gap: 16px;
  padding: 16px; border: 1px solid var(--border); border-radius: 20px; background: var(--surface);
}
.customer-booking-card-v25231a img { width: 112px; height: 92px; object-fit: cover; border-radius: 14px; background: var(--surface-alt); }
.customer-booking-card-v25231a h3 { margin: 2px 0 8px; color: var(--heading); }
.customer-booking-card-v25231a p { margin: 4px 0; color: var(--text-muted); }
.customer-booking-meta-v25231a { display: flex; flex-wrap: wrap; gap: 7px; margin-top: 10px; }
.customer-booking-meta-v25231a span { padding: 6px 9px; border-radius: 999px; border: 1px solid var(--border); font-size: .76rem; color: var(--text-muted); }
.customer-booking-state-v25231a { color: var(--accent) !important; font-weight: 900; }
@media (max-width: 760px) {
  .public-booking-grid-v25231a { grid-template-columns: 1fr; }
  .public-booking-grid-v25231a .field.is-wide { grid-column: auto; }
  .customer-booking-card-v25231a { grid-template-columns: 1fr; }
  .customer-booking-card-v25231a img { width: 100%; height: 180px; }
}
@media(max-width:430px){.public-stay-calendar-v25233{padding:12px}.public-stay-day-v25233{min-height:60px;padding:4px}.public-stay-day-v25233 strong{font-size:.55rem}.public-stay-day-v25233 small{display:none}}

/* V252.38 · Cotización instantánea, viajeros y protección por daños */
.public-booking-form-v25238{gap:16px}.public-stay-date-grid-v25238{padding:14px;border:1px solid var(--border);border-radius:18px;background:var(--surface-alt)}
.public-stay-guests-v25238{display:grid;gap:12px;padding:15px;border:1px solid var(--border);border-radius:20px;background:color-mix(in srgb,var(--surface) 94%,var(--accent) 6%)}
.public-stay-guests-v25238>div:first-child{display:grid;gap:3px}.public-stay-guests-v25238>div:first-child>strong{color:var(--heading);font-size:1rem}.public-stay-guests-v25238>div:first-child>span{color:var(--text-muted);font-size:.75rem}
.public-stay-guest-grid-v25238{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}.public-stay-stepper-v25238{display:flex;align-items:center;justify-content:space-between;gap:10px;min-width:0;padding:11px;border:1px solid color-mix(in srgb,var(--border) 86%,var(--accent));border-radius:15px;background:var(--surface)}
.public-stay-stepper-v25238>div:first-child{display:grid;gap:2px;min-width:0}.public-stay-stepper-v25238 strong{color:var(--heading);font-size:.84rem}.public-stay-stepper-v25238 span{color:var(--text-muted);font-size:.66rem;line-height:1.25}
.public-stay-stepper-controls-v25238{display:grid;grid-template-columns:34px 34px 34px;align-items:center;gap:3px;flex:0 0 auto}.public-stay-stepper-controls-v25238 button{display:grid;place-items:center;width:34px;height:34px;padding:0;border:1px solid color-mix(in srgb,var(--accent) 42%,var(--border));border-radius:50%;background:var(--surface-alt);color:var(--heading);font-size:1.05rem;font-weight:900;cursor:pointer}.public-stay-stepper-controls-v25238 input{width:34px!important;padding:0!important;border:0!important;background:transparent!important;color:var(--heading);font-weight:900;text-align:center;appearance:textfield;-moz-appearance:textfield}.public-stay-stepper-controls-v25238 input::-webkit-inner-spin-button,.public-stay-stepper-controls-v25238 input::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}
.public-stay-instant-quote-v25238{display:grid!important;gap:12px!important;padding:16px!important;border-color:color-mix(in srgb,var(--accent) 46%,var(--border))!important;background:linear-gradient(145deg,color-mix(in srgb,var(--accent) 8%,var(--surface)),var(--surface-alt))!important}.public-stay-instant-quote-v25238 div{box-sizing:border-box}.public-stay-instant-quote-v25238>div{display:grid!important;gap:5px!important;padding:0!important;border:0!important}.public-stay-instant-quote-v25238>div:last-child{border:0!important}
.public-stay-quote-placeholder-v25238 span,.public-stay-quote-loading-v25238 span,.public-stay-quote-head-v25238 span{color:var(--accent);font-size:.7rem;font-weight:900;letter-spacing:.08em;text-transform:uppercase}.public-stay-quote-placeholder-v25238 strong,.public-stay-quote-loading-v25238 strong{color:var(--heading);font-size:1rem}.public-stay-quote-placeholder-v25238 small{color:var(--text-muted);line-height:1.45}
.public-stay-quote-head-v25238{display:flex!important;align-items:center;justify-content:space-between;gap:12px}.public-stay-quote-head-v25238>div{display:grid!important;gap:3px!important}.public-stay-quote-head-v25238 strong{color:var(--heading);font-size:1.12rem}.public-stay-quote-head-v25238>b{padding:6px 8px;border-radius:999px;background:rgba(33,194,118,.12);color:#15803d;font-size:.65rem}
.public-stay-quote-dates-v25238{padding:11px 0!important;border-top:1px solid var(--border)!important;border-bottom:1px solid var(--border)!important}.public-stay-quote-dates-v25238 strong{color:var(--heading)}.public-stay-quote-dates-v25238 span{color:var(--text-muted);font-size:.76rem}
.public-stay-quote-breakdown-v25238{display:grid!important;gap:8px!important}.public-stay-quote-breakdown-v25238>div{display:flex!important;align-items:start;justify-content:space-between;gap:12px!important;color:var(--text-muted);font-size:.8rem}.public-stay-quote-breakdown-v25238>div strong{color:var(--heading);white-space:nowrap}.public-stay-quote-breakdown-v25238 .is-discount-v25236,.public-stay-quote-breakdown-v25238 .is-discount-v25236 strong{color:#15803d}.public-stay-quote-breakdown-v25238>.public-stay-quote-total-v25238{margin-top:3px;padding-top:11px!important;border-top:1px solid var(--border)!important;color:var(--heading);font-weight:900}.public-stay-quote-total-v25238 strong{font-size:1.3rem!important;color:var(--accent)!important}
.public-stay-damage-note-v25238{padding:12px!important;border:1px solid color-mix(in srgb,#d3a15f 45%,var(--border))!important;border-radius:14px!important;background:color-mix(in srgb,#d3a15f 8%,var(--surface))!important}.public-stay-damage-note-v25238 strong{color:var(--heading);font-size:.8rem}.public-stay-damage-note-v25238 span,.public-stay-damage-note-v25238 small{color:var(--text-muted);font-size:.7rem;line-height:1.4}
.public-stay-continue-v25238{min-height:50px;font-weight:900}.public-booking-form-v25238 [data-booking-status-v25231a][hidden]{display:none!important}
@media(max-width:700px){.public-stay-guest-grid-v25238{grid-template-columns:1fr}.public-stay-stepper-v25238{min-height:64px}}
@media(max-width:430px){.public-stay-stepper-controls-v25238{grid-template-columns:32px 30px 32px}.public-stay-stepper-controls-v25238 button{width:32px;height:32px}.public-stay-stepper-controls-v25238 input{width:30px!important}.public-stay-quote-head-v25238{align-items:flex-start;flex-direction:column}}
