/*
Theme Name: Mark 1 Child
Template: mark1-news
Description: Tema filho — Carros Elétricos Brasil. Contraste WCAG AA, dark/light mode.
Version: 1.6.1
*/

/* ── Shared EVC Tool Variables (dark/light aware) ── */
:root {
    --evc-accent:    var(--news-primary, #00A86B);
    --evc-accent2:   var(--news-primary-hover, #008C56);
    --evc-cyan:      var(--news-accent, #00D4FF);
    --evc-text:      var(--news-text, #F1F5F9);
    --evc-muted:     var(--news-text-soft, #94A3B8);
    --evc-faint:     var(--news-text-muted, #64748B);
    --evc-line:      var(--news-border, #334155);
    --evc-surface:   var(--news-surface, #1E293B);
    --evc-bg:        var(--news-bg, #0F172A);
    --evc-green:     var(--news-green, #00FF88);
}
[data-theme="light"] {
    --evc-accent:    #005B94;
    --evc-accent2:   #00437A;
    --evc-cyan:      #005B94;
    --evc-text:      #0F172A;
    --evc-muted:     #475569;
    --evc-faint:     #64748B;
    --evc-line:      #CBD5E1;
    --evc-surface:   #F1F5F9;
    --evc-bg:        #F8FAFC;
}

/* ── Dropdown Menu ────────────────── */
.main-nav .sub-menu {
    display: none;
    position: absolute;
    top: 100%;
    left: 0;
    background: var(--news-surface);
    border: 1px solid var(--news-border);
    border-radius: 0 0 var(--news-radius) var(--news-radius);
    min-width: 220px;
    padding: 6px 0;
    box-shadow: 0 8px 24px rgba(0,0,0,0.2);
    z-index: 200;
    flex-direction: column !important;
    gap: 0 !important;
}
.main-nav .menu-item {
    position: relative;
}
.main-nav .menu-item-has-children > a::after {
    content: " ▾";
    font-size: 0.6rem;
    vertical-align: middle;
    opacity: 0.5;
}
.main-nav .menu-item-has-children:hover > .sub-menu {
    display: block;
    animation: zeroFadeIn 0.15s ease;
}
.main-nav .sub-menu .menu-item {
    width: 100%;
    white-space: nowrap;
}
.main-nav .sub-menu a {
    display: block;
    padding: 8px 16px;
    border-radius: 0;
    font-size: 0.825rem;
    color: var(--news-text-soft);
    transition: all 0.15s;
}
.main-nav .sub-menu a:hover {
    color: var(--news-primary);
    background: rgba(0,168,107,0.08);
}
.main-nav .sub-menu .menu-item:last-child a {
    border-radius: 0 0 var(--news-radius) var(--news-radius);
}
@keyframes zeroFadeIn {
    from { opacity: 0; transform: translateY(-4px); }
    to   { opacity: 1; transform: translateY(0); }
}

/* Mobile: show sub-menus inline/indented */
@media (max-width: 768px) {
    .main-nav .sub-menu {
        position: static;
        display: none;
        background: rgba(0,0,0,0.05);
        border: none;
        box-shadow: none;
        border-radius: 0;
        padding: 0;
        min-width: 0;
        margin: 0;
    }
    .main-nav .menu-item-has-children.open > .sub-menu {
        display: block;
    }
    .main-nav .sub-menu a {
        padding: 8px 16px 8px 32px;
        font-size: 0.9rem;
    }
    .main-nav .menu-item-has-children > a::after {
        content: " ▾";
        float: right;
    }
    .main-nav .menu-item-has-children > a {
        cursor: pointer;
        justify-content: space-between;
        display: flex;
    }
}

/* ── Mobile Menu Override - full screen ── */
@media (max-width: 768px) {
    .main-nav {
        position: fixed !important;
        top: 0 !important;
        left: auto !important;
        right: 0 !important;
        bottom: 0 !important;
        width: min(320px, 85vw) !important;
        height: 100vh !important;
        display: block !important;
        background: var(--news-surface) !important;
        border-bottom: none !important;
        box-shadow: -4px 0 24px rgba(0,0,0,0.3) !important;
        padding: 20px !important;
        padding-top: 80px !important;
        z-index: 99998 !important;
        overflow-y: auto !important;
        transform: translateX(100%);
        transition: transform 0.3s cubic-bezier(0.4, 0, 0.2, 1) !important;
        -webkit-overflow-scrolling: touch;
    }
    .main-nav.active {
        transform: translateX(0) !important;
    }
    .main-nav ul {
        flex-direction: column !important;
        gap: 2px !important;
    }
    .main-nav a {
        display: block !important;
        padding: 14px 16px !important;
        font-size: 1rem !important;
        border-radius: 8px !important;
    }
    .main-nav a:active {
        background: rgba(0,168,107,0.15) !important;
    }

    .menu-toggle {
        display: flex !important;
        z-index: 99999 !important;
        position: relative !important;
    }
    .menu-toggle.active {
        border-color: var(--news-primary) !important;
    }

    .mobile-nav-backdrop {
        display: none;
        position: fixed;
        top: 0; left: 0; right: 0; bottom: 0;
        background: rgba(0,0,0,0.6);
        z-index: 99997;
        -webkit-backdrop-filter: blur(4px);
        backdrop-filter: blur(4px);
    }
    .mobile-nav-backdrop.active {
        display: block;
    }

    .main-nav .sub-menu {
        position: static !important;
        display: none;
        background: rgba(0,0,0,0.08) !important;
        border: none !important;
        box-shadow: none !important;
        border-radius: 8px !important;
        padding: 4px !important;
        margin: 4px 0 !important;
    }
    .main-nav .menu-item-has-children.open > .sub-menu {
        display: block !important;
    }
    .main-nav .sub-menu a {
        padding: 10px 16px 10px 28px !important;
        font-size: 0.9rem !important;
    }
    .main-nav .menu-item-has-children > a {
        display: flex !important;
        justify-content: space-between !important;
        align-items: center !important;
        cursor: pointer !important;
    }
    .main-nav .menu-item-has-children > a::after {
        content: " ▾" !important;
        font-size: 0.8rem !important;
        transition: transform 0.2s !important;
    }
    .main-nav .menu-item-has-children.open > a::after {
        transform: rotate(180deg) !important;
    }
}

/* ── Extra tool pages ── */
/* Adjust homepage tools-grid for 10 tools */
.tools-grid { grid-template-columns: repeat(auto-fill, minmax(185px, 1fr)) !important; }

/* ── Brand Colors ── */
:root {
    --mark1-red:      #E60012;
    --mark1-blue:     #0033A0;
    --mark1-electric: #00D4FF;
    --mark1-dark:     #0A1628;
    --mark1-green:    #00FF88;
}

/* === LINKS ===
   Dark mode: #00D4FF sobre #0F172A = 8.5:1 passe WCAG AA ✓
   Light mode: #00D4FF sobre #F5F7FA = 2.84:1 FALHA → usa #005B94 = 5.6:1 ✓ */
a { color: var(--mark1-electric); }
a:hover { color: #40E0FF; }
[data-theme="light"] a { color: #005B94; }
[data-theme="light"] a:hover { color: #003D6B; }

/* === HEADINGS ===
   Corrigido: era var(--mark1-dark) = #0A1628 sobre dark bg → invisível!
   Agora usa var(--news-text) que adapta dark/light automaticamente */
h1, h2, h3 { color: var(--news-text); }

/* ── Tool Pages ─────────────────────────────────────────── */
.mark1-calculator {
    max-width: 800px;
    margin: 2rem auto;
    padding: 2rem;
    background: var(--news-surface);
    border-radius: 12px;
    border: 1px solid var(--news-border);
}
.mark1-calculator h2 {
    color: var(--news-text);
    border-bottom: 2px solid var(--mark1-electric);
    padding-bottom: 0.5rem;
}
[data-theme="light"] .mark1-calculator h2 {
    color: var(--mark1-blue); /* #0033A0 sobre branco = 8.6:1 ✓ */
}
.mark1-calc-result {
    background: var(--news-surface);
    color: var(--news-text);
    border: 1px solid var(--mark1-electric);
    padding: 1.5rem;
    border-radius: 8px;
    font-family: monospace;
    font-size: 1.1rem;
    margin-top: 1rem;
}
/* Dark: verde brilhante sobre azul escuro = 12:1 ✓ */
:root:not([data-theme="light"]) .mark1-calc-result {
    background: #0D1E38;
    color: var(--mark1-green);
}

/* === BOTÃO ===
   Corrigido: branco sobre #00D4FF = 1.5:1 CRÍTICO ✗
   Agora: preto sobre #00D4FF = 10.7:1 ✓ */
.mark1-btn {
    background: var(--mark1-electric);
    color: #000;
    border: none;
    padding: 0.75rem 1.5rem;
    border-radius: 6px;
    cursor: pointer;
    font-weight: 700;
    transition: background 0.2s, color 0.2s;
}
.mark1-btn:hover {
    background: var(--mark1-blue);
    color: #fff; /* branco sobre #0033A0 = 8.6:1 ✓ */
}

/* ── Article Typography ──────────────────────────────────── */
.single-post article h2 {
    font-size: 1.6rem;
    margin-top: 2rem;
    border-left: 4px solid var(--mark1-electric);
    padding-left: 1rem;
    color: var(--news-text);
}
.single-post article h3 {
    font-size: 1.25rem;
    margin-top: 1.5rem;
    color: var(--news-text);
}
[data-theme="light"] .single-post article h3 {
    color: var(--mark1-blue); /* 8.6:1 ✓ */
}
.single-post article p {
    line-height: 1.8;
    margin-bottom: 1.25rem;
}
.single-post article ul,
.single-post article ol {
    padding-left: 1.5rem;
    margin-bottom: 1.5rem;
}
.single-post article li {
    margin-bottom: 0.5rem;
    line-height: 1.7;
}
/* strong: era #0A1628 em dark → invisível. Agora usa news-text */
.single-post article strong {
    color: var(--news-text);
    font-weight: 700;
}
.single-post article code {
    background: var(--news-surface);
    border: 1px solid var(--news-border);
    border-radius: 4px;
    padding: 0.15em 0.4em;
    font-size: 0.88em;
    color: var(--mark1-electric);
}
.single-post article blockquote {
    border-left: 4px solid var(--mark1-electric);
    padding: 0.75rem 1.25rem;
    margin: 1.5rem 0;
    background: var(--news-surface);
    border-radius: 0 8px 8px 0;
    font-style: italic;
    color: var(--news-text-soft);
}

/* ── Tables ──────────────────────────────────────────────── */
.single-post article table {
    width: 100%;
    border-collapse: collapse;
    margin: 1.5rem 0;
    font-size: 0.95rem;
    border-radius: 8px;
    overflow: hidden;
}
.single-post article table th {
    background: #0D2040;
    color: #E2E8F0; /* 10:1 ✓ */
    padding: 0.75rem 1rem;
    text-align: left;
    font-weight: 700;
}
[data-theme="light"] .single-post article table th {
    background: var(--mark1-dark);
    color: #fff;
}
.single-post article table td {
    padding: 0.75rem 1rem;
    border-bottom: 1px solid var(--news-border);
    color: var(--news-text);
}
.single-post article table tr:nth-child(even) td {
    background: var(--news-bg);
}

/* === FAQ ===
   Dark: #00D4FF sobre #0F172A = 8.5:1 ✓
   Light: #00D4FF sobre branco = 2.84:1 ✗ → usa #005B94 = 5.6:1 ✓ */
.faq-section h3 {
    cursor: pointer;
    padding: 0.75rem 0;
    border-bottom: 1px dashed var(--news-border);
    color: var(--mark1-electric);
    transition: opacity 0.2s;
}
[data-theme="light"] .faq-section h3 {
    color: #005B94;
}
.faq-section h3:hover { opacity: 0.78; }

/* ── Callout Box ───────────────────────────────────────────── */
.article-highlight {
    background: linear-gradient(135deg, #0D2040, #1A3366);
    color: #F1F5F9; /* 12:1 ✓ */
    padding: 1.5rem 2rem;
    border-radius: 12px;
    border-left: 4px solid var(--mark1-electric);
    margin: 2rem 0;
}
.article-highlight a { color: var(--mark1-green); }
.article-highlight a:hover { color: #66FFB0; }

/* ── Reading Progress Bar ─────────────────────────────────── */
.reading-progress {
    position: fixed;
    top: 0;
    left: 0;
    width: 0%;
    height: 3px;
    background: linear-gradient(90deg, var(--mark1-electric), var(--mark1-green));
    z-index: 9999;
    transition: width 0.1s linear;
}

/* ── Footer ───────────────────────────────────────────────── */
[data-theme="light"] .site-footer .footer-col a {
    color: #4A5568; /* sobre #F5F7FA = 5.7:1 ✓ */
}
/* Tap targets: footer links must be >=24px tall with spacing (a11y target-size) */
.site-footer .footer-col ul li { margin-bottom: 4px; }
.site-footer .footer-col ul li a {
    display: inline-block;
    padding: 6px 0;
    min-height: 24px;
    line-height: 1.5;
}

/* ── Trending bar ─────────────────────────────────────────── */
.trending-track a {
    color: var(--news-text);
    opacity: 0.85;
}
.trending-track a:hover {
    color: var(--mark1-electric);
    opacity: 1;
}

/* ── Skip link ────────────────────────────────────────────── */
.skip-link:focus {
    top: 0;
    outline: 3px solid var(--mark1-electric);
}

/* ── Logo circular ────────────────────────────────────────── */
.site-logo .logo-img {
    border-radius: 50%;
    background: transparent;
}

/* ═══════════════════════════════════════════════════════
   MOTORZERO — Brand Identity
   ═══════════════════════════════════════════════════════ */

/* Logo: "Motor" normal + "Zero" em gradiente cyan-verde */
.logo-zero {
    background: linear-gradient(135deg, #00D4FF 0%, #00FF88 100%);
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
    background-clip: text;
    font-weight: 900;
    letter-spacing: -0.5px;
}

/* Section header para EV Market */
.ev-market-section { margin: 28px 0; }
.ev-market-section .section-title { margin-bottom: 16px; }

/* Article improvements: reading indicator */
.article-read-bar {
    height: 3px;
    background: linear-gradient(90deg, #00A86B, #00D4FF);
    position: fixed;
    top: 0;
    left: 0;
    z-index: 9999;
    transition: width .1s linear;
    width: 0%;
}

/* Better article typography */
.single-post .article-content > p:first-of-type {
    font-size: 1.1rem;
    line-height: 1.85;
    color: var(--news-text);
}

/* Callout/highlight box */
.article-callout {
    border-left: 4px solid var(--mark1-electric);
    background: rgba(0, 212, 255, .05);
    padding: 1rem 1.25rem;
    border-radius: 0 8px 8px 0;
    margin: 1.5rem 0;
    font-size: .95rem;
}
[data-theme="light"] .article-callout {
    background: rgba(0, 91, 148, .06);
}

/* Price table styling */
.price-table { width: 100%; border-collapse: collapse; margin: 1.5rem 0; }
.price-table th {
    background: #0A1628;
    color: #00D4FF;
    padding: .6rem 1rem;
    text-align: left;
    font-size: .8rem;
    text-transform: uppercase;
    letter-spacing: .5px;
}
.price-table td {
    padding: .6rem 1rem;
    border-bottom: 1px solid var(--news-border);
    font-size: .9rem;
}
.price-table tr:nth-child(even) td { background: rgba(0,0,0,.15); }
[data-theme="light"] .price-table tr:nth-child(even) td { background: rgba(0,0,0,.03); }
.price-table .price-cell { font-weight: 700; color: #00D4FF; }

/* Spec badge */
.spec-badge {
    display: inline-flex;
    align-items: center;
    gap: 4px;
    background: var(--news-surface);
    border: 1px solid var(--news-border);
    border-radius: 6px;
    padding: 3px 10px;
    font-size: .75rem;
    font-weight: 600;
    color: var(--news-text-soft);
}

/* ═══════════ Hero Home Melhorado ═══════════ */
/* Hero com aspect-ratio consistente — sem min-height variavel que causa CLS */
.hero-slide {
    aspect-ratio: 12/5;
    position: relative;
    overflow: hidden;
}
@media (max-width: 768px) {
    .hero-slide {
        aspect-ratio: 16/9;
        max-height: none;
    }
}

/* Hero slide overlay mais profundo p/ texto legivel */
.hero-slide::after {
    content: '';
    position: absolute;
    inset: 0;
    background: linear-gradient(180deg, transparent 30%, rgba(0,0,0,0.5) 70%, rgba(0,0,0,0.85) 100%);
    pointer-events: none;
    z-index: 1;
}

/* Garantir que conteudo fique acima do overlay */
.hero-slide-content { z-index: 3; }

/* Texto hero maior */
.hero-slide h2 {
    font-size: 1.6rem;
    text-shadow: 0 2px 8px rgba(0,0,0,0.5);
}

.hero-slide .hero-excerpt {
    font-size: .95rem;
    text-shadow: 0 1px 4px rgba(0,0,0,0.5);
}

/* Dots mais visiveis */
.hero-dots { margin-top: 16px; }
.hero-dot { width: 12px; height: 12px; transition: all .3s; }

/* Sidebar col: posts compactos mais alinhados */
.featured-col .viral-card {
    margin-bottom: 16px;
}
.featured-col .viral-card:last-child {
    margin-bottom: 0;
}

/* ═══════════ Pagination ═══════════ */
.navigation.pagination {
    margin: 40px 0 20px;
    text-align: center;
}
.nav-links {
    display: inline-flex;
    gap: 6px;
    flex-wrap: wrap;
    justify-content: center;
}
.nav-links .page-numbers {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-width: 40px;
    height: 40px;
    padding: 0 10px;
    border: 1px solid var(--news-border);
    border-radius: 8px;
    background: var(--news-surface);
    color: var(--news-text-soft);
    font-size: .85rem;
    font-weight: 600;
    text-decoration: none;
    transition: all .15s;
}
.nav-links .page-numbers.current {
    background: var(--news-primary);
    color: #000;
    border-color: var(--news-primary);
    font-weight: 800;
}
.nav-links .page-numbers:hover:not(.current):not(.dots) {
    border-color: var(--news-primary);
    color: var(--news-primary);
    background: rgba(0,212,255,.05);
}
.nav-links .next,
.nav-links .prev {
    font-size: .8rem;
    gap: 4px;
}

/* ── Post cards sem imagem ── */
.viral-card:not(.has-post-thumbnail) .viral-card-img {
    background: linear-gradient(135deg, var(--news-dark-soft), var(--news-bg));
    min-height: 160px;
    display: flex;
    align-items: center;
    justify-content: center;
}
.viral-card:not(.has-post-thumbnail) .viral-card-img::after {
    content: '⚡ EVblog';
    font-size: 1.2rem;
    font-weight: 800;
    color: var(--news-primary);
    opacity: .3;
}

/* ── Tool page grid responsivo ── */
@media (max-width: 768px) {
    .zero-grid-3 { grid-template-columns: 1fr !important; }
    .zero-grid-2 { grid-template-columns: 1fr !important; }
    .zero-card { padding: 14px !important; }
}

/* ── Hero Carousel — altura via aspect-ratio, sem min-height variavel ── */
.hero-slides {
    position: relative;
    aspect-ratio: 12/5;
}
@media (max-width: 768px) {
    .hero-slides {
        aspect-ratio: 16/9;
    }
}
/* Hero carousel images — fill the slide with aspect-ratio */
.hero-slide .attachment-viral-hero {
    width: 100%;
    height: 100%;
    object-fit: cover;
    position: absolute;
    top: 0;
    left: 0;
}
/* Single post featured image — full cover dentro do frame 12/5 */
.article-featured .attachment-viral-hero {
    position: relative;
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
    display: block;
}
/* ── Capa do artigo: frame 12/5 do tema pai com a imagem PREENCHENDO o quadro ──
   object-fit:cover = "full cover" (preenche ponta a ponta, sem listras).
   O frame 12/5 e o overflow:hidden vêm do tema pai; reforçados aqui para que
   nenhuma regra solta volte a achatar/estourar a capa. */
.single .article-featured {
    position: relative;
    aspect-ratio: 12 / 5;
    overflow: hidden;
}
.single .article-featured img,
.single .article-featured .attachment-viral-hero {
    width: 100%;
    height: 100%;
    max-width: 100%;
    object-fit: cover;
    object-position: center;
    display: block;
}

/* ── Imagens DENTRO do corpo do artigo: sempre COMPLETAS (sem zoom/corte) ──
   Largura da coluna + proporção original da imagem. object-fit:contain é a
   garantia extra caso algum wrapper imponha altura fixa (a imagem encolhe
   inteira em vez de ser cortada). */
.article-content .wp-block-image,
.article-content figure.wp-block-image {
    width: 100%;
    height: auto;
    max-height: none;
    overflow: visible;
}
.article-content .wp-block-image img,
.article-content figure.wp-block-image img,
.article-content > figure img,
.article-content > p > img {
    width: 100%;
    max-width: 100%;
    height: auto;
    max-height: none;
    object-fit: contain;
    object-position: center;
    display: block;
}
.article-content .wp-block-image figcaption,
.article-content figure.wp-block-image figcaption {
    position: static;
    width: 100%;
    overflow: visible;
}
.hero-slide a[href] {
    position: absolute;
    inset: 0;
    z-index: 1;
}
.hero-slide-content {
    position: relative;
    z-index: 2;
}

/* H1 Homepage SEO */
.home-h1 {
    font-size: 1.5rem;
    font-weight: 700;
    color: var(--news-text);
    margin: 0 0 1.2rem 0;
    padding: 0.6rem 0;
    border-bottom: 2px solid #00c853;
    line-height: 1.2;
}
@media (max-width: 768px) {
    .home-h1 { font-size: 1.2rem; }
}

/* ── Calculadoras/ferramentas: colapsar grids inline no mobile (UX) ──
   Inline-style não aceita @media; um !important do stylesheet sobrepõe
   o inline (que não tem !important). Escopado a .mark1-calculator p/ não
   afetar posts. Resolve EV|ICE em 2 colunas e grids de resultado 3-4 col. */
@media (max-width: 600px) {
    .mark1-calculator [style*="grid-template-columns"] {
        grid-template-columns: 1fr !important;
        gap: 12px !important;
    }
    .mark1-calculator [style*="border-right"] {
        border-right: 0 !important;
        padding-right: 0 !important;
    }
    .mark1-calculator [style*="padding-left:24px"],
    .mark1-calculator [style*="padding-left: 24px"] {
        padding-left: 0 !important;
    }
    /* tap targets e legibilidade nas ferramentas */
    .mark1-calculator input,
    .mark1-calculator select,
    .mark1-calculator .mark1-btn { min-height: 44px; font-size: 16px; }
}

/* ═══════════ Author Box ═══════════ */
.author-box {
    max-width: 800px;
    margin: 2rem auto;
    padding: 1.5rem;
    background: var(--news-surface);
    border: 1px solid var(--news-border);
    border-radius: var(--news-radius);
}
.author-box-inner {
    display: flex;
    gap: 1.25rem;
    align-items: flex-start;
}
.author-avatar {
    border-radius: 50%;
    width: 120px;
    height: 120px;
    object-fit: cover;
    border: 3px solid var(--news-primary);
    flex-shrink: 0;
}
.author-box-body {
    flex: 1;
    min-width: 0;
}
.author-name {
    font-size: 1.25rem;
    font-weight: 700;
    margin: 0 0 0.25rem;
}
.author-name a {
    color: var(--news-text);
    text-decoration: none;
}
.author-name a:hover {
    color: var(--news-primary);
}
.author-role {
    font-size: 0.85rem;
    color: var(--news-primary);
    font-weight: 600;
    margin: 0 0 0.5rem;
}
.author-bio {
    font-size: 0.9rem;
    line-height: 1.6;
    color: var(--news-text-soft);
    margin: 0 0 0.75rem;
}
.author-links {
    display: flex;
    gap: 0.5rem;
}
.author-social {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 36px;
    height: 36px;
    border-radius: 50%;
    background: var(--news-bg);
    color: var(--news-text-soft);
    border: 1px solid var(--news-border);
    transition: all 0.2s;
}
.author-social:hover {
    background: var(--news-primary);
    color: #000;
    border-color: var(--news-primary);
}
@media (max-width: 600px) {
    .author-box-inner {
        flex-direction: column;
        align-items: center;
        text-align: center;
    }
    .author-links {
        justify-content: center;
    }
}

/* ── Performance: content-visibility para secoes abaixo da dobra ── */
.latest-news,
.tools-section,
.related-posts { content-visibility: auto; contain-intrinsic-size: auto 500px; }

/* ── Home grid: hero 5:2 already set in critical/parent CSS ── */

/* ── WCAG contrast fixes (dark theme is the rendered default) ───────────────── */
/* Category chips: white on brand green #00A86B = 3.08:1 → darken to #00794C (5.0:1) */
.viral-card-category,
.hero-card-category { background: #00794C !important; }
/* Card meta (date / read-time): #64748b on #1e293b = 3.07 → #94A3B8 (5.2:1 on dark) */
.viral-card-meta time,
.viral-card-meta .read-time { color: #94A3B8 !important; }
[data-theme="light"] .viral-card-meta time,
[data-theme="light"] .viral-card-meta .read-time { color: #5A6B80 !important; }
/* Footer links: dark theme had muted #64748b (3.07) → #94A3B8 (5.2:1); light keeps #4A5568 */
.site-footer .footer-col a { color: #94A3B8; }

/* ── Fix: overflow horizontal no mobile (largura da página > viewport) ──────────
 * Causa: o .screen-reader-text "Detalhes" (position:absolute) dentro da tabela de
 * preços rolável assumia a posição estática no extremo direito da tabela (~607px).
 * Como o .live-prices-table-wrap era position:static, não era containing block dos
 * descendentes absolutos e NÃO os clipava — o elemento vazava e esticava a página,
 * disparando o zoom-out do mobile (innerWidth 607 numa viewport de 390).
 * Correção 1 (estrutural): o wrap rolável vira containing block e clipa o absoluto. */
.live-prices-table-wrap { position: relative; }
/* Correção 2 (guarda global): .screen-reader-text nunca deve estourar a largura.
 * Fixa em left:0 só quando NÃO focado, preservando skip-links que se revelam no :focus. */
.screen-reader-text:not(:focus):not(:focus-within) { left: 0 !important; }

/* ── Fix: "deslizar pra direita" no mobile (anúncios AdSense auto, iframes, embeds) ──
 * Auto-ads do AdSense injetam <ins>/iframes (e o anchor ad position:fixed) que podem
 * ser mais largos que a viewport → scroll horizontal no device real (não aparece em
 * emulação headless porque o ad não renderiza). Guarda:
 *  - max-width:100% impede que o iframe/ins do anúncio force a largura.
 *  - overflow-x:hidden no body (não no html) para não quebrar position:fixed. */
body { overflow-x: hidden; overflow-x: clip; }
ins.adsbygoogle, .adsbygoogle, iframe, embed, object, video { max-width: 100% !important; }

/* ── Table scroll in article content ──────────────────────────────────── */
.single-post .article-content table,
.single-article table {
    display: block; width: 100%; max-width: 100%;
    overflow-x: auto; -webkit-overflow-scrolling: touch;
    white-space: nowrap; border-collapse: collapse;
}

/* ── GEO: Article Summary Box ─────────────────────────────────────────── */
.article-summary {
    background: linear-gradient(135deg, #0D2040, #1A3366);
    border: 1px solid rgba(0, 212, 255, 0.3);
    border-left: 4px solid #00D4FF;
    border-radius: 12px;
    padding: 1.25rem 1.5rem;
    margin: 1.5rem 0 2rem;
    color: #E2E8F0;
}
[data-theme=light] .article-summary {
    background: #F0F7FF;
    border-color: #005B94;
    color: #1A202C;
}
.article-summary .summary-label {
    font-size: 0.75rem;
    text-transform: uppercase;
    letter-spacing: 1px;
    font-weight: 700;
    color: #00D4FF;
    margin-bottom: 0.5rem;
}
[data-theme=light] .article-summary .summary-label {
    color: #005B94;
}
.article-summary .summary-text {
    font-size: 0.95rem;
    line-height: 1.7;
    color: #CBD5E1;
}
[data-theme=light] .article-summary .summary-text {
    color: #2D3748;
}
.article-summary .summary-terms {
    margin-top: 0.75rem;
    display: flex;
    flex-wrap: wrap;
    gap: 0.4rem;
}
.article-summary .summary-tag {
    display: inline-block;
    padding: 2px 10px;
    background: rgba(0, 212, 255, 0.15);
    border: 1px solid rgba(0, 212, 255, 0.25);
    border-radius: 20px;
    font-size: 0.75rem;
    color: #00D4FF;
}
[data-theme=light] .article-summary .summary-tag {
    background: rgba(0, 91, 148, 0.1);
    border-color: rgba(0, 91, 148, 0.2);
    color: #005B94;
}

/* ── GEO: Article Sources ──────────────────────────────────────────────── */
.article-sources {
    background: rgba(0, 0, 0, 0.15);
    border-radius: 8px;
    padding: 1.25rem;
    margin-top: 2rem;
}
[data-theme=light] .article-sources {
    background: rgba(0, 0, 0, 0.03);
}

/* ── UX de leitura ─────────────────────────────────────────────────────── */
html { scroll-behavior: smooth; }
/* âncoras do sumário não somem sob o header sticky */
.article-content h2[id], .article-content h3[id] { scroll-margin-top: 90px; }

/* Respiro entre parágrafos (pedido do David): parágrafos curtos com espaço
   generoso, estilo resposta de IA. Sobrescreve o 20px do tema pai. */
.article-content p { margin: 0 0 1.6rem; line-height: 1.75; }
.article-content ul, .article-content ol { margin: 0 0 1.6rem 1.4rem; }
.article-content li { margin-bottom: .5rem; line-height: 1.7; }
.article-content h2 { margin-top: 2.2rem; margin-bottom: 1rem; }
.article-content h3 { margin-top: 1.6rem; margin-bottom: .8rem; }
.article-content table { margin: 0 0 1.8rem; }
#evb-progress {
  position: fixed; top: 0; left: 0; height: 3px; width: 0;
  background: linear-gradient(90deg, #00A86B, #00D4FF);
  z-index: 9999; pointer-events: none;
}

/* ── CSS Variables faltantes (fallback seguro) ─────────────────────────── */
/* :root[data-theme=light] (0-2-0) precisa vencer o :root (0-1-0) abaixo;
   com [data-theme=light] simples a especificidade empatava e o bloco escuro,
   por vir depois, ganhava sempre — fundo azul no tema claro. */
:root[data-theme=light] {
  --news-primary: #00A86B;
  --news-electric: #00A8CC;
  --news-green: #00A86B;
  --news-green-dark: #007A4D;
  --news-radius: 8px;
  --news-accent: #D4AF37;
  --news-bg-alt: #F0F4F8;
  --news-card-bg: #FFFFFF;
}
:root {
  --news-card-bg: #1a2332;
  --news-primary: #00A86B;
  --news-electric: #00D4FF;
  --news-green: #00A86B;
  --news-green-dark: #34D399;
  --news-radius: 8px;
  --news-accent: #D4AF37;
  --news-bg-alt: #0D1B2A;
}

/* ── Fix: contraste em botoes e superficies claras ──────────────────── */
.zero-btn { background: var(--news-primary, #00A86B); color: #fff !important }
.zero-btn.secondary { background: var(--news-surface, #1E293B); color: var(--news-text, #E2E8F0) !important; border: 1px solid var(--news-border, rgba(255,255,255,.1)) }
[data-theme=light] .zero-btn.secondary { background: #fff; color: #1A202C !important; border-color: #CBD5E1 }
[data-theme=light] .zero-btn { color: #fff !important }

/* ── Agent Article Section ──────────────────────────────── */
.agent-article-link {
  display:inline-block; padding:3px 10px; border-radius:6px; font-size:.7rem; font-weight:600;
  text-decoration:none; background:rgba(0,212,255,.08); color:#00D4FF;
  border:1px solid rgba(0,212,255,.15); transition:all .15s;
  white-space:nowrap; margin:2px
}
.agent-article-link:hover { background:#00D4FF; color:#000 }
[data-theme=light] .agent-article-section { background:#F0F7FF }

/* ── Tool Header (first-fold) ─────────────────────────────── */
.evblog-tool-header { margin-bottom:2rem; padding:1.5rem 1rem; }
.evblog-tool-title { font-size:2rem; font-weight:800; color:var(--news-text,#E2E8F0); margin:0 0 .5rem; line-height:1.2 }
.evblog-tool-desc { font-size:.95rem; color:#94A3B8; line-height:1.6; max-width:800px; margin:0 0 1rem }
.evblog-tool-badges { display:flex; flex-wrap:wrap; gap:.35rem; margin-bottom:.8rem }
.evblog-tool-badge {
  display:inline-block; padding:2px 10px; border-radius:20px; font-size:.7rem; font-weight:700;
  background:rgba(0,212,255,.1); color:#00D4FF; border:1px solid rgba(0,212,255,.2)
}
.evblog-tool-ctas { display:flex; gap:.5rem; flex-wrap:wrap }
.evblog-tool-cta {
  display:inline-block; padding:.5rem 1.2rem; border-radius:8px; font-size:.85rem; font-weight:700;
  background:#00D4FF; color:#000; text-decoration:none; transition:all .15s
}
.evblog-tool-cta:hover { background:#33DDFF; transform:translateY(-1px) }

/* Tool agent section */
.evblog-tool-agent {
  margin:2rem 0; padding:1.25rem; border:1px solid rgba(0,212,255,.15); border-radius:12px;
  background:rgba(0,212,255,.02)
}
.evblog-tool-agent-head { font-size:.85rem; color:#00D4FF; margin-bottom:.4rem; display:flex; align-items:center; gap:6px }
.evblog-tool-agent-links { display:flex; flex-wrap:wrap; gap:.3rem; margin-bottom:.4rem }
.evblog-tool-agent-link {
  padding:.25rem .65rem; border-radius:6px; font-size:.68rem; font-weight:600; text-decoration:none;
  background:rgba(0,212,255,.06); color:#00D4FF; border:1px solid rgba(0,212,255,.12); white-space:nowrap
}
.evblog-tool-agent-link:hover { background:#00D4FF; color:#000 }
.evblog-tool-agent-disc { font-size:.65rem; color:#64748B; margin:0; line-height:1.5 }

[data-theme=light] .evblog-tool-title { color:#1A202C }
[data-theme=light] .evblog-tool-agent { background:#F0F7FF }
[data-theme=light] .evblog-tool-badge { background:rgba(0,91,148,.08); color:#005B94; border-color:rgba(0,91,148,.15) }
[data-theme=light] .evblog-tool-cta { background:#00A8CC; color:#fff }

/* ═══════════ Layout Magazine — Artigo + Sidebar direita ═══════════ */
.single-mag {
    display: grid;
    grid-template-columns: minmax(0, 1fr) 320px;
    gap: 32px;
    align-items: start;
}

.single-mag__main { min-width: 0; }
.single-mag__side {
    min-width: 0;
    display: flex;
    flex-direction: column;
    gap: 22px;
    position: sticky;
    top: 84px;
}

.single-mag__side .sidebar-popular {
    background: var(--news-surface, #1E293B);
    border: 1px solid var(--news-border, #334155);
    border-radius: 14px;
    padding: 20px 18px;
    box-shadow: var(--news-shadow, 0 1px 3px rgba(0,0,0,.3));
}

.single-mag__side .sidebar-popular h3 {
    display: flex;
    align-items: center;
    gap: 8px;
    font-size: .9rem;
    font-weight: 800;
    text-transform: uppercase;
    letter-spacing: .03em;
    color: var(--news-text, #F1F5F9);
    margin-bottom: 14px;
    padding-bottom: 10px;
    border-bottom: 2px solid rgba(0,168,107,.4);
}

.single-mag__side .compact-card-img { width: 92px; height: 66px; }

.single-mag__side .side-cta { padding: 14px 16px; }

@media (max-width: 1024px) {
    .single-mag { grid-template-columns: 1fr; gap: 28px; }
    .single-mag__side {
        position: static;
        display: grid;
        grid-template-columns: repeat(auto-fill, minmax(240px, 1fr));
        gap: 18px;
    }
}

/* Ads dentro do artigo */
.single-article .evad--billboard,
.single-article .evad--leaderboard {
    margin-block: 32px;
}

.single-article .evad-reveal {
    margin-block: 40px;
}

/* ═══════════ Footer: 5 colunas alinhadas + mobile ═══════════ */
.site-footer .footer-grid {
    grid-template-columns: repeat(5, 1fr);
    gap: 28px;
}

.site-footer .footer-col h4 {
    margin-bottom: 14px;
}

.site-footer .footer-col li {
    margin-bottom: 8px;
    line-height: 1.35;
}

.site-footer .footer-col a {
    display: inline-flex;
    align-items: center;
}

@media (max-width: 1100px) {
    .site-footer .footer-grid { grid-template-columns: repeat(3, 1fr); }
}

@media (max-width: 768px) {
    .site-footer .footer-grid { grid-template-columns: repeat(2, 1fr); gap: 22px; }
}

@media (max-width: 480px) {
    .site-footer .footer-grid { grid-template-columns: 1fr; gap: 20px; }
    .site-footer .footer-col { padding-bottom: 8px; }
    .site-footer { padding-top: 32px; }
}

/* ═══════════ Mobile UX: barra de cookies ajustada ═══════════ */
@media (max-width: 600px) {
    #evblog-cookie-banner .cookie-content { flex-direction: column; gap: 10px; }
    #evblog-cookie-banner .cookie-buttons { width: 100%; justify-content: stretch; }
    #evblog-cookie-banner .cookie-btn { flex: 1; min-height: 44px; }
}

/* ═══════════ PageSpeed: pintura sob demanda nas seções da home ═══════════ */
.home-page .ev-model-grid,
.home-page .latest-news,
.home-page .tools-section,
.home-page .ev-market-section,
.home-page .side-evergreen,
.home-page .side-tools {
    content-visibility: auto;
    contain-intrinsic-size: auto 340px;
}

.home-page .evad--billboard,
.home-page .evad--leaderboard,
.home-page .evad-partner-grid {
    content-visibility: auto;
    contain-intrinsic-size: auto 140px;
}

/* ═══════════ GEO Card — Resposta direta (SEO/GEO/AEO) ═══════════ */
.evblog-geo-card {
    display: flex;
    flex-direction: column;
    gap: 8px;
    margin: 0 0 24px;
    padding: 18px 20px;
    background: linear-gradient(135deg, rgba(0,168,107,.09), rgba(0,212,255,.05));
    border: 1px solid rgba(0,168,107,.3);
    border-left: 4px solid #00A86B;
    border-radius: 12px;
}

.evblog-geo-card__label {
    font-size: .72rem;
    font-weight: 800;
    text-transform: uppercase;
    letter-spacing: .1em;
    color: #00A86B;
}

.evblog-geo-card__answer {
    margin: 0;
    font-size: .95rem;
    line-height: 1.6;
    color: var(--news-text, #E2E8F0);
}

.evblog-geo-card__cta {
    align-self: flex-start;
    font-size: .8rem;
    font-weight: 700;
    color: #00D4FF;
    text-decoration: none;
}

.evblog-geo-card__cta:hover { text-decoration: underline; }

.evblog-geo-card__ad {
    margin-top: 10px;
    padding-top: 10px;
    border-top: 1px solid rgba(0,168,107,.15);
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
    align-items: center;
    font-size: .8rem;
    color: var(--news-text-soft, #94A3B8);
}

.evblog-geo-card__ad-label {
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: .06em;
    color: #00A86B;
    font-size: .7rem;
}

.evblog-geo-card__ad-link {
    color: #00D4FF;
    text-decoration: none;
    font-weight: 600;
    display: inline-flex;
    align-items: center;
    gap: 6px;
}

.evblog-geo-card__ad-link:hover { text-decoration: underline; }

[data-theme="light"] .evblog-geo-card__ad { border-top-color: rgba(0,168,107,.2); }
[data-theme="light"] .evblog-geo-card__ad-label { color: #008f5a; }
[data-theme="light"] .evblog-geo-card__ad-link { color: #0097b3; }

[data-theme="light"] .evblog-geo-card {
    background: linear-gradient(135deg, rgba(0,168,107,.07), rgba(0,212,255,.04));
}
[data-theme="light"] .evblog-geo-card__answer { color: #1A202C; }

/* GEO card em ferramentas full-width */
.vehicle-page .evblog-geo-card,
.tools-page .evblog-geo-card,
[class*="calculator"] .evblog-geo-card { max-width: 1100px; }

/* Shared surfaces: keep cards inside viewport on small screens. */
.evm-page,.evm-page .container,.evm-page article{min-width:0;max-width:100%}
.evm-page img{max-width:100%;height:auto}
.evm-page .evm-hero{grid-template-columns:minmax(0,1.25fr) minmax(0,1fr)}
.evm-page .evm-hero>div{min-width:0}
.evm-page .evb-surface-actions{align-items:center}
.evm-page .evb-action{min-height:42px}
.evblog-fipe-inline{overflow:hidden;max-width:100%}
@media(max-width:700px){
  .evm-page{padding:16px 0}
  .evm-page .evm-hero{grid-template-columns:1fr;gap:16px}
  .evm-page .evm-hero img{aspect-ratio:16/9}
  .evm-page .evm-hero h1{font-size:clamp(1.65rem,8vw,2.2rem)}
  .evm-page .evm-price{font-size:1.7rem}
  .evm-page .evm-specs{grid-template-columns:repeat(2,minmax(0,1fr))}
  .evm-page .evb-surface-actions{display:grid;grid-template-columns:1fr 1fr}
  .evm-page .evb-action{width:100%;min-height:46px}
  .evm-page .evb-action-status{grid-column:1/-1}
}
@media(max-width:380px){.evm-page .evm-specs,.evm-page .evb-surface-actions{grid-template-columns:1fr}}

/* ═══════════ Seletor de idioma (Polylang) — header ═══════════ */
.lang-switcher .lang-static {
    display: inline-flex;
    align-items: center;
    padding: 7px 12px;
    font-size: .78rem;
    font-weight: 700;
    letter-spacing: .08em;
    font-family: var(--news-mono, ui-monospace, SFMono-Regular, Menlo, monospace);
    color: var(--news-text, #F1F5F9);
    background: var(--news-bg, #0F172A);
    border: 1px solid var(--news-border, #334155);
    border-radius: 8px;
    user-select: none;
}

[data-theme="light"] .lang-switcher .lang-static {
    background-color: #fff;
    color: #1A202C;
}

.lang-switcher select {
    appearance: none;
    -webkit-appearance: none;
    padding: 7px 30px 7px 12px;
    font-size: .8rem;
    font-weight: 700;
    color: var(--news-text, #F1F5F9);
    background: var(--news-bg, #0F172A)
        url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='10' height='6'><path d='M0 0l5 6 5-6z' fill='%2394A3B8'/></svg>")
        no-repeat right 10px center;
    border: 1px solid var(--news-border, #334155);
    border-radius: 8px;
    cursor: pointer;
}

.lang-switcher select:focus {
    outline: none;
    border-color: var(--news-accent, #00D4FF);
}

[data-theme="light"] .lang-switcher select {
    background-color: #fff;
    color: #1A202C;
}

/* Switcher dentro do drawer mobile: visível só no mobile */
.lang-switcher--mobile {
    display: none;
    margin-top: 14px;
    padding-top: 14px;
    border-top: 1px solid var(--news-border, #334155);
}

@media (max-width: 768px) {
    .lang-switcher--mobile {
        display: block;
    }
    .lang-switcher--mobile select {
        width: 100%;
    }
    .lang-switcher--mobile .lang-static {
        width: 100%;
        justify-content: center;
    }
}
/* ── fim do bloco switcher ── */

/* Seletor de idioma: apenas UM visível por breakpoint (desktop x mobile) */
@media (max-width: 768px) {
    .header-actions .lang-switcher:not(.lang-switcher--mobile) {
        display: none;
    }
}

/* ============================================================
   Bloco de oferta de afiliado (Shopee) — 2026-10-15
   Card no padrao do site: navy + cyan eletrico + cinza claro.
   Usado pelo gerador de reviews (downloads/affiliate_feed.py).
   ============================================================ */
.evblog-bloco-afiliado {
    background: var(--news-bg, #F5F7FA);
    border: 1px solid var(--news-border, #E2E8F0);
    border-left: 4px solid var(--news-electric, #00A8CC);
    border-radius: 12px;
    padding: 22px 24px 18px;
    margin: 30px 0;
}
.evblog-bloco-afiliado .evblog-afiliado-tag {
    display: inline-block;
    background: var(--news-dark, #0A1628);
    color: #fff;
    font-size: 11px;
    font-weight: 700;
    letter-spacing: .09em;
    text-transform: uppercase;
    padding: 5px 11px;
    border-radius: 6px;
}
.evblog-bloco-afiliado .evblog-afiliado-foto {
    display: block;
    width: 100%;
    max-width: 420px;
    height: auto;
    border-radius: 8px;
    margin: 14px auto 4px;
}
.evblog-bloco-afiliado .evblog-afiliado-produto {
    font-weight: 600;
    color: var(--news-text, #1A202C);
    margin: 14px 0 2px;
}
.evblog-bloco-afiliado .evblog-afiliado-preco {
    font-size: 30px;
    font-weight: 800;
    line-height: 1.15;
    color: var(--news-dark, #0A1628);
    margin: 2px 0 18px;
}
.evblog-bloco-afiliado .evblog-afiliado-preco small {
    display: block;
    font-size: 13px;
    font-weight: 500;
    color: var(--news-text-soft, #64748B);
    margin-top: 4px;
}
.evblog-afiliado-btn {
    display: inline-flex;
    align-items: center;
    gap: 10px;
    background: var(--news-electric, #00A8CC);
    color: #fff !important;
    font-weight: 700;
    font-size: 16px;
    line-height: 1;
    padding: 15px 28px;
    border-radius: 10px;
    text-decoration: none !important;
    box-shadow: 0 4px 14px rgba(0, 168, 204, .28);
    transition: background .15s ease, transform .15s ease, box-shadow .15s ease;
}
.evblog-afiliado-btn:hover,
.evblog-afiliado-btn:focus-visible {
    background: #33DDFF;
    color: var(--news-dark, #0A1628) !important;
    transform: translateY(-2px);
    box-shadow: 0 7px 20px rgba(0, 168, 204, .35);
}
.evblog-afiliado-btn svg {
    width: 22px;
    height: 22px;
    flex: none;
}
.evblog-bloco-afiliado .evblog-afiliado-nota {
    font-size: 12px;
    color: var(--news-text-soft, #64748B);
    margin: 14px 0 4px;
}
@media (prefers-color-scheme: dark) {
    .evblog-bloco-afiliado {
        background: rgba(255, 255, 255, .03);
        border-color: rgba(255, 255, 255, .12);
    }
    .evblog-bloco-afiliado .evblog-afiliado-preco,
    .evblog-bloco-afiliado .evblog-afiliado-produto {
        color: #F1F5F9;
    }
}

/* ── BLOCO LOJA EV & PRODUTOS DE AFILIADOS (ML + SHOPEE) ── */
.evr-section{margin:32px 0;padding:22px;border:1px solid var(--news-border,#334155);border-radius:16px;background:linear-gradient(135deg,rgba(0,168,107,.06),rgba(0,212,255,.03) 55%,transparent)}
.evr-section-title{margin:0 0 4px;font-size:1.15rem;font-weight:800;color:var(--news-text,#F1F5F9)}
.evr-section-sub{margin:0 0 16px;font-size:.8rem;color:var(--news-text-soft,#94A3B8);line-height:1.45}
.evr-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(190px,1fr));gap:14px}
.evr-card{position:relative;border:1px solid var(--news-border,#334155);border-radius:14px;overflow:hidden;background:var(--news-surface,#1E293B);transition:transform .15s,box-shadow .15s}
.evr-card:hover{transform:translateY(-2px);box-shadow:0 10px 26px rgba(0,0,0,.25)}
.evr-card-link{display:block;text-decoration:none;color:inherit}
.evr-img{width:100%;aspect-ratio:1/1;object-fit:cover;display:block;background:rgba(255,255,255,.05)}
.evr-img--ph{display:grid;place-items:center;font-size:2rem;aspect-ratio:1/1;background:rgba(0,168,107,.08)}
.evr-eyebrow{position:absolute;top:10px;left:10px;font-size:.6rem;font-weight:800;letter-spacing:.12em;text-transform:uppercase;color:#fff;background:rgba(0,168,107,.92);padding:4px 9px;border-radius:999px;z-index:2}
.evs-card .evr-eyebrow{background:#EE4D2D}
.evs-card--ml .evr-eyebrow--ml{background:linear-gradient(90deg,#FFE600,#FFD000);color:#0b1020;font-weight:800}
.evr-body{padding:12px 13px 14px}
.evr-name{margin:0 0 6px;font-size:.92rem;line-height:1.35;color:var(--news-text,#F1F5F9)}
.evr-rating{display:inline-block;font-size:.75rem;color:var(--news-accent,#00D4FF);margin-right:8px}
.evr-sales{display:inline-block;font-size:.65rem;color:var(--news-primary,#00A86B);border:1px solid rgba(0,168,107,.4);border-radius:999px;padding:2px 8px}
.evr-chips{margin:4px 0}
.evr-chip{display:inline-block;padding:2px 6px;border-radius:4px;font-size:.65rem;font-weight:700}
.evr-chip--off{background:rgba(238,77,45,.15);color:#EE4D2D}
.evr-price{display:block;font-size:1.05rem;font-weight:800;color:var(--news-primary,#00A86B);margin:6px 0}
.evr-vendor{display:block;font-size:.7rem;color:var(--news-text-muted,#64748B);margin-top:2px}
.evr-btn{display:inline-block;margin-top:8px;padding:8px 16px;border-radius:9px;background:var(--news-primary,#00A86B);color:#fff;font-weight:800;font-size:.75rem;letter-spacing:.04em;text-align:center}
.evr-card:hover .evr-btn{background:#008f5a}
.evr-note{display:block;padding:0 13px 10px;font-size:.62rem;color:var(--news-text-muted,#64748B)}
.evr-transparencia{margin-top:14px;font-size:.68rem;color:var(--news-text-muted,#64748B);line-height:1.5}

/* HOME: bloco da loja (mesma curadoria da vitrine, 8 cards = 4×2) */
.ev-home-loja{margin:8px 0 26px;padding:18px 18px 8px;border:1px solid var(--news-border,#334155);border-radius:16px;background:var(--news-surface,#1E293B)}
.ev-home-loja__head{display:flex;align-items:baseline;justify-content:space-between;gap:10px;flex-wrap:wrap}
.ev-home-loja__head .section-title{margin:0}
.ev-home-loja__more{font-size:.78rem;font-weight:800;color:var(--news-primary,#00A86B);text-decoration:none;white-space:nowrap}
.ev-home-loja__more:hover{text-decoration:underline}
.ev-home-loja .evr-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}
.ev-home-loja .evr-name{font-size:.78rem;-webkit-line-clamp:2;display:-webkit-box;-webkit-box-orient:vertical;overflow:hidden;height:2.7em;margin:0 0 6px;line-height:1.35;color:var(--news-text,#F1F5F9)}
.ev-home-loja .evr-price{font-size:.98rem;font-weight:800;color:var(--news-primary,#00A86B);margin:6px 0;display:block}
.ev-home-loja .evr-btn{font-size:.72rem;display:inline-block;margin-top:8px;padding:8px 16px;border-radius:9px;background:var(--news-primary,#00A86B);color:#fff;font-weight:800;letter-spacing:.04em;text-align:center}
@media(max-width:900px){.ev-home-loja .evr-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:600px){.ev-home-loja{padding:14px 12px 6px}.ev-home-loja .evr-grid{grid-template-columns:1fr 1fr;gap:10px}}
