.seof-be-mini{max-width:420px;border:1px solid rgba(0,0,0,.12);border-radius:18px;background:#fff;padding:16px;box-shadow:0 10px 28px rgba(0,0,0,.10);font-family:inherit}
.seof-be-mini__price{display:flex;justify-content:space-between;align-items:flex-end;margin-bottom:12px;gap:10px}
.seof-be-mini__priceAmt{font-size:30px;font-weight:800;line-height:1}
.seof-be-mini__priceUnit{font-size:14px;font-weight:600;opacity:.75;margin-left:4px}
.seof-be-mini__total{font-size:14px;font-weight:600;opacity:.75;text-align:right}

.seof-be-mini__room{margin-bottom:10px}
.seof-be-mini__label{display:block;font-size:12px;font-weight:700;letter-spacing:.04em;opacity:.8;margin:0 0 6px}
.seof-be-mini__select{width:100%;padding:10px 12px;border-radius:14px;border:1px solid rgba(0,0,0,.14);background:#fff}

.seof-be-mini__grid{display:grid;grid-template-columns:1fr 1fr;gap:0;border:1px solid rgba(0,0,0,.18);border-radius:16px;overflow:hidden}
.seof-be-mini__field{appearance:none;background:#fff;border:0;padding:12px 12px 10px;text-align:left;cursor:pointer}
.seof-be-mini__field:nth-child(1){border-right:1px solid rgba(0,0,0,.12)}
.seof-be-mini__field:nth-child(2){ }
.seof-be-mini__field--full{grid-column:1 / -1;border-top:1px solid rgba(0,0,0,.12);display:flex;align-items:center;gap:10px}
.seof-be-mini__field:focus{outline:2px solid rgba(0,0,0,.22);outline-offset:-2px}
.seof-be-mini__fieldLabel{display:block;font-size:12px;font-weight:800;letter-spacing:.05em}
.seof-be-mini__fieldValue{display:block;font-size:16px;font-weight:600;margin-top:4px}
.seof-be-mini__fieldInput{display:block;width:100%;border:0;padding:0;margin-top:4px;font-size:16px;font-weight:600;background:transparent;outline:none;cursor:pointer}
.seof-be-mini__fieldInput::placeholder{color:rgba(0,0,0,.55)}
.seof-be-mini__chev{margin-left:auto;opacity:.6;font-size:18px;line-height:1}

.seof-be-mini__hidden{position:absolute;left:-9999px;top:-9999px;width:1px;height:1px;opacity:0}

.seof-be-mini__guests{margin-top:12px;border:1px solid rgba(0,0,0,.14);border-radius:16px;padding:12px;background:#fff;box-shadow:0 18px 40px rgba(0,0,0,.14)}
.seof-be-mini__guestRow{display:flex;align-items:center;justify-content:space-between;padding:10px 2px}
.seof-be-mini__guestTitle{font-size:16px;font-weight:800}
.seof-be-mini__guestSub{font-size:13px;opacity:.7;margin-top:2px}
.seof-be-mini__step{display:flex;align-items:center;gap:10px}
.seof-be-mini__stepBtn{width:36px;height:36px;border-radius:50%;border:1px solid rgba(0,0,0,.22);background:#fff;cursor:pointer;font-size:18px;line-height:1}
.seof-be-mini__stepVal{min-width:16px;text-align:center;font-weight:800}
.seof-be-mini__guestActions{display:flex;justify-content:flex-end;margin-top:10px}
.seof-be-mini__link{border:0;background:transparent;cursor:pointer;text-decoration:underline;font-weight:700}

.seof-be-mini__reserve{margin-top:12px;width:100%;border:0;border-radius:18px;padding:16px 14px;font-size:18px;font-weight:900;cursor:pointer;color:#fff;background:#e11d48}
.seof-be-mini__reserve:hover{filter:brightness(.97)}
.seof-be-mini__msg{margin-top:10px;font-size:13px;min-height:18px}
.seof-be-mini__msg.error{color:#b00020;font-weight:700}
.seof-be-mini__msg.success{color:#0a6d2b;font-weight:700}

/* Datepicker (jQuery UI) */
.ui-datepicker{z-index:999999 !important;border:1px solid rgba(0,0,0,.14);border-radius:16px;background:#fff;box-shadow:0 18px 40px rgba(0,0,0,.16);padding:12px}
.ui-datepicker .ui-datepicker-header{border:0;background:transparent;padding:6px 0 10px}
.ui-datepicker .ui-datepicker-title{font-weight:900}
.ui-datepicker table{width:100%;border-collapse:collapse}
.ui-datepicker th{font-size:11px;font-weight:800;opacity:.7;padding:6px 4px}
.ui-datepicker td{padding:2px}
.ui-datepicker td a{display:block;text-align:center;padding:10px 0;border-radius:999px;text-decoration:none;font-weight:800;color:#111827}
.ui-datepicker td a:hover{background:rgba(0,0,0,.06)}
.ui-datepicker .ui-state-disabled span{display:block;text-align:center;padding:10px 0;border-radius:999px;opacity:.35}
.ui-datepicker td.seof-be-range a{background:rgba(17,24,39,.10)}
.ui-datepicker td.ui-datepicker-current-day a{background:#111827;color:#fff}
.ui-datepicker .ui-datepicker-prev,.ui-datepicker .ui-datepicker-next{cursor:pointer;top:8px}
.ui-datepicker .ui-datepicker-prev span,.ui-datepicker .ui-datepicker-next span{filter:contrast(0);opacity:.75}
.ui-datepicker td.seof-be-unavail span{opacity:.25}

/* CHECKOUT */
.seof-be-checkout{max-width:860px;margin:0 auto}
.seof-be-checkout__main{border:1px solid rgba(0,0,0,.10);border-radius:18px;padding:18px;background:#fff;box-shadow:0 10px 28px rgba(0,0,0,.08)}
.seof-be-checkout__summary{display:grid;grid-template-columns:1fr 1fr 1fr;gap:10px;margin:10px 0 16px;padding:12px;border-radius:14px;background:rgba(0,0,0,.03)}
.seof-be-checkout__summary strong{font-weight:900}

.seof-be-checkout-form label{display:block;font-weight:800;margin-top:10px}
.seof-be-checkout-form input,.seof-be-checkout-form textarea{width:100%;padding:10px 12px;border-radius:14px;border:1px solid rgba(0,0,0,.14)}
.seof-be-checkout__addons{margin-top:14px;border:1px solid rgba(0,0,0,.10);border-radius:14px;padding:12px;background:rgba(0,0,0,.02)}
.seof-be-checkout__addonsTitle{font-weight:900;margin-bottom:8px}
.seof-be-checkout__addon{display:flex;gap:10px;align-items:flex-start;margin:8px 0}
.seof-be-checkout__addon small{display:block;opacity:.75;font-weight:600;margin-top:2px}

.seof-be-checkout__pay{margin-top:14px;width:100%;border:0;border-radius:18px;padding:14px 14px;font-size:17px;font-weight:900;cursor:pointer;color:#fff;background:#111827}
.seof-be-checkout__pay:hover{filter:brightness(.97)}
.seof-be-checkout__msg{margin-top:10px;font-size:13px;min-height:18px}
.seof-be-checkout__msg.error{color:#b00020;font-weight:700}
.seof-be-checkout__msg.success{color:#0a6d2b;font-weight:700}

@media (max-width:720px){
  .seof-be-checkout__summary{grid-template-columns:1fr;}
}

/* --- SEOF BE v0.2.9: Datepicker overlay fix (prevents footer ghost, stays clickable) --- */
#ui-datepicker-div{
  position:absolute !important;
  z-index:999999 !important;
}
/* keep default hidden; datepicker will toggle it on open */

/* --- SEOF BE v0.2.10: force datepicker to be an overlay (never below footer) --- */
#ui-datepicker-div{
  position:absolute !important;
  z-index:2147483647 !important;
  margin:0 !important;
}
/* keep hidden until JS shows it */
#ui-datepicker-div.seof-be-dp-hidden{
  display:none;
}

/* --- SEOF BE v0.2.11: defensive - hide any inline ui-datepicker that might be injected below footer --- */
body:has(.seof-be-card) .ui-datepicker:not(#ui-datepicker-div){
  display:none !important;
}
body.seof-be-has-card .ui-datepicker:not(#ui-datepicker-div){
  display:none !important;
}

/* --- SEOF BE v0.2.12: hide the datepicker "ghost" under footer until a user clicks a date field --- */
#ui-datepicker-div{
  display:none;               /* allow JS / jQuery UI to show it */
  position:absolute !important;
  z-index:2147483647 !important;
}
body.seof-be-dp-open #ui-datepicker-div{
  display:block;              /* only while a picker is open */
}


/* --- SEOF BE v0.2.19: Thank you page --- */
.seof-be-thankyou{max-width:820px;margin:20px auto;padding:18px 16px;border:1px solid rgba(0,0,0,.12);border-radius:18px;background:#fff}
.seof-be-thankyou h2{margin:0 0 10px 0}


/* --- Agency dashboard UI --- */
.seof-agency-topbar{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:12px;
  padding:12px 14px;
  border:1px solid #e6e6e6;
  border-radius:12px;
  margin-bottom:14px;
  background:#fff;
}
.seof-agency-topbar__meta{
  margin-left:10px;
  font-size:13px;
  opacity:.75;
}
.seof-agency-btn{
  display:inline-block;
  padding:10px 14px;
  border-radius:10px;
  text-decoration:none;
  border:1px solid #ddd;
  background:#f7f7f7;
}
.seof-agency-btn--ghost{
  background:#fff;
}
