:root{--surface-1: #0f1115;--surface-2: #161920;--surface-3: #1e222b;--border: #272c37;--text-1: #e8eaef;--text-2: #a8b0be;--text-3: #6d7686;--accent: #4ade80;--accent-soft: rgba(74, 222, 128, .12);--danger: #f87171;--warning: #fbbf24}@media(prefers-color-scheme:light){:root{--surface-1: #ffffff;--surface-2: #f7f8fa;--surface-3: #eef0f4;--border: #dfe3ea;--text-1: #12141a;--text-2: #4b5364;--text-3: #838c9d;--accent: #16a34a;--accent-soft: rgba(22, 163, 74, .1);--danger: #dc2626;--warning: #d97706}}*{box-sizing:border-box}body{margin:0;background:var(--surface-1);color:var(--text-1);font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica,Arial,sans-serif;font-size:14px;line-height:1.5}h1{font-size:1.35rem;letter-spacing:-.02em;margin:0 0 .35rem}h2{font-size:1rem;margin:2rem 0 .75rem}.subtitle{color:var(--text-3);margin:0 0 1.5rem;font-size:.88rem}button{font:inherit;background:var(--surface-3);color:var(--text-1);border:1px solid var(--border);border-radius:8px;padding:.45rem .8rem;cursor:pointer}button:hover:not(:disabled){border-color:var(--accent);color:var(--accent)}button:disabled{opacity:.5;cursor:not-allowed}button.primary{background:var(--accent);border-color:var(--accent);color:#06210f;font-weight:600}input,select{font:inherit;background:var(--surface-1);color:var(--text-1);border:1px solid var(--border);border-radius:8px;padding:.5rem .65rem;width:100%}input:focus,select:focus{outline:2px solid var(--accent-soft);border-color:var(--accent)}.table-wrap{overflow-x:auto;border:1px solid var(--border);border-radius:10px}table{width:100%;border-collapse:collapse;font-size:.86rem;min-width:640px}th{text-align:left;padding:.65rem .85rem;background:var(--surface-2);color:var(--text-3);font-weight:600;font-size:.75rem;text-transform:uppercase;letter-spacing:.04em;white-space:nowrap}td{padding:.65rem .85rem;border-top:1px solid var(--border)}tr:hover td{background:var(--surface-2)}.num{text-align:right;font-variant-numeric:tabular-nums}.cards{display:grid;grid-template-columns:repeat(auto-fill,minmax(190px,1fr));gap:.85rem}.card{background:var(--surface-2);border:1px solid var(--border);border-radius:10px;padding:1rem 1.1rem}.card .label{color:var(--text-3);font-size:.75rem;text-transform:uppercase;letter-spacing:.04em}.card .value{font-size:1.6rem;font-weight:650;letter-spacing:-.02em;margin-top:.3rem;font-variant-numeric:tabular-nums}.badge{display:inline-block;padding:.15rem .5rem;border-radius:999px;font-size:.72rem;font-weight:600;border:1px solid var(--border)}.badge.ok{color:var(--accent);background:var(--accent-soft);border-color:transparent}.badge.warn{color:var(--warning);background:#fbbf241f;border-color:transparent}.badge.bad{color:var(--danger);background:#f871711f;border-color:transparent}.toolbar{display:flex;gap:.6rem;align-items:center;margin-bottom:1rem;flex-wrap:wrap}.toolbar input,.toolbar select{width:auto;min-width:150px}.empty,.error{padding:1.5rem;border:1px dashed var(--border);border-radius:10px;color:var(--text-3);text-align:center}.error{color:var(--danger);border-color:var(--danger)}
