@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url("./media/inter-cyrillic-ext-wght-normal-IYF56FF6.woff2") format("woff2-variations");unicode-range:U+0460-052F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url("./media/inter-cyrillic-wght-normal-JEOLYBOO.woff2") format("woff2-variations");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url("./media/inter-greek-ext-wght-normal-EOVOK2B5.woff2") format("woff2-variations");unicode-range:U+1F00-1FFF}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url("./media/inter-greek-wght-normal-IRE366VL.woff2") format("woff2-variations");unicode-range:U+0370-0377,U+037A-037F,U+0384-038A,U+038C,U+038E-03A1,U+03A3-03FF}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url("./media/inter-vietnamese-wght-normal-CE5GGD3W.woff2") format("woff2-variations");unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url("./media/inter-latin-ext-wght-normal-HA22NDSG.woff2") format("woff2-variations");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url("./media/inter-latin-wght-normal-NRMW37G5.woff2") format("woff2-variations");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}:root{color-scheme:light;--font-sans: "Inter Variable", ui-sans-serif, system-ui, -apple-system, "Segoe UI", Roboto, sans-serif;--font-mono: ui-monospace, "SF Mono", "JetBrains Mono", Menlo, Consolas, monospace;--bg: #fafafa;--surface: #ffffff;--surface-2: #f4f4f5;--surface-hover: #f1f1f2;--overlay: rgb(10 10 12 / .42);--border: #e7e7ea;--border-strong: #d4d4d9;--text: #0c0c0e;--text-2: #55555d;--text-3: #686872;--text-inverse: #fafafa;--primary: #0c0c0e;--primary-hover: #26262b;--primary-text: #fafafa;--ok: #1f7a4d;--ok-bg: #e9f5ee;--warn: #92600a;--warn-bg: #fbf3e0;--danger: #b4281f;--danger-bg: #fbebea;--neutral-bg: #eeeef0;--focus: #0c0c0e;--shadow-pop: 0 8px 28px rgb(10 10 12 / .12), 0 1px 3px rgb(10 10 12 / .08);--meter-track: #e9e9ec;--meter-fill: #0c0c0e;--radius-xs: 4px;--radius-sm: 6px;--radius: 8px;--sidebar-w: 224px;--topbar-h: 52px;--ease: cubic-bezier(.2, 0, 0, 1)}:root[data-theme=dark]{color-scheme:dark;--bg: #09090b;--surface: #101012;--surface-2: #161619;--surface-hover: #1b1b1f;--overlay: rgb(0 0 0 / .62);--border: #222227;--border-strong: #35353c;--text: #ececef;--text-2: #a0a0aa;--text-3: #8c8c97;--text-inverse: #09090b;--primary: #ececef;--primary-hover: #ffffff;--primary-text: #09090b;--ok: #5cc690;--ok-bg: rgb(92 198 144 / .1);--warn: #e0b254;--warn-bg: rgb(224 178 84 / .1);--danger: #ef7a72;--danger-bg: rgb(239 122 114 / .1);--neutral-bg: #1c1c20;--focus: #ececef;--shadow-pop: 0 12px 36px rgb(0 0 0 / .55), 0 0 0 1px rgb(255 255 255 / .04);--meter-track: #232328;--meter-fill: #ececef}@media(prefers-color-scheme:dark){:root:not([data-theme=light]):not([data-theme=dark]){color-scheme:dark;--bg: #09090b;--surface: #101012;--surface-2: #161619;--surface-hover: #1b1b1f;--overlay: rgb(0 0 0 / .62);--border: #222227;--border-strong: #35353c;--text: #ececef;--text-2: #a0a0aa;--text-3: #8c8c97;--text-inverse: #09090b;--primary: #ececef;--primary-hover: #ffffff;--primary-text: #09090b;--ok: #5cc690;--ok-bg: rgb(92 198 144 / .1);--warn: #e0b254;--warn-bg: rgb(224 178 84 / .1);--danger: #ef7a72;--danger-bg: rgb(239 122 114 / .1);--neutral-bg: #1c1c20;--focus: #ececef;--shadow-pop: 0 12px 36px rgb(0 0 0 / .55), 0 0 0 1px rgb(255 255 255 / .04);--meter-track: #232328;--meter-fill: #ececef}}*,*:before,*:after{box-sizing:border-box}html{-webkit-text-size-adjust:100%;text-size-adjust:100%}body{margin:0;background:var(--bg);color:var(--text);font-family:var(--font-sans);font-size:13.5px;line-height:1.5;font-feature-settings:"cv11","ss03";-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;text-rendering:optimizeLegibility}h1,h2,h3,h4,p{margin:0}h1{font-size:20px;font-weight:600;letter-spacing:-.015em;line-height:1.25}h2{font-size:14px;font-weight:600;letter-spacing:-.005em}h3{font-size:13px;font-weight:600}a{color:inherit;text-decoration:none}a:hover{text-decoration:underline;text-underline-offset:3px;text-decoration-color:var(--text-3)}button,input,select,textarea{font:inherit;color:inherit}button{cursor:pointer}:disabled{cursor:not-allowed}code,.mono{font-family:var(--font-mono);font-size:.92em}.num{font-variant-numeric:tabular-nums;font-feature-settings:"tnum"}:focus-visible{outline:2px solid var(--focus);outline-offset:2px;border-radius:var(--radius-xs)}:focus:not(:focus-visible){outline:none}::selection{background:color-mix(in srgb,var(--text) 18%,transparent)}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;border:0}*{scrollbar-width:thin;scrollbar-color:var(--border-strong) transparent}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.001ms!important;transition-duration:.001ms!important}}.stack{display:flex;flex-direction:column;gap:16px}.stack-sm{display:flex;flex-direction:column;gap:8px}.row{display:flex;align-items:center;gap:8px}.row-wrap{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.spread{display:flex;align-items:center;justify-content:space-between;gap:12px}.grow{flex:1 1 auto;min-width:0}.muted{color:var(--text-2)}.faint{color:var(--text-3)}.small{font-size:12px}.right{text-align:right}.nowrap{white-space:nowrap}.truncate{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.grid{display:grid;gap:12px}.grid-4{grid-template-columns:repeat(4,minmax(0,1fr))}.grid-3{grid-template-columns:repeat(3,minmax(0,1fr))}.grid-2{grid-template-columns:repeat(2,minmax(0,1fr))}@media(max-width:1100px){.grid-4,.grid-3{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:720px){.grid-4,.grid-3,.grid-2{grid-template-columns:minmax(0,1fr)}}.panel{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);min-width:0}.panel-head{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px 16px;border-bottom:1px solid var(--border);min-height:46px}.panel-head p{color:var(--text-3);font-size:12px}.panel-body{padding:16px}.panel-body.flush{padding:0}.metric{padding:14px 16px;display:flex;flex-direction:column;gap:6px}.metric-label{color:var(--text-2);font-size:12px;display:flex;align-items:center;gap:6px}.metric-value{font-size:24px;font-weight:600;letter-spacing:-.02em;font-variant-numeric:tabular-nums;line-height:1.15}.metric-sub{color:var(--text-3);font-size:12px}.btn{display:inline-flex;align-items:center;justify-content:center;gap:6px;height:30px;padding:0 12px;border-radius:var(--radius-sm);border:1px solid var(--border-strong);background:var(--surface);color:var(--text);font-weight:500;font-size:13px;white-space:nowrap;text-decoration:none;transition:background-color .12s var(--ease),border-color .12s var(--ease),color .12s var(--ease)}.btn:hover{background:var(--surface-hover);text-decoration:none}.btn:active{background:var(--surface-2)}.btn:disabled,.btn[aria-disabled=true]{opacity:.5;pointer-events:none}.btn-primary{background:var(--primary);color:var(--primary-text);border-color:var(--primary)}.btn-primary:hover{background:var(--primary-hover);border-color:var(--primary-hover)}.btn-danger{color:var(--danger)}.btn-danger:hover{background:var(--danger-bg);border-color:color-mix(in srgb,var(--danger) 40%,var(--border-strong))}.btn-danger-solid{background:var(--danger);border-color:var(--danger);color:#fff}.btn-danger-solid:hover{background:color-mix(in srgb,var(--danger) 88%,#000)}.btn-ghost{border-color:transparent;background:transparent;color:var(--text-2)}.btn-ghost:hover{background:var(--surface-hover);color:var(--text)}.btn-sm{height:26px;padding:0 9px;font-size:12.5px}.btn-icon{width:30px;padding:0}.btn-icon.btn-sm{width:26px}.btn svg{width:15px;height:15px;flex:none}.field{display:flex;flex-direction:column;gap:6px;min-width:0}.field>label,.label{font-size:12.5px;font-weight:500;color:var(--text)}.hint{color:var(--text-3);font-size:12px}.error-text{color:var(--danger);font-size:12px}.input,.select,.textarea{width:100%;height:32px;padding:0 10px;border-radius:var(--radius-sm);border:1px solid var(--border-strong);background:var(--surface);color:var(--text);transition:border-color .12s var(--ease),box-shadow .12s var(--ease)}.textarea{height:auto;padding:8px 10px;resize:vertical;line-height:1.5}.input::placeholder{color:var(--text-3)}.input:hover,.select:hover{border-color:color-mix(in srgb,var(--text) 40%,var(--border-strong))}.input:focus-visible,.select:focus-visible,.textarea:focus-visible{outline:none;border-color:var(--focus);box-shadow:0 0 0 3px color-mix(in srgb,var(--focus) 14%,transparent)}.input[aria-invalid=true],.input.invalid{border-color:var(--danger)}.input:disabled{background:var(--surface-2);color:var(--text-3)}.input-group{display:flex;align-items:stretch}.input-group .input{border-top-right-radius:0;border-bottom-right-radius:0}.input-addon{display:inline-flex;align-items:center;padding:0 10px;border:1px solid var(--border-strong);border-left:0;border-radius:0 var(--radius-sm) var(--radius-sm) 0;background:var(--surface-2);color:var(--text-2);font-size:12.5px}.search{position:relative}.search svg{position:absolute;left:10px;top:50%;transform:translateY(-50%);width:14px;height:14px;color:var(--text-3);pointer-events:none}.search .input{padding-left:32px}.check{display:flex;align-items:flex-start;gap:10px;cursor:pointer}.check input{margin:2px 0 0;width:15px;height:15px;accent-color:var(--primary);flex:none}.segmented{display:inline-flex;padding:2px;background:var(--surface-2);border:1px solid var(--border);border-radius:var(--radius-sm);gap:2px}.segmented button{border:0;background:transparent;height:24px;padding:0 10px;border-radius:4px;color:var(--text-2);font-size:12.5px;font-weight:500;display:inline-flex;align-items:center;gap:6px}.segmented button svg{width:13px;height:13px}.segmented button[aria-pressed=true],.segmented button[aria-selected=true]{background:var(--surface);color:var(--text);box-shadow:0 0 0 1px var(--border)}.badge{display:inline-flex;align-items:center;gap:6px;height:20px;padding:0 8px;border-radius:10px;font-size:12px;font-weight:500;background:var(--neutral-bg);color:var(--text-2);white-space:nowrap}.badge:before{content:"";width:6px;height:6px;border-radius:50%;background:currentColor;opacity:.9}.badge.plain:before{display:none}.badge.ok{background:var(--ok-bg);color:var(--ok)}.badge.warn{background:var(--warn-bg);color:var(--warn)}.badge.danger{background:var(--danger-bg);color:var(--danger)}.tag{display:inline-flex;align-items:center;height:20px;padding:0 6px;border-radius:var(--radius-xs);border:1px solid var(--border);color:var(--text-2);font-size:11.5px;font-weight:500;white-space:nowrap;background:var(--surface)}.table-wrap{overflow-x:auto}table.table{width:100%;border-collapse:collapse}.table th{text-align:left;font-weight:500;font-size:12px;color:var(--text-3);padding:8px 16px;border-bottom:1px solid var(--border);white-space:nowrap;background:var(--surface);position:sticky;top:0}.table td{padding:10px 16px;border-bottom:1px solid var(--border);vertical-align:middle;white-space:nowrap}.table td.wrap{white-space:normal}.table tr:last-child td{border-bottom:0}.table tbody tr{transition:background-color .1s var(--ease)}.table tbody tr:hover{background:var(--surface-hover)}.table tr.clickable{cursor:pointer}.table .col-actions{width:1%;white-space:nowrap;text-align:right}.meter{height:4px;border-radius:2px;background:var(--meter-track);overflow:hidden}.meter>span{display:block;height:100%;background:var(--meter-fill);border-radius:2px;transition:width .3s var(--ease)}.meter.warn>span{background:var(--warn)}.meter.danger>span{background:var(--danger)}.notice{display:flex;gap:10px;align-items:flex-start;padding:10px 12px;border-radius:var(--radius-sm);border:1px solid var(--border);background:var(--surface-2);color:var(--text-2);font-size:13px}.notice svg{width:15px;height:15px;flex:none;margin-top:2px}.notice>div{min-width:0}.notice strong{color:var(--text);font-weight:600}.notice.warn{background:var(--warn-bg);border-color:color-mix(in srgb,var(--warn) 30%,var(--border));color:var(--warn)}.notice.warn strong{color:var(--warn)}.notice.danger{background:var(--danger-bg);border-color:color-mix(in srgb,var(--danger) 30%,var(--border));color:var(--danger)}.notice.danger strong{color:var(--danger)}.notice.ok{background:var(--ok-bg);border-color:color-mix(in srgb,var(--ok) 30%,var(--border));color:var(--ok)}.kv{display:grid;grid-template-columns:minmax(120px,190px) 1fr;gap:0;margin:0}.kv dt,.kv dd{padding:9px 0;border-bottom:1px solid var(--border);margin:0;min-width:0}.kv dt{color:var(--text-2)}.kv dt:last-of-type,.kv dd:last-of-type{border-bottom:0}.kv dd{overflow-wrap:anywhere}@media(max-width:560px){.kv{grid-template-columns:1fr}.kv dt{padding-bottom:0;border-bottom:0}}.empty{display:flex;flex-direction:column;align-items:center;text-align:center;gap:6px;padding:40px 20px;color:var(--text-2)}.empty svg{width:22px;height:22px;color:var(--text-3);margin-bottom:4px}.empty strong{color:var(--text);font-weight:600}.skeleton{background:linear-gradient(90deg,var(--surface-2),var(--surface-hover),var(--surface-2));background-size:200% 100%;animation:shimmer 1.4s linear infinite;border-radius:var(--radius-xs);height:12px}@keyframes shimmer{to{background-position:-200% 0}}.tabs{display:flex;gap:2px;border-bottom:1px solid var(--border);overflow-x:auto;overflow-y:hidden}.tabs button{position:relative;border:0;background:transparent;padding:9px 12px;color:var(--text-2);font-weight:500;white-space:nowrap;border-radius:var(--radius-sm) var(--radius-sm) 0 0;transition:color .12s var(--ease)}.tabs button:hover,.tabs button[aria-selected=true]{color:var(--text)}.tabs button[aria-selected=true]:after{content:"";position:absolute;left:8px;right:8px;bottom:-1px;height:2px;background:var(--text);border-radius:1px}dialog.dialog{padding:0;border:1px solid var(--border-strong);border-radius:10px;background:var(--surface);color:var(--text);width:min(480px,calc(100vw - 32px));max-height:calc(100dvh - 48px);box-shadow:var(--shadow-pop);overflow:hidden}dialog.dialog.wide{width:min(640px,calc(100vw - 32px))}dialog.dialog[open]{animation:dialog-in .16s var(--ease);display:flex;flex-direction:column}dialog.dialog::backdrop{background:var(--overlay);animation:fade-in .16s var(--ease)}.dialog-head{padding:16px 18px 4px}.dialog-head p{color:var(--text-2);margin-top:4px}.dialog-body{padding:12px 18px 16px;overflow:auto}.dialog-foot{display:flex;justify-content:flex-end;gap:8px;padding:12px 18px;border-top:1px solid var(--border);background:var(--surface-2)}@keyframes dialog-in{0%{opacity:0;transform:translateY(6px) scale(.985)}}@keyframes fade-in{0%{opacity:0}}.menu-anchor{position:relative;display:inline-block}.menu{position:absolute;z-index:40;min-width:180px;padding:4px;background:var(--surface);border:1px solid var(--border-strong);border-radius:var(--radius);box-shadow:var(--shadow-pop);animation:dialog-in .12s var(--ease)}.menu.end{right:0}.menu.up{bottom:calc(100% + 6px)}.menu.down{top:calc(100% + 6px)}.menu button,.menu a{display:flex;width:100%;align-items:center;gap:8px;padding:6px 8px;border:0;background:transparent;border-radius:var(--radius-xs);text-align:left;color:var(--text);font-size:13px}.menu button:hover,.menu a:hover,.menu button:focus-visible{background:var(--surface-hover);text-decoration:none;outline:none}.menu svg{width:14px;height:14px;color:var(--text-2)}.menu hr{border:0;border-top:1px solid var(--border);margin:4px -4px}.menu .menu-label{padding:6px 8px 4px;color:var(--text-3);font-size:11.5px}.avatar{width:24px;height:24px;border-radius:50%;background:var(--neutral-bg);color:var(--text-2);display:inline-flex;align-items:center;justify-content:center;font-size:11px;font-weight:600;flex:none;text-transform:uppercase}.reveal{font-family:var(--font-mono);font-size:12px;word-break:break-all;background:var(--surface-2);border:1px solid var(--border);border-radius:var(--radius-sm);padding:10px 12px;-webkit-user-select:all;user-select:all}.pre{font-family:var(--font-mono);font-size:12px;background:var(--surface-2);border:1px solid var(--border);border-radius:var(--radius-sm);padding:10px 12px;overflow:auto;max-height:260px;white-space:pre-wrap;word-break:break-word;margin:0}.divider{height:1px;background:var(--border);border:0;margin:0}.bar-split{display:flex;height:6px;border-radius:3px;overflow:hidden;background:var(--meter-track);gap:2px}.bar-split>span{display:block;height:100%;min-width:2px}.legend{display:inline-flex;align-items:center;gap:6px;color:var(--text-2);font-size:12px}.legend i{width:8px;height:8px;border-radius:2px;display:inline-block}.s1{background:var(--text)}.s2{background:color-mix(in srgb,var(--text) 55%,var(--surface))}.s3{background:color-mix(in srgb,var(--text) 28%,var(--surface))}.link-btn{border:0;background:none;padding:0;color:inherit;text-decoration:underline;text-underline-offset:3px;text-decoration-color:var(--text-3)}
