@font-face{font-family:"Source Sans 3 Variable";font-style:normal;font-display:swap;font-weight:200 900;src:url(/assets/source-sans-3-cyrillic-ext-wght-normal-c-5QAGAI.woff2)format("woff2-variations");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:"Source Sans 3 Variable";font-style:normal;font-display:swap;font-weight:200 900;src:url(/assets/source-sans-3-cyrillic-wght-normal-BMDVbyM7.woff2)format("woff2-variations");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:"Source Sans 3 Variable";font-style:normal;font-display:swap;font-weight:200 900;src:url(/assets/source-sans-3-greek-ext-wght-normal-BXZfsJY4.woff2)format("woff2-variations");unicode-range:U+1F??}@font-face{font-family:"Source Sans 3 Variable";font-style:normal;font-display:swap;font-weight:200 900;src:url(/assets/source-sans-3-greek-wght-normal-Cc-u-6OI.woff2)format("woff2-variations");unicode-range:U+370-377,U+37A-37F,U+384-38A,U+38C,U+38E-3A1,U+3A3-3FF}@font-face{font-family:"Source Sans 3 Variable";font-style:normal;font-display:swap;font-weight:200 900;src:url(/assets/source-sans-3-vietnamese-wght-normal-BDs68eHQ.woff2)format("woff2-variations");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:"Source Sans 3 Variable";font-style:normal;font-display:swap;font-weight:200 900;src:url(/assets/source-sans-3-latin-ext-wght-normal-C8iNium2.woff2)format("woff2-variations");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C4,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:"Source Sans 3 Variable";font-style:normal;font-display:swap;font-weight:200 900;src:url(/assets/source-sans-3-latin-wght-normal-Bo_j9asI.woff2)format("woff2-variations");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}:root{--page:#f4f6fa;--surface:#fff;--ink:#04060b;--ink-soft:#545e70;--line:#e4e8ef;--line-strong:#cfd5e0;--accent:#1947c2;--on-accent:#fff;--focus:#1947c2;--tint:#eef2fb;--chart-1:#2a78d6;--chart-2:#eb6834;--grid:#e1e0d9;--axis:#c3c2b7;--muted:#6b6a65;--good-bg:#e3f5e3;--good-ink:#006300;--warn-bg:#fff3d6;--warn-ink:#6b4a00;--bad-bg:#fbe3e3;--bad-ink:#9b1c1c;--up:#006300;--down:#b42318;--radius:10px;--font:"Source Sans 3 Variable", "Source Sans 3", system-ui, -apple-system, "Segoe UI", sans-serif;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}@media (prefers-color-scheme:dark){:root:not([data-theme=light]){--page:#070d19;--surface:#0d1628;--ink:#e7ebf3;--ink-soft:#a3adbf;--line:#1c2840;--line-strong:#2a3854;--accent:#7d9cff;--on-accent:#06102a;--focus:#a3b9ff;--tint:#13203a;--chart-1:#3987e5;--chart-2:#d95926;--grid:#2c2c2a;--axis:#383835;--muted:#9a998f;--good-bg:#0f2a12;--good-ink:#6fd46f;--warn-bg:#2a1f06;--warn-ink:#f2c45a;--bad-bg:#2e1111;--bad-ink:#ff9b9b;--up:#4fc94f;--down:#ff8a80;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}}:root[data-theme=dark]{--page:#070d19;--surface:#0d1628;--ink:#e7ebf3;--ink-soft:#a3adbf;--line:#1c2840;--line-strong:#2a3854;--accent:#7d9cff;--on-accent:#06102a;--focus:#a3b9ff;--tint:#13203a;--chart-1:#3987e5;--chart-2:#d95926;--grid:#2c2c2a;--axis:#383835;--muted:#9a998f;--good-bg:#0f2a12;--good-ink:#6fd46f;--warn-bg:#2a1f06;--warn-ink:#f2c45a;--bad-bg:#2e1111;--bad-ink:#ff9b9b;--up:#4fc94f;--down:#ff8a80;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}*,:before,:after{box-sizing:border-box}html{-webkit-text-size-adjust:100%}body{background:var(--page);color:var(--ink);font-family:var(--font);font-variant-numeric:tabular-nums;margin:0;font-size:16px;line-height:1.5}h1,h2,h3{letter-spacing:-.01em;margin:0;font-weight:640;line-height:1.25}h1{font-size:1.6rem}h2{font-size:1.2rem}h3{font-size:1rem}p{margin:0}a{color:var(--accent)}:focus-visible{outline:2px solid var(--focus);outline-offset:2px;border-radius:4px}button,select,input,textarea{font:inherit;color:inherit}.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}.skip{background:var(--surface);z-index:10;border-radius:6px;padding:6px 10px;position:absolute;top:-40px;left:8px}.skip:focus{top:8px}.app{flex-direction:column;min-height:100vh;display:flex}.test-banner{color:#0b0b0b;text-align:center;background:#fab219;padding:6px 16px;font-weight:700}.topbar{background:var(--surface);border-bottom:1px solid var(--line);z-index:5;flex-wrap:wrap;align-items:center;gap:12px 20px;padding:10px 24px;display:flex;position:sticky;top:0}.brand{color:var(--ink);align-items:center;gap:8px;font-size:1.1rem;font-weight:700;text-decoration:none;display:inline-flex}.brand-mark{background:var(--accent);border-radius:6px;width:22px;height:22px;display:inline-block}.nav{flex-wrap:wrap;align-items:center;gap:4px 14px;display:flex}.nav a{color:var(--ink-soft);padding:6px 2px;font-weight:560;text-decoration:none}.nav a[aria-current=page]{color:var(--ink);box-shadow:inset 0 -2px 0 var(--accent)}.controls{flex-wrap:wrap;align-items:center;gap:8px;margin-left:auto;display:flex}select,input[type=text],input:not([type]),textarea{background:var(--surface);border:1px solid var(--line-strong);border-radius:8px;min-height:36px;padding:6px 10px}textarea{width:100%;min-height:120px}select,input,textarea{max-width:100%}.card,.field,form.stack{min-width:0}.seg{border:1px solid var(--line-strong);border-radius:8px;display:inline-flex;overflow:hidden}.seg button{cursor:pointer;background:0 0;border:0;min-height:36px;padding:6px 12px}.seg button[aria-pressed=true]{background:var(--accent);color:var(--on-accent);font-weight:600}.icon-btn,.btn{border:1px solid var(--line-strong);background:var(--surface);cursor:pointer;border-radius:8px;min-width:36px;min-height:36px;padding:6px 12px}.btn.primary{background:var(--accent);border-color:var(--accent);color:var(--on-accent);font-weight:600}.btn:disabled{opacity:.6;cursor:default}.badge{background:var(--bad-ink);min-width:20px;color:var(--surface);text-align:center;border-radius:999px;margin-left:6px;padding:0 6px;font-size:.75rem;font-weight:700;display:inline-block}.notice{background:var(--warn-bg);color:var(--warn-ink);border-bottom:1px solid var(--line);padding:10px 24px}.notice a{color:inherit;font-weight:700}.main{flex-direction:column;flex:1;gap:20px;width:100%;max-width:1280px;margin:0 auto;padding:24px;display:flex}.main:focus{outline:none}.foot{color:var(--ink-soft);text-align:center;padding:16px 24px 28px;font-size:.85rem}.gate{gap:12px;max-width:560px;margin:15vh auto;padding:24px;display:grid}.page-head{flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:12px;display:flex}.page-head .sub{color:var(--ink-soft)}.lead-sentence{font-size:1.15rem}.card{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);min-width:0;padding:16px}.cards{grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:14px;display:grid}.client-card{color:inherit;flex-direction:column;gap:10px;text-decoration:none;display:flex}.client-card:hover{border-color:var(--line-strong)}.row{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:8px;display:flex}.muted{color:var(--ink-soft)}.small{font-size:.85rem}.status{white-space:nowrap;border-radius:999px;align-items:center;gap:4px;padding:2px 9px;font-size:.8rem;font-weight:700;display:inline-flex}.status-growing{background:var(--good-bg);color:var(--good-ink)}.status-steady{background:var(--warn-bg);color:var(--warn-ink)}.status-slipping{background:var(--bad-bg);color:var(--bad-ink)}.nums{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;display:grid}.num b{font-size:1.4rem;line-height:1.2;display:block}.num .label{color:var(--ink-soft);font-size:.8rem;line-height:1.3;display:block}.num .delta,.tile .delta{display:block}.num b.state,.tile b.state{color:var(--ink-soft);padding:6px 0 4px;font-size:.95rem;font-weight:600;line-height:1.3}.delta{font-size:.8rem;font-weight:600}.delta.up{color:var(--up)}.delta.down{color:var(--down)}.delta.flat{color:var(--ink-soft)}.next{background:var(--tint);border-radius:8px;padding:8px 10px;font-size:.9rem}.tiles{grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;display:grid}.tile b{font-size:1.8rem;line-height:1.15;display:block}.two{grid-template-columns:1fr 1fr;gap:14px;display:grid}.list{gap:10px;margin:8px 0 0;padding:0;list-style:none;display:grid}.finding{border-left:3px solid var(--line-strong);padding-left:10px}.finding.high{border-left-color:var(--bad-ink)}.finding.working{border-left-color:var(--good-ink)}.evidence{flex-wrap:wrap;gap:6px;margin-top:4px;display:flex}.chip{background:var(--tint);color:var(--ink-soft);border-radius:6px;padding:1px 7px;font-size:.78rem}.chip b{color:var(--ink);font-weight:600}.setup-note{background:var(--warn-bg);color:var(--warn-ink);border-radius:8px;padding:10px 12px;font-size:.9rem}.asof{color:var(--ink-soft);flex-wrap:wrap;gap:6px 14px;font-size:.82rem;display:flex}.dot{vertical-align:middle;border-radius:50%;width:8px;height:8px;margin-right:5px;display:inline-block}.dot.ok{background:var(--good-ink)}.dot.waiting,.dot.pending{background:var(--warn-ink)}.dot.error{background:var(--bad-ink)}.dot.not_connected{background:var(--muted)}.table-wrap{-webkit-overflow-scrolling:touch;overflow-x:auto}table.data{border-collapse:collapse;width:100%;font-size:.9rem}table.data th,table.data td{border-bottom:1px solid var(--line);text-align:right;white-space:nowrap;padding:7px 8px}table.data th:first-child,table.data td:first-child{text-align:left;white-space:normal;overflow-wrap:anywhere;min-width:140px;max-width:420px}table.data th{color:var(--ink-soft);font-size:.8rem;font-weight:600}table.data th button{all:unset;cursor:pointer}table.data th button:focus-visible{outline:2px solid var(--focus);border-radius:3px}.table-foot{flex-wrap:wrap;justify-content:space-between;gap:8px;margin-top:8px;display:flex}.tabs{border-bottom:1px solid var(--line);flex-wrap:wrap;gap:2px;display:flex}.tabs button{cursor:pointer;color:var(--ink-soft);background:0 0;border:0;min-height:40px;padding:8px 12px;font-weight:560}.tabs button[aria-selected=true]{color:var(--ink);box-shadow:inset 0 -2px 0 var(--accent)}.pills{flex-wrap:wrap;gap:6px;display:flex}.pills button{border:1px solid var(--line-strong);background:var(--surface);cursor:pointer;border-radius:999px;min-height:32px;padding:3px 12px}.pills button[aria-pressed=true]{background:var(--accent);border-color:var(--accent);color:var(--on-accent)}.chart{position:relative}.chart svg{width:100%;height:auto;display:block;overflow:visible}.chart .gridline{stroke:var(--grid);stroke-width:1px}.chart .axis{stroke:var(--axis);stroke-width:1px}.chart text{fill:var(--muted);font-size:11px;font-family:var(--font)}.chart .s1{stroke:var(--chart-1)}.chart .s2{stroke:var(--chart-2)}.chart .crosshair{stroke:var(--axis);stroke-width:1px}.chart .marker{stroke:var(--surface);stroke-width:2px}.legend{color:var(--ink-soft);flex-wrap:wrap;gap:14px;margin-bottom:4px;font-size:.82rem;display:flex}.swatch{vertical-align:middle;border-radius:2px;width:14px;height:3px;margin-right:6px;display:inline-block}.tooltip{pointer-events:none;background:var(--surface);border:1px solid var(--line-strong);white-space:nowrap;border-radius:8px;padding:6px 9px;font-size:.82rem;position:absolute;top:0;box-shadow:0 4px 14px #0000001f}.spark{width:100%;height:28px;display:block}.spark polyline{stroke:var(--chart-1);stroke-width:2px;fill:none}.empty{color:var(--ink-soft);padding:12px 0}form.stack,.stack{grid-template-columns:minmax(0,1fr);gap:14px;display:grid}.field{grid-template-columns:minmax(0,1fr);gap:4px;display:grid}.field label,.field .label{font-size:.9rem;font-weight:600}.field .hint{color:var(--ink-soft);font-size:.82rem}.inline{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.inline>select,.inline>input{flex:220px;min-width:0}.ok-text{color:var(--good-ink)}.err-text{color:var(--bad-ink)}.checks{flex-wrap:wrap;gap:6px 16px;display:flex}@media (width<=900px){.tiles{grid-template-columns:repeat(2,minmax(0,1fr))}.two{grid-template-columns:1fr}}@media (width<=640px){.topbar{padding:10px 16px}.controls{width:100%;margin-left:0}.controls select{flex:140px}.main{padding:16px}.tile b{font-size:1.4rem}.nums{gap:4px}}@media (prefers-reduced-motion:reduce){*{transition:none!important;animation:none!important}}
