/* Registro de clientes: modalidad sobre el paso elegido, sin perder formulario ni carrito. */
dialog.vip-client-auth-dialog{position:fixed;inset:0;margin:auto;width:min(460px,calc(100vw - 24px));max-height:min(89dvh,820px);
 overflow:auto;padding:22px;background:#fff;border:1px solid #e6dcce;border-radius:20px;
 color:#272331;box-shadow:0 24px 90px #0005;z-index:2000;font-family:system-ui,-apple-system,sans-serif}
dialog.vip-client-auth-dialog::backdrop{background:#111523a9;backdrop-filter:blur(2px)}
.vip-auth-top{display:flex;align-items:center;justify-content:space-between;gap:9px;font-size:11px;font-weight:900;letter-spacing:.06em;color:#8f672c}
.vip-auth-top button{border:0;background:#f5f1eb;border-radius:50%;font-size:24px;width:38px;height:38px}
.vip-client-auth-dialog h2{font-size:25px!important;line-height:1.1;margin:16px 0 8px;color:#242031}
#vipAuthIntro{font-size:13px;line-height:1.55;color:#665d70;margin:0 0 17px}
.vip-auth-tabs{display:grid;grid-template-columns:1fr 1fr;background:#f4f2f0;padding:4px;gap:5px;border-radius:13px}
.vip-auth-tabs button{min-height:43px;border:0;background:transparent;border-radius:10px;font-size:12px;font-weight:850;color:#645b65}
.vip-auth-tabs button.selected{background:#342845;color:#fff}
.vip-client-auth-dialog label{display:block;font-size:12px;font-weight:850;margin:12px 0 6px}
.vip-client-auth-dialog input:not([type=checkbox]){width:100%;min-height:47px;box-sizing:border-box;border:1px solid #d5cedc;border-radius:11px;padding:11px;font-size:16px;background:#fff;color:#242031}
.vip-auth-password-note{font-size:11px;line-height:1.45;color:#756c78;margin:7px 0}
.vip-client-auth-dialog .vip-auth-consent{display:flex;align-items:flex-start;gap:9px;line-height:1.5;font-weight:550;margin:16px 0}
.vip-auth-consent input{height:19px;width:19px;flex:none;margin:0}
#vipAuthSubmit{background:#342845;color:#fff;border:0;border-radius:12px;width:100%;min-height:49px;font-size:14px;font-weight:850}
#vipAuthSubmit:disabled{opacity:.5}
#vipAuthStatus{color:#9c3247;font-size:12px;line-height:1.5;min-height:0}
.vip-auth-foot{font-size:11px;line-height:1.5;color:#7a717d;border-top:1px solid #eee9ef;padding-top:11px}
.vip-client-auth-dialog button:focus-visible{outline:3px solid #b99350;outline-offset:2px}

/* Android: una sola pantalla compacta, con botón alcanzable aun con teclado virtual. */
dialog.vip-client-auth-dialog{width:min(440px,calc(100vw - 20px));max-height:calc(100dvh - 24px);
 padding:18px 18px max(14px,env(safe-area-inset-bottom,0px));overscroll-behavior:contain;
 scroll-padding-bottom:75px}
.vip-client-auth-dialog h2{font-size:22px!important;margin:12px 0 6px}
#vipAuthIntro{font-size:12px;line-height:1.45;margin-bottom:12px}
.vip-auth-tabs{margin:10px 0}.vip-auth-tabs button{font-size:12px;min-height:44px}
.vip-client-auth-dialog label{margin:8px 0 5px}
.vip-client-auth-dialog input:not([type=checkbox]){min-height:44px;padding:9px 11px}
.vip-client-auth-dialog .vip-auth-consent{margin:10px 0;padding:8px 0;font-size:12px}
#vipAuthSubmit{position:sticky;bottom:0;z-index:2;box-shadow:0 -5px 12px #fff9;
 min-height:51px;border:2px solid #fff}
.vip-auth-foot{margin:8px 0 0}
@media(max-width:520px){
 dialog.vip-client-auth-dialog{margin:auto;padding:15px 15px 13px;border-radius:19px}
 .vip-auth-top button{width:36px;height:36px;flex:none}
 .vip-client-auth-dialog h2{font-size:21px!important}
 #vipAuthIntro{font-size:12px}
}
