/* =========================================================
   UPSEX — PÁGINAS INTERNAS DE CUENTA V7

   Se aplica a account/* excepto:
   - account/register
   - account/success
   ========================================================= */

html body[class*="account-"]:not(.account-register):not(.account-success){
  --upsex-chocolate:#342126;
  --upsex-chocolate-secondary:#50383E;
  --upsex-text-soft:#5f534f;
  --upsex-gold:#C62828;
  --upsex-gold-text:#7A0C18;
  --upsex-gold-dark:#4A0A12;
  --upsex-gold-border:#D32F2F;
  --upsex-gold-light:#D2AD52;
  --upsex-gold-soft:#F8E9EC;
  --upsex-cream:#FFF8F9;
  --upsex-card:#FFFBFC;

  color:var(--upsex-chocolate)!important;
  font-family:"Manrope",Arial,sans-serif!important;
  background:
    radial-gradient(
      circle at 8% 8%,
      rgba(210,173,82,.09),
      transparent 27%
    ),
    radial-gradient(
      circle at 92% 18%,
      rgba(243,238,255,.50),
      transparent 28%
    ),
    var(--upsex-cream)!important;
}

/* Tipografía única */

html body[class*="account-"]:not(.account-register):not(.account-success),
html body[class*="account-"]:not(.account-register):not(.account-success) *{
  box-sizing:border-box!important;
  font-family:"Manrope",Arial,sans-serif!important;
}

/* Desactivar interferencias de módulos globales */

html body[class*="account-"]:not(.account-register):not(.account-success)
.onsex-intent-landing-hero,

html body[class*="account-"]:not(.account-register):not(.account-success)
.txp-view-badge-v1{
  display:none!important;
  visibility:hidden!important;
  opacity:0!important;
  height:0!important;
  min-height:0!important;
  margin:0!important;
  padding:0!important;
  overflow:hidden!important;
  pointer-events:none!important;
}

/* Contenedor principal */

html body[class*="account-"]:not(.account-register):not(.account-success)
[id^="account-"].container{
  position:relative!important;
  display:block!important;
  visibility:visible!important;
  opacity:1!important;
  transform:none!important;
  width:100%!important;
  max-width:1180px!important;
  min-height:380px!important;
  margin:0 auto 48px!important;
  padding:25px 18px 0!important;
  overflow:visible!important;
  animation:none!important;
  scroll-margin-top:180px!important;
}

/* Breadcrumb protegido */

html body[class*="account-"]:not(.account-register):not(.account-success)
[id^="account-"].container > .breadcrumb,

html body[class*="account-"]:not(.account-register):not(.account-success)
[id^="account-"] .upsex-breadcrumb-safe-v7{
  position:relative!important;
  top:auto!important;
  right:auto!important;
  bottom:auto!important;
  left:auto!important;
  z-index:30!important;

  display:flex!important;
  visibility:visible!important;
  opacity:1!important;
  transform:none!important;

  align-items:center!important;
  flex-wrap:wrap!important;
  gap:8px!important;

  width:max-content!important;
  max-width:100%!important;
  min-height:48px!important;

  margin:0 0 20px!important;
  padding:11px 17px!important;

  border:1px solid var(--upsex-gold-soft)!important;
  border-radius:999px!important;

  background:var(--upsex-card)!important;
  box-shadow:0 5px 16px rgba(77,66,63,.055)!important;

  list-style:none!important;
  overflow:visible!important;
  pointer-events:auto!important;
}

html body[class*="account-"]:not(.account-register):not(.account-success)
[id^="account-"] .breadcrumb > li{
  position:relative!important;
  display:inline-flex!important;
  align-items:center!important;

  margin:0!important;
  padding:0!important;

  color:var(--upsex-chocolate-secondary)!important;
  font-size:14px!important;
  line-height:1.3!important;
  font-weight:700!important;
}

html body[class*="account-"]:not(.account-register):not(.account-success)
[id^="account-"] .breadcrumb > li + li::before{
  padding:0 7px!important;
  color:var(--upsex-gold)!important;
  content:"/"!important;
}

html body[class*="account-"]:not(.account-register):not(.account-success)
[id^="account-"] .breadcrumb a{
  display:inline-flex!important;
  align-items:center!important;
  gap:7px!important;

  color:var(--upsex-chocolate-secondary)!important;
  font-weight:700!important;
  text-decoration:none!important;
  text-transform:none!important;
}

html body[class*="account-"]:not(.account-register):not(.account-success)
[id^="account-"] .breadcrumb a:hover{
  color:var(--upsex-gold-text)!important;
}

/* Layout contenido + menú de cuenta */

html body[class*="account-"]:not(.account-register):not(.account-success)
[id^="account-"].container > .row{
  display:flex!important;
  align-items:flex-start!important;
  flex-wrap:wrap!important;
  gap:24px!important;

  margin:0!important;
}

html body[class*="account-"]:not(.account-register):not(.account-success)
[id^="account-"] #content{
  position:relative!important;
  display:block!important;
  visibility:visible!important;
  opacity:1!important;
  transform:none!important;

  flex:1 1 650px!important;
  float:none!important;

  width:auto!important;
  min-width:0!important;
  margin:0!important;
  padding:29px!important;

  border:1px solid rgba(184,138,0,.22)!important;
  border-radius:24px!important;

  background:var(--upsex-card)!important;
  box-shadow:0 12px 28px rgba(73,54,35,.065)!important;

  overflow:visible!important;
}

html body[class*="account-"]:not(.account-register):not(.account-success)
[id^="account-"] #column-left,

html body[class*="account-"]:not(.account-register):not(.account-success)
[id^="account-"] #column-right{
  flex:0 1 275px!important;
  float:none!important;

  width:275px!important;
  max-width:100%!important;
  margin:0!important;
  padding:0!important;
}

/* Títulos protegidos */

html body[class*="account-"]:not(.account-register):not(.account-success)
[id^="account-"] #content > h1,

html body[class*="account-"]:not(.account-register):not(.account-success)
[id^="account-"] #content > h1.onsex-intent-hidden-h1{
  position:relative!important;
  top:auto!important;
  right:auto!important;
  bottom:auto!important;
  left:auto!important;

  display:block!important;
  visibility:visible!important;
  opacity:1!important;
  transform:none!important;

  width:100%!important;
  margin:0 0 24px!important;
  padding:0 0 16px!important;

  border-bottom:1px solid var(--upsex-gold-soft)!important;

  color:var(--upsex-chocolate)!important;
  -webkit-text-fill-color:var(--upsex-chocolate)!important;

  font-size:clamp(29px,4.5vw,42px)!important;
  line-height:1.14!important;
  font-weight:800!important;
  letter-spacing:-.7px!important;
  text-transform:none!important;

  pointer-events:auto!important;
}

html body[class*="account-"]:not(.account-register):not(.account-success)
[id^="account-"] #content h2{
  color:var(--upsex-chocolate)!important;
  font-size:24px!important;
  line-height:1.25!important;
  font-weight:800!important;
}

html body[class*="account-"]:not(.account-register):not(.account-success)
[id^="account-"] #content h3{
  color:var(--upsex-chocolate)!important;
  font-size:20px!important;
  line-height:1.3!important;
  font-weight:800!important;
}

html body[class*="account-"]:not(.account-register):not(.account-success)
[id^="account-"] #content p{
  color:var(--upsex-chocolate-secondary)!important;
  font-size:15px!important;
  line-height:1.65!important;
  font-weight:500!important;
}

/* Formularios */

html body[class*="account-"]:not(.account-register):not(.account-success)
[id^="account-"] form{
  width:100%!important;
  margin:0!important;
}

html body[class*="account-"]:not(.account-register):not(.account-success)
[id^="account-"] fieldset{
  width:100%!important;
  margin:0 0 28px!important;
  padding:0!important;
  border:0!important;
}

html body[class*="account-"]:not(.account-register):not(.account-success)
[id^="account-"] legend{
  width:100%!important;
  margin:0 0 22px!important;
  padding:0 0 13px!important;

  border:0!important;
  border-bottom:1px solid var(--upsex-gold-soft)!important;

  color:var(--upsex-chocolate)!important;
  font-size:22px!important;
  line-height:1.3!important;
  font-weight:800!important;
}

html body[class*="account-"]:not(.account-register):not(.account-success)
[id^="account-"] .form-group{
  width:100%!important;
  margin:0 0 19px!important;
  padding:0!important;
}

html body[class*="account-"]:not(.account-register):not(.account-success)
[id^="account-"] .form-group::before,

html body[class*="account-"]:not(.account-register):not(.account-success)
[id^="account-"] .form-group::after{
  display:none!important;
}

html body[class*="account-"]:not(.account-register):not(.account-success)
[id^="account-"] .control-label{
  display:block!important;
  float:none!important;

  width:100%!important;
  margin:0 0 8px!important;
  padding:0!important;

  color:var(--upsex-chocolate)!important;
  font-size:14px!important;
  line-height:1.4!important;
  font-weight:700!important;
  text-align:left!important;
}

html body[class*="account-"]:not(.account-register):not(.account-success)
[id^="account-"] .col-sm-10,

html body[class*="account-"]:not(.account-register):not(.account-success)
[id^="account-"] .col-sm-9,

html body[class*="account-"]:not(.account-register):not(.account-success)
[id^="account-"] .col-sm-8,

html body[class*="account-"]:not(.account-register):not(.account-success)
[id^="account-"] .col-sm-6,

html body[class*="account-"]:not(.account-register):not(.account-success)
[id^="account-"] .col-sm-4,

html body[class*="account-"]:not(.account-register):not(.account-success)
[id^="account-"] .col-sm-3,

html body[class*="account-"]:not(.account-register):not(.account-success)
[id^="account-"] .col-sm-2{
  float:none!important;
  width:100%!important;
  margin:0!important;
  padding:0!important;
}

html body[class*="account-"]:not(.account-register):not(.account-success)
[id^="account-"] .form-control{
  display:block!important;

  width:100%!important;
  min-height:52px!important;
  height:auto!important;

  margin:0!important;
  padding:13px 16px!important;

  border:1px solid var(--upsex-gold-border)!important;
  border-radius:13px!important;

  background:#fff!important;
  color:var(--upsex-chocolate)!important;
  -webkit-text-fill-color:var(--upsex-chocolate)!important;

  font-size:15px!important;
  line-height:1.4!important;
  font-weight:500!important;

  outline:0!important;
  box-shadow:0 3px 11px rgba(77,66,63,.04)!important;
}

html body[class*="account-"]:not(.account-register):not(.account-success)
[id^="account-"] textarea.form-control{
  min-height:125px!important;
  resize:vertical!important;
}

html body[class*="account-"]:not(.account-register):not(.account-success)
[id^="account-"] .form-control:focus{
  border-color:var(--upsex-gold)!important;
  box-shadow:0 0 0 3px rgba(184,138,0,.14)!important;
}

html body[class*="account-"]:not(.account-register):not(.account-success)
[id^="account-"] input[type="radio"],

html body[class*="account-"]:not(.account-register):not(.account-success)
[id^="account-"] input[type="checkbox"]{
  width:19px!important;
  height:19px!important;
  margin:0 7px 0 0!important;
  accent-color:var(--upsex-gold)!important;
  vertical-align:middle!important;
}

/* Botones */

html body[class*="account-"]:not(.account-register):not(.account-success)
[id^="account-"] .btn-primary,

html body[class*="account-"]:not(.account-register):not(.account-success)
[id^="account-"] input.btn-primary{
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;

  min-width:180px!important;
  min-height:52px!important;

  padding:13px 24px!important;

  border:1px solid var(--upsex-chocolate)!important;
  border-radius:999px!important;

  background:var(--upsex-chocolate)!important;
  color:#fff!important;
  -webkit-text-fill-color:#fff!important;

  font-size:15px!important;
  line-height:1.2!important;
  font-weight:800!important;
  text-align:center!important;
  text-decoration:none!important;

  box-shadow:0 9px 22px rgba(77,66,63,.16)!important;
}

html body[class*="account-"]:not(.account-register):not(.account-success)
[id^="account-"] .btn-primary:hover,

html body[class*="account-"]:not(.account-register):not(.account-success)
[id^="account-"] .btn-primary:focus{
  background:var(--upsex-chocolate-secondary)!important;
  color:#fff!important;
}

html body[class*="account-"]:not(.account-register):not(.account-success)
[id^="account-"] .btn-default{
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;

  min-height:46px!important;
  padding:11px 20px!important;

  border:1px solid var(--upsex-gold-border)!important;
  border-radius:999px!important;

  background:var(--upsex-gold-soft)!important;
  color:var(--upsex-gold-dark)!important;

  font-size:14px!important;
  font-weight:700!important;
  text-decoration:none!important;
}

/* Tablas */

html body[class*="account-"]:not(.account-register):not(.account-success)
[id^="account-"] .table-responsive{
  margin:18px 0!important;
  border:1px solid rgba(184,138,0,.20)!important;
  border-radius:17px!important;
  background:#fff!important;
  overflow-x:auto!important;
  box-shadow:0 7px 20px rgba(77,66,63,.04)!important;
}

html body[class*="account-"]:not(.account-register):not(.account-success)
[id^="account-"] table{
  width:100%!important;
  margin:0!important;
  border-collapse:collapse!important;
  background:#fff!important;
  color:var(--upsex-chocolate-secondary)!important;
}

html body[class*="account-"]:not(.account-register):not(.account-success)
[id^="account-"] table thead td,

html body[class*="account-"]:not(.account-register):not(.account-success)
[id^="account-"] table thead th{
  padding:14px!important;
  border-color:var(--upsex-gold-soft)!important;
  background:var(--upsex-cream)!important;
  color:var(--upsex-chocolate)!important;
  font-weight:800!important;
}

html body[class*="account-"]:not(.account-register):not(.account-success)
[id^="account-"] table tbody td{
  padding:14px!important;
  border-color:rgba(184,138,0,.14)!important;
  color:var(--upsex-chocolate-secondary)!important;
  font-weight:500!important;
}

/* Menú interno de cuenta */

html body[class*="account-"]:not(.account-register):not(.account-success)
[id^="account-"] .list-group{
  overflow:hidden!important;
  margin:0!important;

  border:1px solid rgba(184,138,0,.22)!important;
  border-radius:18px!important;

  background:var(--upsex-card)!important;
  box-shadow:0 10px 25px rgba(73,54,35,.055)!important;
}

html body[class*="account-"]:not(.account-register):not(.account-success)
[id^="account-"] .list-group-item{
  margin:0!important;
  padding:14px 17px!important;

  border:0!important;
  border-bottom:1px solid rgba(184,138,0,.14)!important;

  background:var(--upsex-card)!important;
  color:var(--upsex-chocolate-secondary)!important;

  font-size:14px!important;
  line-height:1.4!important;
  font-weight:650!important;
  text-decoration:none!important;
}

html body[class*="account-"]:not(.account-register):not(.account-success)
[id^="account-"] .list-group-item:last-child{
  border-bottom:0!important;
}

html body[class*="account-"]:not(.account-register):not(.account-success)
[id^="account-"] .list-group-item:hover,

html body[class*="account-"]:not(.account-register):not(.account-success)
[id^="account-"] .list-group-item.active{
  background:var(--upsex-gold-soft)!important;
  color:var(--upsex-gold-dark)!important;
}

/* Paneles nativos */

html body[class*="account-"]:not(.account-register):not(.account-success)
[id^="account-"] .well,

html body[class*="account-"]:not(.account-register):not(.account-success)
[id^="account-"] .panel{
  margin-bottom:20px!important;
  padding:22px!important;

  border:1px solid rgba(184,138,0,.20)!important;
  border-radius:18px!important;

  background:#fff!important;
  box-shadow:0 8px 22px rgba(77,66,63,.045)!important;
}

html body[class*="account-"]:not(.account-register):not(.account-success)
[id^="account-"] .panel-heading{
  margin:-22px -22px 18px!important;
  padding:15px 20px!important;

  border:0!important;
  border-bottom:1px solid var(--upsex-gold-soft)!important;

  background:var(--upsex-cream)!important;
  color:var(--upsex-chocolate)!important;
  font-weight:800!important;
}

/* Alertas */

html body[class*="account-"]:not(.account-register):not(.account-success)
[id^="account-"] .alert{
  margin:0 0 20px!important;
  padding:15px 17px!important;

  border:1px solid var(--upsex-gold-soft)!important;
  border-radius:14px!important;

  background:var(--upsex-cream)!important;
  color:var(--upsex-chocolate-secondary)!important;

  font-size:14px!important;
  line-height:1.55!important;
  font-weight:600!important;
}

html body[class*="account-"]:not(.account-register):not(.account-success)
[id^="account-"] .text-danger{
  display:block!important;
  margin-top:7px!important;
  color:#873c3c!important;
  font-size:13px!important;
  line-height:1.4!important;
  font-weight:700!important;
}

/* Enlaces */

html body[class*="account-"]:not(.account-register):not(.account-success)
[id^="account-"] #content a:not(.btn){
  color:var(--upsex-gold-dark)!important;
  font-weight:700!important;
  text-decoration:none!important;
}

html body[class*="account-"]:not(.account-register):not(.account-success)
[id^="account-"] #content a:not(.btn):hover{
  color:var(--upsex-gold)!important;
  text-decoration:underline!important;
}

/* Paginación */

html body[class*="account-"]:not(.account-register):not(.account-success)
[id^="account-"] .pagination{
  display:flex!important;
  flex-wrap:wrap!important;
  gap:7px!important;
  margin:22px 0 0!important;
}

html body[class*="account-"]:not(.account-register):not(.account-success)
[id^="account-"] .pagination > li > a,

html body[class*="account-"]:not(.account-register):not(.account-success)
[id^="account-"] .pagination > li > span{
  min-width:40px!important;
  min-height:40px!important;
  padding:10px!important;

  border:1px solid var(--upsex-gold-soft)!important;
  border-radius:10px!important;

  background:#fff!important;
  color:var(--upsex-chocolate-secondary)!important;

  text-align:center!important;
  font-weight:700!important;
}

/* Móvil */

@media(max-width:767px){

  html body[class*="account-"]:not(.account-register):not(.account-success)
  [id^="account-"].container{
    padding:20px 12px 0!important;
    margin-bottom:32px!important;
  }

  html body[class*="account-"]:not(.account-register):not(.account-success)
  [id^="account-"].container > .breadcrumb{
    min-height:44px!important;
    margin-bottom:16px!important;
    padding:9px 13px!important;
  }

  html body[class*="account-"]:not(.account-register):not(.account-success)
  [id^="account-"].container > .row{
    display:flex!important;
    flex-direction:column!important;
    gap:18px!important;
  }

  html body[class*="account-"]:not(.account-register):not(.account-success)
  [id^="account-"] #content{
    order:1!important;
    flex:0 0 auto!important;

    width:100%!important;
    max-width:100%!important;

    padding:22px 17px 24px!important;
    border-radius:19px!important;
  }

  html body[class*="account-"]:not(.account-register):not(.account-success)
  [id^="account-"] #column-left,

  html body[class*="account-"]:not(.account-register):not(.account-success)
  [id^="account-"] #column-right{
    order:2!important;
    flex:0 0 auto!important;

    width:100%!important;
    max-width:100%!important;
  }

  html body[class*="account-"]:not(.account-register):not(.account-success)
  [id^="account-"] #content > h1,

  html body[class*="account-"]:not(.account-register):not(.account-success)
  [id^="account-"] #content > h1.onsex-intent-hidden-h1{
    margin-bottom:20px!important;
    padding-bottom:14px!important;

    font-size:29px!important;
    line-height:1.16!important;
    letter-spacing:-.45px!important;
  }

  html body[class*="account-"]:not(.account-register):not(.account-success)
  [id^="account-"] .buttons .pull-right,

  html body[class*="account-"]:not(.account-register):not(.account-success)
  [id^="account-"] .buttons .pull-left{
    display:flex!important;
    float:none!important;
    flex-direction:column!important;

    width:100%!important;
    gap:10px!important;
  }

  html body[class*="account-"]:not(.account-register):not(.account-success)
  [id^="account-"] .btn-primary,

  html body[class*="account-"]:not(.account-register):not(.account-success)
  [id^="account-"] .btn-default{
    width:100%!important;
    max-width:none!important;
  }
}

/* UPSEX_ACCOUNT_BREADCRUMB_V8_START */

/*
 * Esta corrección NO depende de body.account-login.
 * Se aplica directamente al ID real de cada página account.
 */

html body
div[id^="account-"].container:not(#account-register):not(#account-success){
    position:relative!important;
    top:auto!important;
    right:auto!important;
    bottom:auto!important;
    left:auto!important;

    display:block!important;
    visibility:visible!important;
    opacity:1!important;
    transform:none!important;

    width:100%!important;
    max-width:1180px!important;
    min-height:300px!important;

    margin:0 auto 48px!important;
    padding:22px 18px 0!important;

    overflow:visible!important;
    clip:auto!important;
    clip-path:none!important;
    filter:none!important;

    color:#342126!important;
    font-family:Manrope,Arial,sans-serif!important;
}

html body
div[id^="account-"].container:not(#account-register):not(#account-success)
> .breadcrumb,

html body
div[id^="account-"].container:not(#account-register):not(#account-success)
.breadcrumb[data-upsex-breadcrumb-v8="1"]{
    position:relative!important;
    inset:auto!important;
    z-index:100!important;

    display:flex!important;
    visibility:visible!important;
    opacity:1!important;
    transform:none!important;

    align-items:center!important;
    flex-wrap:wrap!important;
    gap:8px!important;

    width:max-content!important;
    max-width:100%!important;
    min-width:0!important;

    height:auto!important;
    min-height:48px!important;
    max-height:none!important;

    margin:0 0 20px!important;
    padding:11px 17px!important;

    border:1px solid #F8E9EC!important;
    border-radius:999px!important;

    background:#FFFBFC!important;
    color:#50383E!important;

    box-shadow:
        0 5px 16px rgba(77,66,63,.06)!important;

    overflow:visible!important;
    clip:auto!important;
    clip-path:none!important;
    filter:none!important;

    list-style:none!important;
    pointer-events:auto!important;
}

html body
div[id^="account-"].container:not(#account-register):not(#account-success)
.breadcrumb > li{
    position:relative!important;

    display:inline-flex!important;
    visibility:visible!important;
    opacity:1!important;

    align-items:center!important;
    gap:7px!important;

    width:auto!important;
    height:auto!important;

    margin:0!important;
    padding:0!important;

    color:#50383E!important;

    font-family:Manrope,Arial,sans-serif!important;
    font-size:14px!important;
    line-height:1.35!important;
    font-weight:700!important;
}

html body
div[id^="account-"].container:not(#account-register):not(#account-success)
.breadcrumb > li + li::before{
    display:inline-block!important;

    padding:0 7px!important;

    color:#C62828!important;
    content:"/"!important;
}

html body
div[id^="account-"].container:not(#account-register):not(#account-success)
.breadcrumb a{
    display:inline-flex!important;
    visibility:visible!important;
    opacity:1!important;

    align-items:center!important;
    gap:7px!important;

    color:#50383E!important;

    font-family:Manrope,Arial,sans-serif!important;
    font-size:14px!important;
    line-height:1.35!important;
    font-weight:700!important;

    text-decoration:none!important;
    text-transform:none!important;
}

html body
div[id^="account-"].container:not(#account-register):not(#account-success)
.breadcrumb a:hover{
    color:#7A0C18!important;
}

html body
div[id^="account-"].container:not(#account-register):not(#account-success)
.breadcrumb .fa-home{
    color:#C62828!important;
    font-size:16px!important;
}

/* Evitar títulos escondidos por scripts de otras páginas */

html body
div[id^="account-"].container:not(#account-register):not(#account-success)
#content > h1,

html body
div[id^="account-"].container:not(#account-register):not(#account-success)
#content > h1.onsex-intent-hidden-h1{
    position:relative!important;
    inset:auto!important;

    display:block!important;
    visibility:visible!important;
    opacity:1!important;
    transform:none!important;

    height:auto!important;
    max-height:none!important;

    color:#342126!important;
    -webkit-text-fill-color:#342126!important;

    font-family:Manrope,Arial,sans-serif!important;
    font-weight:800!important;

    clip:auto!important;
    clip-path:none!important;
    overflow:visible!important;
}

/* Los módulos creados para categorías no pertenecen a account */

html body
div[id^="account-"].container:not(#account-register):not(#account-success)
.onsex-intent-landing-hero,

html body
div[id^="account-"].container:not(#account-register):not(#account-success)
.txp-view-badge-v1{
    display:none!important;
    visibility:hidden!important;
    opacity:0!important;

    width:0!important;
    height:0!important;
    min-height:0!important;

    margin:0!important;
    padding:0!important;

    overflow:hidden!important;
    pointer-events:none!important;
}

/* Móvil */

@media(max-width:767px){

    html body
    div[id^="account-"].container:not(#account-register):not(#account-success){
        margin:0 auto 32px!important;
        padding:18px 12px 0!important;
    }

    html body
    div[id^="account-"].container:not(#account-register):not(#account-success)
    > .breadcrumb,

    html body
    div[id^="account-"].container:not(#account-register):not(#account-success)
    .breadcrumb[data-upsex-breadcrumb-v8="1"]{
        width:max-content!important;
        max-width:100%!important;

        min-height:44px!important;

        margin:0 0 16px!important;
        padding:9px 13px!important;

        border-radius:999px!important;
    }

    html body
    div[id^="account-"].container:not(#account-register):not(#account-success)
    .breadcrumb > li,

    html body
    div[id^="account-"].container:not(#account-register):not(#account-success)
    .breadcrumb a{
        font-size:13px!important;
    }
}

/* UPSEX_ACCOUNT_BREADCRUMB_V8_END */

/* UPSEX_ACCOUNT_FINISH_V9_START */

/*
 * Ícono Inicio:
 * SVG integrado, sin depender de Font Awesome.
 */

html body
div[id^="account-"].container:not(#account-register):not(#account-success)
.breadcrumb a:first-child{
    display:inline-flex!important;
    align-items:center!important;
    gap:7px!important;
}

html body
div[id^="account-"].container:not(#account-register):not(#account-success)
.breadcrumb .upsex-home-svg-v9{
    display:block!important;
    visibility:visible!important;
    opacity:1!important;

    flex:0 0 18px!important;

    width:18px!important;
    height:18px!important;

    margin:0!important;
    padding:0!important;

    color:#C62828!important;

    fill:none!important;
    stroke:currentColor!important;
    stroke-width:1.9!important;
    stroke-linecap:round!important;
    stroke-linejoin:round!important;

    overflow:visible!important;
}

/* Ocultar cualquier ícono roto anterior */

html body
div[id^="account-"].container:not(#account-register):not(#account-success)
.breadcrumb a:first-child > i,

html body
div[id^="account-"].container:not(#account-register):not(#account-success)
.breadcrumb a:first-child > .fa{
    display:none!important;
}

/*
 * Espacio profesional:
 * 10 px entre el selector y el contenido.
 */

html body
div[id^="account-"].container:not(#account-register):not(#account-success)
> .breadcrumb,

html body
div[id^="account-"].container:not(#account-register):not(#account-success)
.breadcrumb[data-upsex-breadcrumb-v8="1"]{
    margin-top:0!important;
    margin-bottom:10px!important;
}

html body
div[id^="account-"].container:not(#account-register):not(#account-success)
> .breadcrumb + .row{
    margin-top:0!important;
    padding-top:0!important;
}

html body
div[id^="account-"].container:not(#account-register):not(#account-success)
> .breadcrumb + .row > [class*="col-"],

html body
div[id^="account-"].container:not(#account-register):not(#account-success)
> .breadcrumb + .row #content{
    margin-top:0!important;
    padding-top:0!important;
}

html body
div[id^="account-"].container:not(#account-register):not(#account-success)
> .breadcrumb + .row #content > :first-child{
    margin-top:0!important;
}

/* Recuperación de contraseña */

html body #account-login a[href*="account/forgotten"]{
    color:#4A0A12!important;
    font-family:Manrope,Arial,sans-serif!important;
    font-size:14px!important;
    line-height:1.4!important;
    font-weight:700!important;
    text-decoration:none!important;
}

html body #account-login a[href*="account/forgotten"]:hover{
    color:#C62828!important;
    text-decoration:underline!important;
}

@media(max-width:767px){

    html body
    div[id^="account-"].container:not(#account-register):not(#account-success)
    > .breadcrumb,

    html body
    div[id^="account-"].container:not(#account-register):not(#account-success)
    .breadcrumb[data-upsex-breadcrumb-v8="1"]{
        margin-bottom:8px!important;
    }

    html body
    div[id^="account-"].container:not(#account-register):not(#account-success)
    .breadcrumb .upsex-home-svg-v9{
        width:17px!important;
        height:17px!important;
        flex-basis:17px!important;
    }
}

/* UPSEX_ACCOUNT_FINISH_V9_END */

/* UPSEX_ACCOUNT_SPACING_V10_START */

/*
 * Solo páginas internas account/*
 * No modifica registro ni cuenta creada.
 */

html body
div[id^="account-"].container:not(#account-register):not(#account-success){
    box-sizing:border-box!important;
    padding-top:14px!important;
    padding-bottom:34px!important;
}

/* ==========================================================
   BREADCRUMB CERCA DEL MÓDULO SIGUIENTE
   ========================================================== */

html body
div[id^="account-"].container:not(#account-register):not(#account-success)
> .breadcrumb,

html body
div[id^="account-"].container:not(#account-register):not(#account-success)
.breadcrumb[data-upsex-breadcrumb-v8="1"]{
    margin-top:0!important;
    margin-bottom:12px!important;
}

html body
div[id^="account-"].container:not(#account-register):not(#account-success)
> .breadcrumb + .row{
    margin-top:0!important;
    padding-top:0!important;
}

html body
div[id^="account-"].container:not(#account-register):not(#account-success)
> .row #content{
    margin-top:0!important;
    padding-top:0!important;
}

html body
div[id^="account-"].container:not(#account-register):not(#account-success)
> .row #content > :first-child{
    margin-top:0!important;
}

/* ==========================================================
   SEPARACIÓN ENTRE MÓDULOS
   ========================================================== */

html body
div[id^="account-"].container:not(#account-register):not(#account-success)
#content > .row{
    display:flex!important;
    align-items:stretch!important;
    flex-wrap:wrap!important;
    row-gap:20px!important;
    margin-top:0!important;
}

html body
div[id^="account-"].container:not(#account-register):not(#account-success)
#content > .row > [class*="col-"]{
    margin-top:0!important;
    margin-bottom:0!important;
}

/* ==========================================================
   ESPACIO INTERNO DE TARJETAS Y FORMULARIOS
   ========================================================== */

html body
div[id^="account-"].container:not(#account-register):not(#account-success)
#content .well,

html body
div[id^="account-"].container:not(#account-register):not(#account-success)
#content .panel-body,

html body
div[id^="account-"].container:not(#account-register):not(#account-success)
#content > form.form-horizontal{
    box-sizing:border-box!important;
    width:100%!important;

    margin-top:0!important;
    margin-bottom:18px!important;

    padding:32px 34px!important;

    border:1px solid rgba(184,138,0,.24)!important;
    border-radius:22px!important;

    background:#FFFBFC!important;

    box-shadow:
        0 12px 28px rgba(73,54,35,.06)!important;
}

/* Evita que el contenido quede pegado a los bordes */

html body
div[id^="account-"].container:not(#account-register):not(#account-success)
#content .well > :first-child,

html body
div[id^="account-"].container:not(#account-register):not(#account-success)
#content .panel-body > :first-child,

html body
div[id^="account-"].container:not(#account-register):not(#account-success)
#content > form.form-horizontal > :first-child{
    margin-top:0!important;
}

html body
div[id^="account-"].container:not(#account-register):not(#account-success)
#content .well > :last-child,

html body
div[id^="account-"].container:not(#account-register):not(#account-success)
#content .panel-body > :last-child,

html body
div[id^="account-"].container:not(#account-register):not(#account-success)
#content > form.form-horizontal > :last-child{
    margin-bottom:0!important;
}

/* Títulos y textos con respiración uniforme */

html body
div[id^="account-"].container:not(#account-register):not(#account-success)
#content .well h1,

html body
div[id^="account-"].container:not(#account-register):not(#account-success)
#content .well h2,

html body
div[id^="account-"].container:not(#account-register):not(#account-success)
#content .panel-body h1,

html body
div[id^="account-"].container:not(#account-register):not(#account-success)
#content .panel-body h2{
    margin-top:0!important;
    margin-bottom:18px!important;
}

html body
div[id^="account-"].container:not(#account-register):not(#account-success)
#content .well p,

html body
div[id^="account-"].container:not(#account-register):not(#account-success)
#content .panel-body p{
    margin-top:0!important;
    margin-bottom:17px!important;
    line-height:1.65!important;
}

html body
div[id^="account-"].container:not(#account-register):not(#account-success)
#content .form-group{
    margin-top:0!important;
    margin-bottom:20px!important;
}

html body
div[id^="account-"].container:not(#account-register):not(#account-success)
#content .control-label{
    display:block!important;
    margin-bottom:9px!important;
}

/* ==========================================================
   BOTONES JUNTOS: SEPARACIÓN Y RESPONSIVIDAD
   ========================================================== */

html body
div[id^="account-"].container:not(#account-register):not(#account-success)
#content .buttons{
    display:flex!important;
    align-items:center!important;
    justify-content:space-between!important;
    flex-wrap:wrap!important;

    column-gap:14px!important;
    row-gap:12px!important;

    width:100%!important;

    margin:25px 0 0!important;
    padding:20px 0 0!important;

    border-top:1px solid rgba(184,138,0,.18)!important;
}

html body
div[id^="account-"].container:not(#account-register):not(#account-success)
#content .buttons::before,

html body
div[id^="account-"].container:not(#account-register):not(#account-success)
#content .buttons::after{
    display:none!important;
}

html body
div[id^="account-"].container:not(#account-register):not(#account-success)
#content .buttons .pull-left,

html body
div[id^="account-"].container:not(#account-register):not(#account-success)
#content .buttons .pull-right{
    display:flex!important;
    align-items:center!important;
    flex-wrap:wrap!important;

    gap:12px!important;

    margin:0!important;
    padding:0!important;

    float:none!important;
}

html body
div[id^="account-"].container:not(#account-register):not(#account-success)
#content .buttons .btn{
    display:inline-flex!important;
    align-items:center!important;
    justify-content:center!important;

    min-height:49px!important;

    margin:0!important;
    padding:12px 23px!important;

    white-space:normal!important;
    text-align:center!important;
}

html body
div[id^="account-"].container:not(#account-register):not(#account-success)
#content .buttons .btn + .btn{
    margin-left:0!important;
}

/* Botones contiguos dentro de tablas */

html body
div[id^="account-"].container:not(#account-register):not(#account-success)
#content td .btn + .btn{
    margin-left:8px!important;
}

/* ==========================================================
   MÓVIL
   ========================================================== */

@media(max-width:767px){

    html body
    div[id^="account-"].container:not(#account-register):not(#account-success){
        padding-top:10px!important;
        padding-bottom:26px!important;
    }

    html body
    div[id^="account-"].container:not(#account-register):not(#account-success)
    > .breadcrumb,

    html body
    div[id^="account-"].container:not(#account-register):not(#account-success)
    .breadcrumb[data-upsex-breadcrumb-v8="1"]{
        margin-bottom:10px!important;
    }

    html body
    div[id^="account-"].container:not(#account-register):not(#account-success)
    #content > .row{
        row-gap:16px!important;
    }

    html body
    div[id^="account-"].container:not(#account-register):not(#account-success)
    #content .well,

    html body
    div[id^="account-"].container:not(#account-register):not(#account-success)
    #content .panel-body,

    html body
    div[id^="account-"].container:not(#account-register):not(#account-success)
    #content > form.form-horizontal{
        margin-bottom:16px!important;
        padding:26px 21px!important;
        border-radius:19px!important;
    }

    html body
    div[id^="account-"].container:not(#account-register):not(#account-success)
    #content .buttons{
        flex-direction:column!important;
        align-items:stretch!important;

        gap:12px!important;

        margin-top:22px!important;
        padding-top:18px!important;
    }

    html body
    div[id^="account-"].container:not(#account-register):not(#account-success)
    #content .buttons .pull-left,

    html body
    div[id^="account-"].container:not(#account-register):not(#account-success)
    #content .buttons .pull-right{
        flex-direction:column!important;
        align-items:stretch!important;

        width:100%!important;
        gap:12px!important;
    }

    html body
    div[id^="account-"].container:not(#account-register):not(#account-success)
    #content .buttons .btn{
        width:100%!important;
        max-width:none!important;
        min-height:52px!important;
    }
}

/* UPSEX_ACCOUNT_SPACING_V10_END */

/* UPSEX_ACCOUNT_SPACING_FINAL_V11_START */

/*
 * Corrección final y limitada a las páginas internas account.
 * No modifica account/register ni account/success.
 */

/*
 * Bootstrap crea ::before y ::after para limpiar floats.
 * Al convertir .row en flex, esos pseudo-elementos entraban
 * como elementos flexibles y generaban espacio vacío.
 */
html body div[id^="account-"].container:not(#account-register):not(#account-success)
> .row::before,

html body div[id^="account-"].container:not(#account-register):not(#account-success)
> .row::after,

html body div[id^="account-"].container:not(#account-register):not(#account-success)
#content > .row::before,

html body div[id^="account-"].container:not(#account-register):not(#account-success)
#content > .row::after{
    content:none!important;
    display:none!important;
    width:0!important;
    height:0!important;
    margin:0!important;
    padding:0!important;
}

/* Breadcrumb próximo al módulo, sin espacio artificial. */
html body div[id^="account-"].container:not(#account-register):not(#account-success)
> .breadcrumb,

html body div[id^="account-"].container:not(#account-register):not(#account-success)
.breadcrumb[data-upsex-breadcrumb-v8="1"]{
    margin-top:0!important;
    margin-bottom:10px!important;
}

/* Fila principal sin desplazamientos ni huecos superiores. */
html body div[id^="account-"].container:not(#account-register):not(#account-success)
> .row{
    margin-top:0!important;
    padding-top:0!important;
    column-gap:24px!important;
    row-gap:14px!important;
}

/*
 * V10 había dejado padding-top:0.
 * Se recupera la respiración superior del módulo.
 */
html body div[id^="account-"].container:not(#account-register):not(#account-success)
> .row #content{
    margin-top:0!important;
    padding-top:29px!important;
}

/* Contenido interno de módulos y formularios. */
html body div[id^="account-"].container:not(#account-register):not(#account-success)
#content .well,

html body div[id^="account-"].container:not(#account-register):not(#account-success)
#content .panel-body,

html body div[id^="account-"].container:not(#account-register):not(#account-success)
#content > form.form-horizontal{
    box-sizing:border-box!important;
    padding-top:30px!important;
    padding-right:32px!important;
    padding-bottom:30px!important;
    padding-left:32px!important;
}

/* Separación del primer y último elemento respecto al borde. */
html body div[id^="account-"].container:not(#account-register):not(#account-success)
#content .well > :first-child,

html body div[id^="account-"].container:not(#account-register):not(#account-success)
#content .panel-body > :first-child,

html body div[id^="account-"].container:not(#account-register):not(#account-success)
#content > form.form-horizontal > :first-child{
    margin-top:0!important;
}

html body div[id^="account-"].container:not(#account-register):not(#account-success)
#content .well > :last-child,

html body div[id^="account-"].container:not(#account-register):not(#account-success)
#content .panel-body > :last-child,

html body div[id^="account-"].container:not(#account-register):not(#account-success)
#content > form.form-horizontal > :last-child{
    margin-bottom:0!important;
}

@media (max-width:767px){

    html body div[id^="account-"].container:not(#account-register):not(#account-success)
    > .breadcrumb,

    html body div[id^="account-"].container:not(#account-register):not(#account-success)
    .breadcrumb[data-upsex-breadcrumb-v8="1"]{
        margin-bottom:8px!important;
    }

    html body div[id^="account-"].container:not(#account-register):not(#account-success)
    > .row{
        column-gap:0!important;
        row-gap:12px!important;
    }

    html body div[id^="account-"].container:not(#account-register):not(#account-success)
    > .row #content{
        padding-top:22px!important;
        padding-right:17px!important;
        padding-bottom:24px!important;
        padding-left:17px!important;
    }

    html body div[id^="account-"].container:not(#account-register):not(#account-success)
    #content .well,

    html body div[id^="account-"].container:not(#account-register):not(#account-success)
    #content .panel-body,

    html body div[id^="account-"].container:not(#account-register):not(#account-success)
    #content > form.form-horizontal{
        padding-top:25px!important;
        padding-right:21px!important;
        padding-bottom:25px!important;
        padding-left:21px!important;
    }
}

/* UPSEX_ACCOUNT_SPACING_FINAL_V11_END */

/* UPSEX_ACCOUNT_REAL_PADDING_V15_START */

/*
 * IMPORTANTE:
 * No hay espacio entre .container y :not().
 * Así el selector actúa realmente sobre el contenedor account.
 *
 * Se excluyen login, registro y success.
 * No crea tarjetas, fondos ni bordes adicionales.
 */

html body div[id^="account-"].container:not(#account-login):not(#account-register):not(#account-success) > .row > #content{
    box-sizing:border-box!important;
    padding:36px 38px 40px!important;
}

/*
 * Bootstrap utiliza márgenes negativos en .row.
 * Se neutralizan solamente dentro del módulo principal.
 */
html body div[id^="account-"].container:not(#account-login):not(#account-register):not(#account-success) > .row > #content > .row{
    margin-left:0!important;
    margin-right:0!important;
}

html body div[id^="account-"].container:not(#account-login):not(#account-register):not(#account-success) > .row > #content > .row > [class*="col-"]{
    padding-left:0!important;
    padding-right:0!important;
}

/* El primer contenido no puede quedar contra el borde superior. */
html body div[id^="account-"].container:not(#account-login):not(#account-register):not(#account-success) > .row > #content > :first-child{
    margin-top:0!important;
}

/* Tablet */
@media (min-width:768px) and (max-width:991px){
    html body div[id^="account-"].container:not(#account-login):not(#account-register):not(#account-success) > .row > #content{
        padding:32px 32px 36px!important;
    }
}

/* Móvil */
@media (max-width:767px){
    html body div[id^="account-"].container:not(#account-login):not(#account-register):not(#account-success) > .row > #content{
        padding-top:30px!important;
        padding-right:28px!important;
        padding-bottom:34px!important;
        padding-left:28px!important;
    }
}

/* UPSEX_ACCOUNT_REAL_PADDING_V15_END */

