/**
 * Descripciones enriquecidas — listado y vista dedicada (frontend)
 * CTA «Continuar leyendo»: fade editorial (Medium/Substack) + chip pill
 */
.feed-description-pro {
    font-size: clamp(0.95rem, 1.8vw, 1.08rem);
    color: #4a5568;
    line-height: 1.65;
    margin-bottom: 16px;
    word-wrap: break-word;
}

.feed-description-pro p {
    margin: 0 0 0.65em;
}

.feed-description-pro p:last-child {
    margin-bottom: 0;
}

.feed-description-pro ul,
.feed-description-pro ol {
    margin: 0.45em 0 0.75em 1.15em;
    padding: 0;
}

.feed-description-pro li {
    margin-bottom: 0.25em;
}

.feed-description-pro h3,
.feed-description-pro h4 {
    margin: 0.6em 0 0.35em;
    color: #2c5aa0;
    font-size: clamp(1rem, 2vw, 1.15rem);
    font-weight: 700;
    line-height: 1.35;
}

.feed-description-pro blockquote {
    margin: 0.65em 0;
    padding: 0.45em 0 0.45em 0.9em;
    border-left: 3px solid #facc15;
    background: rgba(250, 204, 21, 0.08);
    color: #475569;
    border-radius: 0 6px 6px 0;
}

.feed-description-pro a {
    color: #2c5aa0;
    text-decoration: underline;
    text-underline-offset: 2px;
}

/* —— Continuar leyendo (patrón editorial moderno) —— */
.feed-continue-reading {
    --feed-continue-fade-mid: rgba(238, 243, 255, 0.55);
    --feed-continue-fade-end: #eef3ff;
    margin-bottom: 14px;
}

.feed-continue-reading__preview {
    position: relative;
}

.feed-continue-reading--auto .feed-continue-reading__preview {
    max-height: clamp(7.2rem, 18vw, 9.2rem);
    overflow: hidden;
    -webkit-mask-image: linear-gradient(
        to bottom,
        #000 0%,
        #000 58%,
        transparent 100%
    );
    mask-image: linear-gradient(
        to bottom,
        #000 0%,
        #000 58%,
        transparent 100%
    );
}

.feed-continue-reading--auto .feed-continue-reading__preview::after {
    content: '';
    position: absolute;
    left: 0;
    right: 0;
    bottom: 0;
    height: 42%;
    pointer-events: none;
    background: linear-gradient(
        to bottom,
        transparent 0%,
        var(--feed-continue-fade-mid) 42%,
        var(--feed-continue-fade-end) 100%
    );
}

.feed-continue-reading--manual .feed-description-pro--excerpt-body {
    margin-bottom: 0;
}

.feed-continue-reading__footer {
    display: flex;
    justify-content: flex-start;
    margin-top: 0.55rem;
}

.feed-continue-reading__chip {
    display: inline-flex;
    align-items: center;
    gap: 0.55rem;
    padding: 0.42rem 0.72rem 0.42rem 0.95rem;
    border-radius: 999px;
    background: linear-gradient(135deg, rgba(44, 90, 160, 0.11) 0%, rgba(44, 90, 160, 0.05) 100%);
    border: 1px solid rgba(44, 90, 160, 0.16);
    color: #2c5aa0;
    font-size: clamp(0.78rem, 1.45vw, 0.86rem);
    font-weight: 600;
    letter-spacing: 0.03em;
    text-transform: uppercase;
    text-decoration: none;
    cursor: pointer;
    transition: transform 0.22s ease, box-shadow 0.22s ease, border-color 0.22s ease, background 0.22s ease;
    box-shadow: 0 1px 2px rgba(44, 90, 160, 0.06);
}

.feed-continue-reading__chip:hover,
.feed-continue-reading__chip:focus-visible {
    transform: translateY(-1px);
    border-color: rgba(44, 90, 160, 0.28);
    background: linear-gradient(135deg, rgba(44, 90, 160, 0.16) 0%, rgba(44, 90, 160, 0.08) 100%);
    box-shadow: 0 6px 18px rgba(44, 90, 160, 0.14);
    color: #1f3f73;
    outline: none;
}

.feed-continue-reading__chip-text {
    line-height: 1;
}

.feed-continue-reading__chip-icon {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 1.35rem;
    height: 1.35rem;
    border-radius: 50%;
    background: rgba(44, 90, 160, 0.12);
    font-size: 0.58rem;
    transition: transform 0.25s ease, background 0.22s ease;
}

.feed-continue-reading__chip:hover .feed-continue-reading__chip-icon,
.feed-continue-reading__chip:focus-visible .feed-continue-reading__chip-icon {
    transform: translateY(2px);
    background: rgba(44, 90, 160, 0.2);
}

.feed-continue-reading + .social-post-actions,
.feed-description-pro--short + .social-post-actions {
    margin-top: 0;
}

/* Tarjetas: fade acorde al fondo de la card */
.social-post-card,
.event-card,
.moment-card {
    --feed-continue-fade-mid: rgba(255, 255, 255, 0.4);
    --feed-continue-fade-end: #ffffff;
}

.social-post-card .feed-continue-reading--auto .feed-continue-reading__preview::after,
.event-card .feed-continue-reading--auto .feed-continue-reading__preview::after,
.moment-card .feed-continue-reading--auto .feed-continue-reading__preview::after {
    background: linear-gradient(
        to bottom,
        transparent 0%,
        rgba(255, 255, 255, 0.65) 38%,
        rgba(238, 243, 255, 0.96) 100%
    );
}

.social-post-card--dedicated .feed-description-pro,
.public-dedicated-outer .feed-description-pro {
    font-size: clamp(1rem, 2vw, 1.12rem);
    margin-bottom: 24px;
}

@media (max-width: 480px) {
    .feed-continue-reading--auto .feed-continue-reading__preview {
        max-height: 6.8rem;
    }

    .feed-continue-reading__chip {
        padding: 0.38rem 0.65rem 0.38rem 0.85rem;
        font-size: 0.74rem;
    }
}

@media (prefers-reduced-motion: reduce) {
    .feed-continue-reading__chip,
    .feed-continue-reading__chip-icon {
        transition: none;
    }
}
