/* Wahaaj AlBadr — Booking Experience V4.7 */
.booking-concierge {
  margin-top: 26px;
  padding: 18px;
  border: 1px solid rgba(248, 200, 7, .22);
  border-radius: 22px;
  background: linear-gradient(145deg, rgba(255,255,255,.115), rgba(255,255,255,.035));
  box-shadow: inset 0 1px 0 rgba(255,255,255,.12), 0 18px 44px rgba(12,4,18,.18);
  backdrop-filter: blur(18px);
}
.booking-concierge-head {display:flex;align-items:center;justify-content:space-between;gap:12px;color:#fff}
.booking-concierge-head span {display:flex;align-items:center;gap:7px;font-size:.82rem;font-weight:800;color:rgba(255,255,255,.82)}
.booking-concierge-head i,.booking-concierge>small i {color:var(--w-sun,#f8c807)}
.booking-concierge-head strong {font-size:.82rem;color:var(--w-sun,#f8c807)}
.booking-completion {height:5px;margin:12px 0 16px;overflow:hidden;border-radius:999px;background:rgba(255,255,255,.1)}
.booking-completion span {display:block;width:0;height:100%;border-radius:inherit;background:linear-gradient(90deg,var(--w-pink,#cf0e5d),var(--w-sun,#f8c807));box-shadow:0 0 18px rgba(248,200,7,.42);transition:width .35s ease}
.booking-concierge-summary {min-height:58px;padding:13px 14px;border-radius:15px;background:rgba(7,2,12,.18);border:1px solid rgba(255,255,255,.08)}
.booking-concierge-summary strong,.booking-concierge-summary span {display:block}
.booking-concierge-summary strong {font-size:.94rem;color:#fff}
.booking-concierge-summary span,.booking-concierge-summary p {margin:4px 0 0;color:rgba(255,255,255,.66);font-size:.78rem}
.booking-concierge>small {display:flex;align-items:center;gap:7px;margin-top:13px;color:rgba(255,255,255,.62);font-size:.72rem}

.booking-date-assist {margin:0 0 20px;padding:17px;border:1px solid color-mix(in srgb,var(--a-magenta) 16%,var(--a-line));border-radius:19px;background:linear-gradient(135deg,rgba(159,36,93,.055),rgba(215,173,98,.09))}
.booking-date-assist-head {display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:12px}
.booking-date-assist-head>span {display:flex;align-items:center;gap:7px;font-weight:900;font-size:.85rem;color:var(--a-ink)}
.booking-date-assist-head>span i {color:var(--a-magenta)}
.booking-date-assist-head small {color:var(--a-muted);font-size:.72rem}
.booking-quick-dates {display:grid;grid-template-columns:repeat(6,minmax(70px,1fr));gap:8px;overflow-x:auto;scrollbar-width:thin;padding-bottom:2px}
.booking-quick-dates button {min-width:74px;min-height:66px;display:grid;place-items:center;gap:2px;padding:9px 8px;border:1px solid var(--a-line);border-radius:15px;background:color-mix(in srgb,var(--a-paper) 92%,transparent);color:var(--a-ink);font:inherit;cursor:pointer;transition:transform .2s ease,border-color .2s ease,background .2s ease,box-shadow .2s ease}
.booking-quick-dates button:hover {transform:translateY(-2px);border-color:rgba(159,36,93,.32)}
.booking-quick-dates button:focus-visible {outline:3px solid rgba(159,36,93,.22);outline-offset:2px}
.booking-quick-dates button span {font-size:.72rem;font-weight:800;white-space:nowrap}
.booking-quick-dates button small {font-size:1rem;font-weight:900;color:var(--a-magenta)}
.booking-quick-dates button.is-selected {color:#fff;border-color:transparent;background:linear-gradient(145deg,#9f245d,#4b1642);box-shadow:0 12px 26px rgba(86,20,67,.22)}
.booking-quick-dates button.is-selected small {color:var(--a-gold-2)}

.booking-availability-state {display:flex;align-items:center;gap:9px;min-height:44px;margin:-2px 0 14px;padding:11px 13px;border:1px solid var(--a-line);border-radius:14px;color:var(--a-muted);background:rgba(255,255,255,.32);font-size:.8rem;font-weight:700}
html[data-theme="dark"] .booking-availability-state {background:rgba(255,255,255,.035)}
.booking-availability-state i {font-size:1.12rem;color:var(--a-magenta)}
.booking-availability-state[data-state="ready"] {border-color:rgba(46,125,98,.28);color:var(--a-success);background:rgba(46,125,98,.075)}
.booking-availability-state[data-state="ready"] i {color:var(--a-success)}
.booking-availability-state[data-state="empty"],.booking-availability-state[data-state="error"] {border-color:rgba(163,63,84,.24);color:var(--a-danger);background:rgba(163,63,84,.07)}
.booking-availability-state[data-state="loading"] i {animation:booking-spin .8s linear infinite}
.booking-progress span.is-complete {background:rgba(46,125,98,.1);color:var(--a-success)}
.booking-progress span.is-complete::before {content:"✓";margin-left:5px}
.booking-platform-form[data-wizard-step="3"] .booking-review-card {box-shadow:0 18px 44px rgba(71,18,63,.12);border-color:rgba(159,36,93,.22)}
@keyframes booking-spin {to{transform:rotate(360deg)}}
@media(max-width:760px){
  .booking-quick-dates {grid-template-columns:repeat(6,82px);margin-inline:-3px;padding-inline:3px}
  .booking-date-assist {padding:14px;margin-inline:-4px}
  .booking-date-assist-head {align-items:flex-start}
}
@media(prefers-reduced-motion:reduce){.booking-completion span,.booking-quick-dates button{transition:none}.booking-availability-state[data-state="loading"] i{animation:none}}
@media(forced-colors:active){.booking-concierge,.booking-date-assist,.booking-quick-dates button,.booking-availability-state{border:1px solid CanvasText}}
