/* --- 1. CONFIGURACIÓN BASE Y TIPOGRAFÍA --- */
.ny-v21-wrap {
    /* Pila de fuentes nativas: Carga instantánea sin peticiones externas */
    font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Helvetica, Arial, sans-serif !important;
    width: 100% !important;
    background: #fff !important;
    -webkit-font-smoothing: antialiased;
}

.ny-v21-grid {
    display: grid !important;
    grid-template-columns: 68% 28% !important;
    gap: 4% !important;
    align-items: start;
}

/* --- CABECERA DE AUTOR (BLOQUE GRIS) --- */
.ny-author-header-v2 {
    background: #f8f9fa !important;
    padding: 25px 30px !important;
    border-left: 6px solid #083363 !important;
    border-radius: 8px;
    margin-bottom: 30px;
}

.ny-author-name {
    color: #083363 !important;
    font-size: 30px !important;
    font-weight: 900 !important;
    margin: 0 0 10px 0 !important;
    display: flex;
    align-items: center;
    gap: 12px;
}

.ny-verified-badge {
    color: #1d9bf0;
    display: inline-flex;
    line-height: 1;
}

.ny-author-bio {
    font-size: 16px !important;
    color: #444 !important;
    line-height: 1.5 !important;
    margin: 0 !important;
    font-weight: 400;
}

/* --- TÍTULO DE SECCIÓN --- */
.ny-v21-title {
    font-size: 38px !important;
    font-weight: 800 !important;
    color: #083363 !important;
    margin-bottom: 25px !important;
    border-bottom: 4px solid #cc0000;
    padding-bottom: 10px;
    text-transform: uppercase;
}

/* --- FILA DE CADA NOTICIA (LOOP) --- */
.ny-tag-row {
    display: flex !important;
    gap: 20px !important;
    margin-bottom: 25px !important;
    align-items: flex-start !important;
    border-bottom: 1px solid #f2f2f2 !important;
    padding-bottom: 20px !important;
}

.ny-tag-img-box {
    flex: 0 0 260px !important;
    height: 165px !important;
    border-radius: 8px;
    overflow: hidden;
    background: #f0f0f0; /* Placeholder Anti-CLS */
}

.ny-tag-img-box img {
    width: 100% !important;
    height: 100% !important;
    object-fit: cover !important;
    display: block;
    transition: transform 0.3s ease;
}

.ny-tag-row:hover .ny-tag-img-box img {
    transform: scale(1.05);
}

.ny-tag-info-box {
    display: flex !important;
    flex-direction: column !important;
    gap: 4px !important;
}

.ny-tag-row-title {
    margin: 0 !important;
    padding: 0 !important;
    line-height: 1.15 !important;
}

.ny-tag-row-title a {
    font-size: 22px !important;
    font-weight: 800 !important;
    color: #083363 !important;
    text-decoration: none !important;
}

.ny-tag-row-title a:hover {
    color: #cc0000 !important;
}

.ny-tag-inner-meta {
    font-size: 13px !important;
    color: #777 !important;
    margin: 5px 0;
    font-weight: 500;
}

.ny-tag-row-excerpt {
    font-size: 15px !important;
    color: #444 !important;
    line-height: 1.4 !important;
}

/* --- CONTADOR DE ARTÍCULOS --- */
.ny-author-post-count {
    background: #083363;
    color: #fff !important;
    font-size: 12px !important;
    font-weight: 700;
    text-transform: uppercase;
    padding: 4px 10px;
    border-radius: 20px;
    vertical-align: middle;
    margin-left: 10px;
    display: inline-block;
    line-height: 1;
}

/* --- REDES SOCIALES --- */
.ny-author-socials {
    display: flex;
    gap: 10px;
    margin-top: 15px;
    flex-wrap: wrap;
}

.ny-social-icon {
    text-decoration: none !important;
    font-size: 11px;
    font-weight: 700;
    padding: 6px 14px;
    border-radius: 4px;
    color: #fff !important;
    text-transform: uppercase;
    transition: transform 0.2s;
}

.ny-social-icon:hover { transform: translateY(-2px); }
.ny-facebook { background: #1877F2; } 
.ny-twitter { background: #000; } /* Actualizado a color X actual */
.ny-instagram { background: #E4405F; } 
.ny-youtube { background: #FF0000; } 
.ny-linkedin { background: #0077B5; }

/* --- SIDEBAR --- */
.ny-v21-sidebar {
    border-left: 1px solid #eee;
    padding-left: 20px;
}

/* --- PAGINACIÓN --- */
.ny-pagination-container {
    margin: 40px 0;
    text-align: center;
    width: 100%;
}

.ny-pagination-container .page-numbers {
    display: inline-block;
    padding: 10px 18px;
    margin: 0 4px;
    background: #f1f1f1;
    color: #083363;
    text-decoration: none;
    font-weight: 700;
    border-radius: 6px;
    transition: 0.2s;
}

.ny-pagination-container .page-numbers.current {
    background: #083363;
    color: #fff;
}

.ny-pagination-container .page-numbers:hover:not(.current) {
    background: #cc0000;
    color: #fff;
}

/* --- RESPONSIVE --- */
@media (max-width: 900px) {
    .ny-v21-grid { display: block !important; }
    .ny-tag-row { flex-direction: column !important; gap: 12px !important; }
    .ny-tag-img-box { 
        width: 100% !important; 
        height: auto !important; 
        aspect-ratio: 16 / 9 !important;
        flex: none !important; 
    }
    .ny-v21-sidebar {
        margin-top: 40px;
        border-left: none;
        border-top: 1px solid #eee;
        padding-top: 30px;
        padding-left: 0;
    }
    .ny-author-name { font-size: 26px !important; flex-wrap: wrap; }
    .ny-v21-title { font-size: 30px !important; }
}
