/* Solo cambia presentación cuando YUPI aparece en la app contenedora.
   La demo completa continúa disponible mediante su propio enlace. */
.vip-embedded{scroll-behavior:auto!important}
.vip-embedded body{background:#fff}
.vip-embedded .nav,.vip-embedded footer{display:none!important}
.vip-embedded .top{border-radius:0;padding:14px 0 20px}
.vip-embedded .heading{padding-top:4px;gap:12px}
.vip-embedded .heading h1{font-size:32px;letter-spacing:-.025em}
.vip-embedded .heading p{font-size:12px;margin:5px 0}
.vip-embedded .heading .subtitle{font-size:12px}
.vip-embedded .sun{width:58px;height:58px;font-size:30px;border-radius:14px}
.vip-embedded .brand-logo{max-width:64px;max-height:64px}
.vip-embedded .wrap{padding-left:14px;padding-right:14px}
.vip-embedded main{padding-top:13px}
.vip-embedded .notice{padding:12px;font-size:12px}
.vip-embedded .section{margin:22px 0}
.vip-embedded .section h2{font-size:21px}
.vip-embedded .contact-strip{font-size:12px}
.vip-embedded .switcher{margin:11px 0}
.vip-embedded .switcher button{flex:1;min-height:43px;padding:9px}
.vip-embedded .offer-grid{gap:9px}
.vip-embedded .panel{padding:13px}
@media(max-width:550px){
 .vip-embedded .heading{gap:9px}
 .vip-embedded .heading h1{font-size:28px}
 .vip-embedded .sun{width:43px;height:43px;font-size:25px}
 .vip-embedded .wrap{padding-left:10px;padding-right:10px}
 .vip-embedded .offer{min-width:0}
 .vip-embedded .photo-missing{width:87px;min-width:87px}
 .vip-embedded .offer-content{padding:10px}
 .vip-embedded .contact-strip{display:flex;flex-wrap:wrap;gap:6px}
 .vip-embedded .notice-bell-section>button{min-height:43px}
}

/* Integración móvil: solo catálogo/flujo de cliente, sin el administrador Demo público. */
.vip-embedded body{background:#fbfafc;color:#231e32}
.vip-embedded .top{background:#fff;color:#272039;padding:10px 0;border-bottom:1px solid #ebe5f1}
.vip-embedded .heading{padding-top:0;gap:12px;align-items:center}
.vip-embedded .heading h1{font-size:23px;letter-spacing:-.02em}
.vip-embedded .heading .subtitle{font-size:11px;color:#7b4db8;margin:0 0 2px;font-weight:800}
.vip-embedded .heading>div>p:not(.subtitle){display:none}
.vip-embedded .sun{width:45px;height:45px;border-radius:13px;background:#efe8f9;font-size:25px}
.vip-embedded .contact-strip{margin-top:6px;color:#5e586c;font-size:11px;gap:7px}
.vip-embedded .contact-strip a{color:#51318e;border-bottom-color:#b1a3cc}
.vip-embedded .contact-strip a:last-child{color:#fff;background:#15805b;padding:7px 9px;font-size:11px;white-space:nowrap}
.vip-embedded .brand-logo{max-height:45px;max-width:45px}
.vip-embedded main{padding-top:5px}
.vip-embedded .yupi-long-warning,.vip-embedded .switcher,.vip-embedded #adminView{display:none!important}
.vip-embedded .yupi-app-disclaimer{display:flex;align-items:center;flex-wrap:wrap;gap:7px;
 margin:7px 0 9px;font-size:11px;color:#5e506f}
.vip-embedded .yupi-app-disclaimer>strong{background:#f6edda;color:#775725;border-radius:6px;
 padding:4px 6px;font-size:10px;letter-spacing:.04em}
.vip-embedded .yupi-app-disclaimer>span{flex:1}
.vip-embedded .yupi-app-disclaimer details{width:100%;padding:3px 0;font-size:12px}
.vip-embedded .yupi-app-disclaimer summary{cursor:pointer;color:#655088;font-weight:800}
.vip-embedded .yupi-app-disclaimer details p{background:#fff7e5;border:1px solid #edd9a8;
 border-radius:10px;padding:10px;line-height:1.45;margin:7px 0 3px}
.vip-embedded .yupi-quick-nav{display:flex;gap:8px;overflow-x:auto;padding:4px 1px 9px;
 margin:5px 0 8px;scrollbar-width:thin;overscroll-behavior-inline:contain;
 -webkit-overflow-scrolling:touch}
.vip-embedded .yupi-quick-nav button{white-space:nowrap;flex:none;background:#fff;color:#51318e;
 border:1px solid #e4dbed;border-radius:999px;font-size:12px;font-weight:800;
 padding:8px 12px;min-height:39px;cursor:pointer}
.vip-embedded .notice-bell-section{margin:0 0 10px;gap:7px;flex-wrap:nowrap}
.vip-embedded .notice-bell-section>button{font-size:11px;padding:8px 11px;min-height:40px}
.vip-embedded .notice-bell-section #soundHint{display:none}
.vip-embedded .notice-bell-section #noticesPanel{margin-top:9px}
.vip-embedded .section{margin:20px 0}
.vip-embedded .section-head{margin-bottom:10px}
.vip-embedded .section h2{font-size:20px;letter-spacing:-.025em}
.vip-embedded .section>.muted{font-size:12px;line-height:1.45;margin:7px 0 12px}
.vip-embedded .offer-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}
.vip-embedded .offer{min-width:0}
.vip-embedded .offer.is-added{border-color:#469875}
.vip-embedded .offer button,.vip-embedded .package button{min-height:44px;border-radius:10px}
.vip-embedded .package{min-width:0;padding:13px;gap:9px}
.vip-embedded .booking-layout .quote{order:2}
.vip-embedded .booking-layout .quote .amount{font-size:30px}
.vip-embedded .quote .deposit-details{margin:10px 0;padding:10px}
.vip-embedded .quote .deposit-details .price{font-size:23px}
.vip-embedded .booking-layout .panel{padding:14px}
.vip-embedded #eventBuilder{scroll-margin-top:14px}
.vip-embedded #equipmentSection,.vip-embedded #booking,
.vip-embedded #packagesSection,.vip-embedded #requestsSection{scroll-margin-top:10px}
@media(max-width:650px){
 .vip-embedded .wrap{padding-left:10px;padding-right:10px}
 .vip-embedded .top{padding:9px 0}
 .vip-embedded .heading{gap:9px}
 .vip-embedded .heading h1{font-size:21px}
 .vip-embedded .sun{width:43px;height:43px}
 .vip-embedded .contact-strip strong{display:none}
 .vip-embedded .offer-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}
 .vip-embedded .offer{display:flex;flex-direction:column;min-width:0;border-radius:14px}
 .vip-embedded .photo-missing{width:100%;min-width:0;height:109px;min-height:0;font-size:35px}
 .vip-embedded .photo-missing span{font-size:9px;left:7px;bottom:6px;max-width:calc(100% - 14px)}
 .vip-embedded .offer-content{padding:10px;gap:6px}
 .vip-embedded .offer h3{font-size:14px;line-height:1.2;overflow-wrap:anywhere}
 .vip-embedded .offer .spec{font-size:11px;line-height:1.3}
 .vip-embedded .offer .price{font-size:22px}
 .vip-embedded .offer button{font-size:11px;padding:8px 7px;line-height:1.2}
 .vip-embedded .package-grid{display:grid;grid-auto-flow:column;grid-auto-columns:minmax(215px,83%);
  grid-template-columns:none;gap:10px;overflow-x:auto;scroll-snap-type:x mandatory;
  scroll-padding:0 10px;padding:3px 2px 12px;-webkit-overflow-scrolling:touch}
 .vip-embedded .package{scroll-snap-align:start}
 .vip-embedded .builder-choice{padding:10px;font-size:12px}
 .vip-embedded .booking-layout{display:flex;flex-direction:column;gap:10px}
 .vip-embedded .booking-layout>form,.vip-embedded .booking-layout>aside{width:100%}
 .vip-embedded .booking-layout .quote{order:2}
}

/* Formulario visible antes del resumen cuando el cliente elige su paquete. */
.vip-embedded .booking-layout{align-items:stretch}
.vip-embedded .booking-layout #bookingForm{order:1}
.vip-embedded .booking-layout .quote{order:2}
.vip-embedded .quote .amount{font-size:29px}
.vip-embedded .yupi-next-step{margin-bottom:12px}
@media(max-width:650px){
 .vip-embedded #bookingForm{scroll-margin-top:10px}
 .vip-embedded .booking-layout #bookingForm{order:1}
 .vip-embedded .booking-layout .quote{order:2}
}
