:root,:root[data-theme=dark]{--bg:#020817;--panel:#020817;--panel-2:#0b1222;--line:#1e293b;--line-strong:#334155;--ink:#f8fafc;--body:#cbd5e1;--muted:#94a3b8;--faint:#64748b;--accent:#f77421;--accent-ink:#fff;--accent-soft:#f7742124;--cyan:#00c8e5;--cyan-soft:#00c8e51f;--info:#00c8e5;--info-soft:#00c8e51f;--progress:#f77421;--progress-soft:#f7742124;--success:#4ade80;--success-soft:#4ade801f;--warning:#fbbf24;--warning-soft:#fbbf241f;--danger:#ef4444;--danger-soft:#ef444424;--neutral:#94a3b8;--neutral-soft:#1e293b;--shadow:0 4px 6px -1px #0000001a, 0 2px 4px -2px #0000001a;--radius:.5rem;--radius-sm:.375rem;--font:ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";--mono:ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}:root[data-theme=light]{--bg:#fff;--panel:#fff;--panel-2:#f1f5f9;--line:#e2e8f0;--line-strong:#cbd5e1;--ink:#020817;--body:#1e293b;--muted:#64748b;--faint:#94a3b8;--accent:#f77421;--accent-ink:#fff;--accent-soft:#f774211f;--cyan:#0094aa;--cyan-soft:#00c8e524;--info:#0094aa;--info-soft:#00c8e524;--progress:#c2560f;--progress-soft:#f774211f;--success:#15803d;--success-soft:#dcfce7;--warning:#b45309;--warning-soft:#fef3c7;--danger:#dc2626;--danger-soft:#fee2e2;--neutral:#475569;--neutral-soft:#f1f5f9;--shadow:0 4px 6px -1px #0000001a, 0 2px 4px -2px #0000001a;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}*{box-sizing:border-box}html,body,#root{height:100%}body{background:var(--bg);color:var(--body);font:14px/1.45 var(--font);-webkit-font-smoothing:antialiased;margin:0}h1,h2,h3,h4{color:var(--ink);letter-spacing:-.01em;margin:0;font-weight:650}h1{font-size:22px}h2{font-size:17px}h3{font-size:15px}h4{text-transform:uppercase;letter-spacing:.06em;color:var(--muted);font-size:13px;font-weight:600}a{color:var(--cyan);text-decoration:none}a:hover{text-decoration:underline}code,.mono{font-family:var(--mono);font-size:12.5px}button{font:inherit;color:inherit;cursor:pointer;background:0 0;border:0;padding:0}button:disabled{cursor:not-allowed}input,select,textarea{font:inherit;color:var(--ink);background:var(--panel);border:1px solid var(--line-strong);border-radius:var(--radius-sm);width:100%;min-height:36px;padding:8px 10px}input:focus,select:focus,textarea:focus,button:focus-visible{outline:2px solid var(--cyan);outline-offset:1px}::placeholder{color:var(--faint)}.shell{grid-template-columns:240px 1fr;min-height:100%;display:grid}.side{background:var(--panel);border-right:1px solid var(--line);flex-direction:column;height:100vh;display:flex;position:sticky;top:0}.brand{color:var(--ink);letter-spacing:-.01em;align-items:center;gap:10px;padding:18px 18px 14px;font-weight:700;display:flex}.brand img{width:auto;height:34px;display:block}.brand small{color:var(--muted);font-size:11.5px;font-weight:500;display:block}.scope{padding:0 12px 12px}.scope label{text-transform:uppercase;letter-spacing:.06em;color:var(--muted);margin:0 6px 4px;font-size:11px;display:block}.nav{flex-direction:column;flex:1;gap:2px;padding:4px 8px;display:flex;overflow-y:auto}.nav a{border-radius:var(--radius-sm);color:var(--body);align-items:center;gap:10px;padding:8px 10px;font-weight:500;display:flex}.nav a:hover{background:var(--panel-2);text-decoration:none}.nav a.active{background:var(--accent-soft);color:var(--accent)}.nav .section{text-transform:uppercase;letter-spacing:.06em;color:var(--faint);margin:14px 10px 4px;font-size:11px}.me{border-top:1px solid var(--line);align-items:center;gap:10px;padding:12px;display:flex}.me .who{flex:1;min-width:0}.me .who div{white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.main{min-width:0}.page{max-width:1400px;padding:24px 28px 48px}.page-head{flex-wrap:wrap;align-items:flex-end;gap:16px;margin-bottom:18px;display:flex}.page-head .grow{flex:1}.page-head p{color:var(--muted);margin:4px 0 0}.topbar{display:none}@media (width<=860px){.shell{grid-template-columns:1fr}.side{z-index:40;width:260px;box-shadow:var(--shadow);transition:transform .2s;position:fixed;inset:0 auto 0 0;transform:translate(-100%)}.side.open{transform:none}.topbar{border-bottom:1px solid var(--line);background:var(--panel);z-index:30;align-items:center;gap:10px;padding:10px 16px;display:flex;position:sticky;top:0}.page{padding:16px 16px 40px}}.card{background:var(--panel);border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow)}.card>.hd{border-bottom:1px solid var(--line);align-items:center;gap:10px;padding:14px 16px;display:flex}.card>.hd h3{flex:1}.card>.bd{padding:16px}.grid{gap:16px;display:grid}.kpis{grid-template-columns:repeat(auto-fit,minmax(170px,1fr));gap:12px;margin-bottom:16px;display:grid}.kpi{background:var(--panel);border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow);padding:14px 16px}.kpi .label{color:var(--muted);font-size:12.5px}.kpi .value{color:var(--ink);letter-spacing:-.02em;font-variant-numeric:tabular-nums;margin-top:2px;font-size:26px;font-weight:650}.kpi .sub{color:var(--muted);margin-top:2px;font-size:12px}.row{align-items:center;gap:8px;display:flex}.wrap{flex-wrap:wrap}.grow{flex:1}.muted{color:var(--muted)}.faint{color:var(--faint)}.small{font-size:12.5px}.right{text-align:right}.num{font-variant-numeric:tabular-nums}.stack{flex-direction:column;gap:12px;display:flex}.two{grid-template-columns:1fr 1fr;gap:12px;display:grid}@media (width<=700px){.two{grid-template-columns:1fr}}.btn{border:1px solid var(--cyan);height:36px;color:var(--cyan);white-space:nowrap;background:0 0;border-radius:9999px;justify-content:center;align-items:center;gap:6px;padding:0 16px;font-weight:500;transition:background .15s,color .15s;display:inline-flex}.btn:hover:not(:disabled){background:var(--cyan-soft)}.btn.primary{background:var(--accent);border-color:var(--accent);color:var(--accent-ink)}.btn.primary:hover:not(:disabled){background:#e8681a}.btn.danger{color:var(--danger);border-color:color-mix(in srgb, var(--danger) 45%, var(--line))}.btn.danger.solid{background:var(--danger);color:#fff;border-color:var(--danger)}.btn.ghost{color:var(--muted);background:0 0;border-color:#0000}.btn.ghost:hover:not(:disabled){color:var(--ink);background:var(--panel-2)}.btn.sm{height:30px;padding:0 12px;font-size:12.5px}.btn:disabled{opacity:.55}.pill{white-space:nowrap;border-radius:999px;align-items:center;gap:6px;height:22px;padding:0 8px;font-size:12px;font-weight:600;display:inline-flex}.pill:before{content:"";background:currentColor;border-radius:50%;width:6px;height:6px}.pill.plain:before{display:none}.tone-neutral{color:var(--neutral);background:var(--neutral-soft)}.tone-info{color:var(--info);background:var(--info-soft)}.tone-progress{color:var(--progress);background:var(--progress-soft)}.tone-success{color:var(--success);background:var(--success-soft)}.tone-warning{color:var(--warning);background:var(--warning-soft)}.tone-danger{color:var(--danger);background:var(--danger-soft)}.table{border-collapse:collapse;width:100%}.table th{text-align:left;color:var(--muted);border-bottom:1px solid var(--line);white-space:nowrap;background:var(--panel);padding:9px 12px;font-size:12px;font-weight:600;position:sticky;top:0}.table td{border-bottom:1px solid var(--line);vertical-align:middle;padding:10px 12px}.table td.mono,.table td .mono,.table td.num{white-space:nowrap}.table tr:last-child td{border-bottom:0}.table tr.click{cursor:pointer}.table tr.click:hover td{background:var(--panel-2)}.scroll-x{overflow-x:auto}.tabs{border-bottom:1px solid var(--line);gap:4px;margin-bottom:16px;display:flex;overflow-x:auto}.tabs button{color:var(--muted);white-space:nowrap;border-bottom:2px solid #0000;margin-bottom:-1px;padding:9px 12px;font-weight:550}.tabs button.on{color:var(--accent);border-bottom-color:var(--accent)}.seg{background:var(--panel-2);border:1px solid var(--line);border-radius:9999px;padding:3px;display:inline-flex}.seg button{color:var(--muted);white-space:nowrap;border-radius:9999px;padding:5px 12px;font-size:13px;font-weight:500}.seg button.on{background:var(--accent);color:var(--accent-ink)}.field{flex-direction:column;gap:5px;display:flex}.field>span{color:var(--ink);font-size:12.5px;font-weight:600}.field .help{color:var(--muted);font-size:12px}.field .err{color:var(--danger);font-size:12px}.check{cursor:pointer;align-items:flex-start;gap:8px;display:flex}.check input{width:16px;height:16px;min-height:16px;accent-color:var(--accent);margin-top:2px}.empty{text-align:center;color:var(--muted);padding:36px 16px}.notice{border-radius:var(--radius-sm);border:1px solid #0000;padding:10px 12px;font-size:13px}.notice.warn{background:var(--warning-soft);color:var(--warning)}.notice.err{background:var(--danger-soft);color:var(--danger)}.notice.info{background:var(--info-soft);color:var(--info)}.notice.ok{background:var(--success-soft);color:var(--success)}.av{background:var(--accent-soft);width:30px;height:30px;color:var(--accent);border-radius:50%;flex:none;place-items:center;font-size:12px;font-weight:700;display:inline-grid}.overlay{z-index:50;background:#02061773;place-items:center;padding:16px;display:grid;position:fixed;inset:0}.modal{background:var(--panel);border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow);flex-direction:column;width:min(560px,100%);max-height:calc(100vh - 32px);display:flex}.modal.wide{width:min(820px,100%)}.modal .hd{border-bottom:1px solid var(--line);align-items:center;gap:10px;padding:16px 18px;display:flex}.modal .hd h2{flex:1}.modal .bd{flex-direction:column;gap:14px;padding:18px;display:flex;overflow-y:auto}.modal .ft{border-top:1px solid var(--line);justify-content:flex-end;gap:8px;padding:12px 18px;display:flex}.drawer{background:var(--panel);border-left:1px solid var(--line);width:min(620px,100%);box-shadow:var(--shadow);z-index:45;flex-direction:column;display:flex;position:fixed;top:0;bottom:0;right:0}.drawer .hd{border-bottom:1px solid var(--line);align-items:center;gap:10px;padding:16px 18px;display:flex}.drawer .bd{flex-direction:column;flex:1;gap:16px;padding:18px;display:flex;overflow-y:auto}.toasts{z-index:60;flex-direction:column;gap:8px;display:flex;position:fixed;bottom:16px;right:16px}.toast{background:var(--ink);color:var(--panel);border-radius:var(--radius-sm);box-shadow:var(--shadow);max-width:420px;padding:10px 14px;font-weight:500}.toast.err{background:var(--danger);color:#fff}.kv{grid-template-columns:140px 1fr;gap:6px 12px;font-size:13px;display:grid}.kv dt{color:var(--muted)}.kv dd{color:var(--ink);overflow-wrap:anywhere;min-width:0;margin:0}.timeline{margin:0;padding:0;list-style:none}.timeline li{grid-template-columns:18px 1fr;gap:10px;padding-bottom:14px;display:grid;position:relative}.timeline li:before{content:"";background:var(--line);width:2px;position:absolute;top:18px;bottom:0;left:8px}.timeline li:last-child:before{display:none}.timeline .dot{background:currentColor;border-radius:50%;width:12px;height:12px;margin:4px 0 0 3px}.secret{align-items:stretch;gap:6px;display:flex}.secret code{background:var(--panel-2);border:1px solid var(--line);border-radius:var(--radius-sm);overflow-wrap:anywhere;color:var(--ink);flex:1;padding:8px 10px}.bars{border-bottom:1px solid var(--line);justify-content:center;align-items:flex-end;gap:4px;height:140px;padding-top:8px;display:flex}.bars .col{flex-direction:column;flex:1;justify-content:flex-end;gap:1px;min-width:6px;max-width:56px;display:flex;position:relative}.bars .col span{border-radius:3px 3px 0 0;display:block}.bars .col:hover:after{content:attr(data-tip);background:var(--ink);color:var(--panel);white-space:pre;z-index:2;border-radius:5px;padding:4px 7px;font-size:11.5px;position:absolute;bottom:calc(100% + 6px);left:50%;transform:translate(-50%)}.legend{color:var(--muted);gap:14px;font-size:12px;display:flex}.legend i{vertical-align:-1px;border-radius:2px;width:9px;height:9px;margin-right:5px;display:inline-block}.meter{background:var(--panel-2);border-radius:99px;height:8px;display:flex;overflow:hidden}.meter span{height:100%;display:block}.matrix th,.matrix td{text-align:center}.matrix th:first-child,.matrix td:first-child{text-align:left}.center-screen{place-items:center;min-height:100%;padding:24px;display:grid}.signin{width:min(400px,100%)}.spinner{border:2px solid var(--line-strong);border-top-color:var(--accent);border-radius:50%;width:18px;height:18px;animation:.8s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}.brand-word{color:var(--accent)}.brand-mark{color:var(--cyan)}@media (prefers-reduced-motion:reduce){.spinner{animation-duration:2.4s}.side{transition:none}}
