:root { --pico-font-size: 95%; }
nav.topnav { padding: 0.4rem 0; border-bottom: 1px solid var(--pico-muted-border-color); margin-bottom: 1rem; }
nav.topnav ul { flex-wrap: wrap; }
nav.topnav a[aria-current="page"] { font-weight: 700; text-decoration: underline; }
.badge { display: inline-block; min-width: 1.4em; padding: 0 0.4em; border-radius: 1em; background: #d9534f; color: #fff; font-size: 0.75em; text-align: center; }
.kpis { display: grid; grid-template-columns: repeat(auto-fit, minmax(150px, 1fr)); gap: 0.6rem; margin-bottom: 1rem; }
.kpis article { margin: 0; padding: 0.7rem 0.9rem; }
.kpis .label { font-size: 0.75em; color: var(--pico-muted-color); }
.kpis .value { font-size: 1.25em; font-weight: 700; }
.pos { color: #2e7d32; } .neg { color: #c62828; }
.ok { color: #2e7d32; } .warn { color: #b26a00; } .fail { color: #c62828; }
.dot { display: inline-block; width: 0.7em; height: 0.7em; border-radius: 50%; margin-right: 0.3em; }
.dot.ok { background: #2e7d32; } .dot.warn { background: #f0ad4e; } .dot.fail { background: #c62828; } .dot.none { background: #999; }
table { font-size: 0.9em; }
td.num, th.num { text-align: right; white-space: nowrap; }
pre.box { max-height: 28rem; overflow: auto; font-size: 0.8em; white-space: pre-wrap; }
.muted { color: var(--pico-muted-color); }
.chart { position: relative; height: 320px; }
@media (max-width: 640px) { .chart { height: 240px; } table { font-size: 0.8em; } }
form.inline { display: inline; }
.event { border-left: 3px solid var(--pico-muted-border-color); padding-left: 0.6rem; margin-bottom: 0.6rem; }
.event.warn { border-color: #f0ad4e; } .event.error { border-color: #c62828; }
.event .meta { font-size: 0.75em; color: var(--pico-muted-color); }
.event .body { white-space: pre-wrap; font-size: 0.85em; }
details summary { cursor: pointer; }
textarea { font-family: ui-monospace, monospace; font-size: 0.85em; }
.hint { font-size: 0.8em; color: var(--pico-muted-color); max-height: 6rem; overflow: auto; }
