/* Componentes compartilhados pelas páginas de evidências PNTP 2026.
   Mantido separado do tema global para reduzir risco de regressão. */
.audit-shell{min-width:0}
.audit-lead{max-width:980px;line-height:1.62}
.audit-kpis{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin:16px 0}
.audit-kpi{min-width:0;padding:15px 16px;border:1px solid #d8e6dc;border-radius:12px;background:#fff}
.audit-kpi strong{display:block;color:#15582b;font-size:1.55rem;line-height:1.05}
.audit-kpi span{display:block;margin-top:5px;color:#596a60;font-size:.8rem;line-height:1.35}
.audit-method{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:8px;margin:14px 0 20px}
.audit-weight{padding:12px;border-radius:10px;background:#eef7f0;color:#274b32;text-align:center}
.audit-weight strong{display:block;color:#15582b;font-size:1.12rem}
.audit-weight span{display:block;margin-top:3px;font-size:.73rem;line-height:1.3}
.audit-disclaimer{padding:13px 15px;border:1px solid #ebcd7b;border-left:5px solid #b77d00;border-radius:9px;background:#fff9e8;color:#624b12;font-size:.88rem;line-height:1.55}
.audit-toolbar{display:flex;align-items:flex-end;gap:12px;flex-wrap:wrap;margin:18px 0}
.audit-toolbar label{display:flex;flex:1 1 190px;flex-direction:column;gap:5px;color:#43584b;font-size:.76rem;font-weight:700}
.audit-toolbar input,.audit-toolbar select{width:100%;min-height:42px;padding:9px 10px;border:1px solid #bfcec3;border-radius:8px;background:#fff;color:#243d2c;font:inherit;font-size:.9rem}
.audit-toolbar button{min-height:42px;padding:9px 14px;border:1px solid #17652e;border-radius:8px;background:#fff;color:#15582b;font-weight:700;cursor:pointer}
.audit-toolbar button:hover,.audit-toolbar button:focus-visible{background:#edf7ef}
.audit-count{margin:-7px 0 15px;color:#5b6d62;font-size:.82rem}
.audit-groups{display:flex;flex-direction:column;gap:18px}
.audit-group{overflow:hidden;border:1px solid #dbe6de;border-radius:14px;background:#fff;box-shadow:0 5px 18px rgba(20,78,42,.045)}
.audit-group-head{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:14px 17px;border-bottom:1px solid #e5ede7;background:#f4f9f5}
.audit-group-head h2,.audit-group-head h3{margin:0;color:#16562b;font-size:1.02rem}
.audit-group-head span{color:#65756c;font-size:.75rem}
.audit-card-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0}
.audit-item{display:flex;min-width:0;flex-direction:column;gap:10px;padding:17px;border-bottom:1px solid #edf2ee}
.audit-item:nth-child(odd){border-right:1px solid #edf2ee}
.audit-item-head{display:flex;align-items:flex-start;gap:10px}
.audit-code{display:inline-grid;flex:0 0 42px;min-height:28px;place-items:center;padding:4px 7px;border-radius:7px;background:#17652e;color:#fff;font-size:.75rem;font-weight:800}
.audit-item-title{min-width:0;flex:1}
.audit-item-title h3{margin:0;color:#173d26;font-size:.96rem;line-height:1.35}
.audit-tags{display:flex;gap:6px;flex-wrap:wrap;margin-top:6px}
.audit-tag{display:inline-flex;align-items:center;min-height:23px;padding:3px 8px;border-radius:999px;background:#edf3ef;color:#4b5e52;font-size:.68rem;font-weight:700}
.audit-tag.required{background:#e9f3eb;color:#16552a}
.audit-tag.recommended{background:#f7f0df;color:#75530d}
.audit-status{display:inline-flex;align-items:center;align-self:flex-start;gap:6px;padding:4px 9px;border-radius:999px;font-size:.72rem;font-weight:800}
.audit-status::before{content:"";width:7px;height:7px;border-radius:50%;background:currentColor}
.audit-status.ok{background:#e7f4ea;color:#17652e}
.audit-status.warn{background:#fff4d7;color:#7a5600}
.audit-status.bad{background:#fde8e6;color:#9b261e}
.audit-status.unknown{background:#edf0ee;color:#58645d}
.audit-requirement{margin:0;color:#364c3e;font-size:.82rem;line-height:1.52}
.audit-checks{margin:0;padding-left:18px;color:#55675c;font-size:.76rem;line-height:1.48}
.audit-checks li+li{margin-top:3px}
.audit-meta{display:flex;gap:7px;flex-wrap:wrap;color:#5a6b61;font-size:.72rem}
.audit-meta span{padding:5px 8px;border-radius:6px;background:#f5f7f5}
.audit-message{margin:0;padding:8px 10px;border-left:3px solid #d5aa41;background:#fffaf0;color:#654f1c;font-size:.74rem;line-height:1.45}
.audit-actions{display:flex;gap:8px;flex-wrap:wrap;margin-top:auto}
.audit-link{display:inline-flex;align-items:center;justify-content:center;min-height:38px;padding:8px 12px;border:1px solid #17652e;border-radius:8px;background:#17652e;color:#fff!important;font-size:.78rem;font-weight:800;text-decoration:none!important}
.audit-link.secondary{background:#fff;color:#15582b!important}
.audit-empty{grid-column:1/-1;padding:24px;text-align:center;color:#617168}
.audit-guide{display:grid;grid-template-columns:minmax(210px,.7fr) minmax(0,1.3fr);gap:18px;margin:0 0 16px;padding:16px 18px;border:1px solid #d9e6dc;border-left:5px solid #17652e;border-radius:11px;background:#f8fbf9}
.audit-guide h2{margin:0 0 7px;color:#15582b;font-size:1rem}
.audit-guide p{margin:0;color:#43564a;font-size:.82rem;line-height:1.52}
.audit-guide ul{margin:0;padding-left:19px;color:#43564a;font-size:.8rem;line-height:1.5}
.audit-guide li+li{margin-top:4px}
.audit-mini-meta{display:flex;gap:7px;flex-wrap:wrap;margin-top:10px}
.audit-mini-meta span{padding:4px 8px;border-radius:999px;background:#e9f3eb;color:#1f5b31;font-size:.69rem;font-weight:700}
.notice.notice-danger{border-color:#efb2ad;background:#fff0ef;color:#88251e}
.notice.notice-ok{border-color:#a8d5b4;background:#edf8ef;color:#185b2c}
.doc-actions{display:flex;gap:6px;flex-wrap:wrap;margin-top:5px}
.doc-actions a{white-space:nowrap}
.justificativa-texto{display:block;max-width:360px;margin-bottom:5px;white-space:pre-wrap}

@media(max-width:900px){
 .audit-kpis{grid-template-columns:repeat(2,minmax(0,1fr))}
 .audit-method{grid-template-columns:repeat(3,minmax(0,1fr))}
 .audit-card-grid{grid-template-columns:1fr}
 .audit-item:nth-child(odd){border-right:0}
}
@media(max-width:680px){
 .audit-guide{grid-template-columns:1fr}
 .audit-method{grid-template-columns:repeat(2,minmax(0,1fr))}
 .audit-toolbar>*{flex-basis:100%}
 .audit-toolbar button{width:100%}
 .actions .spacer{display:none}
 .actions{align-items:stretch}
 .actions>span:not(.spacer){width:100%}
 .actions button{flex:1 1 80px;min-height:40px}
}
@media(max-width:420px){
 .audit-kpis,.audit-method{grid-template-columns:1fr}
 .audit-item{padding:14px}
 .audit-item-head{flex-wrap:wrap}
 .audit-status{margin-left:52px}
}
@media(prefers-reduced-motion:reduce){.audit-shell *{scroll-behavior:auto!important;transition:none!important}}
