/* Página do piloto: complementa app.css (mesmas variáveis e componentes). */
.nav { display: flex; gap: 6px; margin-right: 10px; }
.nav a { padding: 6px 10px; border-radius: 999px; text-decoration: none; color: var(--muted); font-weight: 600; font-size: 13px; }
.nav a.active { background: var(--accent-soft); color: var(--accent); }
.badge.live { background: var(--ok-soft); color: var(--ok); } .badge.live.stale { background: var(--warn-soft); color: var(--warn); } .badge.live.down { background: var(--bad-soft); color: var(--bad); }
.badge.live .dot { width: 8px; height: 8px; border-radius: 50%; background: currentColor; animation: pulse 1.6s infinite; }
@keyframes pulse { 0%, 100% { opacity: 1 } 50% { opacity: .35 } }
.hero-pilot { display: grid; grid-template-columns: 1.1fr 1fr; gap: 24px; align-items: center; margin-bottom: 18px; }
.hero-pilot h1 { margin: 0 0 8px; font-size: 26px; letter-spacing: -.01em; }
.hero-pilot .lead { margin: 0 0 10px; color: var(--ink); }
.hero-kpis { grid-template-columns: repeat(3, 1fr); }
.kpi .v.ok { color: var(--ok); } .kpi .v.warn { color: var(--warn); }
.grid-pilot { display: grid; gap: 18px; grid-template-columns: 340px 1fr; }
@media (max-width: 980px) { .hero-pilot, .grid-pilot { grid-template-columns: 1fr; } .hero-kpis { grid-template-columns: repeat(2, 1fr); } }
.tbl { width: 100%; border-collapse: collapse; font-size: 14px; } .tbl th { text-align: left; color: var(--muted); font-weight: 600; font-size: 12px; padding: 4px 0; }
.tbl td { padding: 6px 0; border-top: 1px solid var(--line); } .tbl td.n, .tbl th.n { text-align: right; font-variant-numeric: tabular-nums; }
.bars { display: grid; gap: 8px; }
.bar { display: grid; grid-template-columns: 150px 1fr 48px; gap: 10px; align-items: center; font-size: 13px; }
.bar .track { height: 10px; border-radius: 999px; background: var(--line); overflow: hidden; }
.bar .fill { height: 100%; background: var(--accent); border-radius: 999px; transition: width .4s; }
.bar .fill.warn { background: var(--warn); } .bar .fill.ok { background: var(--ok); } .bar .fill.sim { background: var(--sim); } .bar .fill.bad { background: var(--bad); }
.bar .n { text-align: right; font-variant-numeric: tabular-nums; color: var(--muted); }
select { padding: 8px 10px; border-radius: 10px; border: 1px solid var(--line); background: var(--bg); color: var(--ink); font-size: 13px; }
.queue { list-style: none; margin: 0; padding: 0; display: grid; gap: 10px; }
.exc { border: 1px solid var(--line); border-radius: 12px; padding: 12px 14px; cursor: pointer; transition: border-color .15s, transform .08s; background: var(--bg); }
.exc:hover { border-color: var(--accent); } .exc:active { transform: scale(.995); }
.exc .head { display: flex; gap: 8px; align-items: center; flex-wrap: wrap; }
.exc .sum { font-weight: 600; margin: 6px 0 4px; }
.exc .meta { font-size: 12px; color: var(--muted); }
.sev { width: 8px; height: 8px; border-radius: 50%; display: inline-block; }
.sev.high { background: var(--bad); } .sev.medium { background: var(--warn); } .sev.low { background: var(--accent); } .sev.info { background: var(--muted); }
.badge.kind { background: var(--line); color: var(--ink); font-weight: 600; }
.badge.rules { background: var(--accent-soft); color: var(--accent); } .badge.model { background: var(--sim-soft); color: var(--sim); } .badge.replay { background: var(--sim-soft); color: var(--sim); } .badge.operator { background: var(--ok-soft); color: var(--ok); }
.badge.st-awaiting_human { background: var(--warn-soft); color: var(--warn); } .badge.st-open { background: var(--line); color: var(--muted); } .badge.st-auto_applied, .badge.st-resolved { background: var(--ok-soft); color: var(--ok); } .badge.st-dismissed { background: var(--line); color: var(--muted); }
.verdict { margin-top: 8px; padding: 10px 12px; border-radius: 10px; background: var(--card); border: 1px dashed var(--line); font-size: 13px; }
.verdict .act { font-weight: 700; }
.conf { display: inline-block; width: 90px; height: 6px; border-radius: 999px; background: var(--line); vertical-align: middle; margin-left: 6px; overflow: hidden; }
.conf i { display: block; height: 100%; background: var(--accent); }
.drawer { position: fixed; inset: 0; background: rgba(15, 23, 42, .45); display: grid; place-items: center; padding: 16px; z-index: 20; }
.drawer-card { width: min(760px, 100%); max-height: 90vh; overflow: auto; }
.drawer h3 { margin: 0; font-size: 18px; } .drawer .close { margin-left: auto; }
.evid { margin: 0; padding-left: 0; list-style: none; display: grid; gap: 6px; font-size: 13px; }
.evid li { display: grid; grid-template-columns: 30px 1fr; gap: 8px; } .evid .id { font-family: ui-monospace, monospace; color: var(--muted); }
.decide { display: flex; gap: 8px; flex-wrap: wrap; margin-top: 10px; }
.decide button { font-size: 13px; padding: 8px 10px; }
.timeline-pilot { list-style: none; padding: 0; margin: 0; display: grid; gap: 6px; font-size: 13px; }
.timeline-pilot .t { color: var(--muted); font-family: ui-monospace, monospace; font-size: 12px; margin-right: 8px; }
.hash { font-family: ui-monospace, monospace; font-size: 11px; color: var(--muted); word-break: break-all; }
.m0 { margin: 0; } .mb12 { margin-bottom: 12px; }
.push { margin-left: auto; } .ml6 { margin-left: 6px; } .mt4 { margin-top: 4px; }

.aff-kpis { grid-template-columns: repeat(2, 1fr); }
.aff-links a { margin-right: 10px; }
