:root{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--bg:#f6f6f4;--surface:#fcfcfb;--surface-2:#f1f1ee;--surface-3:#e9e9e4;--border:#0b0b0b1a;--border-strong:#0b0b0b2e;--border-hover:#0b0b0b4d;--text:#0b0b0b;--text-2:#52514e;--text-3:#898781;--text-inverse:#fff;--accent:#2a78d6;--accent-hover:#256abf;--accent-soft:#e4effc;--accent-text:#1c5cab;--focus:0 0 0 3px #2a78d659;--good:#0ca30c;--good-text:#006300;--good-soft:#e3f4e3;--warning:#fab219;--warning-text:#7a4d00;--warning-soft:#fdf1d6;--serious:#ec835a;--serious-text:#8d3a1c;--serious-soft:#fde8df;--critical:#d03b3b;--critical-text:#a62525;--critical-soft:#fbe2e2;--neutral-soft:#ececea;--series-1:#2a78d6;--series-2:#eb6834;--series-3:#1baf7a;--series-4:#eda100;--series-5:#e87ba4;--series-6:#008300;--series-7:#6250d6;--series-8:#e34948;--series-other:#b5b4ad;--seq-100:#cde2fb;--seq-150:#b7d3f6;--seq-200:#9ec5f4;--seq-250:#86b6ef;--seq-300:#6da7ec;--seq-350:#5598e7;--seq-400:#3987e5;--seq-450:#2a78d6;--seq-500:#256abf;--seq-550:#1c5cab;--seq-600:#184f95;--seq-650:#104281;--seq-700:#0d366b;--chart-surface:#fcfcfb;--grid:#e1e0d9;--axis:#c3c2b7;--axis-text:#898781;--sp-1:4px;--sp-2:8px;--sp-3:12px;--sp-4:16px;--sp-5:20px;--sp-6:24px;--sp-8:32px;--sp-10:40px;--sp-12:48px;--r-1:4px;--r-2:6px;--r-3:10px;--r-4:14px;--r-pill:999px;--shadow-1:0 1px 2px #0b0b0b0f;--shadow-2:0 4px 12px #0b0b0b14, 0 1px 2px #0b0b0b0f;--shadow-3:0 16px 40px #0b0b0b2e, 0 2px 6px #0b0b0b1a;--font:system-ui, -apple-system, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;--font-mono:ui-monospace, SFMono-Regular, Menlo, Consolas, "Liberation Mono", monospace;--fs-xs:11px;--fs-sm:12.5px;--fs-base:14px;--fs-md:15px;--fs-lg:17px;--fs-xl:20px;--fs-2xl:24px;--fs-3xl:30px;--lh:1.45;--sidebar-w:236px;--topbar-h:52px;--content-max:1280px}:root[data-theme=dark]{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--bg:#0d0d0d;--surface:#1a1a19;--surface-2:#222221;--surface-3:#2c2c2a;--border:#ffffff1a;--border-strong:#ffffff2e;--border-hover:#ffffff4d;--text:#f0efec;--text-2:#c3c2b7;--text-3:#898781;--text-inverse:#fff;--accent:#3987e5;--accent-hover:#5598e7;--accent-soft:#15314f;--accent-text:#86b6ef;--focus:0 0 0 3px #3987e573;--good:#0ca30c;--good-text:#4ec44e;--good-soft:#10311a;--warning:#fab219;--warning-text:#f3c45a;--warning-soft:#3a2c0a;--serious:#ec835a;--serious-text:#f2a07f;--serious-soft:#3d2217;--critical:#d03b3b;--critical-text:#ef7a7a;--critical-soft:#3c1818;--neutral-soft:#2c2c2a;--series-1:#3987e5;--series-2:#d95926;--series-3:#199e70;--series-4:#c98500;--series-5:#d55181;--series-6:#008300;--series-7:#9085e9;--series-8:#e66767;--series-other:#5a5955;--chart-surface:#1a1a19;--grid:#2c2c2a;--axis:#383835;--axis-text:#898781;--shadow-1:0 1px 2px #0006;--shadow-2:0 4px 12px #00000080, 0 1px 2px #0006;--shadow-3:0 16px 40px #000000b3, 0 2px 6px #00000080}@media (prefers-color-scheme:dark){:root:not([data-theme=light]){--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--bg:#0d0d0d;--surface:#1a1a19;--surface-2:#222221;--surface-3:#2c2c2a;--border:#ffffff1a;--border-strong:#ffffff2e;--border-hover:#ffffff4d;--text:#f0efec;--text-2:#c3c2b7;--text-3:#898781;--text-inverse:#fff;--accent:#3987e5;--accent-hover:#5598e7;--accent-soft:#15314f;--accent-text:#86b6ef;--focus:0 0 0 3px #3987e573;--good:#0ca30c;--good-text:#4ec44e;--good-soft:#10311a;--warning:#fab219;--warning-text:#f3c45a;--warning-soft:#3a2c0a;--serious:#ec835a;--serious-text:#f2a07f;--serious-soft:#3d2217;--critical:#d03b3b;--critical-text:#ef7a7a;--critical-soft:#3c1818;--neutral-soft:#2c2c2a;--series-1:#3987e5;--series-2:#d95926;--series-3:#199e70;--series-4:#c98500;--series-5:#d55181;--series-6:#008300;--series-7:#9085e9;--series-8:#e66767;--series-other:#5a5955;--chart-surface:#1a1a19;--grid:#2c2c2a;--axis:#383835;--axis-text:#898781;--shadow-1:0 1px 2px #0006;--shadow-2:0 4px 12px #00000080, 0 1px 2px #0006;--shadow-3:0 16px 40px #000000b3, 0 2px 6px #00000080}}*,:before,:after{box-sizing:border-box}html,body,#root{height:100%}body{font-family:var(--font);font-size:var(--fs-base);line-height:var(--lh);color:var(--text);background:var(--bg);-webkit-font-smoothing:antialiased;text-rendering:optimizelegibility;margin:0}h1,h2,h3,h4{letter-spacing:-.01em;margin:0;font-weight:600;line-height:1.25}h1{font-size:var(--fs-2xl)}h2{font-size:var(--fs-lg)}h3{font-size:var(--fs-md)}p{margin:0}a{color:var(--accent-text);text-decoration:none}a:hover{text-decoration:underline}code,pre,.mono{font-family:var(--font-mono);font-size:.92em}pre{margin:0}button,input,select,textarea{font:inherit;color:inherit}button{cursor:pointer}button:disabled{cursor:not-allowed}ul,ol{margin:0;padding:0;list-style:none}table{border-collapse:separate;border-spacing:0;width:100%}img,svg{display:block}hr{border:0;border-top:1px solid var(--border);margin:var(--sp-4) 0}:focus-visible{box-shadow:var(--focus);border-radius:var(--r-1);outline:none}::selection{background:var(--accent-soft)}.sr-only{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.muted{color:var(--text-2)}.subtle{color:var(--text-3)}.tnum{font-variant-numeric:tabular-nums}.truncate{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.row{align-items:center;gap:var(--sp-2);display:flex}.row--between{justify-content:space-between}.row--wrap{flex-wrap:wrap}.stack{gap:var(--sp-3);flex-direction:column;display:flex}.stack--lg{gap:var(--sp-5)}.grow{flex:auto;min-width:0}.text-sm{font-size:var(--fs-sm)}.text-xs{font-size:var(--fs-xs)}.right{text-align:right}@media (prefers-reduced-motion:reduce){*,:before,:after{transition-duration:.001ms!important;animation-duration:.001ms!important}}.shell{grid-template-columns:var(--sidebar-w) 1fr;min-height:100%;display:grid}.sidebar{background:var(--surface);border-right:1px solid var(--border);height:100vh;padding:var(--sp-3);gap:var(--sp-3);flex-direction:column;display:flex;position:sticky;top:0;overflow-y:auto}.sidebar__brand{align-items:center;gap:var(--sp-2);padding:var(--sp-2) var(--sp-2) 0;letter-spacing:-.01em;font-weight:700;display:flex}.sidebar__brand-mark{background:var(--accent);color:#fff;border-radius:7px;place-items:center;width:24px;height:24px;font-size:13px;font-weight:800;display:grid}.sidebar__nav{flex-direction:column;flex:1;gap:2px;display:flex}.sidebar__section{font-size:var(--fs-xs);text-transform:uppercase;letter-spacing:.06em;color:var(--text-3);padding:var(--sp-3) var(--sp-2) var(--sp-1);font-weight:600}.navlink{border-radius:var(--r-2);color:var(--text-2);font-weight:500;font-size:var(--fs-base);align-items:center;gap:10px;padding:7px 10px;display:flex}.navlink:hover{background:var(--surface-2);color:var(--text);text-decoration:none}.navlink.active{background:var(--accent-soft);color:var(--accent-text)}.navlink svg{flex:none;width:16px;height:16px}.sidebar__footer{gap:var(--sp-2);border-top:1px solid var(--border);padding-top:var(--sp-3);flex-direction:column;display:flex}.topbar{display:none}.main{min-width:0}.main__inner{max-width:var(--content-max);padding:var(--sp-6) var(--sp-8) var(--sp-12);margin:0 auto}@media (width<=900px){.shell{grid-template-columns:1fr}.sidebar{display:none}.sidebar.sidebar--open{inset:var(--topbar-h) 0 0 0;z-index:40;border-right:0;height:auto;display:flex;position:fixed}.topbar{align-items:center;gap:var(--sp-3);z-index:41;height:var(--topbar-h);padding:0 var(--sp-4);background:var(--surface);border-bottom:1px solid var(--border);display:flex;position:sticky;top:0}.main__inner{padding:var(--sp-4) var(--sp-4) var(--sp-10)}}.switcher{align-items:center;gap:var(--sp-2);border-radius:var(--r-3);border:1px solid var(--border);background:var(--surface-2);text-align:left;width:100%;min-width:0;padding:8px 10px;display:flex}.switcher:hover{border-color:var(--border-strong)}.switcher__avatar{background:var(--accent);color:#fff;border-radius:7px;flex:none;place-items:center;width:26px;height:26px;font-size:12px;font-weight:700;display:grid}.switcher__name{font-weight:600;font-size:var(--fs-base)}.switcher__meta{font-size:var(--fs-xs);color:var(--text-3)}.page-header{justify-content:space-between;align-items:flex-start;gap:var(--sp-4);margin-bottom:var(--sp-6);flex-wrap:wrap;display:flex}.page-header__title{font-size:var(--fs-2xl)}.page-header__desc{color:var(--text-2);max-width:64ch;margin-top:4px}.page-header__actions{align-items:center;gap:var(--sp-2);flex-wrap:wrap;display:flex}.section-title{font-size:var(--fs-md);margin-bottom:var(--sp-3);justify-content:space-between;align-items:center;gap:var(--sp-3);font-weight:600;display:flex}.breadcrumb{font-size:var(--fs-sm);color:var(--text-3);margin-bottom:var(--sp-2);align-items:center;gap:6px;display:flex}.btn{border-radius:var(--r-2);border:1px solid var(--border-strong);background:var(--surface);height:32px;color:var(--text);font-weight:500;font-size:var(--fs-base);white-space:nowrap;justify-content:center;align-items:center;gap:6px;padding:0 12px;transition:background .12s,border-color .12s,opacity .12s;display:inline-flex}.btn svg{width:15px;height:15px}.btn:hover{background:var(--surface-2);text-decoration:none}.btn:disabled,.btn[aria-disabled=true]{opacity:.55}.btn--primary{background:var(--accent);border-color:var(--accent);color:#fff}.btn--primary:hover{background:var(--accent-hover);border-color:var(--accent-hover)}.btn--danger{color:var(--critical-text);border-color:var(--critical)}.btn--danger:hover{background:var(--critical-soft)}.btn--danger-solid{background:var(--critical);border-color:var(--critical);color:#fff}.btn--danger-solid:hover{opacity:.9}.btn--ghost{color:var(--text-2);background:0 0;border-color:#0000}.btn--ghost:hover{background:var(--surface-2);color:var(--text)}.btn--sm{height:26px;font-size:var(--fs-sm);border-radius:var(--r-1);padding:0 8px}.btn--sm svg{width:13px;height:13px}.btn--lg{height:38px;font-size:var(--fs-md);padding:0 16px}.btn--icon{width:32px;padding:0}.btn--icon.btn--sm{width:26px}.btn--block{width:100%}.btn__spinner{border:2px solid;border-right-color:#0000;border-radius:50%;width:14px;height:14px;animation:.7s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}.field{flex-direction:column;gap:6px;display:flex}.field__label{font-size:var(--fs-sm);color:var(--text-2);justify-content:space-between;gap:var(--sp-2);font-weight:600;display:flex}.field__hint{font-size:var(--fs-sm);color:var(--text-3)}.field__error{font-size:var(--fs-sm);color:var(--critical-text);align-items:center;gap:4px;display:flex}.field__error svg{width:13px;height:13px}.input,.select,.textarea{border-radius:var(--r-2);border:1px solid var(--border-strong);background:var(--surface);width:100%;height:34px;color:var(--text);padding:0 10px;transition:border-color .12s}.input::placeholder,.textarea::placeholder{color:var(--text-3)}.input:hover,.select:hover,.textarea:hover{border-color:var(--border-hover)}.input:focus-visible,.select:focus-visible,.textarea:focus-visible{border-color:var(--accent);box-shadow:var(--focus)}.input[aria-invalid=true],.textarea[aria-invalid=true],.select[aria-invalid=true]{border-color:var(--critical)}.input--sm,.select--sm{height:28px;font-size:var(--fs-sm);padding:0 8px}.input--mono,.textarea--mono{font-family:var(--font-mono);font-size:var(--fs-sm)}.textarea{resize:vertical;height:auto;min-height:96px;padding:8px 10px;line-height:1.5}.select{appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 24 24' fill='none' stroke='%23898781' stroke-width='2.5' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E");background-position:right 9px center;background-repeat:no-repeat;padding-right:28px}.input-wrap{align-items:center;display:flex;position:relative}.input-wrap>svg{width:15px;height:15px;color:var(--text-3);pointer-events:none;position:absolute;left:10px}.input-wrap>.input{padding-left:32px}.form-grid{gap:var(--sp-4);grid-template-columns:repeat(auto-fit,minmax(220px,1fr));display:grid}.form-actions{justify-content:flex-end;gap:var(--sp-2);margin-top:var(--sp-2);display:flex}.form-error{border-radius:var(--r-2);background:var(--critical-soft);color:var(--critical-text);font-size:var(--fs-sm);align-items:flex-start;gap:8px;padding:10px 12px;display:flex}.form-error svg{flex:none;width:15px;height:15px;margin-top:1px}.checkbox{cursor:pointer;font-size:var(--fs-base);align-items:center;gap:8px;padding:4px 0;display:flex}.checkbox input{width:15px;height:15px;accent-color:var(--accent);margin:0}.check-list{border:1px solid var(--border);border-radius:var(--r-2);background:var(--surface-2);flex-direction:column;gap:2px;max-height:280px;padding:6px 10px;display:flex;overflow:auto}.check-list__group{font-size:var(--fs-xs);text-transform:uppercase;letter-spacing:.05em;color:var(--text-3);padding:8px 0 2px;font-weight:600}.radio-row{flex-wrap:wrap;gap:6px;display:flex}.switch{cursor:pointer;align-items:center;gap:10px;display:inline-flex;position:relative}.switch__track{background:var(--surface-3);border:1px solid var(--border-strong);border-radius:999px;flex:none;width:34px;height:20px;transition:background .15s;position:relative}.switch__thumb{width:14px;height:14px;box-shadow:var(--shadow-1);background:#fff;border-radius:50%;transition:transform .15s;position:absolute;top:2px;left:2px}.switch[aria-checked=true] .switch__track{background:var(--accent);border-color:var(--accent)}.switch[aria-checked=true] .switch__thumb{transform:translate(14px)}.switch:disabled{opacity:.55;cursor:not-allowed}.switch{background:0 0;border:0;padding:0}.segmented{border-radius:var(--r-2);background:var(--surface-2);border:1px solid var(--border);padding:2px;display:inline-flex}.segmented button{height:26px;color:var(--text-2);font-size:var(--fs-sm);background:0 0;border:0;border-radius:4px;padding:0 10px;font-weight:500}.segmented button[aria-pressed=true]{background:var(--surface);color:var(--text);box-shadow:var(--shadow-1)}.segmented button:hover:not([aria-pressed=true]){color:var(--text)}.card{background:var(--surface);border:1px solid var(--border);border-radius:var(--r-3);box-shadow:var(--shadow-1)}.card__header{justify-content:space-between;align-items:center;gap:var(--sp-3);padding:var(--sp-4) var(--sp-5);border-bottom:1px solid var(--border);flex-wrap:wrap;display:flex}.card__title{font-size:var(--fs-md);font-weight:600}.card__desc{color:var(--text-3);font-size:var(--fs-sm);margin-top:2px}.card__body{padding:var(--sp-5)}.card__body--flush{padding:0}.card__footer{padding:var(--sp-3) var(--sp-5);border-top:1px solid var(--border);justify-content:flex-end;gap:var(--sp-2);background:var(--surface-2);border-radius:0 0 var(--r-3) var(--r-3);display:flex}.card--danger{border-color:var(--critical)}.card-grid{gap:var(--sp-4);grid-template-columns:repeat(auto-fill,minmax(280px,1fr));display:grid}.card--interactive{color:inherit;transition:border-color .12s,box-shadow .12s}.card--interactive:hover{border-color:var(--border-strong);box-shadow:var(--shadow-2);text-decoration:none}.tiles{gap:var(--sp-3);grid-template-columns:repeat(auto-fit,minmax(190px,1fr));display:grid}.tile{padding:var(--sp-4) var(--sp-5)}.tile__label{font-size:var(--fs-sm);color:var(--text-2);font-weight:500}.tile__value{font-size:var(--fs-2xl);letter-spacing:-.02em;margin-top:4px;font-weight:600;line-height:1.2}.tile__delta{font-size:var(--fs-sm);color:var(--text-3);align-items:center;gap:3px;margin-top:6px;font-weight:500;display:inline-flex}.tile__delta svg{width:13px;height:13px}.tile__delta--good{color:var(--good-text)}.tile__delta--bad{color:var(--critical-text)}.tile__sub{font-size:var(--fs-xs);color:var(--text-3);margin-left:2px;font-weight:400}.badge{border-radius:var(--r-pill);height:20px;font-size:var(--fs-xs);white-space:nowrap;background:var(--neutral-soft);color:var(--text-2);letter-spacing:.01em;align-items:center;gap:4px;padding:0 7px;font-weight:600;display:inline-flex}.badge svg{width:11px;height:11px}.badge--good{background:var(--good-soft);color:var(--good-text)}.badge--warning{background:var(--warning-soft);color:var(--warning-text)}.badge--serious{background:var(--serious-soft);color:var(--serious-text)}.badge--critical{background:var(--critical-soft);color:var(--critical-text)}.badge--accent{background:var(--accent-soft);color:var(--accent-text)}.badge--outline{border:1px solid var(--border-strong);color:var(--text-2);background:0 0}.badge--mono{font-family:var(--font-mono);font-weight:500}.chip{border-radius:var(--r-1);background:var(--surface-2);border:1px solid var(--border);height:22px;font-size:var(--fs-xs);font-family:var(--font-mono);color:var(--text-2);align-items:center;gap:4px;padding:0 8px;display:inline-flex}.chips{flex-wrap:wrap;gap:4px;display:flex}.table-wrap{border-radius:var(--r-3);max-height:70vh;overflow:auto}.table{font-size:var(--fs-base)}.table th{z-index:1;background:var(--surface-2);text-align:left;font-weight:600;font-size:var(--fs-xs);text-transform:uppercase;letter-spacing:.05em;color:var(--text-3);border-bottom:1px solid var(--border);white-space:nowrap;padding:9px 14px;position:sticky;top:0}.table td{border-bottom:1px solid var(--border);vertical-align:middle;padding:10px 14px}.table tr:last-child td{border-bottom:0}.table--clickable tbody tr{cursor:pointer}.table--clickable tbody tr:hover td{background:var(--surface-2)}.table th.right,.table td.right{text-align:right}.table .num{font-variant-numeric:tabular-nums;text-align:right}.table th.num{text-align:right}.table__actions{opacity:.85;justify-content:flex-end;gap:4px;display:flex}.table--compact td{font-size:var(--fs-sm);padding:7px 12px}.table--compact th{padding:7px 12px}.table a.link-id{font-family:var(--font-mono);font-size:var(--fs-sm)}.sort-btn{color:inherit;font:inherit;text-transform:inherit;letter-spacing:inherit;background:0 0;border:0;align-items:center;gap:4px;padding:0;display:inline-flex}.sort-btn svg{width:12px;height:12px}.table-toolbar{align-items:center;gap:var(--sp-2);padding:var(--sp-3) var(--sp-4);border-bottom:1px solid var(--border);flex-wrap:wrap;display:flex}.table-footer{justify-content:space-between;align-items:center;gap:var(--sp-2);padding:var(--sp-3) var(--sp-4);border-top:1px solid var(--border);font-size:var(--fs-sm);color:var(--text-3);display:flex}.kv{font-size:var(--fs-base);grid-template-columns:minmax(140px,200px) 1fr;gap:8px 16px;display:grid}.kv dt{color:var(--text-3);font-size:var(--fs-sm);padding-top:2px}.kv dd{word-break:break-word;min-width:0;margin:0}.kv--stack{grid-template-columns:1fr;gap:2px}.kv-grid{gap:var(--sp-4) var(--sp-6);grid-template-columns:repeat(auto-fit,minmax(180px,1fr));display:grid}.kv-grid dt{color:var(--text-3);font-size:var(--fs-xs);text-transform:uppercase;letter-spacing:.05em;margin-bottom:2px;font-weight:600}.kv-grid dd{word-break:break-word;min-width:0;margin:0}.copy-field{border:1px solid var(--border-strong);border-radius:var(--r-2);background:var(--surface-2);align-items:stretch;display:flex;overflow:hidden}.copy-field__value{min-width:0;font-family:var(--font-mono);font-size:var(--fs-sm);white-space:nowrap;flex:1;align-items:center;padding:7px 10px;display:flex;overflow:auto}.copy-field__btn{border:0;border-left:1px solid var(--border);background:var(--surface);font-size:var(--fs-sm);color:var(--text-2);align-items:center;gap:5px;padding:0 10px;font-weight:500;display:inline-flex}.copy-field__btn:hover{background:var(--surface-2);color:var(--text)}.copy-field__btn svg{width:13px;height:13px}.copy-field--multiline .copy-field__value{white-space:pre;align-items:flex-start;line-height:1.5}.code{color:#e6e6e3;border-radius:var(--r-3);padding:var(--sp-4) var(--sp-5);font-family:var(--font-mono);background:#0f1419;font-size:12.5px;line-height:1.55;position:relative;overflow:auto}.code--light{background:var(--surface-2);color:var(--text);border:1px solid var(--border)}.code__copy{position:absolute;top:8px;right:8px}.code .c-k{color:#ff7b72}.code .c-s{color:#a5d6ff}.code .c-t{color:#d2a8ff}.code .c-f{color:#79c0ff}.code .c-c{color:#8b949e}.modal-backdrop{padding:var(--sp-4);z-index:100;background:#0b0b0b73;place-items:center;animation:.12s ease-out fade;display:grid;position:fixed;inset:0}.modal{background:var(--surface);border-radius:var(--r-4);width:100%;max-width:520px;box-shadow:var(--shadow-3);border:1px solid var(--border);flex-direction:column;max-height:calc(100vh - 32px);animation:.14s ease-out pop;display:flex}.modal--lg{max-width:760px}.modal--sm{max-width:420px}.modal__header{justify-content:space-between;align-items:flex-start;gap:var(--sp-3);padding:var(--sp-5) var(--sp-5) var(--sp-3);display:flex}.modal__title{font-size:var(--fs-lg);font-weight:600}.modal__desc{color:var(--text-2);font-size:var(--fs-base);margin-top:4px}.modal__body{padding:0 var(--sp-5) var(--sp-5);gap:var(--sp-4);flex-direction:column;display:flex;overflow:auto}.modal__footer{justify-content:flex-end;gap:var(--sp-2);padding:var(--sp-3) var(--sp-5);border-top:1px solid var(--border);background:var(--surface-2);border-radius:0 0 var(--r-4) var(--r-4);display:flex}@keyframes fade{0%{opacity:0}}@keyframes pop{0%{opacity:0;transform:translateY(6px)scale(.98)}}.drawer-backdrop{z-index:100;background:#0b0b0b59;animation:.12s ease-out fade;position:fixed;inset:0}.drawer{background:var(--surface);border-left:1px solid var(--border);width:min(720px,100vw);box-shadow:var(--shadow-3);z-index:101;flex-direction:column;animation:.16s ease-out slide;display:flex;position:fixed;top:0;bottom:0;right:0}.drawer__header{justify-content:space-between;align-items:center;gap:var(--sp-3);padding:var(--sp-4) var(--sp-5);border-bottom:1px solid var(--border);display:flex}.drawer__body{flex:1;overflow:auto}@keyframes slide{0%{opacity:0;transform:translate(24px)}}.menu-anchor{display:inline-block;position:relative}.menu{background:var(--surface);border:1px solid var(--border);border-radius:var(--r-3);min-width:200px;box-shadow:var(--shadow-2);z-index:50;padding:4px;animation:.12s ease-out pop;position:absolute;top:calc(100% + 4px);right:0}.menu--left{left:0;right:auto}.menu__item{border-radius:var(--r-1);text-align:left;width:100%;color:var(--text);font-size:var(--fs-base);background:0 0;border:0;align-items:center;gap:8px;padding:7px 10px;display:flex}.menu__item svg{width:15px;height:15px;color:var(--text-3)}.menu__item:hover,.menu__item:focus-visible{background:var(--surface-2);box-shadow:none}.menu__item--danger{color:var(--critical-text)}.menu__item--danger svg{color:var(--critical)}.menu__item[aria-checked=true]{background:var(--accent-soft);color:var(--accent-text)}.menu__sep{border-top:1px solid var(--border);margin:4px 0}.menu__label{font-size:var(--fs-xs);text-transform:uppercase;letter-spacing:.05em;color:var(--text-3);padding:6px 10px 2px;font-weight:600}.tabs{border-bottom:1px solid var(--border);margin-bottom:var(--sp-5);gap:2px;display:flex;overflow-x:auto}.tab{color:var(--text-2);white-space:nowrap;background:0 0;border:0;border-bottom:2px solid #0000;border-radius:0;margin-bottom:-1px;padding:8px 12px;font-weight:500}.tab[aria-selected=true]{color:var(--text);border-bottom-color:var(--accent)}.tab:hover{color:var(--text)}.toasts{bottom:var(--sp-5);right:var(--sp-5);gap:var(--sp-2);z-index:200;flex-direction:column;max-width:min(380px,100vw - 32px);display:flex;position:fixed}.toast{border-radius:var(--r-3);background:var(--surface);border:1px solid var(--border);box-shadow:var(--shadow-2);font-size:var(--fs-base);align-items:flex-start;gap:10px;padding:10px 12px;animation:.14s ease-out pop;display:flex}.toast svg{flex:none;width:16px;height:16px;margin-top:2px}.toast--success svg{color:var(--good)}.toast--error svg{color:var(--critical)}.toast--info svg{color:var(--accent)}.toast__title{font-weight:600}.toast__desc{color:var(--text-2);font-size:var(--fs-sm);margin-top:2px}.toast__close{margin-left:auto}.empty{text-align:center;padding:var(--sp-10) var(--sp-6);align-items:center;gap:var(--sp-2);flex-direction:column;display:flex}.empty__icon{background:var(--accent-soft);width:44px;height:44px;color:var(--accent-text);margin-bottom:var(--sp-2);border-radius:12px;place-items:center;display:grid}.empty__icon svg{width:20px;height:20px}.empty__title{font-weight:600;font-size:var(--fs-md)}.empty__desc{color:var(--text-2);max-width:44ch}.empty__actions{gap:var(--sp-2);margin-top:var(--sp-3);flex-wrap:wrap;justify-content:center;display:flex}.empty--compact{padding:var(--sp-6) var(--sp-4)}.error-state .empty__icon{background:var(--critical-soft);color:var(--critical-text)}.skeleton{background:linear-gradient(90deg, var(--surface-2) 25%, var(--surface-3) 50%, var(--surface-2) 75%);border-radius:var(--r-1);background-size:200% 100%;animation:1.4s infinite shimmer;display:block}@keyframes shimmer{0%{background-position:200% 0}to{background-position:-200% 0}}.skeleton-rows{padding:var(--sp-4);flex-direction:column;gap:10px;display:flex}.tip{display:inline-flex;position:relative}.tip__bubble{background:var(--text);color:var(--bg);border-radius:var(--r-1);font-size:var(--fs-xs);white-space:nowrap;pointer-events:none;opacity:0;z-index:60;padding:5px 8px;transition:opacity .1s;position:absolute;bottom:calc(100% + 6px);left:50%;transform:translate(-50%)}.tip:hover .tip__bubble,.tip:focus-within .tip__bubble{opacity:1}.range-picker{flex-wrap:wrap;align-items:center;gap:6px;display:flex}.range-picker .input{width:140px}.chart-card__summary{padding:0 var(--sp-5);margin-top:var(--sp-3);align-items:baseline;gap:10px;display:flex}.chart-card__value{font-size:var(--fs-3xl);letter-spacing:-.02em;font-weight:600;line-height:1.1}.chart-card__body{padding:var(--sp-3) var(--sp-3) var(--sp-2)}.chart-area{width:100%;height:300px}.chart-area--sm{height:220px}.chart-area--sparkline{height:36px}.chart-legend{padding:0 var(--sp-5) var(--sp-3);font-size:var(--fs-sm);color:var(--text-2);flex-wrap:wrap;gap:6px 14px;display:flex}.chart-legend__item{color:inherit;border-radius:var(--r-1);background:0 0;border:0;align-items:center;gap:6px;padding:2px 0;display:inline-flex}.chart-legend__item[aria-pressed=false]{opacity:.4}.chart-legend__swatch{border-radius:2px;width:12px;height:3px}.chart-legend__swatch--rect{border-radius:2px;height:10px}.chart-tooltip{background:var(--surface);border:1px solid var(--border);border-radius:var(--r-2);box-shadow:var(--shadow-2);font-size:var(--fs-sm);min-width:150px;padding:8px 10px}.chart-tooltip__title{color:var(--text-3);font-size:var(--fs-xs);margin-bottom:4px}.chart-tooltip__row{justify-content:space-between;align-items:center;gap:14px;padding:1px 0;display:flex}.chart-tooltip__key{color:var(--text-2);align-items:center;gap:6px;min-width:0;display:inline-flex}.chart-tooltip__key span:last-child{text-overflow:ellipsis;white-space:nowrap;max-width:180px;overflow:hidden}.chart-tooltip__swatch{border-radius:2px;flex:none;width:10px;height:3px}.chart-tooltip__val{font-variant-numeric:tabular-nums;color:var(--text);font-weight:600}.chart-empty{height:300px;color:var(--text-3);font-size:var(--fs-sm);place-items:center;display:grid}.chart-refetching{opacity:.55;transition:opacity .2s}.chart-table-wrap{border-top:1px solid var(--border);max-height:360px;overflow:auto}.cohort{font-size:var(--fs-sm);font-variant-numeric:tabular-nums}.cohort th{background:var(--surface-2);font-size:var(--fs-xs);text-transform:uppercase;letter-spacing:.04em;color:var(--text-3);text-align:center;white-space:nowrap;z-index:1;padding:6px 8px;position:sticky;top:0}.cohort th:first-child,.cohort td:first-child{text-align:left;background:var(--surface);z-index:2;position:sticky;left:0}.cohort th:first-child{z-index:3;background:var(--surface-2)}.cohort td{text-align:center;padding:0}.cohort__cell{border-radius:3px;min-width:44px;height:28px;margin:2px;font-weight:500;line-height:28px;display:block}.cohort__cell--empty{background:var(--surface-2);color:var(--text-3)}.cohort__label{white-space:nowrap;color:var(--text-2);padding:0 8px}.cohort__cell:hover{outline:2px solid var(--text);outline-offset:-2px}.charts-layout{gap:var(--sp-5);grid-template-columns:220px 1fr;align-items:start;display:grid}.chart-picker{top:var(--sp-5);flex-direction:column;gap:2px;display:flex;position:sticky}.chart-picker__group{font-size:var(--fs-xs);text-transform:uppercase;letter-spacing:.06em;color:var(--text-3);padding:12px 10px 4px;font-weight:600}.chart-picker__item{text-align:left;border-radius:var(--r-2);width:100%;color:var(--text-2);font-size:var(--fs-base);background:0 0;border:0;padding:6px 10px;display:block}.chart-picker__item:hover{background:var(--surface-2);color:var(--text)}.chart-picker__item[aria-current=true]{background:var(--accent-soft);color:var(--accent-text);font-weight:500}.filter-row{align-items:center;gap:var(--sp-2);margin-bottom:var(--sp-4);flex-wrap:wrap;display:flex}.filter-row .select{width:auto;min-width:120px}@media (width<=900px){.charts-layout{grid-template-columns:1fr}.chart-picker{flex-flow:wrap;position:static}.chart-picker__group{width:100%}.chart-picker__item{width:auto}}.timeline{flex-direction:column;display:flex}.timeline__item{border-bottom:1px solid var(--border);grid-template-columns:28px 1fr auto;align-items:start;gap:12px;padding:10px 0;display:grid}.timeline__item:last-child{border-bottom:0}.timeline__icon{background:var(--neutral-soft);width:28px;height:28px;color:var(--text-2);border-radius:8px;place-items:center;display:grid}.timeline__icon svg{width:14px;height:14px}.timeline__icon--good{background:var(--good-soft);color:var(--good-text)}.timeline__icon--warning{background:var(--warning-soft);color:var(--warning-text)}.timeline__icon--critical{background:var(--critical-soft);color:var(--critical-text)}.timeline__icon--accent{background:var(--accent-soft);color:var(--accent-text)}.timeline__title{flex-wrap:wrap;align-items:center;gap:8px;font-weight:500;display:flex}.timeline__meta{font-size:var(--fs-sm);color:var(--text-3);margin-top:2px}.timeline__right{text-align:right;font-size:var(--fs-sm);color:var(--text-3);white-space:nowrap}.timeline__amount{color:var(--text);font-variant-numeric:tabular-nums;font-weight:600}.ent-card{padding:var(--sp-4);flex-direction:column;gap:6px;display:flex}.ent-card__head{justify-content:space-between;align-items:center;gap:8px;display:flex}.ent-card__id{font-weight:600;font-family:var(--font-mono)}.steps{gap:var(--sp-4);counter-reset:step;flex-direction:column;display:flex}.step{gap:var(--sp-4);grid-template-columns:32px 1fr;display:grid}.step__num{background:var(--accent-soft);width:32px;height:32px;color:var(--accent-text);font-weight:700;font-size:var(--fs-sm);border-radius:50%;place-items:center;display:grid}.step__num--done{background:var(--good-soft);color:var(--good-text)}.step__title{font-weight:600;font-size:var(--fs-md);align-items:center;gap:8px;margin-bottom:4px;display:flex}.step__body{gap:var(--sp-3);color:var(--text-2);flex-direction:column;display:flex}.auth{min-height:100%;padding:var(--sp-6);background:var(--bg);place-items:center;display:grid}.auth__card{width:100%;max-width:400px;padding:var(--sp-8);gap:var(--sp-5);flex-direction:column;display:flex}.auth__brand{font-weight:700;font-size:var(--fs-lg);align-items:center;gap:10px;display:flex}.auth__foot{text-align:center;font-size:var(--fs-sm);color:var(--text-2)}.callout{border-radius:var(--r-2);font-size:var(--fs-sm);background:var(--accent-soft);color:var(--accent-text);border:1px solid #0000;gap:10px;padding:10px 12px;display:flex}.callout svg{flex:none;width:15px;height:15px;margin-top:1px}.callout--warning{background:var(--warning-soft);color:var(--warning-text)}.callout--critical{background:var(--critical-soft);color:var(--critical-text)}.callout--neutral{background:var(--surface-2);color:var(--text-2);border-color:var(--border)}.flag{margin-right:4px;font-size:15px}.id-cell{font-family:var(--font-mono);font-size:var(--fs-sm)}.two-col{gap:var(--sp-4);grid-template-columns:1fr 1fr;display:grid}.two-col--wide{grid-template-columns:2fr 1fr}@media (width<=1000px){.two-col,.two-col--wide{grid-template-columns:1fr}}.status-dot{border-radius:50%;width:8px;height:8px;display:inline-block}.pagination{align-items:center;gap:6px;display:flex}.delta-pill{font-size:var(--fs-sm);color:var(--text-3);align-items:center;gap:3px;font-weight:500;display:inline-flex}.delta-pill svg{width:13px;height:13px}.delta-pill--good{color:var(--good-text)}.delta-pill--bad{color:var(--critical-text)}.inline-code{font-family:var(--font-mono);background:var(--surface-2);border:1px solid var(--border);border-radius:4px;padding:1px 5px;font-size:.9em}.search-box{flex:200px;max-width:320px}.notfound{text-align:center;min-height:100%;padding:var(--sp-8);place-items:center;display:grid}.cohort tbody th{text-transform:none;letter-spacing:0;font-size:var(--fs-sm);color:var(--text-2);text-align:left;background:var(--surface);font-weight:500}
