/* Black November 2026 (src/templates/components/black_november.php).
   Preto com o verde, o teal e o azul da logo. Só existe durante a campanha. */
.bn-overlay{position:fixed;inset:0;z-index:9990;background:rgba(2,6,23,.62);display:flex;align-items:center;justify-content:center;padding:16px}
.bn-overlay[hidden]{display:none}
.bn-box{position:relative;width:100%;max-width:600px;max-height:calc(100dvh - 32px);overflow:auto;border-radius:20px;background:#050a12;border:1px solid #1e293b;box-shadow:0 30px 80px rgba(0,0,0,.5);color:#e2e8f0;font-family:'Plus Jakarta Sans',system-ui,sans-serif}
.bn-box--app{max-width:720px}
.bn-topo{height:6px;background:linear-gradient(90deg,#00BB82 0%,#009A99 50%,#0175B2 100%)}
.bn-corpo{padding:28px 32px;display:flex;flex-direction:column;gap:16px}
.bn-x{position:absolute;top:14px;right:12px;width:44px;height:44px;border:0;border-radius:22px;background:transparent;color:#94a3b8;font-size:24px;line-height:1;cursor:pointer}
.bn-x:hover{color:#fff;background:rgba(255,255,255,.06)}
.bn-selo{align-self:flex-start;font-size:12px;font-weight:800;letter-spacing:3px;color:#050a12;background:#00BB82;padding:6px 10px;border-radius:6px}
.bn-prazo{font-size:13px;color:#94a3b8;margin-left:10px}
.bn-titulo{margin:0;font-size:36px;font-weight:800;line-height:1.08;color:#f8fafc}
.bn-texto{margin:0;font-size:15px;line-height:1.55;color:#cbd5e1}
.bn-texto strong{color:#fff}
.bn-verde{color:#00BB82!important}
.bn-planos{display:flex;flex-direction:column;gap:8px}
.bn-plano{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px 16px;border-radius:12px;border:1px solid #1e293b;color:inherit;text-decoration:none}
.bn-plano:hover{border-color:#00BB82}
.bn-plano.is-fixo:hover{border-color:#1e293b}
.bn-plano.is-destaque.is-fixo:hover{border-color:#00BB82}
.bn-plano.is-destaque{border:2px solid #00BB82;background:rgba(0,187,130,.08)}
.bn-plano-nome{font-size:15px;font-weight:700;color:#fff}
.bn-plano-sub{display:block;font-size:12px;font-weight:400;color:#94a3b8;margin-top:2px}
.bn-plano-preco{text-align:right;white-space:nowrap}
.bn-riscado{display:block;font-size:12px;color:#64748b;text-decoration:line-through}
.bn-valor{display:block;font-size:18px;font-weight:800;color:#fff}
.bn-mes{display:block;font-size:12px;color:#00BB82}
.bn-cta{display:flex;align-items:center;justify-content:center;min-height:52px;border-radius:12px;background:linear-gradient(100deg,#00BB82 0%,#009A99 100%);color:#050a12!important;font-size:16px;font-weight:800;text-decoration:none;border:0;cursor:pointer}
.bn-cta:hover{filter:brightness(1.08)}
.bn-cta[aria-disabled="true"]{background:#1e293b;color:#94a3b8!important;cursor:not-allowed;filter:none}
.bn-rodape{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap;font-size:12px;color:#64748b}
.bn-link{font-size:14px;color:#94a3b8;background:none;border:0;cursor:pointer;text-decoration:underline;padding:8px 0}
.bn-link:hover{color:#fff}
.bn-link:focus{outline:none}
.bn-link:focus-visible,.bn-x:focus-visible,.bn-plano:focus-visible,.bn-cta:focus-visible,.bn-faixa-btn:focus-visible{outline:2px solid #00BB82;outline-offset:2px;border-radius:8px}
.bn-linha{display:flex;flex-direction:column;gap:4px;padding:12px 14px;border-radius:12px;border:1px solid #134e4a;background:rgba(0,154,153,.08);font-size:14px}
.bn-aviso{margin:0;font-size:13px;color:#fbbf24}
/* Faixa no topo do app */
.bn-faixa{position:relative;display:flex;align-items:center;justify-content:center;gap:14px;flex-wrap:wrap;padding:8px 52px;background:#050a12;border-bottom:2px solid #00BB82;color:#e2e8f0;font-size:14px;font-family:'Plus Jakarta Sans',system-ui,sans-serif}
.bn-faixa[hidden]{display:none}
.bn-faixa .bn-selo{align-self:center;font-size:11px;line-height:1;padding:5px 8px}
.bn-faixa-btn{font-size:13px;font-weight:700;color:#050a12;background:#fff;padding:7px 14px;border-radius:8px;border:0;cursor:pointer}
.bn-faixa .bn-x{top:50%;transform:translateY(-50%);right:4px}
@media (max-width:640px){
  .bn-corpo{padding:24px 20px}
  .bn-titulo{font-size:28px}
  .bn-faixa{font-size:13px;justify-content:flex-start;padding-right:48px}
}
@media (prefers-reduced-motion:no-preference){.bn-box{animation:bn-entra .22s ease-out}}
@keyframes bn-entra{from{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}
