/* ===== VARIÁVEIS - PALETA DE CORES PRIMÁRIAS ===== */
:root{
    --vermelho:#BE1311;
    --amarelo:#F9CD0A;
    --azul:#182E5F;
    --laranja:#E4641D;
    --branco:#FFFFFF;
    --cinza-claro:#F8F9FA;
    --cinza-medio:#E9ECEF;
    --cinza-escuro:#495057;
    --preto:#182E5F;
}

/* ===== RESET E BASE ===== */
*{margin:0;padding:0;box-sizing:border-box}
html,body{height:100%}
body{
    font-family:'Segoe UI', Tahoma, Geneva, Verdana, sans-serif;
    line-height:1.6;
    color:var(--preto);
    background-color:var(--cinza-claro);
    -webkit-font-smoothing:antialiased;
    -moz-osx-font-smoothing:grayscale;
}

/* ===== CONTAINER CENTRAL ===== */
.container{
    max-width:1100px;
    margin:0 auto;
    padding:0 20px;
}

.uol-bar{
    width:100%;
    min-height:64px;
    background:#000;
    display:flex;
    align-items:center;
    justify-content:center;
    box-shadow:0 2px 6px rgba(0,0,0,0.2);
    margin:0;
    padding:0;
}

.uol-bar__logo img{ height:70px; width:auto; }

/* page-wrapper centraliza conteúdo entre os anúncios */
.page-wrapper{
    max-width:1100px;
    margin:0 auto;
    position:relative;
}

/* ===== BLOCOS DE ANÚNCIO LATERAIS ===== */
.ad-left, .ad-right{
    position:fixed;
    top:120px;
    width:160px;
    height:600px;
    background:var(--branco);
    border:1px solid var(--cinza-medio);
    border-radius:8px;
    box-shadow:0 6px 18px rgba(0,0,0,0.07);
    display:flex;
    align-items:center;
    justify-content:center;
    z-index:900;
}

.ad-left{ left:12px; }
.ad-right{ right:12px; }

.ad-inner{ font-size:0.95rem;color:var(--cinza-escuro); }

@media (max-width:1400px){
    .ad-left, .ad-right{ display:none; }
    .page-wrapper{ padding:0 16px; }
}

/* ===== HEADER ===== */
.header{
    background:var(--branco);
    box-shadow:0 2px 8px rgba(0,0,0,0.08);
    position:static;
    z-index:800;
    width:100%;
    margin:0;
    padding:0;
}

.header-content{
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:20px;
    padding:16px 20px;
    max-width:1100px;
    margin:0 auto;
}

/* ===== BOTÃO VOLTAR PADRONIZADO (canto superior esquerdo) ===== */
.back-btn{
    position:fixed;
    top:16px;
    left:16px;
    z-index:1200;
    display:inline-flex;
    align-items:center;
    gap:8px;
    background:var(--branco);
    color:var(--preto);
    border:2px solid var(--cinza-medio);
    padding:8px 12px;
    border-radius:999px;
    text-decoration:none;
    box-shadow:0 8px 24px rgba(0,0,0,0.08);
    font-weight:600;
}
.back-btn:hover{
    background:var(--vermelho);
    color:var(--branco);
    border-color:var(--vermelho);
    transform:translateY(-2px);
}

@media (max-width:480px){
    .back-btn{ top:10px; left:10px; padding:6px 10px; }
}

.logo{ display:flex; align-items:center; }

.jc-logo{
    height:60px;
    width:auto;
    object-fit:contain;
}

.jc-mark{
    width:58px;
    height:58px;
    border-radius:50%;
    background:var(--azul);
    color:var(--branco);
    display:inline-flex;
    align-items:center;
    justify-content:center;
    font-weight:800;
    font-size:1.1rem;
    letter-spacing:0.03em;
    box-shadow:0 6px 16px rgba(0,0,0,0.12);
    border:3px solid var(--vermelho);
}

/* ===== NAV ===== */
.nav-menu ul{
    display:flex;
    list-style:none;
    gap:18px;
    align-items:center;
}

.nav-menu{
    flex:1;
    display:flex;
    justify-content:center;
}

.nav-menu a{
    text-decoration:none;
    color:var(--preto);
    font-weight:500;
    position:relative;
    padding:6px 2px;
    transition:color .25s ease;
}

.nav-menu a::after{
    content:'';
    position:absolute;
    left:0; bottom:-6px;
    height:3px; width:0;
    background:var(--vermelho);
    transition:width .25s ease;
}

.nav-menu a:hover::after, .nav-menu a.active::after{ width:100%; }
.nav-menu a:hover, .nav-menu a.active{ color:var(--vermelho); }

/* ===== HEADER ACTIONS ===== */
.header-actions{ display:flex; gap:12px; align-items:center; }

.sidebar{
    position:fixed;
    top:0;
    left:-360px;
    width:320px;
    max-width:90vw;
    height:100vh;
    background:var(--branco);
    box-shadow:8px 0 24px rgba(0,0,0,0.18);
    z-index:1400;
    display:flex;
    flex-direction:column;
    transition:left .25s ease;
    padding:16px;
    overflow-y:auto;
}

.sidebar.open{ left:0; }

.sidebar-overlay{
    position:fixed;
    inset:0;
    background:rgba(0,0,0,0.45);
    z-index:1350;
    opacity:0;
    pointer-events:none;
    transition:opacity .25s ease;
}

.sidebar-overlay.visible{
    opacity:1;
    pointer-events:auto;
}

.sidebar__header{ display:flex; align-items:center; justify-content:space-between; margin-bottom:16px; }
.sidebar__title{ font-weight:700; color:var(--preto); font-size:1.05rem; }
.sidebar__close{
    background:transparent;
    border:2px solid var(--cinza-medio);
    border-radius:10px;
    width:40px; height:40px;
    display:inline-flex; align-items:center; justify-content:center;
    cursor:pointer; color:var(--preto);
    transition:all .2s ease;
}
.sidebar__close:hover{ border-color:var(--vermelho); color:var(--vermelho); transform:translateY(-1px); }

.sidebar__content{ display:flex; flex-direction:column; gap:18px; overflow-y:auto; padding-right:4px; }

.sidebar-search form{
    display:flex;
    gap:8px;
    align-items:center;
    background:var(--cinza-claro);
    border-radius:12px;
    padding:10px 12px;
    box-shadow:0 4px 12px rgba(0,0,0,0.06);
}
.sidebar-search input{
    flex:1;
    border:none;
    background:transparent;
    outline:none;
    font-size:1rem;
    color:var(--preto);
}
.sidebar-search-btn{
    background:var(--vermelho);
    border:none;
    color:var(--branco);
    width:42px; height:42px;
    border-radius:10px;
    display:inline-flex; align-items:center; justify-content:center;
    cursor:pointer;
    transition:background .2s ease;
}
.sidebar-search-btn:hover{ background:var(--laranja); }

.sidebar-tags h4{ margin-bottom:8px; color:var(--preto); }
.sidebar-tags__list{ display:flex; flex-direction:column; gap:8px; }
.sidebar .category-btn{ width:100%; justify-content:flex-start; text-align:left; }

/* ocultar seções originais de busca e tags quando sidebar existir */
.search-section, .categories-section{ display:none; }

.header-btn{
    text-decoration:none;
    background:var(--azul);
    color:var(--branco);
    padding:8px 14px;
    border-radius:24px;
    font-weight:600;
    display:inline-flex;
    align-items:center;
    gap:8px;
    border:2px solid var(--azul);
    transition:all .2s ease;
}

.header-btn:hover{ background:var(--vermelho); border-color:var(--vermelho); transform:translateY(-2px); }

/* ===== BARRA DE BUSCA ===== */
.search-section{ padding:24px 0; background:var(--branco); }

.search-bar{ max-width:700px; margin:0 auto; position:relative; }

.search-bar form{
    display:flex; align-items:center;
    background:var(--cinza-claro);
    border-radius:50px; padding:8px 12px;
    box-shadow:0 6px 18px rgba(0,0,0,0.05);
    overflow:hidden;
}

.search-bar i{ padding:0 12px; color:var(--azul); font-size:1.1rem; }
.search-bar input{
    flex:1; border:none; background:transparent;
    padding:12px 8px; font-size:1rem; outline:none; color:var(--preto);
}

.search-btn{
    background:var(--vermelho); color:var(--branco);
    border:none; padding:10px 18px; border-radius:40px; font-weight:600; cursor:pointer;
    transition:background .2s ease;
}
.search-btn:hover{ background:var(--laranja); }

/* ===== CATEGORIAS ===== */
.categories-section{ padding:18px 0; background:var(--branco); border-bottom:3px solid var(--cinza-medio); }
.categories{ display:flex; gap:10px; flex-wrap:wrap; justify-content:center; }
.category-btn{
    background:transparent; color:var(--preto);
    border:2px solid var(--cinza-medio); padding:8px 14px; border-radius:24px; cursor:pointer; font-weight:600;
    transition:all .2s ease;
}
.category-btn:hover{ background:var(--amarelo); border-color:var(--amarelo); color:var(--branco); transform:translateY(-2px); }
.category-btn.active{ background:var(--vermelho); border-color:var(--vermelho); color:var(--branco); }

/* ===== DESTAQUE ===== */
.featured-section{ padding:32px 0; }
.featured-news{
    display:grid; grid-template-columns:1fr 1fr; gap:0;
    background:var(--branco); border-radius:12px; overflow:hidden; box-shadow:0 8px 24px rgba(0,0,0,0.12);
}
.featured-image{ position:relative; height:100%; }
.featured-image img{ width:100%; height:100%; object-fit:cover; display:block; transition:transform .5s ease; }
.featured-news:hover .featured-image img{ transform:scale(1.05); }
.featured-content{ padding:36px; position:relative; display:flex; flex-direction:column; justify-content:center; }
.featured-content h2{ font-size:1.9rem; margin-bottom:12px; line-height:1.25; color:var(--preto); }
.category-tag{
    position:absolute; top:18px; left:18px; background:var(--vermelho); color:var(--branco);
    padding:6px 10px; border-radius:18px; font-weight:600; font-size:.85rem;
}

/* ===== GRADE DE NOTÍCIAS ===== */
.news-section{ padding:36px 0; }
.section-title{ font-size:1.8rem; text-align:center; margin-bottom:20px; position:relative; padding-bottom:10px; }
.section-title::after{
    content:''; position:absolute; left:50%; transform:translateX(-50%); bottom:0;
    width:80px; height:4px; background:linear-gradient(90deg,var(--vermelho),var(--amarelo),var(--azul)); border-radius:2px;
}

.news-grid{ display:flex; flex-direction:column; gap:24px; margin-bottom:24px; }

.news-card{
    background:var(--branco); border-radius:12px; overflow:hidden; box-shadow:0 6px 18px rgba(0,0,0,0.06);
    transition:transform .25s ease, box-shadow .25s ease; position:relative;
    display:flex; flex-direction:column; cursor:pointer;
}
.news-card:hover{ transform:translateY(-4px); box-shadow:0 14px 36px rgba(0,0,0,0.12); }

.news-card-link{
    position:absolute;
    top:0; left:0; right:0; bottom:0;
    z-index:1;
    text-decoration:none;
}

.news-image{ height:280px; overflow:hidden; position:relative; order:2; }
.news-image img{ width:100%; height:100%; object-fit:cover; transition:transform .5s ease; display:block; }
.news-card:hover .news-image img{ transform:scale(1.05); }

.news-content{ padding:20px 20px 16px 28px; order:1; position:relative; }
.red-bar{ position:absolute; left:0; top:0; bottom:0; width:4px; background:var(--vermelho); border-radius:0 2px 2px 0; }
.news-title{ font-size:1.15rem; margin-bottom:8px; color:var(--preto); }
.news-meta{ display:flex; gap:12px; color:var(--cinza-escuro); font-size:.9rem; margin-bottom:10px; flex-wrap:wrap; }
.news-meta i{ color:var(--azul); margin-right:6px; }
.news-excerpt{ color:var(--preto); line-height:1.7; margin-bottom:14px; font-size:1.05rem; }

/* buttons */
.read-more-btn{
    background:var(--azul); color:var(--branco); text-decoration:none; padding:10px 16px; border-radius:8px; font-weight:600;
    display:inline-flex; gap:8px; align-items:center; transition:all .2s ease;
    z-index: 1;
}
.read-more-btn:hover{ background:var(--vermelho); transform:translateX(6px); }

.favorite-btn{
    position:absolute; top:12px; right:12px; width:44px; height:44px; border-radius:50%;
    background:var(--branco); border:2px solid var(--cinza-medio); display:flex; align-items:center; justify-content:center;
    cursor:pointer; transition:all .18s ease; color:var(--cinza-escuro); font-size:1.1rem;
    z-index:10;
}
.favorite-btn:hover{ border-color:var(--vermelho); color:var(--vermelho); transform:scale(1.05); }
.favorite-btn.active{
    background:var(--branco);
    border-color:var(--vermelho);
    color:var(--vermelho);
}
.favorite-btn.active i, .favorite-btn.active .fas, .favorite-btn.active .far{ color:var(--vermelho); }

/* ===== LOAD MORE ===== */
.load-more{ text-align:center; padding:20px 0; }
.load-more-btn{
    background:transparent; color:var(--azul); border:2px solid var(--azul); padding:10px 20px; border-radius:999px; font-weight:600; cursor:pointer;
    transition:all .2s ease;
}
.load-more-btn:hover{ background:var(--azul); color:var(--branco); }

/* ===== FAVORITOS ===== */
.favorites-section{ padding:36px 0; background:var(--cinza-medio); }
.favorites-grid{ display:grid; grid-template-columns:repeat(auto-fill,minmax(280px,1fr)); gap:16px; }
.no-favorites{ text-align:center; color:var(--cinza-escuro); padding:28px; grid-column:1/-1; }

/* ===== FOOTER ===== */
.footer{ padding:28px 0; background:var(--preto); color:var(--branco); }
.footer-content{ display:grid; grid-template-columns:repeat(auto-fit,minmax(220px,1fr)); gap:20px; align-items:start; margin-bottom:18px; }
.footer-section h3, .footer-section h4{ color:var(--amarelo); margin-bottom:12px; }
.footer-section p, .footer-section a{ color:rgba(255,255,255,0.85); text-decoration:none; }
.footer-section ul{ list-style:none; }
.footer-section ul li{ margin-bottom:8px; }
.footer-section a:hover{ color:var(--branco); text-decoration:underline; }
.social-links{ display:flex; gap:10px; margin-top:8px; }
.social-links a{ width:40px; height:40px; border-radius:50%; background:var(--azul); display:flex; align-items:center; justify-content:center; color:var(--branco); transition:all .2s ease; }
.social-links a:hover{ background:var(--vermelho); transform:translateY(-3px); }
.newsletter-form{ display:flex; gap:8px; margin-top:8px; }
.newsletter-form input{ padding:10px; border-radius:8px; border:none; flex:1; }
.newsletter-form button{ padding:10px 14px; border-radius:8px; background:var(--vermelho); color:var(--branco); border:none; cursor:pointer; transition:background .2s ease; }
.newsletter-form button:hover{ background:var(--laranja); }

/* Feedback Site (substitui newsletter) */
.feedback-site .form-feedback-site{
    display:flex;
    flex-direction:column;
    gap:8px;
}

.feedback-site .rating-site{
    display:flex;
    flex-wrap:wrap;
    gap:6px;
}

.feedback-site .rating-site-label{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    width:34px;
    height:34px;
    border:1px solid #e5e7eb;
    border-radius:18px;
    background:#fff;
    cursor:pointer;
    transition:all 0.2s ease;
    font-weight:700;
    color:#111827;
}

.feedback-site .rating-site-label span{
    display:flex;
    align-items:center;
    justify-content:center;
    width:100%;
    height:100%;
    border-radius:inherit;
    transition:all 0.2s ease;
}

.feedback-site .rating-site-label:hover{
    border-color:var(--azul);
    background:#f4f7ff;
}

.feedback-site .rating-site-label input{
    display:none;
}

.feedback-site .rating-site-label input:checked + span{
    background:var(--azul);
    color:#fff;
    box-shadow:0 0 0 2px var(--azul) inset;
}

.feedback-site textarea{
    width:100%;
    border:1px solid #e5e7eb;
    border-radius:6px;
    padding:8px 10px;
    font-family:inherit;
    resize:vertical;
    min-height:64px;
}

.btn-enviar-feedback-site{
    align-self:flex-start;
    padding:10px 14px;
    background:var(--azul);
    color:#fff;
    border:none;
    border-radius:8px;
    cursor:pointer;
    transition:all 0.2s ease;
    font-weight:700;
}

.btn-enviar-feedback-site:hover{ background:#1d4ed8; }

#mensagemFeedbackSite{
    padding:10px;
    border-radius:6px;
    font-size:14px;
}

#mensagemFeedbackSite.sucesso{
    background:#d1fae5;
    color:#065f46;
}

#mensagemFeedbackSite.erro{
    background:#fee2e2;
    color:#991b1b;
}

/* ===== LISTA DE FEEDBACKS (página de feedbacks) ===== */
.feedback-list{ display:flex; flex-direction:column; gap:16px; margin-top:32px; margin-bottom:24px; }
.feedback-card{
    padding:24px;
    border:1px solid #e5e7eb;
    border-radius:12px;
    background:#fff;
    box-shadow:0 4px 12px rgba(0,0,0,0.08);
    transition:all .2s ease;
}
.feedback-card:hover{
    box-shadow:0 8px 20px rgba(0,0,0,0.12);
    transform:translateY(-2px);
    border-color:var(--azul);
}
.feedback-card__top{ display:flex; justify-content:space-between; align-items:center; margin-bottom:16px; gap:16px; }
.feedback-score{ 
    font-weight:900; 
    font-size:1.3rem;
    color:var(--azul); 
    min-width:70px;
}
.feedback-date{ color:#9ca3af; font-size:0.85rem; white-space:nowrap; }
.feedback-comment{ margin:0; color:#111827; line-height:1.7; font-size:1rem; }

.footer-bottom{ text-align:center; padding-top:12px; border-top:1px solid rgba(255,255,255,0.06); color:rgba(255,255,255,0.7); }

/* ===== RESPONSIVIDADE ===== */
@media (max-width: 1024px){
    .featured-news{ grid-template-columns:1fr; }
    .news-grid{ grid-template-columns:repeat(auto-fill,minmax(300px,1fr)); }
    .ad-left,.ad-right{ display:none; }
    .container{ padding:0 16px; }
}

@media (max-width: 768px){
    .nav-menu{ display:none; } /* Ocultar menu desktop em tablets */
    .header-content{ 
        flex-direction:row; 
        gap:16px; 
        justify-content:space-between;
        padding:12px 16px;
    }
    .header-actions{ 
        justify-content:flex-end;
        gap:10px;
    }
    .logo{ order:-1; }
    .jc-logo{ height:48px; }
    .featured-content{ padding:20px; }
    .featured-content h2{ font-size:1.5rem; }
    .news-image{ height:200px; }
    .news-title{ font-size:1.1rem; }
    .news-content{ padding:16px 16px 12px 20px; }
    .section-title{ font-size:1.5rem; }
    .footer-content{ grid-template-columns:1fr; gap:16px; }
}

@media (max-width:480px){
    /* Header mobile compacto */
    .header-content{ padding:10px 12px; }
    .jc-logo{ height:40px; }
    .header-btn{ 
        padding:10px 14px; 
        font-size:0.9rem;
        border-radius:24px;
        display:inline-flex;
        align-items:center;
        justify-content:center;
    }
    .hamburger-btn{ 
        width:40px; 
        height:40px;
        font-size:1.05rem;
    }
    .header-actions{ gap:8px; }
    
    /* UOL Bar mobile */
    .uol-bar{ min-height:50px; padding:8px; }
    .uol-bar__logo img{ height:50px; }
    
    /* Container mobile */
    .container{ padding:0 12px; }
    
    /* Featured mobile */
    .featured-section{ padding:20px 0; }
    .featured-content{ padding:16px; }
    .featured-content h2{ font-size:1.3rem; margin-bottom:10px; }
    .news-excerpt{ font-size:0.95rem; }
    .category-tag{ 
        top:12px; 
        left:12px; 
        font-size:0.75rem; 
        padding:4px 8px;
    }
    
    /* Grid de notícias mobile */
    .news-section{ padding:24px 0; }
    .news-grid{ grid-template-columns:1fr; gap:16px; }
    .news-image{ height:180px; }
    .news-content{ padding:14px 14px 10px 18px; }
    .news-title{ font-size:1.05rem; }
    .news-meta{ font-size:0.85rem; gap:8px; }
    .news-excerpt{ font-size:0.95rem; line-height:1.6; }
    .red-bar{ width:3px; }
    
    /* Botões e categorias mobile */
    .category-btn{ padding:7px 12px; font-size:0.85rem; }
    .section-title{ font-size:1.4rem; }
    
    /* Footer mobile */
    .footer{ padding:20px 0; }
    .footer-content{ grid-template-columns:1fr; text-align:center; }
    .social-links{ justify-content:center; }
    
    /* Feedback mobile */
    .feedback-site .rating-site{ justify-content:center; }
    .feedback-site .rating-site-label{ width:32px; height:32px; }
    .feedback-site textarea{ font-size:0.95rem; }
    
    /* Favoritos mobile */
    .favorites-section{ padding:24px 0; }
    .favorites-grid{ grid-template-columns:1fr; gap:12px; }
    
    /* Sidebar mobile mais estreita */
    .sidebar{ width:280px; left:-300px; }
    
    /* Botão voltar mobile */
    .back-btn-fixed{ 
        top:8px; 
        left:8px; 
        width:36px; 
        height:36px; 
        padding:0;
        font-size:1.1rem;
    }
    .back-btn-fixed span{ display:none; } /* Ocultar texto, só ícone */
}

/* utilidade: ocultar texto visual para leitores de tela (sr-only) */
.sr-only{
    position:absolute!important; width:1px; height:1px; padding:0; margin:-1px; overflow:hidden; clip:rect(0 0 0 0); white-space:nowrap; border:0;
}

.favorite-btn i.fas {
    color: var(--vermelho);
}

.favorite-btn i.far {
    color: var(--cinza-escuro);
}

/* ===== MINI PODCAST (fixo) ===== */
.mini-podcast{
    position:fixed; right:20px; bottom:20px; z-index:1000;
    width:340px; max-width:calc(100% - 40px);
    background:var(--branco); border-radius:12px; padding:10px; display:flex; gap:12px; align-items:center;
    box-shadow:0 12px 40px rgba(0,0,0,0.18);
}
.mini-art img{ width:64px !important; height:64px !important; max-width:none !important; object-fit:cover; border-radius:8px; display:block; }
.mini-meta{ flex:1; min-width:0; }
.mini-title{ font-weight:700; color:var(--preto); font-size:0.95rem; margin-bottom:6px; white-space:nowrap; overflow:hidden; text-overflow:ellipsis; }
.mini-badges{ margin-bottom:6px; }
.live-badge{ background:linear-gradient(90deg,var(--vermelho),var(--laranja)); color:var(--branco); padding:4px 8px; font-weight:700; font-size:0.75rem; border-radius:999px; display:inline-block; }
.mini-controls{ display:flex; gap:8px; align-items:center; }
.pod-btn{ background:var(--azul); color:var(--branco); border:none; padding:8px 10px; border-radius:8px; cursor:pointer; display:inline-flex; align-items:center; gap:8px; min-height:44px; min-width:44px; }
.pod-progress{ flex:1; height:8px; background:var(--cinza-medio); border-radius:6px; cursor:pointer; position:relative; overflow:hidden; }
.pod-progress-filled{ height:100%; background:linear-gradient(90deg,var(--vermelho),var(--amarelo)); width:0%; }
.mini-time{ color:var(--cinza-escuro); font-size:0.85rem; min-width:40px; text-align:right; }
.pod-volume-container{ display:flex; gap:6px; align-items:center; }
.pod-volume-icon{ color:var(--azul); font-size:0.9rem; }
.pod-volume{ width:60px; height:6px; cursor:pointer; accent-color:var(--azul); }

@media (max-width:768px){
    .mini-podcast{ 
        left:10px; 
        right:10px; 
        bottom:12px; 
        width:auto;
        max-width:none;
        padding:10px;
        gap:10px;
    }
    .mini-art img{ 
        width:56px !important; 
        height:56px !important;
    }
    .mini-title{ font-size:0.9rem; }
    .mini-controls{
        gap:6px;
    }
    .pod-btn{ 
        width:40px;
        height:40px;
        padding:0;
        justify-content:center;
        align-items:center;
        font-size:1rem;
    }
    .pod-volume-container{ display:none; }
}

@media (max-width:480px){
    .mini-podcast{ 
        padding:8px;
        gap:8px;
    }
    .mini-art img{ 
        width:48px !important; 
        height:48px !important;
    }
    .mini-title{ font-size:0.85rem; }
    .live-badge{ font-size:0.7rem; padding:3px 6px; }
    .pod-btn{ 
        width:36px;
        height:36px;
        font-size:0.95rem;
    }
}

/* Favoritar na página de notícia */
.cartao-noticia{ position:relative; }
.title-row{ display:flex; align-items:center; gap:12px; justify-content:space-between; }
.noticia-favorite-btn{ position:relative; top:0; right:0; background:var(--branco); border:2px solid var(--cinza-medio); border-radius:8px; padding:8px 10px; cursor:pointer; display:inline-flex; align-items:center; gap:8px; }
.noticia-favorite-btn i.fas{ color:var(--vermelho); }
.noticia-favorite-btn:hover{ transform:translateY(-3px); border-color:var(--vermelho); }

@media (max-width:768px){
    .title-row{ flex-direction:column; align-items:flex-start; gap:8px; }
    .noticia-favorite-btn{ align-self:flex-end; }
}

/* Override: não deixar o botão notícia ficar completamente vermelho quando ativo
   (o estilo `.favorite-btn.active` torna todo o botão vermelho por padrão) */
.noticia-favorite-btn.active{
    background:var(--branco) !important;
    color:var(--preto) !important;
    border-color:var(--vermelho) !important;
}
.noticia-favorite-btn.active i{
    color:var(--vermelho) !important;
}

.hamburger-btn{
    background:transparent;
    border:2px solid var(--cinza-medio);
    color:var(--preto);
    width:42px;
    height:42px;
    border-radius:10px;
    display:inline-flex;
    align-items:center;
    justify-content:center;
    cursor:pointer;
    transition:all .2s ease;
    /* Touch target size para mobile */
    min-width:44px;
    min-height:44px;
}

.hamburger-btn:hover{
    border-color:var(--vermelho);
    color:var(--vermelho);
    transform:translateY(-1px);
}

/* ===== MELHORIAS PARA TOUCH DEVICES ===== */
@media (hover: none) and (pointer: coarse) {
    /* Aumentar área de toque em dispositivos touch */
    .header-btn,
    .category-btn,
    .favorite-btn,
    .read-more-btn,
    .pod-btn {
        min-height:44px;
        min-width:44px;
    }
    
    /* Remover efeitos hover em touch */
    .news-card:hover,
    .header-btn:hover,
    .category-btn:hover {
        transform:none;
    }
    
    /* Melhorar feedback visual para tap */
    .news-card:active {
        transform:scale(0.98);
        transition:transform 0.1s;
    }
    
    .header-btn:active,
    .category-btn:active,
    .favorite-btn:active {
        opacity:0.8;
    }
}