  <turbo-stream action="append" target="for-you-posts"><template>
    <div class="content-post ">

  <!-- Header del post -->
  <div class="post-header">
      <img class="post-avatar" alt="mamasutra" width="200" height="200" loading="lazy" src="https://www.exotha.com/rails/active_storage/blobs/redirect/eyJfcmFpbHMiOnsiZGF0YSI6MSwicHVyIjoiYmxvYl9pZCJ9fQ==--5871e50b79f1e46d8a84a6c1a7153a25e462bd6f/Captura%20desde%202024-07-29%2021-06-54.png" />

    <div class="post-info">
      <a class="post-creator" href="/@mamasutra">mamasutra</a>
      <span class="post-time">alrededor de 2 meses ago</span>
    </div>

    <div class="post-menu" data-controller="dropdown share-link">
      <button class="post-menu-btn" data-action="click->dropdown#toggle" aria-label="Post options">
        <svg width="20" height="20" fill="currentColor" viewBox="0 0 24 24">
          <path d="M12 8c1.1 0 2-.9 2-2s-.9-2-2-2-2 .9-2 2 .9 2 2 2zm0 2c-1.1 0-2 .9-2 2s.9 2 2 2 2-.9 2-2-.9-2-2-2zm0 6c-1.1 0-2 .9-2 2s.9 2 2 2 2-.9 2-2-.9-2-2-2z"/>
        </svg>
      </button>
      <div class="post-menu-dropdown" data-dropdown-target="menu">
        <button class="post-menu-item"
                data-action="click->share-link#copy"
                data-url="https://www.exotha.com/@mamasutra/content/20">
          <svg width="16" height="16" fill="none" stroke="currentColor" stroke-width="2" viewBox="0 0 24 24">
            <path d="M10 13a5 5 0 0 0 7.54.54l3-3a5 5 0 0 0-7.07-7.07l-1.72 1.71"/>
            <path d="M14 11a5 5 0 0 0-7.54-.54l-3 3a5 5 0 0 0 7.07 7.07l1.71-1.71"/>
          </svg>
          Copiar link
        </button>
      </div>
    </div>
  </div>
  
  <!-- Media del post -->
  <div class="post-media">
    
<div class="content-card locked">

    <!-- Contenido Bloqueado con Blur Server-Side -->
    <div class="locked-content-wrapper">
      <div class="locked-backdrop">
        <div class="locked-blur-image"
               style="background-image: url(https://www.exotha.com/rails/active_storage/representations/redirect/eyJfcmFpbHMiOnsiZGF0YSI6MTI3LCJwdXIiOiJibG9iX2lkIn19--9791ec8e12d8243c567c3e3192fad7fd295fa21e/eyJfcmFpbHMiOnsiZGF0YSI6eyJmb3JtYXQiOiJqcGVnIiwicmVzaXplX3RvX2xpbWl0IjpbNjAwLDYwMF0sImdhdXNzYmx1ciI6OCwic2F2ZXIiOnsicXVhbGl0eSI6NTB9fSwicHVyIjoidmFyaWF0aW9uIn19--3e590ec4be28c7fe8859bb6d7b9eb78d969237a1/Yiny-982x1024.jpg);"
             ></div>
      </div>

        <div class="gallery-type-badge">
          <svg viewBox="0 0 24 24" fill="currentColor" width="14" height="14">
            <path d="M22 16V4c0-1.1-.9-2-2-2H8c-1.1 0-2 .9-2 2v12c0 1.1.9 2 2 2h12c1.1 0 2-.9 2-2zm-11-4l2.03 2.71L16 11l4 5H8l3-4zM2 6v14c0 1.1.9 2 2 2h14v-2H4V6H2z"/>
          </svg>
          <span class="gallery-badge-count">3</span>
          <span class="gallery-badge-details">
              3 fotos
          </span>
        </div>

      <div class="locked-cta">
        <!-- Lock Icon -->
        <div class="locked-icon-wrapper">
          <svg class="locked-icon-svg" viewBox="0 0 24 24" fill="#ff0074">
            <path d="M18 8h-1V6c0-2.76-2.24-5-5-5S7 3.24 7 6v2H6c-1.1 0-2 .9-2 2v10c0 1.1.9 2 2 2h12c1.1 0 2-.9 2-2V10c0-1.1-.9-2-2-2zm-6 9c-1.1 0-2-.9-2-2s.9-2 2-2 2 .9 2 2-.9 2-2 2zm3.1-9H8.9V6c0-1.71 1.39-3.1 3.1-3.1 1.71 0 3.1 1.39 3.1 3.1v2z"/>
          </svg>
        </div>

        <!-- Label -->
          <p class="locked-label">Desbloquea este contenido</p>
            <a class="locked-btn toggle" href="#enter-modal">
              <svg width="20" height="20" fill="currentColor" viewBox="0 0 24 24">
                <path d="M12 17c1.1 0 2-.9 2-2s-.9-2-2-2-2 .9-2 2 .9 2 2 2zm6-9h-1V6c0-2.76-2.24-5-5-5S7 3.24 7 6h1.9c0-1.71 1.39-3.1 3.1-3.1 1.71 0 3.1 1.39 3.1 3.1v2H6c-1.1 0-2 .9-2 2v10c0 1.1.9 2 2 2h12c1.1 0 2-.9 2-2V10c0-1.1-.9-2-2-2zm0 12H6V10h12v10z"/>
              </svg>
              <span>Unlock 70,00 $</span>
</a>      </div>
    </div>
</div>

<style>
/* ========================================
   CONTENT CARD - EXOTHA FEED
   Luxury minimal dark theme
   ======================================== */

/* Base content card */
.content-card {
  display: block;
  width: 100%;
}

/* ========== UNLOCKED CONTENT ========== */
.content-card > a {
  display: block;
  width: 100%;
}

.content-media {
  position: relative;
  width: 100%;
  line-height: 0;
  font-size: 0;
}

.content-image {
  display: block;
  width: 100%;
  height: auto;
  max-height: 600px;
  object-fit: contain;
}

video.content-image {
  background: #000;
}

/* Video play overlay */
.video-play-overlay {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  z-index: 10;
  opacity: 1;
  transition: opacity 0.3s ease;
  pointer-events: none;
}

.play-button {
  width: 56px;
  height: 56px;
  background: rgba(0, 0, 0, 0.45);
  backdrop-filter: blur(4px);
  -webkit-backdrop-filter: blur(4px);
  border: 2px solid rgba(255, 255, 255, 0.25);
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  box-shadow: 0 4px 16px rgba(0, 0, 0, 0.3);
  transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
}

.play-button svg {
  margin-left: 3px;
  opacity: 0.85;
  filter: drop-shadow(0 2px 4px rgba(0, 0, 0, 0.3));
  transition: opacity 0.3s ease;
}

.content-card:hover .play-button {
  width: 72px;
  height: 72px;
  background: rgba(255, 0, 116, 0.92);
  border: 3px solid rgba(255, 255, 255, 0.95);
  box-shadow: 0 8px 32px rgba(255, 0, 116, 0.5);
  transform: scale(1.08);
}

.content-card:hover .play-button svg {
  opacity: 1;
}

/* Gallery badge */
.gallery-type-badge {
  position: absolute;
  top: 12px;
  right: 12px;
  background: rgba(0, 0, 0, 0.85);
  backdrop-filter: blur(12px);
  -webkit-backdrop-filter: blur(12px);
  color: #fff;
  padding: 8px 14px;
  border-radius: 10px;
  display: flex;
  align-items: center;
  gap: 8px;
  font-size: 12px;
  font-weight: 600;
  border: 1px solid rgba(255, 255, 255, 0.12);
  z-index: 15;
}

.gallery-badge-count {
  background: linear-gradient(135deg, #ff0074 0%, #ff4081 100%);
  padding: 3px 10px;
  border-radius: 12px;
  font-size: 11px;
  font-weight: 700;
}

.gallery-badge-details {
  display: flex;
  align-items: center;
  gap: 4px;
  font-size: 11px;
  color: rgba(255, 255, 255, 0.75);
}

/* ========== LOCKED CONTENT ========== */
.content-card.locked {
  display: block;
  width: 100%;
}

.locked-content-wrapper {
  position: relative;
  width: 100%;
  aspect-ratio: 4 / 5;
  min-height: 280px;
  max-height: 400px;
  overflow: hidden;
  background: #0d0d0d;
  border-radius: 4px;
}

.locked-backdrop {
  position: absolute;
  inset: 0;
  overflow: hidden;
}

.locked-blur-image {
  position: absolute;
  inset: -10px;
  /* Premium gradient — visible fallback when blur image unavailable */
  background-color: #0c0c0c;
  background-image:
    radial-gradient(ellipse 180% 120% at 0% 100%, rgba(255, 0, 116, 0.35) 0%, transparent 50%),
    radial-gradient(ellipse 150% 100% at 100% 0%, rgba(255, 61, 154, 0.25) 0%, transparent 45%),
    radial-gradient(circle at 50% 40%, rgba(255, 0, 116, 0.15) 0%, transparent 55%),
    linear-gradient(165deg, #0c0c0c 0%, #1a0a14 30%, #250e1c 50%, #1a0a14 70%, #0c0c0c 100%);
  background-size: cover;
  background-position: center;
}

/* Refined overlay with subtle gradient */
.locked-backdrop::after {
  content: '';
  position: absolute;
  inset: 0;
  background:
    radial-gradient(ellipse 80% 60% at 50% 50%, transparent 0%, rgba(0, 0, 0, 0.25) 100%),
    linear-gradient(180deg, rgba(0, 0, 0, 0.05) 0%, rgba(0, 0, 0, 0.15) 100%);
  pointer-events: none;
}

/* Centered CTA - Refined layout */
.content-card.locked .locked-cta {
  position: absolute !important;
  inset: 0 !important;
  display: flex !important;
  flex-direction: column !important;
  align-items: center !important;
  justify-content: center !important;
  z-index: 10 !important;
  padding: 32px 24px !important;
  text-align: center !important;
  gap: 0 !important;
}

/* Lock icon wrapper */
.content-card.locked .locked-icon-wrapper {
  order: 1 !important;
  width: 64px !important;
  height: 64px !important;
  min-width: 64px !important;
  min-height: 64px !important;
  background: rgba(255, 0, 116, 0.12) !important;
  backdrop-filter: blur(8px) !important;
  -webkit-backdrop-filter: blur(8px) !important;
  border: 2px solid rgba(255, 0, 116, 0.4) !important;
  border-radius: 50% !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  margin-bottom: 20px !important;
  transition: all 0.3s ease !important;
  flex-shrink: 0 !important;
}

.content-card.locked .locked-content-wrapper:hover .locked-icon-wrapper {
  background: rgba(255, 0, 116, 0.2) !important;
  border-color: rgba(255, 0, 116, 0.6) !important;
  transform: scale(1.05) !important;
}

.content-card.locked .locked-icon-svg {
  width: 28px !important;
  height: 28px !important;
  fill: #ff0074 !important;
  flex-shrink: 0 !important;
}

/* Label text - Second */
.content-card.locked .locked-label {
  order: 2 !important;
  color: rgba(255, 255, 255, 0.95) !important;
  font-size: 16px !important;
  font-weight: 500 !important;
  margin: 0 0 20px 0 !important;
  padding: 0 !important;
  letter-spacing: 0.01em !important;
  line-height: 1.3 !important;
}

/* Action button - Third */
.content-card.locked .locked-btn {
  order: 3 !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  gap: 8px !important;
  padding: 12px 28px !important;
  border-radius: 100px !important;
  font-weight: 600 !important;
  font-size: 14px !important;
  text-decoration: none !important;
  transition: all 0.25s cubic-bezier(0.4, 0, 0.2, 1) !important;
  border: none !important;
  cursor: pointer !important;
  background: linear-gradient(135deg, #ff0074 0%, #ff2d8a 100%) !important;
  color: white !important;
  box-shadow: 0 4px 20px rgba(255, 0, 116, 0.35) !important;
  letter-spacing: 0.02em !important;
}

.content-card.locked .locked-btn:hover {
  transform: translateY(-2px) !important;
  box-shadow: 0 8px 28px rgba(255, 0, 116, 0.45) !important;
  background: linear-gradient(135deg, #ff1a82 0%, #ff4095 100%) !important;
}

.content-card.locked .locked-btn:active {
  transform: translateY(0) !important;
  box-shadow: 0 2px 12px rgba(255, 0, 116, 0.4) !important;
}

.content-card.locked .locked-btn svg {
  width: 16px !important;
  height: 16px !important;
  flex-shrink: 0 !important;
  opacity: 0.9 !important;
}

/* ========== RESPONSIVE ========== */
@media (max-width: 768px) {
  .content-card.locked .locked-content-wrapper {
    aspect-ratio: 1 / 1 !important;
    min-height: 240px !important;
    max-height: 340px !important;
  }

  .content-card.locked .locked-icon-wrapper {
    width: 56px !important;
    height: 56px !important;
    min-width: 56px !important;
    min-height: 56px !important;
    margin-bottom: 16px !important;
  }

  .content-card.locked .locked-icon-svg {
    width: 24px !important;
    height: 24px !important;
  }

  .content-card.locked .locked-label {
    font-size: 14px !important;
    margin-bottom: 16px !important;
  }

  .content-card.locked .locked-btn {
    padding: 11px 24px !important;
    font-size: 13px !important;
  }

  .play-button {
    width: 48px;
    height: 48px;
  }

  .content-card:hover .play-button {
    width: 64px;
    height: 64px;
  }
}

@media (max-width: 480px) {
  .content-card.locked .locked-content-wrapper {
    min-height: 200px !important;
    max-height: 300px !important;
  }

  .content-card.locked .locked-cta {
    padding: 24px 20px !important;
  }

  .content-card.locked .locked-icon-wrapper {
    width: 50px !important;
    height: 50px !important;
    min-width: 50px !important;
    min-height: 50px !important;
    margin-bottom: 14px !important;
  }

  .content-card.locked .locked-icon-svg {
    width: 22px !important;
    height: 22px !important;
  }

  .content-card.locked .locked-label {
    font-size: 13px !important;
    margin-bottom: 14px !important;
  }

  .content-card.locked .locked-btn {
    padding: 10px 22px !important;
    font-size: 12px !important;
    gap: 6px !important;
  }

  .content-card.locked .locked-btn svg {
    width: 14px !important;
    height: 14px !important;
  }
}
</style>

  </div>
  
  <!-- Footer del post -->
  <div class="post-footer">
      <p class="post-description">galeria hot</p>
    
    <div class="post-actions">


        <a class="action-btn toggle" data-turbo="false" aria-label="Inicia sesión para dar me gusta" href="#enter-modal">
          <svg fill="currentColor" viewBox="0 0 24 24"><path d="M12 21.35l-1.45-1.32C5.4 15.36 2 12.28 2 8.5 2 5.42 4.42 3 7.5 3c1.74 0 3.41.81 4.5 2.09C13.09 3.81 14.76 3 16.5 3 19.58 3 22 5.42 22 8.5c0 3.78-3.4 6.86-8.55 11.54L12 21.35z"/></svg>
          <span>4</span>
</a>
        <a class="action-btn toggle" data-turbo="false" aria-label="Inicia sesión para comentar" href="#enter-modal">
          <svg fill="currentColor" viewBox="0 0 24 24"><path d="M21.99 4c0-1.1-.89-2-1.99-2H4c-1.1 0-2 .9-2 2v12c0 1.1.9 2 2 2h14l4 4-.01-18zM18 14H6v-2h12v2zm0-3H6V9h12v2zm0-3H6V6h12v2z"/></svg>
          <span>2</span>
</a>
        <a class="action-btn toggle" data-turbo="false" aria-label="Inicia sesión para compartir" href="#enter-modal">
          <svg fill="currentColor" viewBox="0 0 24 24"><path d="M18 16.08c-.76 0-1.44.3-1.96.77L8.91 12.7c.05-.23.09-.46.09-.7s-.04-.47-.09-.7l7.05-4.11c.54.5 1.25.81 2.04.81 1.66 0 3-1.34 3-3s-1.34-3-3-3-3 1.34-3 3c0 .24.04.47.09.7L8.04 9.81C7.5 9.31 6.79 9 6 9c-1.66 0-3 1.34-3 3s1.34 3 3 3c.79 0 1.5-.31 2.04-.81l7.12 4.16c-.05.21-.08.43-.08.65 0 1.61 1.31 2.92 2.92 2.92 1.61 0 2.92-1.31 2.92-2.92s-1.31-2.92-2.92-2.92z"/></svg>
</a>      
      <div style="flex: 1;"></div>

        <span class="content-access-badge content-access-badge--price">70,00 $</span>
    </div>
  </div>
</div>
</template></turbo-stream>  <turbo-stream action="append" target="for-you-posts"><template>
    <div class="content-post ">

  <!-- Header del post -->
  <div class="post-header">
      <img class="post-avatar" alt="mamasutra" width="200" height="200" loading="lazy" src="https://www.exotha.com/rails/active_storage/blobs/redirect/eyJfcmFpbHMiOnsiZGF0YSI6MSwicHVyIjoiYmxvYl9pZCJ9fQ==--5871e50b79f1e46d8a84a6c1a7153a25e462bd6f/Captura%20desde%202024-07-29%2021-06-54.png" />

    <div class="post-info">
      <a class="post-creator" href="/@mamasutra">mamasutra</a>
      <span class="post-time">2 meses ago</span>
    </div>

    <div class="post-menu" data-controller="dropdown share-link">
      <button class="post-menu-btn" data-action="click->dropdown#toggle" aria-label="Post options">
        <svg width="20" height="20" fill="currentColor" viewBox="0 0 24 24">
          <path d="M12 8c1.1 0 2-.9 2-2s-.9-2-2-2-2 .9-2 2 .9 2 2 2zm0 2c-1.1 0-2 .9-2 2s.9 2 2 2 2-.9 2-2-.9-2-2-2zm0 6c-1.1 0-2 .9-2 2s.9 2 2 2 2-.9 2-2-.9-2-2-2z"/>
        </svg>
      </button>
      <div class="post-menu-dropdown" data-dropdown-target="menu">
        <button class="post-menu-item"
                data-action="click->share-link#copy"
                data-url="https://www.exotha.com/@mamasutra/content/8">
          <svg width="16" height="16" fill="none" stroke="currentColor" stroke-width="2" viewBox="0 0 24 24">
            <path d="M10 13a5 5 0 0 0 7.54.54l3-3a5 5 0 0 0-7.07-7.07l-1.72 1.71"/>
            <path d="M14 11a5 5 0 0 0-7.54-.54l-3 3a5 5 0 0 0 7.07 7.07l1.71-1.71"/>
          </svg>
          Copiar link
        </button>
      </div>
    </div>
  </div>
  
  <!-- Media del post -->
  <div class="post-media">
    
<div class="content-card locked">

    <!-- Contenido Bloqueado con Blur Server-Side -->
    <div class="locked-content-wrapper">
      <div class="locked-backdrop">
        <div class="locked-blur-image"
></div>
      </div>

        <div class="gallery-type-badge">
          <svg viewBox="0 0 24 24" fill="currentColor" width="14" height="14">
            <path d="M22 16V4c0-1.1-.9-2-2-2H8c-1.1 0-2 .9-2 2v12c0 1.1.9 2 2 2h12c1.1 0 2-.9 2-2zm-11-4l2.03 2.71L16 11l4 5H8l3-4zM2 6v14c0 1.1.9 2 2 2h14v-2H4V6H2z"/>
          </svg>
          <span class="gallery-badge-count">4</span>
          <span class="gallery-badge-details">
              3 <svg viewBox="0 0 24 24" fill="currentColor" width="12" height="12"><path d="M21 19V5c0-1.1-.9-2-2-2H5c-1.1 0-2 .9-2 2v14c0 1.1.9 2 2 2h14c1.1 0 2-.9 2-2zM8.5 13.5l2.5 3.01L14.5 12l4.5 6H5l3.5-4.5z"/></svg>
              · 1 <svg viewBox="0 0 24 24" fill="currentColor" width="12" height="12"><path d="M8 5v14l11-7z"/></svg>
          </span>
        </div>

      <div class="locked-cta">
        <!-- Lock Icon -->
        <div class="locked-icon-wrapper">
          <svg class="locked-icon-svg" viewBox="0 0 24 24" fill="#ff0074">
            <path d="M18 8h-1V6c0-2.76-2.24-5-5-5S7 3.24 7 6v2H6c-1.1 0-2 .9-2 2v10c0 1.1.9 2 2 2h12c1.1 0 2-.9 2-2V10c0-1.1-.9-2-2-2zm-6 9c-1.1 0-2-.9-2-2s.9-2 2-2 2 .9 2 2-.9 2-2 2zm3.1-9H8.9V6c0-1.71 1.39-3.1 3.1-3.1 1.71 0 3.1 1.39 3.1 3.1v2z"/>
          </svg>
        </div>

        <!-- Label -->
          <p class="locked-label">Desbloquea este contenido</p>
            <a class="locked-btn toggle" href="#enter-modal">
              <svg width="20" height="20" fill="currentColor" viewBox="0 0 24 24">
                <path d="M12 17c1.1 0 2-.9 2-2s-.9-2-2-2-2 .9-2 2 .9 2 2 2zm6-9h-1V6c0-2.76-2.24-5-5-5S7 3.24 7 6h1.9c0-1.71 1.39-3.1 3.1-3.1 1.71 0 3.1 1.39 3.1 3.1v2H6c-1.1 0-2 .9-2 2v10c0 1.1.9 2 2 2h12c1.1 0 2-.9 2-2V10c0-1.1-.9-2-2-2zm0 12H6V10h12v10z"/>
              </svg>
              <span>Unlock 1.000,00 $</span>
</a>      </div>
    </div>
</div>

<style>
/* ========================================
   CONTENT CARD - EXOTHA FEED
   Luxury minimal dark theme
   ======================================== */

/* Base content card */
.content-card {
  display: block;
  width: 100%;
}

/* ========== UNLOCKED CONTENT ========== */
.content-card > a {
  display: block;
  width: 100%;
}

.content-media {
  position: relative;
  width: 100%;
  line-height: 0;
  font-size: 0;
}

.content-image {
  display: block;
  width: 100%;
  height: auto;
  max-height: 600px;
  object-fit: contain;
}

video.content-image {
  background: #000;
}

/* Video play overlay */
.video-play-overlay {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  z-index: 10;
  opacity: 1;
  transition: opacity 0.3s ease;
  pointer-events: none;
}

.play-button {
  width: 56px;
  height: 56px;
  background: rgba(0, 0, 0, 0.45);
  backdrop-filter: blur(4px);
  -webkit-backdrop-filter: blur(4px);
  border: 2px solid rgba(255, 255, 255, 0.25);
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  box-shadow: 0 4px 16px rgba(0, 0, 0, 0.3);
  transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
}

.play-button svg {
  margin-left: 3px;
  opacity: 0.85;
  filter: drop-shadow(0 2px 4px rgba(0, 0, 0, 0.3));
  transition: opacity 0.3s ease;
}

.content-card:hover .play-button {
  width: 72px;
  height: 72px;
  background: rgba(255, 0, 116, 0.92);
  border: 3px solid rgba(255, 255, 255, 0.95);
  box-shadow: 0 8px 32px rgba(255, 0, 116, 0.5);
  transform: scale(1.08);
}

.content-card:hover .play-button svg {
  opacity: 1;
}

/* Gallery badge */
.gallery-type-badge {
  position: absolute;
  top: 12px;
  right: 12px;
  background: rgba(0, 0, 0, 0.85);
  backdrop-filter: blur(12px);
  -webkit-backdrop-filter: blur(12px);
  color: #fff;
  padding: 8px 14px;
  border-radius: 10px;
  display: flex;
  align-items: center;
  gap: 8px;
  font-size: 12px;
  font-weight: 600;
  border: 1px solid rgba(255, 255, 255, 0.12);
  z-index: 15;
}

.gallery-badge-count {
  background: linear-gradient(135deg, #ff0074 0%, #ff4081 100%);
  padding: 3px 10px;
  border-radius: 12px;
  font-size: 11px;
  font-weight: 700;
}

.gallery-badge-details {
  display: flex;
  align-items: center;
  gap: 4px;
  font-size: 11px;
  color: rgba(255, 255, 255, 0.75);
}

/* ========== LOCKED CONTENT ========== */
.content-card.locked {
  display: block;
  width: 100%;
}

.locked-content-wrapper {
  position: relative;
  width: 100%;
  aspect-ratio: 4 / 5;
  min-height: 280px;
  max-height: 400px;
  overflow: hidden;
  background: #0d0d0d;
  border-radius: 4px;
}

.locked-backdrop {
  position: absolute;
  inset: 0;
  overflow: hidden;
}

.locked-blur-image {
  position: absolute;
  inset: -10px;
  /* Premium gradient — visible fallback when blur image unavailable */
  background-color: #0c0c0c;
  background-image:
    radial-gradient(ellipse 180% 120% at 0% 100%, rgba(255, 0, 116, 0.35) 0%, transparent 50%),
    radial-gradient(ellipse 150% 100% at 100% 0%, rgba(255, 61, 154, 0.25) 0%, transparent 45%),
    radial-gradient(circle at 50% 40%, rgba(255, 0, 116, 0.15) 0%, transparent 55%),
    linear-gradient(165deg, #0c0c0c 0%, #1a0a14 30%, #250e1c 50%, #1a0a14 70%, #0c0c0c 100%);
  background-size: cover;
  background-position: center;
}

/* Refined overlay with subtle gradient */
.locked-backdrop::after {
  content: '';
  position: absolute;
  inset: 0;
  background:
    radial-gradient(ellipse 80% 60% at 50% 50%, transparent 0%, rgba(0, 0, 0, 0.25) 100%),
    linear-gradient(180deg, rgba(0, 0, 0, 0.05) 0%, rgba(0, 0, 0, 0.15) 100%);
  pointer-events: none;
}

/* Centered CTA - Refined layout */
.content-card.locked .locked-cta {
  position: absolute !important;
  inset: 0 !important;
  display: flex !important;
  flex-direction: column !important;
  align-items: center !important;
  justify-content: center !important;
  z-index: 10 !important;
  padding: 32px 24px !important;
  text-align: center !important;
  gap: 0 !important;
}

/* Lock icon wrapper */
.content-card.locked .locked-icon-wrapper {
  order: 1 !important;
  width: 64px !important;
  height: 64px !important;
  min-width: 64px !important;
  min-height: 64px !important;
  background: rgba(255, 0, 116, 0.12) !important;
  backdrop-filter: blur(8px) !important;
  -webkit-backdrop-filter: blur(8px) !important;
  border: 2px solid rgba(255, 0, 116, 0.4) !important;
  border-radius: 50% !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  margin-bottom: 20px !important;
  transition: all 0.3s ease !important;
  flex-shrink: 0 !important;
}

.content-card.locked .locked-content-wrapper:hover .locked-icon-wrapper {
  background: rgba(255, 0, 116, 0.2) !important;
  border-color: rgba(255, 0, 116, 0.6) !important;
  transform: scale(1.05) !important;
}

.content-card.locked .locked-icon-svg {
  width: 28px !important;
  height: 28px !important;
  fill: #ff0074 !important;
  flex-shrink: 0 !important;
}

/* Label text - Second */
.content-card.locked .locked-label {
  order: 2 !important;
  color: rgba(255, 255, 255, 0.95) !important;
  font-size: 16px !important;
  font-weight: 500 !important;
  margin: 0 0 20px 0 !important;
  padding: 0 !important;
  letter-spacing: 0.01em !important;
  line-height: 1.3 !important;
}

/* Action button - Third */
.content-card.locked .locked-btn {
  order: 3 !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  gap: 8px !important;
  padding: 12px 28px !important;
  border-radius: 100px !important;
  font-weight: 600 !important;
  font-size: 14px !important;
  text-decoration: none !important;
  transition: all 0.25s cubic-bezier(0.4, 0, 0.2, 1) !important;
  border: none !important;
  cursor: pointer !important;
  background: linear-gradient(135deg, #ff0074 0%, #ff2d8a 100%) !important;
  color: white !important;
  box-shadow: 0 4px 20px rgba(255, 0, 116, 0.35) !important;
  letter-spacing: 0.02em !important;
}

.content-card.locked .locked-btn:hover {
  transform: translateY(-2px) !important;
  box-shadow: 0 8px 28px rgba(255, 0, 116, 0.45) !important;
  background: linear-gradient(135deg, #ff1a82 0%, #ff4095 100%) !important;
}

.content-card.locked .locked-btn:active {
  transform: translateY(0) !important;
  box-shadow: 0 2px 12px rgba(255, 0, 116, 0.4) !important;
}

.content-card.locked .locked-btn svg {
  width: 16px !important;
  height: 16px !important;
  flex-shrink: 0 !important;
  opacity: 0.9 !important;
}

/* ========== RESPONSIVE ========== */
@media (max-width: 768px) {
  .content-card.locked .locked-content-wrapper {
    aspect-ratio: 1 / 1 !important;
    min-height: 240px !important;
    max-height: 340px !important;
  }

  .content-card.locked .locked-icon-wrapper {
    width: 56px !important;
    height: 56px !important;
    min-width: 56px !important;
    min-height: 56px !important;
    margin-bottom: 16px !important;
  }

  .content-card.locked .locked-icon-svg {
    width: 24px !important;
    height: 24px !important;
  }

  .content-card.locked .locked-label {
    font-size: 14px !important;
    margin-bottom: 16px !important;
  }

  .content-card.locked .locked-btn {
    padding: 11px 24px !important;
    font-size: 13px !important;
  }

  .play-button {
    width: 48px;
    height: 48px;
  }

  .content-card:hover .play-button {
    width: 64px;
    height: 64px;
  }
}

@media (max-width: 480px) {
  .content-card.locked .locked-content-wrapper {
    min-height: 200px !important;
    max-height: 300px !important;
  }

  .content-card.locked .locked-cta {
    padding: 24px 20px !important;
  }

  .content-card.locked .locked-icon-wrapper {
    width: 50px !important;
    height: 50px !important;
    min-width: 50px !important;
    min-height: 50px !important;
    margin-bottom: 14px !important;
  }

  .content-card.locked .locked-icon-svg {
    width: 22px !important;
    height: 22px !important;
  }

  .content-card.locked .locked-label {
    font-size: 13px !important;
    margin-bottom: 14px !important;
  }

  .content-card.locked .locked-btn {
    padding: 10px 22px !important;
    font-size: 12px !important;
    gap: 6px !important;
  }

  .content-card.locked .locked-btn svg {
    width: 14px !important;
    height: 14px !important;
  }
}
</style>

  </div>
  
  <!-- Footer del post -->
  <div class="post-footer">
      <p class="post-description">Test galeria</p>
    
    <div class="post-actions">


        <a class="action-btn toggle" data-turbo="false" aria-label="Inicia sesión para dar me gusta" href="#enter-modal">
          <svg fill="currentColor" viewBox="0 0 24 24"><path d="M12 21.35l-1.45-1.32C5.4 15.36 2 12.28 2 8.5 2 5.42 4.42 3 7.5 3c1.74 0 3.41.81 4.5 2.09C13.09 3.81 14.76 3 16.5 3 19.58 3 22 5.42 22 8.5c0 3.78-3.4 6.86-8.55 11.54L12 21.35z"/></svg>
          <span>2</span>
</a>
        <a class="action-btn toggle" data-turbo="false" aria-label="Inicia sesión para comentar" href="#enter-modal">
          <svg fill="currentColor" viewBox="0 0 24 24"><path d="M21.99 4c0-1.1-.89-2-1.99-2H4c-1.1 0-2 .9-2 2v12c0 1.1.9 2 2 2h14l4 4-.01-18zM18 14H6v-2h12v2zm0-3H6V9h12v2zm0-3H6V6h12v2z"/></svg>
          <span>1</span>
</a>
        <a class="action-btn toggle" data-turbo="false" aria-label="Inicia sesión para compartir" href="#enter-modal">
          <svg fill="currentColor" viewBox="0 0 24 24"><path d="M18 16.08c-.76 0-1.44.3-1.96.77L8.91 12.7c.05-.23.09-.46.09-.7s-.04-.47-.09-.7l7.05-4.11c.54.5 1.25.81 2.04.81 1.66 0 3-1.34 3-3s-1.34-3-3-3-3 1.34-3 3c0 .24.04.47.09.7L8.04 9.81C7.5 9.31 6.79 9 6 9c-1.66 0-3 1.34-3 3s1.34 3 3 3c.79 0 1.5-.31 2.04-.81l7.12 4.16c-.05.21-.08.43-.08.65 0 1.61 1.31 2.92 2.92 2.92 1.61 0 2.92-1.31 2.92-2.92s-1.31-2.92-2.92-2.92z"/></svg>
</a>      
      <div style="flex: 1;"></div>

        <span class="content-access-badge content-access-badge--price">1.000,00 $</span>
    </div>
  </div>
</div>
</template></turbo-stream>  <turbo-stream action="append" target="for-you-posts"><template>
    <div class="content-post ">

  <!-- Header del post -->
  <div class="post-header">
      <img class="post-avatar" alt="mamasutra" width="200" height="200" loading="lazy" src="https://www.exotha.com/rails/active_storage/blobs/redirect/eyJfcmFpbHMiOnsiZGF0YSI6MSwicHVyIjoiYmxvYl9pZCJ9fQ==--5871e50b79f1e46d8a84a6c1a7153a25e462bd6f/Captura%20desde%202024-07-29%2021-06-54.png" />

    <div class="post-info">
      <a class="post-creator" href="/@mamasutra">mamasutra</a>
      <span class="post-time">2 meses ago</span>
    </div>

    <div class="post-menu" data-controller="dropdown share-link">
      <button class="post-menu-btn" data-action="click->dropdown#toggle" aria-label="Post options">
        <svg width="20" height="20" fill="currentColor" viewBox="0 0 24 24">
          <path d="M12 8c1.1 0 2-.9 2-2s-.9-2-2-2-2 .9-2 2 .9 2 2 2zm0 2c-1.1 0-2 .9-2 2s.9 2 2 2 2-.9 2-2-.9-2-2-2zm0 6c-1.1 0-2 .9-2 2s.9 2 2 2 2-.9 2-2-.9-2-2-2z"/>
        </svg>
      </button>
      <div class="post-menu-dropdown" data-dropdown-target="menu">
        <button class="post-menu-item"
                data-action="click->share-link#copy"
                data-url="https://www.exotha.com/@mamasutra/content/4">
          <svg width="16" height="16" fill="none" stroke="currentColor" stroke-width="2" viewBox="0 0 24 24">
            <path d="M10 13a5 5 0 0 0 7.54.54l3-3a5 5 0 0 0-7.07-7.07l-1.72 1.71"/>
            <path d="M14 11a5 5 0 0 0-7.54-.54l-3 3a5 5 0 0 0 7.07 7.07l1.71-1.71"/>
          </svg>
          Copiar link
        </button>
      </div>
    </div>
  </div>
  
  <!-- Media del post -->
  <div class="post-media">
    
<div class="content-card locked">

    <!-- Contenido Bloqueado con Blur Server-Side -->
    <div class="locked-content-wrapper">
      <div class="locked-backdrop">
        <div class="locked-blur-image"
></div>
      </div>


      <div class="locked-cta">
        <!-- Lock Icon -->
        <div class="locked-icon-wrapper">
          <svg class="locked-icon-svg" viewBox="0 0 24 24" fill="#ff0074">
            <path d="M18 8h-1V6c0-2.76-2.24-5-5-5S7 3.24 7 6v2H6c-1.1 0-2 .9-2 2v10c0 1.1.9 2 2 2h12c1.1 0 2-.9 2-2V10c0-1.1-.9-2-2-2zm-6 9c-1.1 0-2-.9-2-2s.9-2 2-2 2 .9 2 2-.9 2-2 2zm3.1-9H8.9V6c0-1.71 1.39-3.1 3.1-3.1 1.71 0 3.1 1.39 3.1 3.1v2z"/>
          </svg>
        </div>

        <!-- Label -->
          <p class="locked-label">Suscríbete para desbloquear</p>
            <a class="locked-btn toggle" href="#enter-modal">
              <svg width="20" height="20" fill="currentColor" viewBox="0 0 24 24">
                <path d="M12 17.27L18.18 21l-1.64-7.03L22 9.24l-7.19-.61L12 2 9.19 8.63 2 9.24l5.46 4.73L5.82 21z"/>
              </svg>
              <span>Inicia sesión para suscribirte</span>
</a>      </div>
    </div>
</div>

<style>
/* ========================================
   CONTENT CARD - EXOTHA FEED
   Luxury minimal dark theme
   ======================================== */

/* Base content card */
.content-card {
  display: block;
  width: 100%;
}

/* ========== UNLOCKED CONTENT ========== */
.content-card > a {
  display: block;
  width: 100%;
}

.content-media {
  position: relative;
  width: 100%;
  line-height: 0;
  font-size: 0;
}

.content-image {
  display: block;
  width: 100%;
  height: auto;
  max-height: 600px;
  object-fit: contain;
}

video.content-image {
  background: #000;
}

/* Video play overlay */
.video-play-overlay {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  z-index: 10;
  opacity: 1;
  transition: opacity 0.3s ease;
  pointer-events: none;
}

.play-button {
  width: 56px;
  height: 56px;
  background: rgba(0, 0, 0, 0.45);
  backdrop-filter: blur(4px);
  -webkit-backdrop-filter: blur(4px);
  border: 2px solid rgba(255, 255, 255, 0.25);
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  box-shadow: 0 4px 16px rgba(0, 0, 0, 0.3);
  transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
}

.play-button svg {
  margin-left: 3px;
  opacity: 0.85;
  filter: drop-shadow(0 2px 4px rgba(0, 0, 0, 0.3));
  transition: opacity 0.3s ease;
}

.content-card:hover .play-button {
  width: 72px;
  height: 72px;
  background: rgba(255, 0, 116, 0.92);
  border: 3px solid rgba(255, 255, 255, 0.95);
  box-shadow: 0 8px 32px rgba(255, 0, 116, 0.5);
  transform: scale(1.08);
}

.content-card:hover .play-button svg {
  opacity: 1;
}

/* Gallery badge */
.gallery-type-badge {
  position: absolute;
  top: 12px;
  right: 12px;
  background: rgba(0, 0, 0, 0.85);
  backdrop-filter: blur(12px);
  -webkit-backdrop-filter: blur(12px);
  color: #fff;
  padding: 8px 14px;
  border-radius: 10px;
  display: flex;
  align-items: center;
  gap: 8px;
  font-size: 12px;
  font-weight: 600;
  border: 1px solid rgba(255, 255, 255, 0.12);
  z-index: 15;
}

.gallery-badge-count {
  background: linear-gradient(135deg, #ff0074 0%, #ff4081 100%);
  padding: 3px 10px;
  border-radius: 12px;
  font-size: 11px;
  font-weight: 700;
}

.gallery-badge-details {
  display: flex;
  align-items: center;
  gap: 4px;
  font-size: 11px;
  color: rgba(255, 255, 255, 0.75);
}

/* ========== LOCKED CONTENT ========== */
.content-card.locked {
  display: block;
  width: 100%;
}

.locked-content-wrapper {
  position: relative;
  width: 100%;
  aspect-ratio: 4 / 5;
  min-height: 280px;
  max-height: 400px;
  overflow: hidden;
  background: #0d0d0d;
  border-radius: 4px;
}

.locked-backdrop {
  position: absolute;
  inset: 0;
  overflow: hidden;
}

.locked-blur-image {
  position: absolute;
  inset: -10px;
  /* Premium gradient — visible fallback when blur image unavailable */
  background-color: #0c0c0c;
  background-image:
    radial-gradient(ellipse 180% 120% at 0% 100%, rgba(255, 0, 116, 0.35) 0%, transparent 50%),
    radial-gradient(ellipse 150% 100% at 100% 0%, rgba(255, 61, 154, 0.25) 0%, transparent 45%),
    radial-gradient(circle at 50% 40%, rgba(255, 0, 116, 0.15) 0%, transparent 55%),
    linear-gradient(165deg, #0c0c0c 0%, #1a0a14 30%, #250e1c 50%, #1a0a14 70%, #0c0c0c 100%);
  background-size: cover;
  background-position: center;
}

/* Refined overlay with subtle gradient */
.locked-backdrop::after {
  content: '';
  position: absolute;
  inset: 0;
  background:
    radial-gradient(ellipse 80% 60% at 50% 50%, transparent 0%, rgba(0, 0, 0, 0.25) 100%),
    linear-gradient(180deg, rgba(0, 0, 0, 0.05) 0%, rgba(0, 0, 0, 0.15) 100%);
  pointer-events: none;
}

/* Centered CTA - Refined layout */
.content-card.locked .locked-cta {
  position: absolute !important;
  inset: 0 !important;
  display: flex !important;
  flex-direction: column !important;
  align-items: center !important;
  justify-content: center !important;
  z-index: 10 !important;
  padding: 32px 24px !important;
  text-align: center !important;
  gap: 0 !important;
}

/* Lock icon wrapper */
.content-card.locked .locked-icon-wrapper {
  order: 1 !important;
  width: 64px !important;
  height: 64px !important;
  min-width: 64px !important;
  min-height: 64px !important;
  background: rgba(255, 0, 116, 0.12) !important;
  backdrop-filter: blur(8px) !important;
  -webkit-backdrop-filter: blur(8px) !important;
  border: 2px solid rgba(255, 0, 116, 0.4) !important;
  border-radius: 50% !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  margin-bottom: 20px !important;
  transition: all 0.3s ease !important;
  flex-shrink: 0 !important;
}

.content-card.locked .locked-content-wrapper:hover .locked-icon-wrapper {
  background: rgba(255, 0, 116, 0.2) !important;
  border-color: rgba(255, 0, 116, 0.6) !important;
  transform: scale(1.05) !important;
}

.content-card.locked .locked-icon-svg {
  width: 28px !important;
  height: 28px !important;
  fill: #ff0074 !important;
  flex-shrink: 0 !important;
}

/* Label text - Second */
.content-card.locked .locked-label {
  order: 2 !important;
  color: rgba(255, 255, 255, 0.95) !important;
  font-size: 16px !important;
  font-weight: 500 !important;
  margin: 0 0 20px 0 !important;
  padding: 0 !important;
  letter-spacing: 0.01em !important;
  line-height: 1.3 !important;
}

/* Action button - Third */
.content-card.locked .locked-btn {
  order: 3 !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  gap: 8px !important;
  padding: 12px 28px !important;
  border-radius: 100px !important;
  font-weight: 600 !important;
  font-size: 14px !important;
  text-decoration: none !important;
  transition: all 0.25s cubic-bezier(0.4, 0, 0.2, 1) !important;
  border: none !important;
  cursor: pointer !important;
  background: linear-gradient(135deg, #ff0074 0%, #ff2d8a 100%) !important;
  color: white !important;
  box-shadow: 0 4px 20px rgba(255, 0, 116, 0.35) !important;
  letter-spacing: 0.02em !important;
}

.content-card.locked .locked-btn:hover {
  transform: translateY(-2px) !important;
  box-shadow: 0 8px 28px rgba(255, 0, 116, 0.45) !important;
  background: linear-gradient(135deg, #ff1a82 0%, #ff4095 100%) !important;
}

.content-card.locked .locked-btn:active {
  transform: translateY(0) !important;
  box-shadow: 0 2px 12px rgba(255, 0, 116, 0.4) !important;
}

.content-card.locked .locked-btn svg {
  width: 16px !important;
  height: 16px !important;
  flex-shrink: 0 !important;
  opacity: 0.9 !important;
}

/* ========== RESPONSIVE ========== */
@media (max-width: 768px) {
  .content-card.locked .locked-content-wrapper {
    aspect-ratio: 1 / 1 !important;
    min-height: 240px !important;
    max-height: 340px !important;
  }

  .content-card.locked .locked-icon-wrapper {
    width: 56px !important;
    height: 56px !important;
    min-width: 56px !important;
    min-height: 56px !important;
    margin-bottom: 16px !important;
  }

  .content-card.locked .locked-icon-svg {
    width: 24px !important;
    height: 24px !important;
  }

  .content-card.locked .locked-label {
    font-size: 14px !important;
    margin-bottom: 16px !important;
  }

  .content-card.locked .locked-btn {
    padding: 11px 24px !important;
    font-size: 13px !important;
  }

  .play-button {
    width: 48px;
    height: 48px;
  }

  .content-card:hover .play-button {
    width: 64px;
    height: 64px;
  }
}

@media (max-width: 480px) {
  .content-card.locked .locked-content-wrapper {
    min-height: 200px !important;
    max-height: 300px !important;
  }

  .content-card.locked .locked-cta {
    padding: 24px 20px !important;
  }

  .content-card.locked .locked-icon-wrapper {
    width: 50px !important;
    height: 50px !important;
    min-width: 50px !important;
    min-height: 50px !important;
    margin-bottom: 14px !important;
  }

  .content-card.locked .locked-icon-svg {
    width: 22px !important;
    height: 22px !important;
  }

  .content-card.locked .locked-label {
    font-size: 13px !important;
    margin-bottom: 14px !important;
  }

  .content-card.locked .locked-btn {
    padding: 10px 22px !important;
    font-size: 12px !important;
    gap: 6px !important;
  }

  .content-card.locked .locked-btn svg {
    width: 14px !important;
    height: 14px !important;
  }
}
</style>

  </div>
  
  <!-- Footer del post -->
  <div class="post-footer">
      <p class="post-description">Test mañana</p>
    
    <div class="post-actions">


        <a class="action-btn toggle" data-turbo="false" aria-label="Inicia sesión para dar me gusta" href="#enter-modal">
          <svg fill="currentColor" viewBox="0 0 24 24"><path d="M12 21.35l-1.45-1.32C5.4 15.36 2 12.28 2 8.5 2 5.42 4.42 3 7.5 3c1.74 0 3.41.81 4.5 2.09C13.09 3.81 14.76 3 16.5 3 19.58 3 22 5.42 22 8.5c0 3.78-3.4 6.86-8.55 11.54L12 21.35z"/></svg>
          <span>2</span>
</a>
        <a class="action-btn toggle" data-turbo="false" aria-label="Inicia sesión para comentar" href="#enter-modal">
          <svg fill="currentColor" viewBox="0 0 24 24"><path d="M21.99 4c0-1.1-.89-2-1.99-2H4c-1.1 0-2 .9-2 2v12c0 1.1.9 2 2 2h14l4 4-.01-18zM18 14H6v-2h12v2zm0-3H6V9h12v2zm0-3H6V6h12v2z"/></svg>
          <span>3</span>
</a>
        <a class="action-btn toggle" data-turbo="false" aria-label="Inicia sesión para compartir" href="#enter-modal">
          <svg fill="currentColor" viewBox="0 0 24 24"><path d="M18 16.08c-.76 0-1.44.3-1.96.77L8.91 12.7c.05-.23.09-.46.09-.7s-.04-.47-.09-.7l7.05-4.11c.54.5 1.25.81 2.04.81 1.66 0 3-1.34 3-3s-1.34-3-3-3-3 1.34-3 3c0 .24.04.47.09.7L8.04 9.81C7.5 9.31 6.79 9 6 9c-1.66 0-3 1.34-3 3s1.34 3 3 3c.79 0 1.5-.31 2.04-.81l7.12 4.16c-.05.21-.08.43-.08.65 0 1.61 1.31 2.92 2.92 2.92 1.61 0 2.92-1.31 2.92-2.92s-1.31-2.92-2.92-2.92z"/></svg>
</a>      
      <div style="flex: 1;"></div>

        <span class="content-access-badge content-access-badge--locked" aria-label="Solo para suscriptores">
          <svg width="11" height="11" viewBox="0 0 24 24" fill="currentColor" aria-hidden="true">
            <path d="M18 8h-1V6c0-2.76-2.24-5-5-5S7 3.24 7 6v2H6c-1.1 0-2 .9-2 2v10c0 1.1.9 2 2 2h12c1.1 0 2-.9 2-2V10c0-1.1-.9-2-2-2zM9 6c0-1.66 1.34-3 3-3s3 1.34 3 3v2H9V6z"/>
          </svg>
        </span>
    </div>
  </div>
</div>
</template></turbo-stream>  <turbo-stream action="append" target="for-you-posts"><template>
    <div class="content-post ">

  <!-- Header del post -->
  <div class="post-header">
      <img class="post-avatar" alt="mamasutra" width="200" height="200" loading="lazy" src="https://www.exotha.com/rails/active_storage/blobs/redirect/eyJfcmFpbHMiOnsiZGF0YSI6MSwicHVyIjoiYmxvYl9pZCJ9fQ==--5871e50b79f1e46d8a84a6c1a7153a25e462bd6f/Captura%20desde%202024-07-29%2021-06-54.png" />

    <div class="post-info">
      <a class="post-creator" href="/@mamasutra">mamasutra</a>
      <span class="post-time">alrededor de 2 meses ago</span>
    </div>

    <div class="post-menu" data-controller="dropdown share-link">
      <button class="post-menu-btn" data-action="click->dropdown#toggle" aria-label="Post options">
        <svg width="20" height="20" fill="currentColor" viewBox="0 0 24 24">
          <path d="M12 8c1.1 0 2-.9 2-2s-.9-2-2-2-2 .9-2 2 .9 2 2 2zm0 2c-1.1 0-2 .9-2 2s.9 2 2 2 2-.9 2-2-.9-2-2-2zm0 6c-1.1 0-2 .9-2 2s.9 2 2 2 2-.9 2-2-.9-2-2-2z"/>
        </svg>
      </button>
      <div class="post-menu-dropdown" data-dropdown-target="menu">
        <button class="post-menu-item"
                data-action="click->share-link#copy"
                data-url="https://www.exotha.com/@mamasutra/content/11">
          <svg width="16" height="16" fill="none" stroke="currentColor" stroke-width="2" viewBox="0 0 24 24">
            <path d="M10 13a5 5 0 0 0 7.54.54l3-3a5 5 0 0 0-7.07-7.07l-1.72 1.71"/>
            <path d="M14 11a5 5 0 0 0-7.54-.54l-3 3a5 5 0 0 0 7.07 7.07l1.71-1.71"/>
          </svg>
          Copiar link
        </button>
      </div>
    </div>
  </div>
  
  <!-- Media del post -->
  <div class="post-media">
    
<div class="content-card ">

    <!-- Contenido Accesible -->
    <a href="/@mamasutra/content/11">
      <div class="content-media">
            <img class="content-image" loading="lazy" src="https://www.exotha.com/rails/active_storage/blobs/redirect/eyJfcmFpbHMiOnsiZGF0YSI6NTcsInB1ciI6ImJsb2JfaWQifX0=--22693739018896ad732e30fbee20cc4f4f206714/1000250183.jpg" />

      </div>
</a>
</div>

<style>
/* ========================================
   CONTENT CARD - EXOTHA FEED
   Luxury minimal dark theme
   ======================================== */

/* Base content card */
.content-card {
  display: block;
  width: 100%;
}

/* ========== UNLOCKED CONTENT ========== */
.content-card > a {
  display: block;
  width: 100%;
}

.content-media {
  position: relative;
  width: 100%;
  line-height: 0;
  font-size: 0;
}

.content-image {
  display: block;
  width: 100%;
  height: auto;
  max-height: 600px;
  object-fit: contain;
}

video.content-image {
  background: #000;
}

/* Video play overlay */
.video-play-overlay {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  z-index: 10;
  opacity: 1;
  transition: opacity 0.3s ease;
  pointer-events: none;
}

.play-button {
  width: 56px;
  height: 56px;
  background: rgba(0, 0, 0, 0.45);
  backdrop-filter: blur(4px);
  -webkit-backdrop-filter: blur(4px);
  border: 2px solid rgba(255, 255, 255, 0.25);
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  box-shadow: 0 4px 16px rgba(0, 0, 0, 0.3);
  transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
}

.play-button svg {
  margin-left: 3px;
  opacity: 0.85;
  filter: drop-shadow(0 2px 4px rgba(0, 0, 0, 0.3));
  transition: opacity 0.3s ease;
}

.content-card:hover .play-button {
  width: 72px;
  height: 72px;
  background: rgba(255, 0, 116, 0.92);
  border: 3px solid rgba(255, 255, 255, 0.95);
  box-shadow: 0 8px 32px rgba(255, 0, 116, 0.5);
  transform: scale(1.08);
}

.content-card:hover .play-button svg {
  opacity: 1;
}

/* Gallery badge */
.gallery-type-badge {
  position: absolute;
  top: 12px;
  right: 12px;
  background: rgba(0, 0, 0, 0.85);
  backdrop-filter: blur(12px);
  -webkit-backdrop-filter: blur(12px);
  color: #fff;
  padding: 8px 14px;
  border-radius: 10px;
  display: flex;
  align-items: center;
  gap: 8px;
  font-size: 12px;
  font-weight: 600;
  border: 1px solid rgba(255, 255, 255, 0.12);
  z-index: 15;
}

.gallery-badge-count {
  background: linear-gradient(135deg, #ff0074 0%, #ff4081 100%);
  padding: 3px 10px;
  border-radius: 12px;
  font-size: 11px;
  font-weight: 700;
}

.gallery-badge-details {
  display: flex;
  align-items: center;
  gap: 4px;
  font-size: 11px;
  color: rgba(255, 255, 255, 0.75);
}

/* ========== LOCKED CONTENT ========== */
.content-card.locked {
  display: block;
  width: 100%;
}

.locked-content-wrapper {
  position: relative;
  width: 100%;
  aspect-ratio: 4 / 5;
  min-height: 280px;
  max-height: 400px;
  overflow: hidden;
  background: #0d0d0d;
  border-radius: 4px;
}

.locked-backdrop {
  position: absolute;
  inset: 0;
  overflow: hidden;
}

.locked-blur-image {
  position: absolute;
  inset: -10px;
  /* Premium gradient — visible fallback when blur image unavailable */
  background-color: #0c0c0c;
  background-image:
    radial-gradient(ellipse 180% 120% at 0% 100%, rgba(255, 0, 116, 0.35) 0%, transparent 50%),
    radial-gradient(ellipse 150% 100% at 100% 0%, rgba(255, 61, 154, 0.25) 0%, transparent 45%),
    radial-gradient(circle at 50% 40%, rgba(255, 0, 116, 0.15) 0%, transparent 55%),
    linear-gradient(165deg, #0c0c0c 0%, #1a0a14 30%, #250e1c 50%, #1a0a14 70%, #0c0c0c 100%);
  background-size: cover;
  background-position: center;
}

/* Refined overlay with subtle gradient */
.locked-backdrop::after {
  content: '';
  position: absolute;
  inset: 0;
  background:
    radial-gradient(ellipse 80% 60% at 50% 50%, transparent 0%, rgba(0, 0, 0, 0.25) 100%),
    linear-gradient(180deg, rgba(0, 0, 0, 0.05) 0%, rgba(0, 0, 0, 0.15) 100%);
  pointer-events: none;
}

/* Centered CTA - Refined layout */
.content-card.locked .locked-cta {
  position: absolute !important;
  inset: 0 !important;
  display: flex !important;
  flex-direction: column !important;
  align-items: center !important;
  justify-content: center !important;
  z-index: 10 !important;
  padding: 32px 24px !important;
  text-align: center !important;
  gap: 0 !important;
}

/* Lock icon wrapper */
.content-card.locked .locked-icon-wrapper {
  order: 1 !important;
  width: 64px !important;
  height: 64px !important;
  min-width: 64px !important;
  min-height: 64px !important;
  background: rgba(255, 0, 116, 0.12) !important;
  backdrop-filter: blur(8px) !important;
  -webkit-backdrop-filter: blur(8px) !important;
  border: 2px solid rgba(255, 0, 116, 0.4) !important;
  border-radius: 50% !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  margin-bottom: 20px !important;
  transition: all 0.3s ease !important;
  flex-shrink: 0 !important;
}

.content-card.locked .locked-content-wrapper:hover .locked-icon-wrapper {
  background: rgba(255, 0, 116, 0.2) !important;
  border-color: rgba(255, 0, 116, 0.6) !important;
  transform: scale(1.05) !important;
}

.content-card.locked .locked-icon-svg {
  width: 28px !important;
  height: 28px !important;
  fill: #ff0074 !important;
  flex-shrink: 0 !important;
}

/* Label text - Second */
.content-card.locked .locked-label {
  order: 2 !important;
  color: rgba(255, 255, 255, 0.95) !important;
  font-size: 16px !important;
  font-weight: 500 !important;
  margin: 0 0 20px 0 !important;
  padding: 0 !important;
  letter-spacing: 0.01em !important;
  line-height: 1.3 !important;
}

/* Action button - Third */
.content-card.locked .locked-btn {
  order: 3 !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  gap: 8px !important;
  padding: 12px 28px !important;
  border-radius: 100px !important;
  font-weight: 600 !important;
  font-size: 14px !important;
  text-decoration: none !important;
  transition: all 0.25s cubic-bezier(0.4, 0, 0.2, 1) !important;
  border: none !important;
  cursor: pointer !important;
  background: linear-gradient(135deg, #ff0074 0%, #ff2d8a 100%) !important;
  color: white !important;
  box-shadow: 0 4px 20px rgba(255, 0, 116, 0.35) !important;
  letter-spacing: 0.02em !important;
}

.content-card.locked .locked-btn:hover {
  transform: translateY(-2px) !important;
  box-shadow: 0 8px 28px rgba(255, 0, 116, 0.45) !important;
  background: linear-gradient(135deg, #ff1a82 0%, #ff4095 100%) !important;
}

.content-card.locked .locked-btn:active {
  transform: translateY(0) !important;
  box-shadow: 0 2px 12px rgba(255, 0, 116, 0.4) !important;
}

.content-card.locked .locked-btn svg {
  width: 16px !important;
  height: 16px !important;
  flex-shrink: 0 !important;
  opacity: 0.9 !important;
}

/* ========== RESPONSIVE ========== */
@media (max-width: 768px) {
  .content-card.locked .locked-content-wrapper {
    aspect-ratio: 1 / 1 !important;
    min-height: 240px !important;
    max-height: 340px !important;
  }

  .content-card.locked .locked-icon-wrapper {
    width: 56px !important;
    height: 56px !important;
    min-width: 56px !important;
    min-height: 56px !important;
    margin-bottom: 16px !important;
  }

  .content-card.locked .locked-icon-svg {
    width: 24px !important;
    height: 24px !important;
  }

  .content-card.locked .locked-label {
    font-size: 14px !important;
    margin-bottom: 16px !important;
  }

  .content-card.locked .locked-btn {
    padding: 11px 24px !important;
    font-size: 13px !important;
  }

  .play-button {
    width: 48px;
    height: 48px;
  }

  .content-card:hover .play-button {
    width: 64px;
    height: 64px;
  }
}

@media (max-width: 480px) {
  .content-card.locked .locked-content-wrapper {
    min-height: 200px !important;
    max-height: 300px !important;
  }

  .content-card.locked .locked-cta {
    padding: 24px 20px !important;
  }

  .content-card.locked .locked-icon-wrapper {
    width: 50px !important;
    height: 50px !important;
    min-width: 50px !important;
    min-height: 50px !important;
    margin-bottom: 14px !important;
  }

  .content-card.locked .locked-icon-svg {
    width: 22px !important;
    height: 22px !important;
  }

  .content-card.locked .locked-label {
    font-size: 13px !important;
    margin-bottom: 14px !important;
  }

  .content-card.locked .locked-btn {
    padding: 10px 22px !important;
    font-size: 12px !important;
    gap: 6px !important;
  }

  .content-card.locked .locked-btn svg {
    width: 14px !important;
    height: 14px !important;
  }
}
</style>

  </div>
  
  <!-- Footer del post -->
  <div class="post-footer">
      <p class="post-description">Texto </p>
    
    <div class="post-actions">


        <a class="action-btn toggle" data-turbo="false" aria-label="Inicia sesión para dar me gusta" href="#enter-modal">
          <svg fill="currentColor" viewBox="0 0 24 24"><path d="M12 21.35l-1.45-1.32C5.4 15.36 2 12.28 2 8.5 2 5.42 4.42 3 7.5 3c1.74 0 3.41.81 4.5 2.09C13.09 3.81 14.76 3 16.5 3 19.58 3 22 5.42 22 8.5c0 3.78-3.4 6.86-8.55 11.54L12 21.35z"/></svg>
          <span>2</span>
</a>
        <a class="action-btn toggle" data-turbo="false" aria-label="Inicia sesión para comentar" href="#enter-modal">
          <svg fill="currentColor" viewBox="0 0 24 24"><path d="M21.99 4c0-1.1-.89-2-1.99-2H4c-1.1 0-2 .9-2 2v12c0 1.1.9 2 2 2h14l4 4-.01-18zM18 14H6v-2h12v2zm0-3H6V9h12v2zm0-3H6V6h12v2z"/></svg>
          <span>1</span>
</a>
        <a class="action-btn toggle" data-turbo="false" aria-label="Inicia sesión para compartir" href="#enter-modal">
          <svg fill="currentColor" viewBox="0 0 24 24"><path d="M18 16.08c-.76 0-1.44.3-1.96.77L8.91 12.7c.05-.23.09-.46.09-.7s-.04-.47-.09-.7l7.05-4.11c.54.5 1.25.81 2.04.81 1.66 0 3-1.34 3-3s-1.34-3-3-3-3 1.34-3 3c0 .24.04.47.09.7L8.04 9.81C7.5 9.31 6.79 9 6 9c-1.66 0-3 1.34-3 3s1.34 3 3 3c.79 0 1.5-.31 2.04-.81l7.12 4.16c-.05.21-.08.43-.08.65 0 1.61 1.31 2.92 2.92 2.92 1.61 0 2.92-1.31 2.92-2.92s-1.31-2.92-2.92-2.92z"/></svg>
</a>      
      <div style="flex: 1;"></div>

        <span class="content-access-badge content-access-badge--free">
          <svg width="11" height="11" viewBox="0 0 24 24" fill="currentColor" aria-hidden="true">
            <path d="M18 8h-1V6c0-2.76-2.24-5-5-5S7 3.24 7 6h2c0-1.66 1.34-3 3-3s3 1.34 3 3v2H6c-1.1 0-2 .9-2 2v10c0 1.1.9 2 2 2h12c1.1 0 2-.9 2-2V10c0-1.1-.9-2-2-2z"/>
          </svg>
          GRATIS
        </span>
    </div>
  </div>
</div>
</template></turbo-stream>  <turbo-stream action="append" target="for-you-posts"><template>
    <div class="content-post ">

  <!-- Header del post -->
  <div class="post-header">
      <img class="post-avatar" alt="mamasutra" width="200" height="200" loading="lazy" src="https://www.exotha.com/rails/active_storage/blobs/redirect/eyJfcmFpbHMiOnsiZGF0YSI6MSwicHVyIjoiYmxvYl9pZCJ9fQ==--5871e50b79f1e46d8a84a6c1a7153a25e462bd6f/Captura%20desde%202024-07-29%2021-06-54.png" />

    <div class="post-info">
      <a class="post-creator" href="/@mamasutra">mamasutra</a>
      <span class="post-time">2 meses ago</span>
    </div>

    <div class="post-menu" data-controller="dropdown share-link">
      <button class="post-menu-btn" data-action="click->dropdown#toggle" aria-label="Post options">
        <svg width="20" height="20" fill="currentColor" viewBox="0 0 24 24">
          <path d="M12 8c1.1 0 2-.9 2-2s-.9-2-2-2-2 .9-2 2 .9 2 2 2zm0 2c-1.1 0-2 .9-2 2s.9 2 2 2 2-.9 2-2-.9-2-2-2zm0 6c-1.1 0-2 .9-2 2s.9 2 2 2 2-.9 2-2-.9-2-2-2z"/>
        </svg>
      </button>
      <div class="post-menu-dropdown" data-dropdown-target="menu">
        <button class="post-menu-item"
                data-action="click->share-link#copy"
                data-url="https://www.exotha.com/@mamasutra/content/9">
          <svg width="16" height="16" fill="none" stroke="currentColor" stroke-width="2" viewBox="0 0 24 24">
            <path d="M10 13a5 5 0 0 0 7.54.54l3-3a5 5 0 0 0-7.07-7.07l-1.72 1.71"/>
            <path d="M14 11a5 5 0 0 0-7.54-.54l-3 3a5 5 0 0 0 7.07 7.07l1.71-1.71"/>
          </svg>
          Copiar link
        </button>
      </div>
    </div>
  </div>
  
  <!-- Media del post -->
  <div class="post-media">
    
<div class="content-card ">

    <!-- Contenido Accesible -->
    <a href="/@mamasutra/content/9">
      <div class="content-media">
            <img class="content-image" loading="lazy" src="https://www.exotha.com/rails/active_storage/blobs/redirect/eyJfcmFpbHMiOnsiZGF0YSI6NDcsInB1ciI6ImJsb2JfaWQifX0=--92a8b7905b297ce39e8ca6cbae770c9d093b00a2/1000248883.jpg" />

      </div>
</a>
</div>

<style>
/* ========================================
   CONTENT CARD - EXOTHA FEED
   Luxury minimal dark theme
   ======================================== */

/* Base content card */
.content-card {
  display: block;
  width: 100%;
}

/* ========== UNLOCKED CONTENT ========== */
.content-card > a {
  display: block;
  width: 100%;
}

.content-media {
  position: relative;
  width: 100%;
  line-height: 0;
  font-size: 0;
}

.content-image {
  display: block;
  width: 100%;
  height: auto;
  max-height: 600px;
  object-fit: contain;
}

video.content-image {
  background: #000;
}

/* Video play overlay */
.video-play-overlay {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  z-index: 10;
  opacity: 1;
  transition: opacity 0.3s ease;
  pointer-events: none;
}

.play-button {
  width: 56px;
  height: 56px;
  background: rgba(0, 0, 0, 0.45);
  backdrop-filter: blur(4px);
  -webkit-backdrop-filter: blur(4px);
  border: 2px solid rgba(255, 255, 255, 0.25);
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  box-shadow: 0 4px 16px rgba(0, 0, 0, 0.3);
  transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
}

.play-button svg {
  margin-left: 3px;
  opacity: 0.85;
  filter: drop-shadow(0 2px 4px rgba(0, 0, 0, 0.3));
  transition: opacity 0.3s ease;
}

.content-card:hover .play-button {
  width: 72px;
  height: 72px;
  background: rgba(255, 0, 116, 0.92);
  border: 3px solid rgba(255, 255, 255, 0.95);
  box-shadow: 0 8px 32px rgba(255, 0, 116, 0.5);
  transform: scale(1.08);
}

.content-card:hover .play-button svg {
  opacity: 1;
}

/* Gallery badge */
.gallery-type-badge {
  position: absolute;
  top: 12px;
  right: 12px;
  background: rgba(0, 0, 0, 0.85);
  backdrop-filter: blur(12px);
  -webkit-backdrop-filter: blur(12px);
  color: #fff;
  padding: 8px 14px;
  border-radius: 10px;
  display: flex;
  align-items: center;
  gap: 8px;
  font-size: 12px;
  font-weight: 600;
  border: 1px solid rgba(255, 255, 255, 0.12);
  z-index: 15;
}

.gallery-badge-count {
  background: linear-gradient(135deg, #ff0074 0%, #ff4081 100%);
  padding: 3px 10px;
  border-radius: 12px;
  font-size: 11px;
  font-weight: 700;
}

.gallery-badge-details {
  display: flex;
  align-items: center;
  gap: 4px;
  font-size: 11px;
  color: rgba(255, 255, 255, 0.75);
}

/* ========== LOCKED CONTENT ========== */
.content-card.locked {
  display: block;
  width: 100%;
}

.locked-content-wrapper {
  position: relative;
  width: 100%;
  aspect-ratio: 4 / 5;
  min-height: 280px;
  max-height: 400px;
  overflow: hidden;
  background: #0d0d0d;
  border-radius: 4px;
}

.locked-backdrop {
  position: absolute;
  inset: 0;
  overflow: hidden;
}

.locked-blur-image {
  position: absolute;
  inset: -10px;
  /* Premium gradient — visible fallback when blur image unavailable */
  background-color: #0c0c0c;
  background-image:
    radial-gradient(ellipse 180% 120% at 0% 100%, rgba(255, 0, 116, 0.35) 0%, transparent 50%),
    radial-gradient(ellipse 150% 100% at 100% 0%, rgba(255, 61, 154, 0.25) 0%, transparent 45%),
    radial-gradient(circle at 50% 40%, rgba(255, 0, 116, 0.15) 0%, transparent 55%),
    linear-gradient(165deg, #0c0c0c 0%, #1a0a14 30%, #250e1c 50%, #1a0a14 70%, #0c0c0c 100%);
  background-size: cover;
  background-position: center;
}

/* Refined overlay with subtle gradient */
.locked-backdrop::after {
  content: '';
  position: absolute;
  inset: 0;
  background:
    radial-gradient(ellipse 80% 60% at 50% 50%, transparent 0%, rgba(0, 0, 0, 0.25) 100%),
    linear-gradient(180deg, rgba(0, 0, 0, 0.05) 0%, rgba(0, 0, 0, 0.15) 100%);
  pointer-events: none;
}

/* Centered CTA - Refined layout */
.content-card.locked .locked-cta {
  position: absolute !important;
  inset: 0 !important;
  display: flex !important;
  flex-direction: column !important;
  align-items: center !important;
  justify-content: center !important;
  z-index: 10 !important;
  padding: 32px 24px !important;
  text-align: center !important;
  gap: 0 !important;
}

/* Lock icon wrapper */
.content-card.locked .locked-icon-wrapper {
  order: 1 !important;
  width: 64px !important;
  height: 64px !important;
  min-width: 64px !important;
  min-height: 64px !important;
  background: rgba(255, 0, 116, 0.12) !important;
  backdrop-filter: blur(8px) !important;
  -webkit-backdrop-filter: blur(8px) !important;
  border: 2px solid rgba(255, 0, 116, 0.4) !important;
  border-radius: 50% !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  margin-bottom: 20px !important;
  transition: all 0.3s ease !important;
  flex-shrink: 0 !important;
}

.content-card.locked .locked-content-wrapper:hover .locked-icon-wrapper {
  background: rgba(255, 0, 116, 0.2) !important;
  border-color: rgba(255, 0, 116, 0.6) !important;
  transform: scale(1.05) !important;
}

.content-card.locked .locked-icon-svg {
  width: 28px !important;
  height: 28px !important;
  fill: #ff0074 !important;
  flex-shrink: 0 !important;
}

/* Label text - Second */
.content-card.locked .locked-label {
  order: 2 !important;
  color: rgba(255, 255, 255, 0.95) !important;
  font-size: 16px !important;
  font-weight: 500 !important;
  margin: 0 0 20px 0 !important;
  padding: 0 !important;
  letter-spacing: 0.01em !important;
  line-height: 1.3 !important;
}

/* Action button - Third */
.content-card.locked .locked-btn {
  order: 3 !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  gap: 8px !important;
  padding: 12px 28px !important;
  border-radius: 100px !important;
  font-weight: 600 !important;
  font-size: 14px !important;
  text-decoration: none !important;
  transition: all 0.25s cubic-bezier(0.4, 0, 0.2, 1) !important;
  border: none !important;
  cursor: pointer !important;
  background: linear-gradient(135deg, #ff0074 0%, #ff2d8a 100%) !important;
  color: white !important;
  box-shadow: 0 4px 20px rgba(255, 0, 116, 0.35) !important;
  letter-spacing: 0.02em !important;
}

.content-card.locked .locked-btn:hover {
  transform: translateY(-2px) !important;
  box-shadow: 0 8px 28px rgba(255, 0, 116, 0.45) !important;
  background: linear-gradient(135deg, #ff1a82 0%, #ff4095 100%) !important;
}

.content-card.locked .locked-btn:active {
  transform: translateY(0) !important;
  box-shadow: 0 2px 12px rgba(255, 0, 116, 0.4) !important;
}

.content-card.locked .locked-btn svg {
  width: 16px !important;
  height: 16px !important;
  flex-shrink: 0 !important;
  opacity: 0.9 !important;
}

/* ========== RESPONSIVE ========== */
@media (max-width: 768px) {
  .content-card.locked .locked-content-wrapper {
    aspect-ratio: 1 / 1 !important;
    min-height: 240px !important;
    max-height: 340px !important;
  }

  .content-card.locked .locked-icon-wrapper {
    width: 56px !important;
    height: 56px !important;
    min-width: 56px !important;
    min-height: 56px !important;
    margin-bottom: 16px !important;
  }

  .content-card.locked .locked-icon-svg {
    width: 24px !important;
    height: 24px !important;
  }

  .content-card.locked .locked-label {
    font-size: 14px !important;
    margin-bottom: 16px !important;
  }

  .content-card.locked .locked-btn {
    padding: 11px 24px !important;
    font-size: 13px !important;
  }

  .play-button {
    width: 48px;
    height: 48px;
  }

  .content-card:hover .play-button {
    width: 64px;
    height: 64px;
  }
}

@media (max-width: 480px) {
  .content-card.locked .locked-content-wrapper {
    min-height: 200px !important;
    max-height: 300px !important;
  }

  .content-card.locked .locked-cta {
    padding: 24px 20px !important;
  }

  .content-card.locked .locked-icon-wrapper {
    width: 50px !important;
    height: 50px !important;
    min-width: 50px !important;
    min-height: 50px !important;
    margin-bottom: 14px !important;
  }

  .content-card.locked .locked-icon-svg {
    width: 22px !important;
    height: 22px !important;
  }

  .content-card.locked .locked-label {
    font-size: 13px !important;
    margin-bottom: 14px !important;
  }

  .content-card.locked .locked-btn {
    padding: 10px 22px !important;
    font-size: 12px !important;
    gap: 6px !important;
  }

  .content-card.locked .locked-btn svg {
    width: 14px !important;
    height: 14px !important;
  }
}
</style>

  </div>
  
  <!-- Footer del post -->
  <div class="post-footer">
      <p class="post-description">Test imagen</p>
    
    <div class="post-actions">


        <a class="action-btn toggle" data-turbo="false" aria-label="Inicia sesión para dar me gusta" href="#enter-modal">
          <svg fill="currentColor" viewBox="0 0 24 24"><path d="M12 21.35l-1.45-1.32C5.4 15.36 2 12.28 2 8.5 2 5.42 4.42 3 7.5 3c1.74 0 3.41.81 4.5 2.09C13.09 3.81 14.76 3 16.5 3 19.58 3 22 5.42 22 8.5c0 3.78-3.4 6.86-8.55 11.54L12 21.35z"/></svg>
          <span>1</span>
</a>
        <a class="action-btn toggle" data-turbo="false" aria-label="Inicia sesión para comentar" href="#enter-modal">
          <svg fill="currentColor" viewBox="0 0 24 24"><path d="M21.99 4c0-1.1-.89-2-1.99-2H4c-1.1 0-2 .9-2 2v12c0 1.1.9 2 2 2h14l4 4-.01-18zM18 14H6v-2h12v2zm0-3H6V9h12v2zm0-3H6V6h12v2z"/></svg>
          <span>2</span>
</a>
        <a class="action-btn toggle" data-turbo="false" aria-label="Inicia sesión para compartir" href="#enter-modal">
          <svg fill="currentColor" viewBox="0 0 24 24"><path d="M18 16.08c-.76 0-1.44.3-1.96.77L8.91 12.7c.05-.23.09-.46.09-.7s-.04-.47-.09-.7l7.05-4.11c.54.5 1.25.81 2.04.81 1.66 0 3-1.34 3-3s-1.34-3-3-3-3 1.34-3 3c0 .24.04.47.09.7L8.04 9.81C7.5 9.31 6.79 9 6 9c-1.66 0-3 1.34-3 3s1.34 3 3 3c.79 0 1.5-.31 2.04-.81l7.12 4.16c-.05.21-.08.43-.08.65 0 1.61 1.31 2.92 2.92 2.92 1.61 0 2.92-1.31 2.92-2.92s-1.31-2.92-2.92-2.92z"/></svg>
</a>      
      <div style="flex: 1;"></div>

        <span class="content-access-badge content-access-badge--free">
          <svg width="11" height="11" viewBox="0 0 24 24" fill="currentColor" aria-hidden="true">
            <path d="M18 8h-1V6c0-2.76-2.24-5-5-5S7 3.24 7 6h2c0-1.66 1.34-3 3-3s3 1.34 3 3v2H6c-1.1 0-2 .9-2 2v10c0 1.1.9 2 2 2h12c1.1 0 2-.9 2-2V10c0-1.1-.9-2-2-2z"/>
          </svg>
          GRATIS
        </span>
    </div>
  </div>
</div>
</template></turbo-stream>  <turbo-stream action="append" target="for-you-posts"><template>
    <div class="content-post ">

  <!-- Header del post -->
  <div class="post-header">
      <img class="post-avatar" alt="mamasutra" width="200" height="200" loading="lazy" src="https://www.exotha.com/rails/active_storage/blobs/redirect/eyJfcmFpbHMiOnsiZGF0YSI6MSwicHVyIjoiYmxvYl9pZCJ9fQ==--5871e50b79f1e46d8a84a6c1a7153a25e462bd6f/Captura%20desde%202024-07-29%2021-06-54.png" />

    <div class="post-info">
      <a class="post-creator" href="/@mamasutra">mamasutra</a>
      <span class="post-time">2 meses ago</span>
    </div>

    <div class="post-menu" data-controller="dropdown share-link">
      <button class="post-menu-btn" data-action="click->dropdown#toggle" aria-label="Post options">
        <svg width="20" height="20" fill="currentColor" viewBox="0 0 24 24">
          <path d="M12 8c1.1 0 2-.9 2-2s-.9-2-2-2-2 .9-2 2 .9 2 2 2zm0 2c-1.1 0-2 .9-2 2s.9 2 2 2 2-.9 2-2-.9-2-2-2zm0 6c-1.1 0-2 .9-2 2s.9 2 2 2 2-.9 2-2-.9-2-2-2z"/>
        </svg>
      </button>
      <div class="post-menu-dropdown" data-dropdown-target="menu">
        <button class="post-menu-item"
                data-action="click->share-link#copy"
                data-url="https://www.exotha.com/@mamasutra/content/1">
          <svg width="16" height="16" fill="none" stroke="currentColor" stroke-width="2" viewBox="0 0 24 24">
            <path d="M10 13a5 5 0 0 0 7.54.54l3-3a5 5 0 0 0-7.07-7.07l-1.72 1.71"/>
            <path d="M14 11a5 5 0 0 0-7.54-.54l-3 3a5 5 0 0 0 7.07 7.07l1.71-1.71"/>
          </svg>
          Copiar link
        </button>
      </div>
    </div>
  </div>
  
  <!-- Media del post -->
  <div class="post-media">
    
<div class="content-card locked">

    <!-- Contenido Bloqueado con Blur Server-Side -->
    <div class="locked-content-wrapper">
      <div class="locked-backdrop">
        <div class="locked-blur-image"
               style="background-image: url(https://www.exotha.com/rails/active_storage/representations/redirect/eyJfcmFpbHMiOnsiZGF0YSI6MTYsInB1ciI6ImJsb2JfaWQifX0=--1cba7b949a1aef42c05e9466d2fb1b23f7757c07/eyJfcmFpbHMiOnsiZGF0YSI6eyJmb3JtYXQiOiJqcGVnIiwicmVzaXplX3RvX2xpbWl0IjpbNjAwLDYwMF0sImdhdXNzYmx1ciI6OCwic2F2ZXIiOnsicXVhbGl0eSI6NTB9fSwicHVyIjoidmFyaWF0aW9uIn19--3e590ec4be28c7fe8859bb6d7b9eb78d969237a1/Captura%20desde%202024-07-29%2021-07-47.png);"
             ></div>
      </div>


      <div class="locked-cta">
        <!-- Lock Icon -->
        <div class="locked-icon-wrapper">
          <svg class="locked-icon-svg" viewBox="0 0 24 24" fill="#ff0074">
            <path d="M18 8h-1V6c0-2.76-2.24-5-5-5S7 3.24 7 6v2H6c-1.1 0-2 .9-2 2v10c0 1.1.9 2 2 2h12c1.1 0 2-.9 2-2V10c0-1.1-.9-2-2-2zm-6 9c-1.1 0-2-.9-2-2s.9-2 2-2 2 .9 2 2-.9 2-2 2zm3.1-9H8.9V6c0-1.71 1.39-3.1 3.1-3.1 1.71 0 3.1 1.39 3.1 3.1v2z"/>
          </svg>
        </div>

        <!-- Label -->
          <p class="locked-label">Suscríbete para desbloquear</p>
            <a class="locked-btn toggle" href="#enter-modal">
              <svg width="20" height="20" fill="currentColor" viewBox="0 0 24 24">
                <path d="M12 17.27L18.18 21l-1.64-7.03L22 9.24l-7.19-.61L12 2 9.19 8.63 2 9.24l5.46 4.73L5.82 21z"/>
              </svg>
              <span>Inicia sesión para suscribirte</span>
</a>      </div>
    </div>
</div>

<style>
/* ========================================
   CONTENT CARD - EXOTHA FEED
   Luxury minimal dark theme
   ======================================== */

/* Base content card */
.content-card {
  display: block;
  width: 100%;
}

/* ========== UNLOCKED CONTENT ========== */
.content-card > a {
  display: block;
  width: 100%;
}

.content-media {
  position: relative;
  width: 100%;
  line-height: 0;
  font-size: 0;
}

.content-image {
  display: block;
  width: 100%;
  height: auto;
  max-height: 600px;
  object-fit: contain;
}

video.content-image {
  background: #000;
}

/* Video play overlay */
.video-play-overlay {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  z-index: 10;
  opacity: 1;
  transition: opacity 0.3s ease;
  pointer-events: none;
}

.play-button {
  width: 56px;
  height: 56px;
  background: rgba(0, 0, 0, 0.45);
  backdrop-filter: blur(4px);
  -webkit-backdrop-filter: blur(4px);
  border: 2px solid rgba(255, 255, 255, 0.25);
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  box-shadow: 0 4px 16px rgba(0, 0, 0, 0.3);
  transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
}

.play-button svg {
  margin-left: 3px;
  opacity: 0.85;
  filter: drop-shadow(0 2px 4px rgba(0, 0, 0, 0.3));
  transition: opacity 0.3s ease;
}

.content-card:hover .play-button {
  width: 72px;
  height: 72px;
  background: rgba(255, 0, 116, 0.92);
  border: 3px solid rgba(255, 255, 255, 0.95);
  box-shadow: 0 8px 32px rgba(255, 0, 116, 0.5);
  transform: scale(1.08);
}

.content-card:hover .play-button svg {
  opacity: 1;
}

/* Gallery badge */
.gallery-type-badge {
  position: absolute;
  top: 12px;
  right: 12px;
  background: rgba(0, 0, 0, 0.85);
  backdrop-filter: blur(12px);
  -webkit-backdrop-filter: blur(12px);
  color: #fff;
  padding: 8px 14px;
  border-radius: 10px;
  display: flex;
  align-items: center;
  gap: 8px;
  font-size: 12px;
  font-weight: 600;
  border: 1px solid rgba(255, 255, 255, 0.12);
  z-index: 15;
}

.gallery-badge-count {
  background: linear-gradient(135deg, #ff0074 0%, #ff4081 100%);
  padding: 3px 10px;
  border-radius: 12px;
  font-size: 11px;
  font-weight: 700;
}

.gallery-badge-details {
  display: flex;
  align-items: center;
  gap: 4px;
  font-size: 11px;
  color: rgba(255, 255, 255, 0.75);
}

/* ========== LOCKED CONTENT ========== */
.content-card.locked {
  display: block;
  width: 100%;
}

.locked-content-wrapper {
  position: relative;
  width: 100%;
  aspect-ratio: 4 / 5;
  min-height: 280px;
  max-height: 400px;
  overflow: hidden;
  background: #0d0d0d;
  border-radius: 4px;
}

.locked-backdrop {
  position: absolute;
  inset: 0;
  overflow: hidden;
}

.locked-blur-image {
  position: absolute;
  inset: -10px;
  /* Premium gradient — visible fallback when blur image unavailable */
  background-color: #0c0c0c;
  background-image:
    radial-gradient(ellipse 180% 120% at 0% 100%, rgba(255, 0, 116, 0.35) 0%, transparent 50%),
    radial-gradient(ellipse 150% 100% at 100% 0%, rgba(255, 61, 154, 0.25) 0%, transparent 45%),
    radial-gradient(circle at 50% 40%, rgba(255, 0, 116, 0.15) 0%, transparent 55%),
    linear-gradient(165deg, #0c0c0c 0%, #1a0a14 30%, #250e1c 50%, #1a0a14 70%, #0c0c0c 100%);
  background-size: cover;
  background-position: center;
}

/* Refined overlay with subtle gradient */
.locked-backdrop::after {
  content: '';
  position: absolute;
  inset: 0;
  background:
    radial-gradient(ellipse 80% 60% at 50% 50%, transparent 0%, rgba(0, 0, 0, 0.25) 100%),
    linear-gradient(180deg, rgba(0, 0, 0, 0.05) 0%, rgba(0, 0, 0, 0.15) 100%);
  pointer-events: none;
}

/* Centered CTA - Refined layout */
.content-card.locked .locked-cta {
  position: absolute !important;
  inset: 0 !important;
  display: flex !important;
  flex-direction: column !important;
  align-items: center !important;
  justify-content: center !important;
  z-index: 10 !important;
  padding: 32px 24px !important;
  text-align: center !important;
  gap: 0 !important;
}

/* Lock icon wrapper */
.content-card.locked .locked-icon-wrapper {
  order: 1 !important;
  width: 64px !important;
  height: 64px !important;
  min-width: 64px !important;
  min-height: 64px !important;
  background: rgba(255, 0, 116, 0.12) !important;
  backdrop-filter: blur(8px) !important;
  -webkit-backdrop-filter: blur(8px) !important;
  border: 2px solid rgba(255, 0, 116, 0.4) !important;
  border-radius: 50% !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  margin-bottom: 20px !important;
  transition: all 0.3s ease !important;
  flex-shrink: 0 !important;
}

.content-card.locked .locked-content-wrapper:hover .locked-icon-wrapper {
  background: rgba(255, 0, 116, 0.2) !important;
  border-color: rgba(255, 0, 116, 0.6) !important;
  transform: scale(1.05) !important;
}

.content-card.locked .locked-icon-svg {
  width: 28px !important;
  height: 28px !important;
  fill: #ff0074 !important;
  flex-shrink: 0 !important;
}

/* Label text - Second */
.content-card.locked .locked-label {
  order: 2 !important;
  color: rgba(255, 255, 255, 0.95) !important;
  font-size: 16px !important;
  font-weight: 500 !important;
  margin: 0 0 20px 0 !important;
  padding: 0 !important;
  letter-spacing: 0.01em !important;
  line-height: 1.3 !important;
}

/* Action button - Third */
.content-card.locked .locked-btn {
  order: 3 !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  gap: 8px !important;
  padding: 12px 28px !important;
  border-radius: 100px !important;
  font-weight: 600 !important;
  font-size: 14px !important;
  text-decoration: none !important;
  transition: all 0.25s cubic-bezier(0.4, 0, 0.2, 1) !important;
  border: none !important;
  cursor: pointer !important;
  background: linear-gradient(135deg, #ff0074 0%, #ff2d8a 100%) !important;
  color: white !important;
  box-shadow: 0 4px 20px rgba(255, 0, 116, 0.35) !important;
  letter-spacing: 0.02em !important;
}

.content-card.locked .locked-btn:hover {
  transform: translateY(-2px) !important;
  box-shadow: 0 8px 28px rgba(255, 0, 116, 0.45) !important;
  background: linear-gradient(135deg, #ff1a82 0%, #ff4095 100%) !important;
}

.content-card.locked .locked-btn:active {
  transform: translateY(0) !important;
  box-shadow: 0 2px 12px rgba(255, 0, 116, 0.4) !important;
}

.content-card.locked .locked-btn svg {
  width: 16px !important;
  height: 16px !important;
  flex-shrink: 0 !important;
  opacity: 0.9 !important;
}

/* ========== RESPONSIVE ========== */
@media (max-width: 768px) {
  .content-card.locked .locked-content-wrapper {
    aspect-ratio: 1 / 1 !important;
    min-height: 240px !important;
    max-height: 340px !important;
  }

  .content-card.locked .locked-icon-wrapper {
    width: 56px !important;
    height: 56px !important;
    min-width: 56px !important;
    min-height: 56px !important;
    margin-bottom: 16px !important;
  }

  .content-card.locked .locked-icon-svg {
    width: 24px !important;
    height: 24px !important;
  }

  .content-card.locked .locked-label {
    font-size: 14px !important;
    margin-bottom: 16px !important;
  }

  .content-card.locked .locked-btn {
    padding: 11px 24px !important;
    font-size: 13px !important;
  }

  .play-button {
    width: 48px;
    height: 48px;
  }

  .content-card:hover .play-button {
    width: 64px;
    height: 64px;
  }
}

@media (max-width: 480px) {
  .content-card.locked .locked-content-wrapper {
    min-height: 200px !important;
    max-height: 300px !important;
  }

  .content-card.locked .locked-cta {
    padding: 24px 20px !important;
  }

  .content-card.locked .locked-icon-wrapper {
    width: 50px !important;
    height: 50px !important;
    min-width: 50px !important;
    min-height: 50px !important;
    margin-bottom: 14px !important;
  }

  .content-card.locked .locked-icon-svg {
    width: 22px !important;
    height: 22px !important;
  }

  .content-card.locked .locked-label {
    font-size: 13px !important;
    margin-bottom: 14px !important;
  }

  .content-card.locked .locked-btn {
    padding: 10px 22px !important;
    font-size: 12px !important;
    gap: 6px !important;
  }

  .content-card.locked .locked-btn svg {
    width: 14px !important;
    height: 14px !important;
  }
}
</style>

  </div>
  
  <!-- Footer del post -->
  <div class="post-footer">
      <p class="post-description">Mira lo quye puedo hacer </p>
    
    <div class="post-actions">


        <a class="action-btn toggle" data-turbo="false" aria-label="Inicia sesión para dar me gusta" href="#enter-modal">
          <svg fill="currentColor" viewBox="0 0 24 24"><path d="M12 21.35l-1.45-1.32C5.4 15.36 2 12.28 2 8.5 2 5.42 4.42 3 7.5 3c1.74 0 3.41.81 4.5 2.09C13.09 3.81 14.76 3 16.5 3 19.58 3 22 5.42 22 8.5c0 3.78-3.4 6.86-8.55 11.54L12 21.35z"/></svg>
          <span>2</span>
</a>
        <a class="action-btn toggle" data-turbo="false" aria-label="Inicia sesión para comentar" href="#enter-modal">
          <svg fill="currentColor" viewBox="0 0 24 24"><path d="M21.99 4c0-1.1-.89-2-1.99-2H4c-1.1 0-2 .9-2 2v12c0 1.1.9 2 2 2h14l4 4-.01-18zM18 14H6v-2h12v2zm0-3H6V9h12v2zm0-3H6V6h12v2z"/></svg>
          <span>1</span>
</a>
        <a class="action-btn toggle" data-turbo="false" aria-label="Inicia sesión para compartir" href="#enter-modal">
          <svg fill="currentColor" viewBox="0 0 24 24"><path d="M18 16.08c-.76 0-1.44.3-1.96.77L8.91 12.7c.05-.23.09-.46.09-.7s-.04-.47-.09-.7l7.05-4.11c.54.5 1.25.81 2.04.81 1.66 0 3-1.34 3-3s-1.34-3-3-3-3 1.34-3 3c0 .24.04.47.09.7L8.04 9.81C7.5 9.31 6.79 9 6 9c-1.66 0-3 1.34-3 3s1.34 3 3 3c.79 0 1.5-.31 2.04-.81l7.12 4.16c-.05.21-.08.43-.08.65 0 1.61 1.31 2.92 2.92 2.92 1.61 0 2.92-1.31 2.92-2.92s-1.31-2.92-2.92-2.92z"/></svg>
</a>      
      <div style="flex: 1;"></div>

        <span class="content-access-badge content-access-badge--locked" aria-label="Solo para suscriptores">
          <svg width="11" height="11" viewBox="0 0 24 24" fill="currentColor" aria-hidden="true">
            <path d="M18 8h-1V6c0-2.76-2.24-5-5-5S7 3.24 7 6v2H6c-1.1 0-2 .9-2 2v10c0 1.1.9 2 2 2h12c1.1 0 2-.9 2-2V10c0-1.1-.9-2-2-2zM9 6c0-1.66 1.34-3 3-3s3 1.34 3 3v2H9V6z"/>
          </svg>
        </span>
    </div>
  </div>
</div>
</template></turbo-stream>  <turbo-stream action="append" target="for-you-posts"><template>
    <div class="content-post ">

  <!-- Header del post -->
  <div class="post-header">
      <img class="post-avatar" alt="mamasutra" width="200" height="200" loading="lazy" src="https://www.exotha.com/rails/active_storage/blobs/redirect/eyJfcmFpbHMiOnsiZGF0YSI6MSwicHVyIjoiYmxvYl9pZCJ9fQ==--5871e50b79f1e46d8a84a6c1a7153a25e462bd6f/Captura%20desde%202024-07-29%2021-06-54.png" />

    <div class="post-info">
      <a class="post-creator" href="/@mamasutra">mamasutra</a>
      <span class="post-time">2 meses ago</span>
    </div>

    <div class="post-menu" data-controller="dropdown share-link">
      <button class="post-menu-btn" data-action="click->dropdown#toggle" aria-label="Post options">
        <svg width="20" height="20" fill="currentColor" viewBox="0 0 24 24">
          <path d="M12 8c1.1 0 2-.9 2-2s-.9-2-2-2-2 .9-2 2 .9 2 2 2zm0 2c-1.1 0-2 .9-2 2s.9 2 2 2 2-.9 2-2-.9-2-2-2zm0 6c-1.1 0-2 .9-2 2s.9 2 2 2 2-.9 2-2-.9-2-2-2z"/>
        </svg>
      </button>
      <div class="post-menu-dropdown" data-dropdown-target="menu">
        <button class="post-menu-item"
                data-action="click->share-link#copy"
                data-url="https://www.exotha.com/@mamasutra/content/7">
          <svg width="16" height="16" fill="none" stroke="currentColor" stroke-width="2" viewBox="0 0 24 24">
            <path d="M10 13a5 5 0 0 0 7.54.54l3-3a5 5 0 0 0-7.07-7.07l-1.72 1.71"/>
            <path d="M14 11a5 5 0 0 0-7.54-.54l-3 3a5 5 0 0 0 7.07 7.07l1.71-1.71"/>
          </svg>
          Copiar link
        </button>
      </div>
    </div>
  </div>
  
  <!-- Media del post -->
  <div class="post-media">
    
<div class="content-card locked">

    <!-- Contenido Bloqueado con Blur Server-Side -->
    <div class="locked-content-wrapper">
      <div class="locked-backdrop">
        <div class="locked-blur-image"
></div>
      </div>


      <div class="locked-cta">
        <!-- Lock Icon -->
        <div class="locked-icon-wrapper">
          <svg class="locked-icon-svg" viewBox="0 0 24 24" fill="#ff0074">
            <path d="M18 8h-1V6c0-2.76-2.24-5-5-5S7 3.24 7 6v2H6c-1.1 0-2 .9-2 2v10c0 1.1.9 2 2 2h12c1.1 0 2-.9 2-2V10c0-1.1-.9-2-2-2zm-6 9c-1.1 0-2-.9-2-2s.9-2 2-2 2 .9 2 2-.9 2-2 2zm3.1-9H8.9V6c0-1.71 1.39-3.1 3.1-3.1 1.71 0 3.1 1.39 3.1 3.1v2z"/>
          </svg>
        </div>

        <!-- Label -->
          <p class="locked-label">Suscríbete para desbloquear</p>
            <a class="locked-btn toggle" href="#enter-modal">
              <svg width="20" height="20" fill="currentColor" viewBox="0 0 24 24">
                <path d="M12 17.27L18.18 21l-1.64-7.03L22 9.24l-7.19-.61L12 2 9.19 8.63 2 9.24l5.46 4.73L5.82 21z"/>
              </svg>
              <span>Inicia sesión para suscribirte</span>
</a>      </div>
    </div>
</div>

<style>
/* ========================================
   CONTENT CARD - EXOTHA FEED
   Luxury minimal dark theme
   ======================================== */

/* Base content card */
.content-card {
  display: block;
  width: 100%;
}

/* ========== UNLOCKED CONTENT ========== */
.content-card > a {
  display: block;
  width: 100%;
}

.content-media {
  position: relative;
  width: 100%;
  line-height: 0;
  font-size: 0;
}

.content-image {
  display: block;
  width: 100%;
  height: auto;
  max-height: 600px;
  object-fit: contain;
}

video.content-image {
  background: #000;
}

/* Video play overlay */
.video-play-overlay {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  z-index: 10;
  opacity: 1;
  transition: opacity 0.3s ease;
  pointer-events: none;
}

.play-button {
  width: 56px;
  height: 56px;
  background: rgba(0, 0, 0, 0.45);
  backdrop-filter: blur(4px);
  -webkit-backdrop-filter: blur(4px);
  border: 2px solid rgba(255, 255, 255, 0.25);
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  box-shadow: 0 4px 16px rgba(0, 0, 0, 0.3);
  transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
}

.play-button svg {
  margin-left: 3px;
  opacity: 0.85;
  filter: drop-shadow(0 2px 4px rgba(0, 0, 0, 0.3));
  transition: opacity 0.3s ease;
}

.content-card:hover .play-button {
  width: 72px;
  height: 72px;
  background: rgba(255, 0, 116, 0.92);
  border: 3px solid rgba(255, 255, 255, 0.95);
  box-shadow: 0 8px 32px rgba(255, 0, 116, 0.5);
  transform: scale(1.08);
}

.content-card:hover .play-button svg {
  opacity: 1;
}

/* Gallery badge */
.gallery-type-badge {
  position: absolute;
  top: 12px;
  right: 12px;
  background: rgba(0, 0, 0, 0.85);
  backdrop-filter: blur(12px);
  -webkit-backdrop-filter: blur(12px);
  color: #fff;
  padding: 8px 14px;
  border-radius: 10px;
  display: flex;
  align-items: center;
  gap: 8px;
  font-size: 12px;
  font-weight: 600;
  border: 1px solid rgba(255, 255, 255, 0.12);
  z-index: 15;
}

.gallery-badge-count {
  background: linear-gradient(135deg, #ff0074 0%, #ff4081 100%);
  padding: 3px 10px;
  border-radius: 12px;
  font-size: 11px;
  font-weight: 700;
}

.gallery-badge-details {
  display: flex;
  align-items: center;
  gap: 4px;
  font-size: 11px;
  color: rgba(255, 255, 255, 0.75);
}

/* ========== LOCKED CONTENT ========== */
.content-card.locked {
  display: block;
  width: 100%;
}

.locked-content-wrapper {
  position: relative;
  width: 100%;
  aspect-ratio: 4 / 5;
  min-height: 280px;
  max-height: 400px;
  overflow: hidden;
  background: #0d0d0d;
  border-radius: 4px;
}

.locked-backdrop {
  position: absolute;
  inset: 0;
  overflow: hidden;
}

.locked-blur-image {
  position: absolute;
  inset: -10px;
  /* Premium gradient — visible fallback when blur image unavailable */
  background-color: #0c0c0c;
  background-image:
    radial-gradient(ellipse 180% 120% at 0% 100%, rgba(255, 0, 116, 0.35) 0%, transparent 50%),
    radial-gradient(ellipse 150% 100% at 100% 0%, rgba(255, 61, 154, 0.25) 0%, transparent 45%),
    radial-gradient(circle at 50% 40%, rgba(255, 0, 116, 0.15) 0%, transparent 55%),
    linear-gradient(165deg, #0c0c0c 0%, #1a0a14 30%, #250e1c 50%, #1a0a14 70%, #0c0c0c 100%);
  background-size: cover;
  background-position: center;
}

/* Refined overlay with subtle gradient */
.locked-backdrop::after {
  content: '';
  position: absolute;
  inset: 0;
  background:
    radial-gradient(ellipse 80% 60% at 50% 50%, transparent 0%, rgba(0, 0, 0, 0.25) 100%),
    linear-gradient(180deg, rgba(0, 0, 0, 0.05) 0%, rgba(0, 0, 0, 0.15) 100%);
  pointer-events: none;
}

/* Centered CTA - Refined layout */
.content-card.locked .locked-cta {
  position: absolute !important;
  inset: 0 !important;
  display: flex !important;
  flex-direction: column !important;
  align-items: center !important;
  justify-content: center !important;
  z-index: 10 !important;
  padding: 32px 24px !important;
  text-align: center !important;
  gap: 0 !important;
}

/* Lock icon wrapper */
.content-card.locked .locked-icon-wrapper {
  order: 1 !important;
  width: 64px !important;
  height: 64px !important;
  min-width: 64px !important;
  min-height: 64px !important;
  background: rgba(255, 0, 116, 0.12) !important;
  backdrop-filter: blur(8px) !important;
  -webkit-backdrop-filter: blur(8px) !important;
  border: 2px solid rgba(255, 0, 116, 0.4) !important;
  border-radius: 50% !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  margin-bottom: 20px !important;
  transition: all 0.3s ease !important;
  flex-shrink: 0 !important;
}

.content-card.locked .locked-content-wrapper:hover .locked-icon-wrapper {
  background: rgba(255, 0, 116, 0.2) !important;
  border-color: rgba(255, 0, 116, 0.6) !important;
  transform: scale(1.05) !important;
}

.content-card.locked .locked-icon-svg {
  width: 28px !important;
  height: 28px !important;
  fill: #ff0074 !important;
  flex-shrink: 0 !important;
}

/* Label text - Second */
.content-card.locked .locked-label {
  order: 2 !important;
  color: rgba(255, 255, 255, 0.95) !important;
  font-size: 16px !important;
  font-weight: 500 !important;
  margin: 0 0 20px 0 !important;
  padding: 0 !important;
  letter-spacing: 0.01em !important;
  line-height: 1.3 !important;
}

/* Action button - Third */
.content-card.locked .locked-btn {
  order: 3 !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  gap: 8px !important;
  padding: 12px 28px !important;
  border-radius: 100px !important;
  font-weight: 600 !important;
  font-size: 14px !important;
  text-decoration: none !important;
  transition: all 0.25s cubic-bezier(0.4, 0, 0.2, 1) !important;
  border: none !important;
  cursor: pointer !important;
  background: linear-gradient(135deg, #ff0074 0%, #ff2d8a 100%) !important;
  color: white !important;
  box-shadow: 0 4px 20px rgba(255, 0, 116, 0.35) !important;
  letter-spacing: 0.02em !important;
}

.content-card.locked .locked-btn:hover {
  transform: translateY(-2px) !important;
  box-shadow: 0 8px 28px rgba(255, 0, 116, 0.45) !important;
  background: linear-gradient(135deg, #ff1a82 0%, #ff4095 100%) !important;
}

.content-card.locked .locked-btn:active {
  transform: translateY(0) !important;
  box-shadow: 0 2px 12px rgba(255, 0, 116, 0.4) !important;
}

.content-card.locked .locked-btn svg {
  width: 16px !important;
  height: 16px !important;
  flex-shrink: 0 !important;
  opacity: 0.9 !important;
}

/* ========== RESPONSIVE ========== */
@media (max-width: 768px) {
  .content-card.locked .locked-content-wrapper {
    aspect-ratio: 1 / 1 !important;
    min-height: 240px !important;
    max-height: 340px !important;
  }

  .content-card.locked .locked-icon-wrapper {
    width: 56px !important;
    height: 56px !important;
    min-width: 56px !important;
    min-height: 56px !important;
    margin-bottom: 16px !important;
  }

  .content-card.locked .locked-icon-svg {
    width: 24px !important;
    height: 24px !important;
  }

  .content-card.locked .locked-label {
    font-size: 14px !important;
    margin-bottom: 16px !important;
  }

  .content-card.locked .locked-btn {
    padding: 11px 24px !important;
    font-size: 13px !important;
  }

  .play-button {
    width: 48px;
    height: 48px;
  }

  .content-card:hover .play-button {
    width: 64px;
    height: 64px;
  }
}

@media (max-width: 480px) {
  .content-card.locked .locked-content-wrapper {
    min-height: 200px !important;
    max-height: 300px !important;
  }

  .content-card.locked .locked-cta {
    padding: 24px 20px !important;
  }

  .content-card.locked .locked-icon-wrapper {
    width: 50px !important;
    height: 50px !important;
    min-width: 50px !important;
    min-height: 50px !important;
    margin-bottom: 14px !important;
  }

  .content-card.locked .locked-icon-svg {
    width: 22px !important;
    height: 22px !important;
  }

  .content-card.locked .locked-label {
    font-size: 13px !important;
    margin-bottom: 14px !important;
  }

  .content-card.locked .locked-btn {
    padding: 10px 22px !important;
    font-size: 12px !important;
    gap: 6px !important;
  }

  .content-card.locked .locked-btn svg {
    width: 14px !important;
    height: 14px !important;
  }
}
</style>

  </div>
  
  <!-- Footer del post -->
  <div class="post-footer">
      <p class="post-description">Test video 2</p>
    
    <div class="post-actions">


        <a class="action-btn toggle" data-turbo="false" aria-label="Inicia sesión para dar me gusta" href="#enter-modal">
          <svg fill="currentColor" viewBox="0 0 24 24"><path d="M12 21.35l-1.45-1.32C5.4 15.36 2 12.28 2 8.5 2 5.42 4.42 3 7.5 3c1.74 0 3.41.81 4.5 2.09C13.09 3.81 14.76 3 16.5 3 19.58 3 22 5.42 22 8.5c0 3.78-3.4 6.86-8.55 11.54L12 21.35z"/></svg>
          <span>3</span>
</a>
        <a class="action-btn toggle" data-turbo="false" aria-label="Inicia sesión para comentar" href="#enter-modal">
          <svg fill="currentColor" viewBox="0 0 24 24"><path d="M21.99 4c0-1.1-.89-2-1.99-2H4c-1.1 0-2 .9-2 2v12c0 1.1.9 2 2 2h14l4 4-.01-18zM18 14H6v-2h12v2zm0-3H6V9h12v2zm0-3H6V6h12v2z"/></svg>
          <span>0</span>
</a>
        <a class="action-btn toggle" data-turbo="false" aria-label="Inicia sesión para compartir" href="#enter-modal">
          <svg fill="currentColor" viewBox="0 0 24 24"><path d="M18 16.08c-.76 0-1.44.3-1.96.77L8.91 12.7c.05-.23.09-.46.09-.7s-.04-.47-.09-.7l7.05-4.11c.54.5 1.25.81 2.04.81 1.66 0 3-1.34 3-3s-1.34-3-3-3-3 1.34-3 3c0 .24.04.47.09.7L8.04 9.81C7.5 9.31 6.79 9 6 9c-1.66 0-3 1.34-3 3s1.34 3 3 3c.79 0 1.5-.31 2.04-.81l7.12 4.16c-.05.21-.08.43-.08.65 0 1.61 1.31 2.92 2.92 2.92 1.61 0 2.92-1.31 2.92-2.92s-1.31-2.92-2.92-2.92z"/></svg>
</a>      
      <div style="flex: 1;"></div>

        <span class="content-access-badge content-access-badge--locked" aria-label="Solo para suscriptores">
          <svg width="11" height="11" viewBox="0 0 24 24" fill="currentColor" aria-hidden="true">
            <path d="M18 8h-1V6c0-2.76-2.24-5-5-5S7 3.24 7 6v2H6c-1.1 0-2 .9-2 2v10c0 1.1.9 2 2 2h12c1.1 0 2-.9 2-2V10c0-1.1-.9-2-2-2zM9 6c0-1.66 1.34-3 3-3s3 1.34 3 3v2H9V6z"/>
          </svg>
        </span>
    </div>
  </div>
</div>
</template></turbo-stream>  <turbo-stream action="append" target="for-you-posts"><template>
    <div class="content-post ">

  <!-- Header del post -->
  <div class="post-header">
      <img class="post-avatar" alt="mamasutra" width="200" height="200" loading="lazy" src="https://www.exotha.com/rails/active_storage/blobs/redirect/eyJfcmFpbHMiOnsiZGF0YSI6MSwicHVyIjoiYmxvYl9pZCJ9fQ==--5871e50b79f1e46d8a84a6c1a7153a25e462bd6f/Captura%20desde%202024-07-29%2021-06-54.png" />

    <div class="post-info">
      <a class="post-creator" href="/@mamasutra">mamasutra</a>
      <span class="post-time">2 meses ago</span>
    </div>

    <div class="post-menu" data-controller="dropdown share-link">
      <button class="post-menu-btn" data-action="click->dropdown#toggle" aria-label="Post options">
        <svg width="20" height="20" fill="currentColor" viewBox="0 0 24 24">
          <path d="M12 8c1.1 0 2-.9 2-2s-.9-2-2-2-2 .9-2 2 .9 2 2 2zm0 2c-1.1 0-2 .9-2 2s.9 2 2 2 2-.9 2-2-.9-2-2-2zm0 6c-1.1 0-2 .9-2 2s.9 2 2 2 2-.9 2-2-.9-2-2-2z"/>
        </svg>
      </button>
      <div class="post-menu-dropdown" data-dropdown-target="menu">
        <button class="post-menu-item"
                data-action="click->share-link#copy"
                data-url="https://www.exotha.com/@mamasutra/content/10">
          <svg width="16" height="16" fill="none" stroke="currentColor" stroke-width="2" viewBox="0 0 24 24">
            <path d="M10 13a5 5 0 0 0 7.54.54l3-3a5 5 0 0 0-7.07-7.07l-1.72 1.71"/>
            <path d="M14 11a5 5 0 0 0-7.54-.54l-3 3a5 5 0 0 0 7.07 7.07l1.71-1.71"/>
          </svg>
          Copiar link
        </button>
      </div>
    </div>
  </div>
  
  <!-- Media del post -->
  <div class="post-media">
    
<div class="content-card ">

    <!-- Contenido Accesible -->
    <a href="/@mamasutra/content/10">
      <div class="content-media">
            <img class="content-image" loading="lazy" src="https://www.exotha.com/rails/active_storage/blobs/redirect/eyJfcmFpbHMiOnsiZGF0YSI6NDksInB1ciI6ImJsb2JfaWQifX0=--917b10dc80f5b640434de1afe9a7694d59c01531/1000248752.jpg" />

      </div>
</a>
</div>

<style>
/* ========================================
   CONTENT CARD - EXOTHA FEED
   Luxury minimal dark theme
   ======================================== */

/* Base content card */
.content-card {
  display: block;
  width: 100%;
}

/* ========== UNLOCKED CONTENT ========== */
.content-card > a {
  display: block;
  width: 100%;
}

.content-media {
  position: relative;
  width: 100%;
  line-height: 0;
  font-size: 0;
}

.content-image {
  display: block;
  width: 100%;
  height: auto;
  max-height: 600px;
  object-fit: contain;
}

video.content-image {
  background: #000;
}

/* Video play overlay */
.video-play-overlay {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  z-index: 10;
  opacity: 1;
  transition: opacity 0.3s ease;
  pointer-events: none;
}

.play-button {
  width: 56px;
  height: 56px;
  background: rgba(0, 0, 0, 0.45);
  backdrop-filter: blur(4px);
  -webkit-backdrop-filter: blur(4px);
  border: 2px solid rgba(255, 255, 255, 0.25);
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  box-shadow: 0 4px 16px rgba(0, 0, 0, 0.3);
  transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
}

.play-button svg {
  margin-left: 3px;
  opacity: 0.85;
  filter: drop-shadow(0 2px 4px rgba(0, 0, 0, 0.3));
  transition: opacity 0.3s ease;
}

.content-card:hover .play-button {
  width: 72px;
  height: 72px;
  background: rgba(255, 0, 116, 0.92);
  border: 3px solid rgba(255, 255, 255, 0.95);
  box-shadow: 0 8px 32px rgba(255, 0, 116, 0.5);
  transform: scale(1.08);
}

.content-card:hover .play-button svg {
  opacity: 1;
}

/* Gallery badge */
.gallery-type-badge {
  position: absolute;
  top: 12px;
  right: 12px;
  background: rgba(0, 0, 0, 0.85);
  backdrop-filter: blur(12px);
  -webkit-backdrop-filter: blur(12px);
  color: #fff;
  padding: 8px 14px;
  border-radius: 10px;
  display: flex;
  align-items: center;
  gap: 8px;
  font-size: 12px;
  font-weight: 600;
  border: 1px solid rgba(255, 255, 255, 0.12);
  z-index: 15;
}

.gallery-badge-count {
  background: linear-gradient(135deg, #ff0074 0%, #ff4081 100%);
  padding: 3px 10px;
  border-radius: 12px;
  font-size: 11px;
  font-weight: 700;
}

.gallery-badge-details {
  display: flex;
  align-items: center;
  gap: 4px;
  font-size: 11px;
  color: rgba(255, 255, 255, 0.75);
}

/* ========== LOCKED CONTENT ========== */
.content-card.locked {
  display: block;
  width: 100%;
}

.locked-content-wrapper {
  position: relative;
  width: 100%;
  aspect-ratio: 4 / 5;
  min-height: 280px;
  max-height: 400px;
  overflow: hidden;
  background: #0d0d0d;
  border-radius: 4px;
}

.locked-backdrop {
  position: absolute;
  inset: 0;
  overflow: hidden;
}

.locked-blur-image {
  position: absolute;
  inset: -10px;
  /* Premium gradient — visible fallback when blur image unavailable */
  background-color: #0c0c0c;
  background-image:
    radial-gradient(ellipse 180% 120% at 0% 100%, rgba(255, 0, 116, 0.35) 0%, transparent 50%),
    radial-gradient(ellipse 150% 100% at 100% 0%, rgba(255, 61, 154, 0.25) 0%, transparent 45%),
    radial-gradient(circle at 50% 40%, rgba(255, 0, 116, 0.15) 0%, transparent 55%),
    linear-gradient(165deg, #0c0c0c 0%, #1a0a14 30%, #250e1c 50%, #1a0a14 70%, #0c0c0c 100%);
  background-size: cover;
  background-position: center;
}

/* Refined overlay with subtle gradient */
.locked-backdrop::after {
  content: '';
  position: absolute;
  inset: 0;
  background:
    radial-gradient(ellipse 80% 60% at 50% 50%, transparent 0%, rgba(0, 0, 0, 0.25) 100%),
    linear-gradient(180deg, rgba(0, 0, 0, 0.05) 0%, rgba(0, 0, 0, 0.15) 100%);
  pointer-events: none;
}

/* Centered CTA - Refined layout */
.content-card.locked .locked-cta {
  position: absolute !important;
  inset: 0 !important;
  display: flex !important;
  flex-direction: column !important;
  align-items: center !important;
  justify-content: center !important;
  z-index: 10 !important;
  padding: 32px 24px !important;
  text-align: center !important;
  gap: 0 !important;
}

/* Lock icon wrapper */
.content-card.locked .locked-icon-wrapper {
  order: 1 !important;
  width: 64px !important;
  height: 64px !important;
  min-width: 64px !important;
  min-height: 64px !important;
  background: rgba(255, 0, 116, 0.12) !important;
  backdrop-filter: blur(8px) !important;
  -webkit-backdrop-filter: blur(8px) !important;
  border: 2px solid rgba(255, 0, 116, 0.4) !important;
  border-radius: 50% !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  margin-bottom: 20px !important;
  transition: all 0.3s ease !important;
  flex-shrink: 0 !important;
}

.content-card.locked .locked-content-wrapper:hover .locked-icon-wrapper {
  background: rgba(255, 0, 116, 0.2) !important;
  border-color: rgba(255, 0, 116, 0.6) !important;
  transform: scale(1.05) !important;
}

.content-card.locked .locked-icon-svg {
  width: 28px !important;
  height: 28px !important;
  fill: #ff0074 !important;
  flex-shrink: 0 !important;
}

/* Label text - Second */
.content-card.locked .locked-label {
  order: 2 !important;
  color: rgba(255, 255, 255, 0.95) !important;
  font-size: 16px !important;
  font-weight: 500 !important;
  margin: 0 0 20px 0 !important;
  padding: 0 !important;
  letter-spacing: 0.01em !important;
  line-height: 1.3 !important;
}

/* Action button - Third */
.content-card.locked .locked-btn {
  order: 3 !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  gap: 8px !important;
  padding: 12px 28px !important;
  border-radius: 100px !important;
  font-weight: 600 !important;
  font-size: 14px !important;
  text-decoration: none !important;
  transition: all 0.25s cubic-bezier(0.4, 0, 0.2, 1) !important;
  border: none !important;
  cursor: pointer !important;
  background: linear-gradient(135deg, #ff0074 0%, #ff2d8a 100%) !important;
  color: white !important;
  box-shadow: 0 4px 20px rgba(255, 0, 116, 0.35) !important;
  letter-spacing: 0.02em !important;
}

.content-card.locked .locked-btn:hover {
  transform: translateY(-2px) !important;
  box-shadow: 0 8px 28px rgba(255, 0, 116, 0.45) !important;
  background: linear-gradient(135deg, #ff1a82 0%, #ff4095 100%) !important;
}

.content-card.locked .locked-btn:active {
  transform: translateY(0) !important;
  box-shadow: 0 2px 12px rgba(255, 0, 116, 0.4) !important;
}

.content-card.locked .locked-btn svg {
  width: 16px !important;
  height: 16px !important;
  flex-shrink: 0 !important;
  opacity: 0.9 !important;
}

/* ========== RESPONSIVE ========== */
@media (max-width: 768px) {
  .content-card.locked .locked-content-wrapper {
    aspect-ratio: 1 / 1 !important;
    min-height: 240px !important;
    max-height: 340px !important;
  }

  .content-card.locked .locked-icon-wrapper {
    width: 56px !important;
    height: 56px !important;
    min-width: 56px !important;
    min-height: 56px !important;
    margin-bottom: 16px !important;
  }

  .content-card.locked .locked-icon-svg {
    width: 24px !important;
    height: 24px !important;
  }

  .content-card.locked .locked-label {
    font-size: 14px !important;
    margin-bottom: 16px !important;
  }

  .content-card.locked .locked-btn {
    padding: 11px 24px !important;
    font-size: 13px !important;
  }

  .play-button {
    width: 48px;
    height: 48px;
  }

  .content-card:hover .play-button {
    width: 64px;
    height: 64px;
  }
}

@media (max-width: 480px) {
  .content-card.locked .locked-content-wrapper {
    min-height: 200px !important;
    max-height: 300px !important;
  }

  .content-card.locked .locked-cta {
    padding: 24px 20px !important;
  }

  .content-card.locked .locked-icon-wrapper {
    width: 50px !important;
    height: 50px !important;
    min-width: 50px !important;
    min-height: 50px !important;
    margin-bottom: 14px !important;
  }

  .content-card.locked .locked-icon-svg {
    width: 22px !important;
    height: 22px !important;
  }

  .content-card.locked .locked-label {
    font-size: 13px !important;
    margin-bottom: 14px !important;
  }

  .content-card.locked .locked-btn {
    padding: 10px 22px !important;
    font-size: 12px !important;
    gap: 6px !important;
  }

  .content-card.locked .locked-btn svg {
    width: 14px !important;
    height: 14px !important;
  }
}
</style>

  </div>
  
  <!-- Footer del post -->
  <div class="post-footer">
      <p class="post-description">Tets nuevo</p>
    
    <div class="post-actions">


        <a class="action-btn toggle" data-turbo="false" aria-label="Inicia sesión para dar me gusta" href="#enter-modal">
          <svg fill="currentColor" viewBox="0 0 24 24"><path d="M12 21.35l-1.45-1.32C5.4 15.36 2 12.28 2 8.5 2 5.42 4.42 3 7.5 3c1.74 0 3.41.81 4.5 2.09C13.09 3.81 14.76 3 16.5 3 19.58 3 22 5.42 22 8.5c0 3.78-3.4 6.86-8.55 11.54L12 21.35z"/></svg>
          <span>2</span>
</a>
        <a class="action-btn toggle" data-turbo="false" aria-label="Inicia sesión para comentar" href="#enter-modal">
          <svg fill="currentColor" viewBox="0 0 24 24"><path d="M21.99 4c0-1.1-.89-2-1.99-2H4c-1.1 0-2 .9-2 2v12c0 1.1.9 2 2 2h14l4 4-.01-18zM18 14H6v-2h12v2zm0-3H6V9h12v2zm0-3H6V6h12v2z"/></svg>
          <span>0</span>
</a>
        <a class="action-btn toggle" data-turbo="false" aria-label="Inicia sesión para compartir" href="#enter-modal">
          <svg fill="currentColor" viewBox="0 0 24 24"><path d="M18 16.08c-.76 0-1.44.3-1.96.77L8.91 12.7c.05-.23.09-.46.09-.7s-.04-.47-.09-.7l7.05-4.11c.54.5 1.25.81 2.04.81 1.66 0 3-1.34 3-3s-1.34-3-3-3-3 1.34-3 3c0 .24.04.47.09.7L8.04 9.81C7.5 9.31 6.79 9 6 9c-1.66 0-3 1.34-3 3s1.34 3 3 3c.79 0 1.5-.31 2.04-.81l7.12 4.16c-.05.21-.08.43-.08.65 0 1.61 1.31 2.92 2.92 2.92 1.61 0 2.92-1.31 2.92-2.92s-1.31-2.92-2.92-2.92z"/></svg>
</a>      
      <div style="flex: 1;"></div>

        <span class="content-access-badge content-access-badge--free">
          <svg width="11" height="11" viewBox="0 0 24 24" fill="currentColor" aria-hidden="true">
            <path d="M18 8h-1V6c0-2.76-2.24-5-5-5S7 3.24 7 6h2c0-1.66 1.34-3 3-3s3 1.34 3 3v2H6c-1.1 0-2 .9-2 2v10c0 1.1.9 2 2 2h12c1.1 0 2-.9 2-2V10c0-1.1-.9-2-2-2z"/>
          </svg>
          GRATIS
        </span>
    </div>
  </div>
</div>
</template></turbo-stream>  <turbo-stream action="append" target="for-you-posts"><template>
    <div class="content-post ">

  <!-- Header del post -->
  <div class="post-header">
      <img class="post-avatar" alt="mamasutra" width="200" height="200" loading="lazy" src="https://www.exotha.com/rails/active_storage/blobs/redirect/eyJfcmFpbHMiOnsiZGF0YSI6MSwicHVyIjoiYmxvYl9pZCJ9fQ==--5871e50b79f1e46d8a84a6c1a7153a25e462bd6f/Captura%20desde%202024-07-29%2021-06-54.png" />

    <div class="post-info">
      <a class="post-creator" href="/@mamasutra">mamasutra</a>
      <span class="post-time">17 días ago</span>
    </div>

    <div class="post-menu" data-controller="dropdown share-link">
      <button class="post-menu-btn" data-action="click->dropdown#toggle" aria-label="Post options">
        <svg width="20" height="20" fill="currentColor" viewBox="0 0 24 24">
          <path d="M12 8c1.1 0 2-.9 2-2s-.9-2-2-2-2 .9-2 2 .9 2 2 2zm0 2c-1.1 0-2 .9-2 2s.9 2 2 2 2-.9 2-2-.9-2-2-2zm0 6c-1.1 0-2 .9-2 2s.9 2 2 2 2-.9 2-2-.9-2-2-2z"/>
        </svg>
      </button>
      <div class="post-menu-dropdown" data-dropdown-target="menu">
        <button class="post-menu-item"
                data-action="click->share-link#copy"
                data-url="https://www.exotha.com/@mamasutra/content/22">
          <svg width="16" height="16" fill="none" stroke="currentColor" stroke-width="2" viewBox="0 0 24 24">
            <path d="M10 13a5 5 0 0 0 7.54.54l3-3a5 5 0 0 0-7.07-7.07l-1.72 1.71"/>
            <path d="M14 11a5 5 0 0 0-7.54-.54l-3 3a5 5 0 0 0 7.07 7.07l1.71-1.71"/>
          </svg>
          Copiar link
        </button>
      </div>
    </div>
  </div>
  
  <!-- Media del post -->
  <div class="post-media">
    
<div class="content-card locked">

    <!-- Contenido Bloqueado con Blur Server-Side -->
    <div class="locked-content-wrapper">
      <div class="locked-backdrop">
        <div class="locked-blur-image"
               style="background-image: url(https://www.exotha.com/rails/active_storage/representations/redirect/eyJfcmFpbHMiOnsiZGF0YSI6MTU5LCJwdXIiOiJibG9iX2lkIn19--5947d39a3125add2a632b24f5bbb1e481cd4c638/eyJfcmFpbHMiOnsiZGF0YSI6eyJmb3JtYXQiOiJqcGVnIiwicmVzaXplX3RvX2xpbWl0IjpbNjAwLDYwMF0sImdhdXNzYmx1ciI6OCwic2F2ZXIiOnsicXVhbGl0eSI6NTB9fSwicHVyIjoidmFyaWF0aW9uIn19--3e590ec4be28c7fe8859bb6d7b9eb78d969237a1/thumb_22.jpg);"
             ></div>
      </div>


      <div class="locked-cta">
        <!-- Lock Icon -->
        <div class="locked-icon-wrapper">
          <svg class="locked-icon-svg" viewBox="0 0 24 24" fill="#ff0074">
            <path d="M18 8h-1V6c0-2.76-2.24-5-5-5S7 3.24 7 6v2H6c-1.1 0-2 .9-2 2v10c0 1.1.9 2 2 2h12c1.1 0 2-.9 2-2V10c0-1.1-.9-2-2-2zm-6 9c-1.1 0-2-.9-2-2s.9-2 2-2 2 .9 2 2-.9 2-2 2zm3.1-9H8.9V6c0-1.71 1.39-3.1 3.1-3.1 1.71 0 3.1 1.39 3.1 3.1v2z"/>
          </svg>
        </div>

        <!-- Label -->
          <p class="locked-label">Desbloquea este contenido</p>
            <a class="locked-btn toggle" href="#enter-modal">
              <svg width="20" height="20" fill="currentColor" viewBox="0 0 24 24">
                <path d="M12 17c1.1 0 2-.9 2-2s-.9-2-2-2-2 .9-2 2 .9 2 2 2zm6-9h-1V6c0-2.76-2.24-5-5-5S7 3.24 7 6h1.9c0-1.71 1.39-3.1 3.1-3.1 1.71 0 3.1 1.39 3.1 3.1v2H6c-1.1 0-2 .9-2 2v10c0 1.1.9 2 2 2h12c1.1 0 2-.9 2-2V10c0-1.1-.9-2-2-2zm0 12H6V10h12v10z"/>
              </svg>
              <span>Unlock 55,00 $</span>
</a>      </div>
    </div>
</div>

<style>
/* ========================================
   CONTENT CARD - EXOTHA FEED
   Luxury minimal dark theme
   ======================================== */

/* Base content card */
.content-card {
  display: block;
  width: 100%;
}

/* ========== UNLOCKED CONTENT ========== */
.content-card > a {
  display: block;
  width: 100%;
}

.content-media {
  position: relative;
  width: 100%;
  line-height: 0;
  font-size: 0;
}

.content-image {
  display: block;
  width: 100%;
  height: auto;
  max-height: 600px;
  object-fit: contain;
}

video.content-image {
  background: #000;
}

/* Video play overlay */
.video-play-overlay {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  z-index: 10;
  opacity: 1;
  transition: opacity 0.3s ease;
  pointer-events: none;
}

.play-button {
  width: 56px;
  height: 56px;
  background: rgba(0, 0, 0, 0.45);
  backdrop-filter: blur(4px);
  -webkit-backdrop-filter: blur(4px);
  border: 2px solid rgba(255, 255, 255, 0.25);
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  box-shadow: 0 4px 16px rgba(0, 0, 0, 0.3);
  transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
}

.play-button svg {
  margin-left: 3px;
  opacity: 0.85;
  filter: drop-shadow(0 2px 4px rgba(0, 0, 0, 0.3));
  transition: opacity 0.3s ease;
}

.content-card:hover .play-button {
  width: 72px;
  height: 72px;
  background: rgba(255, 0, 116, 0.92);
  border: 3px solid rgba(255, 255, 255, 0.95);
  box-shadow: 0 8px 32px rgba(255, 0, 116, 0.5);
  transform: scale(1.08);
}

.content-card:hover .play-button svg {
  opacity: 1;
}

/* Gallery badge */
.gallery-type-badge {
  position: absolute;
  top: 12px;
  right: 12px;
  background: rgba(0, 0, 0, 0.85);
  backdrop-filter: blur(12px);
  -webkit-backdrop-filter: blur(12px);
  color: #fff;
  padding: 8px 14px;
  border-radius: 10px;
  display: flex;
  align-items: center;
  gap: 8px;
  font-size: 12px;
  font-weight: 600;
  border: 1px solid rgba(255, 255, 255, 0.12);
  z-index: 15;
}

.gallery-badge-count {
  background: linear-gradient(135deg, #ff0074 0%, #ff4081 100%);
  padding: 3px 10px;
  border-radius: 12px;
  font-size: 11px;
  font-weight: 700;
}

.gallery-badge-details {
  display: flex;
  align-items: center;
  gap: 4px;
  font-size: 11px;
  color: rgba(255, 255, 255, 0.75);
}

/* ========== LOCKED CONTENT ========== */
.content-card.locked {
  display: block;
  width: 100%;
}

.locked-content-wrapper {
  position: relative;
  width: 100%;
  aspect-ratio: 4 / 5;
  min-height: 280px;
  max-height: 400px;
  overflow: hidden;
  background: #0d0d0d;
  border-radius: 4px;
}

.locked-backdrop {
  position: absolute;
  inset: 0;
  overflow: hidden;
}

.locked-blur-image {
  position: absolute;
  inset: -10px;
  /* Premium gradient — visible fallback when blur image unavailable */
  background-color: #0c0c0c;
  background-image:
    radial-gradient(ellipse 180% 120% at 0% 100%, rgba(255, 0, 116, 0.35) 0%, transparent 50%),
    radial-gradient(ellipse 150% 100% at 100% 0%, rgba(255, 61, 154, 0.25) 0%, transparent 45%),
    radial-gradient(circle at 50% 40%, rgba(255, 0, 116, 0.15) 0%, transparent 55%),
    linear-gradient(165deg, #0c0c0c 0%, #1a0a14 30%, #250e1c 50%, #1a0a14 70%, #0c0c0c 100%);
  background-size: cover;
  background-position: center;
}

/* Refined overlay with subtle gradient */
.locked-backdrop::after {
  content: '';
  position: absolute;
  inset: 0;
  background:
    radial-gradient(ellipse 80% 60% at 50% 50%, transparent 0%, rgba(0, 0, 0, 0.25) 100%),
    linear-gradient(180deg, rgba(0, 0, 0, 0.05) 0%, rgba(0, 0, 0, 0.15) 100%);
  pointer-events: none;
}

/* Centered CTA - Refined layout */
.content-card.locked .locked-cta {
  position: absolute !important;
  inset: 0 !important;
  display: flex !important;
  flex-direction: column !important;
  align-items: center !important;
  justify-content: center !important;
  z-index: 10 !important;
  padding: 32px 24px !important;
  text-align: center !important;
  gap: 0 !important;
}

/* Lock icon wrapper */
.content-card.locked .locked-icon-wrapper {
  order: 1 !important;
  width: 64px !important;
  height: 64px !important;
  min-width: 64px !important;
  min-height: 64px !important;
  background: rgba(255, 0, 116, 0.12) !important;
  backdrop-filter: blur(8px) !important;
  -webkit-backdrop-filter: blur(8px) !important;
  border: 2px solid rgba(255, 0, 116, 0.4) !important;
  border-radius: 50% !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  margin-bottom: 20px !important;
  transition: all 0.3s ease !important;
  flex-shrink: 0 !important;
}

.content-card.locked .locked-content-wrapper:hover .locked-icon-wrapper {
  background: rgba(255, 0, 116, 0.2) !important;
  border-color: rgba(255, 0, 116, 0.6) !important;
  transform: scale(1.05) !important;
}

.content-card.locked .locked-icon-svg {
  width: 28px !important;
  height: 28px !important;
  fill: #ff0074 !important;
  flex-shrink: 0 !important;
}

/* Label text - Second */
.content-card.locked .locked-label {
  order: 2 !important;
  color: rgba(255, 255, 255, 0.95) !important;
  font-size: 16px !important;
  font-weight: 500 !important;
  margin: 0 0 20px 0 !important;
  padding: 0 !important;
  letter-spacing: 0.01em !important;
  line-height: 1.3 !important;
}

/* Action button - Third */
.content-card.locked .locked-btn {
  order: 3 !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  gap: 8px !important;
  padding: 12px 28px !important;
  border-radius: 100px !important;
  font-weight: 600 !important;
  font-size: 14px !important;
  text-decoration: none !important;
  transition: all 0.25s cubic-bezier(0.4, 0, 0.2, 1) !important;
  border: none !important;
  cursor: pointer !important;
  background: linear-gradient(135deg, #ff0074 0%, #ff2d8a 100%) !important;
  color: white !important;
  box-shadow: 0 4px 20px rgba(255, 0, 116, 0.35) !important;
  letter-spacing: 0.02em !important;
}

.content-card.locked .locked-btn:hover {
  transform: translateY(-2px) !important;
  box-shadow: 0 8px 28px rgba(255, 0, 116, 0.45) !important;
  background: linear-gradient(135deg, #ff1a82 0%, #ff4095 100%) !important;
}

.content-card.locked .locked-btn:active {
  transform: translateY(0) !important;
  box-shadow: 0 2px 12px rgba(255, 0, 116, 0.4) !important;
}

.content-card.locked .locked-btn svg {
  width: 16px !important;
  height: 16px !important;
  flex-shrink: 0 !important;
  opacity: 0.9 !important;
}

/* ========== RESPONSIVE ========== */
@media (max-width: 768px) {
  .content-card.locked .locked-content-wrapper {
    aspect-ratio: 1 / 1 !important;
    min-height: 240px !important;
    max-height: 340px !important;
  }

  .content-card.locked .locked-icon-wrapper {
    width: 56px !important;
    height: 56px !important;
    min-width: 56px !important;
    min-height: 56px !important;
    margin-bottom: 16px !important;
  }

  .content-card.locked .locked-icon-svg {
    width: 24px !important;
    height: 24px !important;
  }

  .content-card.locked .locked-label {
    font-size: 14px !important;
    margin-bottom: 16px !important;
  }

  .content-card.locked .locked-btn {
    padding: 11px 24px !important;
    font-size: 13px !important;
  }

  .play-button {
    width: 48px;
    height: 48px;
  }

  .content-card:hover .play-button {
    width: 64px;
    height: 64px;
  }
}

@media (max-width: 480px) {
  .content-card.locked .locked-content-wrapper {
    min-height: 200px !important;
    max-height: 300px !important;
  }

  .content-card.locked .locked-cta {
    padding: 24px 20px !important;
  }

  .content-card.locked .locked-icon-wrapper {
    width: 50px !important;
    height: 50px !important;
    min-width: 50px !important;
    min-height: 50px !important;
    margin-bottom: 14px !important;
  }

  .content-card.locked .locked-icon-svg {
    width: 22px !important;
    height: 22px !important;
  }

  .content-card.locked .locked-label {
    font-size: 13px !important;
    margin-bottom: 14px !important;
  }

  .content-card.locked .locked-btn {
    padding: 10px 22px !important;
    font-size: 12px !important;
    gap: 6px !important;
  }

  .content-card.locked .locked-btn svg {
    width: 14px !important;
    height: 14px !important;
  }
}
</style>

  </div>
  
  <!-- Footer del post -->
  <div class="post-footer">
      <p class="post-description">I miss you</p>
    
    <div class="post-actions">


        <a class="action-btn toggle" data-turbo="false" aria-label="Inicia sesión para dar me gusta" href="#enter-modal">
          <svg fill="currentColor" viewBox="0 0 24 24"><path d="M12 21.35l-1.45-1.32C5.4 15.36 2 12.28 2 8.5 2 5.42 4.42 3 7.5 3c1.74 0 3.41.81 4.5 2.09C13.09 3.81 14.76 3 16.5 3 19.58 3 22 5.42 22 8.5c0 3.78-3.4 6.86-8.55 11.54L12 21.35z"/></svg>
          <span>1</span>
</a>
        <a class="action-btn toggle" data-turbo="false" aria-label="Inicia sesión para comentar" href="#enter-modal">
          <svg fill="currentColor" viewBox="0 0 24 24"><path d="M21.99 4c0-1.1-.89-2-1.99-2H4c-1.1 0-2 .9-2 2v12c0 1.1.9 2 2 2h14l4 4-.01-18zM18 14H6v-2h12v2zm0-3H6V9h12v2zm0-3H6V6h12v2z"/></svg>
          <span>0</span>
</a>
        <a class="action-btn toggle" data-turbo="false" aria-label="Inicia sesión para compartir" href="#enter-modal">
          <svg fill="currentColor" viewBox="0 0 24 24"><path d="M18 16.08c-.76 0-1.44.3-1.96.77L8.91 12.7c.05-.23.09-.46.09-.7s-.04-.47-.09-.7l7.05-4.11c.54.5 1.25.81 2.04.81 1.66 0 3-1.34 3-3s-1.34-3-3-3-3 1.34-3 3c0 .24.04.47.09.7L8.04 9.81C7.5 9.31 6.79 9 6 9c-1.66 0-3 1.34-3 3s1.34 3 3 3c.79 0 1.5-.31 2.04-.81l7.12 4.16c-.05.21-.08.43-.08.65 0 1.61 1.31 2.92 2.92 2.92 1.61 0 2.92-1.31 2.92-2.92s-1.31-2.92-2.92-2.92z"/></svg>
</a>      
      <div style="flex: 1;"></div>

        <span class="content-access-badge content-access-badge--price">55,00 $</span>
    </div>
  </div>
</div>
</template></turbo-stream>  <turbo-stream action="append" target="for-you-posts"><template>
    <div class="content-post ">

  <!-- Header del post -->
  <div class="post-header">
      <img class="post-avatar" alt="mamasutra" width="200" height="200" loading="lazy" src="https://www.exotha.com/rails/active_storage/blobs/redirect/eyJfcmFpbHMiOnsiZGF0YSI6MSwicHVyIjoiYmxvYl9pZCJ9fQ==--5871e50b79f1e46d8a84a6c1a7153a25e462bd6f/Captura%20desde%202024-07-29%2021-06-54.png" />

    <div class="post-info">
      <a class="post-creator" href="/@mamasutra">mamasutra</a>
      <span class="post-time">2 meses ago</span>
    </div>

    <div class="post-menu" data-controller="dropdown share-link">
      <button class="post-menu-btn" data-action="click->dropdown#toggle" aria-label="Post options">
        <svg width="20" height="20" fill="currentColor" viewBox="0 0 24 24">
          <path d="M12 8c1.1 0 2-.9 2-2s-.9-2-2-2-2 .9-2 2 .9 2 2 2zm0 2c-1.1 0-2 .9-2 2s.9 2 2 2 2-.9 2-2-.9-2-2-2zm0 6c-1.1 0-2 .9-2 2s.9 2 2 2 2-.9 2-2-.9-2-2-2z"/>
        </svg>
      </button>
      <div class="post-menu-dropdown" data-dropdown-target="menu">
        <button class="post-menu-item"
                data-action="click->share-link#copy"
                data-url="https://www.exotha.com/@mamasutra/content/3">
          <svg width="16" height="16" fill="none" stroke="currentColor" stroke-width="2" viewBox="0 0 24 24">
            <path d="M10 13a5 5 0 0 0 7.54.54l3-3a5 5 0 0 0-7.07-7.07l-1.72 1.71"/>
            <path d="M14 11a5 5 0 0 0-7.54-.54l-3 3a5 5 0 0 0 7.07 7.07l1.71-1.71"/>
          </svg>
          Copiar link
        </button>
      </div>
    </div>
  </div>
  
  <!-- Media del post -->
  <div class="post-media">
    
<div class="content-card locked">

    <!-- Contenido Bloqueado con Blur Server-Side -->
    <div class="locked-content-wrapper">
      <div class="locked-backdrop">
        <div class="locked-blur-image"
></div>
      </div>


      <div class="locked-cta">
        <!-- Lock Icon -->
        <div class="locked-icon-wrapper">
          <svg class="locked-icon-svg" viewBox="0 0 24 24" fill="#ff0074">
            <path d="M18 8h-1V6c0-2.76-2.24-5-5-5S7 3.24 7 6v2H6c-1.1 0-2 .9-2 2v10c0 1.1.9 2 2 2h12c1.1 0 2-.9 2-2V10c0-1.1-.9-2-2-2zm-6 9c-1.1 0-2-.9-2-2s.9-2 2-2 2 .9 2 2-.9 2-2 2zm3.1-9H8.9V6c0-1.71 1.39-3.1 3.1-3.1 1.71 0 3.1 1.39 3.1 3.1v2z"/>
          </svg>
        </div>

        <!-- Label -->
          <p class="locked-label">Suscríbete para desbloquear</p>
            <a class="locked-btn toggle" href="#enter-modal">
              <svg width="20" height="20" fill="currentColor" viewBox="0 0 24 24">
                <path d="M12 17.27L18.18 21l-1.64-7.03L22 9.24l-7.19-.61L12 2 9.19 8.63 2 9.24l5.46 4.73L5.82 21z"/>
              </svg>
              <span>Inicia sesión para suscribirte</span>
</a>      </div>
    </div>
</div>

<style>
/* ========================================
   CONTENT CARD - EXOTHA FEED
   Luxury minimal dark theme
   ======================================== */

/* Base content card */
.content-card {
  display: block;
  width: 100%;
}

/* ========== UNLOCKED CONTENT ========== */
.content-card > a {
  display: block;
  width: 100%;
}

.content-media {
  position: relative;
  width: 100%;
  line-height: 0;
  font-size: 0;
}

.content-image {
  display: block;
  width: 100%;
  height: auto;
  max-height: 600px;
  object-fit: contain;
}

video.content-image {
  background: #000;
}

/* Video play overlay */
.video-play-overlay {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  z-index: 10;
  opacity: 1;
  transition: opacity 0.3s ease;
  pointer-events: none;
}

.play-button {
  width: 56px;
  height: 56px;
  background: rgba(0, 0, 0, 0.45);
  backdrop-filter: blur(4px);
  -webkit-backdrop-filter: blur(4px);
  border: 2px solid rgba(255, 255, 255, 0.25);
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  box-shadow: 0 4px 16px rgba(0, 0, 0, 0.3);
  transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
}

.play-button svg {
  margin-left: 3px;
  opacity: 0.85;
  filter: drop-shadow(0 2px 4px rgba(0, 0, 0, 0.3));
  transition: opacity 0.3s ease;
}

.content-card:hover .play-button {
  width: 72px;
  height: 72px;
  background: rgba(255, 0, 116, 0.92);
  border: 3px solid rgba(255, 255, 255, 0.95);
  box-shadow: 0 8px 32px rgba(255, 0, 116, 0.5);
  transform: scale(1.08);
}

.content-card:hover .play-button svg {
  opacity: 1;
}

/* Gallery badge */
.gallery-type-badge {
  position: absolute;
  top: 12px;
  right: 12px;
  background: rgba(0, 0, 0, 0.85);
  backdrop-filter: blur(12px);
  -webkit-backdrop-filter: blur(12px);
  color: #fff;
  padding: 8px 14px;
  border-radius: 10px;
  display: flex;
  align-items: center;
  gap: 8px;
  font-size: 12px;
  font-weight: 600;
  border: 1px solid rgba(255, 255, 255, 0.12);
  z-index: 15;
}

.gallery-badge-count {
  background: linear-gradient(135deg, #ff0074 0%, #ff4081 100%);
  padding: 3px 10px;
  border-radius: 12px;
  font-size: 11px;
  font-weight: 700;
}

.gallery-badge-details {
  display: flex;
  align-items: center;
  gap: 4px;
  font-size: 11px;
  color: rgba(255, 255, 255, 0.75);
}

/* ========== LOCKED CONTENT ========== */
.content-card.locked {
  display: block;
  width: 100%;
}

.locked-content-wrapper {
  position: relative;
  width: 100%;
  aspect-ratio: 4 / 5;
  min-height: 280px;
  max-height: 400px;
  overflow: hidden;
  background: #0d0d0d;
  border-radius: 4px;
}

.locked-backdrop {
  position: absolute;
  inset: 0;
  overflow: hidden;
}

.locked-blur-image {
  position: absolute;
  inset: -10px;
  /* Premium gradient — visible fallback when blur image unavailable */
  background-color: #0c0c0c;
  background-image:
    radial-gradient(ellipse 180% 120% at 0% 100%, rgba(255, 0, 116, 0.35) 0%, transparent 50%),
    radial-gradient(ellipse 150% 100% at 100% 0%, rgba(255, 61, 154, 0.25) 0%, transparent 45%),
    radial-gradient(circle at 50% 40%, rgba(255, 0, 116, 0.15) 0%, transparent 55%),
    linear-gradient(165deg, #0c0c0c 0%, #1a0a14 30%, #250e1c 50%, #1a0a14 70%, #0c0c0c 100%);
  background-size: cover;
  background-position: center;
}

/* Refined overlay with subtle gradient */
.locked-backdrop::after {
  content: '';
  position: absolute;
  inset: 0;
  background:
    radial-gradient(ellipse 80% 60% at 50% 50%, transparent 0%, rgba(0, 0, 0, 0.25) 100%),
    linear-gradient(180deg, rgba(0, 0, 0, 0.05) 0%, rgba(0, 0, 0, 0.15) 100%);
  pointer-events: none;
}

/* Centered CTA - Refined layout */
.content-card.locked .locked-cta {
  position: absolute !important;
  inset: 0 !important;
  display: flex !important;
  flex-direction: column !important;
  align-items: center !important;
  justify-content: center !important;
  z-index: 10 !important;
  padding: 32px 24px !important;
  text-align: center !important;
  gap: 0 !important;
}

/* Lock icon wrapper */
.content-card.locked .locked-icon-wrapper {
  order: 1 !important;
  width: 64px !important;
  height: 64px !important;
  min-width: 64px !important;
  min-height: 64px !important;
  background: rgba(255, 0, 116, 0.12) !important;
  backdrop-filter: blur(8px) !important;
  -webkit-backdrop-filter: blur(8px) !important;
  border: 2px solid rgba(255, 0, 116, 0.4) !important;
  border-radius: 50% !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  margin-bottom: 20px !important;
  transition: all 0.3s ease !important;
  flex-shrink: 0 !important;
}

.content-card.locked .locked-content-wrapper:hover .locked-icon-wrapper {
  background: rgba(255, 0, 116, 0.2) !important;
  border-color: rgba(255, 0, 116, 0.6) !important;
  transform: scale(1.05) !important;
}

.content-card.locked .locked-icon-svg {
  width: 28px !important;
  height: 28px !important;
  fill: #ff0074 !important;
  flex-shrink: 0 !important;
}

/* Label text - Second */
.content-card.locked .locked-label {
  order: 2 !important;
  color: rgba(255, 255, 255, 0.95) !important;
  font-size: 16px !important;
  font-weight: 500 !important;
  margin: 0 0 20px 0 !important;
  padding: 0 !important;
  letter-spacing: 0.01em !important;
  line-height: 1.3 !important;
}

/* Action button - Third */
.content-card.locked .locked-btn {
  order: 3 !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  gap: 8px !important;
  padding: 12px 28px !important;
  border-radius: 100px !important;
  font-weight: 600 !important;
  font-size: 14px !important;
  text-decoration: none !important;
  transition: all 0.25s cubic-bezier(0.4, 0, 0.2, 1) !important;
  border: none !important;
  cursor: pointer !important;
  background: linear-gradient(135deg, #ff0074 0%, #ff2d8a 100%) !important;
  color: white !important;
  box-shadow: 0 4px 20px rgba(255, 0, 116, 0.35) !important;
  letter-spacing: 0.02em !important;
}

.content-card.locked .locked-btn:hover {
  transform: translateY(-2px) !important;
  box-shadow: 0 8px 28px rgba(255, 0, 116, 0.45) !important;
  background: linear-gradient(135deg, #ff1a82 0%, #ff4095 100%) !important;
}

.content-card.locked .locked-btn:active {
  transform: translateY(0) !important;
  box-shadow: 0 2px 12px rgba(255, 0, 116, 0.4) !important;
}

.content-card.locked .locked-btn svg {
  width: 16px !important;
  height: 16px !important;
  flex-shrink: 0 !important;
  opacity: 0.9 !important;
}

/* ========== RESPONSIVE ========== */
@media (max-width: 768px) {
  .content-card.locked .locked-content-wrapper {
    aspect-ratio: 1 / 1 !important;
    min-height: 240px !important;
    max-height: 340px !important;
  }

  .content-card.locked .locked-icon-wrapper {
    width: 56px !important;
    height: 56px !important;
    min-width: 56px !important;
    min-height: 56px !important;
    margin-bottom: 16px !important;
  }

  .content-card.locked .locked-icon-svg {
    width: 24px !important;
    height: 24px !important;
  }

  .content-card.locked .locked-label {
    font-size: 14px !important;
    margin-bottom: 16px !important;
  }

  .content-card.locked .locked-btn {
    padding: 11px 24px !important;
    font-size: 13px !important;
  }

  .play-button {
    width: 48px;
    height: 48px;
  }

  .content-card:hover .play-button {
    width: 64px;
    height: 64px;
  }
}

@media (max-width: 480px) {
  .content-card.locked .locked-content-wrapper {
    min-height: 200px !important;
    max-height: 300px !important;
  }

  .content-card.locked .locked-cta {
    padding: 24px 20px !important;
  }

  .content-card.locked .locked-icon-wrapper {
    width: 50px !important;
    height: 50px !important;
    min-width: 50px !important;
    min-height: 50px !important;
    margin-bottom: 14px !important;
  }

  .content-card.locked .locked-icon-svg {
    width: 22px !important;
    height: 22px !important;
  }

  .content-card.locked .locked-label {
    font-size: 13px !important;
    margin-bottom: 14px !important;
  }

  .content-card.locked .locked-btn {
    padding: 10px 22px !important;
    font-size: 12px !important;
    gap: 6px !important;
  }

  .content-card.locked .locked-btn svg {
    width: 14px !important;
    height: 14px !important;
  }
}
</style>

  </div>
  
  <!-- Footer del post -->
  <div class="post-footer">
      <p class="post-description">Test video</p>
    
    <div class="post-actions">


        <a class="action-btn toggle" data-turbo="false" aria-label="Inicia sesión para dar me gusta" href="#enter-modal">
          <svg fill="currentColor" viewBox="0 0 24 24"><path d="M12 21.35l-1.45-1.32C5.4 15.36 2 12.28 2 8.5 2 5.42 4.42 3 7.5 3c1.74 0 3.41.81 4.5 2.09C13.09 3.81 14.76 3 16.5 3 19.58 3 22 5.42 22 8.5c0 3.78-3.4 6.86-8.55 11.54L12 21.35z"/></svg>
          <span>1</span>
</a>
        <a class="action-btn toggle" data-turbo="false" aria-label="Inicia sesión para comentar" href="#enter-modal">
          <svg fill="currentColor" viewBox="0 0 24 24"><path d="M21.99 4c0-1.1-.89-2-1.99-2H4c-1.1 0-2 .9-2 2v12c0 1.1.9 2 2 2h14l4 4-.01-18zM18 14H6v-2h12v2zm0-3H6V9h12v2zm0-3H6V6h12v2z"/></svg>
          <span>1</span>
</a>
        <a class="action-btn toggle" data-turbo="false" aria-label="Inicia sesión para compartir" href="#enter-modal">
          <svg fill="currentColor" viewBox="0 0 24 24"><path d="M18 16.08c-.76 0-1.44.3-1.96.77L8.91 12.7c.05-.23.09-.46.09-.7s-.04-.47-.09-.7l7.05-4.11c.54.5 1.25.81 2.04.81 1.66 0 3-1.34 3-3s-1.34-3-3-3-3 1.34-3 3c0 .24.04.47.09.7L8.04 9.81C7.5 9.31 6.79 9 6 9c-1.66 0-3 1.34-3 3s1.34 3 3 3c.79 0 1.5-.31 2.04-.81l7.12 4.16c-.05.21-.08.43-.08.65 0 1.61 1.31 2.92 2.92 2.92 1.61 0 2.92-1.31 2.92-2.92s-1.31-2.92-2.92-2.92z"/></svg>
</a>      
      <div style="flex: 1;"></div>

        <span class="content-access-badge content-access-badge--locked" aria-label="Solo para suscriptores">
          <svg width="11" height="11" viewBox="0 0 24 24" fill="currentColor" aria-hidden="true">
            <path d="M18 8h-1V6c0-2.76-2.24-5-5-5S7 3.24 7 6v2H6c-1.1 0-2 .9-2 2v10c0 1.1.9 2 2 2h12c1.1 0 2-.9 2-2V10c0-1.1-.9-2-2-2zM9 6c0-1.66 1.34-3 3-3s3 1.34 3 3v2H9V6z"/>
          </svg>
        </span>
    </div>
  </div>
</div>
</template></turbo-stream>  <turbo-stream action="append" target="for-you-posts"><template>
    <div class="content-post ">

  <!-- Header del post -->
  <div class="post-header">
      <img class="post-avatar" alt="mamasutra" width="200" height="200" loading="lazy" src="https://www.exotha.com/rails/active_storage/blobs/redirect/eyJfcmFpbHMiOnsiZGF0YSI6MSwicHVyIjoiYmxvYl9pZCJ9fQ==--5871e50b79f1e46d8a84a6c1a7153a25e462bd6f/Captura%20desde%202024-07-29%2021-06-54.png" />

    <div class="post-info">
      <a class="post-creator" href="/@mamasutra">mamasutra</a>
      <span class="post-time">2 meses ago</span>
    </div>

    <div class="post-menu" data-controller="dropdown share-link">
      <button class="post-menu-btn" data-action="click->dropdown#toggle" aria-label="Post options">
        <svg width="20" height="20" fill="currentColor" viewBox="0 0 24 24">
          <path d="M12 8c1.1 0 2-.9 2-2s-.9-2-2-2-2 .9-2 2 .9 2 2 2zm0 2c-1.1 0-2 .9-2 2s.9 2 2 2 2-.9 2-2-.9-2-2-2zm0 6c-1.1 0-2 .9-2 2s.9 2 2 2 2-.9 2-2-.9-2-2-2z"/>
        </svg>
      </button>
      <div class="post-menu-dropdown" data-dropdown-target="menu">
        <button class="post-menu-item"
                data-action="click->share-link#copy"
                data-url="https://www.exotha.com/@mamasutra/content/6">
          <svg width="16" height="16" fill="none" stroke="currentColor" stroke-width="2" viewBox="0 0 24 24">
            <path d="M10 13a5 5 0 0 0 7.54.54l3-3a5 5 0 0 0-7.07-7.07l-1.72 1.71"/>
            <path d="M14 11a5 5 0 0 0-7.54-.54l-3 3a5 5 0 0 0 7.07 7.07l1.71-1.71"/>
          </svg>
          Copiar link
        </button>
      </div>
    </div>
  </div>
  
  <!-- Media del post -->
  <div class="post-media">
    
<div class="content-card locked">

    <!-- Contenido Bloqueado con Blur Server-Side -->
    <div class="locked-content-wrapper">
      <div class="locked-backdrop">
        <div class="locked-blur-image"
></div>
      </div>


      <div class="locked-cta">
        <!-- Lock Icon -->
        <div class="locked-icon-wrapper">
          <svg class="locked-icon-svg" viewBox="0 0 24 24" fill="#ff0074">
            <path d="M18 8h-1V6c0-2.76-2.24-5-5-5S7 3.24 7 6v2H6c-1.1 0-2 .9-2 2v10c0 1.1.9 2 2 2h12c1.1 0 2-.9 2-2V10c0-1.1-.9-2-2-2zm-6 9c-1.1 0-2-.9-2-2s.9-2 2-2 2 .9 2 2-.9 2-2 2zm3.1-9H8.9V6c0-1.71 1.39-3.1 3.1-3.1 1.71 0 3.1 1.39 3.1 3.1v2z"/>
          </svg>
        </div>

        <!-- Label -->
          <p class="locked-label">Suscríbete para desbloquear</p>
            <a class="locked-btn toggle" href="#enter-modal">
              <svg width="20" height="20" fill="currentColor" viewBox="0 0 24 24">
                <path d="M12 17.27L18.18 21l-1.64-7.03L22 9.24l-7.19-.61L12 2 9.19 8.63 2 9.24l5.46 4.73L5.82 21z"/>
              </svg>
              <span>Inicia sesión para suscribirte</span>
</a>      </div>
    </div>
</div>

<style>
/* ========================================
   CONTENT CARD - EXOTHA FEED
   Luxury minimal dark theme
   ======================================== */

/* Base content card */
.content-card {
  display: block;
  width: 100%;
}

/* ========== UNLOCKED CONTENT ========== */
.content-card > a {
  display: block;
  width: 100%;
}

.content-media {
  position: relative;
  width: 100%;
  line-height: 0;
  font-size: 0;
}

.content-image {
  display: block;
  width: 100%;
  height: auto;
  max-height: 600px;
  object-fit: contain;
}

video.content-image {
  background: #000;
}

/* Video play overlay */
.video-play-overlay {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  z-index: 10;
  opacity: 1;
  transition: opacity 0.3s ease;
  pointer-events: none;
}

.play-button {
  width: 56px;
  height: 56px;
  background: rgba(0, 0, 0, 0.45);
  backdrop-filter: blur(4px);
  -webkit-backdrop-filter: blur(4px);
  border: 2px solid rgba(255, 255, 255, 0.25);
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  box-shadow: 0 4px 16px rgba(0, 0, 0, 0.3);
  transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
}

.play-button svg {
  margin-left: 3px;
  opacity: 0.85;
  filter: drop-shadow(0 2px 4px rgba(0, 0, 0, 0.3));
  transition: opacity 0.3s ease;
}

.content-card:hover .play-button {
  width: 72px;
  height: 72px;
  background: rgba(255, 0, 116, 0.92);
  border: 3px solid rgba(255, 255, 255, 0.95);
  box-shadow: 0 8px 32px rgba(255, 0, 116, 0.5);
  transform: scale(1.08);
}

.content-card:hover .play-button svg {
  opacity: 1;
}

/* Gallery badge */
.gallery-type-badge {
  position: absolute;
  top: 12px;
  right: 12px;
  background: rgba(0, 0, 0, 0.85);
  backdrop-filter: blur(12px);
  -webkit-backdrop-filter: blur(12px);
  color: #fff;
  padding: 8px 14px;
  border-radius: 10px;
  display: flex;
  align-items: center;
  gap: 8px;
  font-size: 12px;
  font-weight: 600;
  border: 1px solid rgba(255, 255, 255, 0.12);
  z-index: 15;
}

.gallery-badge-count {
  background: linear-gradient(135deg, #ff0074 0%, #ff4081 100%);
  padding: 3px 10px;
  border-radius: 12px;
  font-size: 11px;
  font-weight: 700;
}

.gallery-badge-details {
  display: flex;
  align-items: center;
  gap: 4px;
  font-size: 11px;
  color: rgba(255, 255, 255, 0.75);
}

/* ========== LOCKED CONTENT ========== */
.content-card.locked {
  display: block;
  width: 100%;
}

.locked-content-wrapper {
  position: relative;
  width: 100%;
  aspect-ratio: 4 / 5;
  min-height: 280px;
  max-height: 400px;
  overflow: hidden;
  background: #0d0d0d;
  border-radius: 4px;
}

.locked-backdrop {
  position: absolute;
  inset: 0;
  overflow: hidden;
}

.locked-blur-image {
  position: absolute;
  inset: -10px;
  /* Premium gradient — visible fallback when blur image unavailable */
  background-color: #0c0c0c;
  background-image:
    radial-gradient(ellipse 180% 120% at 0% 100%, rgba(255, 0, 116, 0.35) 0%, transparent 50%),
    radial-gradient(ellipse 150% 100% at 100% 0%, rgba(255, 61, 154, 0.25) 0%, transparent 45%),
    radial-gradient(circle at 50% 40%, rgba(255, 0, 116, 0.15) 0%, transparent 55%),
    linear-gradient(165deg, #0c0c0c 0%, #1a0a14 30%, #250e1c 50%, #1a0a14 70%, #0c0c0c 100%);
  background-size: cover;
  background-position: center;
}

/* Refined overlay with subtle gradient */
.locked-backdrop::after {
  content: '';
  position: absolute;
  inset: 0;
  background:
    radial-gradient(ellipse 80% 60% at 50% 50%, transparent 0%, rgba(0, 0, 0, 0.25) 100%),
    linear-gradient(180deg, rgba(0, 0, 0, 0.05) 0%, rgba(0, 0, 0, 0.15) 100%);
  pointer-events: none;
}

/* Centered CTA - Refined layout */
.content-card.locked .locked-cta {
  position: absolute !important;
  inset: 0 !important;
  display: flex !important;
  flex-direction: column !important;
  align-items: center !important;
  justify-content: center !important;
  z-index: 10 !important;
  padding: 32px 24px !important;
  text-align: center !important;
  gap: 0 !important;
}

/* Lock icon wrapper */
.content-card.locked .locked-icon-wrapper {
  order: 1 !important;
  width: 64px !important;
  height: 64px !important;
  min-width: 64px !important;
  min-height: 64px !important;
  background: rgba(255, 0, 116, 0.12) !important;
  backdrop-filter: blur(8px) !important;
  -webkit-backdrop-filter: blur(8px) !important;
  border: 2px solid rgba(255, 0, 116, 0.4) !important;
  border-radius: 50% !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  margin-bottom: 20px !important;
  transition: all 0.3s ease !important;
  flex-shrink: 0 !important;
}

.content-card.locked .locked-content-wrapper:hover .locked-icon-wrapper {
  background: rgba(255, 0, 116, 0.2) !important;
  border-color: rgba(255, 0, 116, 0.6) !important;
  transform: scale(1.05) !important;
}

.content-card.locked .locked-icon-svg {
  width: 28px !important;
  height: 28px !important;
  fill: #ff0074 !important;
  flex-shrink: 0 !important;
}

/* Label text - Second */
.content-card.locked .locked-label {
  order: 2 !important;
  color: rgba(255, 255, 255, 0.95) !important;
  font-size: 16px !important;
  font-weight: 500 !important;
  margin: 0 0 20px 0 !important;
  padding: 0 !important;
  letter-spacing: 0.01em !important;
  line-height: 1.3 !important;
}

/* Action button - Third */
.content-card.locked .locked-btn {
  order: 3 !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  gap: 8px !important;
  padding: 12px 28px !important;
  border-radius: 100px !important;
  font-weight: 600 !important;
  font-size: 14px !important;
  text-decoration: none !important;
  transition: all 0.25s cubic-bezier(0.4, 0, 0.2, 1) !important;
  border: none !important;
  cursor: pointer !important;
  background: linear-gradient(135deg, #ff0074 0%, #ff2d8a 100%) !important;
  color: white !important;
  box-shadow: 0 4px 20px rgba(255, 0, 116, 0.35) !important;
  letter-spacing: 0.02em !important;
}

.content-card.locked .locked-btn:hover {
  transform: translateY(-2px) !important;
  box-shadow: 0 8px 28px rgba(255, 0, 116, 0.45) !important;
  background: linear-gradient(135deg, #ff1a82 0%, #ff4095 100%) !important;
}

.content-card.locked .locked-btn:active {
  transform: translateY(0) !important;
  box-shadow: 0 2px 12px rgba(255, 0, 116, 0.4) !important;
}

.content-card.locked .locked-btn svg {
  width: 16px !important;
  height: 16px !important;
  flex-shrink: 0 !important;
  opacity: 0.9 !important;
}

/* ========== RESPONSIVE ========== */
@media (max-width: 768px) {
  .content-card.locked .locked-content-wrapper {
    aspect-ratio: 1 / 1 !important;
    min-height: 240px !important;
    max-height: 340px !important;
  }

  .content-card.locked .locked-icon-wrapper {
    width: 56px !important;
    height: 56px !important;
    min-width: 56px !important;
    min-height: 56px !important;
    margin-bottom: 16px !important;
  }

  .content-card.locked .locked-icon-svg {
    width: 24px !important;
    height: 24px !important;
  }

  .content-card.locked .locked-label {
    font-size: 14px !important;
    margin-bottom: 16px !important;
  }

  .content-card.locked .locked-btn {
    padding: 11px 24px !important;
    font-size: 13px !important;
  }

  .play-button {
    width: 48px;
    height: 48px;
  }

  .content-card:hover .play-button {
    width: 64px;
    height: 64px;
  }
}

@media (max-width: 480px) {
  .content-card.locked .locked-content-wrapper {
    min-height: 200px !important;
    max-height: 300px !important;
  }

  .content-card.locked .locked-cta {
    padding: 24px 20px !important;
  }

  .content-card.locked .locked-icon-wrapper {
    width: 50px !important;
    height: 50px !important;
    min-width: 50px !important;
    min-height: 50px !important;
    margin-bottom: 14px !important;
  }

  .content-card.locked .locked-icon-svg {
    width: 22px !important;
    height: 22px !important;
  }

  .content-card.locked .locked-label {
    font-size: 13px !important;
    margin-bottom: 14px !important;
  }

  .content-card.locked .locked-btn {
    padding: 10px 22px !important;
    font-size: 12px !important;
    gap: 6px !important;
  }

  .content-card.locked .locked-btn svg {
    width: 14px !important;
    height: 14px !important;
  }
}
</style>

  </div>
  
  <!-- Footer del post -->
  <div class="post-footer">
      <p class="post-description">test video carga</p>
    
    <div class="post-actions">


        <a class="action-btn toggle" data-turbo="false" aria-label="Inicia sesión para dar me gusta" href="#enter-modal">
          <svg fill="currentColor" viewBox="0 0 24 24"><path d="M12 21.35l-1.45-1.32C5.4 15.36 2 12.28 2 8.5 2 5.42 4.42 3 7.5 3c1.74 0 3.41.81 4.5 2.09C13.09 3.81 14.76 3 16.5 3 19.58 3 22 5.42 22 8.5c0 3.78-3.4 6.86-8.55 11.54L12 21.35z"/></svg>
          <span>1</span>
</a>
        <a class="action-btn toggle" data-turbo="false" aria-label="Inicia sesión para comentar" href="#enter-modal">
          <svg fill="currentColor" viewBox="0 0 24 24"><path d="M21.99 4c0-1.1-.89-2-1.99-2H4c-1.1 0-2 .9-2 2v12c0 1.1.9 2 2 2h14l4 4-.01-18zM18 14H6v-2h12v2zm0-3H6V9h12v2zm0-3H6V6h12v2z"/></svg>
          <span>0</span>
</a>
        <a class="action-btn toggle" data-turbo="false" aria-label="Inicia sesión para compartir" href="#enter-modal">
          <svg fill="currentColor" viewBox="0 0 24 24"><path d="M18 16.08c-.76 0-1.44.3-1.96.77L8.91 12.7c.05-.23.09-.46.09-.7s-.04-.47-.09-.7l7.05-4.11c.54.5 1.25.81 2.04.81 1.66 0 3-1.34 3-3s-1.34-3-3-3-3 1.34-3 3c0 .24.04.47.09.7L8.04 9.81C7.5 9.31 6.79 9 6 9c-1.66 0-3 1.34-3 3s1.34 3 3 3c.79 0 1.5-.31 2.04-.81l7.12 4.16c-.05.21-.08.43-.08.65 0 1.61 1.31 2.92 2.92 2.92 1.61 0 2.92-1.31 2.92-2.92s-1.31-2.92-2.92-2.92z"/></svg>
</a>      
      <div style="flex: 1;"></div>

        <span class="content-access-badge content-access-badge--locked" aria-label="Solo para suscriptores">
          <svg width="11" height="11" viewBox="0 0 24 24" fill="currentColor" aria-hidden="true">
            <path d="M18 8h-1V6c0-2.76-2.24-5-5-5S7 3.24 7 6v2H6c-1.1 0-2 .9-2 2v10c0 1.1.9 2 2 2h12c1.1 0 2-.9 2-2V10c0-1.1-.9-2-2-2zM9 6c0-1.66 1.34-3 3-3s3 1.34 3 3v2H9V6z"/>
          </svg>
        </span>
    </div>
  </div>
</div>
</template></turbo-stream>  <turbo-stream action="append" target="for-you-posts"><template>
    <div class="content-post ">

  <!-- Header del post -->
  <div class="post-header">
      <img class="post-avatar" alt="mamasutra" width="200" height="200" loading="lazy" src="https://www.exotha.com/rails/active_storage/blobs/redirect/eyJfcmFpbHMiOnsiZGF0YSI6MSwicHVyIjoiYmxvYl9pZCJ9fQ==--5871e50b79f1e46d8a84a6c1a7153a25e462bd6f/Captura%20desde%202024-07-29%2021-06-54.png" />

    <div class="post-info">
      <a class="post-creator" href="/@mamasutra">mamasutra</a>
      <span class="post-time">2 meses ago</span>
    </div>

    <div class="post-menu" data-controller="dropdown share-link">
      <button class="post-menu-btn" data-action="click->dropdown#toggle" aria-label="Post options">
        <svg width="20" height="20" fill="currentColor" viewBox="0 0 24 24">
          <path d="M12 8c1.1 0 2-.9 2-2s-.9-2-2-2-2 .9-2 2 .9 2 2 2zm0 2c-1.1 0-2 .9-2 2s.9 2 2 2 2-.9 2-2-.9-2-2-2zm0 6c-1.1 0-2 .9-2 2s.9 2 2 2 2-.9 2-2-.9-2-2-2z"/>
        </svg>
      </button>
      <div class="post-menu-dropdown" data-dropdown-target="menu">
        <button class="post-menu-item"
                data-action="click->share-link#copy"
                data-url="https://www.exotha.com/@mamasutra/content/5">
          <svg width="16" height="16" fill="none" stroke="currentColor" stroke-width="2" viewBox="0 0 24 24">
            <path d="M10 13a5 5 0 0 0 7.54.54l3-3a5 5 0 0 0-7.07-7.07l-1.72 1.71"/>
            <path d="M14 11a5 5 0 0 0-7.54-.54l-3 3a5 5 0 0 0 7.07 7.07l1.71-1.71"/>
          </svg>
          Copiar link
        </button>
      </div>
    </div>
  </div>
  
  <!-- Media del post -->
  <div class="post-media">
    
<div class="content-card locked">

    <!-- Contenido Bloqueado con Blur Server-Side -->
    <div class="locked-content-wrapper">
      <div class="locked-backdrop">
        <div class="locked-blur-image"
               style="background-image: url(https://www.exotha.com/rails/active_storage/representations/redirect/eyJfcmFpbHMiOnsiZGF0YSI6MjQsInB1ciI6ImJsb2JfaWQifX0=--402d5c1c571ea124898c158439ff8f2bfc6a0870/eyJfcmFpbHMiOnsiZGF0YSI6eyJmb3JtYXQiOiJqcGVnIiwicmVzaXplX3RvX2xpbWl0IjpbNjAwLDYwMF0sImdhdXNzYmx1ciI6OCwic2F2ZXIiOnsicXVhbGl0eSI6NTB9fSwicHVyIjoidmFyaWF0aW9uIn19--3e590ec4be28c7fe8859bb6d7b9eb78d969237a1/1000247654.jpg);"
             ></div>
      </div>


      <div class="locked-cta">
        <!-- Lock Icon -->
        <div class="locked-icon-wrapper">
          <svg class="locked-icon-svg" viewBox="0 0 24 24" fill="#ff0074">
            <path d="M18 8h-1V6c0-2.76-2.24-5-5-5S7 3.24 7 6v2H6c-1.1 0-2 .9-2 2v10c0 1.1.9 2 2 2h12c1.1 0 2-.9 2-2V10c0-1.1-.9-2-2-2zm-6 9c-1.1 0-2-.9-2-2s.9-2 2-2 2 .9 2 2-.9 2-2 2zm3.1-9H8.9V6c0-1.71 1.39-3.1 3.1-3.1 1.71 0 3.1 1.39 3.1 3.1v2z"/>
          </svg>
        </div>

        <!-- Label -->
          <p class="locked-label">Suscríbete para desbloquear</p>
            <a class="locked-btn toggle" href="#enter-modal">
              <svg width="20" height="20" fill="currentColor" viewBox="0 0 24 24">
                <path d="M12 17.27L18.18 21l-1.64-7.03L22 9.24l-7.19-.61L12 2 9.19 8.63 2 9.24l5.46 4.73L5.82 21z"/>
              </svg>
              <span>Inicia sesión para suscribirte</span>
</a>      </div>
    </div>
</div>

<style>
/* ========================================
   CONTENT CARD - EXOTHA FEED
   Luxury minimal dark theme
   ======================================== */

/* Base content card */
.content-card {
  display: block;
  width: 100%;
}

/* ========== UNLOCKED CONTENT ========== */
.content-card > a {
  display: block;
  width: 100%;
}

.content-media {
  position: relative;
  width: 100%;
  line-height: 0;
  font-size: 0;
}

.content-image {
  display: block;
  width: 100%;
  height: auto;
  max-height: 600px;
  object-fit: contain;
}

video.content-image {
  background: #000;
}

/* Video play overlay */
.video-play-overlay {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  z-index: 10;
  opacity: 1;
  transition: opacity 0.3s ease;
  pointer-events: none;
}

.play-button {
  width: 56px;
  height: 56px;
  background: rgba(0, 0, 0, 0.45);
  backdrop-filter: blur(4px);
  -webkit-backdrop-filter: blur(4px);
  border: 2px solid rgba(255, 255, 255, 0.25);
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  box-shadow: 0 4px 16px rgba(0, 0, 0, 0.3);
  transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
}

.play-button svg {
  margin-left: 3px;
  opacity: 0.85;
  filter: drop-shadow(0 2px 4px rgba(0, 0, 0, 0.3));
  transition: opacity 0.3s ease;
}

.content-card:hover .play-button {
  width: 72px;
  height: 72px;
  background: rgba(255, 0, 116, 0.92);
  border: 3px solid rgba(255, 255, 255, 0.95);
  box-shadow: 0 8px 32px rgba(255, 0, 116, 0.5);
  transform: scale(1.08);
}

.content-card:hover .play-button svg {
  opacity: 1;
}

/* Gallery badge */
.gallery-type-badge {
  position: absolute;
  top: 12px;
  right: 12px;
  background: rgba(0, 0, 0, 0.85);
  backdrop-filter: blur(12px);
  -webkit-backdrop-filter: blur(12px);
  color: #fff;
  padding: 8px 14px;
  border-radius: 10px;
  display: flex;
  align-items: center;
  gap: 8px;
  font-size: 12px;
  font-weight: 600;
  border: 1px solid rgba(255, 255, 255, 0.12);
  z-index: 15;
}

.gallery-badge-count {
  background: linear-gradient(135deg, #ff0074 0%, #ff4081 100%);
  padding: 3px 10px;
  border-radius: 12px;
  font-size: 11px;
  font-weight: 700;
}

.gallery-badge-details {
  display: flex;
  align-items: center;
  gap: 4px;
  font-size: 11px;
  color: rgba(255, 255, 255, 0.75);
}

/* ========== LOCKED CONTENT ========== */
.content-card.locked {
  display: block;
  width: 100%;
}

.locked-content-wrapper {
  position: relative;
  width: 100%;
  aspect-ratio: 4 / 5;
  min-height: 280px;
  max-height: 400px;
  overflow: hidden;
  background: #0d0d0d;
  border-radius: 4px;
}

.locked-backdrop {
  position: absolute;
  inset: 0;
  overflow: hidden;
}

.locked-blur-image {
  position: absolute;
  inset: -10px;
  /* Premium gradient — visible fallback when blur image unavailable */
  background-color: #0c0c0c;
  background-image:
    radial-gradient(ellipse 180% 120% at 0% 100%, rgba(255, 0, 116, 0.35) 0%, transparent 50%),
    radial-gradient(ellipse 150% 100% at 100% 0%, rgba(255, 61, 154, 0.25) 0%, transparent 45%),
    radial-gradient(circle at 50% 40%, rgba(255, 0, 116, 0.15) 0%, transparent 55%),
    linear-gradient(165deg, #0c0c0c 0%, #1a0a14 30%, #250e1c 50%, #1a0a14 70%, #0c0c0c 100%);
  background-size: cover;
  background-position: center;
}

/* Refined overlay with subtle gradient */
.locked-backdrop::after {
  content: '';
  position: absolute;
  inset: 0;
  background:
    radial-gradient(ellipse 80% 60% at 50% 50%, transparent 0%, rgba(0, 0, 0, 0.25) 100%),
    linear-gradient(180deg, rgba(0, 0, 0, 0.05) 0%, rgba(0, 0, 0, 0.15) 100%);
  pointer-events: none;
}

/* Centered CTA - Refined layout */
.content-card.locked .locked-cta {
  position: absolute !important;
  inset: 0 !important;
  display: flex !important;
  flex-direction: column !important;
  align-items: center !important;
  justify-content: center !important;
  z-index: 10 !important;
  padding: 32px 24px !important;
  text-align: center !important;
  gap: 0 !important;
}

/* Lock icon wrapper */
.content-card.locked .locked-icon-wrapper {
  order: 1 !important;
  width: 64px !important;
  height: 64px !important;
  min-width: 64px !important;
  min-height: 64px !important;
  background: rgba(255, 0, 116, 0.12) !important;
  backdrop-filter: blur(8px) !important;
  -webkit-backdrop-filter: blur(8px) !important;
  border: 2px solid rgba(255, 0, 116, 0.4) !important;
  border-radius: 50% !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  margin-bottom: 20px !important;
  transition: all 0.3s ease !important;
  flex-shrink: 0 !important;
}

.content-card.locked .locked-content-wrapper:hover .locked-icon-wrapper {
  background: rgba(255, 0, 116, 0.2) !important;
  border-color: rgba(255, 0, 116, 0.6) !important;
  transform: scale(1.05) !important;
}

.content-card.locked .locked-icon-svg {
  width: 28px !important;
  height: 28px !important;
  fill: #ff0074 !important;
  flex-shrink: 0 !important;
}

/* Label text - Second */
.content-card.locked .locked-label {
  order: 2 !important;
  color: rgba(255, 255, 255, 0.95) !important;
  font-size: 16px !important;
  font-weight: 500 !important;
  margin: 0 0 20px 0 !important;
  padding: 0 !important;
  letter-spacing: 0.01em !important;
  line-height: 1.3 !important;
}

/* Action button - Third */
.content-card.locked .locked-btn {
  order: 3 !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  gap: 8px !important;
  padding: 12px 28px !important;
  border-radius: 100px !important;
  font-weight: 600 !important;
  font-size: 14px !important;
  text-decoration: none !important;
  transition: all 0.25s cubic-bezier(0.4, 0, 0.2, 1) !important;
  border: none !important;
  cursor: pointer !important;
  background: linear-gradient(135deg, #ff0074 0%, #ff2d8a 100%) !important;
  color: white !important;
  box-shadow: 0 4px 20px rgba(255, 0, 116, 0.35) !important;
  letter-spacing: 0.02em !important;
}

.content-card.locked .locked-btn:hover {
  transform: translateY(-2px) !important;
  box-shadow: 0 8px 28px rgba(255, 0, 116, 0.45) !important;
  background: linear-gradient(135deg, #ff1a82 0%, #ff4095 100%) !important;
}

.content-card.locked .locked-btn:active {
  transform: translateY(0) !important;
  box-shadow: 0 2px 12px rgba(255, 0, 116, 0.4) !important;
}

.content-card.locked .locked-btn svg {
  width: 16px !important;
  height: 16px !important;
  flex-shrink: 0 !important;
  opacity: 0.9 !important;
}

/* ========== RESPONSIVE ========== */
@media (max-width: 768px) {
  .content-card.locked .locked-content-wrapper {
    aspect-ratio: 1 / 1 !important;
    min-height: 240px !important;
    max-height: 340px !important;
  }

  .content-card.locked .locked-icon-wrapper {
    width: 56px !important;
    height: 56px !important;
    min-width: 56px !important;
    min-height: 56px !important;
    margin-bottom: 16px !important;
  }

  .content-card.locked .locked-icon-svg {
    width: 24px !important;
    height: 24px !important;
  }

  .content-card.locked .locked-label {
    font-size: 14px !important;
    margin-bottom: 16px !important;
  }

  .content-card.locked .locked-btn {
    padding: 11px 24px !important;
    font-size: 13px !important;
  }

  .play-button {
    width: 48px;
    height: 48px;
  }

  .content-card:hover .play-button {
    width: 64px;
    height: 64px;
  }
}

@media (max-width: 480px) {
  .content-card.locked .locked-content-wrapper {
    min-height: 200px !important;
    max-height: 300px !important;
  }

  .content-card.locked .locked-cta {
    padding: 24px 20px !important;
  }

  .content-card.locked .locked-icon-wrapper {
    width: 50px !important;
    height: 50px !important;
    min-width: 50px !important;
    min-height: 50px !important;
    margin-bottom: 14px !important;
  }

  .content-card.locked .locked-icon-svg {
    width: 22px !important;
    height: 22px !important;
  }

  .content-card.locked .locked-label {
    font-size: 13px !important;
    margin-bottom: 14px !important;
  }

  .content-card.locked .locked-btn {
    padding: 10px 22px !important;
    font-size: 12px !important;
    gap: 6px !important;
  }

  .content-card.locked .locked-btn svg {
    width: 14px !important;
    height: 14px !important;
  }
}
</style>

  </div>
  
  <!-- Footer del post -->
  <div class="post-footer">
      <p class="post-description">Test celu </p>
    
    <div class="post-actions">


        <a class="action-btn toggle" data-turbo="false" aria-label="Inicia sesión para dar me gusta" href="#enter-modal">
          <svg fill="currentColor" viewBox="0 0 24 24"><path d="M12 21.35l-1.45-1.32C5.4 15.36 2 12.28 2 8.5 2 5.42 4.42 3 7.5 3c1.74 0 3.41.81 4.5 2.09C13.09 3.81 14.76 3 16.5 3 19.58 3 22 5.42 22 8.5c0 3.78-3.4 6.86-8.55 11.54L12 21.35z"/></svg>
          <span>1</span>
</a>
        <a class="action-btn toggle" data-turbo="false" aria-label="Inicia sesión para comentar" href="#enter-modal">
          <svg fill="currentColor" viewBox="0 0 24 24"><path d="M21.99 4c0-1.1-.89-2-1.99-2H4c-1.1 0-2 .9-2 2v12c0 1.1.9 2 2 2h14l4 4-.01-18zM18 14H6v-2h12v2zm0-3H6V9h12v2zm0-3H6V6h12v2z"/></svg>
          <span>0</span>
</a>
        <a class="action-btn toggle" data-turbo="false" aria-label="Inicia sesión para compartir" href="#enter-modal">
          <svg fill="currentColor" viewBox="0 0 24 24"><path d="M18 16.08c-.76 0-1.44.3-1.96.77L8.91 12.7c.05-.23.09-.46.09-.7s-.04-.47-.09-.7l7.05-4.11c.54.5 1.25.81 2.04.81 1.66 0 3-1.34 3-3s-1.34-3-3-3-3 1.34-3 3c0 .24.04.47.09.7L8.04 9.81C7.5 9.31 6.79 9 6 9c-1.66 0-3 1.34-3 3s1.34 3 3 3c.79 0 1.5-.31 2.04-.81l7.12 4.16c-.05.21-.08.43-.08.65 0 1.61 1.31 2.92 2.92 2.92 1.61 0 2.92-1.31 2.92-2.92s-1.31-2.92-2.92-2.92z"/></svg>
</a>      
      <div style="flex: 1;"></div>

        <span class="content-access-badge content-access-badge--locked" aria-label="Solo para suscriptores">
          <svg width="11" height="11" viewBox="0 0 24 24" fill="currentColor" aria-hidden="true">
            <path d="M18 8h-1V6c0-2.76-2.24-5-5-5S7 3.24 7 6v2H6c-1.1 0-2 .9-2 2v10c0 1.1.9 2 2 2h12c1.1 0 2-.9 2-2V10c0-1.1-.9-2-2-2zM9 6c0-1.66 1.34-3 3-3s3 1.34 3 3v2H9V6z"/>
          </svg>
        </span>
    </div>
  </div>
</div>
</template></turbo-stream>  <turbo-stream action="append" target="for-you-posts"><template>
    <div class="content-post ">

  <!-- Header del post -->
  <div class="post-header">
      <img class="post-avatar" alt="mamasutra" width="200" height="200" loading="lazy" src="https://www.exotha.com/rails/active_storage/blobs/redirect/eyJfcmFpbHMiOnsiZGF0YSI6MSwicHVyIjoiYmxvYl9pZCJ9fQ==--5871e50b79f1e46d8a84a6c1a7153a25e462bd6f/Captura%20desde%202024-07-29%2021-06-54.png" />

    <div class="post-info">
      <a class="post-creator" href="/@mamasutra">mamasutra</a>
      <span class="post-time">2 meses ago</span>
    </div>

    <div class="post-menu" data-controller="dropdown share-link">
      <button class="post-menu-btn" data-action="click->dropdown#toggle" aria-label="Post options">
        <svg width="20" height="20" fill="currentColor" viewBox="0 0 24 24">
          <path d="M12 8c1.1 0 2-.9 2-2s-.9-2-2-2-2 .9-2 2 .9 2 2 2zm0 2c-1.1 0-2 .9-2 2s.9 2 2 2 2-.9 2-2-.9-2-2-2zm0 6c-1.1 0-2 .9-2 2s.9 2 2 2 2-.9 2-2-.9-2-2-2z"/>
        </svg>
      </button>
      <div class="post-menu-dropdown" data-dropdown-target="menu">
        <button class="post-menu-item"
                data-action="click->share-link#copy"
                data-url="https://www.exotha.com/@mamasutra/content/2">
          <svg width="16" height="16" fill="none" stroke="currentColor" stroke-width="2" viewBox="0 0 24 24">
            <path d="M10 13a5 5 0 0 0 7.54.54l3-3a5 5 0 0 0-7.07-7.07l-1.72 1.71"/>
            <path d="M14 11a5 5 0 0 0-7.54-.54l-3 3a5 5 0 0 0 7.07 7.07l1.71-1.71"/>
          </svg>
          Copiar link
        </button>
      </div>
    </div>
  </div>
  
  <!-- Media del post -->
  <div class="post-media">
    
<div class="content-card locked">

    <!-- Contenido Bloqueado con Blur Server-Side -->
    <div class="locked-content-wrapper">
      <div class="locked-backdrop">
        <div class="locked-blur-image"
></div>
      </div>


      <div class="locked-cta">
        <!-- Lock Icon -->
        <div class="locked-icon-wrapper">
          <svg class="locked-icon-svg" viewBox="0 0 24 24" fill="#ff0074">
            <path d="M18 8h-1V6c0-2.76-2.24-5-5-5S7 3.24 7 6v2H6c-1.1 0-2 .9-2 2v10c0 1.1.9 2 2 2h12c1.1 0 2-.9 2-2V10c0-1.1-.9-2-2-2zm-6 9c-1.1 0-2-.9-2-2s.9-2 2-2 2 .9 2 2-.9 2-2 2zm3.1-9H8.9V6c0-1.71 1.39-3.1 3.1-3.1 1.71 0 3.1 1.39 3.1 3.1v2z"/>
          </svg>
        </div>

        <!-- Label -->
          <p class="locked-label">Suscríbete para desbloquear</p>
            <a class="locked-btn toggle" href="#enter-modal">
              <svg width="20" height="20" fill="currentColor" viewBox="0 0 24 24">
                <path d="M12 17.27L18.18 21l-1.64-7.03L22 9.24l-7.19-.61L12 2 9.19 8.63 2 9.24l5.46 4.73L5.82 21z"/>
              </svg>
              <span>Inicia sesión para suscribirte</span>
</a>      </div>
    </div>
</div>

<style>
/* ========================================
   CONTENT CARD - EXOTHA FEED
   Luxury minimal dark theme
   ======================================== */

/* Base content card */
.content-card {
  display: block;
  width: 100%;
}

/* ========== UNLOCKED CONTENT ========== */
.content-card > a {
  display: block;
  width: 100%;
}

.content-media {
  position: relative;
  width: 100%;
  line-height: 0;
  font-size: 0;
}

.content-image {
  display: block;
  width: 100%;
  height: auto;
  max-height: 600px;
  object-fit: contain;
}

video.content-image {
  background: #000;
}

/* Video play overlay */
.video-play-overlay {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  z-index: 10;
  opacity: 1;
  transition: opacity 0.3s ease;
  pointer-events: none;
}

.play-button {
  width: 56px;
  height: 56px;
  background: rgba(0, 0, 0, 0.45);
  backdrop-filter: blur(4px);
  -webkit-backdrop-filter: blur(4px);
  border: 2px solid rgba(255, 255, 255, 0.25);
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  box-shadow: 0 4px 16px rgba(0, 0, 0, 0.3);
  transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
}

.play-button svg {
  margin-left: 3px;
  opacity: 0.85;
  filter: drop-shadow(0 2px 4px rgba(0, 0, 0, 0.3));
  transition: opacity 0.3s ease;
}

.content-card:hover .play-button {
  width: 72px;
  height: 72px;
  background: rgba(255, 0, 116, 0.92);
  border: 3px solid rgba(255, 255, 255, 0.95);
  box-shadow: 0 8px 32px rgba(255, 0, 116, 0.5);
  transform: scale(1.08);
}

.content-card:hover .play-button svg {
  opacity: 1;
}

/* Gallery badge */
.gallery-type-badge {
  position: absolute;
  top: 12px;
  right: 12px;
  background: rgba(0, 0, 0, 0.85);
  backdrop-filter: blur(12px);
  -webkit-backdrop-filter: blur(12px);
  color: #fff;
  padding: 8px 14px;
  border-radius: 10px;
  display: flex;
  align-items: center;
  gap: 8px;
  font-size: 12px;
  font-weight: 600;
  border: 1px solid rgba(255, 255, 255, 0.12);
  z-index: 15;
}

.gallery-badge-count {
  background: linear-gradient(135deg, #ff0074 0%, #ff4081 100%);
  padding: 3px 10px;
  border-radius: 12px;
  font-size: 11px;
  font-weight: 700;
}

.gallery-badge-details {
  display: flex;
  align-items: center;
  gap: 4px;
  font-size: 11px;
  color: rgba(255, 255, 255, 0.75);
}

/* ========== LOCKED CONTENT ========== */
.content-card.locked {
  display: block;
  width: 100%;
}

.locked-content-wrapper {
  position: relative;
  width: 100%;
  aspect-ratio: 4 / 5;
  min-height: 280px;
  max-height: 400px;
  overflow: hidden;
  background: #0d0d0d;
  border-radius: 4px;
}

.locked-backdrop {
  position: absolute;
  inset: 0;
  overflow: hidden;
}

.locked-blur-image {
  position: absolute;
  inset: -10px;
  /* Premium gradient — visible fallback when blur image unavailable */
  background-color: #0c0c0c;
  background-image:
    radial-gradient(ellipse 180% 120% at 0% 100%, rgba(255, 0, 116, 0.35) 0%, transparent 50%),
    radial-gradient(ellipse 150% 100% at 100% 0%, rgba(255, 61, 154, 0.25) 0%, transparent 45%),
    radial-gradient(circle at 50% 40%, rgba(255, 0, 116, 0.15) 0%, transparent 55%),
    linear-gradient(165deg, #0c0c0c 0%, #1a0a14 30%, #250e1c 50%, #1a0a14 70%, #0c0c0c 100%);
  background-size: cover;
  background-position: center;
}

/* Refined overlay with subtle gradient */
.locked-backdrop::after {
  content: '';
  position: absolute;
  inset: 0;
  background:
    radial-gradient(ellipse 80% 60% at 50% 50%, transparent 0%, rgba(0, 0, 0, 0.25) 100%),
    linear-gradient(180deg, rgba(0, 0, 0, 0.05) 0%, rgba(0, 0, 0, 0.15) 100%);
  pointer-events: none;
}

/* Centered CTA - Refined layout */
.content-card.locked .locked-cta {
  position: absolute !important;
  inset: 0 !important;
  display: flex !important;
  flex-direction: column !important;
  align-items: center !important;
  justify-content: center !important;
  z-index: 10 !important;
  padding: 32px 24px !important;
  text-align: center !important;
  gap: 0 !important;
}

/* Lock icon wrapper */
.content-card.locked .locked-icon-wrapper {
  order: 1 !important;
  width: 64px !important;
  height: 64px !important;
  min-width: 64px !important;
  min-height: 64px !important;
  background: rgba(255, 0, 116, 0.12) !important;
  backdrop-filter: blur(8px) !important;
  -webkit-backdrop-filter: blur(8px) !important;
  border: 2px solid rgba(255, 0, 116, 0.4) !important;
  border-radius: 50% !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  margin-bottom: 20px !important;
  transition: all 0.3s ease !important;
  flex-shrink: 0 !important;
}

.content-card.locked .locked-content-wrapper:hover .locked-icon-wrapper {
  background: rgba(255, 0, 116, 0.2) !important;
  border-color: rgba(255, 0, 116, 0.6) !important;
  transform: scale(1.05) !important;
}

.content-card.locked .locked-icon-svg {
  width: 28px !important;
  height: 28px !important;
  fill: #ff0074 !important;
  flex-shrink: 0 !important;
}

/* Label text - Second */
.content-card.locked .locked-label {
  order: 2 !important;
  color: rgba(255, 255, 255, 0.95) !important;
  font-size: 16px !important;
  font-weight: 500 !important;
  margin: 0 0 20px 0 !important;
  padding: 0 !important;
  letter-spacing: 0.01em !important;
  line-height: 1.3 !important;
}

/* Action button - Third */
.content-card.locked .locked-btn {
  order: 3 !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  gap: 8px !important;
  padding: 12px 28px !important;
  border-radius: 100px !important;
  font-weight: 600 !important;
  font-size: 14px !important;
  text-decoration: none !important;
  transition: all 0.25s cubic-bezier(0.4, 0, 0.2, 1) !important;
  border: none !important;
  cursor: pointer !important;
  background: linear-gradient(135deg, #ff0074 0%, #ff2d8a 100%) !important;
  color: white !important;
  box-shadow: 0 4px 20px rgba(255, 0, 116, 0.35) !important;
  letter-spacing: 0.02em !important;
}

.content-card.locked .locked-btn:hover {
  transform: translateY(-2px) !important;
  box-shadow: 0 8px 28px rgba(255, 0, 116, 0.45) !important;
  background: linear-gradient(135deg, #ff1a82 0%, #ff4095 100%) !important;
}

.content-card.locked .locked-btn:active {
  transform: translateY(0) !important;
  box-shadow: 0 2px 12px rgba(255, 0, 116, 0.4) !important;
}

.content-card.locked .locked-btn svg {
  width: 16px !important;
  height: 16px !important;
  flex-shrink: 0 !important;
  opacity: 0.9 !important;
}

/* ========== RESPONSIVE ========== */
@media (max-width: 768px) {
  .content-card.locked .locked-content-wrapper {
    aspect-ratio: 1 / 1 !important;
    min-height: 240px !important;
    max-height: 340px !important;
  }

  .content-card.locked .locked-icon-wrapper {
    width: 56px !important;
    height: 56px !important;
    min-width: 56px !important;
    min-height: 56px !important;
    margin-bottom: 16px !important;
  }

  .content-card.locked .locked-icon-svg {
    width: 24px !important;
    height: 24px !important;
  }

  .content-card.locked .locked-label {
    font-size: 14px !important;
    margin-bottom: 16px !important;
  }

  .content-card.locked .locked-btn {
    padding: 11px 24px !important;
    font-size: 13px !important;
  }

  .play-button {
    width: 48px;
    height: 48px;
  }

  .content-card:hover .play-button {
    width: 64px;
    height: 64px;
  }
}

@media (max-width: 480px) {
  .content-card.locked .locked-content-wrapper {
    min-height: 200px !important;
    max-height: 300px !important;
  }

  .content-card.locked .locked-cta {
    padding: 24px 20px !important;
  }

  .content-card.locked .locked-icon-wrapper {
    width: 50px !important;
    height: 50px !important;
    min-width: 50px !important;
    min-height: 50px !important;
    margin-bottom: 14px !important;
  }

  .content-card.locked .locked-icon-svg {
    width: 22px !important;
    height: 22px !important;
  }

  .content-card.locked .locked-label {
    font-size: 13px !important;
    margin-bottom: 14px !important;
  }

  .content-card.locked .locked-btn {
    padding: 10px 22px !important;
    font-size: 12px !important;
    gap: 6px !important;
  }

  .content-card.locked .locked-btn svg {
    width: 14px !important;
    height: 14px !important;
  }
}
</style>

  </div>
  
  <!-- Footer del post -->
  <div class="post-footer">
      <p class="post-description">Un baile HOT</p>
    
    <div class="post-actions">


        <a class="action-btn toggle" data-turbo="false" aria-label="Inicia sesión para dar me gusta" href="#enter-modal">
          <svg fill="currentColor" viewBox="0 0 24 24"><path d="M12 21.35l-1.45-1.32C5.4 15.36 2 12.28 2 8.5 2 5.42 4.42 3 7.5 3c1.74 0 3.41.81 4.5 2.09C13.09 3.81 14.76 3 16.5 3 19.58 3 22 5.42 22 8.5c0 3.78-3.4 6.86-8.55 11.54L12 21.35z"/></svg>
          <span>1</span>
</a>
        <a class="action-btn toggle" data-turbo="false" aria-label="Inicia sesión para comentar" href="#enter-modal">
          <svg fill="currentColor" viewBox="0 0 24 24"><path d="M21.99 4c0-1.1-.89-2-1.99-2H4c-1.1 0-2 .9-2 2v12c0 1.1.9 2 2 2h14l4 4-.01-18zM18 14H6v-2h12v2zm0-3H6V9h12v2zm0-3H6V6h12v2z"/></svg>
          <span>0</span>
</a>
        <a class="action-btn toggle" data-turbo="false" aria-label="Inicia sesión para compartir" href="#enter-modal">
          <svg fill="currentColor" viewBox="0 0 24 24"><path d="M18 16.08c-.76 0-1.44.3-1.96.77L8.91 12.7c.05-.23.09-.46.09-.7s-.04-.47-.09-.7l7.05-4.11c.54.5 1.25.81 2.04.81 1.66 0 3-1.34 3-3s-1.34-3-3-3-3 1.34-3 3c0 .24.04.47.09.7L8.04 9.81C7.5 9.31 6.79 9 6 9c-1.66 0-3 1.34-3 3s1.34 3 3 3c.79 0 1.5-.31 2.04-.81l7.12 4.16c-.05.21-.08.43-.08.65 0 1.61 1.31 2.92 2.92 2.92 1.61 0 2.92-1.31 2.92-2.92s-1.31-2.92-2.92-2.92z"/></svg>
</a>      
      <div style="flex: 1;"></div>

        <span class="content-access-badge content-access-badge--locked" aria-label="Solo para suscriptores">
          <svg width="11" height="11" viewBox="0 0 24 24" fill="currentColor" aria-hidden="true">
            <path d="M18 8h-1V6c0-2.76-2.24-5-5-5S7 3.24 7 6v2H6c-1.1 0-2 .9-2 2v10c0 1.1.9 2 2 2h12c1.1 0 2-.9 2-2V10c0-1.1-.9-2-2-2zM9 6c0-1.66 1.34-3 3-3s3 1.34 3 3v2H9V6z"/>
          </svg>
        </span>
    </div>
  </div>
</div>
</template></turbo-stream>  <turbo-stream action="append" target="for-you-posts"><template>
    <div class="content-post ">

  <!-- Header del post -->
  <div class="post-header">
      <img class="post-avatar" alt="mamasutra" width="200" height="200" loading="lazy" src="https://www.exotha.com/rails/active_storage/blobs/redirect/eyJfcmFpbHMiOnsiZGF0YSI6MSwicHVyIjoiYmxvYl9pZCJ9fQ==--5871e50b79f1e46d8a84a6c1a7153a25e462bd6f/Captura%20desde%202024-07-29%2021-06-54.png" />

    <div class="post-info">
      <a class="post-creator" href="/@mamasutra">mamasutra</a>
      <span class="post-time">5 días ago</span>
    </div>

    <div class="post-menu" data-controller="dropdown share-link">
      <button class="post-menu-btn" data-action="click->dropdown#toggle" aria-label="Post options">
        <svg width="20" height="20" fill="currentColor" viewBox="0 0 24 24">
          <path d="M12 8c1.1 0 2-.9 2-2s-.9-2-2-2-2 .9-2 2 .9 2 2 2zm0 2c-1.1 0-2 .9-2 2s.9 2 2 2 2-.9 2-2-.9-2-2-2zm0 6c-1.1 0-2 .9-2 2s.9 2 2 2 2-.9 2-2-.9-2-2-2z"/>
        </svg>
      </button>
      <div class="post-menu-dropdown" data-dropdown-target="menu">
        <button class="post-menu-item"
                data-action="click->share-link#copy"
                data-url="https://www.exotha.com/@mamasutra/content/23">
          <svg width="16" height="16" fill="none" stroke="currentColor" stroke-width="2" viewBox="0 0 24 24">
            <path d="M10 13a5 5 0 0 0 7.54.54l3-3a5 5 0 0 0-7.07-7.07l-1.72 1.71"/>
            <path d="M14 11a5 5 0 0 0-7.54-.54l-3 3a5 5 0 0 0 7.07 7.07l1.71-1.71"/>
          </svg>
          Copiar link
        </button>
      </div>
    </div>
  </div>
  
  <!-- Media del post -->
  <div class="post-media">
    
<div class="content-card locked">

    <!-- Contenido Bloqueado con Blur Server-Side -->
    <div class="locked-content-wrapper">
      <div class="locked-backdrop">
        <div class="locked-blur-image"
               style="background-image: url(https://www.exotha.com/rails/active_storage/representations/redirect/eyJfcmFpbHMiOnsiZGF0YSI6MTY1LCJwdXIiOiJibG9iX2lkIn19--1b7a0bcb0bca81e3be9f13975c8d8ddc118576f0/eyJfcmFpbHMiOnsiZGF0YSI6eyJmb3JtYXQiOiJqcGVnIiwicmVzaXplX3RvX2xpbWl0IjpbNjAwLDYwMF0sImdhdXNzYmx1ciI6OCwic2F2ZXIiOnsicXVhbGl0eSI6NTB9fSwicHVyIjoidmFyaWF0aW9uIn19--3e590ec4be28c7fe8859bb6d7b9eb78d969237a1/1000263667.jpg);"
             ></div>
      </div>


      <div class="locked-cta">
        <!-- Lock Icon -->
        <div class="locked-icon-wrapper">
          <svg class="locked-icon-svg" viewBox="0 0 24 24" fill="#ff0074">
            <path d="M18 8h-1V6c0-2.76-2.24-5-5-5S7 3.24 7 6v2H6c-1.1 0-2 .9-2 2v10c0 1.1.9 2 2 2h12c1.1 0 2-.9 2-2V10c0-1.1-.9-2-2-2zm-6 9c-1.1 0-2-.9-2-2s.9-2 2-2 2 .9 2 2-.9 2-2 2zm3.1-9H8.9V6c0-1.71 1.39-3.1 3.1-3.1 1.71 0 3.1 1.39 3.1 3.1v2z"/>
          </svg>
        </div>

        <!-- Label -->
          <p class="locked-label">Desbloquea este contenido</p>
            <a class="locked-btn toggle" href="#enter-modal">
              <svg width="20" height="20" fill="currentColor" viewBox="0 0 24 24">
                <path d="M12 17c1.1 0 2-.9 2-2s-.9-2-2-2-2 .9-2 2 .9 2 2 2zm6-9h-1V6c0-2.76-2.24-5-5-5S7 3.24 7 6h1.9c0-1.71 1.39-3.1 3.1-3.1 1.71 0 3.1 1.39 3.1 3.1v2H6c-1.1 0-2 .9-2 2v10c0 1.1.9 2 2 2h12c1.1 0 2-.9 2-2V10c0-1.1-.9-2-2-2zm0 12H6V10h12v10z"/>
              </svg>
              <span>Unlock 10,00 $</span>
</a>      </div>
    </div>
</div>

<style>
/* ========================================
   CONTENT CARD - EXOTHA FEED
   Luxury minimal dark theme
   ======================================== */

/* Base content card */
.content-card {
  display: block;
  width: 100%;
}

/* ========== UNLOCKED CONTENT ========== */
.content-card > a {
  display: block;
  width: 100%;
}

.content-media {
  position: relative;
  width: 100%;
  line-height: 0;
  font-size: 0;
}

.content-image {
  display: block;
  width: 100%;
  height: auto;
  max-height: 600px;
  object-fit: contain;
}

video.content-image {
  background: #000;
}

/* Video play overlay */
.video-play-overlay {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  z-index: 10;
  opacity: 1;
  transition: opacity 0.3s ease;
  pointer-events: none;
}

.play-button {
  width: 56px;
  height: 56px;
  background: rgba(0, 0, 0, 0.45);
  backdrop-filter: blur(4px);
  -webkit-backdrop-filter: blur(4px);
  border: 2px solid rgba(255, 255, 255, 0.25);
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  box-shadow: 0 4px 16px rgba(0, 0, 0, 0.3);
  transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
}

.play-button svg {
  margin-left: 3px;
  opacity: 0.85;
  filter: drop-shadow(0 2px 4px rgba(0, 0, 0, 0.3));
  transition: opacity 0.3s ease;
}

.content-card:hover .play-button {
  width: 72px;
  height: 72px;
  background: rgba(255, 0, 116, 0.92);
  border: 3px solid rgba(255, 255, 255, 0.95);
  box-shadow: 0 8px 32px rgba(255, 0, 116, 0.5);
  transform: scale(1.08);
}

.content-card:hover .play-button svg {
  opacity: 1;
}

/* Gallery badge */
.gallery-type-badge {
  position: absolute;
  top: 12px;
  right: 12px;
  background: rgba(0, 0, 0, 0.85);
  backdrop-filter: blur(12px);
  -webkit-backdrop-filter: blur(12px);
  color: #fff;
  padding: 8px 14px;
  border-radius: 10px;
  display: flex;
  align-items: center;
  gap: 8px;
  font-size: 12px;
  font-weight: 600;
  border: 1px solid rgba(255, 255, 255, 0.12);
  z-index: 15;
}

.gallery-badge-count {
  background: linear-gradient(135deg, #ff0074 0%, #ff4081 100%);
  padding: 3px 10px;
  border-radius: 12px;
  font-size: 11px;
  font-weight: 700;
}

.gallery-badge-details {
  display: flex;
  align-items: center;
  gap: 4px;
  font-size: 11px;
  color: rgba(255, 255, 255, 0.75);
}

/* ========== LOCKED CONTENT ========== */
.content-card.locked {
  display: block;
  width: 100%;
}

.locked-content-wrapper {
  position: relative;
  width: 100%;
  aspect-ratio: 4 / 5;
  min-height: 280px;
  max-height: 400px;
  overflow: hidden;
  background: #0d0d0d;
  border-radius: 4px;
}

.locked-backdrop {
  position: absolute;
  inset: 0;
  overflow: hidden;
}

.locked-blur-image {
  position: absolute;
  inset: -10px;
  /* Premium gradient — visible fallback when blur image unavailable */
  background-color: #0c0c0c;
  background-image:
    radial-gradient(ellipse 180% 120% at 0% 100%, rgba(255, 0, 116, 0.35) 0%, transparent 50%),
    radial-gradient(ellipse 150% 100% at 100% 0%, rgba(255, 61, 154, 0.25) 0%, transparent 45%),
    radial-gradient(circle at 50% 40%, rgba(255, 0, 116, 0.15) 0%, transparent 55%),
    linear-gradient(165deg, #0c0c0c 0%, #1a0a14 30%, #250e1c 50%, #1a0a14 70%, #0c0c0c 100%);
  background-size: cover;
  background-position: center;
}

/* Refined overlay with subtle gradient */
.locked-backdrop::after {
  content: '';
  position: absolute;
  inset: 0;
  background:
    radial-gradient(ellipse 80% 60% at 50% 50%, transparent 0%, rgba(0, 0, 0, 0.25) 100%),
    linear-gradient(180deg, rgba(0, 0, 0, 0.05) 0%, rgba(0, 0, 0, 0.15) 100%);
  pointer-events: none;
}

/* Centered CTA - Refined layout */
.content-card.locked .locked-cta {
  position: absolute !important;
  inset: 0 !important;
  display: flex !important;
  flex-direction: column !important;
  align-items: center !important;
  justify-content: center !important;
  z-index: 10 !important;
  padding: 32px 24px !important;
  text-align: center !important;
  gap: 0 !important;
}

/* Lock icon wrapper */
.content-card.locked .locked-icon-wrapper {
  order: 1 !important;
  width: 64px !important;
  height: 64px !important;
  min-width: 64px !important;
  min-height: 64px !important;
  background: rgba(255, 0, 116, 0.12) !important;
  backdrop-filter: blur(8px) !important;
  -webkit-backdrop-filter: blur(8px) !important;
  border: 2px solid rgba(255, 0, 116, 0.4) !important;
  border-radius: 50% !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  margin-bottom: 20px !important;
  transition: all 0.3s ease !important;
  flex-shrink: 0 !important;
}

.content-card.locked .locked-content-wrapper:hover .locked-icon-wrapper {
  background: rgba(255, 0, 116, 0.2) !important;
  border-color: rgba(255, 0, 116, 0.6) !important;
  transform: scale(1.05) !important;
}

.content-card.locked .locked-icon-svg {
  width: 28px !important;
  height: 28px !important;
  fill: #ff0074 !important;
  flex-shrink: 0 !important;
}

/* Label text - Second */
.content-card.locked .locked-label {
  order: 2 !important;
  color: rgba(255, 255, 255, 0.95) !important;
  font-size: 16px !important;
  font-weight: 500 !important;
  margin: 0 0 20px 0 !important;
  padding: 0 !important;
  letter-spacing: 0.01em !important;
  line-height: 1.3 !important;
}

/* Action button - Third */
.content-card.locked .locked-btn {
  order: 3 !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  gap: 8px !important;
  padding: 12px 28px !important;
  border-radius: 100px !important;
  font-weight: 600 !important;
  font-size: 14px !important;
  text-decoration: none !important;
  transition: all 0.25s cubic-bezier(0.4, 0, 0.2, 1) !important;
  border: none !important;
  cursor: pointer !important;
  background: linear-gradient(135deg, #ff0074 0%, #ff2d8a 100%) !important;
  color: white !important;
  box-shadow: 0 4px 20px rgba(255, 0, 116, 0.35) !important;
  letter-spacing: 0.02em !important;
}

.content-card.locked .locked-btn:hover {
  transform: translateY(-2px) !important;
  box-shadow: 0 8px 28px rgba(255, 0, 116, 0.45) !important;
  background: linear-gradient(135deg, #ff1a82 0%, #ff4095 100%) !important;
}

.content-card.locked .locked-btn:active {
  transform: translateY(0) !important;
  box-shadow: 0 2px 12px rgba(255, 0, 116, 0.4) !important;
}

.content-card.locked .locked-btn svg {
  width: 16px !important;
  height: 16px !important;
  flex-shrink: 0 !important;
  opacity: 0.9 !important;
}

/* ========== RESPONSIVE ========== */
@media (max-width: 768px) {
  .content-card.locked .locked-content-wrapper {
    aspect-ratio: 1 / 1 !important;
    min-height: 240px !important;
    max-height: 340px !important;
  }

  .content-card.locked .locked-icon-wrapper {
    width: 56px !important;
    height: 56px !important;
    min-width: 56px !important;
    min-height: 56px !important;
    margin-bottom: 16px !important;
  }

  .content-card.locked .locked-icon-svg {
    width: 24px !important;
    height: 24px !important;
  }

  .content-card.locked .locked-label {
    font-size: 14px !important;
    margin-bottom: 16px !important;
  }

  .content-card.locked .locked-btn {
    padding: 11px 24px !important;
    font-size: 13px !important;
  }

  .play-button {
    width: 48px;
    height: 48px;
  }

  .content-card:hover .play-button {
    width: 64px;
    height: 64px;
  }
}

@media (max-width: 480px) {
  .content-card.locked .locked-content-wrapper {
    min-height: 200px !important;
    max-height: 300px !important;
  }

  .content-card.locked .locked-cta {
    padding: 24px 20px !important;
  }

  .content-card.locked .locked-icon-wrapper {
    width: 50px !important;
    height: 50px !important;
    min-width: 50px !important;
    min-height: 50px !important;
    margin-bottom: 14px !important;
  }

  .content-card.locked .locked-icon-svg {
    width: 22px !important;
    height: 22px !important;
  }

  .content-card.locked .locked-label {
    font-size: 13px !important;
    margin-bottom: 14px !important;
  }

  .content-card.locked .locked-btn {
    padding: 10px 22px !important;
    font-size: 12px !important;
    gap: 6px !important;
  }

  .content-card.locked .locked-btn svg {
    width: 14px !important;
    height: 14px !important;
  }
}
</style>

  </div>
  
  <!-- Footer del post -->
  <div class="post-footer">
      <p class="post-description">Test</p>
    
    <div class="post-actions">


        <a class="action-btn toggle" data-turbo="false" aria-label="Inicia sesión para dar me gusta" href="#enter-modal">
          <svg fill="currentColor" viewBox="0 0 24 24"><path d="M12 21.35l-1.45-1.32C5.4 15.36 2 12.28 2 8.5 2 5.42 4.42 3 7.5 3c1.74 0 3.41.81 4.5 2.09C13.09 3.81 14.76 3 16.5 3 19.58 3 22 5.42 22 8.5c0 3.78-3.4 6.86-8.55 11.54L12 21.35z"/></svg>
          <span>0</span>
</a>
        <a class="action-btn toggle" data-turbo="false" aria-label="Inicia sesión para comentar" href="#enter-modal">
          <svg fill="currentColor" viewBox="0 0 24 24"><path d="M21.99 4c0-1.1-.89-2-1.99-2H4c-1.1 0-2 .9-2 2v12c0 1.1.9 2 2 2h14l4 4-.01-18zM18 14H6v-2h12v2zm0-3H6V9h12v2zm0-3H6V6h12v2z"/></svg>
          <span>0</span>
</a>
        <a class="action-btn toggle" data-turbo="false" aria-label="Inicia sesión para compartir" href="#enter-modal">
          <svg fill="currentColor" viewBox="0 0 24 24"><path d="M18 16.08c-.76 0-1.44.3-1.96.77L8.91 12.7c.05-.23.09-.46.09-.7s-.04-.47-.09-.7l7.05-4.11c.54.5 1.25.81 2.04.81 1.66 0 3-1.34 3-3s-1.34-3-3-3-3 1.34-3 3c0 .24.04.47.09.7L8.04 9.81C7.5 9.31 6.79 9 6 9c-1.66 0-3 1.34-3 3s1.34 3 3 3c.79 0 1.5-.31 2.04-.81l7.12 4.16c-.05.21-.08.43-.08.65 0 1.61 1.31 2.92 2.92 2.92 1.61 0 2.92-1.31 2.92-2.92s-1.31-2.92-2.92-2.92z"/></svg>
</a>      
      <div style="flex: 1;"></div>

        <span class="content-access-badge content-access-badge--price">10,00 $</span>
    </div>
  </div>
</div>
</template></turbo-stream>
  <turbo-stream action="remove" target="for-you-sentinel"></turbo-stream>
