/**
 * PaperMag Pro — Final Polish CSS
 *
 * Loaded at priority 30 AFTER polish.css (priority 25).
 * High-specificity overrides for 3 critical issues:
 *   1. Hero 60/40 split layout (THE #1 BUG)
 *   2. Card shadows + section grid spacing
 *   3. Logo, Header, Footer polish
 *
 * PHP class reference (verified from template source):
 *   hero-split.php:   .pm-hero-split > .pm-container.pm-hero-split__inner
 *                     .pm-hero-split__left > .pm-hero-split__link > .pm-hero-split__image
 *                     .pm-hero-split__overlay > .pm-hero-split__meta-top, .pm-hero-split__title, .pm-hero-split__author
 *                     .pm-hero-split__right > .pm-section-label + .pm-trending-title + .pm-trending-list
 *   card-standard.php: .pm-card-standard > .pm-card-standard__image-link + .pm-card-standard__body
 *   card-overlay.php:  .pm-card-overlay > .pm-card-overlay__link > .pm-card-overlay__content
 *   card-numbered.php: .pm-card-numbered > .pm-card-numbered__number + .pm-card-numbered__image-link + .pm-card-numbered__body
 *   card-horizontal.php: .pm-card-horizontal > .pm-card-horizontal__image-link + .pm-card-horizontal__body
 *   card-text-only.php: .pm-card-text-only
 *   top-stories.php:  .pm-top-stories > .pm-container > .pm-top-stories__grid
 *   discover-grid.php: .pm-discover > .pm-container > .pm-discover__grid
 *   latest-news.php:  .pm-latest-news > .pm-container > .pm-latest-news__grid > .pm-latest-news__left + .pm-latest-news__right
 *   dark-section.php: .pm-dark-section > .pm-container > .pm-dark-section__grid
 *
 * @package PaperMag_Pro
 * @since   1.0.0
 */


/* ==========================================================================
   MISSION 1: HERO 60/40 SPLIT FIX
   The outer wrapper is .pm-hero-split__inner (a div with classes
   "pm-container pm-hero-split__inner"). The base CSS targets .pm-hero
   which does NOT exist in the PHP. polish.css targets .pm-hero-split__inner
   but may lose to base CSS specificity. We use !important here to guarantee
   the grid renders.
   ========================================================================== */

/* Outer grid container — the wrapper that holds left 60% + right 40% */
.pm-hero-split .pm-hero-split__inner {
    display: grid !important;
    grid-template-columns: 1.5fr 1fr !important;
    gap: 24px !important;
    min-height: 500px;
    margin-bottom: 0;
    align-items: stretch;
}

/* Left panel — featured post with full-bleed background image */
.pm-hero-split .pm-hero-split__left {
    position: relative;
    overflow: hidden;
    border-radius: 4px;
    min-height: 500px;
    display: flex;
    flex-direction: column;
    justify-content: flex-end;
}

/* The <a> link wrapper inside the left panel */
.pm-hero-split .pm-hero-split__link {
    display: block;
    position: relative;
    width: 100%;
    height: 100%;
    min-height: 500px;
    overflow: hidden;
    text-decoration: none;
}

/* Hero image — positioned absolute to fill entire left panel */
.pm-hero-split .pm-hero-split__image {
    position: absolute !important;
    inset: 0 !important;
    width: 100% !important;
    height: 100% !important;
    object-fit: cover !important;
    transition: transform 8s ease;
    z-index: 1;
}

/* Ken Burns hover on hero image */
.pm-hero-split .pm-hero-split__left:hover .pm-hero-split__image {
    transform: scale(1.03);
}

/* Gradient scrim overlay — sits on top of image, text at bottom */
.pm-hero-split .pm-hero-split__overlay {
    position: absolute !important;
    inset: 0 !important;
    background: linear-gradient(
        to top,
        rgba(0, 0, 0, 0.85) 0%,
        rgba(0, 0, 0, 0.5) 35%,
        rgba(0, 0, 0, 0.15) 55%,
        transparent 70%
    ) !important;
    display: flex !important;
    flex-direction: column !important;
    justify-content: flex-end !important;
    padding: 32px !important;
    z-index: 2 !important;
    color: #fff;
}

/* Badge, title, author — all white on the gradient */
.pm-hero-split .pm-hero-split__overlay .pm-badge,
.pm-hero-split .pm-hero-split__overlay .pm-badge--overlay {
    color: #fff !important;
    background: rgba(255, 255, 255, 0.15);
    padding: 4px 12px;
    border-radius: 3px;
    font-size: 12px;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 0.05em;
    backdrop-filter: blur(4px);
    -webkit-backdrop-filter: blur(4px);
}

/* Top meta row: badge + comment count + view count */
.pm-hero-split .pm-hero-split__meta-top {
    display: flex;
    align-items: center;
    gap: 16px;
    margin-bottom: 12px;
}

.pm-hero-split .pm-hero-split__meta-top .pm-meta-comments,
.pm-hero-split .pm-hero-split__meta-top .pm-meta-views {
    color: rgba(255, 255, 255, 0.8) !important;
    font-size: 13px;
    display: flex;
    align-items: center;
    gap: 4px;
}

.pm-hero-split .pm-hero-split__meta-top .pm-meta-comments svg,
.pm-hero-split .pm-hero-split__meta-top .pm-meta-views svg {
    width: 14px;
    height: 14px;
    fill: rgba(255, 255, 255, 0.8);
}

/* Hero title */
.pm-hero-split .pm-hero-split__title {
    font-family: 'Poppins', sans-serif !important;
    font-weight: 700 !important;
    font-size: clamp(1.5rem, 3vw, 2.5rem) !important;
    line-height: 1.2 !important;
    margin: 12px 0 !important;
    color: #fff !important;
    display: -webkit-box;
    -webkit-line-clamp: 3;
    -webkit-box-orient: vertical;
    overflow: hidden;
}

.pm-hero-split .pm-hero-split__title a {
    color: inherit !important;
    text-decoration: none;
}

.pm-hero-split .pm-hero-split__title a:hover {
    text-decoration: underline;
    text-underline-offset: 3px;
}

/* Hero author row */
.pm-hero-split .pm-hero-split__author {
    display: flex;
    align-items: center;
    gap: 12px;
    color: rgba(255, 255, 255, 0.85) !important;
    font-family: 'Poppins', sans-serif;
    font-size: 14px;
}

.pm-hero-split .pm-hero-split__author .pm-avatar {
    width: 40px;
    height: 40px;
    border-radius: 50%;
    border: 2px solid rgba(255, 255, 255, 0.3);
}

.pm-hero-split .pm-hero-split__author .pm-meta-author {
    color: #fff !important;
    font-weight: 600;
}

.pm-hero-split .pm-hero-split__author .pm-meta-date {
    color: rgba(255, 255, 255, 0.6) !important;
}

.pm-hero-split .pm-hero-split__author .pm-meta-sep {
    color: rgba(255, 255, 255, 0.4);
}

/* Right panel — trending sidebar */
.pm-hero-split .pm-hero-split__right {
    display: flex !important;
    flex-direction: column !important;
    gap: 16px;
    min-width: 0;
}

/* "RECENT" label in right panel */
.pm-hero-split .pm-hero-split__right .pm-section-label {
    text-transform: uppercase;
    color: #0066FF;
    font-family: 'Poppins', sans-serif;
    font-weight: 700;
    font-size: 12px;
    letter-spacing: 0.1em;
    margin-bottom: 0;
}

/* "Trending Posts" heading */
.pm-hero-split .pm-trending-title {
    font-family: 'Poppins', sans-serif;
    font-size: 20px;
    font-weight: 700;
    color: var(--pm-text, #111);
    line-height: 1.3;
    margin: 0 0 8px 0;
}

/* Trending list container */
.pm-hero-split .pm-trending-list {
    display: flex;
    flex-direction: column;
    gap: 20px;
    flex: 1;
}

/* Numbered cards inside trending list */
.pm-hero-split .pm-trending-list .pm-card-numbered {
    display: grid;
    grid-template-columns: auto 70px 1fr;
    gap: 12px;
    align-items: center;
}

.pm-hero-split .pm-trending-list .pm-card-numbered__number {
    font-family: 'Poppins', sans-serif;
    font-size: 28px;
    font-weight: 800;
    color: rgba(0, 0, 0, 0.08);
    line-height: 1;
    min-width: 36px;
}

.pm-hero-split .pm-trending-list .pm-card-numbered__image {
    width: 70px;
    height: 56px;
    object-fit: cover;
    border-radius: 4px;
}

.pm-hero-split .pm-trending-list .pm-card-numbered__title {
    font-family: 'Poppins', sans-serif;
    font-size: 14px;
    font-weight: 600;
    line-height: 1.4;
    margin: 0;
}

.pm-hero-split .pm-trending-list .pm-card-numbered__title a {
    color: var(--pm-text, #111);
    text-decoration: none;
}

.pm-hero-split .pm-trending-list .pm-card-numbered__title a:hover {
    color: #0066FF;
}

/* ---- Hero Responsive ---- */

@media (max-width: 1200px) {
    .pm-hero-split .pm-hero-split__inner {
        grid-template-columns: 55% 45% !important;
    }
}

@media (max-width: 768px) {
    .pm-hero-split .pm-hero-split__inner {
        grid-template-columns: 1fr !important;
        min-height: auto;
    }

    .pm-hero-split .pm-hero-split__left,
    .pm-hero-split .pm-hero-split__link {
        min-height: 350px;
    }

    .pm-hero-split .pm-hero-split__title {
        font-size: clamp(1.25rem, 4vw, 1.75rem) !important;
    }

    .pm-hero-split .pm-hero-split__overlay {
        padding: 20px !important;
    }
}

@media (max-width: 480px) {
    .pm-hero-split .pm-hero-split__left,
    .pm-hero-split .pm-hero-split__link {
        min-height: 280px;
    }

    .pm-hero-split .pm-hero-split__title {
        font-size: 1.125rem !important;
        -webkit-line-clamp: 2;
    }

    .pm-hero-split .pm-hero-split__overlay {
        padding: 16px !important;
    }
}


/* ==========================================================================
   MISSION 2: CARD SHADOWS + SPACING POLISH
   ========================================================================== */

/* ---- Universal Card Enhancements ---- */

.pm-card-standard,
.pm-card-overlay,
.pm-card-horizontal,
.pm-card-numbered,
.pm-card-text-only {
    background: #fff;
    border-radius: 4px;
    overflow: hidden;
    transition: transform 0.3s ease, box-shadow 0.3s ease;
}

.pm-card-standard {
    box-shadow: 0 2px 8px rgba(0, 0, 0, 0.08);
}

.pm-card-standard:hover {
    transform: translateY(-3px);
    box-shadow: 0 8px 24px rgba(0, 0, 0, 0.12);
}

.pm-card-overlay {
    box-shadow: 0 2px 8px rgba(0, 0, 0, 0.08);
}

.pm-card-overlay:hover {
    transform: translateY(-3px);
    box-shadow: 0 8px 24px rgba(0, 0, 0, 0.12);
}

.pm-card-horizontal {
    box-shadow: 0 2px 8px rgba(0, 0, 0, 0.08);
}

.pm-card-horizontal:hover {
    transform: translateY(-3px);
    box-shadow: 0 8px 24px rgba(0, 0, 0, 0.12);
}

/* Card images — consistent aspect ratio */
.pm-card-standard__image-link {
    display: block;
    overflow: hidden;
    aspect-ratio: 16 / 9;
}

.pm-card-standard__image {
    width: 100%;
    height: 100%;
    object-fit: cover;
    aspect-ratio: 16 / 9;
    transition: transform 0.4s ease;
}

.pm-card-standard:hover .pm-card-standard__image {
    transform: scale(1.04);
}

.pm-card-overlay__image {
    width: 100%;
    height: 100%;
    object-fit: cover;
    transition: transform 0.4s ease;
}

.pm-card-overlay:hover .pm-card-overlay__image {
    transform: scale(1.04);
}

/* Card body padding */
.pm-card-standard__body {
    padding: 16px;
}

/* Card title */
.pm-card-standard__title {
    font-family: 'Poppins', sans-serif;
    font-weight: 600;
    line-height: 1.3;
}

.pm-card-standard__title a {
    color: var(--pm-text, #111);
    text-decoration: none;
    transition: color 0.2s ease;
}

.pm-card-standard__title a:hover {
    color: #0066FF;
}

/* Category badge */
.pm-badge {
    font-family: 'Poppins', sans-serif;
    font-weight: 700;
    font-size: 12px;
    text-transform: uppercase;
    letter-spacing: 0.05em;
    display: inline-block;
    margin-bottom: 8px;
}

/* ---- Section Spacing ---- */

.pm-hero-split,
.pm-top-stories,
.pm-whats-new,
.pm-dark-section,
.pm-from-us,
.pm-newsletter-section,
.pm-discover,
.pm-latest-news {
    margin-bottom: 48px;
}

/* ---- Top Stories Grid: 5 columns ---- */
.pm-top-stories .pm-top-stories__grid {
    display: grid !important;
    grid-template-columns: repeat(5, 1fr) !important;
    gap: 20px !important;
}

/* ---- Discover Grid: 3 columns ---- */
.pm-discover .pm-discover__grid {
    display: grid !important;
    grid-template-columns: repeat(3, 1fr) !important;
    gap: 24px !important;
}

/* ---- Latest News Grid: 2 columns (image cards + text cards) ---- */
.pm-latest-news .pm-latest-news__grid {
    display: grid !important;
    grid-template-columns: repeat(2, 1fr) !important;
    gap: 24px !important;
}

/* Left column: stack 3 image cards */
.pm-latest-news .pm-latest-news__left {
    display: flex;
    flex-direction: column;
    gap: 24px;
}

/* Right column: stack 3 text-only cards */
.pm-latest-news .pm-latest-news__right {
    display: flex;
    flex-direction: column;
    gap: 0;
}

/* Text-only cards: divider between each */
.pm-card-text-only {
    padding: 16px 0;
    border-bottom: 1px solid var(--pm-border, #E5E5E5);
    background: transparent;
    box-shadow: none;
}

.pm-card-text-only:last-child {
    border-bottom: none;
}

.pm-card-text-only__title {
    font-family: 'Poppins', sans-serif;
    font-weight: 600;
    font-size: 16px;
    line-height: 1.4;
    margin: 4px 0 8px;
}

.pm-card-text-only__title a {
    color: var(--pm-text, #111);
    text-decoration: none;
}

.pm-card-text-only__title a:hover {
    color: #0066FF;
}

.pm-card-text-only__excerpt {
    font-size: 14px;
    color: var(--pm-text-body, #444);
    line-height: 1.6;
    margin-bottom: 8px;
}

.pm-card-text-only__meta {
    font-size: 13px;
    color: var(--pm-text-meta, #888);
}

/* ---- Dark Section Cards ---- */
.pm-dark-section .pm-card-horizontal--dark {
    background: transparent;
    box-shadow: none;
}

.pm-dark-section .pm-card-horizontal--dark:hover {
    transform: none;
    box-shadow: none;
}

/* ---- Section grids responsive ---- */

@media (max-width: 1200px) {
    .pm-top-stories .pm-top-stories__grid {
        grid-template-columns: repeat(3, 1fr) !important;
    }
}

@media (max-width: 768px) {
    .pm-top-stories .pm-top-stories__grid {
        grid-template-columns: repeat(2, 1fr) !important;
    }

    .pm-discover .pm-discover__grid {
        grid-template-columns: 1fr !important;
    }

    .pm-latest-news .pm-latest-news__grid {
        grid-template-columns: 1fr !important;
    }
}

@media (max-width: 480px) {
    .pm-top-stories .pm-top-stories__grid {
        grid-template-columns: 1fr !important;
    }
}

/* ---- "See More" Button ---- */
.pm-latest-news__footer {
    text-align: center;
    margin-top: 32px;
}

.pm-btn--outline {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    padding: 12px 28px;
    border: 2px solid #0066FF;
    color: #0066FF;
    font-family: 'Poppins', sans-serif;
    font-weight: 600;
    font-size: 14px;
    text-decoration: none;
    border-radius: 4px;
    transition: background 0.2s ease, color 0.2s ease;
}

.pm-btn--outline:hover {
    background: #0066FF;
    color: #fff;
}

.pm-btn--outline .pm-icon {
    width: 16px;
    height: 16px;
}

/* ---- Section Headers ---- */
.pm-section-header {
    margin-bottom: 24px;
}

.pm-section-label {
    display: inline-block;
    font-family: 'Poppins', sans-serif;
    font-weight: 700;
    font-size: 12px;
    text-transform: uppercase;
    letter-spacing: 0.1em;
    color: #0066FF;
    margin-bottom: 4px;
}

.pm-section-title {
    font-family: 'Poppins', sans-serif;
    font-weight: 700;
    font-size: 24px;
    color: var(--pm-text, #111);
    line-height: 1.3;
    margin: 0;
}

/* Dark section variant */
.pm-section-label--light {
    color: rgba(255, 255, 255, 0.6);
}

.pm-section-title--light {
    color: #fff;
}


/* ==========================================================================
   MISSION 3: LOGO + HEADER + FOOTER POLISH
   ========================================================================== */

/* ---- Header ---- */
.pm-header {
    background: #fff !important;
    border-bottom: 1px solid #eee;
    padding: 16px 0;
    position: sticky;
    top: 0;
    z-index: 1000;
}

.pm-header__inner {
    display: flex;
    align-items: center;
    gap: 24px;
}

/* Logo */
.pm-header__logo {
    flex-shrink: 0;
}

.pm-header__logo .custom-logo {
    max-height: 45px;
    width: auto;
    display: block;
}

/* Text fallback when logo image is broken or missing */
.pm-header__site-title {
    font-family: 'Poppins', sans-serif;
    font-weight: 700;
    font-size: 24px;
    color: #111;
    text-decoration: none;
    white-space: nowrap;
}

.pm-header__site-title:hover {
    color: #0066FF;
}

/* Primary nav */
.pm-header__nav {
    flex: 1;
}

.pm-nav__list {
    display: flex;
    align-items: center;
    gap: 24px;
    list-style: none;
    margin: 0;
    padding: 0;
}

.pm-nav__list .menu-item a {
    font-family: 'Poppins', sans-serif;
    font-weight: 500;
    font-size: 15px;
    color: #333;
    text-decoration: none;
    transition: color 0.2s ease;
    white-space: nowrap;
}

.pm-nav__list .menu-item a:hover {
    color: #0066FF;
}

.pm-nav__list .current-menu-item > a {
    color: #0066FF;
}

/* Header right: dark mode toggle + search */
.pm-header__actions {
    display: flex;
    align-items: center;
    gap: 12px;
    flex-shrink: 0;
}

/* Dark mode toggle */
.pm-dark-toggle {
    display: flex;
    align-items: center;
    gap: 6px;
    background: none;
    border: none;
    cursor: pointer;
    padding: 6px;
    border-radius: 4px;
    transition: background 0.2s ease;
}

.pm-dark-toggle:hover {
    background: #f5f5f5;
}

.pm-dark-toggle__dot {
    width: 18px;
    height: 18px;
    border-radius: 50%;
    background: #111;
    display: block;
    border: 2px solid #ddd;
}

.pm-dark-toggle__label {
    font-family: 'Poppins', sans-serif;
    font-weight: 500;
    font-size: 13px;
    color: #555;
}

/* Search input (desktop) */
.pm-header__search {
    display: flex;
    align-items: center;
}

.pm-header__search-input {
    background: #f5f5f5;
    border: none;
    border-radius: 20px;
    padding: 8px 16px;
    width: 200px;
    font-family: 'Poppins', sans-serif;
    font-size: 14px;
    color: #333;
    outline: none;
    transition: width 0.3s ease, box-shadow 0.2s ease;
}

.pm-header__search-input::placeholder {
    color: #999;
}

.pm-header__search-input:focus {
    width: 240px;
    box-shadow: 0 0 0 2px rgba(0, 102, 255, 0.2);
}

.pm-header__search-btn {
    background: none;
    border: none;
    cursor: pointer;
    padding: 6px;
    color: #666;
    margin-left: -32px;
    transition: color 0.2s ease;
}

.pm-header__search-btn:hover {
    color: #0066FF;
}

/* Mobile search toggle (hidden on desktop) */
.pm-header__search-toggle {
    display: none;
    background: none;
    border: none;
    cursor: pointer;
    padding: 6px;
    color: #333;
}

/* Hamburger (hidden on desktop) */
.pm-hamburger {
    display: none;
    background: none;
    border: none;
    cursor: pointer;
    padding: 6px;
    flex-direction: column;
    gap: 5px;
    width: 28px;
}

.pm-hamburger__line {
    display: block;
    height: 2px;
    background: #333;
    border-radius: 1px;
    transition: transform 0.3s ease, opacity 0.3s ease;
}

@media (max-width: 768px) {
    .pm-header__nav {
        display: none;
    }

    .pm-header__search {
        display: none;
    }

    .pm-header__search-toggle {
        display: flex;
    }

    .pm-hamburger {
        display: flex;
    }
}

/* ---- Topbar ---- */
.pm-topbar {
    background: #000;
    padding: 8px 0;
    font-size: 13px;
}

.pm-topbar__inner {
    display: flex;
    align-items: center;
    justify-content: space-between;
}

.pm-topbar__list {
    display: flex;
    gap: 20px;
    list-style: none;
    margin: 0;
    padding: 0;
}

.pm-topbar__item a {
    color: rgba(255, 255, 255, 0.7);
    text-decoration: none;
    font-size: 13px;
    transition: color 0.2s ease;
}

.pm-topbar__item a:hover {
    color: #fff;
}

.pm-topbar__social {
    display: flex;
    gap: 12px;
}

.pm-topbar__social-link {
    color: rgba(255, 255, 255, 0.6);
    transition: color 0.2s ease;
}

.pm-topbar__social-link:hover {
    color: #fff;
}

.pm-topbar__social-link svg {
    width: 16px;
    height: 16px;
}

/* ---- Footer ---- */
.pm-footer {
    background: #111 !important;
    padding: 48px 0 0 !important;
    color: rgba(255, 255, 255, 0.8);
}

.pm-footer__grid {
    display: grid !important;
    grid-template-columns: repeat(4, 1fr) !important;
    gap: 32px !important;
}

/* Footer widget headings */
.pm-footer-widget__title {
    color: #fff !important;
    font-family: 'Poppins', sans-serif;
    font-weight: 600;
    font-size: 16px;
    margin-bottom: 16px;
    padding-bottom: 8px;
    position: relative;
    display: inline-block;
}

.pm-footer-widget__title::after {
    content: '';
    position: absolute;
    bottom: 0;
    left: 0;
    width: 40px;
    height: 2px;
    background: #0066FF;
}

/* Footer links */
.pm-footer__cat-list a,
.pm-footer__link-list a {
    color: rgba(255, 255, 255, 0.7) !important;
    text-decoration: none;
    transition: color 0.2s ease;
    font-size: 14px;
}

.pm-footer__cat-list a:hover,
.pm-footer__link-list a:hover {
    color: #fff !important;
}

/* Footer contact */
.pm-footer__contact-item {
    color: rgba(255, 255, 255, 0.7);
}

.pm-footer__contact-item svg {
    color: #0066FF;
}

.pm-footer__contact-item a {
    color: rgba(255, 255, 255, 0.7);
}

.pm-footer__contact-item a:hover {
    color: #fff;
}

/* Footer popular posts */
.pm-footer__popular-title {
    color: rgba(255, 255, 255, 0.9);
    font-family: 'Poppins', sans-serif;
    font-weight: 600;
    font-size: 14px;
}

.pm-footer__popular-item:hover .pm-footer__popular-title {
    color: #fff;
}

.pm-footer__popular-date {
    color: rgba(255, 255, 255, 0.5);
    font-size: 12px;
}

/* Footer bottom bar */
.pm-footer__bottom {
    background: #000 !important;
    padding: 16px 0 !important;
    margin-top: 32px !important;
    border-top: 1px solid rgba(255, 255, 255, 0.1);
    display: flex;
    align-items: center;
    justify-content: space-between;
}

.pm-footer__copyright {
    color: rgba(255, 255, 255, 0.5) !important;
    font-size: 13px;
}

.pm-footer__bottom-social {
    display: flex;
    gap: 12px;
}

.pm-footer__social-link {
    color: rgba(255, 255, 255, 0.5);
    transition: color 0.2s ease;
}

.pm-footer__social-link:hover {
    color: #fff;
}

.pm-footer__social-link svg {
    width: 18px;
    height: 18px;
}

/* Footer responsive */
@media (max-width: 1024px) {
    .pm-footer__grid {
        grid-template-columns: repeat(2, 1fr) !important;
    }
}

@media (max-width: 480px) {
    .pm-footer__grid {
        grid-template-columns: 1fr !important;
    }

    .pm-footer__bottom {
        flex-direction: column;
        gap: 12px;
        text-align: center;
    }
}


/* ==========================================================================
   DARK MODE OVERRIDES for final-polish elements
   ========================================================================== */

[data-theme="dark"] .pm-card-standard,
[data-theme="dark"] .pm-card-horizontal {
    background: #1e293b;
    box-shadow: 0 2px 8px rgba(0, 0, 0, 0.2);
}

[data-theme="dark"] .pm-card-standard:hover,
[data-theme="dark"] .pm-card-horizontal:hover {
    box-shadow: 0 8px 24px rgba(0, 0, 0, 0.3);
}

[data-theme="dark"] .pm-card-standard__title a,
[data-theme="dark"] .pm-card-text-only__title a,
[data-theme="dark"] .pm-card-numbered__title a {
    color: #e2e8f0;
}

[data-theme="dark"] .pm-card-standard__title a:hover,
[data-theme="dark"] .pm-card-text-only__title a:hover,
[data-theme="dark"] .pm-card-numbered__title a:hover {
    color: #60a5fa;
}

[data-theme="dark"] .pm-card-text-only {
    border-color: #334155;
}

[data-theme="dark"] .pm-header {
    background: #0f172a !important;
    border-bottom-color: #1e293b;
}

[data-theme="dark"] .pm-header__site-title {
    color: #e2e8f0;
}

[data-theme="dark"] .pm-nav__list .menu-item a {
    color: #cbd5e1;
}

[data-theme="dark"] .pm-nav__list .menu-item a:hover {
    color: #60a5fa;
}

[data-theme="dark"] .pm-dark-toggle__dot {
    background: #e2e8f0;
    border-color: #475569;
}

[data-theme="dark"] .pm-header__search-input {
    background: #1e293b;
    color: #e2e8f0;
}

[data-theme="dark"] .pm-trending-title {
    color: #e2e8f0;
}

[data-theme="dark"] .pm-section-title {
    color: #e2e8f0;
}

[data-theme="dark"] .pm-card-numbered__number {
    color: rgba(255, 255, 255, 0.08);
}


/* ==========================================================================
   ACCESSIBILITY & REDUCED MOTION
   ========================================================================== */

@media (prefers-reduced-motion: reduce) {
    .pm-hero-split .pm-hero-split__image,
    .pm-card-standard__image,
    .pm-card-overlay__image,
    .pm-card-standard,
    .pm-card-overlay,
    .pm-card-horizontal {
        transition: none !important;
    }

    .pm-hero-split .pm-hero-split__left:hover .pm-hero-split__image,
    .pm-card-standard:hover .pm-card-standard__image,
    .pm-card-overlay:hover .pm-card-overlay__image {
        transform: none !important;
    }
}

/* Focus visible */
.pm-hero-split .pm-hero-split__link:focus-visible,
.pm-card-standard__title a:focus-visible,
.pm-card-overlay__link:focus-visible,
.pm-card-numbered__title a:focus-visible,
.pm-card-text-only__title a:focus-visible,
.pm-nav__list .menu-item a:focus-visible,
.pm-btn--outline:focus-visible {
    outline: 2px solid #0066FF;
    outline-offset: 2px;
}


/* ==========================================================================
   PRINT STYLES
   ========================================================================== */

@media print {
    .pm-topbar,
    .pm-header__search,
    .pm-header__actions,
    .pm-hamburger,
    .pm-footer__bottom-social,
    .pm-dark-toggle {
        display: none !important;
    }

    .pm-header {
        position: static !important;
        border-bottom: 1px solid #000;
    }

    .pm-card-standard,
    .pm-card-overlay {
        box-shadow: none !important;
        break-inside: avoid;
    }
}
