/*
Theme Name:        BuziNews Site MainHome
Theme URI:         https://buzinews.com
Author:            BuziNews
Author URI:        https://buzinews.com
Description:       Tema front‑end responsivo para o portal BuziNews – cards, hero, sidebar, menu desktop com sub‑menus flutuantes.
Version:           2.1
Requires at least: 5.0
License:           GPL-2.0-or-later
License URI:       http://www.gnu.org/licenses/gpl-2.0.html
Text Domain:       buzinews-site-mainhome
*/

/* ───── Paleta & fontes ───── */
:root{
  --bn-blue:#0057FF;
  --bn-red:#E20505;
  --bn-dark:#0A0A0F;
  --bn-light:#F9F9FA;
  --bn-font:'Inter',sans-serif;
}

/* ───── Reset básico ───── */
*,
*::before,
*::after{box-sizing:border-box;margin:0;padding:0}

body{
  font-family:var(--bn-font);
  color:var(--bn-dark);
  background:#FFFFFF;
}

/* ───── Navbar ───── */
.navbar-brand img{height:32px}
.navbar{box-shadow:0 2px 8px rgba(0,0,0,.06)}

/* ───── Sidebar mobile ───── */
.sidebar{
  position:fixed;
  top:0;left:0;
  width:260px;
  height:100%;
  background:#FFFFFF;
  transform:translateX(-100%);
  transition:transform .25s ease;
  overflow-y:auto;
  z-index:1040;
  box-shadow:2px 0 6px rgba(0,0,0,.08);
}

body.sidebar-open .sidebar{transform:none}
#sidebar-backdrop{
  content:"";
  position:fixed;
  inset:0;
  background:rgba(0,0,0,.45);
  backdrop-filter:blur(2px);
  opacity:0;visibility:hidden;
  transition:opacity .25s ease;
  z-index:1030;
}
body.sidebar-open #sidebar-backdrop{opacity:1;visibility:visible}

/* ───── Cards dos posts ───── */
.post-card .card-img-top{
  width:100%;height:180px;object-fit:cover
}
.post-card .card-title{font-weight:600;font-size:1rem;margin-bottom:.5rem}
.post-card .card-text{font-size:.875rem}

/* ───── Menu desktop com sub‑menus ───── */
@media(min-width:992px){
  .primary-nav,
  .primary-nav ul{list-style:none;margin:0;padding:0}
  .primary-nav{display:flex;gap:1.5rem;align-items:center;font-weight:600;font-size:15px}
  .primary-nav>li>a{display:block;padding:.75rem .25rem;color:var(--bn-dark);text-decoration:none;position:relative;transition:color .15s}
  .primary-nav>li>a:hover{color:var(--bn-blue)}
  .primary-nav>li.menu-item-has-children>a::after{content:"▼";font-size:9px;margin-left:6px;vertical-align:middle;transition:transform .2s}
  .primary-nav li ul.sub-menu{
      position:absolute;top:100%;left:0;min-width:220px;background:#fff;border:1px solid #E9E9F0;
      border-radius:8px;box-shadow:0 4px 12px rgba(0,0,0,.08);
      opacity:0;visibility:hidden;transform:translateY(6px);transition:all .18s;z-index:999
  }
  .primary-nav li ul.sub-menu::before{
      content:"";position:absolute;top:-6px;left:24px;border:6px solid transparent;
      border-bottom-color:#fff;filter:drop-shadow(0 -1px 1px rgba(0,0,0,.05))
  }
  .primary-nav li ul.sub-menu li a{
      padding:.55rem 1rem;font-weight:500;color:#333;white-space:nowrap;display:block
  }
  .primary-nav li ul.sub-menu li a:hover{background:var(--bn-light);color:var(--bn-blue)}
  /* visibilidade quando aberto */
  .primary-nav li.submenu-open>ul.sub-menu{opacity:1;visibility:visible;transform:none}
  .primary-nav li.submenu-open>a::after{transform:rotate(180deg)}
}

/* ───── Hero da single ───── */
.hero-img{max-width:760px;width:100%;margin:0 auto 1.5rem}

/* ───── Conteúdo principal espaçamento ───── */
.content{padding-top:5rem}

/* ───── Paginação centralizada ───── */
.pagination{gap:.5rem}
.pagination .page-numbers{padding:.5rem .75rem;border:1px solid #dee2e6;border-radius:.25rem;text-decoration:none}
.pagination .current,.pagination .page-numbers:hover{background:var(--bn-blue);color:#fff;border-color:var(--bn-blue)}

/* ───── Navbar menu one-line fix ───── */
@media(min-width:992px){
  .navbar .navbar-nav{
    flex-direction:row !important;
  }
  .navbar .navbar-nav > li{
    margin-left:1rem;
  }
}

/* ───── Hero wrapper bg ───── */
.hero-wrapper{background:var(--bn-light,#F9F9FA);padding:1rem 0;text-align:center}
.hero-wrapper .hero-img{margin:0 auto}

/* ───── Post navigation (prev/next) ───── */
.post-nav .nav-article{max-width:160px;text-align:center}
.post-nav .nav-article img{width:100%;height:90px;object-fit:cover;border-radius:.25rem}
.post-nav .nav-article small{display:block;font-size:.75rem;margin-top:.25rem;font-weight:600;color:var(--bn-dark)}

/* ───── Footer layout desktop ───── */
@media(min-width:992px){
  .site-footer-inner{display:flex;align-items:center;justify-content:space-between}
  .site-footer-inner .footer-nav{order:1}
  .site-footer-inner .footer-credits{order:2;margin-left:auto}
}

/* ───── Navbar search popover ───── */
.navbar .search-pop{
  position:absolute;top:100%;right:.75rem;width:260px;background:#fff;border:1px solid #dee2e6;
  border-radius:.25rem;box-shadow:0 4px 12px rgba(0,0,0,.1);padding:.75rem;display:none;z-index:1050
}
.navbar.search-open .search-pop{display:block}
.navbar .search-pop input{width:100%;margin-bottom:.5rem}

/* ───── Sub-menu offset (abre logo abaixo) ───── */
@media(min-width:992px){
  .primary-nav>li{position:relative}
  .primary-nav li ul.sub-menu{top:calc(100% + 4px);}
}

/* ───── Navbar ícones pop genérico ───── */
.navbar .icon-pop{
  position:absolute;top:100%;right:0;width:220px;background:#fff;border:1px solid #dee2e6;border-radius:.25rem;
  box-shadow:0 4px 12px rgba(0,0,0,.1);padding:.5rem 0;display:none;z-index:1050
}
.navbar.icon-open .icon-pop{display:block}

/* ───── Footer alinhamento final ───── */
@media(min-width:992px){
  .site-footer-inner{display:flex;justify-content:space-between;align-items:center}
  .site-footer-inner .footer-credits{text-align:left}
  .site-footer-inner .footer-nav{text-align:right}
}

/* ───── Icon pop alignment ───── */
.navbar .btn-icon{position:relative}
.navbar .btn-icon .icon-pop{right:0;top:calc(100% + 6px)}
/* Close arrow triangle */
.navbar .btn-icon .icon-pop::before{
  content:"";position:absolute;top:-6px;right:16px;border:6px solid transparent;border-bottom-color:#fff;
  filter:drop-shadow(0 -1px 1px rgba(0,0,0,.05));
}

/* Footer nav horizontal */
.footer-nav{
  list-style:none;margin:0;padding:0;display:flex;gap:1rem;flex-wrap:wrap;justify-content:flex-end;
}
.footer-nav li{display:inline}
.footer-nav a{text-decoration:none;color:var(--bn-dark);}
.footer-nav a:hover{color:var(--bn-blue);}

/* --- Hero / imagens dentro do artigo -------------------------------- */
.hero-img img,
.single-post .wp-block-image img{
  width: 100% !important;      /* nunca estica além do contêiner   */
  height: auto !important;     /* mantém proporção original        */
  object-fit: contain !important; /* garante que não “corte” nada  */
}

/* --- Pop-over do usuário ------------------------------------------- */
.btn-icon{position:relative !important;}
.user-pop.icon-pop{
  right:0 !important;
  top:calc(100% + 6px) !important;
  width:200px !important;
}
/* triângulo */
.user-pop.icon-pop::before{
  content:"";
  position:absolute;
  top:-6px; right:16px;
  border:6px solid transparent;
  border-bottom-color:#fff;
  filter:drop-shadow(0 -1px 1px rgba(0,0,0,.05));
}


/* --- v2.1 hero img proportional --- */
.hero-img img,
.single-post .wp-block-image img{
  width:100% !important;
  height:auto !important;
  object-fit:contain !important;
}

/* --- v2.1 user pop -------- */
.btn-icon{position:relative !important;}
.user-pop.icon-pop{
  right:0 !important;
  top:calc(100% + 6px) !important;
  width:200px !important;
}
.user-pop.icon-pop::before{
  content:"";
  position:absolute;
  top:-6px; right:16px;
  border:6px solid transparent;
  border-bottom-color:#fff;
  filter:drop-shadow(0 -1px 1px rgba(0,0,0,.05));
}
