/* --- состояние сервисов: цвет всегда дублируется текстом (в подсказке узла, сводке, панели), не только цветом --- */
:root{--st-ok:#1f9d63;--st-warn:#c98a00;--st-down:#d23b2e;--st-unknown:#8a94a6}
@media (prefers-color-scheme:dark){:root{--st-ok:#3ecf8e;--st-warn:#f5b942;--st-down:#ff6b5e;--st-unknown:#6b7588}}
.st-dot{fill:var(--st-unknown);stroke:var(--card);stroke-width:1.5;pointer-events:none}
.node.st-ok .st-dot{fill:var(--st-ok)}.node.st-warn .st-dot{fill:var(--st-warn)}.node.st-down .st-dot{fill:var(--st-down)}
.node.st-down rect{stroke:var(--st-down);stroke-width:2.8;stroke-dasharray:5 3}
.node.st-down{filter:drop-shadow(0 0 5px var(--st-down))}  /* статичное красное свечение вместо пульсации */
.node.st-warn rect{stroke:var(--st-warn);stroke-width:2}
.status-sum.st-ok{color:var(--st-ok)}.status-sum.st-down{color:var(--st-down);font-weight:600}
.st-badge{font-size:12px;color:var(--muted);white-space:nowrap}.st-badge:empty{display:none}
.st-badge.st-ok{color:var(--st-ok)}.st-badge.st-warn{color:var(--st-warn)}.st-badge.st-down{color:var(--st-down);font-weight:600}
.legend i.st-sw{border-radius:50%;border:0;width:11px;height:11px;vertical-align:-1px}
.legend i.st-ok{background:var(--st-ok)}.legend i.st-warn{background:var(--st-warn)}.legend i.st-down{background:var(--st-down)}

/* --- раздел «Документы» --- */
.lib{display:grid;grid-template-columns:minmax(240px,320px) 1fr;gap:16px;align-items:start;margin-top:12px}
.lib-side{position:sticky;top:12px;max-height:calc(100vh - 24px);overflow-y:auto;background:var(--card);border:1px solid var(--line);border-radius:10px;padding:12px}
.lib-side input{margin:0 0 10px}
.lib-group{margin:14px 0 4px;font-size:12px;font-weight:700;letter-spacing:.04em;text-transform:uppercase;color:var(--muted)}
.lib-item{display:block;width:100%;text-align:left;background:transparent;color:var(--fg);border:1px solid transparent;border-radius:8px;padding:7px 9px;margin:2px 0}
.lib-item:hover{border-color:var(--line)}.lib-item.sel{background:var(--bg);border-color:var(--accent)}
.lib-item[disabled]{opacity:.5;cursor:default}
.lib-item small{display:block;color:var(--muted);font-size:12px;margin-top:2px}
.lib-snip{display:block;color:var(--muted);font-size:12px;margin-top:2px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.lib-view{background:var(--card);border:1px solid var(--line);border-radius:10px;min-width:0;padding:10px 4px 0}
.lib-view #lib-meta{padding:0 18px;font-size:13px}
.lib-view .docs-body{overflow:visible;padding-bottom:36px}
.lib-view .docs-body h2:first-child{margin-top:10px}
@media(max-width:800px){.lib{grid-template-columns:1fr}.lib-side{position:static;max-height:none}}
