/*
 * Desktop Override CSS
 * Tujuan: implementasi layout DESKTOP HOMEPAGE baru.
 * Catatan: mobile tidak diubah sedikit pun (aturan dibatasi @media min-width).
 */

/* Global DESKTOP header (all pages) */
@media (min-width: 992px) {

    /* Kompas desktop header does not show the legacy top-bar row */
    #header .top-bar {
        display: none;
    }

    /* Dark Mode Global Overrides for Header & Body Background */
    body.dark-mode {
        background-color: #141414 !important;
    }

    body.dark-mode #header,
    body.dark-mode .logo-banner,
    body.dark-mode .logo-banner .container,
    body.dark-mode .desktop-sticky-sidebars,
    body.dark-mode .sticky-sidebar-ad {
        background-color: #141414 !important;
        background-image: none !important;
        border-color: #141414 !important;
        box-shadow: none !important;
    }

    body.dark-mode #header .ep-kheader__top {
        background: linear-gradient(135deg, #0b4a50 0%, #06393e 100%) !important;
        border-bottom-color: rgba(255, 255, 255, 0.08) !important;
    }

    body.dark-mode #header .ep-kheader__navrow {
        background: linear-gradient(135deg, #06393e 0%, #002e33 100%) !important;
        border-bottom: 0 !important;
    }

    body.dark-mode #header .ep-kheader__brand a {
        background: #1a1a1a;
        border-color: rgba(255, 255, 255, 0.1);
    }

    body.dark-mode #header .ep-kheader__searchform {
        background: rgba(0, 0, 0, 0.4);
        border-color: rgba(255, 255, 255, 0.1);
    }

    body.dark-mode #header .ep-kheader__ticker {
        background-color: #002e33 !important;
        border-left-color: rgba(255, 255, 255, 0.15) !important;
    }

    /* Desktop Kompas-like header: two rows (top + nav row) */
    #header .ep-kheader {
        background: transparent;
        padding: 0;
    }

    #header .ep-kheader__top {
        background: #0b6b46;
        padding: 0;
        border-bottom: 1px solid rgba(255, 255, 255, 0.16);
    }

    #header .ep-kheader__inner {
        display: flex;
        align-items: center;
        gap: 10px;
        padding: 5px 0;
    }

    /* Neutralize nested bootstrap container spacing in logo-banner area */
    #header .ep-kheader__top,
    #header .ep-kheader__navrow {
        margin-left: -15px;
        margin-right: -15px;
        padding-left: 15px;
        padding-right: 15px;
    }

    #header .ep-kheader__brand {
        flex: 0 0 auto;
    }

    #header .ep-kheader__brand a {
        display: inline-flex;
        align-items: center;
        text-decoration: none;
        padding: 4px 10px;
        border-radius: 10px;
        background: #fff;
        border: 1px solid rgba(0, 0, 0, 0.08);
    }

    #header .ep-kheader__brand img {
        height: 34px;
        width: auto;
        display: block;
        filter: drop-shadow(0 1px 1px rgba(0, 0, 0, 0.18));
    }

    #header .ep-kheader__search {
        flex: 1 1 auto;
        display: flex;
        justify-content: center;
        min-width: 240px;
    }

    #header .ep-kheader__searchform {
        width: min(560px, 100%);
        display: flex;
        align-items: center;
        gap: 10px;
        padding: 0 14px;
        border-radius: 12px;
        background: rgba(255, 255, 255, 0.16);
        border: 1px solid rgba(255, 255, 255, 0.22);
        margin: 0;
        position: relative;
        height: 36px;
    }

    #header .ep-kheader__searchform input {
        border: 0 !important;
        background: transparent !important;
        box-shadow: none !important;
        height: 36px;
        padding: 0 6px;
        margin: 0;
        color: rgba(255, 255, 255, 0.95);
    }

    #header .ep-kheader__searchform input::placeholder {
        color: rgba(255, 255, 255, 0.72);
    }

    #header .ep-kheader__searchform input:focus {
        outline: none;
        box-shadow: none;
    }

    #header .ep-kheader__searchform button {
        position: absolute;
        right: 10px;
        top: 50%;
        transform: translateY(-50%);
        height: 28px;
        width: 28px;
        border-radius: 999px;
        border: 1px solid rgba(255, 255, 255, 0.26);
        background: rgba(255, 255, 255, 0.10);
        color: rgba(255, 255, 255, 0.90);
        display: inline-flex;
        align-items: center;
        justify-content: center;
        padding: 0;
    }

    #header .ep-kheader__searchform button:hover {
        background: rgba(255, 255, 255, 0.12);
        border-color: rgba(255, 255, 255, 0.28);
        color: #fff;
    }

    #header .ep-kheader__searchform input {
        padding-right: 42px;
    }

    #header .ep-kheader__actions {
        flex: 0 0 auto;
        display: inline-flex;
        align-items: center;
        gap: 10px;
    }

    #header .ep-kheader__modeform {
        margin: 0;
    }

    #header .ep-kheader__mode {
        appearance: none;
        -webkit-appearance: none;
        display: inline-flex;
        align-items: center;
        justify-content: center;
        height: 36px;
        width: 36px;
        border-radius: 999px;
        background: rgba(255, 255, 255, 0.12);
        border: 1px solid rgba(255, 255, 255, 0.18);
        color: rgba(255, 255, 255, 0.92);
        padding: 0;
        line-height: 1;
    }

    #header .ep-kheader__mode:hover {
        background: rgba(255, 255, 255, 0.16);
        border-color: rgba(255, 255, 255, 0.24);
        color: #fff;
    }

    #header .ep-kheader__profile {
        position: relative;
    }

    #header .ep-kheader__profilebtn {
        display: inline-flex;
        align-items: center;
        justify-content: center;
        height: 36px;
        width: 36px;
        border-radius: 999px;
        background: rgba(255, 255, 255, 0.12);
        border: 1px solid rgba(255, 255, 255, 0.18);
        padding: 0;
        text-decoration: none;
    }

    #header .ep-kheader__profilebtn:hover {
        background: rgba(255, 255, 255, 0.16);
        border-color: rgba(255, 255, 255, 0.24);
    }

    #header .ep-kheader__avatar {
        height: 30px;
        width: 30px;
        border-radius: 999px;
        display: block;
        object-fit: cover;
        background: rgba(255, 255, 255, 0.20);
    }

    #header .ep-kheader__dropdown {
        margin-top: 8px;
        border-radius: 10px;
        overflow: hidden;
        border: 1px solid rgba(0, 0, 0, 0.10);
        min-width: 220px;
        z-index: 1100;
    }

    #header .ep-kheader__dropdown>li>a {
        padding: 10px 12px;
        color: #222;
        font-weight: 600;
        display: flex;
        gap: 10px;
        align-items: center;
    }

    #header .ep-kheader__dropdown>li>a:hover {
        background: rgba(0, 0, 0, 0.04);
        color: #111;
    }

    #header .ep-kheader__dropdown i {
        width: 16px;
        text-align: center;
        opacity: 0.8;
    }

    #header .ep-kheader__subscribe.btn.btn-primary {
        display: inline-flex;
        align-items: center;
        height: 36px;
        padding: 0 14px;
        border-radius: 8px;
        background: #0ca22d;
        border-color: #0ca22d;
        color: #fff;
        font-weight: 800;
        font-size: 13px;
        line-height: 1;
        text-decoration: none;
    }

    #header .ep-kheader__icon {
        display: inline-flex;
        align-items: center;
        justify-content: center;
        height: 36px;
        width: 36px;
        border-radius: 999px;
        background: rgba(255, 255, 255, 0.12);
        border: 1px solid rgba(255, 255, 255, 0.18);
        color: rgba(255, 255, 255, 0.92);
        text-decoration: none;
    }

    #header .ep-kheader__icon:hover {
        background: rgba(255, 255, 255, 0.14);
        color: #fff;
    }

    #header .ep-kheader__navrow {
        background: #0ca22d;
        border-top: 0;
        border-bottom: 1px solid rgba(255, 255, 255, 0.16);
        border-bottom-left-radius: 5px;
        border-bottom-right-radius: 5px;
        overflow: hidden;
    }

    #header .ep-kheader__navrow {
        display: flex;
        align-items: center;
        justify-content: space-between;
        gap: 16px;
        min-height: 36px;
    }

    #header .ep-kheader__nav {
        display: flex;
        align-items: center;
        gap: 18px;
        flex: 1 1 auto;
        min-width: 0;
        overflow-x: auto;
        overflow-y: hidden;
        -webkit-overflow-scrolling: touch;
        scrollbar-width: none;
    }

    #header .ep-kheader__nav::-webkit-scrollbar {
        display: none;
    }

    #header .ep-kheader__navlink {
        color: rgba(255, 255, 255, 0.95);
        font-weight: 700;
        font-size: 13px;
        text-decoration: none;
        padding: 9px 0;
        white-space: nowrap;
    }

    #header .ep-kheader__navlink:hover {
        color: #fff;
        text-decoration: none;
        box-shadow: inset 0 -2px 0 rgba(255, 255, 255, 0.85);
    }

    /* Running text on the right end of the menu bar — match sidebar width (col-sm-4) */
    #header .ep-kheader__ticker {
        flex: 0 0 33.33%;
        max-width: 33.33%;
        overflow: hidden;
        white-space: nowrap;
        padding: 0;
        border-left: 1px solid rgba(255, 255, 255, 0.18);
    }

    #header .ep-kheader__ticker-track {
        display: inline-block;
        color: #fff;
        font-weight: 700;
        font-size: 13px;
        line-height: 36px;
        will-change: transform;
        animation: ep-kheader-ticker 14s linear infinite;
    }

    @keyframes ep-kheader-ticker {
        0% {
            transform: translateX(100%);
        }

        100% {
            transform: translateX(-100%);
        }
    }

    /* "Lainnya" (More) dropdown button in nav row */
    #header .ep-kheader__more-wrap {
        position: relative;
        flex: 0 0 auto;
        display: inline-flex;
        align-items: center;
    }

    #header .ep-kheader__more-btn {
        display: inline-flex;
        align-items: center;
        gap: 4px;
        background: rgba(255, 255, 255, 0.12);
        border: 1px solid rgba(255, 255, 255, 0.18);
        color: rgba(255, 255, 255, 0.95);
        font-weight: 700;
        font-size: 13px;
        padding: 5px 12px;
        border-radius: 6px;
        cursor: pointer;
        white-space: nowrap;
        transition: all 0.2s;
    }

    #header .ep-kheader__more-btn:hover {
        background: rgba(255, 255, 255, 0.20);
        border-color: rgba(255, 255, 255, 0.30);
        color: #fff;
    }

    #header .ep-kheader__more-caret {
        font-size: 11px;
        line-height: 1;
        transition: transform 0.2s;
    }

    #header .ep-kheader__more-wrap.is-open .ep-kheader__more-caret {
        transform: rotate(180deg);
    }

    #header .ep-kheader__more-dropdown {
        display: none;
        position: absolute;
        top: calc(100% + 6px);
        left: 0;
        min-width: 200px;
        background: #1a1a1a;
        border: 1px solid rgba(255, 255, 255, 0.12);
        border-radius: 10px;
        box-shadow: 0 8px 30px rgba(0, 0, 0, 0.5);
        z-index: 1200;
        padding: 6px 0;
        animation: ep-more-dropdown-in 0.2s ease;
    }

    #header .ep-kheader__more-wrap.is-open .ep-kheader__more-dropdown {
        display: block;
    }

    @keyframes ep-more-dropdown-in {
        from {
            opacity: 0;
            transform: translateY(-6px);
        }

        to {
            opacity: 1;
            transform: translateY(0);
        }
    }

    #header .ep-kheader__more-link {
        display: block;
        padding: 9px 18px;
        color: rgba(255, 255, 255, 0.85);
        font-weight: 600;
        font-size: 13px;
        text-decoration: none;
        transition: all 0.15s;
        white-space: nowrap;
    }

    #header .ep-kheader__more-link:hover {
        background: rgba(255, 255, 255, 0.08);
        color: #fff;
        text-decoration: none;
    }

    #header .ep-kheader__burger {
        flex: 0 0 auto;
        display: inline-flex;
        align-items: center;
        justify-content: center;
        height: 40px;
        width: 40px;
        border-radius: 8px;
        background: transparent;
        border: 0;
        color: rgba(255, 255, 255, 0.92);
        text-decoration: none;
    }

    #header .ep-kheader__burger:hover {
        background: rgba(255, 255, 255, 0.10);
        color: #fff;
    }
}

/* Desktop HOMEPAGE only */
@media (min-width: 768px) {

    /* Keep header visible so desktop header is consistent across pages */
    #footer {
        display: none !important;
    }

    /* Homepage desktop layout already has its own topbar; hide it to avoid double headers */
    body.ep-home .ep-desk-topbar {
        display: none !important;
    }

    /* Pastikan layout handphone tidak tampil di desktop */
    body.ep-home .td-mob-home,
    body.ep-home .td-mob-kheader,
    body.ep-home .td-appbanner,
    body.ep-home .td-mob-trending,
    body.ep-home .td-mob-trending-block,
    body.ep-home .td-mob-popular,
    body.ep-home .special-content-inner,
    body.ep-home .special-content-inner-box {
        display: none !important;
        visibility: hidden !important;
        opacity: 0 !important;
        height: 0 !important;
        overflow: hidden !important;
        position: absolute !important;
        left: -9999px !important;
    }

    /* Use modern layout overrides for Home, Category, Post, Search, etc. */
    body.ep-modern-layout #header {
        display: none !important;
    }

    body.ep-modern-layout .ep-desk-topbar {
        position: sticky;
        top: 0;
        z-index: 50;
        background: #fff;
        display: block !important;
    }

    body.dark-mode.ep-modern-layout .ep-desk-topbar {
        background: #121212;
    }

    /* Standard main content area for modern layout */
    body.ep-modern-layout .ep-desk-main {
        background: #0d0d0d;
        min-height: 100vh;
        padding-top: 20px;
        padding-bottom: 60px;
        color: #fff;
        display: block !important;
    }

    /* Modern Card Styles for Search/Tag/Category */
    body.ep-modern-layout .ep-cat-card {
        background: #1a1a1a !important;
        border: 1px solid #282828 !important;
        border-radius: 8px !important;
        overflow: hidden;
        transition: transform 0.2s, box-shadow 0.2s;
    }

    body.ep-modern-layout .ep-cat-card:hover {
        transform: translateY(-4px);
        box-shadow: 0 10px 25px rgba(0, 0, 0, 0.5);
        border-color: #444 !important;
    }

    body.ep-modern-layout .ep-cat-card .card-body {
        padding: 15px !important;
    }

    body.ep-modern-layout .ep-cat-card .card-title {
        color: #fff !important;
        font-size: 16px !important;
        font-weight: 700 !important;
        line-height: 1.4 !important;
        margin-bottom: 10px !important;
    }

    body.ep-modern-layout .ep-cat-card .img-wrap {
        position: relative;
        height: 180px !important;
    }

    /* Category Badge on Card (Ref: Blue label in screenshot) */
    body.ep-modern-layout .ep-cat-card .badge-category {
        position: absolute;
        top: 10px;
        left: 10px;
        background: #3b82f6;
        color: #fff;
        font-size: 10px;
        font-weight: 800;
        padding: 4px 10px;
        border-radius: 4px;
        text-transform: uppercase;
        z-index: 5;
    }

    /* Sidebar and Widgets */
    body.ep-modern-layout .ep-cat-sidebar .widget {
        background: #1a1a1a !important;
        border: 1px solid #282828 !important;
        border-radius: 8px !important;
        padding: 20px !important;
        margin-bottom: 25px !important;
    }

    body.ep-modern-layout .ep-cat-sidebar .widget-title {
        color: #fff !important;
        font-size: 14px !important;
        font-weight: 800 !important;
        text-transform: uppercase;
        border-bottom: 2px solid #3b82f6;
        display: inline-block;
        padding-bottom: 5px;
        margin-bottom: 20px !important;
    }

    /* Breadcrumbs and Page Labels */
    body.ep-modern-layout .ep-cat-breadcrumb {
        color: #888 !important;
        margin-bottom: 10px !important;
    }

    body.ep-modern-layout .ep-cat-breadcrumb a {
        color: #aaa !important;
    }

    body.ep-modern-layout .ep-cat-title {
        color: #fff !important;
        font-size: 32px !important;
        font-weight: 800 !important;
    }

    /* Modern Footer Styles */
    .ep-modern-footer {
        background: #111 !important;
        color: #fff !important;
        padding: 60px 0 30px !important;
        border-top: 1px solid #222 !important;
        font-family: 'Inter', sans-serif !important;
        display: block !important;
    }

    .ep-modern-footer .ep-footer-top {
        margin-bottom: 40px !important;
    }

    .ep-modern-footer .footer-logo .logo-text {
        font-size: 24px;
        font-weight: 800;
        color: #fff;
    }

    .ep-modern-footer .footer-logo .logo-text span {
        color: #00d285;
    }

    .ep-modern-footer .footer-desc {
        color: #888 !important;
        font-size: 14px !important;
        line-height: 1.6 !important;
        margin-top: 20px !important;
    }

    .ep-modern-footer h4 {
        color: #fff !important;
        font-size: 16px !important;
        font-weight: 700 !important;
        margin-bottom: 20px !important;
    }

    .ep-modern-footer ul {
        list-style: none !important;
        padding: 0 !important;
        margin: 0 !important;
    }

    .ep-modern-footer ul li {
        margin-bottom: 12px !important;
    }

    .ep-modern-footer ul li a {
        color: #aaa !important;
        font-size: 14px !important;
        text-decoration: none !important;
        transition: color 0.2s !important;
    }

    .ep-modern-footer ul li a:hover {
        color: #fff !important;
    }

    .ep-modern-footer .social-icons {
        display: flex !important;
        gap: 15px !important;
    }

    .ep-modern-footer .social-icons a {
        width: 40px !important;
        height: 40px !important;
        background: #222 !important;
        border-radius: 50% !important;
        display: flex !important;
        align-items: center !important;
        justify-content: center !important;
        color: #fff !important;
        text-decoration: none !important;
        transition: background 0.2s !important;
    }

    .ep-modern-footer .social-icons a:hover {
        background: #3b82f6 !important;
    }

    .ep-modern-footer .ep-footer-bottom {
        text-align: center !important;
    }

    .ep-modern-footer .ep-footer-bottom .divider {
        height: 1px !important;
        background: #222 !important;
        margin-bottom: 20px !important;
    }

    .ep-modern-footer .ep-footer-bottom p {
        color: #666 !important;
        font-size: 13px !important;
    }

    /* Modern Sidebar Widget Items (Ref: Latest Articles in screenshot) */
    body.ep-modern-layout .ep-cat-widget-item {
        display: flex !important;
        gap: 15px !important;
        padding: 12px 0 !important;
        border-bottom: 1px solid #222 !important;
        text-decoration: none !important;
    }

    body.ep-modern-layout .ep-cat-widget-item:last-child {
        border-bottom: none !important;
    }

    body.ep-modern-layout .ep-cat-widget-item .thumb {
        flex: 0 0 80px !important;
        height: 80px !important;
        border-radius: 6px !important;
        overflow: hidden !important;
    }

    body.ep-modern-layout .ep-cat-widget-item .thumb img {
        width: 100%;
        height: 100%;
        object-fit: cover !important;
    }

    body.ep-modern-layout .ep-cat-widget-item .info {
        flex: 1 !important;
        display: flex !important;
        flex-direction: column !important;
        justify-content: center !important;
    }

    body.ep-modern-layout .ep-cat-widget-item .info .cat-label {
        color: #3b82f6 !important;
        /* Matches screenshot blue */
        font-size: 10px !important;
        font-weight: 800 !important;
        text-transform: uppercase !important;
        margin-bottom: 5px !important;
    }

    body.ep-modern-layout .ep-cat-widget-item .info .title {
        color: #eee !important;
        font-size: 13px !important;
        font-weight: 600 !important;
        line-height: 1.4 !important;
        margin: 0 !important;
    }

    body.ep-modern-layout .ep-cat-widget-item:hover .info .title {
        color: #fff !important;
    }

    /* Hide legacy header/footer if modern layout is active */
    body.ep-modern-layout #header,
    body.ep-modern-layout #footer,
    body.ep-modern-layout .ep-mobile-footer {
        display: none !important;
    }

    @media (max-width: 991px) {
        body.ep-modern-layout .ep-modern-footer {
            padding: 40px 0 20px !important;
        }

        .ep-footer-brand,
        .ep-footer-links-wrap,
        .ep-footer-social-wrap {
            text-align: center !important;
            margin-bottom: 30px !important;
        }

        .social-icons {
            justify-content: center !important;
        }
    }

    /* Ensure legacy wrappers are NOT hidden on modern pages because bursa-nrt uses #wrapper */

    /* Sembunyikan blok homepage klasik/legacy di desktop homepage (sering memunculkan hero image besar) */
    body.ep-home #wrapper {
        display: none !important;
    }

    /* Root container desktop baru */
    body.ep-home .td-desk-home.ep-desk-home {
        display: block;
        background: #fff;
        padding: 0;
    }

    body.dark-mode.ep-home .td-desk-home.ep-desk-home {
        background: #141414;
    }

    /* Topbar */
    body.ep-home .ep-desk-topbar {
        position: sticky;
        top: 0;
        z-index: 50;
        background: #fff;
        border-bottom: 1px solid rgba(0, 0, 0, 0.08);
    }

    body.dark-mode.ep-home .ep-desk-topbar {
        background: #141414;
        border-bottom-color: rgba(255, 255, 255, 0.10);
    }

    body.ep-home .ep-desk-topbar__inner {
        display: flex;
        align-items: center;
        justify-content: space-between;
        gap: 16px;
        height: 58px;
    }

    body.ep-home .ep-desk-logo {
        display: inline-flex;
        align-items: center;
        gap: 10px;
        text-decoration: none;
        color: inherit;
        flex: 0 0 auto;
    }

    body.ep-home .ep-desk-logo img {
        height: 28px;
        width: auto;
        display: block;
    }

    body.ep-home .ep-desk-nav {
        flex: 1 1 auto;
        display: flex;
        gap: 14px;
        align-items: center;
        overflow: hidden;
        white-space: nowrap;
    }

    body.ep-home .ep-desk-nav__link {
        color: #222;
        text-decoration: none;
        font-weight: 700;
        font-size: 13px;
        padding: 8px 10px;
        border-radius: 10px;
    }

    body.ep-home .ep-desk-nav__link:hover {
        background: rgba(0, 0, 0, 0.05);
    }

    body.dark-mode.ep-home .ep-desk-nav__link {
        color: rgba(255, 255, 255, 0.90);
    }

    body.dark-mode.ep-home .ep-desk-nav__link:hover {
        background: rgba(255, 255, 255, 0.06);
    }

    body.ep-home .ep-desk-actions {
        flex: 0 0 auto;
        display: inline-flex;
        align-items: center;
        gap: 10px;
    }

    body.ep-home .ep-desk-action {
        display: inline-flex;
        align-items: center;
        height: 34px;
        padding: 0 12px;
        border-radius: 10px;
        border: 1px solid rgba(var(--ep-green-900-rgb), 0.28);
        background: #fff;
        text-decoration: none;
        color: var(--ep-green-900);
        font-weight: 800;
        font-size: 13px;
    }

    body.ep-home .ep-desk-action:hover {
        background: rgba(var(--ep-green-600-rgb), 0.10);
        border-color: rgba(var(--ep-green-700-rgb), 0.40);
    }

    body.dark-mode.ep-home .ep-desk-action {
        background: #1f1f1f;
        border-color: rgba(255, 255, 255, 0.12);
        color: rgba(255, 255, 255, 0.90);
    }

    body.dark-mode.ep-home .ep-desk-action:hover {
        background: rgba(255, 255, 255, 0.06);
    }

    /* Main spacing */
    body.ep-home .ep-desk-main {
        padding: 0 !important;
        margin: 0 !important;
    }

    body.ep-home .logo-banner {
        padding: 0 !important;
        margin: 0 !important;
    }

    /* Section title */
    body.ep-home .ep-section-head {
        display: flex;
        align-items: baseline;
        justify-content: space-between;
        gap: 10px;
        margin: 0 0 8px;
    }

    body.ep-home .ep-section-title {
        font-size: 18px;
        font-weight: 900;
        font-style: italic;
        margin: 0;
        color: #222;
    }

    /* Title accent (match reference: small vertical bar) */
    body.ep-home .ep-panel__head .ep-section-title,
    body.ep-home .ep-section-head .ep-section-title {
        border-left: 4px solid var(--ep-green-900);
        padding-left: 10px;
    }

    body.dark-mode.ep-home .ep-section-title {
        color: rgba(255, 255, 255, 0.95);
    }

    body.ep-home .ep-section-more {
        font-size: 12px;
        font-weight: 800;
        color: var(--ep-green-700);
        text-decoration: none;
    }

    body.ep-home .ep-section-more:hover {
        text-decoration: underline;
    }

    /* Hero grid */
    body.ep-home .ep-hero {
        margin-bottom: 18px;
    }

    body.ep-home .ep-card {
        border: 1px solid rgba(0, 0, 0, 0.08);
        border-radius: 12px;
        overflow: hidden;
        background: #fff;
    }

    body.dark-mode.ep-home .ep-card {
        background: #1a1a1a;
        border-color: rgba(255, 255, 255, 0.10);
    }

    body.ep-home .ep-card__img {
        display: block;
        position: relative;
        overflow: hidden;
    }

    body.ep-home .ep-card__img img {
        width: 100%;
        height: auto;
        display: block;
    }

    body.ep-home .ep-card__body {
        padding: 12px 14px;
    }

    body.ep-home .ep-card__title {
        margin: 0;
        font-weight: 900;
        line-height: 1.25;
        color: #222;
    }

    body.dark-mode.ep-home .ep-card__title {
        color: rgba(255, 255, 255, 0.95);
    }

    body.ep-home .ep-card__title a {
        color: inherit;
        text-decoration: none;
    }

    body.ep-home .ep-card__title a:hover {
        text-decoration: underline;
    }

    body.ep-home .ep-card--hero .ep-card__title {
        font-size: 24px;
    }

    body.ep-home .ep-card--small .ep-card__title {
        font-size: 14px;
    }

    body.ep-home .ep-card__meta {
        margin-top: 2px;
        font-size: 12px;
        opacity: 0.85;
    }

    /* Panels (shared card container for desktop blocks) */
    body.ep-home .ep-panel {
        border: 1px solid rgba(var(--ep-green-900-rgb), 0.14);
        border-radius: 12px;
        background: #fff;
        overflow: hidden;
        margin-bottom: 12px;
    }

    body.dark-mode.ep-home .ep-panel {
        background: #1a1a1a;
        border-color: rgba(255, 255, 255, 0.10);
    }

    body.ep-home .ep-panel__head {
        padding: 8px 12px;
        background: rgba(var(--ep-green-600-rgb), 0.06);
        border-bottom: 1px solid rgba(var(--ep-green-900-rgb), 0.12);
    }

    body.dark-mode.ep-home .ep-panel__head {
        background: rgba(var(--ep-green-900-rgb), 0.10);
        border-bottom-color: rgba(255, 255, 255, 0.10);
    }

    body.ep-home .ep-panel__foot {
        padding: 10px 12px 12px;
        background: rgba(var(--ep-green-600-rgb), 0.03);
        border-top: 1px solid rgba(var(--ep-green-900-rgb), 0.10);
    }

    body.dark-mode.ep-home .ep-panel__foot {
        background: rgba(0, 0, 0, 0.00);
        border-top-color: rgba(255, 255, 255, 0.10);
    }

    /* Soft grey panels (requested): Topik Populer, Terpopuler, Stock & Market */
    body.ep-home .ep-desk-topgrid__row1 .ep-panel[aria-label="Topik Populer"],
    body.ep-home .ep-desk-topgrid__row2 .ep-panel[aria-label="Terpopuler"],
    body.ep-home .ep-desk-block2 .ep-panel[aria-label="Stock & Market"] {
        background: rgba(0, 0, 0, 0.03);
    }

    /* Stock & Market (slide/longshelf): green background (requested) */
    body.ep-home .ep-desk-block2 .ep-panel.ep-longshelf[aria-label="Stock & Market"] {
        background: var(--ep-green-900);
    }

    body.ep-home .ep-desk-block2 .ep-panel.ep-longshelf[aria-label="Stock & Market"] .ep-panel__head {
        background: var(--ep-green-900);
        border-bottom-color: rgba(255, 255, 255, 0.18);
    }

    body.ep-home .ep-desk-block2 .ep-panel.ep-longshelf[aria-label="Stock & Market"] .ep-longshelf__viewport {
        background: var(--ep-green-900);
    }

    body.ep-home .ep-desk-block2 .ep-panel.ep-longshelf[aria-label="Stock & Market"] .ep-section-title {
        color: #fff;
        border-left-color: rgba(255, 255, 255, 0.75);
    }

    body.ep-home .ep-desk-block2 .ep-panel.ep-longshelf[aria-label="Stock & Market"] .ep-longshelf__btn {
        background: rgba(255, 255, 255, 0.10);
        border-color: rgba(255, 255, 255, 0.25);
        color: #fff;
    }

    body.ep-home .ep-desk-block2 .ep-panel.ep-longshelf[aria-label="Stock & Market"] .ep-longshelf__btn:hover {
        background: rgba(255, 255, 255, 0.16);
        border-color: rgba(255, 255, 255, 0.35);
        color: #fff;
    }

    body.ep-home .ep-desk-topgrid__row1 .ep-panel[aria-label="Topik Populer"] .ep-panel__head,
    body.ep-home .ep-desk-topgrid__row2 .ep-panel[aria-label="Terpopuler"] .ep-panel__head,
    body.ep-home .ep-desk-block2 .ep-panel[aria-label="Stock & Market"] .ep-panel__head {
        background: rgba(0, 0, 0, 0.04);
        border-bottom-color: rgba(0, 0, 0, 0.08);
    }

    body.ep-home .ep-desk-topgrid__row1 .ep-panel[aria-label="Topik Populer"] .ep-panel__foot,
    body.ep-home .ep-desk-topgrid__row2 .ep-panel[aria-label="Terpopuler"] .ep-panel__foot,
    body.ep-home .ep-desk-block2 .ep-panel[aria-label="Stock & Market"] .ep-panel__foot {
        background: rgba(0, 0, 0, 0.03);
        border-top-color: rgba(0, 0, 0, 0.08);
    }

    body.dark-mode.ep-home .ep-desk-topgrid__row1 .ep-panel[aria-label="Topik Populer"],
    body.dark-mode.ep-home .ep-desk-topgrid__row2 .ep-panel[aria-label="Terpopuler"],
    body.dark-mode.ep-home .ep-desk-block2 .ep-panel[aria-label="Stock & Market"] {
        background: rgba(255, 255, 255, 0.05);
    }

    body.dark-mode.ep-home .ep-desk-topgrid__row1 .ep-panel[aria-label="Topik Populer"] .ep-panel__head,
    body.dark-mode.ep-home .ep-desk-topgrid__row2 .ep-panel[aria-label="Terpopuler"] .ep-panel__head,
    body.dark-mode.ep-home .ep-desk-block2 .ep-panel[aria-label="Stock & Market"] .ep-panel__head {
        background: rgba(255, 255, 255, 0.06);
        border-bottom-color: rgba(255, 255, 255, 0.10);
    }

    body.dark-mode.ep-home .ep-desk-topgrid__row1 .ep-panel[aria-label="Topik Populer"] .ep-panel__foot,
    body.dark-mode.ep-home .ep-desk-topgrid__row2 .ep-panel[aria-label="Terpopuler"] .ep-panel__foot,
    body.dark-mode.ep-home .ep-desk-block2 .ep-panel[aria-label="Stock & Market"] .ep-panel__foot {
        background: rgba(255, 255, 255, 0.03);
        border-top-color: rgba(255, 255, 255, 0.10);
    }

    /* Top grid */
    body.ep-home .ep-desk-topgrid {
        margin-top: 0 !important;
        padding-top: 0 !important;
        margin-bottom: 14px;
    }

    body.ep-home .ep-desk-topgrid__row1 {
        margin-bottom: 10px;
    }

    /* Block-1 alignment: keep row-1 components flush */
    body.ep-home .ep-desk-topgrid__row1 .ep-picksbar,
    body.ep-home .ep-desk-topgrid__row1 .ep-panel {
        margin-bottom: 0;
    }

    /* Block-1 row-1 sizing: Topik Pilihan = 1/2 Topik Populer (banner fills the other half) */
    body.ep-home {
        /* Desktop theme palette (requested) */
        --ep-green-900: #0b6b46;
        --ep-green-700: #0ca22d;
        --ep-green-600: #24a572;

        --ep-green-900-rgb: 11, 107, 70;
        --ep-green-700-rgb: 12, 162, 45;
        --ep-green-600-rgb: 36, 165, 114;

        --ep-row1-half-h: 80px;
        --ep-row1-full-h: calc(var(--ep-row1-half-h) * 2);

        /* Block-1 list visual consistency */
        --ep-b1-thumb-w: 88px;
        --ep-b1-thumb-h: 66px;
        --ep-b1-title-size: 14px;
        --ep-b1-title-lh: 1.25;
    }

    body.ep-home .ep-row1-leftstack {
        display: flex;
        flex-direction: column;
        height: var(--ep-row1-full-h);
        min-height: var(--ep-row1-full-h);
        overflow: hidden;
    }

    body.ep-home .ep-row1-leftstack .ep-picksbanner,
    body.ep-home .ep-row1-leftstack .ep-picksbar {
        flex: 0 0 auto;
    }

    body.ep-home .ep-row1-leftstack .ep-picksbanner {
        height: var(--ep-row1-half-h);
        min-height: var(--ep-row1-half-h);
        margin-bottom: 0;
        border-radius: 0;
        overflow: hidden;
    }

    body.ep-home .ep-row1-leftstack .ep-picksbanner a {
        display: block;
        width: 100%;
        height: 100%;
    }

    body.ep-home .ep-row1-leftstack .ep-picksbanner img {
        width: 100%;
        height: 100%;
        object-fit: cover;
        display: block;
        border-radius: 0;
    }

    /* Topik Pilihan strip (3 items + arrows) */
    body.ep-home .ep-picksbar {
        display: flex;
        align-items: center;
        gap: 10px;
        border: 1px solid rgba(0, 0, 0, 0.08);
        border-radius: 12px;
        background: #d8d5d5;
        height: var(--ep-row1-half-h);
        padding: 6px 8px;
        margin-bottom: 0;
        overflow: hidden;
    }

    /* Force Topik Populer block to match left stack total height */
    body.ep-home .ep-desk-topgrid__row1 .ep-panel[aria-label="Topik Populer"] {
        height: var(--ep-row1-full-h);
        min-height: var(--ep-row1-full-h);
        display: flex;
        flex-direction: column;
    }

    body.ep-home .ep-desk-topgrid__row1 .ep-panel[aria-label="Topik Populer"] .ep-taglist {
        flex: 1 1 auto;
        overflow: hidden;
        display: flex;
        flex-wrap: wrap;
        align-content: flex-start;
    }

    body.dark-mode.ep-home .ep-picksbar {
        background: #1a1a1a;
        border-color: rgba(255, 255, 255, 0.10);
    }

    body.ep-home .ep-picksbar__label {
        flex: 0 0 auto;
        width: 140px;
        min-height: 64px;
        display: flex;
        flex-direction: column;
        justify-content: center;
        gap: 6px;
        color: #fff;
        background: var(--ep-green-900);
        border-radius: 10px;
        padding: 8px 10px;
        line-height: 1;
    }

    body.ep-home .ep-picksbar__label-title {
        font-weight: 900;
        font-size: 12px;
        line-height: 1;
    }

    body.ep-home .ep-picksbar__label-sub {
        font-weight: 800;
        font-size: 11px;
        line-height: 1.15;
        opacity: 0.92;
    }

    body.ep-home .ep-picksbar__items {
        flex: 1 1 auto;
        display: flex;
        gap: 10px;
        min-width: 0;
        overflow-x: auto;
        overflow-y: hidden;
        scroll-snap-type: x mandatory;
        -webkit-overflow-scrolling: touch;
    }

    body.ep-home .ep-picksbar__items::-webkit-scrollbar {
        display: none;
    }

    body.ep-home .ep-picksbar__items {
        scrollbar-width: none;
        -ms-overflow-style: none;
    }

    body.ep-home .ep-picksbar__item {
        display: flex;
        align-items: center;
        gap: 8px;
        text-decoration: none;
        color: inherit;
        min-width: 0;
        flex: 0 0 320px;
        scroll-snap-align: start;
        border-radius: 12px;
        padding: 4px 6px;
        transition: background 140ms ease;
    }

    body.ep-home .ep-picksbar__item:hover {
        background: rgba(0, 0, 0, 0.04);
    }

    body.dark-mode.ep-home .ep-picksbar__item:hover {
        background: rgba(255, 255, 255, 0.06);
    }

    body.ep-home .ep-picksbar__thumb {
        width: var(--ep-b1-thumb-w);
        height: var(--ep-b1-thumb-h);
        flex: 0 0 auto;
        border-radius: 10px;
        overflow: hidden;
    }

    body.ep-home .ep-picksbar__thumb img {
        width: 100%;
        height: 100%;
        object-fit: cover;
        display: block;
    }

    body.ep-home .ep-picksbar__title {
        font-weight: 900;
        font-size: var(--ep-b1-title-size);
        line-height: var(--ep-b1-title-lh);
        margin-bottom: 4px;
        color: #222;
        overflow: hidden;
        text-overflow: ellipsis;
        display: -webkit-box;
        line-clamp: 2;
        -webkit-line-clamp: 2;
        -webkit-box-orient: vertical;
    }

    body.dark-mode.ep-home .ep-picksbar__title {
        color: rgba(255, 255, 255, 0.92);
    }

    body.ep-home .ep-picksbar__body {
        flex: 1 1 auto;
        min-width: 0;
    }

    body.ep-home .ep-picksbar__meta {
        font-size: 11px;
        font-weight: 700;
        display: flex;
        gap: 8px;
        align-items: center;
        opacity: 0.85;
    }

    body.ep-home .ep-picksbar__category {
        color: var(--ep-green-700);
        text-transform: uppercase;
    }

    body.ep-home .ep-picksbar__time {
        color: #666;
    }

    body.dark-mode.ep-home .ep-picksbar__time {
        color: #aaa;
    }

    body.ep-home .ep-picksbar__ctl {
        flex: 0 0 auto;
        display: inline-flex;
        gap: 6px;
        align-items: center;
    }

    body.ep-home .ep-picksbar__btn {
        appearance: none;
        width: 24px;
        height: 24px;
        border-radius: 999px;
        display: inline-flex;
        align-items: center;
        justify-content: center;
        border: 1px solid rgba(0, 0, 0, 0.10);
        background: #fff;
        color: #222;
        font-weight: 900;
        user-select: none;
        cursor: pointer;
        padding: 0;
        line-height: 1;
        transition: background 140ms ease, border-color 140ms ease;
    }

    body.ep-home .ep-picksbar__btn:hover {
        background: rgba(0, 0, 0, 0.04);
    }

    body.dark-mode.ep-home .ep-picksbar__btn {
        background: #1f1f1f;
        border-color: rgba(255, 255, 255, 0.12);
        color: rgba(255, 255, 255, 0.92);
    }

    body.dark-mode.ep-home .ep-picksbar__btn:hover {
        background: rgba(255, 255, 255, 0.06);
    }

    /* Feature row (2 cards + ad) */
    body.ep-home .ep-desk-featuregrid {
        margin: 10px 0 14px;
    }

    /* Block-2 (stacked columns: feature+list / feature+list / ad+rekomendasi) */
    body.ep-home .ep-desk-block2 {
        margin: 10px 0 14px;
    }

    /* Block-2: Berita Terbaru (long horizontal shelf) */
    body.ep-home .ep-longshelf {
        margin-bottom: 12px;
    }

    body.ep-home .ep-longshelf__head {
        display: flex;
        align-items: center;
        justify-content: space-between;
        gap: 10px;
    }

    body.ep-home .ep-longshelf__nav {
        display: inline-flex;
        align-items: center;
        gap: 10px;
        flex: 0 0 auto;
    }

    body.ep-home .ep-longshelf__btn {
        appearance: none;
        width: 34px;
        height: 34px;
        border-radius: 999px;
        border: 1px solid rgba(0, 0, 0, 0.12);
        background: #fff;
        color: #222;
        font-weight: 900;
        font-size: 18px;
        line-height: 1;
        cursor: pointer;
    }

    body.ep-home .ep-longshelf__btn:hover {
        background: rgba(var(--ep-green-600-rgb), 0.10);
        border-color: rgba(var(--ep-green-700-rgb), 0.40);
        color: var(--ep-green-900);
    }

    body.dark-mode.ep-home .ep-longshelf__btn {
        background: #1f1f1f;
        border-color: rgba(255, 255, 255, 0.12);
        color: rgba(255, 255, 255, 0.92);
    }

    body.dark-mode.ep-home .ep-longshelf__btn:hover {
        background: rgba(255, 255, 255, 0.06);
        border-color: rgba(var(--ep-green-700-rgb), 0.55);
        color: rgba(255, 255, 255, 0.95);
    }

    body.ep-home .ep-longshelf__viewport {
        padding: 12px;
        overflow-x: auto;
        overflow-y: hidden;
        scroll-snap-type: x mandatory;
        -webkit-overflow-scrolling: touch;
        scrollbar-width: none;
        -ms-overflow-style: none;
    }

    body.ep-home .ep-longshelf__viewport::-webkit-scrollbar {
        display: none;
    }

    body.ep-home .ep-longshelf__track {
        display: flex;
        gap: 14px;
        min-width: 0;
        align-items: stretch;
    }

    body.ep-home .ep-longshelf__card {
        flex: 0 0 260px;
        scroll-snap-align: start;
        border: 1px solid rgba(0, 0, 0, 0.08);
        border-radius: 12px;
        background: #fff;
        overflow: hidden;
    }

    body.dark-mode.ep-home .ep-longshelf__card {
        background: #1a1a1a;
        border-color: rgba(255, 255, 255, 0.10);
    }

    body.ep-home .ep-longshelf__img {
        display: block;
        position: relative;
        height: 140px;
        overflow: hidden;
        text-decoration: none;
        color: inherit;
    }

    body.ep-home .ep-longshelf__img .img-container {
        position: absolute;
        top: 0;
        right: 0;
        bottom: 0;
        left: 0;
        z-index: 2;
    }

    body.ep-home .ep-longshelf__img .img-container img {
        width: 100%;
        height: 100%;
        object-fit: cover;
        display: block;
    }

    body.ep-home .ep-longshelf__img .img-bg {
        position: absolute;
        top: 0;
        right: 0;
        bottom: 0;
        left: 0;
        width: 100%;
        height: 100%;
        object-fit: cover;
        display: block;
        z-index: 1;
    }

    body.ep-home .ep-longshelf__body {
        padding: 10px 12px 12px;
    }

    body.ep-home .ep-longshelf__title {
        margin: 0;
        font-size: 15px;
        font-weight: 900;
        line-height: 1.25;
        color: #222;
    }

    body.dark-mode.ep-home .ep-longshelf__title {
        color: rgba(255, 255, 255, 0.95);
    }

    body.ep-home .ep-longshelf__title a {
        color: inherit;
        text-decoration: none;
    }

    body.ep-home .ep-longshelf__title a:hover {
        text-decoration: underline;
    }

    body.ep-home .ep-longshelf__meta {
        margin-top: 2px;
        font-size: 12px;
        opacity: 0.85;
    }

    body.ep-home .ep-desk-block2 .ep-feature {
        margin-bottom: 12px;
    }

    body.ep-home .ep-desk-block2 .ep-feature .img-container {
        height: 210px;
    }

    body.ep-home .ep-desk-block2 .ep-feature .img-container img {
        width: 100%;
        height: 100%;
        object-fit: cover;
        display: block;
    }

    body.ep-home .ep-desk-block2 .ep-block2-ad img {
        width: 100%;
        height: 210px;
        object-fit: cover;
        display: block;
    }

    body.ep-home .ep-feature {
        position: relative;
        border: 1px solid rgba(0, 0, 0, 0.08);
        border-radius: 12px;
        overflow: hidden;
        background: #fff;
        min-height: 210px;
    }

    body.dark-mode.ep-home .ep-feature {
        background: #1a1a1a;
        border-color: rgba(255, 255, 255, 0.10);
    }

    body.ep-home .ep-feature__img {
        display: block;
    }

    body.ep-home .ep-feature__overlay {
        position: absolute;
        left: 0;
        right: 0;
        bottom: 0;
        padding: 12px;
        background: linear-gradient(to top, rgba(0, 0, 0, 0.70), rgba(0, 0, 0, 0.00));
    }

    body.ep-home .ep-feature__title {
        margin: 0;
        font-size: 14px;
        font-weight: 900;
        line-height: 1.2;
        color: #fff;
    }

    body.ep-home .ep-feature__title a {
        color: inherit;
        text-decoration: none;
    }

    body.ep-home .ep-feature__title a:hover {
        text-decoration: underline;
    }

    body.ep-home .ep-feature__meta {
        margin-top: 2px;
        font-size: 12px;
        color: rgba(255, 255, 255, 0.85);
    }

    /* Other Market layout */
    body.ep-home .ep-desk-section {
        margin-top: 12px;
    }

    body.ep-home .ep-om-grid {
        display: grid;
        grid-template-columns: 1fr 1fr;
        gap: 14px;
    }

    body.ep-home .ep-om-hero {
        border: 1px solid rgba(0, 0, 0, 0.08);
        border-radius: 12px;
        overflow: hidden;
        background: #fff;
    }

    body.ep-home .ep-om-hero__img {
        display: block;
        position: relative;
        height: 260px;
        overflow: hidden;
        text-decoration: none;
        color: inherit;
    }

    body.ep-home .ep-om-hero__img .img-container {
        position: absolute;
        top: 0;
        right: 0;
        bottom: 0;
        left: 0;
        z-index: 2;
    }

    body.ep-home .ep-om-hero__img .img-container img {
        width: 100%;
        height: 100%;
        object-fit: cover;
        display: block;
    }

    body.ep-home .ep-om-hero__img .img-bg {
        position: absolute;
        top: 0;
        right: 0;
        bottom: 0;
        left: 0;
        width: 100%;
        height: 100%;
        object-fit: cover;
        display: block;
        z-index: 1;
    }

    body.dark-mode.ep-home .ep-om-hero {
        background: #1a1a1a;
        border-color: rgba(255, 255, 255, 0.10);
    }

    body.ep-home .ep-om-hero__img {
        display: block;
    }

    body.ep-home .ep-om-hero__body {
        padding: 12px;
    }

    body.ep-home .ep-om-hero__title {
        margin: 0;
        font-size: 16px;
        font-weight: 900;
        line-height: 1.25;
        color: #222;
    }

    body.dark-mode.ep-home .ep-om-hero__title {
        color: rgba(255, 255, 255, 0.95);
    }

    body.ep-home .ep-om-hero__title a {
        color: inherit;
        text-decoration: none;
    }

    body.ep-home .ep-om-hero__title a:hover {
        text-decoration: underline;
    }

    body.ep-home .ep-om-hero__meta {
        margin-top: 2px;
        font-size: 12px;
        opacity: 0.85;
    }

    body.ep-home .ep-om-list {
        border: 1px solid rgba(0, 0, 0, 0.08);
        border-radius: 12px;
        overflow: hidden;
        background: #fff;
    }

    body.ep-home .ep-om-list--solo {
        width: 100%;
    }

    body.dark-mode.ep-home .ep-om-list {
        background: #1a1a1a;
        border-color: rgba(255, 255, 255, 0.10);
    }

    body.ep-home .ep-om-list .ep-hitem {
        align-items: center;
        border-bottom: 1px solid rgba(0, 0, 0, 0.08);
    }

    body.ep-home .ep-om-list .ep-hitem__thumb {
        width: var(--ep-b1-thumb-w);
        height: var(--ep-b1-thumb-h);
        flex: 0 0 auto;
        overflow: hidden;
        border-radius: 10px;
    }

    body.ep-home .ep-om-list .ep-hitem__thumb img {
        width: 100%;
        height: 100%;
        object-fit: cover;
        display: block;
    }

    body.dark-mode.ep-home .ep-om-list .ep-hitem {
        border-bottom-color: rgba(255, 255, 255, 0.10);
    }

    /* Green archive panel */
    body.ep-home .ep-archive--green {
        background: var(--ep-green-900);
        border-color: rgba(0, 0, 0, 0.00);
    }

    body.ep-home .ep-archive--green .ep-panel__head {
        background: rgba(0, 0, 0, 0.00);
        border-bottom-color: rgba(255, 255, 255, 0.22);
    }

    body.ep-home .ep-archive--green .ep-section-title {
        color: #fff;
        border-left-color: rgba(255, 255, 255, 0.70);
    }

    body.ep-home .ep-archive--green .ep-archive__item {
        border-bottom-color: rgba(255, 255, 255, 0.18);
    }

    body.ep-home .ep-archive--green .ep-archive__link {
        color: rgba(255, 255, 255, 0.95);
    }

    body.ep-home .ep-archive--green .ep-archive__meta {
        margin-top: 2px;
        font-size: 12px;
        color: rgba(255, 255, 255, 0.72);
    }

    /* Time Out compact feature */
    body.ep-home .ep-feature--compact {
        min-height: 180px;
        margin-bottom: 10px;
    }

    body.ep-home .ep-to-wrap .ep-hitem {
        padding-left: 0;
        padding-right: 0;
    }

    /* Picks */
    body.ep-home .ep-picks {
        margin-bottom: 10px;
    }

    body.ep-home .ep-picks__grid {
        display: grid;
        grid-template-columns: 1fr 1fr;
        gap: 10px;
    }

    body.ep-home .ep-pick {
        border: 1px solid rgba(0, 0, 0, 0.08);
        border-radius: 12px;
        background: #fff;
        overflow: hidden;
    }

    body.dark-mode.ep-home .ep-pick {
        background: #1a1a1a;
        border-color: rgba(255, 255, 255, 0.10);
    }

    body.ep-home .ep-pick__img {
        display: block;
    }

    body.ep-home .ep-pick__title {
        margin: 0;
        padding: 10px 12px;
        font-size: 13px;
        font-weight: 900;
        line-height: 1.25;
        color: #222;
    }

    body.dark-mode.ep-home .ep-pick__title {
        color: rgba(255, 255, 255, 0.95);
    }

    body.ep-home .ep-pick__title a {
        color: inherit;
        text-decoration: none;
    }

    body.ep-home .ep-pick__title a:hover {
        text-decoration: underline;
    }

    /* Hero overlay style */
    body.ep-home .ep-hero-card {
        position: relative;
    }

    /* Desktop hero carousel (auto-rotating): ensure slides overlay, not stack */
    body.ep-home .ep-hero-carousel {
        height: 520px;
        min-height: 520px;
    }

    body.ep-home .ep-hero-carousel__slide {
        position: absolute;
        top: 0;
        right: 0;
        bottom: 0;
        left: 0;
        opacity: 0;
        pointer-events: none;
        transition: opacity 220ms ease;
    }

    body.ep-home .ep-hero-carousel__slide.is-active {
        opacity: 1;
        pointer-events: auto;
    }

    body.ep-home .ep-hero-card__img img {
        width: 100%;
        height: 520px;
        display: block;
        object-fit: cover;
    }

    body.ep-home .ep-hero-card__img .img-container {
        width: 100%;
        height: 520px;
        overflow: hidden;
    }

    body.ep-home .ep-hero-card__img .img-container img {
        width: 100%;
        height: 100%;
        display: block;
        object-fit: cover;
    }

    body.ep-home .ep-hero-card__img {
        display: block;
    }

    body.ep-home .ep-hero-card__overlay {
        position: absolute;
        left: 0;
        right: 0;
        bottom: 0;
        padding: 14px;
        background: linear-gradient(to top, rgba(0, 0, 0, 0.70), rgba(0, 0, 0, 0.00));
    }

    body.ep-home .ep-hero-card__title {
        margin: 0;
        font-size: 24px;
        font-weight: 900;
        line-height: 1.20;
        color: #fff;
    }

    body.ep-home .ep-hero-card__title a {
        color: inherit;
        text-decoration: none;
    }

    body.ep-home .ep-hero-card__title a:hover {
        text-decoration: underline;
    }

    body.ep-home .ep-hero-card__meta {
        margin-top: 2px;
        font-size: 12px;
        color: rgba(255, 255, 255, 0.85);
    }

    /* Desktop: enlarge article titles globally (except the hero carousel title) */
    body.ep-home {
        --ep-b1-title-size: 14px;
        --ep-b1-title-lh: 1.25;
    }

    body.ep-home .ep-hitem__title {
        font-size: 15px;
        line-height: 1.25;
    }

    body.ep-home .ep-feature__title {
        font-size: 16px;
        line-height: 1.2;
    }

    body.ep-home .ep-om-hero__title {
        font-size: 18px;
        line-height: 1.25;
    }

    body.ep-home .ep-feed-item__title {
        font-size: 18px;
        line-height: 1.25;
    }

    /* Block-1 sizing: match hero height with adjacent panels */
    body.ep-home .ep-desk-topgrid__row2 .ep-freshnews,
    body.ep-home .ep-desk-topgrid__row2 .ep-terpopuler {
        height: 520px;
        display: flex;
        flex-direction: column;
    }

    body.ep-home .ep-desk-topgrid__row2 .ep-freshnews .ep-panel__head,
    body.ep-home .ep-desk-topgrid__row2 .ep-freshnews .ep-panel__foot,
    body.ep-home .ep-desk-topgrid__row2 .ep-terpopuler .ep-panel__head,
    body.ep-home .ep-desk-topgrid__row2 .ep-terpopuler .ep-tabs {
        flex: 0 0 auto;
    }

    /* Fresh News */
    body.ep-home .ep-freshnews__list {
        max-height: none;
        overflow: auto;
        flex: 1 1 auto;
    }

    /* Block-2: make Stock & Market + Macro list scroll (like Fresh News) */
    body.ep-home {
        --ep-b2-list-max-h: 320px;
    }

    body.ep-home .ep-desk-block2 .ep-panel[aria-label="Stock & Market"] .ep-freshnews__list,
    body.ep-home .ep-desk-block2 .ep-panel[aria-label="Macro"] .ep-freshnews__list,
    body.ep-home .ep-desk-block2 .ep-panel[aria-label="Rekomendasi"] .ep-freshnews__list,
    body.ep-home .ep-panel[aria-label="Time Out"] .ep-freshnews__list,
    body.ep-home .ep-panel[aria-label="MSMEs"] .ep-freshnews__list {
        height: var(--ep-b2-list-max-h);
        max-height: var(--ep-b2-list-max-h);
        overflow: auto;
        flex: 1 1 auto;
    }

    /* Standardize list-panel structure so all blocks can become a master layout */
    body.ep-home .ep-desk-block2 .ep-panel[aria-label="Stock & Market"]:not(.ep-longshelf),
    body.ep-home .ep-desk-block2 .ep-panel[aria-label="Macro"],
    body.ep-home .ep-desk-block2 .ep-panel[aria-label="Rekomendasi"],
    body.ep-home .ep-desk-section[aria-label="Time Out dan MSMEs"] .ep-panel[aria-label="Time Out"],
    body.ep-home .ep-desk-section[aria-label="Time Out dan MSMEs"] .ep-panel[aria-label="MSMEs"] {
        display: flex;
        flex-direction: column;
    }

    body.ep-home .ep-desk-block2 .ep-panel[aria-label="Stock & Market"]:not(.ep-longshelf) .ep-panel__head,
    body.ep-home .ep-desk-block2 .ep-panel[aria-label="Macro"] .ep-panel__head,
    body.ep-home .ep-desk-block2 .ep-panel[aria-label="Rekomendasi"] .ep-panel__head,
    body.ep-home .ep-desk-section[aria-label="Time Out dan MSMEs"] .ep-panel[aria-label="Time Out"] .ep-panel__head,
    body.ep-home .ep-desk-section[aria-label="Time Out dan MSMEs"] .ep-panel[aria-label="MSMEs"] .ep-panel__head {
        flex: 0 0 auto;
        min-height: 52px;
        display: flex;
        align-items: center;
    }

    body.ep-home .ep-desk-block2 .ep-panel[aria-label="Stock & Market"]:not(.ep-longshelf) .ep-panel__foot,
    body.ep-home .ep-desk-block2 .ep-panel[aria-label="Macro"] .ep-panel__foot,
    body.ep-home .ep-desk-block2 .ep-panel[aria-label="Rekomendasi"] .ep-panel__foot,
    body.ep-home .ep-desk-section[aria-label="Time Out dan MSMEs"] .ep-panel[aria-label="Time Out"] .ep-panel__foot,
    body.ep-home .ep-desk-section[aria-label="Time Out dan MSMEs"] .ep-panel[aria-label="MSMEs"] .ep-panel__foot {
        flex: 0 0 auto;
        min-height: 46px;
        display: flex;
        align-items: center;
    }

    /* Time Out + MSMEs: make them align like Block-2 (same width & height) */
    body.ep-home .ep-desk-section[aria-label="Time Out dan MSMEs"] .col-sm-8>.row {
        display: flex;
        flex-wrap: wrap;
        align-items: stretch;
    }

    body.ep-home .ep-desk-section[aria-label="Time Out dan MSMEs"] .col-sm-8>.row>.col-sm-7,
    body.ep-home .ep-desk-section[aria-label="Time Out dan MSMEs"] .col-sm-8>.row>.col-sm-5 {
        float: none;
        flex: 0 0 50%;
        max-width: 50%;
        display: flex;
        flex-direction: column;
        min-width: 0;
    }

    body.ep-home .ep-desk-section[aria-label="Time Out dan MSMEs"] .col-sm-8>.row>.col-sm-7>.ep-panel,
    body.ep-home .ep-desk-section[aria-label="Time Out dan MSMEs"] .col-sm-8>.row>.col-sm-5>.ep-panel {
        flex: 1 1 auto;
        display: flex;
        flex-direction: column;
    }

    body.ep-home .ep-desk-section[aria-label="Time Out dan MSMEs"] .ep-panel__head,
    body.ep-home .ep-desk-section[aria-label="Time Out dan MSMEs"] .ep-panel__foot {
        flex: 0 0 auto;
    }

    body.ep-home .ep-desk-section[aria-label="Time Out dan MSMEs"] .ep-panel[aria-label="Time Out"] .ep-freshnews__list,
    body.ep-home .ep-desk-section[aria-label="Time Out dan MSMEs"] .ep-panel[aria-label="MSMEs"] .ep-freshnews__list {
        height: var(--ep-b2-list-max-h);
        flex: 1 1 auto;
    }

    body.ep-home .ep-freshnews__item {
        display: flex;
        gap: 10px;
        align-items: center;
        padding: 10px 12px;
        border-bottom: 1px solid rgba(0, 0, 0, 0.08);
    }

    body.ep-home .ep-freshnews__body {
        flex: 1;
        min-width: 0;
    }

    body.dark-mode.ep-home .ep-freshnews__item {
        border-bottom-color: rgba(255, 255, 255, 0.10);
    }

    body.ep-home .ep-freshnews__item:last-child {
        border-bottom: 0;
    }

    body.ep-home .ep-freshnews__title {
        margin: 0;
        font-size: var(--ep-b1-title-size);
        font-weight: 900;
        line-height: var(--ep-b1-title-lh);
        color: #222;
    }

    body.dark-mode.ep-home .ep-freshnews__title {
        color: rgba(255, 255, 255, 0.95);
    }

    body.ep-home .ep-freshnews__title a {
        color: inherit;
        text-decoration: none;
    }

    body.ep-home .ep-freshnews__title a:hover {
        text-decoration: underline;
    }

    body.ep-home .ep-freshnews__meta {
        margin-top: 2px;
        font-size: 12px;
        opacity: 0.85;
    }

    body.ep-home .ep-freshnews__thumb {
        width: var(--ep-b1-thumb-w);
        height: var(--ep-b1-thumb-h);
        flex: 0 0 auto;
        overflow: hidden;
        border-radius: 10px;
    }

    body.ep-home .ep-freshnews__thumb img {
        width: 100%;
        height: 100%;
        object-fit: cover;
        display: block;
    }

    /* Tabs */
    body.ep-home .ep-tabs {
        display: grid;
        grid-template-columns: 1fr 1fr;
        gap: 8px;
        padding: 10px 12px;
        border-bottom: 1px solid rgba(0, 0, 0, 0.08);
    }

    body.dark-mode.ep-home .ep-tabs {
        border-bottom-color: rgba(255, 255, 255, 0.10);
    }

    body.ep-home .ep-tab {
        appearance: none;
        border: 1px solid rgba(0, 0, 0, 0.12);
        background: #fff;
        color: #222;
        border-radius: 10px;
        height: 34px;
        font-weight: 900;
        font-size: 12px;
        cursor: pointer;
    }

    body.ep-home .ep-tab.is-active {
        background: rgba(var(--ep-green-900-rgb), 0.10);
        border-color: rgba(var(--ep-green-900-rgb), 0.40);
        color: var(--ep-green-900);
    }

    body.dark-mode.ep-home .ep-tab {
        background: #1f1f1f;
        border-color: rgba(255, 255, 255, 0.12);
        color: rgba(255, 255, 255, 0.92);
    }

    body.dark-mode.ep-home .ep-tab.is-active {
        background: rgba(var(--ep-green-900-rgb), 0.18);
        border-color: rgba(var(--ep-green-900-rgb), 0.55);
        color: rgba(255, 255, 255, 0.95);
    }

    body.ep-home .ep-tabpanes {
        padding: 10px 12px 12px;
        flex: 1 1 auto;
        overflow: auto;
    }

    body.ep-home .ep-tabpane {
        display: none;
    }

    body.ep-home .ep-tabpane.is-active {
        display: block;
    }

    body.ep-home .ep-mini--row {
        align-items: center;
        padding: 10px;
        margin-bottom: 8px;
    }

    body.ep-home .ep-mini__body {
        flex: 1;
        min-width: 0;
    }

    body.ep-home .ep-mini--row:last-child {
        margin-bottom: 0;
    }

    /* Horizontal list item (title + thumb right) */
    body.ep-home .ep-hitem {
        display: flex;
        gap: 10px;
        align-items: center;
        padding: 10px 12px;
        border-bottom: 1px solid rgba(0, 0, 0, 0.08);
    }

    body.ep-home .ep-hitem__body {
        flex: 1;
        min-width: 0;
    }

    body.dark-mode.ep-home .ep-hitem {
        border-bottom-color: rgba(255, 255, 255, 0.10);
    }

    body.ep-home .ep-hitem:last-child {
        border-bottom: 0;
    }

    body.ep-home .ep-hitem--tight {
        padding: 10px 0;
        border-bottom: 1px solid rgba(0, 0, 0, 0.08);
    }

    body.ep-home .ep-hitem__title {
        margin: 0;
        font-size: 14px;
        font-weight: 900;
        line-height: 1.25;
        color: #222;
    }

    body.dark-mode.ep-home .ep-hitem__title {
        color: rgba(255, 255, 255, 0.95);
    }

    body.ep-home .ep-hitem__title a {
        color: inherit;
        text-decoration: none;
    }

    body.ep-home .ep-hitem__title a:hover {
        text-decoration: underline;
    }

    body.ep-home .ep-hitem__meta {
        margin-top: 2px;
        font-size: 12px;
        opacity: 0.85;
    }

    body.ep-home .ep-hitem__thumb {
        width: 76px;
        flex: 0 0 auto;
        overflow: hidden;
        border-radius: 10px;
    }

    body.ep-home .ep-hitem__thumb img {
        width: 100%;
        height: auto;
        display: block;
    }

    /* Mid grid spacing */
    body.ep-home .ep-desk-midgrid {
        margin-top: 6px;
        margin-bottom: 10px;
    }

    /* Special sections */
    body.ep-home .ep-desk-special {
        margin-top: 10px;
        padding-top: 6px;
    }

    body.ep-home .ep-special-grid {
        display: grid;
        grid-template-columns: 1fr 1fr;
        gap: 14px;
    }

    body.ep-home .ep-special-hero {
        border: 1px solid rgba(0, 0, 0, 0.08);
        border-radius: 12px;
        overflow: hidden;
        background: #fff;
    }

    body.dark-mode.ep-home .ep-special-hero {
        background: #1a1a1a;
        border-color: rgba(255, 255, 255, 0.10);
    }

    body.ep-home .ep-special-hero__img {
        display: block;
    }

    body.ep-home .ep-special-hero__body {
        padding: 12px;
    }

    body.ep-home .ep-special-hero__title {
        margin: 0;
        font-size: 16px;
        font-weight: 900;
        line-height: 1.25;
        color: #222;
    }

    body.dark-mode.ep-home .ep-special-hero__title {
        color: rgba(255, 255, 255, 0.95);
    }

    body.ep-home .ep-special-hero__title a {
        color: inherit;
        text-decoration: none;
    }

    body.ep-home .ep-special-hero__title a:hover {
        text-decoration: underline;
    }

    body.ep-home .ep-special-hero__meta {
        margin-top: 2px;
        font-size: 12px;
        opacity: 0.85;
    }

    body.ep-home .ep-special-list {
        padding-top: 2px;
    }

    /* Archive */
    body.ep-home .ep-archive__list {
        padding: 10px 12px 12px;
    }

    /* Block-3: Real Sector list must scroll (bounded height) */
    body.ep-home {
        --ep-b3-real-sector-max-h: 360px;
    }

    body.ep-home .ep-panel[aria-label="Real Sector"] .ep-archive__list {
        max-height: var(--ep-b3-real-sector-max-h);
        overflow: auto;
    }

    /* Real Sector text sizing: match other list titles */
    body.ep-home .ep-desk-section[aria-label="Other Market"] .ep-panel[aria-label="Real Sector"] .ep-archive__link {
        font-size: 15px;
        line-height: 1.25;
    }

    body.ep-home .ep-archive__item {
        padding: 8px 0;
        border-bottom: 1px solid rgba(0, 0, 0, 0.08);
    }

    body.dark-mode.ep-home .ep-archive__item {
        border-bottom-color: rgba(255, 255, 255, 0.10);
    }

    body.ep-home .ep-archive__item:last-child {
        border-bottom: 0;
    }

    body.ep-home .ep-archive__link {
        display: block;
        color: #222;
        font-weight: 900;
        font-size: 12px;
        text-decoration: none;
        line-height: 1.25;
    }

    body.ep-home .ep-archive__link:hover {
        text-decoration: underline;
    }

    body.dark-mode.ep-home .ep-archive__link {
        color: rgba(255, 255, 255, 0.90);
    }

    /* Hero right list */
    body.ep-home .ep-hero-list {
        display: flex;
        flex-direction: column;
        gap: 10px;
    }

    body.ep-home .ep-mini {
        display: flex;
        gap: 10px;
        align-items: center;
        border: 1px solid rgba(0, 0, 0, 0.08);
        border-radius: 12px;
        padding: 10px;
        background: #fff;
    }

    body.dark-mode.ep-home .ep-mini {
        background: #1a1a1a;
        border-color: rgba(255, 255, 255, 0.10);
    }

    body.ep-home .ep-mini__img {
        width: var(--ep-b1-thumb-w);
        height: var(--ep-b1-thumb-h);
        flex: 0 0 auto;
        overflow: hidden;
        border-radius: 10px;
    }

    body.ep-home .ep-mini__img img {
        width: 100%;
        height: 100%;
        object-fit: cover;
        display: block;
    }

    /* Topik Populer chips: closer to reference sizing */
    body.ep-home .ep-desk-topgrid__row1 .ep-taglist {
        padding: 10px 12px 12px;
    }

    body.ep-home .ep-tag {
        height: 26px;
        padding: 0 10px;
        border-radius: 999px;
        font-size: 11px;
        font-weight: 900;
    }

    body.ep-home .ep-mini__title {
        margin: 0;
        font-size: var(--ep-b1-title-size);
        font-weight: 900;
        line-height: var(--ep-b1-title-lh);
        color: #222;
    }

    body.dark-mode.ep-home .ep-mini__title {
        color: rgba(255, 255, 255, 0.95);
    }

    body.ep-home .ep-mini__title a {
        color: inherit;
        text-decoration: none;
    }

    body.ep-home .ep-mini__title a:hover {
        text-decoration: underline;
    }

    /* Feed */
    body.ep-home .ep-feed {
        margin-top: 8px;
    }

    body.ep-home .ep-feed-item {
        display: flex;
        gap: 12px;
        padding: 14px 0;
        border-bottom: 1px solid rgba(0, 0, 0, 0.08);
    }

    body.dark-mode.ep-home .ep-feed-item {
        border-bottom-color: rgba(255, 255, 255, 0.10);
    }

    body.ep-home .ep-feed-item:last-child {
        border-bottom: 0;
    }

    body.ep-home .ep-feed-item__img {
        width: 160px;
        flex: 0 0 auto;
        overflow: hidden;
        border-radius: 12px;
    }

    body.ep-home .ep-feed-item__img img {
        width: 100%;
        height: auto;
        display: block;
    }

    body.ep-home .ep-feed-item__title {
        margin: 0;
        font-size: 16px;
        font-weight: 900;
        line-height: 1.25;
        color: #222;
    }

    body.dark-mode.ep-home .ep-feed-item__title {
        color: rgba(255, 255, 255, 0.95);
    }

    body.ep-home .ep-feed-item__title a {
        color: inherit;
        text-decoration: none;
    }

    body.ep-home .ep-feed-item__title a:hover {
        text-decoration: underline;
    }

    body.ep-home .ep-feed-item__meta {
        margin-top: 2px;
        font-size: 12px;
        opacity: 0.85;
    }

    /* Sidebar widgets */
    body.ep-home .ep-widget {
        border: 1px solid rgba(0, 0, 0, 0.08);
        border-radius: 12px;
        padding: 12px;
        background: #fff;
        margin-bottom: 12px;
    }

    body.dark-mode.ep-home .ep-widget {
        background: #1a1a1a;
        border-color: rgba(255, 255, 255, 0.10);
    }

    body.ep-home .ep-taglist {
        display: flex;
        flex-wrap: wrap;
        gap: 8px;
    }

    body.ep-home .ep-tag {
        display: inline-flex;
        align-items: center;
        height: 30px;
        padding: 0 12px;
        border-radius: 10px;
        border: 1px solid rgba(0, 0, 0, 0.10);
        background: #fff;
        text-decoration: none;
        color: #222;
        font-weight: 900;
        font-size: 12px;
        white-space: nowrap;
    }

    body.ep-home .ep-tag:hover {
        background: rgba(0, 0, 0, 0.04);
    }

    body.dark-mode.ep-home .ep-tag {
        background: #1f1f1f;
        border-color: rgba(255, 255, 255, 0.12);
        color: rgba(255, 255, 255, 0.90);
    }

    body.dark-mode.ep-home .ep-tag:hover {
        background: rgba(255, 255, 255, 0.06);
    }

    /* Footer */
    .ep-desk-footer {
        border-top: 1px solid rgba(0, 0, 0, 0.08);
        padding: 18px 0;
        margin-top: 16px;
        background: #fff;
    }

    body.dark-mode .ep-desk-footer {
        background: #141414;
        border-top-color: rgba(255, 255, 255, 0.10);
    }

    .ep-desk-footer__inner {
        display: flex;
        align-items: center;
        justify-content: space-between;
        gap: 12px;
        font-size: 12px;
        font-weight: 700;
        color: rgba(0, 0, 0, 0.70);
    }

    body.dark-mode .ep-desk-footer__inner {
        color: rgba(255, 255, 255, 0.65);
    }

    /* Sidebar Ads: Center and Responsive */
    .col-sm-4 .ad-space-wrapper,
    .bn-sidebar-content,
    .sticky-sidebar-ad {
        text-align: center;
        display: flex;
        justify-content: center;
        flex-direction: column;
        align-items: center;
        width: 100%;
    }

    .col-sm-4 .ad-space-wrapper .bn-content,
    .col-sm-4 .ad-space-wrapper .bn-inner {
        width: 100%;
        display: flex;
        justify-content: center;
        align-items: center;
    }

    .col-sm-4 .ad-space-wrapper img,
    .bn-sidebar-content img,
    .sticky-sidebar-ad img {
        max-width: 100%;
        height: auto;
        margin: 0 auto;
        display: block;
    }

    .col-sm-4 .ad-space-wrapper iframe,
    .col-sm-4 .ad-space-wrapper ins,
    .bn-sidebar-content iframe,
    .bn-sidebar-content ins,
    .sticky-sidebar-ad iframe,
    .sticky-sidebar-ad ins {
        max-width: 100%;
        margin: 0 auto;
        display: block;
    }

    /* Standardized Widget Styles */
    .ep-widget {
        background: #fff;
        border: 1px solid #eee;
        border-radius: 8px;
        padding: 20px;
        margin-bottom: 25px;
    }

    .ep-widget-head {
        margin-bottom: 20px;
        border-bottom: 1px solid #eee;
        padding-bottom: 10px;
    }

    .ep-widget-title {
        font-size: 14px;
        font-weight: 800;
        text-transform: uppercase;
        color: #1a1a1a;
        margin: 0;
        border-bottom: 2px solid #3b82f6;
        display: inline-block;
        padding-bottom: 10px;
        margin-bottom: -11px;
        /* Overlap the border-bottom of head */
    }

    .ep-widget-item {
        display: flex;
        gap: 15px;
        padding: 12px 0;
        border-bottom: 1px solid #f0f0f0;
        text-decoration: none;
        align-items: flex-start;
    }

    .ep-widget-item:last-child {
        border-bottom: none;
        padding-bottom: 0;
    }

    .ep-widget-item:first-child {
        padding-top: 0;
    }

    .ep-widget-item .thumb {
        flex: 0 0 70px;
        height: 70px;
        border-radius: 6px;
        overflow: hidden;
        background: #f4f4f4;
    }

    .ep-widget-item .thumb img {
        width: 100%;
        height: 100%;
        object-fit: cover;
    }

    .ep-widget-item .info {
        flex: 1;
        display: flex;
        flex-direction: column;
        justify-content: center;
    }

    .ep-widget-item .cat-label {
        color: #3b82f6;
        font-size: 10px;
        font-weight: 800;
        text-transform: uppercase;
        margin-bottom: 5px;
        display: block;
    }

    .ep-widget-item .title {
        color: #1a1a1a;
        font-size: 14px;
        font-weight: 600;
        line-height: 1.4;
        margin: 0;
        transition: color 0.2s;
    }

    .ep-widget-item:hover .title {
        color: #3b82f6;
    }

    /* Tag List in Widget */
    .ep-taglist {
        display: flex;
        flex-wrap: wrap;
        gap: 8px;
    }

    .ep-tag {
        background: #f7f7f7;
        color: #555;
        font-size: 12px;
        padding: 6px 14px;
        border-radius: 4px;
        text-decoration: none;
        border: 1px solid #eaeaea;
        font-weight: 600;
        transition: all 0.2s;
    }

    .ep-tag:hover {
        background: #eee;
        color: #3b82f6;
        border-color: #ddd;
        text-decoration: none;
    }

    /* Dark Mode Overrides for Widgets */
    body.dark-mode .ep-widget {
        background: #1a1a1a;
        border-color: #333;
    }

    body.dark-mode .ep-widget-head {
        border-bottom-color: #333;
    }

    body.dark-mode .ep-widget-title {
        color: #fff;
    }

    body.dark-mode .ep-widget-item {
        border-bottom-color: #333;
    }

    body.dark-mode .ep-widget-item .title {
        color: #eee;
    }

    body.dark-mode .ep-widget-item:hover .title {
        color: #3b82f6;
    }

    body.dark-mode .ep-tag {
        background: #222;
        color: #aaa;
        border-color: #333;
    }

    body.dark-mode .ep-tag:hover {
        background: #333;
        color: #fff;
        border-color: #444;
    }

    /* Auto-link tags specific styles */
    .auto-link-tag {
        color: #0b6b46;
        text-decoration: underline;
        text-decoration-style: dotted;
        text-underline-offset: 3px;
        font-weight: 500;
        transition: all 0.2s;
    }

    .auto-link-tag:hover {
        color: #0ca22d;
        text-decoration-style: solid;
    }

    body.dark-mode .auto-link-tag {
        color: #00d285;
    }
}