/**
 * SinceCode Blog Frontend Styles
 * Surfshark-inspired design with theme override protection
 * Version: 1.0.0
 */

/* ==========================================================================
   CSS Variables & Reset
   ========================================================================== */

:root {
    --scb-primary: #00d4aa !important;
    --scb-primary-rgb: 0, 212, 170 !important;
    --scb-secondary: #1a1a2e !important;
    --scb-secondary-rgb: 26, 26, 46 !important;
    --scb-accent: #ffd700 !important;
    --scb-text: #333333 !important;
    --scb-text-light: #666666 !important;
    --scb-background: #ffffff !important;
    --scb-card-bg: #ffffff !important;
    --scb-border: #e5e5e5 !important;
    --scb-shadow: 0 4px 6px -1px rgba(0, 0, 0, 0.1), 0 2px 4px -1px rgba(0, 0, 0, 0.06) !important;
    --scb-shadow-lg: 0 10px 15px -3px rgba(0, 0, 0, 0.1), 0 4px 6px -2px rgba(0, 0, 0, 0.05) !important;
    --scb-radius: 12px !important;
    --scb-radius-sm: 8px !important;
    --scb-transition: 0.3s cubic-bezier(0.4, 0, 0.2, 1) !important;
    --scb-font: -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, 'Helvetica Neue', Arial, sans-serif !important;
}

/* Base Reset for SinceCode Blog pages */
.sincecode-blog-active .scb-wrapper,
.sincecode-blog-active .scb-wrapper *,
.sincecode-blog-active .scb-wrapper *::before,
.sincecode-blog-active .scb-wrapper *::after {
    box-sizing: border-box !important;
}

.sincecode-blog-active .scb-wrapper {
    font-family: var(--scb-font) !important;
    font-size: 16px !important;
    line-height: 1.6 !important;
    color: var(--scb-text) !important;
    background-color: var(--scb-background) !important;
    -webkit-font-smoothing: antialiased !important;
    -moz-osx-font-smoothing: grayscale !important;
    margin: 0 !important;
    padding: 0 !important;
}

.sincecode-blog-active .scb-wrapper a {
    color: inherit !important;
    text-decoration: none !important;
    transition: color var(--scb-transition) !important;
}

.sincecode-blog-active .scb-wrapper img {
    max-width: 100% !important;
    height: auto !important;
    display: block !important;
}

.sincecode-blog-active .scb-wrapper ul,
.sincecode-blog-active .scb-wrapper ol {
    list-style: none !important;
    margin: 0 !important;
    padding: 0 !important;
}

/* ==========================================================================
   Layout
   ========================================================================== */

.scb-container {
    max-width: 1280px !important;
    margin: 0 auto !important;
    padding: 0 24px !important;
}

@media (min-width: 768px) {
    .scb-container {
        padding: 0 40px !important;
    }
}

/* ==========================================================================
   Hero Section
   ========================================================================== */

.scb-hero {
    background-color: var(--scb-secondary) !important;
    padding: 60px 0 !important;
    position: relative !important;
    overflow: hidden !important;
}

.scb-hero::before {
    content: '' !important;
    position: absolute !important;
    top: 0 !important;
    left: 0 !important;
    right: 0 !important;
    bottom: 0 !important;
    background: radial-gradient(ellipse at 30% 0%, rgba(var(--scb-primary-rgb), 0.15) 0%, transparent 50%),
                radial-gradient(ellipse at 70% 100%, rgba(var(--scb-primary-rgb), 0.1) 0%, transparent 50%) !important;
    pointer-events: none !important;
}

.scb-hero__inner {
    position: relative !important;
    z-index: 1 !important;
}

.scb-hero__badge {
    display: inline-flex !important;
    align-items: center !important;
    gap: 8px !important;
    background: rgba(255, 255, 255, 0.1) !important;
    color: #fff !important;
    padding: 6px 16px !important;
    border-radius: 50px !important;
    font-size: 13px !important;
    font-weight: 500 !important;
    margin-bottom: 20px !important;
    text-transform: uppercase !important;
    letter-spacing: 0.5px !important;
}

.scb-hero__title {
    font-size: 32px !important;
    font-weight: 700 !important;
    color: #fff !important;
    margin: 0 0 12px 0 !important;
    padding: 0 !important;
    line-height: 1.2 !important;
}

@media (min-width: 768px) {
    .scb-hero__title {
        font-size: 48px !important;
    }
}

.scb-hero__subtitle {
    font-size: 18px !important;
    color: rgba(255, 255, 255, 0.7) !important;
    margin: 0 !important;
    padding: 0 !important;
}

/* Hero Featured Posts */
.scb-hero-featured {
    padding: 40px 0 60px !important;
}

.scb-hero-featured__grid {
    display: grid !important;
    grid-template-columns: 1fr !important;
    gap: 24px !important;
    margin-top: 40px !important;
}

@media (min-width: 768px) {
    .scb-hero-featured__grid {
        grid-template-columns: repeat(2, 1fr) !important;
    }
}

.scb-featured-card {
    background: var(--scb-primary) !important;
    border-radius: var(--scb-radius) !important;
    overflow: hidden !important;
    position: relative !important;
    display: flex !important;
    flex-direction: column !important;
    min-height: 360px !important;
    transition: transform var(--scb-transition), box-shadow var(--scb-transition), opacity 0.5s ease-out !important;
    opacity: 1 !important;
    visibility: visible !important;
}

.scb-featured-card:hover {
    transform: translateY(-4px) !important;
    box-shadow: var(--scb-shadow-lg) !important;
}

.scb-featured-card__image {
    position: relative !important;
    padding-top: 56.25% !important;
    background: rgba(0, 0, 0, 0.1) !important;
}

.scb-featured-card__image img {
    position: absolute !important;
    top: 0 !important;
    left: 0 !important;
    width: 100% !important;
    height: 100% !important;
    object-fit: cover !important;
}

.scb-featured-card__content {
    padding: 24px !important;
    display: flex !important;
    flex-direction: column !important;
    flex-grow: 1 !important;
}

.scb-featured-card__meta {
    display: flex !important;
    align-items: center !important;
    gap: 12px !important;
    margin-bottom: 12px !important;
    font-size: 13px !important;
    color: rgba(0, 0, 0, 0.6) !important;
}

.scb-featured-card__category {
    display: inline-block !important;
    background: rgba(0, 0, 0, 0.1) !important;
    color: inherit !important;
    padding: 4px 10px !important;
    border-radius: 4px !important;
    font-weight: 600 !important;
    font-size: 11px !important;
    text-transform: uppercase !important;
    letter-spacing: 0.5px !important;
}

.scb-featured-card__title {
    font-size: 22px !important;
    font-weight: 700 !important;
    color: var(--scb-secondary) !important;
    line-height: 1.3 !important;
    margin: 0 0 12px 0 !important;
    padding: 0 !important;
}

.scb-featured-card__title a:hover {
    color: rgba(var(--scb-secondary-rgb), 0.8) !important;
}

.scb-featured-card__excerpt {
    font-size: 14px !important;
    color: rgba(0, 0, 0, 0.6) !important;
    line-height: 1.6 !important;
    margin: 0 0 auto 0 !important;
    padding: 0 !important;
}

.scb-featured-card__footer {
    display: flex !important;
    align-items: center !important;
    gap: 12px !important;
    margin-top: 20px !important;
    padding-top: 16px !important;
    border-top: 1px solid rgba(0, 0, 0, 0.1) !important;
}

.scb-featured-card__author-avatar {
    width: 36px !important;
    height: 36px !important;
    border-radius: 50% !important;
    background: var(--scb-secondary) !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    color: #fff !important;
    font-size: 14px !important;
    font-weight: 600 !important;
}

.scb-featured-card__author-info {
    flex: 1 !important;
}

.scb-featured-card__author-name {
    font-weight: 600 !important;
    font-size: 14px !important;
    color: var(--scb-secondary) !important;
    display: block !important;
}

.scb-featured-card__date {
    font-size: 13px !important;
    color: rgba(0, 0, 0, 0.5) !important;
    display: block !important;
}

/* ==========================================================================
   Category Filter Tabs
   ========================================================================== */

.scb-categories {
    padding: 40px 0 !important;
    background: var(--scb-background) !important;
}

.scb-categories__title {
    font-size: 28px !important;
    font-weight: 700 !important;
    color: var(--scb-secondary) !important;
    margin: 0 0 24px 0 !important;
    padding: 0 !important;
}

.scb-categories__list {
    display: flex !important;
    flex-wrap: wrap !important;
    gap: 10px !important;
}

.scb-category-pill {
    display: inline-flex !important;
    align-items: center !important;
    padding: 10px 20px !important;
    background: var(--scb-background) !important;
    border: 1px solid var(--scb-border) !important;
    border-radius: 50px !important;
    font-size: 14px !important;
    font-weight: 500 !important;
    color: var(--scb-text) !important;
    transition: all var(--scb-transition) !important;
    cursor: pointer !important;
}

.scb-category-pill:hover,
.scb-category-pill--active {
    background: var(--scb-secondary) !important;
    border-color: var(--scb-secondary) !important;
    color: #fff !important;
}

.scb-category-pill--active {
    background: var(--scb-primary) !important;
    border-color: var(--scb-primary) !important;
}

/* ==========================================================================
   Post Grid
   ========================================================================== */

.scb-posts {
    padding: 40px 0 80px !important;
    background: var(--scb-background) !important;
}

.scb-posts__grid {
    display: grid !important;
    grid-template-columns: 1fr !important;
    gap: 30px !important;
}

@media (min-width: 640px) {
    .scb-posts__grid {
        grid-template-columns: repeat(2, 1fr) !important;
    }
}

@media (min-width: 1024px) {
    .scb-posts__grid {
        grid-template-columns: repeat(3, 1fr) !important;
    }
}

/* Post Card */
.scb-card {
    background: var(--scb-card-bg) !important;
    border-radius: var(--scb-radius) !important;
    overflow: hidden !important;
    box-shadow: var(--scb-shadow) !important;
    transition: transform var(--scb-transition), box-shadow var(--scb-transition), opacity 0.5s ease-out !important;
    display: flex !important;
    flex-direction: column !important;
    opacity: 1 !important;
    visibility: visible !important;
}

/* Ensure cards are visible - theme override protection */
.sincecode-blog-active .scb-posts__grid .scb-card,
.sincecode-blog-active .scb-related__grid .scb-card,
.sincecode-blog-active .scb-hero-featured__grid .scb-featured-card {
    opacity: 1 !important;
    visibility: visible !important;
    display: flex !important;
}

.scb-card:hover {
    transform: translateY(-6px) !important;
    box-shadow: var(--scb-shadow-lg) !important;
}

.scb-card__image {
    position: relative !important;
    padding-top: 66.67% !important;
    background: var(--scb-primary) !important;
    overflow: hidden !important;
}

.scb-card__image img {
    position: absolute !important;
    top: 0 !important;
    left: 0 !important;
    width: 100% !important;
    height: 100% !important;
    object-fit: cover !important;
    transition: transform var(--scb-transition) !important;
}

.scb-card:hover .scb-card__image img {
    transform: scale(1.05) !important;
}

.scb-card__category {
    position: absolute !important;
    top: 16px !important;
    left: 16px !important;
    display: inline-block !important;
    background: rgba(0, 0, 0, 0.7) !important;
    color: #fff !important;
    padding: 6px 12px !important;
    border-radius: 4px !important;
    font-size: 11px !important;
    font-weight: 600 !important;
    text-transform: uppercase !important;
    letter-spacing: 0.5px !important;
    backdrop-filter: blur(4px) !important;
}

.scb-card__content {
    padding: 24px !important;
    display: flex !important;
    flex-direction: column !important;
    flex-grow: 1 !important;
}

.scb-card__meta {
    display: flex !important;
    align-items: center !important;
    gap: 8px !important;
    margin: 0 0 12px 0 !important;
    padding: 0 !important;
    font-size: 13px !important;
    color: var(--scb-text-light) !important;
}

.scb-card__meta-separator {
    width: 4px !important;
    height: 4px !important;
    border-radius: 50% !important;
    background: var(--scb-text-light) !important;
    opacity: 0.5 !important;
}

.scb-card__title {
    font-size: 18px !important;
    font-weight: 700 !important;
    color: var(--scb-secondary) !important;
    line-height: 1.4 !important;
    margin: 0 0 12px 0 !important;
    padding: 0 !important;
    display: -webkit-box !important;
    -webkit-line-clamp: 3 !important;
    -webkit-box-orient: vertical !important;
    overflow: hidden !important;
}

.scb-card__title a:hover {
    color: var(--scb-primary) !important;
}

.scb-card__excerpt {
    font-size: 14px !important;
    color: var(--scb-text-light) !important;
    line-height: 1.6 !important;
    margin: 0 !important;
    padding: 0 !important;
    display: -webkit-box !important;
    -webkit-line-clamp: 3 !important;
    -webkit-box-orient: vertical !important;
    overflow: hidden !important;
}

.scb-card__footer {
    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important;
    margin-top: auto !important;
    padding-top: 20px !important;
    border-top: 1px solid var(--scb-border) !important;
}

.scb-card__author {
    display: flex !important;
    align-items: center !important;
    gap: 10px !important;
}

.scb-card__author-avatar {
    width: 32px !important;
    height: 32px !important;
    border-radius: 50% !important;
    background: var(--scb-primary) !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    color: var(--scb-secondary) !important;
    font-size: 12px !important;
    font-weight: 600 !important;
}

.scb-card__author-name {
    font-size: 13px !important;
    font-weight: 600 !important;
    color: var(--scb-text) !important;
}

.scb-card__read-more {
    display: inline-flex !important;
    align-items: center !important;
    gap: 6px !important;
    font-size: 13px !important;
    font-weight: 600 !important;
    color: var(--scb-primary) !important;
    transition: gap var(--scb-transition) !important;
}

.scb-card__read-more:hover {
    gap: 10px !important;
}

.scb-card__read-more svg {
    width: 16px !important;
    height: 16px !important;
}

/* ==========================================================================
   Pagination
   ========================================================================== */

.scb-pagination {
    display: flex !important;
    justify-content: center !important;
    margin-top: 60px !important;
}

.scb-pagination__inner {
    display: flex !important;
    align-items: center !important;
    gap: 8px !important;
}

.scb-pagination__button,
.scb-pagination__number {
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    min-width: 44px !important;
    height: 44px !important;
    padding: 0 12px !important;
    background: var(--scb-card-bg) !important;
    border: 1px solid var(--scb-border) !important;
    border-radius: var(--scb-radius-sm) !important;
    font-size: 14px !important;
    font-weight: 500 !important;
    color: var(--scb-text) !important;
    transition: all var(--scb-transition) !important;
}

.scb-pagination__button:hover,
.scb-pagination__number:hover {
    background: var(--scb-secondary) !important;
    border-color: var(--scb-secondary) !important;
    color: #fff !important;
}

.scb-pagination__number--current {
    background: var(--scb-secondary) !important;
    border-color: var(--scb-secondary) !important;
    color: #fff !important;
}

.scb-pagination__button--disabled {
    opacity: 0.4 !important;
    cursor: not-allowed !important;
    pointer-events: none !important;
}

.scb-pagination__ellipsis {
    padding: 0 8px !important;
    color: var(--scb-text-light) !important;
}

.scb-pagination__numbers {
    display: flex !important;
    align-items: center !important;
    gap: 4px !important;
}

/* ==========================================================================
   Single Post
   ========================================================================== */

.scb-single {
    padding-bottom: 80px !important;
}

/* Single Hero */
.scb-single-hero {
    background: var(--scb-secondary) !important;
    padding: 60px 0 !important;
    position: relative !important;
    overflow: hidden !important;
}

.scb-single-hero::before {
    content: '' !important;
    position: absolute !important;
    top: 0 !important;
    left: 0 !important;
    right: 0 !important;
    bottom: 0 !important;
    background: radial-gradient(ellipse at 30% 0%, rgba(var(--scb-primary-rgb), 0.15) 0%, transparent 50%) !important;
    pointer-events: none !important;
}

.scb-single-hero__inner {
    position: relative !important;
    z-index: 1 !important;
    max-width: 800px !important;
}

.scb-single-hero__category {
    display: inline-block !important;
    background: var(--scb-primary) !important;
    color: var(--scb-secondary) !important;
    padding: 6px 14px !important;
    border-radius: 4px !important;
    font-size: 12px !important;
    font-weight: 700 !important;
    text-transform: uppercase !important;
    letter-spacing: 0.5px !important;
    margin: 0 0 20px 0 !important;
}

.scb-single-hero__title {
    font-size: 32px !important;
    font-weight: 800 !important;
    color: #fff !important;
    line-height: 1.2 !important;
    margin: 0 0 20px 0 !important;
    padding: 0 !important;
}

@media (min-width: 768px) {
    .scb-single-hero__title {
        font-size: 44px !important;
    }
}

.scb-single-hero__meta {
    display: flex !important;
    flex-wrap: wrap !important;
    align-items: center !important;
    gap: 20px !important;
    color: rgba(255, 255, 255, 0.7) !important;
    font-size: 14px !important;
}

.scb-single-hero__author {
    display: flex !important;
    align-items: center !important;
    gap: 12px !important;
}

.scb-single-hero__author-avatar {
    width: 44px !important;
    height: 44px !important;
    border-radius: 50% !important;
    background: var(--scb-primary) !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    color: var(--scb-secondary) !important;
    font-size: 16px !important;
    font-weight: 600 !important;
}

.scb-single-hero__author-name {
    font-weight: 600 !important;
    color: #fff !important;
}

.scb-single-hero__meta-item {
    display: flex !important;
    align-items: center !important;
    gap: 6px !important;
}

.scb-single-hero__meta-item svg {
    width: 16px !important;
    height: 16px !important;
    opacity: 0.7 !important;
}

/* Single Content Layout */
.scb-single-content {
    display: grid !important;
    grid-template-columns: 1fr !important;
    gap: 40px !important;
    padding: 50px 0 !important;
}

@media (min-width: 1024px) {
    .scb-single-content {
        grid-template-columns: 1fr 320px !important;
    }
}

/* Main Content */
.scb-single-main {
    max-width: 100% !important;
    overflow-wrap: break-word !important;
}

.scb-single-featured-image {
    margin: 0 0 40px 0 !important;
    border-radius: var(--scb-radius) !important;
    overflow: hidden !important;
    box-shadow: var(--scb-shadow-lg) !important;
}

.scb-single-featured-image img {
    width: 100% !important;
    height: auto !important;
}

/* Article Content Typography */
.scb-article-content {
    font-size: 17px !important;
    line-height: 1.8 !important;
    color: var(--scb-text) !important;
}

.scb-article-content > * {
    margin-bottom: 24px !important;
}

.scb-article-content h2 {
    font-size: 28px !important;
    font-weight: 700 !important;
    color: var(--scb-secondary) !important;
    margin: 48px 0 20px 0 !important;
    padding: 0 !important;
    line-height: 1.3 !important;
}

.scb-article-content h3 {
    font-size: 22px !important;
    font-weight: 700 !important;
    color: var(--scb-secondary) !important;
    margin: 40px 0 16px 0 !important;
    padding: 0 !important;
    line-height: 1.3 !important;
}

.scb-article-content h4 {
    font-size: 18px !important;
    font-weight: 700 !important;
    color: var(--scb-secondary) !important;
    margin: 32px 0 12px 0 !important;
    padding: 0 !important;
}

.scb-article-content p {
    margin: 0 0 24px 0 !important;
    padding: 0 !important;
}

.scb-article-content a {
    color: var(--scb-primary) !important;
    text-decoration: underline !important;
    text-underline-offset: 3px !important;
}

.scb-article-content a:hover {
    color: var(--scb-secondary) !important;
}

.scb-article-content ul,
.scb-article-content ol {
    margin: 0 0 24px 24px !important;
    padding: 0 !important;
}

.scb-article-content ul {
    list-style: disc !important;
}

.scb-article-content ol {
    list-style: decimal !important;
}

.scb-article-content li {
    margin: 0 0 8px 0 !important;
    padding: 0 0 0 8px !important;
}

.scb-article-content blockquote {
    border-left: 4px solid var(--scb-primary) !important;
    padding: 20px 24px !important;
    margin: 32px 0 !important;
    background: rgba(var(--scb-primary-rgb), 0.05) !important;
    border-radius: 0 var(--scb-radius-sm) var(--scb-radius-sm) 0 !important;
    font-style: italic !important;
    color: var(--scb-text-light) !important;
}

.scb-article-content blockquote p:last-child {
    margin-bottom: 0 !important;
}

.scb-article-content pre {
    background: var(--scb-secondary) !important;
    color: #fff !important;
    padding: 24px !important;
    border-radius: var(--scb-radius-sm) !important;
    overflow-x: auto !important;
    font-family: 'Monaco', 'Menlo', 'Ubuntu Mono', monospace !important;
    font-size: 14px !important;
    line-height: 1.6 !important;
}

.scb-article-content code {
    background: rgba(var(--scb-secondary-rgb), 0.08) !important;
    padding: 2px 6px !important;
    border-radius: 4px !important;
    font-family: 'Monaco', 'Menlo', 'Ubuntu Mono', monospace !important;
    font-size: 0.9em !important;
}

.scb-article-content pre code {
    background: none !important;
    padding: 0 !important;
}

.scb-article-content img {
    border-radius: var(--scb-radius-sm) !important;
    margin: 32px 0 !important;
}

.scb-article-content figure {
    margin: 32px 0 !important;
}

.scb-article-content figcaption {
    text-align: center !important;
    font-size: 14px !important;
    color: var(--scb-text-light) !important;
    margin-top: 12px !important;
}

.scb-article-content table {
    width: 100% !important;
    border-collapse: collapse !important;
    margin: 32px 0 !important;
}

.scb-article-content th,
.scb-article-content td {
    padding: 12px 16px !important;
    border: 1px solid var(--scb-border) !important;
    text-align: left !important;
}

.scb-article-content th {
    background: var(--scb-secondary) !important;
    color: #fff !important;
    font-weight: 600 !important;
}

/* Sidebar */
.scb-single-sidebar {
    position: relative !important;
}

@media (min-width: 1024px) {
    .scb-single-sidebar {
        position: sticky !important;
        top: 100px !important;
        height: fit-content !important;
    }
}

/* TOC */
.scb-toc {
    background: var(--scb-card-bg) !important;
    border: 1px solid var(--scb-border) !important;
    border-radius: var(--scb-radius) !important;
    padding: 24px !important;
    margin: 0 0 24px 0 !important;
}

.scb-toc__header {
    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important;
    margin: 0 0 16px 0 !important;
    padding: 0 !important;
}

.scb-toc__title {
    font-size: 16px !important;
    font-weight: 700 !important;
    color: var(--scb-secondary) !important;
    margin: 0 !important;
    padding: 0 !important;
}

.scb-toc__toggle {
    background: none !important;
    border: none !important;
    padding: 8px !important;
    cursor: pointer !important;
    color: var(--scb-text-light) !important;
    transition: transform var(--scb-transition) !important;
}

.scb-toc--collapsed .scb-toc__toggle {
    transform: rotate(-90deg) !important;
}

.scb-toc--collapsed .scb-toc__list {
    display: none !important;
}

.scb-toc__list {
    counter-reset: toc !important;
    margin: 0 !important;
    padding: 0 !important;
}

.scb-toc__item {
    margin: 0 !important;
    padding: 0 !important;
}

.scb-toc__link {
    display: block !important;
    padding: 8px 0 !important;
    font-size: 14px !important;
    color: var(--scb-text-light) !important;
    border-bottom: 1px solid var(--scb-border) !important;
    transition: color var(--scb-transition), padding-left var(--scb-transition) !important;
}

.scb-toc__link:hover {
    color: var(--scb-primary) !important;
    padding-left: 8px !important;
}

.scb-toc__item:last-child .scb-toc__link {
    border-bottom: none !important;
}

.scb-toc__item--h3 .scb-toc__link {
    padding-left: 16px !important;
}

.scb-toc__item--h4 .scb-toc__link {
    padding-left: 32px !important;
}

/* Sidebar CTA */
.scb-sidebar-cta {
    background: var(--scb-primary) !important;
    border-radius: var(--scb-radius) !important;
    padding: 32px 24px !important;
    text-align: center !important;
}

.scb-sidebar-cta__icon {
    width: 64px !important;
    height: 64px !important;
    background: rgba(0, 0, 0, 0.1) !important;
    border-radius: 50% !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    margin: 0 auto 20px !important;
}

.scb-sidebar-cta__icon svg {
    width: 32px !important;
    height: 32px !important;
    color: var(--scb-secondary) !important;
}

.scb-sidebar-cta__title {
    font-size: 20px !important;
    font-weight: 700 !important;
    color: var(--scb-secondary) !important;
    margin: 0 0 12px 0 !important;
    padding: 0 !important;
}

.scb-sidebar-cta__text {
    font-size: 14px !important;
    color: rgba(0, 0, 0, 0.6) !important;
    margin: 0 0 24px 0 !important;
    padding: 0 !important;
    line-height: 1.6 !important;
}

.scb-sidebar-cta__button {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    width: 100% !important;
    padding: 14px 24px !important;
    background: var(--scb-secondary) !important;
    color: #fff !important;
    border-radius: var(--scb-radius-sm) !important;
    font-size: 14px !important;
    font-weight: 600 !important;
    transition: transform var(--scb-transition), box-shadow var(--scb-transition) !important;
}

.scb-sidebar-cta__button:hover {
    transform: translateY(-2px) !important;
    box-shadow: 0 4px 12px rgba(0, 0, 0, 0.2) !important;
    color: #fff !important;
}

/* Share Buttons */
.scb-share {
    display: flex !important;
    align-items: center !important;
    gap: 16px !important;
    padding: 24px 0 !important;
    border-top: 1px solid var(--scb-border) !important;
    margin-top: 40px !important;
}

.scb-share__label {
    font-size: 14px !important;
    font-weight: 600 !important;
    color: var(--scb-text-light) !important;
}

.scb-share__buttons {
    display: flex !important;
    gap: 10px !important;
}

.scb-share__button {
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    width: 40px !important;
    height: 40px !important;
    border-radius: 50% !important;
    background: var(--scb-secondary) !important;
    color: #fff !important;
    transition: transform var(--scb-transition), background var(--scb-transition) !important;
}

.scb-share__button:hover {
    transform: translateY(-3px) !important;
}

.scb-share__button--facebook:hover {
    background: #1877f2 !important;
}

.scb-share__button--twitter:hover {
    background: #000 !important;
}

.scb-share__button--linkedin:hover {
    background: #0a66c2 !important;
}

.scb-share__button--email:hover {
    background: var(--scb-primary) !important;
    color: var(--scb-secondary) !important;
}

.scb-share__button svg {
    width: 18px !important;
    height: 18px !important;
}

/* ==========================================================================
   Related Posts
   ========================================================================== */

.scb-related {
    background: #f8f9fa !important;
    padding: 60px 0 !important;
    margin-top: 60px !important;
}

.scb-related__title {
    font-size: 28px !important;
    font-weight: 700 !important;
    color: var(--scb-secondary) !important;
    margin: 0 0 32px 0 !important;
    padding: 0 !important;
    text-align: center !important;
}

.scb-related__grid {
    display: grid !important;
    grid-template-columns: repeat(auto-fill, minmax(280px, 1fr)) !important;
    gap: 24px !important;
}

/* ==========================================================================
   Breadcrumbs
   ========================================================================== */

.scb-breadcrumbs {
    padding: 16px 0 !important;
    background: rgba(255, 255, 255, 0.05) !important;
}

.scb-breadcrumbs__list {
    display: flex !important;
    flex-wrap: wrap !important;
    align-items: center !important;
    gap: 8px !important;
    font-size: 13px !important;
    margin: 0 !important;
    padding: 0 !important;
}

.scb-breadcrumbs__item {
    display: flex !important;
    align-items: center !important;
    gap: 8px !important;
}

.scb-breadcrumbs__link {
    color: rgba(255, 255, 255, 0.7) !important;
}

.scb-breadcrumbs__link:hover {
    color: #fff !important;
}

.scb-breadcrumbs__separator {
    color: rgba(255, 255, 255, 0.4) !important;
}

.scb-breadcrumbs__current {
    color: var(--scb-primary) !important;
    font-weight: 500 !important;
}

/* ==========================================================================
   Archive Header
   ========================================================================== */

.scb-archive-header {
    background: var(--scb-secondary) !important;
    padding: 60px 0 !important;
    text-align: center !important;
}

.scb-archive-header__title {
    font-size: 36px !important;
    font-weight: 700 !important;
    color: #fff !important;
    margin: 0 0 12px 0 !important;
    padding: 0 !important;
}

.scb-archive-header__description {
    font-size: 18px !important;
    color: rgba(255, 255, 255, 0.7) !important;
    max-width: 600px !important;
    margin: 0 auto !important;
    padding: 0 !important;
}

/* ==========================================================================
   Author Box
   ========================================================================== */

.scb-author-box {
    display: flex !important;
    gap: 24px !important;
    padding: 32px !important;
    background: var(--scb-card-bg) !important;
    border: 1px solid var(--scb-border) !important;
    border-radius: var(--scb-radius) !important;
    margin-top: 40px !important;
}

.scb-author-box__avatar {
    flex-shrink: 0 !important;
}

.scb-author-box__avatar img {
    width: 80px !important;
    height: 80px !important;
    border-radius: 50% !important;
}

.scb-author-box__info h4 {
    font-size: 18px !important;
    font-weight: 700 !important;
    color: var(--scb-secondary) !important;
    margin: 0 0 8px 0 !important;
    padding: 0 !important;
}

.scb-author-box__bio {
    font-size: 14px !important;
    color: var(--scb-text-light) !important;
    line-height: 1.6 !important;
    margin: 0 !important;
    padding: 0 !important;
}

.scb-author-box__link {
    display: inline-flex !important;
    align-items: center !important;
    gap: 6px !important;
    margin-top: 12px !important;
    font-size: 14px !important;
    font-weight: 600 !important;
    color: var(--scb-primary) !important;
}

/* ==========================================================================
   Loading States
   ========================================================================== */

.scb-loading {
    display: flex !important;
    justify-content: center !important;
    padding: 60px 0 !important;
}

.scb-spinner {
    width: 40px !important;
    height: 40px !important;
    border: 3px solid var(--scb-border) !important;
    border-top-color: var(--scb-primary) !important;
    border-radius: 50% !important;
    animation: scb-spin 0.8s linear infinite !important;
}

@keyframes scb-spin {
    to {
        transform: rotate(360deg);
    }
}

/* Skeleton Loading */
.scb-skeleton {
    background: linear-gradient(90deg, var(--scb-border) 25%, #f0f0f0 50%, var(--scb-border) 75%) !important;
    background-size: 200% 100% !important;
    animation: scb-shimmer 1.5s infinite !important;
    border-radius: var(--scb-radius-sm) !important;
}

@keyframes scb-shimmer {
    0% {
        background-position: 200% 0;
    }
    100% {
        background-position: -200% 0;
    }
}

/* ==========================================================================
   Animations
   ========================================================================== */

.scb-fade-in {
    animation: scb-fadeIn 0.5s ease-out forwards !important;
    opacity: 1 !important;
}

/* Only hide cards if JS has added the animation class */
.scb-card.scb-animating,
.scb-featured-card.scb-animating {
    opacity: 0 !important;
}

@keyframes scb-fadeIn {
    from {
        opacity: 0;
        transform: translateY(20px);
    }
    to {
        opacity: 1;
        transform: translateY(0);
    }
}

.scb-stagger-1 { animation-delay: 0.1s !important; }
.scb-stagger-2 { animation-delay: 0.2s !important; }
.scb-stagger-3 { animation-delay: 0.3s !important; }
.scb-stagger-4 { animation-delay: 0.4s !important; }
.scb-stagger-5 { animation-delay: 0.5s !important; }

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

@media print {
    .scb-hero,
    .scb-single-sidebar,
    .scb-share,
    .scb-related,
    .scb-pagination {
        display: none !important;
    }
    
    .scb-article-content {
        font-size: 12pt !important;
    }
}
