.tt{display:flex;flex-direction:column;flex:1;min-height:0;overflow:hidden;font-family:var(--font-data);font-size:var(--fs-data)}.tt-head{display:grid;grid-template-columns:var(--tt-cols);font-family:var(--font-ui);font-size:var(--fs-body);background:var(--panel-2);border-bottom:1px solid var(--border);overflow:hidden;scrollbar-gutter:stable}.tt:not(.tt-static)>.tt-head>.tt-cell{translate:var(--tt-scroll-x, 0px) 0}.tt-head,.tt-body{scrollbar-color:color-mix(in srgb,var(--muted) 45%,var(--panel)) var(--panel)}.tt-body{flex:1;min-height:0;height:100%;scrollbar-gutter:stable}.tt .tt-body .cdk-virtual-scroll-content-wrapper{width:100%;min-width:var(--tt-min-width, 100%)}.tt-row{display:grid;grid-template-columns:var(--tt-cols);border-bottom:1px solid var(--border)}.tt-cell{min-width:0;display:flex;align-items:center;padding:4px 8px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;border-right:1px solid var(--border)}.tt-cell:last-child{border-right:none}.tt-name{gap:6px}.tt-header{color:var(--muted);font-weight:var(--fw-semibold)}.tt-num,.tt-value{justify-content:flex-end;text-align:right}.tt-quality{justify-content:center}.tt-sort-btn,.tt-chevron{padding:0 4px;background:transparent;border:none;color:inherit;font:inherit;cursor:pointer}.tt-sort-btn{flex:1;min-width:0;display:flex;align-items:center;gap:6px;padding:0}.tt-sort-btn[data-sort=none] .tt-sort-ind{opacity:.45}.tt-chevron:focus-visible,.tt-sort-btn:focus-visible,.tt-value-edit:focus-visible,.tt-edit-input:focus-visible,.tt-edit-select:focus-visible,.tt-add-btn:focus-visible,.tt-del-btn:focus-visible,.tt-readonly:focus-visible{outline:2px solid var(--accent);outline-offset:1px;border-radius:var(--radius)}.tt-chevron{flex:none;width:18px;height:18px;display:inline-flex;align-items:center;justify-content:center;padding:0;color:var(--fg);font-family:var(--font-ui)}.tt-glyph{flex:none;width:18px;text-align:center;color:var(--muted)}.tt-glyph:has(>.tt-icon){display:inline-flex;align-items:center;justify-content:center}.tt-icon{display:block;width:16px;height:16px;background-color:currentColor;-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat;-webkit-mask-position:center;mask-position:center;-webkit-mask-size:contain;mask-size:contain;pointer-events:none}.tt-label{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.tt-value{gap:6px}.tt-value-edit{flex:1;text-align:right;min-width:0;padding:2px 4px;background:transparent;border:1px solid transparent;border-radius:var(--radius);color:var(--fg);font-size:var(--fs-data);cursor:text;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.tt-value-edit:hover{border-color:var(--border)}.tt-editor{display:flex;align-items:center;gap:6px;width:100%;min-width:0}.tt-edit-input{font-size:var(--fs-data)}.tt-edit-select{font-family:var(--font-ui);font-size:var(--fs-data)}.tt-edit-input,.tt-edit-select{color:var(--fg);background:var(--panel-2);border:1px solid var(--accent);border-radius:var(--radius);padding:2px 6px}.tt-edit-input,.tt-edit-select{flex:1;min-width:0;text-align:right}.tt-edit-select{text-align-last:right}.tt-edit-input{-moz-appearance:textfield;appearance:textfield}.tt-edit-input::-webkit-outer-spin-button,.tt-edit-input::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}@keyframes tt-flash-a{0%{background:color-mix(in srgb,var(--accent) 45%,transparent)}to{background:transparent}}@keyframes tt-flash-b{0%{background:color-mix(in srgb,var(--accent) 45%,transparent)}to{background:transparent}}.tt-flash-1{animation:tt-flash-a 1s ease-out}.tt-flash-2{animation:tt-flash-b 1s ease-out}@media(prefers-reduced-motion:reduce){.tt-flash-1,.tt-flash-2{animation:none;background:color-mix(in srgb,var(--accent) 30%,transparent)}}.tt-static{display:block;flex:none;min-height:auto;overflow:visible;width:max-content;min-width:100%}.tt-static>.tt-head{position:sticky;top:0;z-index:2;overflow:visible;scrollbar-gutter:auto}.tt-sub>.tt-head{position:static;z-index:auto}.tt-static .tt-row{min-height:28px}.tt-cell-invalid{outline:1px solid var(--err);outline-offset:-1px}.tt-msgs{grid-column:1 / -1;padding:2px 8px 4px;font-family:var(--font-ui);font-size:var(--fs-small);border-right:none;white-space:normal;overflow:visible;text-overflow:clip}.tt-msg+.tt-msg{margin-left:16px}.tt-msgs-hint{color:var(--muted)}.tt-full{grid-column:1 / -1;border-right:none;white-space:normal;overflow:visible;padding:0}.tt-add-row .tt-cell{border-right:none}.tt-add-row .tt-cell:has(>.tt-add-btn){overflow:visible}.tt-row>.tt-cell:has(+.tt-msgs,+.tt-full){border-right:none}.tt-add-btn{font-family:var(--font-ui);background:transparent;border:none;color:var(--accent);cursor:pointer;padding:0 4px}.tt-del-btn{font-family:var(--font-ui);background:transparent;border:none;color:var(--muted);cursor:pointer;padding:0 4px}.tt-del-btn:hover{color:var(--err)}.tt-muted{color:var(--muted);font-family:var(--font-ui)}.tt-sub{margin-left:var(--tt-sub-indent, 0);border-left:1px solid var(--border)}.tt-static.tt-sub{min-width:calc(100% - var(--tt-sub-indent, 0px))}.tt-readonly{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;padding:2px 4px}.tt-readonly.tt-num{text-align:right}.tt-edit-input.tt-align-start,.tt-edit-select.tt-align-start{text-align:left;text-align-last:auto}.tt-value-edit.tt-align-start{text-align:left}.tt-drag-preview{position:fixed;top:-10000px;left:-10000px;display:flex;align-items:center;min-height:28px;max-width:40rem;padding:2px 8px;box-sizing:border-box;font-family:var(--font-data);font-size:var(--fs-data);color:var(--fg);background:var(--panel);border:1px solid var(--accent);border-radius:var(--radius);pointer-events:none}.tt-drag-preview-path{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.tt-status{margin:0;padding:4px 8px;font-family:var(--font-ui);font-size:var(--fs-body);color:var(--err)}.cfg-section{padding:8px;border-bottom:1px solid var(--border)}.cfg-heading{margin:0 0 6px;font-size:var(--fs-body);font-weight:600;color:var(--muted);text-transform:none}.cfg-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(12rem,1fr));gap:8px 12px}.cfg-wide{grid-column:1 / -1}.cfg-field{display:flex;flex-direction:column;gap:2px;font-size:var(--fs-body)}.cfg-label{color:var(--muted)}.cfg-input{font:inherit;font-family:var(--font-data);font-size:var(--fs-data);color:var(--fg);background:var(--panel-2);border:1px solid var(--border);border-radius:var(--radius);padding:3px 6px;appearance:textfield;-moz-appearance:textfield}.cfg-input::-webkit-outer-spin-button,.cfg-input::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}.cfg-input:focus-visible{outline:2px solid var(--accent);outline-offset:1px}.cfg-input[aria-invalid=true]{border-color:var(--err)}.cfg-input:disabled,.cfg-input[readonly]{opacity:.6}select.cfg-input{font-family:var(--font-ui);appearance:auto;-moz-appearance:auto}.cfg-error{color:var(--err);font-size:var(--fs-small)}.cfg-hint{color:var(--muted);font-size:var(--fs-small)}.cfg-banner{margin:0;padding:4px 8px;font-size:var(--fs-body);border-bottom:1px solid var(--border);border-radius:var(--radius)}.cfg-banner-err{color:var(--err)}.cfg-banner-warn{color:var(--warn)}.cfg-muted{color:var(--muted)}.sr-only{position:absolute;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;border:0}.ce-tooltip{position:fixed;z-index:1000;top:0;left:0;box-sizing:border-box;max-width:32rem;padding:4px 8px;background:var(--panel);border:1px solid var(--err);border-radius:var(--radius);color:var(--fg);font-family:var(--font-ui);font-size:var(--fs-small);line-height:1.4;white-space:normal;overflow-wrap:anywhere;box-shadow:0 2px 8px #0006}.ce-tooltip-line+.ce-tooltip-line{margin-top:2px}@font-face{font-family:IBM Plex Sans;font-style:normal;font-weight:400;font-display:swap;src:url(/fonts/ibm-plex-sans-400.woff2) format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+2000-206F,U+2074,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:IBM Plex Sans;font-style:normal;font-weight:500;font-display:swap;src:url(/fonts/ibm-plex-sans-500.woff2) format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+2000-206F,U+2074,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:IBM Plex Sans;font-style:normal;font-weight:600;font-display:swap;src:url(/fonts/ibm-plex-sans-600.woff2) format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+2000-206F,U+2074,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:IBM Plex Mono;font-style:normal;font-weight:400;font-display:swap;src:url(/fonts/ibm-plex-mono-400.woff2) format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+2000-206F,U+2074,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}:root{--bg: #11161c;--panel: #1b232c;--panel-2: #222d38;--fg: #e6edf3;--muted: #9aa7b4;--accent: #4ea1ff;--ok: #39b982;--err: #ff6b6b;--warn: #f0b429;--border: #30404f;--selected-bg: color-mix(in srgb, var(--accent) 22%, var(--panel));--font-sans: "IBM Plex Sans", system-ui, -apple-system, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;--mono: "IBM Plex Mono", ui-monospace, SFMono-Regular, "SF Mono", Menlo, Consolas, "Liberation Mono", monospace;--font-ui: var(--font-sans);--font-data: var(--mono);--fs-brand: 16px;--fs-title: 15px;--fs-body: 13px;--fs-data: 12px;--fs-small: 12px;--fs-nav: 13px;--fw-regular: 400;--fw-medium: 500;--fw-semibold: 600;--radius: 0}*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--fg);font-family:var(--font-ui);font-size:var(--fs-body);line-height:1.4}button,input,select,textarea{font:inherit}
