/* pw-list — captura de lista Lemon (TASK 6-sep §4).
   Un solo archivo para las tres ubicaciones: el formulario del footer (todas
   las páginas), el de /products/punch junto a la descarga, y el slide-in que
   monta assets/js/pw-list.js. El <form> apunta al endpoint de suscripción
   externa de la tienda (Lemon Squeezy · Email · Subscribers · embed);
   sin JS sigue funcionando como POST plano. */
.pw-list{max-width:520px;margin:0 auto 28px;text-align:left}
.pw-list__title{font-family:'Barlow Condensed',sans-serif;font-weight:600;font-size:18px;letter-spacing:.14em;text-transform:uppercase;color:#EDF0F4;margin:0 0 6px}
.pw-list__note{margin:0 0 12px;font-family:'Inter',sans-serif;font-size:13px;line-height:1.6;color:#A0A5AD}
.pw-list__row{display:flex;gap:8px}
.pw-list__sr{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.pw-list input[type=email]{flex:1;min-width:0;padding:11px 14px;border:1px solid #2C3543;border-radius:6px;background:#0E1218;color:#EDF0F4;font:14px 'Inter',sans-serif}
.pw-list input[type=email]::placeholder{color:#7E8794}
.pw-list input[type=email]:focus{outline:none;border-color:#FFB627}
.pw-list button{font-family:'Barlow Condensed',sans-serif;font-weight:600;font-size:13px;letter-spacing:.24em;text-transform:uppercase;color:#0A0C10;background:#FFB627;border:0;border-radius:6px;padding:11px 18px;cursor:pointer;white-space:nowrap}
.pw-list button:hover{filter:brightness(1.06)}
.pw-list button:focus-visible{outline:2px solid #EDF0F4;outline-offset:2px}
.pw-list--inline{margin:22px 0 0;max-width:560px}
/* slide-in (abajo a la derecha) */
.pw-slide{position:fixed;right:20px;bottom:20px;z-index:50;width:min(380px,calc(100vw - 40px));padding:22px 22px 18px;border:1px solid #2C3543;border-radius:12px;background:#0E1218;box-shadow:0 24px 60px rgba(0,0,0,.5);transform:translateY(24px);opacity:0;transition:transform .35s ease,opacity .35s ease}
.pw-slide.on{transform:none;opacity:1}
.pw-slide .pw-list{margin:0}
.pw-slide .pw-list__title{padding-right:28px}
.pw-slide__x{position:absolute;top:10px;right:10px;width:30px;height:30px;padding:0;border:0;background:transparent;color:#7E8794;cursor:pointer;border-radius:6px;display:inline-flex;align-items:center;justify-content:center}
.pw-slide__x svg{display:block;pointer-events:none}
.pw-slide__x:hover,.pw-slide__x:focus-visible{color:#EDF0F4;background:rgba(255,255,255,.06);outline:none}
@media (prefers-reduced-motion:reduce){.pw-slide{transition:none}}
@media (max-width:520px){.pw-list__row{flex-direction:column}.pw-slide{right:12px;bottom:12px;width:calc(100vw - 24px)}}
/* móvil ≤760: el slide-in ocupa todo el ancho y era un panel de ~230 px que tapaba
   el pie entero (formulario + links legales). Queda compacto (título + fila en
   línea + nota chica) y pw-list.js reserva su alto abajo del body mientras esté
   montado, así nada queda debajo. */
@media (max-width:760px){
  .pw-slide{right:0;left:0;bottom:0;width:auto;padding:12px 16px 12px;border-radius:12px 12px 0 0;border-width:1px 0 0}
  .pw-slide .pw-list__title{font-size:15px;margin-bottom:8px;padding-right:32px}
  .pw-slide .pw-list__row{flex-direction:row}
  .pw-slide .pw-list__note{order:1;margin:8px 0 0;font-size:12px;line-height:1.45}
  .pw-slide .pw-list{display:flex;flex-direction:column}
  .pw-slide .pw-list__row{order:0}
  .pw-slide .pw-list input[type=email]{padding:10px 12px}
  .pw-slide .pw-list button{padding:10px 14px}
  body.pw-slide-open{padding-bottom:var(--pw-slide-h,0px)}
}
