/* Proteção: Backup (Acronis), Antivírus (Bitdefender), Segurança Microsoft — usa as classes bl-* (kpis, tags, gráficos) */
:root { --pt-ok: #2e8b57; --pt-warn: #d99a1e; --pt-err: #d64545; --pt-gray: #9a9893; }
.dark { --pt-ok: #4caf7a; --pt-warn: #e8ad3a; --pt-err: #e66767; --pt-gray: #77756f; }
.bl-kpi.warn { border-color: hsl(var(--warning) / .6); }
.pt-gray { background: hsl(var(--muted)); color: hsl(var(--muted-fg)); }
.pt-cmd { display: flex; align-items: center; gap: 10px; margin-bottom: 14px; }
.pt-bad { color: hsl(var(--danger)); font-weight: 600; }
.pt-when { margin-left: auto; font-size: 12px; white-space: nowrap; }
.pt-top { max-width: 320px; font-size: 12.5px; }
.pt-s { font-size: 11.5px; }
.pt-path { font-size: 11.5px; max-width: 280px; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; font-family: "JetBrains Mono", ui-monospace, monospace; }
.pt-tbl td { vertical-align: middle; font-size: 13px; }
.pt-tbl tbody tr[data-go] { cursor: pointer; }
.pt-meter { display: inline-block; width: 70px; height: 6px; background: hsl(var(--muted)); vertical-align: middle; margin-right: 4px; overflow: hidden; }
.pt-meter i { display: block; height: 100%; background: var(--bl-1); }
.pt-meter.warn i { background: var(--pt-warn); }
.pt-meter.bad i { background: var(--pt-err); }
.pt-mods { display: inline-flex; gap: 3px; }
.pt-mods span { font-size: 10.5px; font-weight: 700; padding: 1px 4px; border: 1px solid hsl(var(--border)); letter-spacing: .02em; }
.pt-mods .on { color: hsl(var(--success)); border-color: hsl(var(--success) / .4); }
.pt-mods .off { color: hsl(var(--muted-fg)); text-decoration: line-through; opacity: .7; }
.pt-lim tbody tr:nth-child(n+11) { display: none; }
.pt-lim.pt-all tbody tr { display: table-row; }
.pt-more { padding: 8px 16px; border-top: 1px solid hsl(var(--border)); }
@media (max-width: 1100px) { .pt-g3 { grid-template-columns: 1fr; } }
.pt-kpis { grid-template-columns: repeat(5, minmax(0, 1fr)); }
@media (max-width: 1250px) { .pt-kpis { grid-template-columns: repeat(3, minmax(0, 1fr)); } }
@media (max-width: 700px) { .pt-kpis { grid-template-columns: 1fr 1fr; } }
.pt-hb .bl-hrow { grid-template-columns: minmax(90px, 45%) 1fr auto; }
.pt-hb .bl-hrow .v { min-width: 44px; }
.pt-nw { white-space: nowrap; }
.pt-tbl td .bl-tag { min-width: 0; }
.pt-flags { margin-top: 6px; font-size: 12.5px; }
