/* account-popup-v1: acceso a cuenta (login y altas) en ventana emergente.
   El navbar del sitio queda visible detras del velo; dentro solo hay el box. */
.prive-sex-account-popup { position: fixed; inset: 0; z-index: 99990; display: grid; place-items: center; padding: clamp(12px, 3vw, 34px); }
.prive-sex-account-popup[hidden] { display: none; }
.prive-sex-account-popup__backdrop { position: absolute; inset: 0; background: rgba(24,14,30,.62); }
.prive-sex-account-popup__dialog { position: relative; display: grid; grid-template-rows: minmax(0, 1fr); width: min(560px, 100%); max-height: calc(100dvh - (clamp(12px, 3vw, 34px) * 2)); overflow: hidden; /* account-popup-floating-css-v1 */ border-radius: calc(var(--prive-sex-radius) + 4px); background: var(--prive-sex-background, #f7f4f8); box-shadow: 0 30px 70px rgba(12,6,16,.42); animation: prive-sex-popup-in .18s ease both; }
@keyframes prive-sex-popup-in { from { opacity: 0; transform: translateY(10px) scale(.985); } to { opacity: 1; transform: none; } }
.prive-sex-account-popup__header { position: absolute; z-index: 3; top: 0; right: 0; left: 0; padding: 0; background: transparent; }
.prive-sex-account-popup__header h2 { position: absolute; width: 1px; height: 1px; margin: 0; overflow: hidden; clip-path: inset(50%); white-space: nowrap; }

/* account-popup-header-contrast-v1: el tema pinta h2 con su tinta oscura y el titulo
   del modal quedaba ilegible sobre la barra morada. */
.prive-sex-account-popup__header h2 { color: #fff; }
.prive-sex-account-popup__close { position: absolute; top: 10px; right: 10px; display: grid; place-items: center; width: 32px; height: 32px; border: 0; border-radius: 50%; background: rgba(24,14,30,.5); color: #fff; font-size: 20px; line-height: 1; cursor: pointer; }
.prive-sex-account-popup__close:hover { background: rgba(24,14,30,.72); }
.prive-sex-account-popup__body { overflow: auto; -webkit-overflow-scrolling: touch; }
.prive-sex-account-popup__body iframe { display: block; width: 100%; min-height: 0; height: 620px; border: 0; background: transparent; }
html.psx-popup-open body, body.psx-popup-open { overflow: hidden; }

/* Documento embebido: sin cabecera ni pie, solo el box. */
body.psx-embed-body { background: transparent; }

/* account-popup-mobile-light-v1: en movil el tema pinta body.has-prive-mobile-navbar de
   oscuro con !important; dentro del iframe del popup hay que conservar el tema claro. */
body.psx-embed-body,
body.psx-embed-body.has-prive-mobile-navbar { background: transparent !important; color: var(--prive-sex-text, #241a2b); }
body.psx-embed-body.has-prive-mobile-navbar .account-panel,
body.psx-embed-body.has-prive-mobile-navbar .prive-sex-users-form-wrap,
body.psx-embed-body.has-prive-mobile-navbar .prive-sex-advertisers-form-wrap { color: var(--prive-sex-text, #241a2b); }
.psx-embed-shell { padding: 40px clamp(14px, 3vw, 22px) clamp(14px, 3vw, 22px); }
.psx-embed-shell .account-panel { margin: 0; padding: 0; border: 0; border-radius: 0; background: transparent; box-shadow: none; }
.psx-embed-shell .prive-sex-users-form-wrap,
.psx-embed-shell .prive-sex-advertisers-form-wrap { max-width: none; margin: 0; }
.psx-embed-shell .prive-sex-users-form,
.psx-embed-shell .prive-sex-advertisers-form { display: grid; gap: 16px; }
.psx-embed-shell .prive-sex-users-signup-cta { margin-top: 18px; padding-top: 16px; }
.psx-embed-signed-in { padding: 26px; text-align: center; color: var(--prive-sex-muted, #6d6470); font-weight: 700; }

/* En las paginas de acceso, con el popup abierto, solo quedan navbar + box:
   se ocultan titulo, migas, sidebar y el box en linea duplicado. */
html.psx-popup-js.psx-popup-open body.psx-account-popup-page .entry-content > .account-panel,
html.psx-popup-js.psx-popup-open body.psx-account-popup-page .entry-header,
html.psx-popup-js.psx-popup-open body.psx-account-popup-page .breadcrumbs,
html.psx-popup-js.psx-popup-open body.psx-account-popup-page .site-sidebar { display: none; }
html.psx-popup-js.psx-popup-open body.psx-account-popup-page .content-layout { grid-template-columns: minmax(0, 1fr); }

@media (max-width: 600px) {
  .prive-sex-account-popup { padding: 14px; align-items: center; }
  .prive-sex-account-popup__dialog { width: min(560px, 100%); max-width: none; max-height: calc(100dvh - 28px); border-radius: 22px; }
}

/* account-popup-compact-v1: la decide el padre cuando el contenido no cabe, porque un
   @media dentro del iframe se evalua contra el alto del propio iframe y se realimenta. */
body.psx-embed-compact .psx-embed-shell { padding-top: 26px; padding-bottom: 8px; }
body.psx-embed-compact .account-form-fields { gap: 9px; padding: 13px; }
body.psx-embed-compact .account-form-fields legend { font-size: 16px; }
body.psx-embed-compact .account-type-option__pill { min-height: 38px; padding: 6px 10px; font-size: 12px; }
body.psx-embed-compact .account-type-hint { font-size: 11px; }
body.psx-embed-compact .form-field label { margin-bottom: 3px; }
body.psx-embed-compact .form-field input,
body.psx-embed-compact .form-field select { min-height: 40px; }
body.psx-embed-compact .form-field small { margin-top: 3px; font-size: 11px; }
body.psx-embed-compact .account-consent { font-size: 12px; }
body.psx-embed-compact .prive-sex-users-form,
body.psx-embed-compact .prive-sex-advertisers-form { gap: 8px; }
body.psx-embed-compact .button { min-height: 38px; padding: 8px 14px; font-size: 13px; }
body.psx-embed-compact .prive-sex-users-signup-cta { margin-top: 8px; padding-top: 8px; }
body.psx-embed-compact .prive-sex-users-signup-cta__title { margin-bottom: 6px; font-size: 14px; }
body.psx-embed-compact .prive-sex-users-signup-cta__buttons { gap: 8px; }

/* account-popup-compact-sm-v1: segundo nivel para pantallas muy bajas (<=640px de alto).
   Lo activa el padre con una clase, nunca un @media dentro del iframe (se realimenta). */
body.psx-embed-compact-sm .account-type-hint { display: none; }
body.psx-embed-compact-sm .account-form-fields { gap: 7px; padding: 10px; }
body.psx-embed-compact-sm .account-form-fields legend { font-size: 15px; }
body.psx-embed-compact-sm .account-type-option__pill { min-height: 34px; font-size: 12px; }
body.psx-embed-compact-sm .form-field input,
body.psx-embed-compact-sm .form-field select { min-height: 38px; }
body.psx-embed-compact-sm .form-field small { display: none; }
body.psx-embed-compact-sm .prive-sex-users-form,
body.psx-embed-compact-sm .prive-sex-advertisers-form { gap: 7px; }
body.psx-embed-compact-sm .button { min-height: 36px; padding: 7px 13px; }
body.psx-embed-compact-sm .prive-sex-users-signup-cta__title { font-size: 13px; }
