.ddc-public-home {
    width: 100%;
    max-width: 1180px;
    margin: 0 auto;
    display: grid;
    gap: 28px;
}

.ddc-public-home *,
.ddc-public-home *::before,
.ddc-public-home *::after {
    box-sizing: border-box;
}

.ddc-public-home__hero {
    display: grid;
    grid-template-columns: minmax(0, 1.55fr) minmax(280px, 0.95fr);
    gap: 22px;
    align-items: stretch;
}

.ddc-public-home__secondary,
.ddc-public-home__sidebar {
    display: grid;
    gap: 18px;
}

.ddc-public-home__content {
    display: grid;
    grid-template-columns: minmax(0, 1fr) 310px;
    gap: 28px;
    align-items: start;
}

.ddc-public-home__grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 22px;
}

.ddc-news-card {
    background: #fff;
    border: 1px solid rgba(15, 23, 42, .12);
    overflow: hidden;
    min-width: 0;
}

.ddc-news-card__image {
    display: block;
    width: 100%;
    aspect-ratio: 16 / 9;
    background: #eef2f7;
    overflow: hidden;
}

.ddc-news-card__image img {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.ddc-news-card__body {
    padding: 16px;
}

.ddc-news-card__kicker {
    display: inline-block;
    margin-bottom: 8px;
    font-size: 13px;
    font-weight: 800;
    line-height: 1.2;
    text-transform: none;
    color: #d1007d;
}

.ddc-news-card h2 {
    margin: 0;
    font-size: 22px;
    line-height: 1.16;
    font-weight: 850;
}

.ddc-news-card h2 a {
    color: inherit;
    text-decoration: none;
}

.ddc-news-card h2 a:hover {
    text-decoration: underline;
}

.ddc-news-card p {
    margin: 10px 0 0;
    color: #475569;
    font-size: 15px;
    line-height: 1.45;
}

.ddc-news-card.is-principal h2 {
    font-size: clamp(30px, 4vw, 52px);
    line-height: 1.02;
}

.ddc-news-card.is-principal .ddc-news-card__body {
    padding: 22px;
}

.ddc-news-card.is-secondary h2,
.ddc-news-card.is-sidebar h2 {
    font-size: 20px;
}

.ddc-news-card.is-grid h2 {
    font-size: 21px;
}

.ddc-public-banners {
    display: grid;
    gap: 12px;
    margin: 16px auto;
}

.ddc-public-banner img {
    display: block;
    max-width: 100%;
    height: auto;
    margin: 0 auto;
}

.ddc-public-videos {
    display: grid;
    gap: 18px;
}

.ddc-public-video iframe {
    width: 100%;
    max-width: 100%;
}

@media (max-width: 900px) {
    .ddc-public-home__hero,
    .ddc-public-home__content {
        grid-template-columns: 1fr;
    }

    .ddc-public-home__grid {
        grid-template-columns: 1fr;
    }

    .ddc-public-home__sidebar {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
}

@media (max-width: 640px) {
    .ddc-public-home {
        gap: 18px;
    }

    .ddc-public-home__hero,
    .ddc-public-home__content,
    .ddc-public-home__grid,
    .ddc-public-home__sidebar,
    .ddc-public-home__secondary {
        gap: 14px;
    }

    .ddc-public-home__sidebar {
        grid-template-columns: 1fr;
    }

    .ddc-news-card h2,
    .ddc-news-card.is-principal h2,
    .ddc-news-card.is-grid h2,
    .ddc-news-card.is-secondary h2,
    .ddc-news-card.is-sidebar h2 {
        font-size: 22px;
    }
}

/* Publicidad / banners v0.4.0 */
.ddc-public-banners {
    position: relative;
}

.ddc-public-banner picture,
.ddc-public-banner a {
    display: block;
}

.ddc-public-banners--mobile_sticky {
    position: fixed;
    left: 12px;
    right: 12px;
    bottom: 12px;
    z-index: 9999;
    margin: 0;
    display: none;
    justify-items: center;
    pointer-events: none;
}

.ddc-public-banners--mobile_sticky .ddc-public-banner {
    position: relative;
    max-width: 680px;
    width: 100%;
    pointer-events: auto;
    background: #fff;
    border: 1px solid rgba(15, 23, 42, .18);
    box-shadow: 0 18px 45px rgba(15, 23, 42, .22);
}

.ddc-public-banners--mobile_sticky .ddc-public-banner img {
    width: 100%;
}

.ddc-public-banner__close {
    position: absolute;
    top: -12px;
    right: -10px;
    z-index: 2;
    width: 28px;
    height: 28px;
    border: 1px solid rgba(15, 23, 42, .22);
    border-radius: 999px;
    background: #fff;
    color: #0f172a;
    font-size: 22px;
    line-height: 24px;
    cursor: pointer;
}

@media (max-width: 767px) {
    .ddc-public-banners--mobile_sticky {
        display: grid;
    }
}

/* Nota individual pública v0.5.0 */
.ddc-news-single {
    max-width: 920px;
    margin: 0 auto;
    color: #0f172a;
}

.ddc-news-single *,
.ddc-news-single *::before,
.ddc-news-single *::after {
    box-sizing: border-box;
}

.ddc-news-single__header {
    margin-bottom: 24px;
}

.ddc-news-single__categories {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
    margin-bottom: 14px;
}

.ddc-news-single__categories a,
.ddc-news-single__tags a {
    display: inline-flex;
    align-items: center;
    border: 1px solid rgba(15, 23, 42, .14);
    border-radius: 999px;
    padding: 6px 10px;
    color: #0f172a;
    font-size: 13px;
    font-weight: 750;
    text-decoration: none;
}

.ddc-news-single__kicker {
    margin: 0 0 10px;
    color: #d1007d;
    font-size: 16px;
    font-weight: 850;
}

.ddc-news-single__title {
    margin: 0;
    font-size: clamp(36px, 5vw, 64px);
    line-height: .98;
    font-weight: 900;
    letter-spacing: -.04em;
}

.ddc-news-single__subtitle {
    margin: 14px 0 0;
    color: #1e293b;
    font-size: clamp(22px, 3vw, 30px);
    line-height: 1.18;
    font-weight: 750;
}

.ddc-news-single__lead {
    margin: 16px 0 0;
    color: #475569;
    font-size: clamp(18px, 2.2vw, 22px);
    line-height: 1.45;
    font-weight: 500;
}

.ddc-news-single__meta {
    display: flex;
    flex-wrap: wrap;
    gap: 8px 16px;
    margin-top: 18px;
    color: #64748b;
    font-size: 14px;
}

.ddc-news-single__featured {
    margin: 0 0 26px;
}

.ddc-news-single__featured img {
    display: block;
    width: 100%;
    height: auto;
}

.ddc-news-single__featured figcaption {
    margin-top: 8px;
    color: #64748b;
    font-size: 13px;
    line-height: 1.35;
}

.ddc-news-single__video {
    margin: 24px 0;
}

.ddc-news-single__video iframe {
    width: 100%;
    max-width: 100%;
    aspect-ratio: 16 / 9;
    height: auto;
}

.ddc-news-single__content {
    font-size: 19px;
    line-height: 1.75;
}

.ddc-news-single__content p,
.ddc-news-single__content ul,
.ddc-news-single__content ol,
.ddc-news-single__content blockquote {
    margin-top: 0;
    margin-bottom: 1.35em;
}

.ddc-news-single__content h2,
.ddc-news-single__content h3,
.ddc-news-single__content h4 {
    margin-top: 1.5em;
    margin-bottom: .65em;
    line-height: 1.15;
}

.ddc-news-single__content img {
    max-width: 100%;
    height: auto;
}

.ddc-news-single__content blockquote {
    border-left: 4px solid #d1007d;
    padding-left: 18px;
    color: #334155;
    font-size: 1.08em;
}

.ddc-news-single__ad {
    margin: 28px auto;
}

.ddc-news-single__gallery,
.ddc-news-single__related {
    margin-top: 36px;
    padding-top: 28px;
    border-top: 1px solid rgba(15, 23, 42, .12);
}

.ddc-news-single__gallery h2,
.ddc-news-single__related h2 {
    margin: 0 0 18px;
    font-size: 24px;
}

.ddc-news-single__gallery-grid,
.ddc-news-single__related-grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 16px;
}

.ddc-news-single__gallery-grid img,
.ddc-news-single__related-image img {
    display: block;
    width: 100%;
    aspect-ratio: 16 / 10;
    height: auto;
    object-fit: cover;
}

.ddc-news-single__tags {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
    margin-top: 30px;
}

.ddc-news-single__related-card {
    border: 1px solid rgba(15, 23, 42, .12);
    background: #fff;
}

.ddc-news-single__related-card h3 {
    margin: 0;
    padding: 14px;
    font-size: 18px;
    line-height: 1.2;
}

.ddc-news-single__related-card a {
    color: inherit;
    text-decoration: none;
}

.ddc-news-single__related-card a:hover {
    text-decoration: underline;
}

.ddc-news-single__restricted-card {
    display: grid;
    gap: 8px;
    margin: 24px 0;
    padding: 22px;
    border: 1px solid rgba(15, 23, 42, .14);
    border-radius: 18px;
    background: #f8fafc;
}

.ddc-news-single__restricted-card a {
    justify-self: start;
    margin-top: 8px;
    padding: 10px 14px;
    border-radius: 999px;
    background: #0f172a;
    color: #fff;
    font-weight: 800;
    text-decoration: none;
}

@media (max-width: 720px) {
    .ddc-news-single {
        padding: 0 16px;
    }

    .ddc-news-single__title {
        letter-spacing: -.03em;
    }

    .ddc-news-single__content {
        font-size: 18px;
        line-height: 1.68;
    }

    .ddc-news-single__gallery-grid,
    .ddc-news-single__related-grid {
        grid-template-columns: 1fr;
    }
}

/* v0.6.0 - Autores públicos */
.ddc-news-single__author {
    display: flex;
    gap: 14px;
    align-items: flex-start;
    margin-top: 18px;
    padding: 14px;
    border: 1px solid rgba(15, 23, 42, .12);
    background: #f8fafc;
}

.ddc-news-single__author img {
    width: 58px;
    height: 58px;
    border-radius: 999px;
    object-fit: cover;
    flex: 0 0 auto;
}

.ddc-news-single__author strong,
.ddc-public-author-card strong {
    display: block;
    color: #0f172a;
    font-weight: 850;
}

.ddc-news-single__author span,
.ddc-public-author-card span {
    display: block;
    color: #64748b;
    font-size: 13px;
    margin-top: 2px;
}

.ddc-news-single__author p {
    margin: 8px 0 0;
    font-size: 14px;
    line-height: 1.45;
    color: #475569;
}

.ddc-news-single__author-links {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
    margin-top: 8px;
}

.ddc-news-single__author-links a {
    color: #0f172a;
    font-size: 13px;
    font-weight: 700;
    text-decoration: none;
}

.ddc-public-authors {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 16px;
}

.ddc-public-author-card {
    display: flex;
    align-items: center;
    gap: 12px;
    padding: 14px;
    border: 1px solid rgba(15, 23, 42, .12);
    background: #fff;
}

.ddc-public-author-card img {
    width: 54px;
    height: 54px;
    border-radius: 999px;
    object-fit: cover;
}

@media (max-width: 800px) {
    .ddc-public-authors {
        grid-template-columns: 1fr;
    }
}

/* v0.7.0 - Secciones públicas */
.ddc-public-sections {
    display: grid;
    gap: 34px;
    max-width: 1180px;
    margin: 0 auto;
}

.ddc-public-section {
    --ddc-section-color: #d1007d;
    display: grid;
    gap: 18px;
}

.ddc-public-section__head {
    display: flex;
    align-items: flex-end;
    justify-content: space-between;
    gap: 16px;
    padding-bottom: 12px;
    border-bottom: 3px solid var(--ddc-section-color);
}

.ddc-public-section__head h2 {
    margin: 0;
    color: #0f172a;
    font-size: clamp(24px, 3vw, 36px);
    line-height: 1;
    font-weight: 900;
    letter-spacing: -.035em;
}

.ddc-public-section__head h2 span {
    display: inline-block;
    margin-right: 8px;
}

.ddc-public-section__head p {
    margin: 8px 0 0;
    color: #64748b;
    font-size: 15px;
}

.ddc-public-section__head a {
    color: #0f172a;
    font-size: 14px;
    font-weight: 850;
    text-decoration: none;
    white-space: nowrap;
}

.ddc-public-section__head a:hover {
    text-decoration: underline;
}

.ddc-public-section__grid {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 18px;
}

.ddc-public-section--list .ddc-public-section__grid {
    grid-template-columns: 1fr;
}

.ddc-public-section--compact .ddc-public-section__grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 12px;
}

.ddc-section-post {
    min-width: 0;
    background: #fff;
    border: 1px solid rgba(15, 23, 42, .12);
    overflow: hidden;
}

.ddc-section-post__image {
    display: block;
    aspect-ratio: 16 / 9;
    background: #eef2f7;
    overflow: hidden;
}

.ddc-section-post__image img {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.ddc-section-post__body {
    padding: 14px;
}

.ddc-section-post__body span {
    display: inline-block;
    margin-bottom: 8px;
    color: var(--ddc-section-color);
    font-size: 13px;
    font-weight: 850;
}

.ddc-section-post__body h3 {
    margin: 0;
    color: #0f172a;
    font-size: 20px;
    line-height: 1.14;
    font-weight: 850;
}

.ddc-section-post__body h3 a {
    color: inherit;
    text-decoration: none;
}

.ddc-section-post__body h3 a:hover {
    text-decoration: underline;
}

.ddc-section-post__body p {
    margin: 10px 0 0;
    color: #475569;
    font-size: 15px;
    line-height: 1.45;
}

.ddc-public-section--list .ddc-section-post,
.ddc-section-post--list,
.ddc-section-post--compact {
    display: grid;
    grid-template-columns: 220px minmax(0, 1fr);
    align-items: stretch;
}

.ddc-section-post--compact .ddc-section-post__body h3 {
    font-size: 17px;
}

@media (max-width: 980px) {
    .ddc-public-section__grid,
    .ddc-public-section--compact .ddc-public-section__grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
}

@media (max-width: 680px) {
    .ddc-public-section__head {
        align-items: flex-start;
        flex-direction: column;
    }

    .ddc-public-section__grid,
    .ddc-public-section--compact .ddc-public-section__grid {
        grid-template-columns: 1fr;
    }

    .ddc-public-section--list .ddc-section-post,
    .ddc-section-post--list,
    .ddc-section-post--compact {
        grid-template-columns: 1fr;
    }
}

/* v0.8.0 - Elementor Bridge */
.ddc-elementor-empty {
    padding: 16px;
    border: 1px dashed rgba(15, 23, 42, .24);
    background: #f8fafc;
    color: #475569;
    font-size: 14px;
}

.ddc-elementor-posts {
    --ddc-posts-columns: 3;
    display: grid;
    grid-template-columns: repeat(var(--ddc-posts-columns), minmax(0, 1fr));
    gap: 22px;
}

.ddc-elementor-posts--list,
.ddc-elementor-posts--compact {
    grid-template-columns: 1fr;
}

.ddc-elementor-posts--hero .ddc-elementor-post-card:first-child {
    grid-column: 1 / -1;
}

.ddc-elementor-post-card.is-horizontal {
    display: grid;
    grid-template-columns: 240px minmax(0, 1fr);
}

.ddc-elementor-post-card.is-horizontal .ddc-news-card__image {
    height: 100%;
    aspect-ratio: auto;
}

.ddc-elementor-post-card__meta {
    display: flex;
    flex-wrap: wrap;
    gap: 6px 12px;
    margin-top: 8px;
    color: #64748b;
    font-size: 13px;
    font-weight: 650;
}

@media (max-width: 900px) {
    .ddc-elementor-posts {
        --ddc-posts-columns: 2;
    }
}

@media (max-width: 640px) {
    .ddc-elementor-posts {
        --ddc-posts-columns: 1;
    }

    .ddc-elementor-post-card.is-horizontal {
        grid-template-columns: 1fr;
    }

    .ddc-elementor-post-card.is-horizontal .ddc-news-card__image {
        aspect-ratio: 16 / 9;
    }
}

/* v0.8.1 - Elementor/Portada label controls */
.ddc-news-card__labels {
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    gap: 6px 10px;
    margin-bottom: 8px;
}

.ddc-news-card__labels .ddc-news-card__kicker {
    margin-bottom: 0;
}

.ddc-news-card__labels .ddc-news-card__kicker.is-category {
    opacity: .82;
}

.ddc-news-single__restricted-label {
    display: inline-flex;
    justify-self: start;
    padding: 5px 10px;
    border-radius: 999px;
    background: rgba(15, 23, 42, .08);
    color: #0f172a;
    font-size: 12px;
    font-weight: 900;
    text-transform: uppercase;
    letter-spacing: .04em;
}

.ddc-news-single__restricted-actions {
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
    margin-top: 8px;
}

.ddc-news-single__restricted-card .ddc-news-single__restricted-secondary {
    background: #fff;
    color: #0f172a;
    border: 1px solid rgba(15, 23, 42, .18);
}

/* Espacios publicitarios dinámicos v0.9.3 */
.ddc-public-banners[data-ddc-ad-space] {
    width: 100%;
}

.ddc-public-banners--home_lateral,
.ddc-public-banners--home_lateral_derecho,
.ddc-public-banners--nota_lateral {
    align-content: start;
}

/* v0.9.4 - Contenido restringido y leyendas en portada */
.ddc-access-badge {
    display: inline-flex;
    align-items: center;
    width: fit-content;
    margin: 0 0 8px;
    padding: 5px 9px;
    border-radius: 999px;
    background: #0f172a;
    color: #fff;
    font-size: 11px;
    line-height: 1;
    font-weight: 900;
    letter-spacing: .03em;
    text-transform: uppercase;
}

.ddc-access-badge--paid_subscribers {
    background: #d1007d;
}

.ddc-news-card.is-restricted .ddc-news-card__image,
.ddc-section-post.is-restricted .ddc-section-post__image {
    position: relative;
}

.ddc-news-card.is-restricted .ddc-news-card__image::after,
.ddc-section-post.is-restricted .ddc-section-post__image::after {
    content: '★';
    position: absolute;
    top: 10px;
    right: 10px;
    display: grid;
    place-items: center;
    width: 30px;
    height: 30px;
    border-radius: 999px;
    background: rgba(15, 23, 42, .86);
    color: #fff;
    font-size: 13px;
    font-weight: 900;
    z-index: 2;
}

.ddc-news-single--locked {
    max-width: 760px;
    min-height: 48vh;
    display: grid;
    align-items: center;
}

.ddc-news-single__restricted--gate {
    margin: 32px 0;
}

.ddc-news-single__restricted--gate .ddc-news-single__restricted-card {
    padding: clamp(28px, 5vw, 48px);
    text-align: center;
    align-items: center;
    border-radius: 22px;
    border: 1px solid rgba(15, 23, 42, .14);
    background: linear-gradient(180deg, #ffffff 0%, #f8fafc 100%);
    box-shadow: 0 18px 55px rgba(15, 23, 42, .08);
}

.ddc-news-single__restricted--gate .ddc-news-single__restricted-label {
    background: #0f172a;
    color: #fff;
}

.ddc-news-single__restricted--paid_subscribers.ddc-news-single__restricted--gate .ddc-news-single__restricted-label {
    background: #d1007d;
}

.ddc-news-single__restricted--gate strong {
    margin-top: 10px;
    font-size: clamp(24px, 3vw, 38px);
    line-height: 1.08;
    letter-spacing: -.03em;
}

.ddc-news-single__restricted--gate span:not(.ddc-news-single__restricted-label) {
    max-width: 520px;
    color: #475569;
    font-size: 16px;
    line-height: 1.5;
}

.ddc-news-single__restricted--gate .ddc-news-single__restricted-actions {
    justify-content: center;
    margin-top: 18px;
}

/* v0.9.5 - Popup frontal de login / registro */
.ddc-auth-open {
    overflow: hidden;
}

.ddc-auth-modal[hidden] {
    display: none !important;
}

.ddc-auth-modal {
    position: fixed;
    inset: 0;
    z-index: 999999;
    display: grid;
    place-items: center;
    padding: 20px;
}

.ddc-auth-modal__overlay {
    position: absolute;
    inset: 0;
    border: 0;
    background: rgba(15, 23, 42, .72);
    backdrop-filter: blur(7px);
    cursor: pointer;
}

.ddc-auth-modal__dialog {
    position: relative;
    width: min(100%, 460px);
    max-height: calc(100vh - 40px);
    overflow: auto;
    border-radius: 24px;
    background: #fff;
    color: #0f172a;
    box-shadow: 0 35px 90px rgba(0, 0, 0, .28);
    padding: 24px;
}

.ddc-auth-modal__close {
    position: absolute;
    top: 14px;
    right: 14px;
    width: 34px;
    height: 34px;
    border: 1px solid rgba(15, 23, 42, .12);
    border-radius: 999px;
    background: #fff;
    color: #0f172a;
    cursor: pointer;
    font-size: 22px;
    line-height: 1;
}

.ddc-auth-modal__header {
    padding-right: 38px;
    margin-bottom: 16px;
}

.ddc-auth-modal__header span {
    display: inline-flex;
    margin-bottom: 8px;
    padding: 5px 9px;
    border-radius: 999px;
    background: #f1f5f9;
    color: #475569;
    font-size: 11px;
    font-weight: 900;
    letter-spacing: .06em;
    text-transform: uppercase;
}

.ddc-auth-modal__header strong {
    display: block;
    font-size: clamp(24px, 4vw, 34px);
    line-height: 1.05;
    letter-spacing: -.035em;
}

.ddc-auth-modal__header p {
    margin: 8px 0 0;
    color: #64748b;
    font-size: 14px;
}

.ddc-auth-modal__tabs {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 6px;
    padding: 5px;
    margin-bottom: 16px;
    border-radius: 16px;
    background: #f1f5f9;
}

.ddc-auth-modal__tabs button {
    border: 0;
    border-radius: 12px;
    padding: 10px 8px;
    background: transparent;
    color: #475569;
    cursor: pointer;
    font-size: 12px;
    font-weight: 900;
}

.ddc-auth-modal__tabs button.is-active {
    background: #0f172a;
    color: #fff;
}

.ddc-auth-form {
    display: none;
    gap: 12px;
}

.ddc-auth-form.is-active {
    display: grid;
}

.ddc-auth-form label {
    display: grid;
    gap: 6px;
    color: #0f172a;
    font-size: 13px;
    font-weight: 800;
}

.ddc-auth-form input[type="text"],
.ddc-auth-form input[type="email"],
.ddc-auth-form input[type="password"] {
    width: 100%;
    min-height: 46px;
    border: 1px solid rgba(15, 23, 42, .16);
    border-radius: 14px;
    padding: 10px 13px;
    background: #fff;
    color: #0f172a;
    outline: none;
}

.ddc-auth-form input:focus {
    border-color: #0f172a;
    box-shadow: 0 0 0 4px rgba(15, 23, 42, .08);
}

.ddc-auth-check {
    display: flex !important;
    grid-template-columns: none !important;
    align-items: center;
    gap: 8px !important;
    color: #475569 !important;
    font-size: 13px !important;
}

.ddc-auth-check input {
    width: 16px;
    height: 16px;
}

.ddc-auth-form button[type="submit"] {
    min-height: 48px;
    border: 0;
    border-radius: 999px;
    background: #0f172a;
    color: #fff;
    cursor: pointer;
    font-weight: 900;
}

.ddc-auth-form button[type="submit"]:disabled {
    cursor: wait;
    opacity: .72;
}

.ddc-auth-status {
    min-height: 18px;
    font-size: 13px;
    font-weight: 700;
}

.ddc-auth-status.is-error {
    color: #b91c1c;
}

.ddc-auth-status.is-success {
    color: #047857;
}

.ddc-auth-hp {
    position: absolute !important;
    left: -9999px !important;
    width: 1px !important;
    height: 1px !important;
    opacity: 0 !important;
}

@media (max-width: 480px) {
    .ddc-auth-modal {
        padding: 12px;
    }

    .ddc-auth-modal__dialog {
        border-radius: 20px;
        padding: 20px;
    }

    .ddc-auth-modal__tabs {
        grid-template-columns: 1fr;
    }
}

/* v0.9.7 - Planes y pagos */
.ddc-plans{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:18px;margin:24px 0}.ddc-plan-card{border:1px solid rgba(15,23,42,.12);border-radius:18px;padding:22px;background:#fff;box-shadow:0 12px 30px rgba(15,23,42,.06);display:flex;flex-direction:column;gap:10px}.ddc-plan-card h3{margin:0;font-size:1.25rem}.ddc-plan-card p{margin:0;color:#475569}.ddc-plan-card strong{font-size:1.8rem;line-height:1}.ddc-plan-card span{color:#64748b}.ddc-plan-card .ddc-btn{align-self:flex-start;margin-top:8px;text-decoration:none}

/* Mi cuenta / suscripciones v1.0.1 */
.ddc-account,
.ddc-plans {
    max-width: 1060px;
    margin: 32px auto;
    padding: 0 16px;
    box-sizing: border-box;
}

.ddc-account *,
.ddc-account *::before,
.ddc-account *::after,
.ddc-plans *,
.ddc-plans *::before,
.ddc-plans *::after {
    box-sizing: border-box;
}

.ddc-account-hero,
.ddc-account-card,
.ddc-plan-card,
.ddc-payment-notice {
    background: #fff;
    border: 1px solid rgba(15, 23, 42, .12);
    border-radius: 18px;
    box-shadow: 0 20px 60px rgba(15, 23, 42, .08);
}

.ddc-account-hero {
    display: flex;
    justify-content: space-between;
    gap: 20px;
    align-items: center;
    padding: 26px;
    margin-bottom: 22px;
}

.ddc-account-eyebrow {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    margin-bottom: 8px;
    color: #d1007d;
    font-size: 12px;
    font-weight: 900;
    letter-spacing: .04em;
    text-transform: uppercase;
}

.ddc-account-hero h2,
.ddc-account-card h2,
.ddc-account-card h3 {
    margin: 0 0 8px;
    color: #0f172a;
    line-height: 1.1;
}

.ddc-account-hero p,
.ddc-account-card p {
    margin: 0;
    color: #64748b;
}

.ddc-account-status {
    display: inline-flex;
    align-items: center;
    border-radius: 999px;
    padding: 9px 13px;
    font-size: 12px;
    font-weight: 900;
    text-transform: uppercase;
    white-space: nowrap;
}

.ddc-account-status--active,
.ddc-payment-notice--success {
    background: #ecfdf5;
    border-color: rgba(16, 185, 129, .35);
    color: #065f46;
}

.ddc-account-status--pending,
.ddc-payment-notice--warning {
    background: #fffbeb;
    border-color: rgba(245, 158, 11, .35);
    color: #92400e;
}

.ddc-account-status--expired,
.ddc-account-status--inactive,
.ddc-payment-notice--error {
    background: #fff1f2;
    border-color: rgba(225, 29, 72, .28);
    color: #9f1239;
}

.ddc-account-grid {
    display: grid;
    grid-template-columns: minmax(0, 1.15fr) minmax(300px, .85fr);
    gap: 22px;
    align-items: start;
}

.ddc-account-card,
.ddc-plan-card {
    padding: 24px;
}

.ddc-account-card--center {
    max-width: 640px;
    margin: 0 auto;
    text-align: center;
}

.ddc-account-card--full {
    margin-top: 22px;
}

.ddc-account-data {
    display: grid;
    gap: 12px;
    margin: 18px 0 22px;
}

.ddc-account-data div {
    display: grid;
    grid-template-columns: 150px minmax(0, 1fr);
    gap: 12px;
    padding-bottom: 12px;
    border-bottom: 1px solid rgba(15, 23, 42, .08);
}

.ddc-account-data dt {
    color: #64748b;
    font-size: 13px;
    font-weight: 800;
}

.ddc-account-data dd {
    margin: 0;
    color: #0f172a;
    font-weight: 800;
}

.ddc-account-actions {
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
    align-items: center;
    margin-top: 18px;
}

.ddc-btn,
.ddc-account .ddc-btn,
.ddc-plans .ddc-btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 42px;
    padding: 10px 16px;
    border-radius: 999px;
    border: 1px solid rgba(15, 23, 42, .16);
    background: #fff;
    color: #0f172a;
    font-weight: 900;
    text-decoration: none;
    line-height: 1.1;
}

.ddc-btn:hover,
.ddc-account .ddc-btn:hover,
.ddc-plans .ddc-btn:hover {
    text-decoration: none;
    transform: translateY(-1px);
}

.ddc-btn-primary,
.ddc-account .ddc-btn-primary,
.ddc-plans .ddc-btn-primary {
    background: #0f172a;
    border-color: #0f172a;
    color: #fff;
}

.ddc-btn-muted,
.ddc-account .ddc-btn-muted {
    color: #64748b;
}

.ddc-account-payments {
    display: grid;
    gap: 12px;
    margin-top: 16px;
}

.ddc-account-payment-row {
    display: flex;
    justify-content: space-between;
    gap: 14px;
    padding: 12px 0;
    border-bottom: 1px solid rgba(15, 23, 42, .08);
}

.ddc-account-payment-row strong,
.ddc-account-payment-row span {
    display: block;
}

.ddc-account-payment-row span,
.ddc-account-empty {
    color: #64748b;
    font-size: 13px;
}

.ddc-account-table-wrap {
    overflow-x: auto;
    margin-top: 16px;
}

.ddc-account-table {
    width: 100%;
    border-collapse: collapse;
    min-width: 640px;
}

.ddc-account-table th,
.ddc-account-table td {
    text-align: left;
    padding: 12px;
    border-bottom: 1px solid rgba(15, 23, 42, .08);
}

.ddc-account-table th {
    color: #64748b;
    font-size: 12px;
    text-transform: uppercase;
}

.ddc-payment-notice {
    display: grid;
    gap: 4px;
    margin: 0 0 18px;
    padding: 16px 18px;
}

.ddc-payment-notice strong,
.ddc-payment-notice span,
.ddc-payment-notice a {
    display: block;
}

.ddc-payment-notice a {
    color: inherit;
    font-weight: 900;
    margin-top: 6px;
}

.ddc-plans {
    display: grid;
    gap: 18px;
}

.ddc-plan-card {
    display: grid;
    gap: 12px;
}

.ddc-plan-card h3,
.ddc-plan-card p {
    margin: 0;
}

.ddc-plan-card > strong {
    display: block;
    color: #0f172a;
    font-size: clamp(24px, 3vw, 34px);
    line-height: 1;
}

.ddc-plan-card > span {
    color: #64748b;
    font-weight: 700;
}

@media (max-width: 820px) {
    .ddc-account-hero,
    .ddc-account-grid {
        grid-template-columns: 1fr;
    }

    .ddc-account-hero {
        display: grid;
        align-items: start;
    }

    .ddc-account-data div {
        grid-template-columns: 1fr;
        gap: 4px;
    }

    .ddc-account-payment-row {
        display: grid;
    }
}

/* v1.0.2 - Mi cuenta: cancelación y componentes globales */
.ddc-cancel-subscription-form {
    display: grid;
    gap: 8px;
    margin-top: 18px;
    padding-top: 16px;
    border-top: 1px solid rgba(15, 23, 42, .08);
}

.ddc-cancel-subscription-form small,
.ddc-account-note {
    color: #64748b;
    font-size: 13px;
    line-height: 1.45;
}

.ddc-btn-danger-outline,
.ddc-account .ddc-btn-danger-outline {
    background: #fff;
    color: #b42318;
    border-color: rgba(180, 35, 24, .28);
}

.ddc-btn-danger-outline:hover,
.ddc-account .ddc-btn-danger-outline:hover {
    background: #fef3f2;
    color: #912018;
}

.ddc-account-status--cancelled {
    background: #fff7ed;
    color: #c2410c;
}

.ddc-account-notice--success {
    border-color: rgba(22, 163, 74, .18);
    background: #f0fdf4;
}

.ddc-account-notice--error {
    border-color: rgba(180, 35, 24, .18);
    background: #fef3f2;
}

.ddc-site-logo {
    display: inline-block;
    max-width: 220px;
    height: auto;
}

.ddc-social-links {
    display: inline-flex;
    align-items: center;
    gap: 10px;
    flex-wrap: wrap;
}

.ddc-social-links a {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-width: 36px;
    min-height: 36px;
    padding: 0;
    color: inherit;
    text-decoration: none;
    border-radius: 999px;
    border: 1px solid rgba(148, 163, 184, .22);
    background: #fff;
    transition: transform .18s ease, color .18s ease, border-color .18s ease, box-shadow .18s ease;
}
.ddc-social-links a:hover,
.ddc-social-links a:focus-visible {
    transform: translateY(-1px);
    color: #0f172a;
    border-color: rgba(15, 23, 42, .16);
    box-shadow: 0 8px 20px rgba(15, 23, 42, .08);
}
.ddc-social-icon,
.ddc-widget-icon {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    flex: 0 0 auto;
}
.ddc-social-icon svg {
    width: 17px;
    height: 17px;
    display: block;
}
.ddc-social-label {
    font-size: 14px;
    font-weight: 700;
}

.ddc-weather-widget,
.ddc-dollar-widget {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    color: #475569;
    font-size: 14px;
}
.ddc-widget-icon {
    width: 30px;
    height: 30px;
    border-radius: 999px;
    background: #f8fafc;
    color: #0f172a;
    border: 1px solid rgba(148, 163, 184, .22);
}
.ddc-widget-icon svg {
    width: 16px;
    height: 16px;
    display: block;
}
.ddc-widget-text {
    display: inline-flex;
    align-items: center;
    gap: 4px;
    flex-wrap: wrap;
}

/* Configuración visual global v1.0.3 */
.ddc-site-logo {
    display: inline-block;
    width: auto;
    height: auto;
    max-width: 100%;
}

.ddc-weather-widget strong {
    color: #0f172a;
    font-weight: 850;
}

.ddc-dollar-widget {
    flex-wrap: wrap;
    justify-content: center;
}

.ddc-dollar-widget__item {
    white-space: nowrap;
}

.ddc-dollar-widget__sep {
    opacity: .55;
}

.ddc-dollar-widget small {
    color: #64748b;
    font-size: 12px;
}


/* v1.0.6 - Soporte video loop en portada/cards y publicidad premium */
.ddc-news-card__image,
.ddc-section-post__image {
    position: relative;
}
.ddc-news-card__image.has-video-media,
.ddc-section-post__image.has-video-media {
    background: #000;
}
.ddc-card-loop-video {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: cover;
}
.ddc-video-loop-badge {
    position: absolute;
    left: 12px;
    bottom: 12px;
    z-index: 3;
    display: inline-flex;
    align-items: center;
    gap: 5px;
    padding: 6px 10px;
    border-radius: 999px;
    background: rgba(7, 17, 38, .88);
    color: #fff;
    font-size: 12px;
    font-weight: 900;
    line-height: 1;
    box-shadow: 0 10px 24px rgba(7, 17, 38, .22);
}
.ddc-news-card.has-loop-video .ddc-news-card__image::after,
.ddc-section-post.has-loop-video .ddc-section-post__image::after {
    content: '';
    position: absolute;
    inset: auto 0 0 0;
    height: 42%;
    pointer-events: none;
    background: linear-gradient(to top, rgba(7,17,38,.42), transparent);
}

.ddc-card-loop-video--youtube {
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
    border: 0;
    background: #000;
    pointer-events: none;
}
.ddc-card-media-link {
    position: absolute;
    inset: 0;
    z-index: 2;
    display: block;
}
.ddc-news-card__image.has-youtube-loop,
.ddc-section-post__image.has-youtube-loop {
    display: block;
    position: relative;
    overflow: hidden;
}
.ddc-news-card__image.has-youtube-loop .ddc-video-loop-badge,
.ddc-section-post__image.has-youtube-loop .ddc-video-loop-badge {
    z-index: 4;
}

.ddc-public-home__ad:empty,
.ddc-public-home__ad .ddc-public-banners:empty {
    display: none;
}
.ddc-public-home__ad {
    display: flex;
    justify-content: center;
    margin: 4px 0 2px;
}
.ddc-public-home__ad .ddc-public-banners {
    width: 100%;
    margin: 0 auto;
}
.ddc-public-home__ad .ddc-public-banner img {
    max-height: 260px;
    object-fit: contain;
}

/* v1.0.8 - Publicidad entre bloques de secciones */
.ddc-public-section-ad:empty,
.ddc-public-section-ad .ddc-public-banners:empty {
    display: none;
}
.ddc-public-section-ad {
    display: flex;
    justify-content: center;
    width: 100%;
    margin: 6px 0 4px;
}
.ddc-public-section-ad .ddc-public-banners {
    width: 100%;
    margin: 0 auto;
}
.ddc-public-section-ad .ddc-public-banner img {
    max-height: 260px;
    object-fit: contain;
}

/* v1.2.6-recovery - Secciones públicas: layout compacto estable y cantidad por bloque. */
.ddc-public-section--grid .ddc-public-section__grid {
    grid-template-columns: repeat(4, minmax(0, 1fr));
}

.ddc-public-section--compact .ddc-public-section__grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 14px;
}

.ddc-public-section--compact .ddc-section-post {
    display: grid;
    grid-template-columns: 150px minmax(0, 1fr);
    min-height: 118px;
}

.ddc-public-section--compact .ddc-section-post__image {
    height: 100%;
    min-height: 118px;
    aspect-ratio: auto;
}

.ddc-public-section--compact .ddc-section-post__body {
    min-width: 0;
    padding: 12px 13px;
    display: flex;
    flex-direction: column;
    justify-content: center;
}

.ddc-public-section--compact .ddc-section-post__body h3 {
    font-size: clamp(16px, 1.15vw, 20px);
    line-height: 1.08;
    letter-spacing: -.035em;
    overflow-wrap: anywhere;
    display: -webkit-box;
    -webkit-line-clamp: 3;
    -webkit-box-orient: vertical;
    overflow: hidden;
}

.ddc-public-section--compact .ddc-section-post__body p {
    display: none;
}

.ddc-public-section--list .ddc-public-section__grid {
    grid-template-columns: 1fr;
}

.ddc-public-section--count-1 .ddc-public-section__grid {
    grid-template-columns: 1fr;
}

.ddc-public-section--count-2.ddc-public-section--grid .ddc-public-section__grid,
.ddc-public-section--count-2.ddc-public-section--compact .ddc-public-section__grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
}

@media (max-width: 980px) {
    .ddc-public-section--grid .ddc-public-section__grid,
    .ddc-public-section--compact .ddc-public-section__grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
}

@media (max-width: 760px) {
    .ddc-public-section--grid .ddc-public-section__grid,
    .ddc-public-section--compact .ddc-public-section__grid,
    .ddc-public-section--list .ddc-public-section__grid {
        grid-template-columns: 1fr;
    }

    .ddc-public-section--compact .ddc-section-post,
    .ddc-public-section--list .ddc-section-post {
        display: block;
    }

    .ddc-public-section--compact .ddc-section-post__image,
    .ddc-public-section--list .ddc-section-post__image {
        min-height: 0;
        height: auto;
        aspect-ratio: 16 / 9;
    }
}

/* v1.12.0 - Tres aperturas seleccionables para noticias destacadas */
.ddc-public-home.ddc-public-home--featured-editorial .ddc-public-home__hero,
.ddc-public-home.ddc-public-home--featured-visual .ddc-public-home__hero {
    align-items: stretch;
}

/* Impacto visual: principal superpuesta y secundarias compactas. */
.ddc-public-home.ddc-public-home--featured-visual .ddc-news-card.is-principal {
    position: relative;
    min-height: clamp(430px, 45vw, 650px);
    padding: 0 !important;
    border: 0;
    border-radius: var(--ddt-image-radius, 12px);
    background: #071126;
    color: #fff;
    isolation: isolate;
}
.ddc-public-home.ddc-public-home--featured-visual .ddc-news-card.is-principal::after {
    content: "";
    position: absolute;
    z-index: 1;
    inset: 18% 0 0;
    pointer-events: none;
    background: linear-gradient(180deg, rgba(7,17,38,0), rgba(7,17,38,.25) 32%, rgba(7,17,38,.94) 100%);
}
.ddc-public-home.ddc-public-home--featured-visual .ddc-news-card.is-principal.has-featured-media .ddc-news-card__image {
    position: absolute;
    inset: 0;
    width: 100% !important;
    height: 100%;
    aspect-ratio: auto;
    margin: 0 !important;
    border-radius: inherit !important;
}
.ddc-public-home.ddc-public-home--featured-visual .ddc-news-card.is-principal .ddc-news-card__image img,
.ddc-public-home.ddc-public-home--featured-visual .ddc-news-card.is-principal .ddc-card-loop-video,
.ddc-public-home.ddc-public-home--featured-visual .ddc-news-card.is-principal .ddc-card-loop-video iframe,
.ddc-public-home.ddc-public-home--featured-visual .ddc-news-card.is-principal .ddc-card-loop-video video {
    width: 100%;
    height: 100%;
    object-fit: cover;
}
.ddc-public-home.ddc-public-home--featured-visual .ddc-news-card.is-principal .ddc-news-card__body {
    position: absolute;
    z-index: 2;
    right: 0;
    bottom: 0;
    left: 0;
    padding: clamp(22px, 4vw, 46px) !important;
    color: #fff;
}
.ddc-public-home.ddc-public-home--featured-visual .ddc-news-card.is-principal:not(.has-featured-media) .ddc-news-card__body {
    top: 0;
    display: flex;
    flex-direction: column;
    justify-content: flex-end;
}
.ddc-public-home.ddc-public-home--featured-visual .ddc-news-card.is-principal h2,
.ddc-public-home.ddc-public-home--featured-visual .ddc-news-card.is-principal h2 a,
.ddc-public-home.ddc-public-home--featured-visual .ddc-news-card.is-principal p {
    color: #fff !important;
    text-shadow: 0 2px 16px rgba(0,0,0,.28);
}
.ddc-public-home.ddc-public-home--featured-visual .ddc-news-card.is-principal .ddc-news-card__kicker {
    color: #fff !important;
}
.ddc-public-home.ddc-public-home--featured-visual .ddc-news-card.is-secondary.has-featured-media {
    display: grid;
    grid-template-columns: minmax(108px, 42%) minmax(0, 1fr);
    align-items: stretch;
    padding: 0 !important;
}
.ddc-public-home.ddc-public-home--featured-visual .ddc-news-card.is-secondary.has-featured-media .ddc-news-card__image {
    width: 100% !important;
    height: 100%;
    min-height: 170px;
    margin: 0 !important;
    aspect-ratio: auto;
    border-radius: 0 !important;
}
.ddc-public-home.ddc-public-home--featured-visual .ddc-news-card.is-secondary .ddc-news-card__body {
    align-self: center;
    padding: clamp(13px, 1.7vw, 21px) !important;
}

/* Panorámica: principal horizontal a todo el ancho y secundarias debajo. */
.ddc-public-home.ddc-public-home--featured-panorama .ddc-public-home__hero,
body.home .ddc-public-home.ddc-portada-premium.ddc-public-home--featured-panorama .ddc-public-home__hero,
.ddt-home-layout.ddt-no-sidebar.ddt-home-layout--core-managed-ads .ddc-public-home.ddc-public-home--featured-panorama .ddc-public-home__hero {
    grid-template-columns: minmax(0, 1fr) !important;
}
.ddc-public-home.ddc-public-home--featured-panorama .ddc-news-card.is-principal.has-featured-media {
    display: grid;
    grid-template-columns: minmax(0, 65fr) minmax(300px, 35fr);
    align-items: stretch;
    min-height: clamp(330px, 34vw, 500px);
    padding: 0 !important;
}
.ddc-public-home.ddc-public-home--ratio-60-40.ddc-public-home--featured-panorama .ddc-news-card.is-principal.has-featured-media {
    grid-template-columns: minmax(0, 60fr) minmax(300px, 40fr);
}
.ddc-public-home.ddc-public-home--ratio-70-30.ddc-public-home--featured-panorama .ddc-news-card.is-principal.has-featured-media {
    grid-template-columns: minmax(0, 70fr) minmax(280px, 30fr);
}
.ddc-public-home.ddc-public-home--featured-panorama .ddc-news-card.is-principal .ddc-news-card__image {
    width: 100% !important;
    height: 100%;
    min-height: 330px;
    margin: 0 !important;
    aspect-ratio: auto;
    border-radius: 0 !important;
}
.ddc-public-home.ddc-public-home--featured-panorama .ddc-news-card.is-principal .ddc-news-card__body {
    display: flex;
    flex-direction: column;
    justify-content: flex-end;
    padding: clamp(24px, 4vw, 52px) !important;
}
.ddc-public-home.ddc-public-home--featured-panorama .ddc-public-home__secondary {
    grid-template-columns: repeat(2, minmax(0, 1fr));
}
.ddc-public-home.ddc-public-home--featured-panorama .ddc-news-card.is-secondary.has-featured-media {
    display: grid;
    grid-template-columns: minmax(150px, 38%) minmax(0, 1fr);
    align-items: stretch;
    padding: 0 !important;
}
.ddc-public-home.ddc-public-home--featured-panorama .ddc-news-card.is-secondary.has-featured-media .ddc-news-card__image {
    width: 100% !important;
    height: 100%;
    min-height: 160px;
    margin: 0 !important;
    aspect-ratio: auto;
    border-radius: 0 !important;
}
.ddc-public-home.ddc-public-home--featured-panorama .ddc-news-card.is-secondary .ddc-news-card__body {
    align-self: center;
    padding: clamp(15px, 2vw, 24px) !important;
}

@media (max-width: 1024px) {
    .ddc-public-home.ddc-public-home--featured-editorial .ddc-public-home__hero,
    .ddc-public-home.ddc-public-home--featured-visual .ddc-public-home__hero,
    .ddc-public-home.ddc-public-home--featured-panorama .ddc-public-home__hero {
        grid-template-columns: minmax(0, 1fr) !important;
    }
    .ddc-public-home.ddc-public-home--featured-editorial .ddc-public-home__secondary,
    .ddc-public-home.ddc-public-home--featured-visual .ddc-public-home__secondary {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
    .ddc-public-home.ddc-public-home--featured-visual .ddc-news-card.is-principal {
        min-height: clamp(430px, 66vw, 580px);
    }
}

@media (max-width: 760px) {
    .ddc-public-home.ddc-public-home--featured-editorial .ddc-public-home__secondary,
    .ddc-public-home.ddc-public-home--featured-visual .ddc-public-home__secondary,
    .ddc-public-home.ddc-public-home--featured-panorama .ddc-public-home__secondary {
        grid-template-columns: minmax(0, 1fr);
    }
    .ddc-public-home.ddc-public-home--featured-visual .ddc-news-card.is-principal {
        min-height: clamp(390px, 118vw, 540px);
    }
    .ddc-public-home.ddc-public-home--featured-visual .ddc-news-card.is-principal .ddc-news-card__body {
        padding: 22px !important;
    }
    .ddc-public-home.ddc-public-home--featured-panorama .ddc-news-card.is-principal.has-featured-media,
    .ddc-public-home.ddc-public-home--ratio-60-40.ddc-public-home--featured-panorama .ddc-news-card.is-principal.has-featured-media,
    .ddc-public-home.ddc-public-home--ratio-70-30.ddc-public-home--featured-panorama .ddc-news-card.is-principal.has-featured-media {
        grid-template-columns: minmax(0, 1fr);
        min-height: 0;
    }
    .ddc-public-home.ddc-public-home--featured-panorama .ddc-news-card.is-principal .ddc-news-card__image {
        min-height: 0;
        height: auto;
        aspect-ratio: 16/9;
    }
    .ddc-public-home.ddc-public-home--featured-panorama .ddc-news-card.is-principal .ddc-news-card__body {
        padding: 20px !important;
    }
    .ddc-public-home.ddc-public-home--featured-panorama .ddc-news-card.is-secondary.has-featured-media {
        grid-template-columns: minmax(105px, 38%) minmax(0, 1fr);
    }
    .ddc-public-home.ddc-public-home--featured-panorama .ddc-news-card.is-secondary.has-featured-media .ddc-news-card__image {
        min-height: 135px;
    }
}

@media (max-width: 480px) {
    .ddc-public-home.ddc-public-home--featured-visual .ddc-news-card.is-secondary.has-featured-media,
    .ddc-public-home.ddc-public-home--featured-panorama .ddc-news-card.is-secondary.has-featured-media {
        grid-template-columns: minmax(96px, 36%) minmax(0, 1fr);
    }
    .ddc-public-home.ddc-public-home--featured-visual .ddc-news-card.is-secondary.has-featured-media .ddc-news-card__image,
    .ddc-public-home.ddc-public-home--featured-panorama .ddc-news-card.is-secondary.has-featured-media .ddc-news-card__image {
        min-height: 120px;
    }
}

/* v1.2.8-recovery - Nuevo layout público: Magazine destacado */
.ddc-public-section--magazine .ddc-public-section__grid {
    grid-template-columns: minmax(0, 1.55fr) minmax(320px, .85fr);
    gap: 18px;
    align-items: stretch;
}
.ddc-public-section--magazine .ddc-section-post {
    min-width: 0;
}
.ddc-public-section--magazine .ddc-section-post--index-0 {
    grid-row: span 4;
}
.ddc-public-section--magazine .ddc-section-post--index-0 .ddc-section-post__image {
    aspect-ratio: 16 / 10;
}
.ddc-public-section--magazine .ddc-section-post--index-0 .ddc-section-post__body {
    padding: 18px 18px 20px;
}
.ddc-public-section--magazine .ddc-section-post--index-0 .ddc-section-post__body h3 {
    font-size: clamp(28px, 3vw, 46px);
    line-height: .98;
    letter-spacing: -.055em;
}
.ddc-public-section--magazine .ddc-section-post--index-0 .ddc-section-post__body p {
    font-size: 16px;
    line-height: 1.5;
}
.ddc-public-section--magazine .ddc-section-post:not(.ddc-section-post--index-0) {
    display: grid;
    grid-template-columns: 132px minmax(0, 1fr);
    min-height: 112px;
}
.ddc-public-section--magazine .ddc-section-post:not(.ddc-section-post--index-0) .ddc-section-post__image {
    height: 100%;
    min-height: 112px;
    aspect-ratio: auto;
}
.ddc-public-section--magazine .ddc-section-post:not(.ddc-section-post--index-0) .ddc-section-post__body {
    padding: 12px 13px;
    display: flex;
    flex-direction: column;
    justify-content: center;
}
.ddc-public-section--magazine .ddc-section-post:not(.ddc-section-post--index-0) .ddc-section-post__body h3 {
    font-size: clamp(16px, 1.2vw, 21px);
    line-height: 1.08;
    letter-spacing: -.035em;
    display: -webkit-box;
    -webkit-line-clamp: 3;
    -webkit-box-orient: vertical;
    overflow: hidden;
}
.ddc-public-section--magazine .ddc-section-post:not(.ddc-section-post--index-0) .ddc-section-post__body p {
    display: none;
}
@media (max-width: 980px) {
    .ddc-public-section--magazine .ddc-public-section__grid {
        grid-template-columns: 1fr;
    }
    .ddc-public-section--magazine .ddc-section-post--index-0 {
        grid-row: auto;
    }
}
@media (max-width: 760px) {
    .ddc-public-section--magazine .ddc-section-post:not(.ddc-section-post--index-0) {
        display: block;
    }
    .ddc-public-section--magazine .ddc-section-post:not(.ddc-section-post--index-0) .ddc-section-post__image {
        min-height: 0;
        height: auto;
        aspect-ratio: 16 / 9;
    }
}


/* v1.4.7 - Icono configurable de sección */
.ddc-public-section__head h2 .ddc-public-section__icon {
    color: var(--ddc-section-icon-color, var(--ddc-section-color));
    font-size: var(--ddc-section-icon-size, 28px);
    line-height: 1;
    margin-right: .22em;
    vertical-align: .02em;
}


/* v1.4.9 - Icono público de sección separado del título para evitar que el theme lo oculte */
.ddc-public-section__titleline {
    display: flex;
    align-items: baseline;
    gap: .22em;
    min-width: 0;
}
.ddc-public-section__titleline h2 {
    margin: 0;
}
.ddc-public-section__titleline .ddc-public-section__icon,
.ddc-public-section__icon {
    display: inline-flex !important;
    align-items: center;
    justify-content: center;
    flex: 0 0 auto;
    color: var(--ddc-section-icon-color, var(--ddc-section-color, currentColor)) !important;
    font-size: var(--ddc-section-icon-size, 28px) !important;
    line-height: 1 !important;
    margin-right: .05em;
    vertical-align: baseline;
}
@media (max-width: 760px) {
    .ddc-public-section__titleline {
        align-items: center;
    }
}


/* v1.5.0 - Icono de sección robusto dentro del título público */
.ddc-public-section__head h2.ddc-public-section__titleline,
.ddc-public-section__titleline {
    display: inline-flex !important;
    align-items: center !important;
    gap: .22em !important;
    min-width: 0;
}
.ddc-public-section__titleline .ddc-public-section__icon,
.ddc-public-section__head h2 .ddc-public-section__icon {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    flex: 0 0 auto !important;
    color: var(--ddc-section-icon-color, var(--ddc-section-color, currentColor)) !important;
    font-size: var(--ddc-section-icon-size, 28px) !important;
    line-height: 1 !important;
    letter-spacing: 0 !important;
    margin-right: .05em !important;
    font-family: system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI Emoji", "Apple Color Emoji", sans-serif !important;
}
.ddc-public-section__titleline .ddc-public-section__titletext {
    min-width: 0;
}

/* v1.5.1 - Espacios publicitarios para Google Ads / HTML */
.ddc-public-banner--code {
    width: 100%;
    min-height: 90px;
    display: grid;
    place-items: center;
    position: relative;
    overflow: hidden;
}
.ddc-public-banner__code {
    width: 100%;
    min-height: inherit;
    display: grid;
    place-items: center;
}
.ddc-public-banner__code iframe,
.ddc-public-banner__code ins,
.ddc-public-banner__code .adsbygoogle {
    max-width: 100%;
}
.ddc-public-banner__label {
    position: absolute;
    right: 10px;
    bottom: 7px;
    z-index: 2;
    font-size: 9px;
    line-height: 1;
    letter-spacing: .08em;
    text-transform: uppercase;
    color: rgba(15,23,42,.45);
    pointer-events: none;
}
.ddc-public-banners--home_lateral .ddc-public-banner--code,
.ddc-public-banners--home_lateral_derecho .ddc-public-banner--code,
.ddc-public-banners--nota_lateral .ddc-public-banner--code {
    min-height: 250px;
}
.ddc-public-home__ad .ddc-public-banner--code,
.ddc-public-section-ad .ddc-public-banner--code {
    min-height: 180px;
    border-radius: 18px;
    background: #f8fafc;
}


/* v1.6.0 - Espaciado público real desde variables de Theme/Core */
.ddc-public-home {
    gap: var(--ddc-public-section-gap, var(--ddt-spacing-section-gap, 56px)) !important;
    row-gap: var(--ddc-public-section-gap, var(--ddt-spacing-section-gap, 56px)) !important;
}
.ddc-public-home__hero,
.ddc-public-home__content,
.ddc-public-home__dynamic-sections,
.ddc-public-sections {
    gap: var(--ddc-public-card-gap, var(--ddt-spacing-card-gap-public, 24px)) !important;
    row-gap: var(--ddc-public-card-gap, var(--ddt-spacing-card-gap-public, 24px)) !important;
}
.ddc-public-home__secondary,
.ddc-public-home__sidebar,
.ddc-public-home__grid,
.ddc-public-section__grid,
.ddc-section-block__grid {
    gap: var(--ddc-public-card-gap, var(--ddt-spacing-card-gap-public, 24px)) !important;
    row-gap: var(--ddc-public-card-gap, var(--ddt-spacing-card-gap-public, 24px)) !important;
    column-gap: var(--ddc-public-card-gap, var(--ddt-spacing-card-gap-public, 24px)) !important;
}
.ddc-public-home__hero,
.ddc-public-home__content {
    margin-bottom: var(--ddc-public-section-gap, var(--ddt-spacing-section-gap, 56px)) !important;
}
.ddc-public-section,
.ddc-section-block {
    margin-bottom: var(--ddc-public-section-gap, var(--ddt-spacing-section-gap, 56px)) !important;
    padding-top: 0 !important;
}
.ddc-public-section__head,
.ddc-section-block__head,
.ddc-public-home__head,
.ddc-public-home__section-head {
    margin-bottom: var(--ddc-public-title-gap, var(--ddt-spacing-title-content-gap, 24px)) !important;
}
.ddc-public-banners,
.ddc-public-home__ad,
.ddc-public-section-ad {
    margin-top: var(--ddc-public-ad-gap, var(--ddt-spacing-ad-gap, 36px)) !important;
    margin-bottom: var(--ddc-public-ad-gap, var(--ddt-spacing-ad-gap, 36px)) !important;
}
@media (max-width: 760px) {
    .ddc-public-home {
        gap: var(--ddc-public-section-gap-mobile, var(--ddt-spacing-section-gap-mobile, 34px)) !important;
        row-gap: var(--ddc-public-section-gap-mobile, var(--ddt-spacing-section-gap-mobile, 34px)) !important;
    }
    .ddc-public-home__hero,
    .ddc-public-home__content,
    .ddc-public-section,
    .ddc-section-block {
        margin-bottom: var(--ddc-public-section-gap-mobile, var(--ddt-spacing-section-gap-mobile, 34px)) !important;
    }
}


/* v1.6.1 - Separación y títulos controlados por Theme */
.ddc-public-section__grid,
.ddc-section-block__grid,
.ddc-public-home__grid,
.ddc-public-home__secondary,
.ddc-public-home__sidebar {
    gap: var(--ddc-public-card-gap, var(--ddt-spacing-card-gap-public, 24px)) !important;
    row-gap: var(--ddc-public-card-gap, var(--ddt-spacing-card-gap-public, 24px)) !important;
    column-gap: var(--ddc-public-card-gap, var(--ddt-spacing-card-gap-public, 24px)) !important;
}
.ddc-news-card:not(.is-principal) h2,
.ddc-section-post h3,
.ddt-card-title {
    font-size: clamp(12px, 1.55vw, var(--ddc-public-card-title, var(--ddt-card-title-max, 18px))) !important;
    line-height: 1.08 !important;
}
.ddc-news-card.is-grid h2,
.ddc-news-card.is-secondary h2,
.ddc-news-card.is-sidebar h2 {
    font-size: clamp(12px, 1.45vw, var(--ddc-public-card-title, var(--ddt-card-title-max, 18px))) !important;
}
.ddc-news-card.is-principal h2 {
    font-size: clamp(26px, 4vw, var(--ddc-public-hero-title, var(--ddt-hero-title-max, 52px))) !important;
}


/* v1.6.8 - Mi cuenta distingue accesos operativos de suscriptores */
.ddc-account-card--operational {
    max-width: 720px;
    margin-left: auto;
    margin-right: auto;
    border-color: rgba(37, 99, 235, .22);
    background: linear-gradient(180deg, #ffffff, #f8fbff);
}
.ddc-account-card--operational p {
    max-width: 560px;
    margin-left: auto;
    margin-right: auto;
}


/* v1.7.0 - Portada: hero ancho completo y publicidad lateral desde el Core después del bloque destacado */
.ddc-public-home__after-hero-layout {
    display: grid;
    grid-template-columns: minmax(0, 1fr);
    gap: clamp(22px, 2.4vw, 34px);
    align-items: start;
    width: 100%;
}
.ddc-public-home__after-hero-layout.has-home-sidebar {
    grid-template-columns: minmax(0, 1fr) minmax(280px, 320px);
}
.ddc-public-home__after-hero-main { min-width: 0; }
.ddc-public-home__sidebar-ads {
    display: grid;
    gap: 18px;
    position: static;
    top: auto;
    align-self: start;
    width: 100%;
}
.ddc-public-home__sidebar-ads .ddc-public-banners,
.ddc-public-home__sidebar-ads .ddc-public-banner,
.ddc-public-home__sidebar-ads .ddc-public-banner picture,
.ddc-public-home__sidebar-ads .ddc-public-banner img {
    width: 100% !important;
    max-width: 100% !important;
}
.ddc-public-home__after-hero-layout.has-home-sidebar .ddc-public-section__grid,
.ddc-public-home__after-hero-layout.has-home-sidebar .ddc-section-block__grid {
    grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
}
@media (max-width: 1180px) {
    .ddc-public-home__after-hero-layout.has-home-sidebar .ddc-public-section__grid,
    .ddc-public-home__after-hero-layout.has-home-sidebar .ddc-section-block__grid {
        grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    }
}
@media (max-width: 980px) {
    .ddc-public-home__after-hero-layout.has-home-sidebar { grid-template-columns: 1fr; }
    .ddc-public-home__sidebar-ads { position: static; grid-template-columns: repeat(auto-fit, minmax(260px, 1fr)); }
}
@media (max-width: 640px) {
    .ddc-public-home__after-hero-layout.has-home-sidebar .ddc-public-section__grid,
    .ddc-public-home__after-hero-layout.has-home-sidebar .ddc-section-block__grid {
        grid-template-columns: 1fr !important;
    }
}


/* v1.7.7 - Layouts públicos: hero no aplastado, grilla 4 compacta y video especial */
.ddc-public-section--grid4compact .ddc-public-section__grid {
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: clamp(12px, 1.3vw, 18px);
}
.ddc-public-section--grid4compact .ddc-section-post__body {
    padding: 10px 11px;
}
.ddc-public-section--grid4compact .ddc-section-post__body span {
    margin-bottom: 5px;
    font-size: clamp(11px, .85vw, 13px);
    line-height: 1.1;
}
.ddc-public-section--grid4compact .ddc-section-post__body h3 {
    font-size: clamp(15px, 1.25vw, 20px);
    line-height: 1.08;
    letter-spacing: -.035em;
}
.ddc-public-section--grid4compact .ddc-section-post__body p {
    display: none;
}
.ddc-public-section--grid4compact .ddc-section-post__image {
    aspect-ratio: 16 / 10;
}

.ddc-public-section--hero .ddc-public-section__grid {
    grid-template-columns: minmax(0, 1.45fr) minmax(260px, .8fr) !important;
    align-items: stretch;
    gap: clamp(16px, 1.8vw, 24px) !important;
}
.ddc-public-section--hero .ddc-section-post--index-0 {
    grid-row: span 2;
}
.ddc-public-section--hero .ddc-section-post--index-0 .ddc-section-post__image {
    aspect-ratio: 16 / 11;
}
.ddc-public-section--hero .ddc-section-post--index-0 .ddc-section-post__body {
    padding: clamp(14px, 1.6vw, 22px);
}
.ddc-public-section--hero .ddc-section-post--index-0 .ddc-section-post__body h3 {
    font-size: clamp(28px, 3.3vw, 54px) !important;
    line-height: .98;
    letter-spacing: -.055em;
}
.ddc-public-section--hero .ddc-section-post:not(.ddc-section-post--index-0) {
    display: grid;
    grid-template-columns: 130px minmax(0, 1fr);
    min-height: 118px;
}
.ddc-public-section--hero .ddc-section-post:not(.ddc-section-post--index-0) .ddc-section-post__image {
    height: 100%;
    min-height: 118px;
    aspect-ratio: auto;
}
.ddc-public-section--hero .ddc-section-post:not(.ddc-section-post--index-0) .ddc-section-post__body {
    padding: 11px 12px;
}
.ddc-public-section--hero .ddc-section-post:not(.ddc-section-post--index-0) .ddc-section-post__body h3 {
    font-size: clamp(16px, 1.3vw, 21px) !important;
}
.ddc-public-home__after-hero-layout.has-home-sidebar .ddc-public-section--hero .ddc-public-section__grid {
    grid-template-columns: minmax(0, 1.35fr) minmax(240px, .8fr) !important;
}
.ddc-public-section--video {
    border-radius: 22px;
    background: #071126;
    padding: clamp(24px, 3vw, 42px);
    color: #fff;
}
.ddc-public-section--video .ddc-public-section__head,
.ddc-public-section--video .ddc-public-section__head h2,
.ddc-public-section--video .ddc-public-section__head a {
    color: #fff;
}
.ddc-public-section--video .ddc-public-section__head a {
    background: #fff;
    color: #071126;
    border-radius: 999px;
    padding: 10px 20px;
    text-decoration: none;
}
.ddc-public-section--video .ddc-public-section__grid {
    grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
    gap: clamp(14px, 1.6vw, 22px) !important;
}
.ddc-public-section--video .ddc-section-post {
    border-color: rgba(255,255,255,.15);
    background: rgba(255,255,255,.04);
    border-radius: 20px;
}
.ddc-public-section--video .ddc-section-post__image {
    aspect-ratio: 16 / 11;
}
.ddc-public-section--video .ddc-section-post__body {
    color: #fff;
    background: linear-gradient(180deg, rgba(7,17,38,.1), rgba(7,17,38,.86));
}
.ddc-public-section--video .ddc-section-post__body h3,
.ddc-public-section--video .ddc-section-post__body a,
.ddc-public-section--video .ddc-section-post__body span {
    color: #fff;
}
@media (max-width: 1120px) {
    .ddc-public-section--grid4compact .ddc-public-section__grid,
    .ddc-public-section--video .ddc-public-section__grid {
        grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    }
    .ddc-public-section--hero .ddc-public-section__grid,
    .ddc-public-home__after-hero-layout.has-home-sidebar .ddc-public-section--hero .ddc-public-section__grid {
        grid-template-columns: 1fr !important;
    }
}
@media (max-width: 700px) {
    .ddc-public-section--grid4compact .ddc-public-section__grid,
    .ddc-public-section--video .ddc-public-section__grid {
        grid-template-columns: 1fr !important;
    }
    .ddc-public-section--hero .ddc-section-post:not(.ddc-section-post--index-0) {
        display: block;
    }
}


/* v1.7.8 - Radio en vivo base */
.ddc-radio-trigger{display:inline-flex;align-items:center;gap:10px;border:1px solid var(--ddc-radio-border, rgba(15,23,42,.12));background:var(--ddc-radio-bg, #fff);color:var(--ddc-radio-color, #0f172a);border-radius:999px;padding:10px 14px;text-decoration:none;cursor:pointer;font:inherit;}
.ddc-radio-trigger__icon{width:20px;height:20px;}
.ddc-radio-trigger__text{display:flex;flex-direction:column;line-height:1.05;text-align:left;}
.ddc-radio-trigger__text small{font-size:11px;opacity:.68;font-weight:600;margin-top:3px;}
.ddc-radio-device--mobile-only{display:none!important;}
@media(max-width:760px){.ddc-radio-device--desktop-only{display:none!important}.ddc-radio-device--mobile-only{display:inline-flex!important}}


/* v1.8.1 - Home lateral: sin sticky desde Core */
.ddc-public-home__sidebar-ads,
.ddc-public-home__sidebar-ads .ddc-public-banners,
.ddc-public-home__sidebar-ads .ddc-public-banner,
.ddc-public-home__sidebar-ads .ddc-public-banner picture,
.ddc-public-home__sidebar-ads .ddc-public-banner a,
.ddc-public-home__sidebar-ads .ddc-public-banner img {
    position: static !important;
    top: auto !important;
    bottom: auto !important;
    left: auto !important;
    right: auto !important;
    inset: auto !important;
    transform: none !important;
}

.ddc-public-home__sidebar-ads {
    align-self: start !important;
    height: auto !important;
    min-height: 0 !important;
    max-height: none !important;
    overflow: visible !important;
}

.ddc-public-home__after-hero-layout.has-home-sidebar {
    align-items: start !important;
}


/* v1.8.2 - Reversión solicitada: lateral derecho vuelve a desplazarse como sticky */
.ddc-public-home__sidebar-ads {
    position: sticky !important;
    top: 18px !important;
    align-self: start !important;
}
.ddc-public-home__sidebar-ads .ddc-public-banners,
.ddc-public-home__sidebar-ads .ddc-public-banner,
.ddc-public-home__sidebar-ads .ddc-public-banner picture,
.ddc-public-home__sidebar-ads .ddc-public-banner a,
.ddc-public-home__sidebar-ads .ddc-public-banner img {
    position: relative !important;
    top: auto !important;
    bottom: auto !important;
    left: auto !important;
    right: auto !important;
    transform: none !important;
}
@media (max-width: 980px) {
    .ddc-public-home__sidebar-ads {
        position: static !important;
        top: auto !important;
    }
}


/* v1.8.3 - Publicidad lateral en flujo normal, no pegada al viewport */
.ddc-public-home__sidebar-ads,
.ddc-public-home__sidebar-ads *,
.ddc-public-home__sidebar-ads .ddc-public-banners,
.ddc-public-home__sidebar-ads .ddc-public-banner,
.ddc-public-home__sidebar-ads .ddc-public-banner picture,
.ddc-public-home__sidebar-ads .ddc-public-banner a,
.ddc-public-home__sidebar-ads .ddc-public-banner img {
    position: static !important;
    top: auto !important;
    bottom: auto !important;
    left: auto !important;
    right: auto !important;
    inset: auto !important;
    transform: none !important;
}

.ddc-public-home__sidebar-ads {
    align-self: start !important;
    height: auto !important;
    min-height: 0 !important;
    max-height: none !important;
    overflow: visible !important;
}

.ddc-public-home__after-hero-layout.has-home-sidebar {
    align-items: start !important;
}


/* v1.8.5 - Decisión final: lateral derecho vuelve a acompañar el scroll */
.ddc-public-home__after-hero-layout.has-home-sidebar,
body.home .ddc-public-home__after-hero-layout.has-home-sidebar,
body.ddt-home .ddc-public-home__after-hero-layout.has-home-sidebar {
    overflow: visible !important;
    align-items: start !important;
}
.ddc-public-home__sidebar-ads,
body.home .ddc-public-home__sidebar-ads,
body.ddt-home .ddc-public-home__sidebar-ads,
.ddt-home .ddc-public-home__sidebar-ads {
    position: sticky !important;
    top: 18px !important;
    align-self: start !important;
    z-index: 4 !important;
    height: auto !important;
    min-height: 0 !important;
    max-height: none !important;
    overflow: visible !important;
}
@media (max-width: 980px) {
    .ddc-public-home__sidebar-ads,
    body.home .ddc-public-home__sidebar-ads,
    body.ddt-home .ddc-public-home__sidebar-ads,
    .ddt-home .ddc-public-home__sidebar-ads {
        position: static !important;
        top: auto !important;
    }
}


/* v1.8.8 - Nota individual: firma editorial con avatar + categoría sin botón */
.ddc-news-single__categories {
    display: flex;
    flex-wrap: wrap;
    gap: 8px 12px;
    margin-bottom: 14px;
}

.ddc-news-single__categories a {
    display: inline-flex !important;
    align-items: center;
    padding: 0 !important;
    border: 0 !important;
    border-radius: 0 !important;
    background: transparent !important;
    color: #d1007d !important;
    font-size: 14px !important;
    line-height: 1.2;
    font-weight: 850 !important;
    text-decoration: none;
}

.ddc-news-single__categories a:hover {
    text-decoration: underline;
    text-underline-offset: 3px;
}

.ddc-news-single__meta--rich {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 14px 20px;
    margin-top: 18px;
    color: #64748b;
    font-size: 14px;
}

.ddc-news-single__byline {
    display: inline-flex;
    align-items: center;
    gap: 10px;
    min-width: 0;
}

.ddc-news-single__byline-avatar {
    width: 44px;
    height: 44px;
    border-radius: 999px;
    overflow: hidden;
    flex: 0 0 44px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    background: #0f172a;
    color: #fff;
    font-size: 13px;
    font-weight: 900;
    letter-spacing: .02em;
    box-shadow: 0 8px 22px rgba(15, 23, 42, .12);
}

.ddc-news-single__byline-avatar img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
}

.ddc-news-single__byline-text {
    display: grid;
    gap: 1px;
    line-height: 1.15;
    min-width: 0;
}

.ddc-news-single__byline-label {
    color: #64748b;
    font-size: 12px;
    font-weight: 700;
}

.ddc-news-single__byline-text strong {
    color: #0f172a;
    font-size: 15px;
    font-weight: 850;
}

.ddc-news-single__byline-text em {
    color: #64748b;
    font-size: 12px;
    font-style: normal;
    font-weight: 650;
}

.ddc-news-single__meta-details {
    display: inline-flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 8px 14px;
}

.ddc-news-single__meta-details span {
    display: inline-flex;
    align-items: center;
}

.ddc-news-single__meta-details span + span::before {
    content: "";
    width: 4px;
    height: 4px;
    margin-right: 12px;
    border-radius: 999px;
    background: #cbd5e1;
}

.ddc-news-single__author {
    border-radius: 18px;
    background: #f8fafc;
}

@media (max-width: 640px) {
    .ddc-news-single__meta--rich {
        align-items: flex-start;
        gap: 12px;
    }
    .ddc-news-single__meta-details {
        width: 100%;
        padding-left: 54px;
    }
}


/* v1.9.0 - Relacionadas compactas y configurables */
.ddc-news-single__related {
    margin-top: 34px;
    padding-top: 26px;
}

.ddc-news-single__related-grid {
    grid-template-columns: repeat(var(--ddc-related-columns, 3), minmax(0, 1fr)) !important;
    gap: 12px !important;
}

.ddc-news-single__related-card {
    border-radius: 12px;
    overflow: hidden;
    box-shadow: none;
}

.ddc-news-single__related-image img {
    aspect-ratio: 16 / 9 !important;
}

.ddc-news-single__related-card h3 {
    padding: 10px 11px 12px !important;
    font-size: 14px !important;
    line-height: 1.16 !important;
    letter-spacing: -.02em;
}

@media (max-width: 760px) {
    .ddc-news-single__related-grid {
        grid-template-columns: 1fr !important;
    }
}

/* v1.9.3 - Header y accesos editoriales */
.ddc-header-actions {
    --ddc-ha-primary-bg: #ffd400;
    --ddc-ha-primary-color: #111827;
    --ddc-ha-login-bg: #ffffff;
    --ddc-ha-login-color: #111827;
    --ddc-ha-login-border: #d6d9df;
    display: inline-flex;
    align-items: center;
    justify-content: flex-end;
    gap: 10px;
    flex-wrap: nowrap;
    font-family: inherit;
}
.ddc-header-action,
.ddc-header-actions .ddc-radio-trigger {
    box-sizing: border-box;
    min-height: 40px;
    height: 40px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
    border-radius: 999px;
    padding: 0 16px;
    text-decoration: none !important;
    white-space: nowrap;
    font: inherit;
    font-size: 13px;
    line-height: 1;
    font-weight: 700;
    letter-spacing: -.01em;
    cursor: pointer;
    transition: transform .16s ease, background-color .16s ease, color .16s ease, border-color .16s ease, box-shadow .16s ease;
}
.ddc-header-action:focus-visible,
.ddc-header-actions .ddc-radio-trigger:focus-visible {
    outline: 3px solid rgba(37, 99, 235, .22);
    outline-offset: 2px;
}
.ddc-header-action:hover,
.ddc-header-actions .ddc-radio-trigger:hover {
    transform: translateY(-1px);
}
.ddc-header-action__icon {
    width: 16px;
    height: 16px;
    flex: 0 0 16px;
    display: block;
}
.ddc-header-action__icon--subscribe {
    width: 14px;
    height: 14px;
    flex-basis: 14px;
}
.ddc-header-action--login {
    color: var(--ddc-ha-login-color) !important;
    background: var(--ddc-ha-login-bg) !important;
    border: 1px solid var(--ddc-ha-login-border) !important;
    box-shadow: 0 1px 2px rgba(15, 23, 42, .02);
}
.ddc-header-action--login:hover {
    background: color-mix(in srgb, var(--ddc-ha-login-bg) 94%, #0f172a 6%) !important;
    border-color: color-mix(in srgb, var(--ddc-ha-login-border) 72%, #0f172a 28%) !important;
    box-shadow: 0 6px 16px rgba(15, 23, 42, .07);
}
.ddc-header-action--subscribe {
    color: var(--ddc-ha-primary-color) !important;
    background: var(--ddc-ha-primary-bg) !important;
    border: 1px solid var(--ddc-ha-primary-bg) !important;
    box-shadow: 0 5px 14px color-mix(in srgb, var(--ddc-ha-primary-bg) 22%, transparent);
}
.ddc-header-action--subscribe:hover {
    filter: brightness(.975);
    box-shadow: 0 8px 20px color-mix(in srgb, var(--ddc-ha-primary-bg) 28%, transparent);
}
.ddc-header-actions .ddc-radio-trigger {
    gap: 7px;
    padding: 0 15px;
    box-shadow: none;
}
.ddc-header-actions .ddc-radio-trigger__icon {
    width: 16px;
    height: 16px;
}
.ddc-header-actions .ddc-radio-trigger__text {
    display: block;
    line-height: 1;
}
.ddc-header-actions .ddc-radio-trigger__text strong {
    font-size: 12px;
    font-weight: 800;
    letter-spacing: .02em;
}
.ddc-header-actions .ddc-radio-trigger__text small {
    display: none;
}

/* Preset premium híbrido: recomendado */
.ddc-header-actions--hybrid .ddc-header-action,
.ddc-header-actions--hybrid .ddc-radio-trigger {
    min-height: 40px;
    height: 40px;
}

/* Preset editorial: CTA más fuerte */
.ddc-header-actions--editorial .ddc-header-action,
.ddc-header-actions--editorial .ddc-radio-trigger {
    min-height: 42px;
    height: 42px;
    padding-left: 18px;
    padding-right: 18px;
    font-weight: 800;
}
.ddc-header-actions--editorial .ddc-header-action--login {
    border-width: 1.5px !important;
}

/* Preset premium: fino y sobrio */
.ddc-header-actions--premium {
    gap: 8px;
}
.ddc-header-actions--premium .ddc-header-action,
.ddc-header-actions--premium .ddc-radio-trigger {
    min-height: 38px;
    height: 38px;
    padding-left: 14px;
    padding-right: 14px;
    font-size: 12px;
    box-shadow: none;
}
.ddc-header-actions--premium .ddc-header-action--subscribe {
    border-radius: 7px;
}
.ddc-header-actions--premium .ddc-header-action--login {
    border-radius: 7px;
}
.ddc-header-actions--premium .ddc-radio-trigger {
    border-radius: 7px;
}

/* Preset minimal: para headers compactos */
.ddc-header-actions--minimal {
    gap: 6px;
}
.ddc-header-actions--minimal .ddc-header-action,
.ddc-header-actions--minimal .ddc-radio-trigger {
    min-height: 34px;
    height: 34px;
    padding: 0 11px;
    font-size: 12px;
    box-shadow: none;
}
.ddc-header-actions--minimal .ddc-header-action__icon,
.ddc-header-actions--minimal .ddc-radio-trigger__icon {
    width: 14px;
    height: 14px;
}

.ddc-header-actions--mobile-only { display: none !important; }
.ddc-header-actions-preview {
    border: 1px solid rgba(148, 163, 184, .22);
    border-radius: 16px;
    background: #f8fafc;
    padding: 18px;
    overflow-x: auto;
}
.ddc-header-actions-preview__label {
    display: block;
    margin-bottom: 12px;
    color: #64748b;
    font-size: 12px;
    font-weight: 800;
    letter-spacing: .04em;
    text-transform: uppercase;
}
.ddc-header-action--preview-live {
    color: #fff !important;
    background: #e51b2a !important;
    border: 1px solid #e51b2a !important;
}
.ddc-header-live-dot {
    width: 7px;
    height: 7px;
    border-radius: 50%;
    background: currentColor;
    box-shadow: 0 0 0 4px rgba(255,255,255,.15);
}

@media (max-width: 760px) {
    .ddc-header-actions--desktop-only { display: none !important; }
    .ddc-header-actions--mobile-only { display: inline-flex !important; }
    .ddc-header-actions:not(.ddc-header-actions--desktop-only) {
        gap: 6px;
        max-width: 100%;
    }
    .ddc-header-actions .ddc-header-action,
    .ddc-header-actions .ddc-radio-trigger {
        min-height: 36px;
        height: 36px;
        padding-left: 11px;
        padding-right: 11px;
        font-size: 12px;
    }
    .ddc-header-actions .ddc-header-action__icon,
    .ddc-header-actions .ddc-radio-trigger__icon {
        width: 14px;
        height: 14px;
        flex-basis: 14px;
    }
}

@media (max-width: 520px) {
    .ddc-header-actions[data-ddc-mobile-compact="1"] .ddc-header-action span,
    .ddc-header-actions[data-ddc-mobile-compact="1"] .ddc-radio-trigger__text {
        display: none;
    }
}
/* v1.15.0 - Diario público temporal para clientes Demo */
.ddc-demo-public-bar {
    position: relative;
    z-index: 40;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 20px;
    padding: 12px max(18px, calc((100vw - 1280px) / 2));
    color: #fff;
    background: linear-gradient(105deg, #0f172a, #172554 62%, #1d4ed8);
    box-shadow: 0 10px 28px rgba(15, 23, 42, .16);
    font-family: Inter, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
    opacity: 1;
    transform: translateY(0);
    transition: opacity .28s ease, transform .28s ease, margin .28s ease, padding .28s ease, max-height .32s ease;
    max-height: 96px;
    overflow: hidden;
}

.ddc-demo-public-bar.is-hiding {
    opacity: 0;
    transform: translateY(-8px);
}

.ddc-demo-public-bar.is-hidden {
    display: none;
}

.ddc-demo-public-bar__close {
    display: inline-flex;
    width: 36px;
    height: 36px;
    flex: 0 0 36px;
    align-items: center;
    justify-content: center;
    padding: 0;
    border: 1px solid rgba(255, 255, 255, .34);
    border-radius: 999px;
    color: #fff;
    background: rgba(255, 255, 255, .08);
    font: 700 22px/1 Inter, system-ui, sans-serif;
    cursor: pointer;
}

.ddc-demo-public-bar__close:hover,
.ddc-demo-public-bar__close:focus-visible {
    background: rgba(255, 255, 255, .18);
    outline: none;
}


.ddc-demo-public-bar > div {
    display: flex;
    align-items: center;
    gap: 12px;
}

.ddc-demo-public-bar strong {
    font-size: 14px;
    letter-spacing: .04em;
    text-transform: uppercase;
}

.ddc-demo-public-bar span {
    color: #dbeafe;
    font-size: 13px;
}

.ddc-demo-public-bar a {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 36px;
    padding: 7px 14px;
    border: 1px solid rgba(255, 255, 255, .34);
    border-radius: 999px;
    color: #fff;
    font-size: 13px;
    font-weight: 700;
    line-height: 1;
    text-decoration: none;
}

.ddc-demo-public-bar a:hover,
.ddc-demo-public-bar a:focus-visible {
    color: #fff;
    background: rgba(255, 255, 255, .12);
}

.ddc-demo-public-bar a.is-primary {
    border-color: #facc15;
    color: #111827;
    background: #facc15;
}

.ddc-demo-public-main {
    min-height: 46vh;
}

.ddc-demo-public-empty {
    display: grid;
    justify-items: start;
    gap: 10px;
    margin: 28px 0 70px;
    padding: clamp(28px, 5vw, 64px);
    border: 1px dashed #bfdbfe;
    border-radius: 22px;
    background: linear-gradient(145deg, #f8fbff, #eff6ff);
}

.ddc-demo-public-empty strong {
    color: #0f172a;
    font-size: clamp(22px, 3vw, 34px);
    line-height: 1.05;
}

.ddc-demo-public-empty span {
    color: #475569;
}

.ddc-demo-public-empty a {
    display: inline-flex;
    margin-top: 8px;
    padding: 11px 17px;
    border-radius: 999px;
    color: #fff;
    background: #1d4ed8;
    font-weight: 700;
    text-decoration: none;
}

.ddc-demo-public-breadcrumb {
    display: flex;
    align-items: center;
    gap: 8px;
    padding-top: 18px;
    color: #64748b;
    font-size: 13px;
}

.ddc-demo-public-breadcrumb a {
    color: #1d4ed8;
    font-weight: 700;
    text-decoration: none;
}

.ddc-demo-public .ddc-news-single__tags span {
    display: inline-flex;
    padding: 7px 11px;
    border-radius: 999px;
    color: #334155;
    background: #f1f5f9;
    font-size: 13px;
    font-weight: 700;
}

@media (max-width: 720px) {
    .ddc-demo-public-bar {
        position: relative;
        align-items: flex-start;
        padding: 12px 14px;
    }

    .ddc-demo-public-bar > div:first-child {
        display: grid;
        gap: 2px;
    }

    .ddc-demo-public-bar > div:last-child {
        flex-shrink: 0;
    }

    .ddc-demo-public-bar a {
        min-height: 34px;
        padding: 7px 10px;
        font-size: 12px;
    }

    .ddc-demo-public-bar a:not(.is-primary) {
        display: none;
    }

    .ddc-demo-public-breadcrumb {
        overflow: hidden;
    }

    .ddc-demo-public-breadcrumb span:last-child {
        overflow: hidden;
        text-overflow: ellipsis;
        white-space: nowrap;
    }
}


/* v1.16.4 - Legibilidad de acciones y cards de altura uniforme */
.ddc-public-section--video .ddc-public-section__head > a {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    min-width: 118px;
    min-height: 38px;
    padding: 9px 18px !important;
    border: 1px solid rgba(15, 23, 42, .12) !important;
    border-radius: 999px !important;
    background: #fff !important;
    color: #071126 !important;
    font-size: 14px !important;
    font-weight: 850 !important;
    line-height: 1 !important;
    text-indent: 0 !important;
    opacity: 1 !important;
    visibility: visible !important;
    text-decoration: none !important;
}
.ddc-public-section--video .ddc-public-section__head > a:hover,
.ddc-public-section--video .ddc-public-section__head > a:focus {
    background: #f8fafc !important;
    color: #071126 !important;
    border-color: rgba(15, 23, 42, .24) !important;
}

@media (min-width: 701px) {
    .ddc-public-section--grid .ddc-public-section__grid,
    .ddc-public-section--grid4compact .ddc-public-section__grid {
        align-items: stretch !important;
    }
    .ddc-public-section--grid .ddc-section-post,
    .ddc-public-section--grid4compact .ddc-section-post {
        align-self: stretch !important;
        height: 100%;
        display: flex;
        flex-direction: column;
    }
    .ddc-public-section--grid .ddc-section-post__body,
    .ddc-public-section--grid4compact .ddc-section-post__body {
        flex: 1 1 auto;
        display: flex;
        flex-direction: column;
    }
}


/* v1.16.5 - Cards consistentes y YouTube seguro en listados */
@media (min-width: 701px) {
    .ddc-public-section--grid .ddc-public-section__grid,
    .ddc-public-section--grid4compact .ddc-public-section__grid {
        align-items: stretch !important;
    }
    .ddc-public-section--grid .ddc-section-post,
    .ddc-public-section--grid4compact .ddc-section-post {
        align-self: stretch !important;
        box-sizing: border-box;
    }
}
.ddc-card-loop-video--youtube-thumb {
    position: absolute;
    inset: 0;
    display: block;
    width: 100%;
    height: 100%;
    object-fit: cover;
    background: #0b1220;
    pointer-events: none;
}


/* v1.16.8 - Reconstruida desde v1.16.5: CTA legible y cards regulares parejas, sin tocar Videos/YouTube */
.ddc-public-section__head .ddc-public-section__more {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    gap: 7px !important;
    white-space: nowrap !important;
}
.ddc-public-section--video .ddc-public-section__more-label,
.ddc-public-section--video .ddc-public-section__more-arrow {
    color: #071126 !important;
    opacity: 1 !important;
    visibility: visible !important;
}
.ddc-public-section__more-arrow {
    color: var(--ddc-section-color, #d1007d) !important;
    font-weight: 900 !important;
}
@media (min-width: 701px) {
    .ddc-public-section--grid .ddc-public-section__grid,
    .ddc-public-section--grid4compact .ddc-public-section__grid {
        align-items: stretch !important;
    }
    .ddc-public-section--grid .ddc-section-post,
    .ddc-public-section--grid4compact .ddc-section-post {
        align-self: stretch !important;
        box-sizing: border-box !important;
    }
}


/* v1.16.9 - Destacadas: máximo 6 y grilla secundaria legible */
.ddc-public-home .ddc-public-home__content.no-editorial-sidebar {
    grid-template-columns: minmax(0, 1fr) !important;
}
@media (min-width: 901px) {
    .ddc-public-home .ddc-public-home__grid.ddc-public-home__grid--count-1 {
        grid-template-columns: minmax(0, 1fr) !important;
    }
    .ddc-public-home .ddc-public-home__grid.ddc-public-home__grid--count-2 {
        grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    }
    .ddc-public-home .ddc-public-home__grid.ddc-public-home__grid--count-3 {
        grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
    }
}
@media (min-width: 641px) and (max-width: 900px) {
    .ddc-public-home .ddc-public-home__grid {
        grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    }
    .ddc-public-home .ddc-public-home__grid.ddc-public-home__grid--count-1 {
        grid-template-columns: minmax(0, 1fr) !important;
    }
}
@media (max-width: 640px) {
    .ddc-public-home .ddc-public-home__grid {
        grid-template-columns: minmax(0, 1fr) !important;
    }
}


/* v1.16.10 - CTA "Ver sección" configurable desde Diseño del diario */
.ddc-public-section .ddc-public-section__more {
    background: var(--ddc-more-bg, #ffffff) !important;
    color: var(--ddc-more-text, #071126) !important;
    border: 1px solid var(--ddc-more-border, #d9dee8) !important;
    opacity: 1 !important;
    visibility: visible !important;
    text-decoration: none !important;
}
.ddc-public-section .ddc-public-section__more-label {
    color: var(--ddc-more-text, #071126) !important;
    opacity: 1 !important;
    visibility: visible !important;
}
.ddc-public-section .ddc-public-section__more-arrow {
    color: var(--ddc-more-arrow, var(--ddc-section-color, #e0008a)) !important;
    opacity: 1 !important;
    visibility: visible !important;
}
.ddc-public-section .ddc-public-section__more:hover,
.ddc-public-section .ddc-public-section__more:focus-visible {
    background: var(--ddc-more-hover-bg, #f3f6fb) !important;
    color: var(--ddc-more-hover-text, #071126) !important;
}
.ddc-public-section .ddc-public-section__more:hover .ddc-public-section__more-label,
.ddc-public-section .ddc-public-section__more:focus-visible .ddc-public-section__more-label {
    color: var(--ddc-more-hover-text, #071126) !important;
}

/* v1.16.11 - Mixto con publicidad: grilla balanceada y cards de igual altura.
 * El Theme histórico hacía que la primera card ocupara dos filas. Cuando el bloque
 * tenía 3 noticias, esa regla generaba una card alta y dos cards cortas. Esta
 * corrección afecta únicamente al layout mixed y deja intactos Videos/YouTube. */
.ddt-home section.ddc-public-section.ddc-public-section--mixed .ddc-public-section__grid {
    display: grid !important;
    grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
    grid-auto-flow: row !important;
    align-items: stretch !important;
    gap: clamp(16px, 2vw, 24px) !important;
}

.ddt-home section.ddc-public-section.ddc-public-section--mixed .ddc-section-post,
.ddt-home section.ddc-public-section.ddc-public-section--mixed .ddc-section-post:first-child,
.ddt-home section.ddc-public-section.ddc-public-section--mixed .ddc-section-post:not(:first-child) {
    grid-row: auto !important;
    grid-column: auto !important;
    align-self: stretch !important;
    height: 100% !important;
    min-height: 0 !important;
    display: flex !important;
    flex-direction: column !important;
    box-sizing: border-box !important;
}

.ddt-home section.ddc-public-section.ddc-public-section--mixed .ddc-section-post__image,
.ddt-home section.ddc-public-section.ddc-public-section--mixed .ddc-section-post:first-child .ddc-section-post__image {
    width: 100% !important;
    aspect-ratio: 16 / 10 !important;
    flex: 0 0 auto !important;
}

.ddt-home section.ddc-public-section.ddc-public-section--mixed .ddc-section-post__body {
    flex: 1 1 auto !important;
    display: flex !important;
    flex-direction: column !important;
}

/* Cuatro noticias se leen mejor en 2 x 2 que en 3 + 1. */
.ddt-home section.ddc-public-section.ddc-public-section--mixed.ddc-public-section--count-4 .ddc-public-section__grid {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
}

.ddt-home section.ddc-public-section.ddc-public-section--mixed.ddc-public-section--count-2 .ddc-public-section__grid {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
}

.ddt-home section.ddc-public-section.ddc-public-section--mixed.ddc-public-section--count-1 .ddc-public-section__grid {
    grid-template-columns: minmax(0, 1fr) !important;
}

@media (max-width: 980px) {
    .ddt-home section.ddc-public-section.ddc-public-section--mixed .ddc-public-section__grid {
        grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    }
}

@media (max-width: 680px) {
    .ddt-home section.ddc-public-section.ddc-public-section--mixed .ddc-public-section__grid,
    .ddt-home section.ddc-public-section.ddc-public-section--mixed.ddc-public-section--count-4 .ddc-public-section__grid,
    .ddt-home section.ddc-public-section.ddc-public-section--mixed.ddc-public-section--count-2 .ddc-public-section__grid {
        grid-template-columns: minmax(0, 1fr) !important;
    }

    .ddt-home section.ddc-public-section.ddc-public-section--mixed .ddc-section-post,
    .ddt-home section.ddc-public-section.ddc-public-section--mixed .ddc-section-post:first-child,
    .ddt-home section.ddc-public-section.ddc-public-section--mixed .ddc-section-post:not(:first-child) {
        height: auto !important;
    }
}


/* v1.16.14 - TV EN VIVO */
.ddc-tv-trigger{--ddc-radio-bg:#ef233c;--ddc-radio-border:#ef233c;--ddc-radio-color:#fff;}
.ddc-tv-trigger--floating{position:fixed;right:22px;bottom:154px;z-index:9997;box-shadow:0 18px 45px rgba(7,18,39,.22);}
.ddc-tv-modal__box{width:min(94vw,920px)!important;}
.ddc-tv-modal__eyebrow{background:#fff1f2!important;color:#be123c!important;}
.ddc-tv-player{position:relative;width:100%;aspect-ratio:16/9;border-radius:18px;overflow:hidden;background:#020617;box-shadow:inset 0 0 0 1px rgba(255,255,255,.05);}
.ddc-tv-player iframe{position:absolute;inset:0;width:100%;height:100%;border:0;display:block;}
@media(max-width:760px){.ddc-tv-trigger--floating{right:16px;bottom:144px}.ddc-tv-modal__box{width:min(94vw,720px)!important}.ddc-tv-player{border-radius:14px}}


/* v1.16.21 - YouTube loop vuelve a renderizarse como iframe real en cards. */
.ddc-card-loop-video--youtube {
    object-fit: cover;
}


/* v1.16.25 - Loop YouTube limpio: oculta la UI nativa hasta confirmar reproducción. */
.ddc-news-card__image.has-youtube-loop,
.ddc-section-post__image.has-youtube-loop {
    background: #0b1220;
}
.ddc-card-loop-video--youtube {
    opacity: 0;
    transition: opacity .22s ease;
}
.ddc-news-card__image.ddc-youtube-loop-playing .ddc-card-loop-video--youtube,
.ddc-section-post__image.ddc-youtube-loop-playing .ddc-card-loop-video--youtube {
    opacity: 1;
}
.ddc-card-loop-poster {
    position: absolute;
    inset: 0;
    z-index: 1;
    display: block;
    width: 100%;
    height: 100%;
    object-fit: cover;
    opacity: 1;
    visibility: visible;
    transition: opacity .22s ease, visibility .22s ease;
    pointer-events: none;
}
.ddc-news-card__image.ddc-youtube-loop-playing .ddc-card-loop-poster,
.ddc-section-post__image.ddc-youtube-loop-playing .ddc-card-loop-poster {
    opacity: 0;
    visibility: hidden;
}
.ddc-news-card__image.has-youtube-loop .ddc-video-loop-badge,
.ddc-section-post__image.has-youtube-loop .ddc-video-loop-badge {
    z-index: 4;
}
.ddc-news-card__image.has-youtube-loop .ddc-card-media-link,
.ddc-section-post__image.has-youtube-loop .ddc-card-media-link {
    z-index: 5;
}

/* v1.16.28 - Texto de marca alternativo cuando no hay logo gráfico */
.ddc-site-logo-text {
    display: inline-flex;
    align-items: center;
    max-width: 100%;
    color: inherit;
    font-family: inherit;
    font-weight: 850;
    line-height: 1.05;
    letter-spacing: -0.025em;
    white-space: normal;
    overflow-wrap: anywhere;
    text-decoration: none;
}
@media (max-width: 767px) {
    .ddc-site-logo-text {
        font-size: min(var(--ddc-logo-text-size, 26px), 30px);
        line-height: 1.08;
    }
}


/* v1.16.29 - Layouts editoriales: Tapas de diarios / slider + Efemérides */
.ddc-public-section--covers {
    position: relative;
}

.ddc-public-section--covers .ddc-public-section__grid,
.ddc-public-home__after-hero-layout.has-home-sidebar .ddc-public-section--covers .ddc-public-section__grid {
    display: grid !important;
    grid-auto-flow: column !important;
    grid-auto-columns: calc((100% - var(--ddc-covers-gap-desktop, 64px)) / var(--ddc-covers-desktop, 5)) !important;
    grid-template-columns: none !important;
    gap: 16px !important;
    overflow-x: auto !important;
    overflow-y: hidden;
    overscroll-behavior-inline: contain;
    scroll-snap-type: inline mandatory;
    scroll-behavior: smooth;
    scrollbar-width: none;
    -ms-overflow-style: none;
    padding: 2px 2px 12px;
}
.ddc-public-section--covers .ddc-public-section__grid::-webkit-scrollbar { display: none; }

@media (max-width: 980px) {
    .ddc-public-section--covers .ddc-public-section__grid,
    .ddc-public-home__after-hero-layout.has-home-sidebar .ddc-public-section--covers .ddc-public-section__grid {
        grid-auto-columns: calc((100% - var(--ddc-covers-gap-tablet, 28px)) / var(--ddc-covers-tablet, 3)) !important;
        gap: 14px !important;
        grid-template-columns: none !important;
    }
}
@media (max-width: 640px) {
    .ddc-public-section--covers .ddc-public-section__grid,
    .ddc-public-home__after-hero-layout.has-home-sidebar .ddc-public-section--covers .ddc-public-section__grid {
        grid-auto-columns: calc((100% - var(--ddc-covers-gap-mobile, 0px)) / var(--ddc-covers-mobile, 1)) !important;
        gap: 12px !important;
        grid-template-columns: none !important;
    }
}

.ddc-public-section--covers .ddc-section-post--covers {
    scroll-snap-align: start;
    min-width: 0;
    height: auto !important;
    min-height: 0 !important;
    background: #fff;
    border: 1px solid rgba(15, 23, 42, .10);
    border-radius: 8px;
    overflow: hidden;
    box-shadow: 0 5px 18px rgba(15, 23, 42, .06);
}

.ddc-cover-card__trigger {
    position: relative;
    display: block;
    width: 100%;
    margin: 0;
    padding: 0;
    border: 0;
    background: transparent;
    color: inherit;
    cursor: zoom-in;
    text-align: inherit;
    appearance: none;
}

.ddc-cover-card__media {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 100%;
    aspect-ratio: .72;
    overflow: hidden;
    background: #f8fafc;
}

.ddc-cover-card__media img {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: contain;
    transition: transform .24s ease;
}

.ddc-cover-card__trigger:hover .ddc-cover-card__media img {
    transform: scale(1.025);
}

.ddc-cover-card__media--empty {
    background: linear-gradient(135deg, #eef2f7, #f8fafc);
}

.ddc-cover-card__zoom {
    position: absolute;
    right: 9px;
    bottom: 9px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 34px;
    height: 34px;
    border-radius: 999px;
    background: rgba(7, 17, 38, .84);
    color: #fff;
    font-size: 20px;
    line-height: 1;
    box-shadow: 0 5px 18px rgba(0, 0, 0, .18);
}

.ddc-cover-card__body {
    display: grid;
    gap: 7px;
    padding: 12px 13px 13px;
}

.ddc-cover-card__body h3 {
    margin: 0;
    font-size: 15px;
    line-height: 1.18;
    font-weight: 850;
}

.ddc-cover-card__body h3 a {
    color: #0f172a;
    text-decoration: none;
}

.ddc-cover-card__body time {
    color: #94a3b8;
    font-size: 11px;
    line-height: 1.2;
}

.ddc-covers-controls {
    display: flex;
    justify-content: flex-end;
    gap: 8px;
    margin-top: -7px;
}

.ddc-covers-control {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 40px;
    height: 40px;
    border: 1px solid rgba(15, 23, 42, .14);
    border-radius: 999px;
    background: #fff;
    color: #0f172a;
    font-size: 25px;
    line-height: 1;
    cursor: pointer;
    box-shadow: 0 3px 12px rgba(15, 23, 42, .05);
}

.ddc-covers-control:hover,
.ddc-covers-control:focus-visible {
    border-color: var(--ddc-section-color, #d1007d);
    color: var(--ddc-section-color, #d1007d);
    outline: none;
}

.ddc-cover-lightbox {
    position: fixed;
    inset: 0;
    z-index: 999999;
    display: none;
    align-items: center;
    justify-content: center;
    padding: 28px 76px;
    background: rgba(2, 6, 23, .92);
    backdrop-filter: blur(5px);
}

.ddc-cover-lightbox.is-open {
    display: flex;
}

.ddc-cover-lightbox__figure {
    display: grid;
    gap: 12px;
    max-width: min(92vw, 1100px);
    max-height: 92vh;
    margin: 0;
}

.ddc-cover-lightbox__image {
    display: block;
    max-width: 100%;
    max-height: 82vh;
    width: auto;
    height: auto;
    margin: 0 auto;
    object-fit: contain;
    background: #fff;
    box-shadow: 0 22px 70px rgba(0, 0, 0, .42);
}

.ddc-cover-lightbox__caption {
    color: #fff;
    text-align: center;
    font-size: 14px;
    font-weight: 750;
}

.ddc-cover-lightbox__close,
.ddc-cover-lightbox__prev,
.ddc-cover-lightbox__next {
    position: absolute;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border: 1px solid rgba(255, 255, 255, .28);
    border-radius: 999px;
    background: rgba(15, 23, 42, .72);
    color: #fff;
    cursor: pointer;
}

.ddc-cover-lightbox__close {
    top: 22px;
    right: 22px;
    width: 44px;
    height: 44px;
    font-size: 25px;
}

.ddc-cover-lightbox__prev,
.ddc-cover-lightbox__next {
    top: 50%;
    width: 48px;
    height: 48px;
    margin-top: -24px;
    font-size: 30px;
}

.ddc-cover-lightbox__prev { left: 20px; }
.ddc-cover-lightbox__next { right: 20px; }
body.ddc-cover-lightbox-open { overflow: hidden !important; }

.ddc-public-section--ephemeris .ddc-public-section__grid {
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 24px;
}

.ddc-public-section--ephemeris .ddc-section-post--ephemeris {
    display: flex;
    flex-direction: column;
    height: 100% !important;
    min-height: 0 !important;
    border: 1px solid rgba(15, 23, 42, .09);
    border-radius: 6px;
    background: #fff;
    overflow: hidden;
    box-shadow: 0 5px 20px rgba(15, 23, 42, .07);
}

.ddc-ephemeris-card__media {
    position: relative;
    display: block;
    width: 100%;
    aspect-ratio: 16 / 10.5;
    overflow: hidden;
    background: #eef2f7;
}

.ddc-ephemeris-card__media img {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: cover;
    transition: transform .24s ease;
}

.ddc-ephemeris-card__media:hover img {
    transform: scale(1.025);
}

.ddc-ephemeris-card__badge {
    position: absolute;
    top: 15px;
    right: 15px;
    display: inline-flex;
    align-items: center;
    min-height: 28px;
    padding: 6px 12px;
    border-radius: 999px;
    background: var(--ddc-section-color, #d1007d);
    color: #fff;
    font-size: 11px;
    line-height: 1;
    font-weight: 900;
    text-transform: uppercase;
    letter-spacing: .02em;
}

.ddc-ephemeris-card__body {
    display: flex;
    flex: 1 1 auto;
    flex-direction: column;
    gap: 16px;
    padding: 22px 24px 17px;
}

.ddc-ephemeris-card__body h3 {
    margin: 0;
    color: #334155;
    font-size: clamp(18px, 1.45vw, 22px);
    line-height: 1.28;
    font-weight: 800;
}

.ddc-ephemeris-card__body h3 a {
    color: inherit;
    text-decoration: none;
}

.ddc-ephemeris-card__body time {
    display: block;
    margin-top: auto;
    padding-top: 14px;
    border-top: 1px solid rgba(15, 23, 42, .08);
    color: #94a3b8;
    font-size: 12px;
}

@media (max-width: 1080px) {
    .ddc-public-section--covers .ddc-public-section__grid {
        grid-auto-columns: calc((100% - 32px) / 3);
    }
    .ddc-public-section--ephemeris .ddc-public-section__grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
}

@media (max-width: 700px) {
    .ddc-public-section--covers .ddc-public-section__grid {
        grid-auto-columns: min(78vw, 260px);
        gap: 12px;
    }
    .ddc-covers-controls {
        justify-content: flex-start;
    }
    .ddc-public-section--ephemeris .ddc-public-section__grid {
        grid-template-columns: 1fr;
        gap: 16px;
    }
    .ddc-cover-lightbox {
        padding: 62px 14px 24px;
    }
    .ddc-cover-lightbox__prev,
    .ddc-cover-lightbox__next {
        top: auto;
        bottom: 18px;
        width: 44px;
        height: 44px;
    }
    .ddc-cover-lightbox__prev { left: calc(50% - 52px); }
    .ddc-cover-lightbox__next { right: calc(50% - 52px); }
    .ddc-cover-lightbox__image { max-height: 76vh; }
}


/* v1.16.30 - Carrusel de tapas: columnas configurables y protección contra reglas globales del home. */
.ddc-public-section--covers .ddc-section-post--covers {
    width: 100% !important;
    max-width: none !important;
    min-width: 0 !important;
}
.ddc-public-section--covers .ddc-covers-controls {
    margin-bottom: 8px;
}

/* v1.16.31 - Espacios publicitarios activos: trama editorial sutil sólo cuando existe creatividad. */
.ddc-public-banners[data-ddc-ad-space]:not(.ddc-public-banners--mobile_sticky):not(.ddc-public-banners--popup_ingreso):not(.ddc-public-banners--bottom_fijo) {
    box-sizing: border-box;
    width: 100%;
    padding: clamp(8px, 1vw, 14px);
    border-top: 1px solid rgba(100, 116, 139, .12);
    border-bottom: 1px solid rgba(100, 116, 139, .12);
    background-color: #f8fafc;
    background-image: repeating-linear-gradient(
        135deg,
        rgba(100, 116, 139, .11) 0,
        rgba(100, 116, 139, .11) 1px,
        transparent 1px,
        transparent 7px
    );
}
.ddc-public-banners[data-ddc-ad-space]:not(.ddc-public-banners--mobile_sticky):not(.ddc-public-banners--popup_ingreso):not(.ddc-public-banners--bottom_fijo) .ddc-public-banner {
    position: relative;
    z-index: 1;
}
.ddc-public-banners[data-ddc-ad-space]:not(.ddc-public-banners--mobile_sticky):not(.ddc-public-banners--popup_ingreso):not(.ddc-public-banners--bottom_fijo) .ddc-public-banner picture,
.ddc-public-banners[data-ddc-ad-space]:not(.ddc-public-banners--mobile_sticky):not(.ddc-public-banners--popup_ingreso):not(.ddc-public-banners--bottom_fijo) .ddc-public-banner a,
.ddc-public-banners[data-ddc-ad-space]:not(.ddc-public-banners--mobile_sticky):not(.ddc-public-banners--popup_ingreso):not(.ddc-public-banners--bottom_fijo) .ddc-public-banner img {
    max-width: 100%;
}
@media (max-width: 760px) {
    .ddc-public-banners[data-ddc-ad-space]:not(.ddc-public-banners--mobile_sticky):not(.ddc-public-banners--popup_ingreso):not(.ddc-public-banners--bottom_fijo) {
        padding: 7px;
    }
}

/* v1.16.32 - Kiosco visual: las tapas son imágenes puras, sin títulos debajo. */
.ddc-public-section--covers .ddc-cover-card--kiosk,
.ddc-public-section--covers .ddc-cover-card--kiosk .ddc-cover-card__trigger {
    background: transparent !important;
}
.ddc-public-section--covers .ddc-cover-card--kiosk {
    border: 0 !important;
    box-shadow: none !important;
    padding: 0 !important;
}
.ddc-public-section--covers .ddc-cover-card--kiosk .ddc-cover-card__media {
    border: 1px solid rgba(15,23,42,.09);
    background: #f3f5f8;
}

/* v1.16.32 - Opinión / Columnistas: identidad del autor por encima de la imagen noticiosa. */
.ddc-public-section--opinion .ddc-public-section__grid,
.ddc-public-home__after-hero-layout.has-home-sidebar .ddc-public-section--opinion .ddc-public-section__grid {
    display: grid !important;
    grid-template-columns: minmax(0, 1.28fr) minmax(300px, .72fr) !important;
    gap: 0 !important;
    border-top: 2px solid #0f172a;
    border-bottom: 1px solid rgba(15,23,42,.14);
}
.ddc-section-post--opinion {
    min-width: 0;
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    gap: 18px;
    padding: 22px 24px !important;
    border: 0 !important;
    border-radius: 0 !important;
    background: #fff;
    box-shadow: none !important;
}
.ddc-section-post--opinion.ddc-section-post--index-0 {
    grid-row: span 3;
    padding: clamp(26px, 3vw, 42px) !important;
    border-right: 1px solid rgba(15,23,42,.14) !important;
    background: #fbfbfc;
}
.ddc-section-post--opinion:not(.ddc-section-post--index-0) {
    border-bottom: 1px solid rgba(15,23,42,.12) !important;
}
.ddc-opinion-card__author {
    display: flex;
    align-items: center;
    gap: 13px;
    order: 2;
}
.ddc-opinion-card__author img {
    width: 54px;
    height: 54px;
    flex: 0 0 54px;
    border-radius: 50%;
    object-fit: cover;
    background: #eef2f6;
}
.ddc-section-post--opinion.ddc-section-post--index-0 .ddc-opinion-card__author img {
    width: 76px;
    height: 76px;
    flex-basis: 76px;
}
.ddc-opinion-card__author > div {
    display: flex;
    min-width: 0;
    flex-direction: column;
    gap: 2px;
}
.ddc-opinion-card__author strong {
    color: #0f172a;
    font-size: 14px;
    line-height: 1.2;
    font-weight: 900;
}
.ddc-opinion-card__author span {
    color: #64748b;
    font-size: 12px;
    line-height: 1.25;
}
.ddc-opinion-card__body {
    order: 1;
}
.ddc-opinion-card__eyebrow {
    display: inline-block;
    margin-bottom: 9px;
    color: var(--ddc-section-color, #d1007d);
    font-size: 11px;
    line-height: 1;
    font-weight: 900;
    text-transform: uppercase;
    letter-spacing: .08em;
}
.ddc-opinion-card__body h3 {
    margin: 0;
    color: #0f172a;
    font-size: clamp(19px, 1.45vw, 24px);
    line-height: 1.08;
    font-weight: 900;
    letter-spacing: -.025em;
}
.ddc-section-post--opinion.ddc-section-post--index-0 .ddc-opinion-card__body h3 {
    max-width: 16ch;
    font-size: clamp(30px, 3.1vw, 48px);
    line-height: .98;
}
.ddc-opinion-card__body h3 a {
    color: inherit;
    text-decoration: none;
}
.ddc-opinion-card__body p {
    max-width: 62ch;
    margin: 18px 0 0;
    color: #526071;
    font-size: 16px;
    line-height: 1.55;
}
@media (max-width: 900px) {
    .ddc-public-section--opinion .ddc-public-section__grid,
    .ddc-public-home__after-hero-layout.has-home-sidebar .ddc-public-section--opinion .ddc-public-section__grid {
        grid-template-columns: 1fr !important;
    }
    .ddc-section-post--opinion.ddc-section-post--index-0 {
        grid-row: auto;
        border-right: 0 !important;
        border-bottom: 1px solid rgba(15,23,42,.14) !important;
    }
    .ddc-section-post--opinion.ddc-section-post--index-0 .ddc-opinion-card__body h3 {
        max-width: 24ch;
    }
}
@media (max-width: 560px) {
    .ddc-section-post--opinion,
    .ddc-section-post--opinion.ddc-section-post--index-0 {
        padding: 20px 16px !important;
    }
    .ddc-section-post--opinion.ddc-section-post--index-0 .ddc-opinion-card__body h3 {
        font-size: clamp(28px, 9vw, 38px);
    }
}

/* v1.16.33 · Clima clickeable + pronóstico extendido */
button.ddc-weather-widget {
    appearance: none;
    -webkit-appearance: none;
    border: 0;
    margin: 0;
    padding: 0;
    background: transparent;
    font: inherit;
    line-height: inherit;
    text-align: inherit;
    cursor: pointer;
}
button.ddc-weather-widget:hover .ddc-widget-text,
button.ddc-weather-widget:focus-visible .ddc-widget-text {
    color: #0f172a;
}
button.ddc-weather-widget:focus-visible {
    outline: 2px solid #94a3b8;
    outline-offset: 3px;
    border-radius: 999px;
}
.ddc-weather-modal {
    position: fixed;
    inset: 0;
    z-index: 100050;
    display: none;
    align-items: center;
    justify-content: center;
    padding: 24px;
}
.ddc-weather-modal.is-open { display: flex; }
.ddc-weather-modal__backdrop {
    position: absolute;
    inset: 0;
    border: 0;
    background: rgba(7, 17, 38, .62);
    backdrop-filter: blur(5px);
    cursor: default;
}
.ddc-weather-modal__panel {
    position: relative;
    z-index: 2;
    width: min(920px, 96vw);
    max-height: min(780px, 92vh);
    overflow: auto;
    border-radius: 22px;
    background: #fff;
    color: #081326;
    box-shadow: 0 30px 80px rgba(7, 17, 38, .28);
    padding: clamp(22px, 3vw, 36px);
}
.ddc-weather-modal__close {
    position: absolute;
    top: 18px;
    right: 18px;
    width: 38px;
    height: 38px;
    display: grid;
    place-items: center;
    border: 1px solid #dbe2ea;
    border-radius: 50%;
    background: #fff;
    color: #081326;
    font-size: 25px;
    line-height: 1;
    cursor: pointer;
}
.ddc-weather-modal__head { padding-right: 56px; margin-bottom: 24px; }
.ddc-weather-modal__eyebrow {
    color: #e0008a;
    font-size: 12px;
    font-weight: 900;
    letter-spacing: .12em;
}
.ddc-weather-modal__head h2 {
    margin: 4px 0 3px;
    font-size: clamp(28px, 4vw, 46px);
    line-height: 1;
    letter-spacing: -.045em;
}
.ddc-weather-modal__head p { margin: 0; color: #64748b; font-size: 13px; }
.ddc-weather-modal__current {
    display: grid;
    grid-template-columns: minmax(250px, .9fr) minmax(0, 1.4fr);
    gap: 22px;
    align-items: stretch;
    padding: 22px;
    border: 1px solid #e2e8f0;
    background: #f8fafc;
    border-radius: 18px;
}
.ddc-weather-modal__current-main {
    display: flex;
    align-items: center;
    gap: 18px;
}
.ddc-weather-modal__current-icon {
    width: 76px;
    height: 76px;
    display: grid;
    place-items: center;
    border-radius: 18px;
    background: #fff;
    border: 1px solid #e2e8f0;
    font-size: 42px;
    line-height: 1;
}
.ddc-weather-modal__current-main > div { display: grid; gap: 2px; }
.ddc-weather-modal__current-main strong { font-size: 52px; line-height: .95; letter-spacing: -.06em; }
.ddc-weather-modal__current-main span:not(.ddc-weather-modal__current-icon) { color: #475569; font-weight: 700; }
.ddc-weather-modal__metrics {
    display: grid;
    grid-template-columns: repeat(2, minmax(0,1fr));
    gap: 10px;
}
.ddc-weather-modal__metric {
    display: grid;
    gap: 3px;
    padding: 12px 14px;
    border-radius: 12px;
    background: #fff;
    border: 1px solid #e2e8f0;
}
.ddc-weather-modal__metric span { color: #64748b; font-size: 12px; font-weight: 700; }
.ddc-weather-modal__metric strong { font-size: 17px; }
.ddc-weather-modal__forecast {
    display: grid;
    grid-template-columns: repeat(5, minmax(0,1fr));
    gap: 10px;
    margin-top: 18px;
}
.ddc-weather-modal__day {
    min-width: 0;
    display: grid;
    justify-items: center;
    text-align: center;
    gap: 6px;
    padding: 16px 9px;
    border: 1px solid #e2e8f0;
    border-radius: 14px;
    background: #fff;
}
.ddc-weather-modal__day-label { font-size: 13px; }
.ddc-weather-modal__day-icon { font-size: 28px; line-height: 1; }
.ddc-weather-modal__day-condition { min-height: 32px; color: #64748b; font-size: 11px; line-height: 1.25; }
.ddc-weather-modal__temps { display: flex; gap: 7px; align-items: baseline; }
.ddc-weather-modal__temps b { font-size: 18px; }
.ddc-weather-modal__temps span { color: #64748b; }
.ddc-weather-modal__rain { color: #2563eb; font-size: 11px; font-weight: 800; }
.ddc-weather-modal__source { margin: 16px 0 0; color: #94a3b8; font-size: 11px; text-align: right; }
body.ddc-weather-modal-open { overflow: hidden; }

@media (max-width: 760px) {
    .ddc-weather-modal { padding: 12px; align-items: flex-end; }
    .ddc-weather-modal__panel {
        width: 100%;
        max-height: 88vh;
        border-radius: 20px 20px 10px 10px;
        padding: 22px 16px 18px;
    }
    .ddc-weather-modal__current { grid-template-columns: 1fr; padding: 16px; }
    .ddc-weather-modal__current-main strong { font-size: 44px; }
    .ddc-weather-modal__metrics { grid-template-columns: repeat(2, minmax(0,1fr)); }
    .ddc-weather-modal__forecast {
        display: flex;
        overflow-x: auto;
        scroll-snap-type: x mandatory;
        padding-bottom: 5px;
    }
    .ddc-weather-modal__day { flex: 0 0 128px; scroll-snap-align: start; }
}


/* v1.16.34 - Kiosco independiente dentro del flujo editorial del home */
.ddc-public-special-block--covers{width:100%;min-width:0}
.ddc-public-special-block--covers .ddc-public-special-block__head{margin-bottom:12px}
.ddc-public-special-block--covers .ddc-covers-controls{margin-top:0;margin-bottom:8px}

/* v1.16.35 - Aviso superior de suscripción */
.ddc-subscribe-prompt{
    position:fixed;
    z-index:1205;
    top:18px;
    left:50%;
    width:min(94vw,520px);
    transform:translate(-50%,-18px);
    opacity:0;
    visibility:hidden;
    pointer-events:none;
    transition:opacity .22s ease,transform .22s ease,visibility .22s ease;
}
body.admin-bar .ddc-subscribe-prompt{top:50px}
.ddc-subscribe-prompt.is-visible{opacity:1;visibility:visible;transform:translate(-50%,0);pointer-events:auto}
.ddc-subscribe-prompt__card{
    position:relative;
    display:grid;
    grid-template-columns:auto minmax(0,1fr);
    grid-template-areas:"brand copy" "actions actions";
    gap:12px 16px;
    padding:18px 20px 16px;
    background:#fff;
    color:#0b1426;
    border:1px solid rgba(15,23,42,.09);
    border-radius:16px;
    box-shadow:0 18px 48px rgba(15,23,42,.18);
}
.ddc-subscribe-prompt__brand{grid-area:brand;display:flex;align-items:flex-start;justify-content:center;min-width:52px;padding-top:2px}
.ddc-subscribe-prompt__logo{display:block;max-width:74px;max-height:52px;width:auto;height:auto;object-fit:contain}
.ddc-subscribe-prompt__brand-text{display:inline-flex;align-items:center;justify-content:center;min-width:46px;min-height:46px;padding:0 8px;border-radius:12px;background:#f2f4f7;color:#101828;font-weight:900;font-size:12px;line-height:1.1;text-align:center}
.ddc-subscribe-prompt__copy{grid-area:copy;display:grid;gap:4px;padding-right:28px}
.ddc-subscribe-prompt__copy strong{font-size:17px;line-height:1.2;color:#101828}
.ddc-subscribe-prompt__copy span{font-size:13px;line-height:1.45;color:#667085}
.ddc-subscribe-prompt__actions{grid-area:actions;display:flex;justify-content:flex-end;align-items:center;gap:10px}
.ddc-subscribe-prompt__dismiss,.ddc-subscribe-prompt__cta{min-height:38px;padding:0 15px;border-radius:9px;font-size:12px;font-weight:800;text-decoration:none!important;display:inline-flex;align-items:center;justify-content:center;cursor:pointer}
.ddc-subscribe-prompt__dismiss{border:0;background:transparent;color:#475467}
.ddc-subscribe-prompt__cta{border:1px solid var(--ddc-ha-primary-bg,#ffd400);background:var(--ddc-ha-primary-bg,#ffd400);color:var(--ddc-ha-primary-color,#111827)!important}
.ddc-subscribe-prompt__close{position:absolute;top:8px;right:9px;width:30px;height:30px;border:0;border-radius:50%;background:transparent;color:#667085;font-size:22px;line-height:1;cursor:pointer}
.ddc-subscribe-prompt__close:hover{background:#f2f4f7;color:#101828}
@media(max-width:600px){
    .ddc-subscribe-prompt{top:10px;width:calc(100vw - 20px)}
    body.admin-bar .ddc-subscribe-prompt{top:54px}
    .ddc-subscribe-prompt__card{grid-template-columns:1fr;grid-template-areas:"brand" "copy" "actions";gap:9px;padding:16px}
    .ddc-subscribe-prompt__brand{justify-content:flex-start;padding-right:34px}
    .ddc-subscribe-prompt__copy{padding-right:26px}
    .ddc-subscribe-prompt__actions{justify-content:stretch}
    .ddc-subscribe-prompt__dismiss,.ddc-subscribe-prompt__cta{flex:1}
}

/* v1.16.36 - Landing comercial de planes: gratuitos + pagos públicos */
.ddc-plans-page{
    --ddc-plans-ink:#0f172a;
    --ddc-plans-muted:#5f6b7a;
    --ddc-plans-line:#dfe4ea;
    --ddc-plans-accent:#0f4cbd;
    width:100%;
    margin:24px 0 48px;
    color:var(--ddc-plans-ink);
}
.ddc-plans-hero{
    width:min(1180px,calc(100% - 32px));
    margin:0 auto;
    border-radius:24px 24px 0 0;
    overflow:hidden;
    background:#031c3d;
    color:#fff;
    position:relative;
}
.ddc-plans-hero::before,
.ddc-plans-hero::after{
    content:"";
    position:absolute;
    border:1px solid rgba(79,145,255,.28);
    border-radius:34px;
    transform:rotate(-18deg);
    pointer-events:none;
}
.ddc-plans-hero::before{width:230px;height:150px;left:-90px;bottom:-65px}
.ddc-plans-hero::after{width:300px;height:180px;right:-120px;bottom:-85px}
.ddc-plans-hero__inner{
    max-width:760px;
    margin:0 auto;
    padding:48px 28px 78px;
    text-align:center;
    position:relative;
    z-index:1;
}
.ddc-plans-hero__eyebrow{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    padding:7px 11px;
    border-radius:999px;
    background:rgba(255,255,255,.1);
    border:1px solid rgba(255,255,255,.14);
    font-size:11px;
    font-weight:900;
    letter-spacing:.12em;
}
.ddc-plans-hero h2{
    margin:14px 0 8px;
    color:inherit;
    font-size:clamp(30px,4vw,48px);
    line-height:1.02;
    letter-spacing:-.035em;
}
.ddc-plans-hero p{
    max-width:700px;
    margin:0 auto;
    color:rgba(255,255,255,.82);
    font-size:16px;
    line-height:1.55;
}
.ddc-plans-shell{
    width:min(1080px,calc(100% - 48px));
    margin:-46px auto 0;
    position:relative;
    z-index:2;
}
.ddc-plans-grid{
    display:grid;
    grid-template-columns:repeat(3,minmax(0,1fr));
    gap:20px;
    align-items:stretch;
}
.ddc-plans-grid--1{grid-template-columns:minmax(280px,460px);justify-content:center}
.ddc-plans-grid--2{grid-template-columns:repeat(2,minmax(280px,1fr));max-width:760px;margin:0 auto}
.ddc-plan-card{
    --ddc-plan-accent:var(--ddc-plans-accent);
    position:relative;
    display:flex;
    flex-direction:column;
    min-width:0;
    padding:0;
    gap:0;
    overflow:hidden;
    border:1px solid var(--ddc-plans-line);
    border-radius:14px;
    background:#fff;
    box-shadow:0 18px 45px rgba(15,23,42,.11);
}
.ddc-plan-card.is-featured{
    border:2px solid var(--ddc-plan-accent);
    box-shadow:0 24px 55px rgba(15,76,189,.16);
}
.ddc-plan-card__badge{
    min-height:34px;
    display:flex;
    align-items:center;
    padding:8px 14px;
    background:var(--ddc-plan-accent);
    color:#fff;
    font-size:11px;
    line-height:1;
    font-weight:900;
    letter-spacing:.04em;
    text-transform:uppercase;
}
.ddc-plan-card__body{
    display:flex;
    flex-direction:column;
    flex:1;
    padding:22px;
}
.ddc-plan-card__head{min-height:104px}
.ddc-plan-card__head h3{
    margin:0 0 8px;
    color:var(--ddc-plans-ink);
    font-size:20px;
    line-height:1.15;
    letter-spacing:-.02em;
}
.ddc-plan-card__head p{
    margin:0;
    color:var(--ddc-plans-muted);
    font-size:13px;
    line-height:1.45;
}
.ddc-plan-price{
    display:flex;
    align-items:flex-end;
    gap:5px;
    min-height:52px;
    margin-top:8px;
    white-space:nowrap;
}
.ddc-plan-price__currency{font-size:18px;font-weight:900;line-height:1.55}
.ddc-plan-price strong{
    color:var(--ddc-plans-ink);
    font-size:38px;
    line-height:1;
    letter-spacing:-.04em;
}
.ddc-plan-price__suffix{
    margin-bottom:4px;
    color:#475569;
    font-size:14px;
    font-weight:800;
}
.ddc-plan-card__compare{
    align-self:flex-start;
    margin-top:8px;
    padding:4px 7px;
    border:1px solid #c8ced8;
    border-radius:5px;
    color:#475569;
    font-size:10px;
    font-weight:800;
    text-transform:uppercase;
}
.ddc-plan-card__duration{
    margin-top:8px;
    color:#334155;
    font-size:13px;
    font-weight:700;
}
.ddc-plans-page .ddc-plan-card__cta{
    width:100%;
    min-height:46px;
    margin:18px 0 0;
    border-radius:5px;
    border-color:var(--ddc-plan-accent);
    background:var(--ddc-plan-accent);
    color:#fff;
    font-size:13px;
    font-weight:900;
    text-transform:uppercase;
    text-decoration:none;
}
.ddc-plans-page .ddc-plan-card__cta:hover{
    filter:brightness(.94);
    transform:translateY(-1px);
}
.ddc-plans-page .ddc-plan-card__cta[aria-disabled="true"]{
    pointer-events:none;
    opacity:.45;
}
.ddc-plan-benefits{
    margin-top:20px;
    padding-top:18px;
    border-top:1px solid #e7eaf0;
}
.ddc-plan-benefits>strong{
    display:block;
    margin-bottom:10px;
    color:#111827;
    font-size:12px;
    font-weight:900;
    text-transform:uppercase;
}
.ddc-plan-benefits ul{display:grid;gap:9px;margin:0;padding:0;list-style:none}
.ddc-plan-benefits li{
    display:grid;
    grid-template-columns:18px minmax(0,1fr);
    gap:7px;
    align-items:start;
    margin:0;
    color:#334155;
    font-size:13px;
    line-height:1.35;
}
.ddc-plan-benefits li>span{
    display:inline-flex;
    width:17px;
    height:17px;
    align-items:center;
    justify-content:center;
    border-radius:999px;
    background:var(--ddc-plan-accent);
    color:#fff;
    font-size:11px;
    font-weight:900;
}
.ddc-plan-benefits li.is-excluded{color:#94a3b8}
.ddc-plan-benefits li.is-excluded>span{background:#e5e7eb;color:#94a3b8}
.ddc-plans-shell>.ddc-payment-notice{max-width:840px;margin:0 auto 18px}

/* Variantes públicas */
.ddc-plans-page--editorial .ddc-plans-hero{
    background:#fff;
    color:#0f172a;
    border:1px solid #dfe4ea;
    border-bottom:0;
}
.ddc-plans-page--editorial .ddc-plans-hero::before,
.ddc-plans-page--editorial .ddc-plans-hero::after{display:none}
.ddc-plans-page--editorial .ddc-plans-hero p{color:#64748b}
.ddc-plans-page--editorial .ddc-plans-hero__eyebrow{background:#f1f5f9;border-color:#e2e8f0;color:#334155}
.ddc-plans-page--editorial .ddc-plan-card{border-radius:0;box-shadow:none}
.ddc-plans-page--editorial .ddc-plan-card.is-featured{box-shadow:inset 0 4px 0 var(--ddc-plan-accent)}
.ddc-plans-page--cards .ddc-plans-hero{background:#f4f7fb;color:#0f172a}
.ddc-plans-page--cards .ddc-plans-hero p{color:#64748b}
.ddc-plans-page--cards .ddc-plans-hero__eyebrow{background:#fff;border-color:#dce4ee;color:#334155}
.ddc-plans-page--cards .ddc-plan-card{border-radius:22px;box-shadow:0 14px 36px rgba(15,23,42,.08)}
.ddc-plans-page--cards .ddc-plan-card__badge{justify-content:center}

@media (max-width:900px){
    .ddc-plans-grid,
    .ddc-plans-grid--2{grid-template-columns:repeat(2,minmax(0,1fr));max-width:none}
    .ddc-plans-grid--1{grid-template-columns:minmax(260px,480px)}
}
@media (max-width:640px){
    .ddc-plans-page{margin-top:14px}
    .ddc-plans-hero{width:calc(100% - 20px);border-radius:18px 18px 0 0}
    .ddc-plans-hero__inner{padding:34px 20px 66px}
    .ddc-plans-hero h2{font-size:30px}
    .ddc-plans-hero p{font-size:14px}
    .ddc-plans-shell{width:calc(100% - 28px);margin-top:-38px}
    .ddc-plans-grid,
    .ddc-plans-grid--1,
    .ddc-plans-grid--2{grid-template-columns:1fr;max-width:none}
    .ddc-plan-card__head{min-height:0}
    .ddc-plan-card__body{padding:20px}
    .ddc-plan-price strong{font-size:34px}
}


/* v1.16.38 - Publicidad intercalada dentro de grillas de noticias. */
.ddc-section-inline-ad {
    position: relative;
    min-width: 0;
    align-self: stretch;
    display: flex;
    flex-direction: column;
    justify-content: center;
    overflow: hidden;
    border: var(--ddc-card-border-width, 1px) solid var(--ddc-card-border-color, rgba(15, 23, 42, .12));
    border-radius: var(--ddc-card-radius, 0px);
    background: #f8fafc;
}
.ddc-section-inline-ad__label {
    display: block;
    padding: 7px 10px 0;
    color: #64748b;
    font-size: 10px;
    font-weight: 800;
    line-height: 1;
    letter-spacing: .08em;
    text-transform: uppercase;
}
.ddc-section-inline-ad .ddc-public-banners[data-ddc-ad-space] {
    flex: 1 1 auto;
    min-height: 0;
    margin: 0 !important;
    border: 0;
    display: flex;
    align-items: center;
    justify-content: center;
}
.ddc-section-inline-ad .ddc-public-banner,
.ddc-section-inline-ad .ddc-public-banner picture,
.ddc-section-inline-ad .ddc-public-banner a {
    width: 100%;
    height: 100%;
    min-height: 0;
    display: flex;
    align-items: center;
    justify-content: center;
}
.ddc-section-inline-ad .ddc-public-banner img {
    width: 100%;
    max-width: 100%;
    height: 100%;
    max-height: 100%;
    object-fit: contain;
}
.ddc-public-section--list .ddc-section-inline-ad,
.ddc-public-section--compact .ddc-section-inline-ad,
.ddc-public-section--hero .ddc-section-inline-ad,
.ddc-public-section--magazine .ddc-section-inline-ad,
.ddc-public-section--mixed .ddc-section-inline-ad,
.ddc-public-section--video .ddc-section-inline-ad,
.ddc-public-section--opinion .ddc-section-inline-ad {
    grid-column: 1 / -1;
    min-height: 120px;
}
@media (max-width: 680px) {
    .ddc-section-inline-ad {
        min-height: 110px;
    }
}

/* v1.16.39 - Columna editorial lateral de la noticia. */
.ddc-news-single-layout {
    width: min(100%, calc(920px + var(--ddc-single-sidebar-width, 320px) + 36px));
    max-width: 1320px;
    margin: 0 auto;
    display: grid;
    grid-template-columns: minmax(0, 920px) minmax(260px, var(--ddc-single-sidebar-width, 320px));
    gap: 36px;
    align-items: start;
    box-sizing: border-box;
}

.ddc-news-single-layout--sidebar-left {
    grid-template-columns: minmax(260px, var(--ddc-single-sidebar-width, 320px)) minmax(0, 920px);
}

.ddc-news-single-layout--sidebar-left > .ddc-news-single {
    grid-column: 2;
}

.ddc-news-single-layout--sidebar-left > .ddc-news-sidebar {
    grid-column: 1;
    grid-row: 1;
}

.ddc-news-single-layout > .ddc-news-single {
    width: 100%;
    max-width: 920px;
    margin: 0;
    min-width: 0;
}

.ddc-news-sidebar {
    min-width: 0;
    display: grid;
    gap: 26px;
    align-content: start;
}

.ddc-news-sidebar.is-sticky {
    position: sticky;
    top: 96px;
}

.ddc-news-sidebar__widget {
    border-top: 4px solid #0f172a;
    background: #fff;
}

.ddc-news-sidebar__widget-head {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
    padding: 13px 0 10px;
    border-bottom: 1px solid rgba(15, 23, 42, .14);
}

.ddc-news-sidebar__widget-head h2 {
    margin: 0;
    color: #0f172a;
    font-size: 22px;
    line-height: 1.05;
    font-weight: 900;
    letter-spacing: -.025em;
}

.ddc-news-sidebar__list {
    display: grid;
}

.ddc-news-sidebar__item {
    position: relative;
    display: grid;
    grid-template-columns: auto 82px minmax(0, 1fr);
    gap: 11px;
    align-items: start;
    padding: 13px 0;
    border-bottom: 1px solid rgba(15, 23, 42, .10);
}

.ddc-news-sidebar__widget--latest .ddc-news-sidebar__item {
    grid-template-columns: 82px minmax(0, 1fr);
}

.ddc-news-sidebar__item:last-child {
    border-bottom: 0;
}

.ddc-news-sidebar__rank {
    display: inline-flex;
    align-items: flex-start;
    justify-content: center;
    min-width: 26px;
    color: #d1007d;
    font-size: 26px;
    line-height: 1;
    font-weight: 950;
    letter-spacing: -.05em;
}

.ddc-news-sidebar__thumb {
    display: block;
    overflow: hidden;
    background: #eef2f6;
}

.ddc-news-sidebar__thumb img {
    display: block;
    width: 82px;
    height: 64px;
    object-fit: cover;
}

.ddc-news-sidebar__item-copy {
    min-width: 0;
}

.ddc-news-sidebar__item-copy h3 {
    margin: 0;
    font-size: 15px;
    line-height: 1.18;
    font-weight: 820;
    letter-spacing: -.018em;
}

.ddc-news-sidebar__item-copy h3 a {
    color: #0f172a;
    text-decoration: none;
}

.ddc-news-sidebar__item-copy h3 a:hover {
    text-decoration: underline;
    text-underline-offset: 3px;
}

.ddc-news-sidebar__item-copy span {
    display: block;
    margin-top: 6px;
    color: #768196;
    font-size: 11px;
    line-height: 1.2;
}

.ddc-news-sidebar__ad {
    min-width: 0;
}

.ddc-news-sidebar__ad:empty {
    display: none;
}

.ddc-news-sidebar__ad .ddc-news-single__ad,
.ddc-news-sidebar__ad .ddc-public-banners {
    margin: 0 !important;
    width: 100%;
    max-width: 100%;
}

.ddc-news-sidebar__ad img,
.ddc-news-sidebar__ad iframe {
    max-width: 100%;
    height: auto;
}

@media (max-width: 1120px) {
    .ddc-news-single-layout,
    .ddc-news-single-layout--sidebar-left {
        width: min(100%, 920px);
        grid-template-columns: minmax(0, 1fr);
        gap: 34px;
    }

    .ddc-news-single-layout--sidebar-left > .ddc-news-single,
    .ddc-news-single-layout--sidebar-left > .ddc-news-sidebar {
        grid-column: auto;
        grid-row: auto;
    }

    .ddc-news-single-layout--sidebar-left > .ddc-news-single {
        order: 1;
    }

    .ddc-news-single-layout--sidebar-left > .ddc-news-sidebar {
        order: 2;
    }

    .ddc-news-sidebar,
    .ddc-news-sidebar.is-sticky {
        position: static;
        top: auto;
        grid-template-columns: repeat(2, minmax(0, 1fr));
        gap: 24px;
    }

    .ddc-news-sidebar__ad {
        grid-column: 1 / -1;
    }
}

@media (max-width: 720px) {
    .ddc-news-single-layout {
        padding: 0 16px;
    }

    .ddc-news-single-layout > .ddc-news-single {
        padding-left: 0 !important;
        padding-right: 0 !important;
    }

    .ddc-news-sidebar,
    .ddc-news-sidebar.is-sticky {
        grid-template-columns: 1fr;
        gap: 22px;
    }

    .ddc-news-sidebar__ad {
        grid-column: auto;
    }

    .ddc-news-sidebar__widget-head h2 {
        font-size: 21px;
    }
}


/* v1.16.41 - Publicidad compacta estable, sin migración de base de datos.
 * El espacio sigue la altura real de la creatividad y no reserva la altura teórica del slot. */
.ddc-public-home__ad,
.ddc-public-section-ad {
    min-height: 0 !important;
    height: auto !important;
    margin-top: 8px !important;
    margin-bottom: 8px !important;
    padding-top: 0 !important;
    padding-bottom: 0 !important;
}
.ddc-public-banners[data-ddc-ad-space]:not(.ddc-public-banners--mobile_sticky):not(.ddc-public-banners--popup_ingreso):not(.ddc-public-banners--bottom_fijo) {
    min-height: 0 !important;
    height: auto !important;
    margin-top: 8px !important;
    margin-bottom: 8px !important;
    align-content: start !important;
}
.ddc-public-banners[data-ddc-ad-space]:not(.ddc-public-banners--mobile_sticky):not(.ddc-public-banners--popup_ingreso):not(.ddc-public-banners--bottom_fijo) > .ddc-public-banner,
.ddc-public-banners[data-ddc-ad-space]:not(.ddc-public-banners--mobile_sticky):not(.ddc-public-banners--popup_ingreso):not(.ddc-public-banners--bottom_fijo) > .ddc-public-banner > picture,
.ddc-public-banners[data-ddc-ad-space]:not(.ddc-public-banners--mobile_sticky):not(.ddc-public-banners--popup_ingreso):not(.ddc-public-banners--bottom_fijo) > .ddc-public-banner > a,
.ddc-public-banners[data-ddc-ad-space]:not(.ddc-public-banners--mobile_sticky):not(.ddc-public-banners--popup_ingreso):not(.ddc-public-banners--bottom_fijo) > .ddc-public-banner > a > picture {
    min-height: 0 !important;
    height: auto !important;
}
.ddc-public-banners[data-ddc-ad-space]:not(.ddc-public-banners--mobile_sticky):not(.ddc-public-banners--popup_ingreso):not(.ddc-public-banners--bottom_fijo) .ddc-public-banner img {
    display: block !important;
    width: auto !important;
    max-width: 100% !important;
    height: auto !important;
    min-height: 0 !important;
    object-fit: contain !important;
    margin: 0 auto !important;
}
@media (max-width: 760px) {
    .ddc-public-home__ad,
    .ddc-public-section-ad,
    .ddc-public-banners[data-ddc-ad-space]:not(.ddc-public-banners--mobile_sticky):not(.ddc-public-banners--popup_ingreso):not(.ddc-public-banners--bottom_fijo) {
        margin-top: 6px !important;
        margin-bottom: 6px !important;
    }
}


/* v1.16.43 - Publicidad editorial más limpia: trama sin borde duplicado. */
.ddc-public-banners[data-ddc-ad-space]:not(.ddc-public-banners--mobile_sticky):not(.ddc-public-banners--popup_ingreso):not(.ddc-public-banners--bottom_fijo) {
    border: 0 !important;
    border-top: 0 !important;
    border-right: 0 !important;
    border-bottom: 0 !important;
    border-left: 0 !important;
    box-shadow: none !important;
}
