/* Dashboard · Central de novidades (mockup aprovado em 24/10/2026: docs/mockups/dashboard/central-de-novidades.html). Letra mínima 15px (regra 18).
   Feixe de luz: span.rk-onda dentro de cada .nv-card (feixe-onda.css); cenário animado no cartão do topo (regras 11 e 20). */
.nv-wrap{container:nv / inline-size;display:flex;flex-direction:column;gap:18px;--nv-b:#29313d;--nv-s:#0f131c;--nv-s2:#141a25;--nv-s3:#1a2130;--nv-mid:#a7b0bd;--nv-low:#8591a1;--nv-ci:#4fd1e0;--nv-go:#e3b341;--nv-ve:#43c79b;--nv-or:#ff7a2f;--nv-re:#ff6b6b}
.nv-card{position:relative;overflow:hidden;isolation:isolate;background:var(--nv-s);border:1px solid var(--nv-b);border-radius:13px;padding:22px}
.nv-cena{background:linear-gradient(180deg,#101726 0%,var(--nv-s) 100%)}
.nv-cena::before{content:"";position:absolute;inset:0 0 auto 0;height:4px;background:linear-gradient(90deg,var(--nv-ci),var(--nv-go),var(--nv-or))}
.nv-svg{position:absolute;right:0;top:0;height:100%;width:min(46%,420px);opacity:.9;pointer-events:none}
.nv-fx{animation:nv-sobe 5s ease-in-out infinite}.nv-fx:nth-child(2){animation-delay:-1.6s}.nv-fx:nth-child(3){animation-delay:-3.2s}
@keyframes nv-sobe{0%{transform:translateY(8px);opacity:0}30%{opacity:1}100%{transform:translateY(-26px);opacity:0}}
.nv-h1{position:relative;margin:0 0 8px;font-size:28px;line-height:1.15}
.nv-lead{position:relative;margin:0;color:var(--nv-mid);max-width:60ch;font-size:15px}
.nv-tags{position:relative;display:flex;gap:8px;flex-wrap:wrap;align-items:center;margin-top:14px}
.nv-tag{font-size:15px;border:1px solid var(--nv-b);border-radius:999px;padding:4px 12px;color:var(--nv-mid)}
.nv-tag.ok{border-color:rgba(67,199,155,.32);color:var(--nv-ve);background:rgba(67,199,155,.12)}
.nv-aviso{margin:0;padding:10px 14px;border:1px solid rgba(227,179,65,.32);border-radius:10px;background:rgba(227,179,65,.12);color:var(--nv-go);font-size:15px}
.nv-resumo{display:grid;grid-template-columns:repeat(4,1fr);gap:12px}
.nv-cont{padding:16px;display:grid;gap:2px}
.nv-k{color:var(--nv-mid);font-size:15px}.nv-s{color:var(--nv-low);font-size:15px}
.nv-v{font-size:32px;font-weight:800;line-height:1.1;font-variant-numeric:tabular-nums}
.nv-cont.nv-novo .nv-v{color:var(--nv-ci)}.nv-cont.nv-dif .nv-v{color:var(--nv-go)}.nv-cont.nv-man .nv-v{color:var(--nv-or)}.nv-cont.nv-ok .nv-v{color:var(--nv-ve)}
.nv-t{margin:0 0 14px;font-size:15px;letter-spacing:.06em;text-transform:uppercase;color:var(--nv-mid);display:flex;justify-content:space-between;align-items:center;gap:12px;flex-wrap:wrap}
.nv-t small{font-size:15px;letter-spacing:0;text-transform:none;color:var(--nv-low);font-weight:400}
.nv-btn{font:600 15px inherit;font-family:inherit;height:38px;padding:0 16px;display:inline-flex;align-items:center;justify-content:center;border-radius:9px;border:1px solid var(--nv-b);color:inherit;background:var(--nv-s3);cursor:pointer;white-space:nowrap}
.nv-btn:disabled{opacity:.55;cursor:default}
.nv-pri{background:var(--nv-ci);border-color:var(--nv-ci);color:#06222a}
.nv-btn:focus-visible,.nv-filtro:focus-visible{outline:2px solid var(--nv-ci);outline-offset:2px}
.nv-filtros{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:14px}
.nv-filtro{font:600 15px inherit;font-family:inherit;padding:5px 12px;border-radius:8px;border:1px solid var(--nv-b);color:var(--nv-mid);background:var(--nv-s2);cursor:pointer}
.nv-filtro.on{background:var(--nv-ci);border-color:var(--nv-ci);color:#06222a}
/* fila: colunas fixas, tudo na mesma linha (regra 25) */
.nv-fila{display:flex;flex-direction:column;gap:10px}
.nv-alerta{display:grid;grid-template-columns:150px minmax(0,1.3fr) minmax(0,1.5fr) 190px;gap:16px;align-items:start;background:var(--nv-s2);border:1px solid var(--nv-b);border-radius:12px;padding:14px 16px}
.nv-tipo{display:flex;flex-direction:column;gap:6px;align-items:flex-start}
.nv-pill{font-size:15px;font-weight:600;border-radius:8px;padding:3px 10px;border:1px solid;white-space:nowrap}
.nv-pill.nv-novo{color:var(--nv-ci);border-color:rgba(79,209,224,.34);background:rgba(79,209,224,.10)}
.nv-pill.nv-dif{color:var(--nv-go);border-color:rgba(227,179,65,.32);background:rgba(227,179,65,.12)}
.nv-pill.nv-evt{color:#ffb082;border-color:rgba(255,122,47,.32);background:rgba(255,122,47,.10)}
.nv-quando{color:var(--nv-low);font-size:15px}
.nv-quem{display:flex;gap:12px;align-items:flex-start;min-width:0}
.nv-ic{width:36px;height:36px;border-radius:7px;border:1px dashed rgba(255,122,47,.32);color:#ffb082;font-weight:600;text-align:center;line-height:34px;flex:0 0 auto}
.nv-quem b{display:block;font-weight:600;overflow-wrap:anywhere}.nv-quem span{color:var(--nv-mid);display:block;font-size:15px}.nv-det{color:var(--nv-low)!important}
.nv-onde{display:flex;flex-direction:column;gap:6px;min-width:0}.nv-t2{color:var(--nv-low);font-size:15px}
.nv-lugares{display:flex;flex-wrap:wrap;gap:6px}
.nv-lug{font-size:15px;border-radius:7px;padding:2px 9px;border:1px solid var(--nv-b);color:var(--nv-mid)}
.nv-lug.tem{border-color:rgba(67,199,155,.32);color:var(--nv-ve);background:rgba(67,199,155,.12)}
.nv-lug.falta{border-color:rgba(255,107,107,.32);color:var(--nv-re);background:rgba(255,107,107,.10)}
.nv-acoes{display:flex;flex-direction:column;gap:8px}
.nv-dica{color:var(--nv-low);font-size:15px;margin:10px 0 0}
/* fontes */
.nv-fontes{display:grid;grid-template-columns:minmax(0,1.4fr) minmax(0,1fr) 190px 190px}
.nv-fontes>div{padding:10px 8px;border-bottom:1px solid var(--nv-b);display:flex;align-items:center;min-width:0;font-size:15px}
.nv-h{font-size:15px;color:var(--nv-low);text-transform:uppercase;letter-spacing:.06em}
.nv-dot{width:10px;height:10px;border-radius:50%;margin-right:8px;flex:0 0 auto}
.nv-dot.v{background:var(--nv-ve)}.nv-dot.a{background:var(--nv-go)}.nv-dot.m{background:var(--nv-or)}.nv-dot.r{background:var(--nv-re)}
/* gavetas fechadas (regra 30) */
.nv-gav{padding:0 22px}
.nv-gav summary{cursor:pointer;padding:16px 0;font-weight:600;list-style:none;display:flex;justify-content:space-between;gap:12px;font-size:15px}
.nv-gav summary::-webkit-details-marker{display:none}
.nv-gav summary::after{content:"+";color:var(--nv-ci);font-size:20px}
.nv-gav[open] summary::after{content:"\2212"}
.nv-corpo{padding:0 0 18px;color:var(--nv-mid);font-size:15px}
@container nv (max-width:760px){
  .nv-resumo{grid-template-columns:repeat(2,1fr)}
  .nv-alerta{grid-template-columns:1fr;gap:10px}
  .nv-acoes{flex-direction:row;flex-wrap:wrap}
  .nv-fontes{grid-template-columns:minmax(0,1fr) minmax(0,1fr) 150px}
  .nv-fontes>.nv-c3{display:none}
  .nv-svg{opacity:.3}
}
@media (prefers-reduced-motion:reduce){.nv-fx{animation:none;opacity:.7}}
