/* SOCIOS PRO V1.6.0 — última capa de presentación (no altera lógica). */
/* Controles flotantes: recupera WhatsApp en celular y separa acciones. */
html body .btnWhatsapp,html body .cartIconFixed{
 position:fixed!important;left:auto!important;right:clamp(15px,2.3vw,30px)!important;
 width:46px!important;height:46px!important;min-width:46px!important;min-height:46px!important;
 max-width:46px!important;max-height:46px!important;padding:0!important;
 border-radius:50%!important;display:flex!important;align-items:center!important;justify-content:center!important;
 box-shadow:0 5px 16px rgba(0,0,0,.22)!important;z-index:80!important;
 transform:none!important;line-height:1!important;
}
html body .btnWhatsapp{bottom:calc(115px + env(safe-area-inset-bottom,0px))!important;background:#15b52d!important;}
html body .cartIconFixed{bottom:calc(54px + env(safe-area-inset-bottom,0px))!important;}
html body .btnWhatsapp img,html body .cartIconFixed img,
html body .btnWhatsapp svg,html body .cartIconFixed svg{
 width:22px!important;height:22px!important;max-width:22px!important;max-height:22px!important;object-fit:contain!important;
}
html body .btnWhatsapp i,html body .cartIconFixed i{font-size:20px!important;line-height:1!important;color:#fff!important;}
html body .btnWhatsapp:focus-visible,html body .cartIconFixed:focus-visible{outline:3px solid #fff!important;outline-offset:3px!important;}
/* No mostrar botones flotantes por encima del checkout abierto. */
html body:has(.overlay-cart) .btnWhatsapp,html body:has(.overlay-cart) .cartIconFixed{z-index:1!important;}
@media(max-width:900px){
 html body .btnWhatsapp{display:flex!important;bottom:calc(120px + env(safe-area-inset-bottom,0px))!important;}
 html body .cartIconFixed{display:flex!important;bottom:calc(64px + env(safe-area-inset-bottom,0px))!important;}
}
@media(max-width:600px){
 html body .btnWhatsapp,html body .cartIconFixed{right:14px!important;width:40px!important;height:40px!important;min-width:40px!important;min-height:40px!important;max-width:40px!important;max-height:40px!important;}
 html body .btnWhatsapp{bottom:calc(116px + env(safe-area-inset-bottom,0px))!important;}
 html body .cartIconFixed{bottom:calc(62px + env(safe-area-inset-bottom,0px))!important;}
 html body .btnWhatsapp img,html body .cartIconFixed img,
 html body .btnWhatsapp svg,html body .cartIconFixed svg{width:19px!important;height:19px!important;max-width:19px!important;max-height:19px!important;}
 html body .btnWhatsapp i,html body .cartIconFixed i{font-size:18px!important;}
}
/* Carrito y checkout: panel legible, scroll independiente y espaciado cómodo. */
html body .overlay-cart{overflow:hidden!important;align-items:stretch!important;}
html body .modal-cart{
 box-sizing:border-box!important;width:min(100%,460px)!important;max-width:100vw!important;
 height:100dvh!important;max-height:100dvh!important;min-height:0!important;
 overflow-x:hidden!important;overflow-y:auto!important;overscroll-behavior:contain!important;
 border-radius:18px 0 0 18px!important;padding-bottom:calc(18px + env(safe-area-inset-bottom,0px))!important;
}
html body .modal-send-form{box-sizing:border-box!important;min-width:0!important;width:100%!important;gap:12px!important;padding:16px!important;}
html body .modal-cart .modal-content-cart{box-sizing:border-box!important;min-width:0!important;width:100%!important;padding:12px 16px!important;}
html body .modal-cart :is(h1,h2){font-size:clamp(19px,1.8vw,24px)!important;line-height:1.28!important;overflow-wrap:anywhere!important;}
html body .modal-cart :is(h3,h4){font-size:clamp(15px,1.35vw,18px)!important;line-height:1.35!important;overflow-wrap:anywhere!important;}
html body .modal-cart :is(p,label,span,textarea,input,select,button){font-size:clamp(13px,1.1vw,15px)!important;line-height:1.45!important;}
html body .modal-cart :is(input,textarea,select){box-sizing:border-box!important;width:100%;max-width:100%!important;min-width:0!important;min-height:42px!important;border-radius:10px!important;}
html body .modal-cart textarea{min-height:72px!important;resize:vertical!important;}
html body .modal-cart :is(button,.btn){max-width:100%!important;min-height:42px!important;white-space:normal!important;overflow-wrap:break-word!important;}
html body .modal-cart .cardProductCart{display:flex!important;align-items:center!important;gap:12px!important;max-width:100%!important;padding:12px 0!important;}
html body .modal-cart .cardProductCart img{width:64px!important;height:64px!important;min-width:64px!important;object-fit:cover!important;}
html body .modal-cart .cardProductCartText{flex:1 1 0!important;min-width:0!important;width:auto!important;}
html body .modal-cart .cardProductCartText :is(h3,p){overflow-wrap:anywhere!important;white-space:normal!important;}
html body .modal-cart .deFLexRadio{display:flex!important;flex-direction:column!important;align-items:stretch!important;gap:9px!important;width:100%!important;padding:12px!important;border-radius:12px!important;}
html body .modal-cart .deFLexRadio>div{display:flex!important;align-items:center!important;gap:10px!important;min-width:0!important;max-width:100%!important;flex-wrap:nowrap!important;}
html body .modal-cart .deFLexRadio input[type=radio],
html body .modal-cart input[type=radio]{appearance:auto!important;position:static!important;transform:none!important;flex:0 0 17px!important;width:17px!important;height:17px!important;min-width:17px!important;min-height:17px!important;margin:0 5px 0 0!important;accent-color:#087a77!important;vertical-align:middle!important;}
html body .modal-cart .deFLexRadio label{display:inline-block!important;flex:1 1 auto!important;min-width:0!important;max-width:100%!important;overflow-wrap:break-word!important;cursor:pointer!important;}
/* Texto seleccionado y estado checked deben conservar contraste en los dos temas. */
html[data-theme=light] body .modal-cart{background:#fff!important;color:#172b32!important;}
html[data-theme=light] body .modal-cart :is(h1,h2,h3,h4,label,p,span,small,strong){color:#172b32;}
html[data-theme=light] body .modal-cart :is(input,select,textarea){background:#f5f8fa!important;color:#172b32!important;border:1px solid #cad7dc!important;}
html[data-theme=light] body .modal-cart .deFLexRadio{background:#f3f8f8!important;color:#172b32!important;}
html[data-theme=dark] body .modal-cart{background:#12252d!important;color:#f0f7f8!important;}
html[data-theme=dark] body .modal-cart :is(h1,h2,h3,h4,label,p,span,small,strong){color:#ecf5f6!important;}
html[data-theme=dark] body .modal-cart :is(input,select,textarea){background:#213b47!important;color:#fff!important;border:1px solid #49616b!important;}
html[data-theme=dark] body .modal-cart .deFLexRadio{background:#1d3641!important;color:#ecf5f6!important;}
html body .modal-cart :is(input,textarea)::placeholder{opacity:1!important;color:#71858f!important;}
html[data-theme=dark] body .modal-cart :is(input,textarea)::placeholder{color:#c1cdd1!important;}
html body .modal-cart ::selection{background:#226d83!important;color:#fff!important;}
html body .modal-cart :is(input[type=radio],input[type=checkbox]){cursor:pointer!important;}
/* Bloque de total y acción final, sin pisar el scroll. */
html body .modal-cart .totalCart{box-sizing:border-box!important;min-width:0!important;max-width:100%!important;padding:14px!important;}
html body .modal-cart :is(.totalCart,.modal-send-form)>button{border-radius:10px!important;font-weight:600!important;}
@media(max-width:600px){
 html body .modal-cart{width:100vw!important;max-width:100vw!important;border-radius:0!important;}
 html body .modal-send-form{padding:12px 14px calc(20px + env(safe-area-inset-bottom,0px))!important;}
 html body .modal-cart .modal-content-cart{padding:10px 14px!important;}
 html body .modal-cart .cardProductCart img{width:54px!important;height:54px!important;min-width:54px!important;}
}
/* Textos de administración proporcionados, no gigantes. */
html body .containerSection :is(h1,h2){font-size:clamp(19px,2.2vw,28px);line-height:1.3;}
html body .containerSection :is(h3,h4){font-size:clamp(15px,1.45vw,20px);line-height:1.35;}
html body .containerSection :is(p,label,button,input,select,textarea){line-height:1.45;}
@media(max-width:820px){
 html body .containerSection,html body .containerMain{min-width:0!important;max-width:100%!important;}
 html body .navbarDashboard{max-width:min(88vw,320px)!important;}
 html body .containerSection :is(.tableWrapper,.table-container,.content_tables){max-width:100%!important;min-width:0!important;overflow-x:auto!important;}
}
