/* Vigilancia de procesos: tarjetas, filtros e historial. Usa las variables del tema (oscuro por defecto). */
.vg-bar{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:12px;margin:0 0 12px}
.vg-summary{margin:0;color:var(--muted);font-size:.95rem}
.vg-filters{display:flex;flex-wrap:wrap;gap:8px;margin:0 0 14px}
.vg-pill{border:1px solid var(--line);background:transparent;color:var(--muted);border-radius:999px;padding:6px 14px;font:inherit;font-size:.88rem;cursor:pointer}
.vg-pill.on{background:var(--gold);border-color:var(--gold);color:#1b1608;font-weight:700}
.vg-pill:focus-visible,.vg-modal button:focus-visible{outline:2px solid var(--gold);outline-offset:2px}
.vg-list{display:grid;grid-template-columns:repeat(auto-fill,minmax(340px,1fr));gap:14px;margin:0 0 18px}
.vg-card{position:relative;border:1px solid var(--line);border-left:4px solid var(--gold);border-radius:12px;background:var(--panel);padding:16px 18px;display:flex;flex-direction:column;gap:12px}
.vg-card.vg-ok{border-left-color:#3fbf8f}.vg-card.vg-incidencia{border-left-color:#e07a6a}.vg-card.vg-parcial{border-left-color:#e0b04a}.vg-card.vg-pausado{border-left-color:var(--line);opacity:.88}.vg-card.vg-revisando{border-left-color:var(--blue,#2b6bb8)}
.vg-head{display:flex;justify-content:space-between;gap:10px;align-items:flex-start}
.vg-title{margin:0;font-size:1.1rem;line-height:1.25}.vg-rad{margin:4px 0 0;color:var(--muted);font-family:ui-monospace,SFMono-Regular,Consolas,monospace;font-size:.82rem;word-break:break-all}
.vg-chips{display:flex;flex-direction:column;gap:6px;align-items:flex-end}
.vg-chip{display:inline-block;padding:2px 10px;border-radius:999px;font-size:.78rem;white-space:nowrap;border:1px solid var(--line);color:var(--muted)}
.vg-chip-ok{color:#3fbf8f;border-color:#2a7a5d;background:rgba(63,191,143,.1)}.vg-chip-incidencia{color:#e07a6a;border-color:#8a4a41}.vg-chip-parcial{color:#e0b04a;border-color:#8a6d2a}.vg-chip-revisando{color:#7fb0ee;border-color:#2b5a96}
.vg-chip-new{color:#1b1608;background:var(--gold);border-color:var(--gold);font-weight:700}
.vg-grid2{display:grid;grid-template-columns:1fr 1fr;gap:10px 16px}
.vg-field{display:flex;flex-direction:column;gap:3px;font-size:.92rem;min-width:0}.vg-label{font-size:.7rem;letter-spacing:.06em;text-transform:uppercase;color:var(--muted)}
.vg-small{padding:4px 10px;font-size:.82rem;align-self:flex-start}
.vg-sources{display:flex;flex-wrap:wrap;gap:6px}
.vg-src{font-size:.76rem;padding:2px 9px;border-radius:999px;border:1px solid var(--line);color:var(--muted)}
.vg-src::before{content:"";display:inline-block;width:7px;height:7px;border-radius:50%;margin-right:6px;background:var(--line)}
.vg-src-ok::before{background:#3fbf8f}.vg-src-bad::before{background:#e07a6a}.vg-src-part::before{background:#e0b04a}.vg-src-run::before{background:#7fb0ee}.vg-src-wait::before{background:var(--gold)}
.vg-src-off{opacity:.55}
.vg-note{margin:0;font-size:.84rem;color:#e0b04a}
.vg-actions{display:flex;flex-wrap:wrap;gap:8px;margin-top:auto;padding-top:12px;border-top:1px solid var(--line)}
.vg-tools{margin:18px 0}.vg-tools>summary{cursor:pointer;font-weight:700}
.vg-modal{position:fixed;inset:0;z-index:60;background:rgba(2,8,16,.72);display:flex;align-items:center;justify-content:center;padding:16px}
.vg-modal[hidden]{display:none}
.vg-modal-box{width:min(640px,100%);max-height:88vh;overflow:auto;background:var(--panel);border:1px solid var(--line);border-radius:14px;padding:22px}
.vg-modal-title{margin:0 0 2px}
.vg-events{margin:14px 0}
.vg-event{display:grid;grid-template-columns:110px 1fr;gap:12px;padding:12px 0;border-bottom:1px solid var(--line)}
.vg-event.new{background:linear-gradient(90deg,rgba(223,189,102,.08),transparent)}
.vg-edate{display:flex;flex-direction:column;gap:6px;align-items:flex-start}
.vg-event p{margin:4px 0 0}.vg-src-name{display:block;color:var(--muted)}
@media(max-width:560px){.vg-list{grid-template-columns:1fr}.vg-grid2{grid-template-columns:1fr}.vg-event{grid-template-columns:1fr}.vg-card{padding:14px}}
@media(prefers-reduced-motion:no-preference){.vg-card{transition:border-color .2s}}
