/* ============================================================
   ENP Income Inequality - Complete Stylesheet
   All components must have explicit styling.
   Uses !important where needed to override WP block theme defaults.
   ============================================================ */

/* === HERO SECTION === */
.enp-hero-wrapper {
    position: relative !important;
    overflow: hidden !important;
}

.enp-hero-wrapper > .wp-block-heading,
.enp-hero-wrapper > p,
.enp-hero-wrapper > .wp-block-buttons {
    position: relative;
    z-index: 2;
}

.enp-hero-svg-left {
    position: absolute;
    left: -20px;
    top: 50%;
    transform: translateY(-50%);
    z-index: 1;
    pointer-events: none;
}

.enp-hero-svg-right {
    position: absolute;
    right: -20px;
    top: 50%;
    transform: translateY(-50%);
    z-index: 1;
    pointer-events: none;
}

@media (max-width: 768px) {
    .enp-hero-svg-left,
    .enp-hero-svg-right {
        display: none;
    }
}

/* === HEADER / NAVIGATION === */
.has-contrast-background-color {
    background-color: #1B2A4A !important;
}

.has-contrast-background-color .wp-block-site-title a,
.has-contrast-background-color .wp-block-site-title {
    color: #ffffff !important;
    text-decoration: none !important;
    font-weight: 700 !important;
}

.has-contrast-background-color .wp-block-navigation a,
.has-contrast-background-color .wp-block-navigation-item__content,
.has-contrast-background-color .wp-block-navigation-link a {
    color: #CBD5E1 !important;
    text-decoration: none !important;
    font-weight: 500 !important;
    font-size: 0.85rem !important;
}

.has-contrast-background-color .wp-block-navigation a:hover,
.has-contrast-background-color .wp-block-navigation-item__content:hover {
    color: #5EEAD4 !important;
}

.has-contrast-background-color .wp-block-navigation__responsive-container-open {
    color: #fff !important;
}

/* Mobile menu overlay */
.wp-block-navigation__responsive-container.is-menu-open {
    background: #1B2A4A !important;
}

.wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation-item__content {
    color: #CBD5E1 !important;
    font-size: 1rem !important;
}

.wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation-item__content:hover {
    color: #5EEAD4 !important;
}

.wp-block-navigation__responsive-container-close {
    color: #fff !important;
}

/* === FOOTER === */
.has-accent-4-background-color {
    background-color: #F9FAFB !important;
}

.has-accent-4-background-color h4,
.has-accent-4-background-color .wp-block-heading {
    color: #1B2A4A !important;
    font-size: 1rem !important;
    font-weight: 700 !important;
    margin-bottom: 0.75em !important;
}

.has-accent-4-background-color p {
    color: #6B7280 !important;
    font-size: 0.85rem !important;
    line-height: 1.6 !important;
}

.has-accent-4-background-color ul {
    list-style: none !important;
    padding: 0 !important;
    margin: 0 !important;
}

.has-accent-4-background-color li {
    padding: 0.3em 0 !important;
    margin: 0 !important;
}

.has-accent-4-background-color a {
    color: #0D9488 !important;
    text-decoration: none !important;
    font-size: 0.85rem !important;
}

.has-accent-4-background-color a:hover {
    color: #0F766E !important;
    text-decoration: underline !important;
}

.has-accent-4-background-color .has-text-align-center {
    color: #9CA3AF !important;
    font-size: 0.8rem !important;
}

/* Footer border-top */
.has-accent-4-background-color .wp-block-columns {
    margin-bottom: 1.5em !important;
}

/* === SECTION DECORATIONS & BACKGROUNDS === */

/* Homepage section wrappers */
.enp-section-decorated {
    position: relative;
    padding: 2.5em 2em !important;
    margin: 0 -2em !important;
    overflow: hidden;
    max-width: none !important;
}

.enp-section-decorated .enp-section {
    position: relative;
    z-index: 1;
}

/* Background variants */
.enp-bg-light {
    background: linear-gradient(180deg, #F9FAFB 0%, #FFFFFF 100%) !important;
}

.enp-bg-white {
    background: #FFFFFF !important;
}

.enp-bg-gradient {
    background: linear-gradient(135deg, #F0FDFA 0%, #F9FAFB 50%, #FFF7ED 100%) !important;
}

.enp-bg-navy {
    background: linear-gradient(135deg, #1B2A4A 0%, #1E3A5F 100%) !important;
    color: #FFFFFF !important;
}

.enp-bg-navy * {
    color: inherit;
}

.enp-bg-navy h2,
.enp-bg-navy h3 {
    color: #FFFFFF !important;
}

.enp-bg-navy p {
    color: #94A3B8 !important;
}

.enp-bg-navy a {
    color: #5EEAD4 !important;
    text-decoration: none !important;
}

.enp-bg-navy a:hover {
    color: #99F6E4 !important;
}

/* Decorative SVGs */
.enp-deco-svg {
    position: absolute;
    z-index: 0;
    pointer-events: none;
}

.enp-deco-right {
    right: 1em;
    top: 1em;
}

.enp-deco-left {
    left: 1em;
    bottom: 1em;
}

/* Navy section text overrides */
.enp-bg-navy .enp-section h2 {
    color: #FFFFFF !important;
}

.enp-bg-navy .enp-section > p {
    color: #CBD5E1 !important;
}

.enp-bg-navy .enp-browse-section h2 {
    color: #FFFFFF !important;
}

.enp-bg-navy .enp-browse-section > p {
    color: #CBD5E1 !important;
}

/* Browse cards on navy background — double class for specificity over .enp-browse-card */
.enp-browse-card.enp-browse-navy {
    background: rgba(255,255,255,0.07) !important;
    border: 1px solid rgba(255,255,255,0.18) !important;
    color: #FFFFFF !important;
    backdrop-filter: blur(4px);
    padding: 2em 1.5em !important;
}

.enp-browse-card.enp-browse-navy:hover {
    background: rgba(13,148,136,0.25) !important;
    border-color: #0D9488 !important;
    transform: translateY(-3px);
    box-shadow: 0 8px 24px rgba(0,0,0,0.3) !important;
}

.enp-browse-card.enp-browse-navy strong {
    color: #FFFFFF !important;
    font-size: 1.2rem !important;
}

.enp-browse-card.enp-browse-navy span {
    color: #CBD5E1 !important;
    font-size: 0.9rem !important;
    line-height: 1.5 !important;
}

.enp-browse-icon {
    width: 60px;
    height: 60px;
    background: rgba(13,148,136,0.15) !important;
    border-radius: 14px;
    display: flex !important;
    align-items: center;
    justify-content: center;
    margin-bottom: 1em;
    border: 1px solid rgba(13,148,136,0.2);
}

/* Browse section title on navy */
.enp-browse-section h2 {
    color: #FFFFFF !important;
    font-size: 1.6rem !important;
}

.enp-browse-section > p {
    color: #94A3B8 !important;
    font-size: 1rem !important;
}

/* Country post section decorations */
.enp-post-section {
    position: relative;
    padding: 1.5em 0 !important;
    margin: 0 !important;
    max-width: 100% !important;
}

.enp-section-deco {
    position: absolute;
    right: 0;
    top: 0.5em;
    pointer-events: none;
    z-index: 0;
}

.enp-post-section > h2,
.enp-post-section > h3,
.enp-post-section > p,
.enp-post-section > .enp-table-wrapper,
.enp-post-section > .enp-chart-wrapper,
.enp-post-section > ul {
    position: relative;
    z-index: 1;
}

/* Section-specific accent borders */
.enp-section-metrics {
    border-left: 3px solid #0D9488;
    padding-left: 1.25em !important;
    margin-left: -1.25em !important;
}

.enp-section-trends {
    border-left: 3px solid #D97706;
    padding-left: 1.25em !important;
    margin-left: -1.25em !important;
}

.enp-section-comparison {
    border-left: 3px solid #1B2A4A;
    padding-left: 1.25em !important;
    margin-left: -1.25em !important;
}

/* Separator wave between homepage sections */
.enp-section-decorated + .enp-section-decorated {
    border-top: none;
}

.enp-bg-light + .enp-bg-white,
.enp-bg-white + .enp-bg-gradient,
.enp-bg-gradient + .enp-bg-light {
    margin-top: 0 !important;
}

@media (max-width: 768px) {
    .enp-section-decorated {
        padding: 1.5em 1em !important;
        margin: 0 -1em !important;
    }
    .enp-deco-svg {
        opacity: 0.5;
        width: 80px;
        height: auto;
    }
    .enp-section-deco {
        display: none;
    }
}

/* === BLOCK THEME OVERRIDES === */
.wp-block-post-content .enp-country-header,
.wp-block-post-content .enp-stat-cards,
.wp-block-post-content .enp-table-wrapper,
.wp-block-post-content .enp-chart-wrapper,
.wp-block-post-content .enp-aio-snippet,
.wp-block-post-content .enp-faq-section,
.wp-block-post-content .enp-related-posts,
.wp-block-post-content .enp-data-source,
.wp-block-post-content .enp-hbar-chart,
.wp-block-post-content .enp-two-col,
.wp-block-post-content .enp-hero-stats,
.wp-block-post-content .enp-region-grid,
.wp-block-post-content .enp-browse-grid,
.wp-block-post-content .enp-section,
.entry-content .enp-country-header,
.entry-content .enp-stat-cards,
.entry-content .enp-table-wrapper,
.entry-content .enp-chart-wrapper,
.entry-content .enp-aio-snippet,
.entry-content .enp-faq-section,
.entry-content .enp-related-posts,
.entry-content .enp-data-source,
.entry-content .enp-hbar-chart,
.entry-content .enp-two-col,
.entry-content .enp-hero-stats,
.entry-content .enp-region-grid,
.entry-content .enp-browse-grid,
.entry-content .enp-section {
    max-width: 100% !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
}

/* === DATA TABLES === */
.enp-table-wrapper {
    overflow-x: auto;
    margin: 1.5em 0 !important;
    -webkit-overflow-scrolling: touch;
    max-width: 100% !important;
}

.enp-data-table {
    width: 100%;
    border-collapse: collapse;
    font-size: 0.9rem;
    line-height: 1.5;
    border: 1px solid #E5E7EB;
    border-radius: 8px;
    overflow: hidden;
}

.enp-data-table thead {
    background: #1B2A4A !important;
    color: #fff !important;
}

.enp-data-table th {
    padding: 0.75em 1em;
    text-align: left;
    font-weight: 600;
    white-space: nowrap;
    color: #fff !important;
    border: none !important;
}

.enp-data-table td {
    padding: 0.6em 1em;
    border-bottom: 1px solid #E5E7EB;
    border-left: none !important;
    border-right: none !important;
    color: #1B2A4A;
}

.enp-data-table tbody tr:nth-child(even) {
    background: #F9FAFB;
}

.enp-data-table tbody tr:hover {
    background: #EDF2F7;
}

.enp-data-table a {
    color: #0D9488 !important;
    text-decoration: none;
}

.enp-data-table a:hover {
    text-decoration: underline;
    color: #0F766E !important;
}

/* === AIO SNIPPET === */
.enp-aio-snippet {
    background: #F0FDFA !important;
    border-left: 4px solid #0D9488 !important;
    border-top: none !important;
    border-right: none !important;
    border-bottom: none !important;
    padding: 1.25em 1.5em !important;
    margin: 0 0 2em !important;
    font-size: 1.05rem;
    line-height: 1.7;
    border-radius: 0 8px 8px 0;
    max-width: 100% !important;
}

.enp-aio-snippet p {
    margin: 0 !important;
    color: #1B2A4A;
}

/* === DATA SOURCE FOOTER === */
.enp-data-source {
    margin-top: 2.5em !important;
    padding-top: 1.5em;
    border-top: 2px solid #E5E7EB !important;
    font-size: 0.85rem;
    color: #6B7280;
}

.enp-data-source p {
    margin: 0.25em 0;
}

.enp-data-source a {
    color: #0D9488 !important;
    text-decoration: none;
}

.enp-data-source a:hover {
    text-decoration: underline;
}

/* === FAQ SECTION === */
.enp-faq-section {
    margin: 2em 0 !important;
    max-width: 100% !important;
}

.enp-faq-item {
    margin-bottom: 0;
    padding: 1.25em 0;
    border-bottom: 1px solid #E5E7EB;
}

.enp-faq-item:last-child {
    border-bottom: none;
}

.enp-faq-item h3 {
    color: #1B2A4A !important;
    margin-bottom: 0.4em !important;
    margin-top: 0 !important;
    font-size: 1.05rem !important;
}

.enp-faq-item p {
    color: #374151 !important;
    line-height: 1.7;
    margin: 0 !important;
}

/* === RELATED POSTS === */
.enp-related-posts {
    margin-top: 2em !important;
    padding: 1.5em !important;
    background: #F9FAFB !important;
    border-radius: 10px;
    border: 1px solid #E5E7EB;
    max-width: 100% !important;
}

.enp-related-posts h3 {
    margin-top: 0 !important;
    margin-bottom: 0.75em !important;
    color: #1B2A4A !important;
    font-size: 1.1rem !important;
}

.enp-related-posts ul {
    list-style: none !important;
    padding: 0 !important;
    margin: 0 !important;
}

.enp-related-posts li {
    padding: 0.5em 0;
    border-bottom: 1px solid #E5E7EB;
}

.enp-related-posts li:last-child {
    border-bottom: none;
}

.enp-related-posts a {
    color: #0D9488 !important;
    text-decoration: none;
    font-weight: 500;
}

.enp-related-posts a:hover {
    text-decoration: underline;
}

/* === COUNTRY HEADER === */
.enp-country-header {
    display: flex !important;
    align-items: center;
    gap: 1em;
    margin-bottom: 1.5em !important;
    padding: 1.25em 1.5em !important;
    background: linear-gradient(135deg, #1B2A4A 0%, #1E3A5F 100%) !important;
    border-radius: 12px;
    color: #fff !important;
    max-width: 100% !important;
}

.enp-country-flag {
    flex-shrink: 0;
}

.enp-country-flag img {
    border-radius: 4px;
    box-shadow: 0 2px 4px rgba(0,0,0,0.3);
    display: block;
    width: 48px;
    height: 36px;
    object-fit: cover;
}

.enp-country-meta {
    display: flex;
    gap: 0.5em;
    flex-wrap: wrap;
    align-items: center;
}

.enp-region-badge,
.enp-pop-badge {
    display: inline-block;
    padding: 0.3em 0.8em;
    border-radius: 20px;
    font-size: 0.8rem;
    font-weight: 600;
    line-height: 1.4;
}

.enp-region-badge {
    background: rgba(13,148,136,0.25) !important;
    color: #5EEAD4 !important;
}

.enp-pop-badge {
    background: rgba(217,119,6,0.2) !important;
    color: #FCD34D !important;
}

/* === STAT CARDS === */
.enp-stat-cards {
    display: grid !important;
    grid-template-columns: repeat(auto-fit, minmax(140px, 1fr)) !important;
    gap: 0.75em;
    margin-bottom: 2em !important;
    max-width: 100% !important;
}

.enp-stat-card {
    text-align: center;
    padding: 1.1em 0.75em !important;
    border-radius: 10px;
    border: 1px solid #E5E7EB !important;
    background: #fff !important;
    box-shadow: 0 1px 3px rgba(0,0,0,0.04);
}

.enp-stat-value {
    font-size: 1.5rem !important;
    font-weight: 800 !important;
    line-height: 1.2;
}

.enp-stat-label {
    font-size: 0.7rem !important;
    color: #6B7280 !important;
    margin-top: 0.3em;
    text-transform: uppercase;
    letter-spacing: 0.6px;
    font-weight: 500;
}

.enp-stat-top1 { border-top: 3px solid #DC2626 !important; }
.enp-stat-top1 .enp-stat-value { color: #DC2626 !important; }

.enp-stat-top10 { border-top: 3px solid #D97706 !important; }
.enp-stat-top10 .enp-stat-value { color: #D97706 !important; }

.enp-stat-bottom50 { border-top: 3px solid #0D9488 !important; }
.enp-stat-bottom50 .enp-stat-value { color: #0D9488 !important; }

.enp-stat-gdp { border-top: 3px solid #1B2A4A !important; }
.enp-stat-gdp .enp-stat-value { color: #1B2A4A !important; font-size: 1.15rem !important; }

/* === FLAGS === */
.enp-flag {
    vertical-align: middle;
    margin-right: 0.4em;
    border-radius: 2px;
    display: inline-block;
    width: 24px;
    height: 18px;
    object-fit: cover;
}

.enp-ranking-table .enp-flag {
    width: 20px;
    height: 15px;
}

.enp-flag-emoji {
    font-size: 1.2em;
    margin-right: 0.3em;
    vertical-align: middle;
}

/* === HOMEPAGE: HERO STATS === */
.enp-hero-stats {
    display: grid !important;
    grid-template-columns: repeat(4, 1fr) !important;
    gap: 1em;
    margin: 1.5em 0 2.5em !important;
    max-width: 100% !important;
}

.enp-hero-stat {
    text-align: center;
    padding: 1.5em 1em !important;
    background: #fff !important;
    border: 1px solid #E5E7EB !important;
    border-radius: 12px;
    box-shadow: 0 2px 4px rgba(0,0,0,0.04);
}

.enp-hero-stat-icon {
    margin-bottom: 0.5em;
    display: flex;
    justify-content: center;
}

.enp-hero-stat-icon svg {
    display: block;
}

.enp-hero-stat-value {
    font-size: 2rem !important;
    font-weight: 800 !important;
    color: #1B2A4A !important;
    line-height: 1.2;
}

.enp-hero-stat-label {
    font-size: 0.7rem !important;
    color: #6B7280 !important;
    margin-top: 0.3em;
    text-transform: uppercase;
    letter-spacing: 0.6px;
    font-weight: 500;
}

/* === HOMEPAGE: SECTIONS === */
.enp-section {
    margin: 2.5em 0 !important;
    max-width: 100% !important;
}

.enp-section h2 {
    color: #1B2A4A !important;
    margin-bottom: 0.3em !important;
    font-size: 1.5rem !important;
}

.enp-section > p {
    color: #6B7280;
    margin-top: 0;
}

/* === HOMEPAGE: HORIZONTAL BAR CHART === */
.enp-hbar-chart {
    margin: 1.5em 0 !important;
    max-width: 100% !important;
}

.enp-hbar-row {
    display: flex !important;
    align-items: center;
    gap: 0.75em;
    margin-bottom: 0.4em;
    padding: 0.2em 0;
}

.enp-hbar-label {
    width: 160px;
    flex-shrink: 0;
    font-size: 0.85rem;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
    display: flex;
    align-items: center;
    gap: 0.3em;
}

.enp-hbar-label a {
    color: #1B2A4A !important;
    text-decoration: none;
    font-weight: 500;
}

.enp-hbar-label a:hover {
    color: #0D9488 !important;
}

.enp-hbar-label .enp-flag {
    width: 20px;
    height: 15px;
    flex-shrink: 0;
}

.enp-hbar-track {
    flex: 1;
    height: 24px;
    background: #F3F4F6;
    border-radius: 6px;
    overflow: hidden;
}

.enp-hbar-fill {
    height: 100%;
    background: linear-gradient(90deg, #DC2626 0%, #F59E0B 100%);
    border-radius: 6px;
    min-width: 4px;
}

.enp-hbar-value {
    width: 55px;
    flex-shrink: 0;
    text-align: right;
    font-size: 0.85rem;
    font-weight: 700;
    color: #1B2A4A;
}

/* === HOMEPAGE: TWO COLUMN (Most/Least Unequal) === */
.enp-two-col {
    display: grid !important;
    grid-template-columns: 1fr 1fr !important;
    gap: 2em;
    max-width: 100% !important;
}

.enp-col {
    min-width: 0;
}

.enp-col-title {
    font-size: 1.05rem !important;
    padding-bottom: 0.5em;
    border-bottom: 3px solid;
    margin-bottom: 0.5em !important;
    margin-top: 0 !important;
    font-weight: 700;
}

.enp-col-title-red { border-color: #DC2626 !important; color: #DC2626 !important; }
.enp-col-title-green { border-color: #0D9488 !important; color: #0D9488 !important; }

.enp-mini-table {
    display: flex;
    flex-direction: column;
}

.enp-mini-row {
    display: flex !important;
    align-items: center;
    padding: 0.55em 0.25em;
    border-bottom: 1px solid #F3F4F6;
    font-size: 0.9rem;
}

.enp-mini-row:last-child {
    border-bottom: none;
}

.enp-mini-rank {
    width: 26px;
    flex-shrink: 0;
    color: #9CA3AF;
    font-weight: 700;
    font-size: 0.8rem;
}

.enp-mini-name {
    flex: 1;
    display: flex;
    align-items: center;
    gap: 0.3em;
    min-width: 0;
}

.enp-mini-name .enp-flag {
    width: 20px;
    height: 15px;
    flex-shrink: 0;
}

.enp-mini-name a {
    color: #1B2A4A !important;
    text-decoration: none;
    font-weight: 500;
}

.enp-mini-name a:hover {
    color: #0D9488 !important;
}

.enp-mini-val {
    font-weight: 800;
    flex-shrink: 0;
    font-size: 0.9rem;
}

.enp-val-red { color: #DC2626 !important; }
.enp-val-green { color: #0D9488 !important; }

/* === HOMEPAGE: REGION GRID === */
.enp-region-grid {
    display: grid !important;
    grid-template-columns: repeat(auto-fill, minmax(280px, 1fr)) !important;
    gap: 1em;
    margin-top: 1em !important;
    max-width: 100% !important;
}

.enp-region-card {
    display: flex !important;
    align-items: center;
    gap: 1em;
    padding: 1.25em !important;
    border: 1px solid #E5E7EB !important;
    border-radius: 12px;
    text-decoration: none !important;
    color: inherit !important;
    background: #fff !important;
    transition: border-color 0.2s, box-shadow 0.2s, transform 0.15s;
}

.enp-region-card:hover {
    border-color: #0D9488 !important;
    box-shadow: 0 4px 12px rgba(13,148,136,0.1);
    transform: translateY(-1px);
}

.enp-region-icon {
    flex-shrink: 0;
    width: 36px;
    display: flex;
    align-items: center;
    justify-content: center;
}

.enp-region-info {
    min-width: 0;
}

.enp-region-name {
    font-weight: 700 !important;
    color: #1B2A4A !important;
    font-size: 1rem;
}

.enp-region-stat {
    font-size: 0.85rem;
    color: #374151 !important;
    margin-top: 0.15em;
}

.enp-region-stat strong {
    color: #1B2A4A;
}

.enp-region-count {
    font-size: 0.75rem;
    color: #9CA3AF !important;
    margin-top: 0.1em;
}

/* === HOMEPAGE: LINE CHART === */
.enp-line-chart {
    width: 100%;
    height: auto;
    display: block;
}

/* === HOMEPAGE: BROWSE GRID === */
.enp-browse-grid {
    display: grid !important;
    grid-template-columns: repeat(3, 1fr) !important;
    gap: 1em;
    margin-top: 1em !important;
    max-width: 100% !important;
}

.enp-browse-card {
    display: flex !important;
    flex-direction: column;
    align-items: center;
    text-align: center;
    padding: 2em 1.25em !important;
    border: 1px solid #E5E7EB !important;
    border-radius: 12px;
    text-decoration: none !important;
    color: #1B2A4A !important;
    background: #fff !important;
    transition: border-color 0.2s, transform 0.15s, box-shadow 0.2s;
}

.enp-browse-card:hover {
    border-color: #0D9488 !important;
    transform: translateY(-2px);
    box-shadow: 0 4px 12px rgba(0,0,0,0.06);
}

.enp-browse-card svg {
    margin-bottom: 0.75em;
    display: block;
}

.enp-browse-card strong {
    font-size: 1.1rem;
    display: block;
    margin-bottom: 0.25em;
    color: #1B2A4A !important;
}

.enp-browse-card span {
    font-size: 0.85rem;
    color: #6B7280 !important;
}

/* === BREADCRUMB === */
.enp-breadcrumb {
    display: inline;
    font-size: 0.8rem;
}

.enp-breadcrumb a {
    color: #6B7280 !important;
    text-decoration: none;
}

.enp-breadcrumb a:hover {
    color: #0D9488 !important;
}

.enp-breadcrumb span {
    color: #D1D5DB;
    margin: 0 0.25em;
}

/* === SVG CHART WRAPPER === */
.enp-chart-wrapper {
    position: relative;
    margin: 1.5em 0 !important;
    max-width: 100% !important;
}

.enp-bar-chart {
    width: 100%;
    height: auto;
    display: block;
}

.enp-bar-chart .enp-bar {
    cursor: pointer;
}

.enp-bar-chart .enp-bar:hover {
    opacity: 0.75;
}

.enp-chart-tooltip {
    position: absolute;
    background: #1B2A4A !important;
    color: #fff !important;
    padding: 5px 12px;
    border-radius: 6px;
    font-size: 12px;
    font-weight: 600;
    pointer-events: none;
    white-space: nowrap;
    z-index: 10;
    transform: translateX(-50%);
    box-shadow: 0 2px 6px rgba(0,0,0,0.2);
}

.enp-chart-tooltip::after {
    content: '';
    position: absolute;
    top: 100%;
    left: 50%;
    margin-left: -4px;
    border: 4px solid transparent;
    border-top-color: #1B2A4A;
}

/* === CONTENT H2/H3 STYLING INSIDE POSTS === */
.entry-content h2,
.wp-block-post-content h2 {
    color: #1B2A4A;
    border-bottom: 2px solid #E5E7EB;
    padding-bottom: 0.4em;
    margin-top: 2em;
}

.entry-content h3,
.wp-block-post-content h3 {
    color: #1E3A5F;
    margin-top: 1.5em;
}

/* === LISTS INSIDE POSTS === */
.entry-content ul,
.wp-block-post-content ul {
    padding-left: 1.5em;
}

.entry-content ul li,
.wp-block-post-content ul li {
    margin-bottom: 0.4em;
    line-height: 1.6;
}

.entry-content ul li strong,
.wp-block-post-content ul li strong {
    color: #1B2A4A;
}

/* === RESPONSIVE === */
@media (max-width: 768px) {
    .enp-hero-stats {
        grid-template-columns: repeat(2, 1fr) !important;
    }
    .enp-two-col {
        grid-template-columns: 1fr !important;
    }
    .enp-browse-grid {
        grid-template-columns: 1fr !important;
    }
    .enp-hbar-label {
        width: 100px;
        font-size: 0.75rem;
    }
    .enp-region-grid {
        grid-template-columns: 1fr !important;
    }
}

@media (max-width: 600px) {
    .enp-stat-cards {
        grid-template-columns: repeat(2, 1fr) !important;
    }
    .enp-country-header {
        flex-direction: column;
        text-align: center;
    }
    .enp-country-meta {
        justify-content: center;
    }
    .enp-hero-stats {
        grid-template-columns: 1fr !important;
    }
    .enp-hero-stat-value {
        font-size: 1.5rem !important;
    }
}
