:root { --pico-font-size: 100%; }
body { background: var(--pico-background-color); }
.narrow { max-width: 28rem; margin-inline: auto; }
.inline { display: inline; margin: 0; }
.inline button, .inline input { margin: 0; }
button.small, a.small { padding: .25rem .6rem; font-size: .85rem; width: auto; }
nav .mainnav { flex-wrap: wrap; }
nav .mainnav li { padding-block: .35rem; padding-inline: .45rem; font-size: .95rem; }
.msg { padding: .7rem 1rem; border-radius: .4rem; border: 1px solid; }
.msg-error { background: #fdecea; border-color: #d9534f; color: #8a1f1b; }
.msg-ok { background: #e7f6ec; border-color: #3c9d5d; color: #1d5c34; }
.msg-warn { background: #fff6e0; border-color: #d9a441; color: #6d4f0b; }
.badge { display: inline-block; padding: .1rem .5rem; border-radius: .8rem; font-size: .8rem; font-weight: 600; white-space: nowrap; color: #fff; background: #5f6b7a; }
.badge-ok, .badge-idle { background: #2c8a4d; }
.badge-running { background: #1f6fbf; }
.badge-error, .badge-rw, .badge-revoked { background: #c0392b; }
.badge-blocked, .badge-expired { background: #c77700; }
.badge-paused, .badge-disabled, .badge-interrupted { background: #6b7280; }
.badge-ro { background: #1f6fbf; }
.stats { display: grid; grid-template-columns: repeat(auto-fit, minmax(10.5rem, 1fr)); gap: 1rem; margin-bottom: 1rem; }
.stats > div { padding: .8rem 1rem; border: 1px solid var(--pico-muted-border-color); border-radius: .4rem; }
.stats small { display: block; color: var(--pico-muted-color); }
.stats strong { font-size: 1.15rem; overflow-wrap: anywhere; }
.actions { display: flex; flex-wrap: wrap; gap: .5rem; align-items: center; margin-bottom: 1rem; }
.actions form { margin: 0; }
.actions button, .actions a[role=button] { margin: 0; width: auto; }
.table-wrap { overflow-x: auto; }
td.num, th.num { text-align: right; white-space: nowrap; }
td.path { overflow-wrap: anywhere; }
code.block, pre.block { display: block; padding: .7rem; overflow-x: auto; white-space: pre-wrap; overflow-wrap: anywhere; }
textarea.key { font-family: monospace; font-size: .8rem; min-height: 14rem; }
.breadcrumb { overflow-wrap: anywhere; margin-bottom: 1rem; }
.pager { display: flex; gap: 1rem; align-items: center; flex-wrap: wrap; }
.muted { color: var(--pico-muted-color); }
fieldset.group { border: 1px solid var(--pico-muted-border-color); padding: 1rem; border-radius: .4rem; margin-bottom: 1.2rem; }
fieldset.group legend { padding-inline: .4rem; font-weight: 600; }
.log-view { max-height: 28rem; overflow: auto; font-size: .8rem; white-space: pre-wrap; overflow-wrap: anywhere; }
