/**
 * GoDiep Articles — Editorial Magazine Stylesheet
 *
 * Architecture:
 *   - CSS Custom Properties (theming layer)
 *   - BEM naming convention
 *   - Mobile-first responsive design
 *   - Dark-mode support via prefers-color-scheme
 *   - No dependencies on Enfold or WordPress core styles
 *
 * BEM blocks used:
 *   .godiep-featured-section / .godiep-featured-card
 *   .godiep-grid-section     / .godiep-articles-grid / .godiep-article-card
 *   .godiep-filters          / .godiep-filter-chip
 *   .godiep-sidebar          / .godiep-sidebar__block
 *   .godiep-pagination
 *   .godiep-badge
 *   .godiep-read-more
 *   .godiep-reading-time
 *   .godiep-search-form
 *
 * @package GoDiep\Articles
 */

/* ─────────────────────────────────────────────────────────────────────────────
   DESIGN TOKENS
   ───────────────────────────────────────────────────────────────────────────── */
:root {
    /* Brand */
    --godiep-primary: #1a1a2e;
    --godiep-accent: #e94560;
    --godiep-accent-dark: #c73850;

    /* Typography */
    --godiep-text: #1f2937;
    --godiep-text-muted: #6b7280;
    --godiep-text-inverse: #ffffff;

    /* Surface */
    --godiep-bg: #ffffff;
    --godiep-bg-alt: #f9fafb;
    --godiep-border: #e5e7eb;
    --godiep-border-strong: #d1d5db;

    /* Cards */
    --godiep-card-radius: 0;
    --godiep-card-shadow: 0 2px 8px rgba(0, 0, 0, 0.07);
    --godiep-card-shadow-hover: 0 10px 28px rgba(0, 0, 0, 0.13);
    --godiep-card-transition: transform 0.22s ease, box-shadow 0.22s ease;

    /* Badge */
    --godiep-badge-bg: #fef3f4;
    --godiep-badge-color: #e94560;
    --godiep-badge-radius: 4px;

    /* Spacing */
    --godiep-gap: 1.5rem;
    --godiep-gap-lg: 2rem;

    /* Typography scale */
    --godiep-font-xs: 0.75rem;
    --godiep-font-sm: 0.875rem;
    --godiep-font-base: 1rem;
    --godiep-font-lg: 1.125rem;
    --godiep-font-xl: 1.375rem;
    --godiep-font-2xl: 1.75rem;
}

/* ── Dark mode overrides ───────────────────────────────────────────────────── */
@media (prefers-color-scheme: dark) {
    :root {
        --godiep-text: #f3f4f6;
        --godiep-text-muted: #9ca3af;
        --godiep-bg: #111827;
        --godiep-bg-alt: #1f2937;
        --godiep-border: #374151;
        --godiep-border-strong: #4b5563;
        --godiep-card-shadow: 0 2px 8px rgba(0, 0, 0, 0.35);
        --godiep-card-shadow-hover: 0 10px 28px rgba(0, 0, 0, 0.5);
        --godiep-badge-bg: rgba(233, 69, 96, 0.15);
    }
}

/* ─────────────────────────────────────────────────────────────────────────────
   SHARED UTILITIES
   ───────────────────────────────────────────────────────────────────────────── */

/* Category / label badge */
.godiep-badge {
    display: inline-block;
    padding: 0.2em 0.65em;
    font-size: var(--godiep-font-xs);
    font-weight: 700;
    letter-spacing: 0.04em;
    text-transform: uppercase;
    background: var(--godiep-badge-bg);
    color: var(--godiep-badge-color);
    border-radius: var(--godiep-badge-radius);
    text-decoration: none;
    white-space: nowrap;
    transition: background 0.18s ease;
}

.godiep-badge:hover {
    background: var(--godiep-accent);
    color: var(--godiep-text-inverse);
}

/* Read-more link */
.godiep-read-more {
    display: inline-flex;
    align-items: center;
    gap: 0.3em;
    font-size: var(--godiep-font-sm);
    font-weight: 600;
    color: var(--godiep-accent);
    text-decoration: none;
    transition: gap 0.18s ease, color 0.18s ease;
}

.godiep-read-more:hover {
    color: var(--godiep-accent-dark);
    gap: 0.55em;
}

.godiep-read-more--small {
    font-size: var(--godiep-font-xs);
}

.godiep-read-more__arrow {
    display: inline-block;
    transition: transform 0.18s ease;
}

.godiep-read-more:hover .godiep-read-more__arrow {
    transform: translateX(3px);
}

/* Reading time  */
.godiep-reading-time {
    font-size: var(--godiep-font-xs);
    color: var(--godiep-text-muted);
}

/* No-results message */
.godiep-no-articles {
    text-align: center;
    padding: 2rem;
    color: var(--godiep-text-muted);
    font-size: var(--godiep-font-sm);
}

/* ─────────────────────────────────────────────────────────────────────────────
   FEATURED ARTICLES
   ───────────────────────────────────────────────────────────────────────────── */

.godiep-featured-section {
    margin-bottom: var(--godiep-gap-lg);
}

.godiep-featured-grid {
    display: grid;
    grid-template-columns: 1fr;
    gap: var(--godiep-gap);
}

@media (min-width: 640px) {
    .godiep-featured-grid[data-columns="2"] {
        grid-template-columns: repeat(2, 1fr);
    }

    .godiep-featured-grid[data-columns="3"] {
        grid-template-columns: repeat(3, 1fr);
    }

    .godiep-featured-grid[data-columns="4"] {
        grid-template-columns: repeat(2, 1fr);
    }
}

@media (min-width: 900px) {
    .godiep-featured-grid[data-columns="4"] {
        grid-template-columns: repeat(4, 1fr);
    }
}

/* Featured card */
.godiep-featured-card {
    display: flex;
    flex-direction: column;
    background: var(--godiep-bg);
    border-radius: 0;
    overflow: hidden;
    /* Flat editorial style — no shadow */
    transition: transform 0.22s ease;
}

.godiep-featured-card:hover {
    transform: translateY(-2px);
}

/* ── Image with per-card colour overlay (mix-blend-mode: multiply) ── */
.godiep-featured-card__image-wrap {
    display: block;
    overflow: hidden;
    aspect-ratio: 4 / 3;
    position: relative;
}

/* Gradient overlay – sits on top of the image, blends multiplicatively so
   dark areas of the photo stay dark and bright areas take on the tint. */
.godiep-featured-card__image-wrap::after {
    content: '';
    position: absolute;
    inset: 0;
    mix-blend-mode: multiply;
    pointer-events: none;
    border-radius: inherit;
}

/* Cycling overlay colours (4 variants, repeating) */
.godiep-featured-card--0 .godiep-featured-card__image-wrap::after,
.godiep-featured-card--4 .godiep-featured-card__image-wrap::after {
    background: linear-gradient(145deg, rgba(255, 130, 18, 0.80) 0%, rgba(205, 28, 18, 0.65) 100%);
}

.godiep-featured-card--1 .godiep-featured-card__image-wrap::after,
.godiep-featured-card--5 .godiep-featured-card__image-wrap::after {
    background: linear-gradient(145deg, rgba(215, 40, 110, 0.75) 0%, rgba(168, 20, 78, 0.62) 100%);
}

.godiep-featured-card--2 .godiep-featured-card__image-wrap::after,
.godiep-featured-card--6 .godiep-featured-card__image-wrap::after {
    background: linear-gradient(145deg, rgba(68, 55, 210, 0.75) 0%, rgba(28, 112, 225, 0.60) 100%);
}

.godiep-featured-card--3 .godiep-featured-card__image-wrap::after,
.godiep-featured-card--7 .godiep-featured-card__image-wrap::after {
    background: linear-gradient(145deg, rgba(14, 158, 115, 0.75) 0%, rgba(8, 112, 74, 0.60) 100%);
}

.godiep-featured-card__image {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
    transition: transform 0.38s ease;
}

.godiep-featured-card:hover .godiep-featured-card__image {
    transform: scale(1.04);
}

.godiep-featured-card__body {
    display: flex;
    flex-direction: column;
    flex: 1;
    padding: 1.1rem 0 0.25rem;
    gap: 0.65rem;
}

/* ── Single-line pipe-separated meta row ── */
.godiep-featured-card__meta {
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    gap: 0;
    margin: 0;
    font-size: var(--godiep-font-xs);
    color: var(--godiep-text-muted);
    line-height: 1.4;
}

.godiep-featured-card__meta time,
.godiep-featured-card__meta span {
    font-size: inherit;
    color: inherit;
}

.godiep-featured-card__meta-cat {
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 0.06em;
    color: var(--godiep-text-muted);
    text-decoration: none;
    transition: color 0.18s ease;
}

.godiep-featured-card__meta-cat:hover {
    color: var(--godiep-accent);
}

.godiep-featured-card__meta-sep {
    margin: 0 0.45em;
    opacity: 0.45;
}

.godiep-featured-card__title {
    margin: 0;
    font-size: var(--godiep-font-xl);
    font-weight: 800;
    line-height: 1.25;
    letter-spacing: -0.02em;
}

.godiep-featured-card__title a {
    color: var(--godiep-text);
    text-decoration: none;
    transition: color 0.18s ease;
}

.godiep-featured-card__title a:hover {
    color: var(--godiep-accent);
}

.godiep-featured-card__excerpt {
    display: block;
    margin: 0;
    font-size: var(--godiep-font-sm);
    color: var(--godiep-text-muted);
    line-height: 1.65;
    flex: 1;
}

/* Raise specificity to survive Enfold's #top a / #top p resets */
.godiep-featured-card .godiep-featured-card__meta-cat {
    display: inline;
    color: var(--godiep-text-muted);
}

.godiep-featured-card .godiep-featured-card__excerpt {
    display: block;
    color: var(--godiep-text-muted);
}

.godiep-featured-card__footer {
    margin-top: 0.5rem;
}

/* Outlined pill CTA button */
.godiep-featured-card__cta {
    display: inline-block;
    padding: 0.55em 1.4em;
    font-size: var(--godiep-font-sm);
    font-weight: 500;
    color: var(--godiep-text);
    border: 1.5px solid var(--godiep-text);
    border-radius: 50px;
    text-decoration: none;
    transition: background 0.2s ease, color 0.2s ease, border-color 0.2s ease;
    white-space: nowrap;
}

.godiep-featured-card__cta:hover {
    background: var(--godiep-text);
    color: var(--godiep-bg);
}

@media (prefers-color-scheme: dark) {
    .godiep-featured-card__cta {
        border-color: var(--godiep-border);
        color: var(--godiep-text);
    }

    .godiep-featured-card__cta:hover {
        background: var(--godiep-border);
        color: var(--godiep-text);
    }
}

/* ─────────────────────────────────────────────────────────────────────────────
   ARTICLES GRID
   ───────────────────────────────────────────────────────────────────────────── */

.godiep-grid-section {
    margin-bottom: var(--godiep-gap-lg);
}

.godiep-articles-grid {
    display: grid;
    grid-template-columns: 1fr;
    gap: var(--godiep-gap);
}

@media (min-width: 520px) {

    .godiep-articles-grid[data-columns="2"],
    .godiep-articles-grid[data-columns="3"],
    .godiep-articles-grid[data-columns="4"] {
        grid-template-columns: repeat(2, 1fr);
    }
}

@media (min-width: 900px) {
    .godiep-articles-grid[data-columns="3"] {
        grid-template-columns: repeat(3, 1fr);
    }

    .godiep-articles-grid[data-columns="4"] {
        grid-template-columns: repeat(4, 1fr);
    }
}

/* Article card */
.godiep-article-card {
    display: flex;
    flex-direction: column;
    background: var(--godiep-bg);
    border-radius: 0;
    overflow: hidden;
    box-shadow: var(--godiep-card-shadow);
    transition: var(--godiep-card-transition);
    border: 1px solid var(--godiep-border);
}

.godiep-article-card:hover {
    transform: translateY(-2px);
    box-shadow: var(--godiep-card-shadow-hover);
}

.godiep-article-card__image-wrap {
    display: block;
    overflow: hidden;
    aspect-ratio: 3 / 2;
}

.godiep-article-card__image {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
    transition: transform 0.3s ease;
}

.godiep-article-card:hover .godiep-article-card__image {
    transform: scale(1.05);
}

.godiep-article-card__body {
    display: flex;
    flex-direction: column;
    flex: 1;
    padding: 1rem;
    gap: 0.5rem;
}

.godiep-article-card__meta {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    flex-wrap: wrap;
}

.godiep-article-card__date {
    font-size: var(--godiep-font-xs);
    color: var(--godiep-text-muted);
}

.godiep-article-card__title {
    margin: 0;
    font-size: var(--godiep-font-lg);
    font-weight: 700;
    line-height: 1.3;
}

.godiep-article-card__title a {
    color: var(--godiep-text);
    text-decoration: none;
    transition: color 0.18s ease;
}

.godiep-article-card__title a:hover {
    color: var(--godiep-accent);
}

.godiep-article-card__excerpt {
    display: block;
    margin: 0;
    font-size: var(--godiep-font-sm);
    color: var(--godiep-text-muted);
    line-height: 1.6;
    flex: 1;
}

/* Raise specificity to survive Enfold's #top a / #top p resets */
.godiep-article-card .godiep-badge--category {
    display: inline-block;
    background: var(--godiep-badge-bg);
    color: var(--godiep-badge-color);
}

.godiep-article-card .godiep-article-card__excerpt {
    display: block;
    color: var(--godiep-text-muted);
}

.godiep-article-card__footer {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 0.5rem;
    margin-top: auto;
    padding-top: 0.6rem;
    border-top: 1px solid var(--godiep-border);
}

/* ─────────────────────────────────────────────────────────────────────────────
   CATEGORY FILTERS
   ───────────────────────────────────────────────────────────────────────────── */

.godiep-filters {
    display: flex;
    flex-wrap: wrap;
    gap: 0.5rem;
    margin-bottom: var(--godiep-gap);
}

/* Alignment modifiers */
.godiep-filters--center {
    justify-content: center;
}

.godiep-filters--right {
    justify-content: flex-end;
}

.godiep-filters--left {
    justify-content: flex-start;
}

/* Base chip */
.godiep-filter-chip {
    display: inline-flex;
    align-items: center;
    gap: 0.35em;
    padding: 0.45em 1em;
    font-size: var(--godiep-font-sm);
    font-weight: 600;
    border-radius: 999px;
    text-decoration: none;
    cursor: pointer;
    transition:
        background 0.18s ease,
        color 0.18s ease,
        border-color 0.18s ease,
        box-shadow 0.18s ease;
}

.godiep-filter-chip__count {
    font-weight: 400;
    opacity: 0.7;
}

/* Outline style (default) */
.godiep-filters--outline .godiep-filter-chip {
    background: transparent;
    color: var(--godiep-text);
    border: 2px solid var(--godiep-border-strong);
}

.godiep-filters--outline .godiep-filter-chip:hover,
.godiep-filters--outline .godiep-filter-chip--active {
    background: var(--godiep-accent);
    color: var(--godiep-text-inverse);
    border-color: var(--godiep-accent);
}

/* Filled style */
.godiep-filters--filled .godiep-filter-chip {
    background: var(--godiep-bg-alt);
    color: var(--godiep-text);
    border: 2px solid transparent;
}

.godiep-filters--filled .godiep-filter-chip:hover,
.godiep-filters--filled .godiep-filter-chip--active {
    background: var(--godiep-accent);
    color: var(--godiep-text-inverse);
}

/* Minimal style */
.godiep-filters--minimal .godiep-filter-chip {
    background: transparent;
    color: var(--godiep-text-muted);
    border: 2px solid transparent;
    padding-left: 0.4em;
    padding-right: 0.4em;
}

.godiep-filters--minimal .godiep-filter-chip:hover,
.godiep-filters--minimal .godiep-filter-chip--active {
    color: var(--godiep-accent);
}

.godiep-filters--minimal .godiep-filter-chip--active {
    font-weight: 700;
}

/* Focus visible */
.godiep-filter-chip:focus-visible {
    outline: 2px solid var(--godiep-accent);
    outline-offset: 2px;
}

/* ─────────────────────────────────────────────────────────────────────────────
   ARTICLE SIDEBAR
   ───────────────────────────────────────────────────────────────────────────── */

.godiep-sidebar {
    display: flex;
    flex-direction: column;
    gap: var(--godiep-gap);
}

.godiep-sidebar__block {
    background: var(--godiep-bg-alt);
    border-radius: var(--godiep-card-radius);
    padding: 1.25rem;
    border: 1px solid var(--godiep-border);
}

.godiep-sidebar__heading {
    margin: 0 0 1rem;
    font-size: var(--godiep-font-base);
    font-weight: 700;
    color: var(--godiep-text);
    letter-spacing: -0.01em;
    text-transform: uppercase;
    font-size: var(--godiep-font-xs);
    letter-spacing: 0.08em;
}

/* Search Form */
.godiep-search-form__inner {
    display: flex;
    border: 2px solid var(--godiep-border-strong);
    border-radius: 6px;
    overflow: hidden;
    transition: border-color 0.18s ease;
}

.godiep-search-form__inner:focus-within {
    border-color: var(--godiep-accent);
}

.godiep-search-form__input {
    flex: 1;
    border: none;
    padding: 0.6em 0.8em;
    font-size: var(--godiep-font-sm);
    background: var(--godiep-bg);
    color: var(--godiep-text);
    outline: none;
    min-width: 0;
}

.godiep-search-form__input::placeholder {
    color: var(--godiep-text-muted);
}

.godiep-search-form__button {
    background: var(--godiep-accent);
    color: var(--godiep-text-inverse);
    border: none;
    padding: 0 0.85em;
    cursor: pointer;
    display: flex;
    align-items: center;
    transition: background 0.18s ease;
}

.godiep-search-form__button:hover {
    background: var(--godiep-accent-dark);
}

.godiep-search-form__button:focus-visible {
    outline: 2px solid var(--godiep-accent);
    outline-offset: 2px;
}

/* Category list */
.godiep-sidebar__category-list {
    list-style: none;
    margin: 0;
    padding: 0;
    display: flex;
    flex-direction: column;
    gap: 0.1rem;
}

.godiep-sidebar__category-link {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 0.55em 0.25em;
    text-decoration: none;
    color: var(--godiep-text);
    font-size: var(--godiep-font-sm);
    border-bottom: 1px solid var(--godiep-border);
    transition: color 0.18s ease, padding-left 0.18s ease;
}

.godiep-sidebar__category-item:last-child .godiep-sidebar__category-link {
    border-bottom: none;
}

.godiep-sidebar__category-link:hover {
    color: var(--godiep-accent);
    padding-left: 0.4em;
}

.godiep-sidebar__category-count {
    font-size: var(--godiep-font-xs);
    color: var(--godiep-text-muted);
    background: var(--godiep-border);
    padding: 0.1em 0.45em;
    border-radius: 999px;
}

/* Recent articles */
.godiep-sidebar__recent-list {
    list-style: none;
    margin: 0;
    padding: 0;
    display: flex;
    flex-direction: column;
    gap: 0.75rem;
}

.godiep-sidebar__recent-list li {
    list-style: none;
    margin: 0;
    padding: 0;
}

.godiep-sidebar__recent-item {
    list-style: none;
    margin: 0;
    padding: 0;
}

.godiep-sidebar__recent-link {
    display: flex;
    align-items: flex-start;
    gap: 0.75rem;
    text-decoration: none;
    color: var(--godiep-text);
    transition: color 0.18s ease;
}

.godiep-sidebar__recent-link:hover {
    color: var(--godiep-accent);
}

.godiep-sidebar__recent-thumb {
    width: 64px;
    min-width: 64px;
    height: 48px;
    border-radius: 0;
    overflow: hidden;
}

.godiep-sidebar__recent-thumb img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
}

.godiep-sidebar__recent-meta {
    display: flex;
    flex-direction: column;
    gap: 0.2rem;
}

.godiep-sidebar__recent-title {
    font-size: var(--godiep-font-sm);
    font-weight: 600;
    line-height: 1.3;
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    overflow: hidden;
}

.godiep-sidebar__recent-date {
    font-size: var(--godiep-font-xs);
    color: var(--godiep-text-muted);
}

/* ─────────────────────────────────────────────────────────────────────────────
   PAGINATION
   ───────────────────────────────────────────────────────────────────────────── */

.godiep-pagination {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    gap: 0.35rem;
    margin-top: var(--godiep-gap);
    padding-top: var(--godiep-gap);
    border-top: 1px solid var(--godiep-border);
}

.godiep-pagination .page-numbers {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-width: 2.2em;
    height: 2.2em;
    padding: 0 0.6em;
    font-size: var(--godiep-font-sm);
    font-weight: 600;
    text-decoration: none;
    border-radius: 6px;
    border: 2px solid var(--godiep-border-strong);
    background: var(--godiep-bg);
    color: var(--godiep-text);
    transition: background 0.18s ease, color 0.18s ease, border-color 0.18s ease;
}

.godiep-pagination .page-numbers:hover {
    background: var(--godiep-bg-alt);
    border-color: var(--godiep-accent);
    color: var(--godiep-accent);
}

.godiep-pagination .page-numbers.current {
    background: var(--godiep-accent);
    color: var(--godiep-text-inverse);
    border-color: var(--godiep-accent);
}

.godiep-pagination .page-numbers.dots {
    border-color: transparent;
    background: transparent;
    cursor: default;
}

.godiep-pagination .page-numbers:focus-visible {
    outline: 2px solid var(--godiep-accent);
    outline-offset: 2px;
}

/* ─────────────────────────────────────────────────────────────────────────────
   PRINT
   ───────────────────────────────────────────────────────────────────────────── */

@media print {

    .godiep-filters,
    .godiep-pagination,
    .godiep-read-more,
    .godiep-search-form {
        display: none;
    }

    .godiep-featured-card,
    .godiep-article-card {
        box-shadow: none;
        border: 1px solid #ccc;
        page-break-inside: avoid;
    }
}

/* ─────────────────────────────────────────────────────────────────────────────
   AJAX LOADING STATE
   ─────────────────────────────────────────────────────────────────────────────
 */

.godiep-articles-grid {
    transition: opacity 0.2s ease;
}

.godiep-articles-grid.godiep-grid--loading {
    opacity: 0.4;
    pointer-events: none;
    cursor: wait;
}

/* Spinner overlay while AJAX request is in-flight */
.godiep-grid-section {
    position: relative;
}

.godiep-grid-section::after {
    content: '';
    position: absolute;
    inset: 0;
    display: none;
    align-items: center;
    justify-content: center;
    border-radius: var(--godiep-card-radius, 8px);
    pointer-events: none;
    z-index: 10;
}

.godiep-grid-section:has(.godiep-grid--loading)::after {
    display: flex;
    background: rgba(255, 255, 255, 0.25);
}

/* ─────────────────────────────────────────────────────────────────────────────
   MOBILE OVERRIDES  (max-width: 599px)
   ─────────────────────────────────────────────────────────────────────────────
   The grid columns are already 1-column by default (mobile-first).
   This block handles typography scaling, touch targets, and sidebar layout.
   ───────────────────────────────────────────────────────────────────────────── */
@media (max-width: 599px) {

    /* ── Featured card: scale down heading on small screens ── */
    .godiep-featured-card__title {
        font-size: var(--godiep-font-lg);
        /* 1.125rem instead of 1.375rem */
    }

    /* ── Meta row: tighten separators, allow wrap cleanly ── */
    .godiep-featured-card__meta {
        font-size: 0.7rem;
        row-gap: 0.15rem;
    }

    .godiep-featured-card__meta-sep {
        margin: 0 0.3em;
    }

    /* ── Article card heading scale ── */
    .godiep-article-card__title {
        font-size: var(--godiep-font-base);
    }

    /* ── Filter chips: horizontal scroll instead of wrapping ── */
    .godiep-filters__list {
        flex-wrap: nowrap;
        overflow-x: auto;
        -webkit-overflow-scrolling: touch;
        scrollbar-width: none;
        /* Firefox */
        padding-bottom: 4px;
        /* room for scroll indicator */
    }

    .godiep-filters__list::-webkit-scrollbar {
        display: none;
    }

    /* ── Minimum 44px touch targets for chips ── */
    .godiep-filter-chip {
        min-height: 44px;
        padding-left: 1.1em;
        padding-right: 1.1em;
        white-space: nowrap;
        flex-shrink: 0;
    }

    /* ── Pagination: larger touch targets ── */
    .godiep-pagination .page-numbers {
        min-width: 2.75em;
        height: 2.75em;
    }

    /* ── Sidebar recent list: 2-column thumb grid on mobile ── */
    .godiep-sidebar__recent-list {
        display: grid;
        grid-template-columns: repeat(2, 1fr);
        gap: 0.75rem;
    }

    /* Restore item as column-flex so thumb + text stack within each cell */
    .godiep-sidebar__recent-item {
        display: flex;
    }

    .godiep-sidebar__recent-link {
        flex-direction: column;
        gap: 0.4rem;
    }

    .godiep-sidebar__recent-thumb {
        width: 100%;
        min-width: unset;
        height: 90px;
    }

    /* ── Category list: ensure 44px tap height ── */
    .godiep-sidebar__category-link {
        min-height: 44px;
        align-items: center;
    }
}