
/* ==========================================================================
   Trending Section & Sliders
   ========================================================================== */

.trending-section {
    padding: var(--space-3xl) 0;
}

.trending-sliders {
    display: flex;
    flex-direction: column;
    gap: var(--space-3xl);
}

.story-slider-wrapper {
    position: relative;
}

.slider-header {
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin-bottom: var(--space-md);
}

.slider-title {
    font-size: clamp(1.5rem, 3vw, 2rem);
    font-weight: 400;
}

.slider-link {
    color: var(--text-primary);
    transition: color var(--transition-fast);
}

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

.slider-count {
    font-size: 1rem;
    opacity: 0.5;
    font-weight: 300;
    margin-left: var(--space-xs);
}

.slider-view-all {
    font-size: 0.875rem;
    color: var(--text-secondary);
    font-weight: 500;
    transition: color var(--transition-fast);
}

.slider-view-all:hover {
    color: var(--accent);
}

/* ==========================================================================
   Latest Section
   ========================================================================== */

.latest-section {
    padding: var(--space-3xl) 0;
}

.no-stories,
.no-results {
    text-align: center;
    padding: var(--space-3xl) 0;
    opacity: 0.6;
}

/* ==========================================================================
   Archive & Taxonomy Pages
   ========================================================================== */

.archive-page,
.taxonomy-page {
    min-height: calc(100vh - 200px);
}

/* ==========================================================================
   Utility Classes
   ========================================================================== */

/* Spacing Utilities */
.mt-xs { margin-top: var(--space-xs); }
.mt-sm { margin-top: var(--space-sm); }
.mt-md { margin-top: var(--space-md); }
.mt-lg { margin-top: var(--space-lg); }
.mt-xl { margin-top: var(--space-xl); }

.mb-xs { margin-bottom: var(--space-xs); }
.mb-sm { margin-bottom: var(--space-sm); }
.mb-md { margin-bottom: var(--space-md); }
.mb-lg { margin-bottom: var(--space-lg); }
.mb-xl { margin-bottom: var(--space-xl); }

.pt-xs { padding-top: var(--space-xs); }
.pt-sm { padding-top: var(--space-sm); }
.pt-md { padding-top: var(--space-md); }
.pt-lg { padding-top: var(--space-lg); }
.pt-xl { padding-top: var(--space-xl); }

.pb-xs { padding-bottom: var(--space-xs); }
.pb-sm { padding-bottom: var(--space-sm); }
.pb-md { padding-bottom: var(--space-md); }
.pb-lg { padding-bottom: var(--space-lg); }
.pb-xl { padding-bottom: var(--space-xl); }

/* Display Utilities */
.d-none { display: none !important; }
.d-block { display: block !important; }
.d-flex { display: flex !important; }
.d-grid { display: grid !important; }

/* Text Utilities */
.text-center { text-align: center; }
.text-left { text-align: left; }
.text-right { text-align: right; }

/* Opacity Utilities */
.opacity-0 { opacity: 0; }
.opacity-50 { opacity: 0.5; }
.opacity-70 { opacity: 0.7; }
.opacity-100 { opacity: 1; }

/* ==========================================================================
   Print Styles
   ========================================================================== */

@media print {
    .site-header,
    .site-footer,
    .hero-section,
    .theme-toggle,
    .mobile-menu-toggle,
    .slider-nav,
    .infinite-trigger {
        display: none !important;
    }
    
    body {
        background: white;
        color: black;
    }
    
    .story-card {
        break-inside: avoid;
    }
}
