.profile-search-empty[hidden] {
  display: none !important;
}

.visible-name {
  position: absolute;
  top: 12px;
  left: 12px;
  z-index: 2;
  max-width: calc(100% - 24px);
  overflow: hidden;
  color: #fff;
  font-size: .84rem;
  font-weight: 900;
  line-height: 1.15;
  text-shadow: 0 1px 3px #000, 0 0 7px #000;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.profile-card.locked .visible-name {
  max-width: calc(100% - 62px);
}

.profile-card .distance {
  max-width: calc(100% - 24px);
  overflow: hidden;
  padding: 0;
  border-radius: 0;
  background: transparent;
  box-shadow: none;
  color: #fff;
  font-weight: 900;
  text-shadow: 0 1px 3px #000, 0 0 7px #000;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.profile-card .locked-cover-teaser {
  filter: blur(var(--locked-media-blur, 14px)) saturate(.72) brightness(.62);
  transform: scale(1.16);
}

/* Anchura administrable y compactación seleccionable. */
.profile-grid{width:100%;max-width:calc(var(--profile-grid-max-columns,8)*var(--profile-cell));grid-template-columns:repeat(auto-fill,var(--profile-cell))}
.profile-grid.vertical-compaction{grid-auto-flow:row}

.subscription-tier-badge {
  position: absolute;
  bottom: 8px;
  left: 8px;
  z-index: 6;
  width: 34px !important;
  height: 34px !important;
  aspect-ratio: 1;
  box-sizing: border-box;
  padding: 5px;
  border-radius: 50%;
  background: #100c13d9;
  object-fit: contain !important;
  filter: none;
  box-shadow: 0 4px 16px #0005;
  pointer-events: none;
}

.profile-card.free-size .subscription-tier-badge {
  bottom: 5px;
  left: 5px;
  width: 34px !important;
}

.account-tier-card {
  display: flex;
  align-items: center;
  gap: 20px;
}

.account-tier-card > img {
  width: 79.2px;
  height: 79.2px;
  flex: 0 0 79.2px;
  object-fit: contain;
  filter: drop-shadow(0 7px 12px #0008);
}

.account-tier-card h2,
.account-tier-card p { margin: 4px 0 0; }

/* La sombra se aplica solo cuando la vista confirma que la suscripción sigue activa. */
.subscription-payment.subscription-tier-silver,
.account-tier-card.subscription-tier-silver {
  border-color: #d7dde4;
  box-shadow: 0 0 14px #f5f7fa80, 0 0 32px #aeb8c680;
}

.subscription-payment.subscription-tier-golden,
.account-tier-card.subscription-tier-golden {
  border-color: #f4c64e;
  box-shadow: 0 0 14px #ffe6978c, 0 0 34px #c98d1680;
}

.subscription-payment.subscription-tier-platinum,
.account-tier-card.subscription-tier-platinum {
  border-color: #d8f4ff;
  box-shadow: 0 0 16px #effdff99, 0 0 36px #76c8df8a;
}

@media(max-width:560px) {
  .account-tier-card > img { width: 61.2px; height: 61.2px; flex-basis: 61.2px; }
}

/* Mosaico modular sin huecos internos. */
.profile-grid{--profile-cell:min(var(--profile-grid-base,145px),calc((100vw - 48px)/3));display:grid;grid-template-columns:repeat(auto-fill,var(--profile-cell));grid-auto-rows:var(--profile-cell);grid-auto-flow:dense;align-items:stretch;gap:0}.profile-grid .profile-card{position:relative;grid-column:span var(--tile-columns,1);grid-row:span var(--tile-rows,1);width:100%!important;height:100%;min-width:0;margin:0;overflow:hidden;outline:1px solid #100c13;outline-offset:-1px}.profile-grid .profile-card .profile-image{width:100%!important;height:100%!important;aspect-ratio:auto;border-radius:0}.profile-tile-details{position:absolute;top:42px;right:12px;left:12px;z-index:4;overflow:hidden;background:transparent;color:#fff;pointer-events:none}.profile-tile-details .card-facts{margin:0}.profile-tile-details .card-facts div{border:0;color:#fff;font-weight:900;text-shadow:0 1px 3px #000,0 0 7px #000}.profile-tile-details .card-facts dt{color:#fff;font-weight:900}.profile-tile-details .card-facts dd{color:#fff;font-weight:900}.profile-card.free-size .profile-tile-details{top:31px;right:7px;left:7px}.profile-card.free-size .profile-tile-details .card-facts div:nth-child(n+2){display:none}.profile-card.free-size .profile-tile-details .card-facts{font-size:.64rem}

.profile-card > p {
  margin-top: 12px;
}

.profile-card.basic .visible-name {
  top: 7px;
  left: 7px;
  max-width: calc(100% - 14px);
  padding: 5px 7px;
  font-size: .68rem;
}

.profile-card.basic.locked .visible-name {
  max-width: calc(100% - 48px);
}

/* Dimensiones editoriales de la rejilla: Básica pequeña y resto grandes. */
.profile-card.basic,
.member-catalog .profile-card.basic {
  width: 145px;
}

.profile-card.basic .profile-image,
.member-catalog .profile-card.basic .profile-image {
  width: 145px;
  height: 145px;
  aspect-ratio: 1;
}

.profile-card.golden,
.profile-card.weekly,
.profile-card.daily {
  width: 290px;
}

.profile-card.golden .profile-image,
.profile-card.weekly .profile-image,
.profile-card.daily .profile-image {
  width: 290px;
  height: 290px;
  aspect-ratio: 1;
}

.profile-card .visible-name,
.profile-card.basic .visible-name {
  left: 50%;
  max-width: calc(100% - 24px);
  text-align: center;
  transform: translateX(-50%);
}

.profile-card.free-size,
.member-catalog .profile-card.free-size {
  width: 145px;
}

.profile-card.free-size .profile-image {
  width: 145px;
  height: 145px;
  aspect-ratio: 1;
}

.profile-card.subscribed-size,
.member-catalog .profile-card.subscribed-size {
  width: 290px;
}

.profile-card.subscribed-size .profile-image {
  width: 290px;
  height: 290px;
  aspect-ratio: 1;
}

.profile-card.free-size .visible-name {
  top: 7px;
  font-size: .68rem;
}

.profile-card.locked .visible-name,
.profile-card.basic.locked .visible-name {
  max-width: calc(100% - 68px);
}

.profile-card .distance {
  right: auto;
  left: 50%;
  max-width: calc(100% - 24px);
  text-align: center;
  transform: translateX(-50%);
}

.profile-grid{width:100%;max-width:calc(var(--profile-grid-max-columns,8)*var(--profile-cell));grid-template-columns:repeat(auto-fill,var(--profile-cell))}
.profile-grid.vertical-compaction{grid-auto-flow:row}
.seo-profile-link{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}

/* Celdas rectangulares: el perfil gratuito usa el mínimo; cada suscripción
   aplica su propio multiplicador. Se conservan el ancho máximo y las clases
   de compactación existentes. */
.profile-grid{display:flex;max-width:calc(var(--profile-grid-max-columns,8)*var(--profile-grid-min-width,80px));flex-wrap:wrap;align-items:flex-start;gap:0;grid-template-columns:none;grid-auto-rows:auto}.profile-grid .profile-card,.profile-grid .profile-card.free-size,.profile-grid .profile-card.subscribed-size{--profile-size-multiplier:1;grid-column:auto;grid-row:auto;width:calc(var(--profile-grid-min-width,80px)*var(--profile-size-multiplier))!important;height:calc(var(--profile-grid-min-height,100px)*var(--profile-size-multiplier));max-width:100%;margin:0}.profile-grid .profile-card.tier-silver{--profile-size-multiplier:var(--profile-grid-silver-multiplier,1.5)}.profile-grid .profile-card.tier-golden{--profile-size-multiplier:var(--profile-grid-golden-multiplier,2)}.profile-grid .profile-card.tier-platinum{--profile-size-multiplier:var(--profile-grid-platinum-multiplier,2.5)}.profile-grid .profile-card .profile-image,.profile-grid .profile-card.free-size .profile-image,.profile-grid .profile-card.subscribed-size .profile-image{width:100%!important;height:100%!important;aspect-ratio:auto}.profile-grid.vertical-compaction{display:block;position:relative}.profile-grid.vertical-compaction .profile-card{position:absolute}
