/* Happy Mascota — popup de bienvenida. Colores vía variables en el contenedor. */
.hm-pop[hidden]{display:none!important}
.hm-pop{position:fixed;inset:0;z-index:99990;display:none;align-items:center;justify-content:center;padding:16px}
.hm-pop[data-abierto="1"]{display:flex}
.hm-pop__velo{position:absolute;inset:0;background:rgba(0,0,0,.55);animation:hm-fade .25s ease}
.hm-pop__caja{position:relative;width:100%;max-width:440px;background:var(--hm-bg,#fff);color:var(--hm-text,#2c2c2c);border-radius:14px;padding:32px 28px;box-shadow:0 18px 50px rgba(0,0,0,.28);animation:hm-sube .3s cubic-bezier(.2,.8,.3,1);box-sizing:border-box}
.hm-pop__cerrar{position:absolute;top:8px;right:8px;width:40px;height:40px;border:0;background:transparent;font-size:26px;line-height:1;color:#8a8a8a;cursor:pointer;border-radius:8px}
.hm-pop__cerrar:hover{background:#f2f2f2;color:#333}
.hm-pop__titulo{margin:0 0 10px;font-size:25px;line-height:1.2;font-weight:700}
.hm-pop__bajada{margin:0 0 20px;font-size:15px;line-height:1.5;opacity:.85}
.hm-pop__campo{width:100%;padding:13px 14px;margin-bottom:12px;border:1.5px solid #d8d8d8;border-radius:9px;font-size:16px;font-family:inherit;box-sizing:border-box;background:#fff;color:var(--hm-text,#2c2c2c)}
.hm-pop__campo:focus{outline:2px solid var(--hm-primary,#f47b20);outline-offset:1px;border-color:var(--hm-primary,#f47b20)}
.hm-pop__legal{display:flex;gap:9px;align-items:flex-start;margin:4px 0 18px;font-size:12.5px;line-height:1.45;opacity:.8}
.hm-pop__legal input{margin-top:2px;width:17px;height:17px;flex:0 0 auto;accent-color:var(--hm-primary,#f47b20)}
.hm-pop__legal a{color:inherit}
.hm-pop__btn{width:100%;padding:15px;border:0;border-radius:9px;background:var(--hm-primary,#f47b20);color:#fff;font-size:16px;font-weight:700;font-family:inherit;cursor:pointer;transition:filter .15s}
.hm-pop__btn:hover:not(:disabled){filter:brightness(1.08)}
.hm-pop__btn:disabled{opacity:.6;cursor:wait}
.hm-pop__aviso{margin:14px 0 0;font-size:14px;line-height:1.5;text-align:center}
.hm-pop__aviso:empty{display:none}
.hm-pop__aviso[data-tipo="error"]{color:#c0392b}
.hm-pop__aviso[data-tipo="ok"]{color:#1e8449}
.hm-pop__hp{position:absolute!important;left:-9999px!important;width:1px!important;height:1px!important;overflow:hidden!important}
@keyframes hm-fade{from{opacity:0}to{opacity:1}}
@keyframes hm-sube{from{opacity:0;transform:translateY(18px)}to{opacity:1;transform:none}}
@media (max-width:480px){
	.hm-pop{align-items:flex-end;padding:0}
	.hm-pop__caja{max-width:none;border-radius:16px 16px 0 0;padding:26px 20px 30px;animation:hm-sube .28s ease}
	.hm-pop__titulo{font-size:22px}
}
@media (prefers-reduced-motion:reduce){.hm-pop__velo,.hm-pop__caja{animation:none}}
