/* Revision 6: shared private-preview mobile layout; existing design preserved. */
body:has(#haytham-app) { min-width:0; }
@media(max-width:782px) {
 #wpvibe-preview-banner { position:relative; flex-wrap:wrap; box-sizing:border-box; width:100%; gap:8px; padding:12px; }
 #wpvibe-preview-banner .wpvibe-badge { flex-basis:100%; }
 #wpvibe-preview-banner .wpvibe-info { flex-basis:100%; min-width:0; order:3; }
}
#haytham-app { direction:ltr; text-align:left; }
#haytham-app .site-header { min-width:0; }
#haytham-app .site-header .brand { flex:0 0 auto; white-space:nowrap; }
#haytham-app .site-header .brand>span { display:inline-flex; align-items:baseline; white-space:nowrap; }
#haytham-app .brand .brand-dot { display:inline; white-space:nowrap; }
#haytham-app .brand small { white-space:nowrap; }
#haytham-app .footer-brand { display:inline-flex; flex-direction:row; align-items:baseline; gap:0; white-space:nowrap; }
#haytham-app .header-actions { flex:0 0 auto; }
#haytham-app .mobile-nav { top:100%; }
#haytham-app .booking-panel #trip-date { direction:ltr; unicode-bidi:normal; text-align:left; width:100%; min-width:0; max-width:100%; font-size:16px; color:var(--ink); }
#haytham-app #trip-date::-webkit-datetime-edit { direction:ltr; unicode-bidi:normal; text-align:left; padding:0; }
#haytham-app .date-hint { font-size:12px; line-height:1.5; color:var(--muted); margin:-5px 0 18px; }
#haytham-app .stepper { flex:0 0 auto; gap:8px; }
#haytham-app .stepper button { width:44px; height:44px; min-width:44px; min-height:44px; }
#haytham-app .stepper output { min-width:20px; }
#haytham-app .guest-row>span { min-width:0; }
#haytham-app .booking-panel .island-option { display:flex; gap:12px; align-items:flex-start; }
#haytham-app .island-option input { flex:0 0 22px; width:22px; height:22px; margin:1px 0 0; }
#haytham-app .sticky-booking-mobile { bottom:var(--haytham-preview-banner-height,32px)!important; }
#haytham-app .sticky-booking-mobile>span { display:flex; flex-direction:column; gap:2px; }
#haytham-app .sticky-booking-mobile small { font-size:10px; }
#haytham-app .sticky-booking-mobile strong { margin:0; }
#haytham-app.is-booking-visible .sticky-booking-mobile { display:none; }
#haytham-app .toast { bottom:calc(var(--haytham-preview-banner-height,32px) + 100px)!important; }
html.has-preview-banner body { padding-bottom:calc(var(--haytham-preview-banner-height,76px) + 20px)!important; }
html.has-preview-banner #haytham-app .preview-note { display:none!important; }
@media(max-width:1100px) {
 #haytham-app .site-header { gap:20px; }
 #haytham-app .desktop-nav { gap:18px; }
 #haytham-app .header-actions { gap:12px; }
}
@media(max-width:800px) {
 #haytham-app .site-header { height:84px; min-height:84px; padding:16px 20px; gap:12px; }
 #haytham-app .site-header .brand { font-size:36px; line-height:1; letter-spacing:-1.8px; }
 #haytham-app .brand small { font-size:6px; line-height:1.3; letter-spacing:2px; margin:6px 0 0 2px; }
 #haytham-app .header-actions { gap:6px; }
 #haytham-app .saved-button,#haytham-app .menu-button { min-width:44px; min-height:44px; }
 #haytham-app .header-cta { display:none; }
 #haytham-app .booking-panel { scroll-margin-top:24px; }
 #haytham-app .guest-row { gap:8px; padding:16px 0; }
 #haytham-app .guest-row strong { font-size:12px; line-height:1.4; }
 #haytham-app .guest-row small { font-size:10px; line-height:1.5; }
 #haytham-app .sticky-booking-mobile { padding:10px 20px; gap:12px; }
 #haytham-app .sticky-booking-mobile .button { font-size:12px; padding:12px 16px; }
 #haytham-app .experience-active { padding-bottom:84px; }
 html.has-preview-banner body:has(.experience-active) { padding-bottom:calc(var(--haytham-preview-banner-height,76px) + 100px)!important; }
}
@media(max-width:359px) {
 #haytham-app .site-header { padding-inline:16px; gap:8px; }
 #haytham-app .site-header .brand { font-size:31px; }
 #haytham-app .header-actions { gap:0; }
 #haytham-app .booking-panel { padding:18px; }
 #haytham-app .guest-row { flex-wrap:wrap; }
 #haytham-app .stepper { margin-left:auto; }
}
