/**
 * Blog — mismo lenguaje visual que tienda / producto (teal + soft)
 */

.blog-page {
    --blog-teal: #0a9bb8;
    --blog-teal-2: #087ea4;
    --blog-soft: #f3f6f9;
    --blog-card: #ffffff;
    --blog-text: #1b2430;
    --blog-muted: #64748b;
    --blog-line: #e6edf5;
    --blog-radius: 16px;
    --blog-meta-icon: var(--blog-teal);
    --blog-card-radius: 0.75rem;
    /* Debajo del header sticky (+ admin bar). Sin gap extra para no desalinearlo al cargar. */
    --blog-sidebar-sticky-offset: calc(var(--wptheme-adminbar-offset, 0px) + 4.25rem);
    --blog-sidebar-sticky-offset-admin: calc(var(--wptheme-adminbar-offset, 32px) + 4.25rem);
    background: var(--blog-soft);
    color: var(--blog-text);
    padding: 0 0 3.5rem;
    /* overflow distinto de visible crea un scrollport y el sticky top empuja el sidebar */
    overflow: visible;
}

.blog-page.blog-list-section,
.blog-page.blog-single-section {
    background: var(--blog-soft);
    min-height: 50vh;
    padding-top: 0;
    overflow: visible;
}

.blog-page__wrap {
    padding-top: 1.75rem;
    overflow: visible;
}

/* Sidebar: misma altura que las cards + sticky al hacer scroll */
.blog-page .blog-layout {
    align-items: start;
    overflow: visible;
}

@media (min-width: 901px) {
    .blog-page .blog-layout__sidebar {
        position: sticky;
        align-self: start;
        top: var(--blog-sidebar-sticky-offset);
        margin-top: 0 !important;
        padding-top: 0;
        z-index: 5;
        overflow: visible;
    }

    body.admin-bar .blog-page .blog-layout__sidebar {
        top: var(--blog-sidebar-sticky-offset);
    }
}

/* Cards */
.blog-page .blog-posts-list {
    display: flex;
    flex-direction: column;
    gap: 1.25rem;
}

.blog-page .blog-post-card {
    background: var(--blog-card);
    border: 1px solid var(--blog-line);
    border-radius: var(--blog-radius);
    box-shadow: 0 8px 24px rgba(15, 23, 42, 0.05);
    transition: box-shadow 0.25s ease, border-color 0.25s ease;
}

.blog-page .blog-post-card:hover {
    border-color: var(--blog-teal);
    box-shadow: 0 10px 30px rgba(10, 155, 184, 0.2);
}

.blog-page .blog-post-card__media {
    background: #eef2f6;
}

.blog-page .blog-post-card__placeholder {
    background: linear-gradient(135deg, #e8eef4, #dce6ef);
}

.blog-page .blog-post-card__meta {
    color: var(--blog-muted);
}

.blog-page .blog-post-card__icon {
    color: var(--blog-teal);
}

.blog-page .blog-post-card__date time {
    color: var(--blog-muted);
}

.blog-page .blog-post-card__cat a {
    color: var(--blog-muted) !important;
    font-weight: 600;
}

.blog-page .blog-post-card__cat a:hover {
    color: var(--blog-teal) !important;
}

.blog-page .blog-post-card__title a {
    color: var(--blog-text) !important;
}

.blog-page .blog-post-card__title a:hover {
    color: var(--blog-teal) !important;
}

.blog-page .blog-post-card__excerpt {
    color: var(--blog-muted);
}

/* Single article */
.blog-page .blog-single-content-block {
    background: var(--blog-card);
    border: 1px solid var(--blog-line);
    border-radius: var(--blog-radius);
    padding: 1.75rem 1.85rem 2rem;
    box-shadow: 0 8px 24px rgba(15, 23, 42, 0.05);
}

.blog-page .blog-single-article__title {
    color: var(--blog-text);
    font-weight: 800;
    letter-spacing: -0.02em;
}

.blog-page .blog-single-article__meta {
    color: var(--blog-muted);
}

.blog-page .blog-single-article__content {
    color: var(--blog-text);
    line-height: 1.75;
}

.blog-page .blog-single-article__content a {
    color: var(--blog-teal);
}

.blog-page .blog-single-article__content a:hover {
    color: var(--blog-teal-2);
}

.blog-page .blog-single-article__thumb {
    margin-top: 1.25rem;
    border-radius: 12px;
    overflow: hidden;
}

.blog-page .blog-single-article__img {
    display: block;
    width: 100%;
    height: auto;
}

.blog-page .blog-single-article__tags a {
    color: var(--blog-teal);
}

.blog-page .blog-single-comments {
    margin-top: 1.75rem;
    background: var(--blog-card);
    border: 1px solid var(--blog-line);
    border-radius: var(--blog-radius);
    padding: 1.5rem 1.6rem;
    box-shadow: 0 8px 24px rgba(15, 23, 42, 0.05);
}

/* Pagination */
.blog-page .pagination {
    display: flex;
    justify-content: center;
    margin-top: 2rem;
}

.blog-page .pagination .nav-links {
    display: inline-flex;
    flex-wrap: wrap;
    gap: 0.45rem;
    align-items: center;
    justify-content: center;
}

.blog-page .pagination .page-numbers {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-width: 42px;
    height: 42px;
    padding: 0 0.85rem;
    border-radius: 10px;
    border: 1px solid var(--blog-line);
    background: #fff;
    color: var(--blog-muted);
    font-size: 0.9rem;
    font-weight: 600;
    text-decoration: none;
    transition: background 0.2s ease, color 0.2s ease, border-color 0.2s ease;
}

.blog-page .pagination .page-numbers:hover {
    border-color: var(--blog-teal);
    color: var(--blog-teal);
}

.blog-page .pagination .page-numbers.current {
    background: var(--blog-teal);
    border-color: var(--blog-teal);
    color: #fff;
    box-shadow: 0 6px 14px rgba(8, 126, 164, 0.28);
}

.blog-page .pagination .page-numbers.dots {
    border: none;
    background: transparent;
}

.blog-page .blog-empty {
    text-align: center;
    color: var(--blog-muted);
    font-size: 1.05rem;
    padding: 2rem 1rem;
    background: var(--blog-card);
    border: 1px solid var(--blog-line);
    border-radius: var(--blog-radius);
}

@media (max-width: 640px) {
    .blog-page__wrap {
        padding-top: 1.35rem;
    }

    .blog-page .blog-single-content-block {
        padding: 1.25rem 1.1rem 1.5rem;
    }
}
