:root{--header-h: 58px;--status-h: 34px;font-family:Manrope,PingFang SC,Noto Sans SC,system-ui,sans-serif;color:var(--ink);background:var(--bg)}html[data-theme=ember]{color-scheme:dark;--bg: #140b0b;--panel: #1c1010;--ink: #f4e8e8;--muted: #c4a8a8;--line: #3a1c1c;--brand: #591111;--accent: #c45c5c;--glow: #4a1818;--header-bg: rgba(28, 12, 12, .92);--mark-ink: #f7d6d6;--btn-bg: #2a1414;--btn-border: #5a2a2a;--btn-hover: #3a1a1a;--btn-active: #4a1c1c;--btn-active-ink: #ffd6d6;--btn-primary-border: #7a2020;--warn-bg: #6a2a12;--warn-border: #8a3a1a;--focus-glow: rgba(196, 92, 92, .25);--handle: #3a1c1c;--menu-bg: #241111;--table-head: #2a1414;--table-index: #241010;--table-cell-border: rgba(58, 28, 28, .8);--sel: rgba(196, 92, 92, .34);--sel-head: #6a2424;--sel-head-ink: #ffd6d6;--th-dir: #7d5a5a;--status-bg: #120909;--toast: #f0d2b0;--overlay: rgba(8, 2, 2, .62);--dialog-lead: #f0cfcf;--link: #f0b4b4;--editor-bg: #1a1010;--editor-gutter: #221111;--editor-active: #3a1a1a;--editor-line: rgba(196, 92, 92, .08);--editor-caret: #f0c4c4;--editor-fold-bg: #3a1a1a;--editor-fold-border: #6a3333;--editor-fold-ink: #e8c4a0;--editor-hint: #8a6a5a;--editor-count: #c4a07a;--editor-lint: rgba(220, 80, 80, .18);--resizer: rgba(196, 92, 92, .45);--ok: #7dcea0;--err: #f07a7a}html[data-theme=night]{color-scheme:dark;--bg: #0d1117;--panel: #161b22;--ink: #e6edf3;--muted: #8b9bb4;--line: #30363d;--brand: #1f6feb;--accent: #6ea8ff;--glow: #1a3358;--header-bg: rgba(13, 17, 23, .92);--mark-ink: #dbeafe;--btn-bg: #21262d;--btn-border: #3d4754;--btn-hover: #30363d;--btn-active: #1f3b66;--btn-active-ink: #dbeafe;--btn-primary-border: #388bfd;--warn-bg: #5a3010;--warn-border: #9a5a20;--focus-glow: rgba(110, 168, 255, .28);--handle: #30363d;--menu-bg: #1c2330;--table-head: #21262d;--table-index: #161b22;--table-cell-border: rgba(48, 54, 61, .9);--sel: rgba(56, 139, 253, .28);--sel-head: #1f4b8a;--sel-head-ink: #dbeafe;--th-dir: #6e7d91;--status-bg: #0b0f14;--toast: #c8d8f0;--overlay: rgba(4, 8, 14, .64);--dialog-lead: #cdd9e8;--link: #9ecbff;--editor-bg: #0d1117;--editor-gutter: #11161d;--editor-active: #1c2330;--editor-line: rgba(110, 168, 255, .08);--editor-caret: #dbeafe;--editor-fold-bg: #21262d;--editor-fold-border: #3d4754;--editor-fold-ink: #9ecbff;--editor-hint: #6e7d91;--editor-count: #8b9bb4;--editor-lint: rgba(248, 81, 73, .18);--resizer: rgba(110, 168, 255, .45);--ok: #3fb950;--err: #f85149}html[data-theme=pine]{color-scheme:dark;--bg: #0b1412;--panel: #12201c;--ink: #e6f4ef;--muted: #8fb3a8;--line: #234038;--brand: #1a5c4a;--accent: #3dba9a;--glow: #16382e;--header-bg: rgba(11, 20, 18, .92);--mark-ink: #d8f5ec;--btn-bg: #17302a;--btn-border: #2f564c;--btn-hover: #1f3d35;--btn-active: #1a4a3c;--btn-active-ink: #d8f5ec;--btn-primary-border: #2e8a70;--warn-bg: #5a3a12;--warn-border: #8a5a20;--focus-glow: rgba(61, 186, 154, .28);--handle: #234038;--menu-bg: #152824;--table-head: #17302a;--table-index: #12201c;--table-cell-border: rgba(35, 64, 56, .9);--sel: rgba(61, 186, 154, .28);--sel-head: #1d6a58;--sel-head-ink: #d8f5ec;--th-dir: #6f978c;--status-bg: #09110f;--toast: #c8e8dc;--overlay: rgba(4, 10, 8, .64);--dialog-lead: #d2ebe3;--link: #7ee0c4;--editor-bg: #0d1714;--editor-gutter: #12201c;--editor-active: #1a332c;--editor-line: rgba(61, 186, 154, .08);--editor-caret: #d8f5ec;--editor-fold-bg: #1a332c;--editor-fold-border: #2f564c;--editor-fold-ink: #9ee0cc;--editor-hint: #6f978c;--editor-count: #8fb3a8;--editor-lint: rgba(220, 90, 80, .18);--resizer: rgba(61, 186, 154, .45);--ok: #34d399;--err: #fb7185}html[data-theme=dusk]{color-scheme:dark;--bg: #141018;--panel: #1c1624;--ink: #f3eaf8;--muted: #b09ac4;--line: #3a2a48;--brand: #5a2a7a;--accent: #c084fc;--glow: #3a2048;--header-bg: rgba(20, 16, 24, .92);--mark-ink: #f3e8ff;--btn-bg: #261c32;--btn-border: #4a3860;--btn-hover: #322440;--btn-active: #4a2a68;--btn-active-ink: #f3e8ff;--btn-primary-border: #8a4ab8;--warn-bg: #5a2a18;--warn-border: #8a4a28;--focus-glow: rgba(192, 132, 252, .28);--handle: #3a2a48;--menu-bg: #22182c;--table-head: #261c32;--table-index: #1c1624;--table-cell-border: rgba(58, 42, 72, .9);--sel: rgba(192, 132, 252, .28);--sel-head: #6a3a90;--sel-head-ink: #f3e8ff;--th-dir: #8a74a0;--status-bg: #100c16;--toast: #e4d0f4;--overlay: rgba(8, 4, 12, .64);--dialog-lead: #e6d6f2;--link: #d4b4ff;--editor-bg: #16111c;--editor-gutter: #1c1624;--editor-active: #2a2038;--editor-line: rgba(192, 132, 252, .08);--editor-caret: #f3e8ff;--editor-fold-bg: #2a2038;--editor-fold-border: #4a3860;--editor-fold-ink: #d4b4ff;--editor-hint: #8a74a0;--editor-count: #b09ac4;--editor-lint: rgba(240, 100, 120, .18);--resizer: rgba(192, 132, 252, .45);--ok: #86efac;--err: #fb7185}html[data-theme=amber]{color-scheme:dark;--bg: #16110a;--panel: #1f1810;--ink: #f6ecd8;--muted: #c4b089;--line: #3a3020;--brand: #8a5a18;--accent: #e0a040;--glow: #3a2810;--header-bg: rgba(22, 17, 10, .92);--mark-ink: #ffe9c2;--btn-bg: #2a2214;--btn-border: #5a4a28;--btn-hover: #3a2e18;--btn-active: #5a3c14;--btn-active-ink: #ffe9c2;--btn-primary-border: #c48828;--warn-bg: #6a2a10;--warn-border: #9a4a18;--focus-glow: rgba(224, 160, 64, .28);--handle: #3a3020;--menu-bg: #241c12;--table-head: #2a2214;--table-index: #1f1810;--table-cell-border: rgba(58, 48, 32, .9);--sel: rgba(224, 160, 64, .28);--sel-head: #8a5a18;--sel-head-ink: #ffe9c2;--th-dir: #8a7858;--status-bg: #120e08;--toast: #f0d8a8;--overlay: rgba(10, 6, 2, .64);--dialog-lead: #efe0c4;--link: #f0c070;--editor-bg: #18130c;--editor-gutter: #1f1810;--editor-active: #322818;--editor-line: rgba(224, 160, 64, .1);--editor-caret: #ffe9c2;--editor-fold-bg: #322818;--editor-fold-border: #5a4a28;--editor-fold-ink: #f0c070;--editor-hint: #8a7858;--editor-count: #c4b089;--editor-lint: rgba(220, 90, 60, .18);--resizer: rgba(224, 160, 64, .45);--ok: #86efac;--err: #fb7185}html[data-theme=paper]{color-scheme:light;--bg: #f4efe4;--panel: #fffdf8;--ink: #2c2418;--muted: #7a6a55;--line: #e4d8c4;--brand: #8b3a2a;--accent: #c45c3c;--glow: #eadcc8;--header-bg: rgba(255, 253, 248, .92);--mark-ink: #fff4ea;--btn-bg: #fffaf2;--btn-border: #d8c8b0;--btn-hover: #f3e7d4;--btn-active: #ead3c4;--btn-active-ink: #6a2418;--btn-primary-border: #a84a32;--warn-bg: #c45c3c;--warn-border: #a84a32;--focus-glow: rgba(196, 92, 60, .22);--handle: #d8c8b0;--menu-bg: #fffaf2;--table-head: #f6eee0;--table-index: #f3ead9;--table-cell-border: rgba(212, 196, 168, .9);--sel: rgba(196, 92, 60, .18);--sel-head: #e8c4b0;--sel-head-ink: #6a2418;--th-dir: #a09078;--status-bg: #efe6d6;--toast: #6a4a28;--overlay: rgba(40, 28, 16, .42);--dialog-lead: #5a4a38;--link: #a84a32;--editor-bg: #fffdf8;--editor-gutter: #f6eee0;--editor-active: #efe4d2;--editor-line: rgba(196, 92, 60, .08);--editor-caret: #8b3a2a;--editor-fold-bg: #f3e7d4;--editor-fold-border: #d8c8b0;--editor-fold-ink: #8b3a2a;--editor-hint: #a09078;--editor-count: #7a6a55;--editor-lint: rgba(196, 80, 60, .16);--resizer: rgba(196, 92, 60, .4);--ok: #2f6f4e;--err: #b42318}html[data-theme=snow]{color-scheme:light;--bg: #eef2f6;--panel: #ffffff;--ink: #0f172a;--muted: #475569;--line: #d8dee6;--brand: #2563eb;--accent: #2563eb;--glow: #dbe7f5;--header-bg: rgba(255, 255, 255, .94);--mark-ink: #eff6ff;--btn-bg: #ffffff;--btn-border: #b8c4d4;--btn-hover: #e8eef6;--btn-active: #dbeafe;--btn-active-ink: #1d4ed8;--btn-primary-border: #2563eb;--warn-bg: #d97706;--warn-border: #b45309;--focus-glow: rgba(37, 99, 235, .22);--handle: #cdd6e1;--menu-bg: #ffffff;--table-head: #f1f5f9;--table-index: #f8fafc;--table-cell-border: rgba(203, 213, 225, .95);--sel: rgba(37, 99, 235, .16);--sel-head: #bfdbfe;--sel-head-ink: #1e3a8a;--th-dir: #64748b;--status-bg: #e2e8f0;--toast: #1e293b;--overlay: rgba(15, 23, 42, .4);--dialog-lead: #334155;--link: #1d4ed8;--editor-bg: #ffffff;--editor-gutter: #f1f5f9;--editor-active: #e8eef6;--editor-line: rgba(37, 99, 235, .08);--editor-caret: #1d4ed8;--editor-fold-bg: #e8eef6;--editor-fold-border: #b8c4d4;--editor-fold-ink: #1d4ed8;--editor-hint: #64748b;--editor-count: #475569;--editor-lint: rgba(220, 38, 38, .14);--resizer: rgba(37, 99, 235, .4);--ok: #047857;--err: #dc2626}*{box-sizing:border-box}html,body,#root{margin:0;height:100%;min-height:0;overflow:hidden}button,input{font:inherit}.app{height:100%;min-height:0;overflow:hidden;display:grid;grid-template-rows:auto minmax(0,1fr) var(--status-h);background:radial-gradient(900px 420px at 0% -10%,var(--glow) 0%,transparent 55%),var(--bg)}.app-header{display:flex;align-items:center;gap:16px;padding:0 14px;border-bottom:1px solid var(--line);background:var(--header-bg);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);min-width:0;z-index:40}.brand{display:flex;align-items:center;gap:10px;flex:0 0 auto;white-space:nowrap}.brand-mark{width:24px;height:24px;display:grid;place-items:center;border-radius:8px;background:var(--brand);color:var(--mark-ink);font-family:ui-monospace,monospace;font-size:12px}.brand strong{font-size:14px;letter-spacing:.02em}.toolbar{display:flex;flex-wrap:wrap;gap:4px;min-width:0;flex:1 1 auto}.out-links{display:flex;align-items:center;flex-wrap:wrap;justify-content:flex-end;gap:4px 12px;flex:0 0 auto;margin-left:auto;padding-left:12px;border-left:1px solid var(--line)}.out-link{color:var(--muted);text-decoration:none;font-size:12px;white-space:nowrap;line-height:1.2}.out-link:hover{color:var(--accent)}.btn-group{display:flex;gap:6px;padding-right:8px;border-right:1px solid var(--line)}.btn-group:last-child{border-right:0;padding-right:0}.btn{-webkit-appearance:none;-moz-appearance:none;appearance:none;position:relative;border:1px solid var(--btn-border);background:var(--btn-bg);color:var(--ink);border-radius:8px;padding:3px 8px;cursor:pointer;font-size:12px}.btn:hover{border-color:var(--accent);background:var(--btn-hover)}.btn.primary{background:var(--brand);border-color:var(--btn-primary-border)}.btn.warn{background:var(--warn-bg);border-color:var(--warn-border)}.btn.active{background:var(--btn-active);border-color:var(--accent);color:var(--btn-active-ink)}.btn.ghost{background:transparent}.btn:disabled,.btn:disabled:hover{opacity:.4;cursor:not-allowed}.btn-tip{display:none;position:absolute;left:0;top:calc(100% + 7px);z-index:70;width:max-content;max-width:240px;padding:8px 10px;border-radius:8px;background:var(--menu-bg);border:1px solid var(--line);box-shadow:0 10px 28px #00000047;color:var(--ink);font-size:11px;font-weight:400;line-height:1.5;letter-spacing:0;white-space:pre-wrap;text-align:left;pointer-events:none}.has-wide-tip .btn-tip{max-width:280px}.btn-tip.is-end{left:auto;right:0}.btn:hover>.btn-tip,.btn:focus-visible>.btn-tip{display:block}.workspace{min-height:0;min-width:0;height:100%;display:grid;grid-template-columns:minmax(0,1fr);grid-template-rows:minmax(0,1fr);position:relative;overflow:hidden}.workspace.has-drawer{grid-template-columns:minmax(0,1fr) auto}.editors{min-height:0;min-width:0;height:100%;overflow:hidden;display:grid;grid-template-columns:minmax(0,1fr);grid-template-rows:minmax(0,1fr);position:relative}.editors.is-split{display:grid}.pane{min-width:0;min-height:0;height:100%;overflow:hidden;display:flex;flex-direction:column;border:1px solid transparent}.pane.is-focus{border-color:var(--accent);box-shadow:inset 0 0 0 1px var(--focus-glow)}.pane-label{flex:0 0 auto;font-size:11px;color:var(--muted);padding:4px 10px 0}.editor-host{flex:1 1 0;min-height:0;min-width:0;overflow:hidden}.editor-host .cm-editor{height:100%;max-height:100%}.editor-host .cm-scroller{overflow:auto!important}.split-handle{cursor:col-resize;background:var(--handle);grid-column:2;grid-row:1}.split-handle:hover{background:var(--accent)}.table-drawer{position:relative;height:100%;max-height:100%;min-width:320px;min-height:0;overflow:hidden;display:flex;flex-direction:column;border-left:1px solid var(--line);background:var(--panel);box-shadow:-12px 0 24px #00000040;animation:drawer-in .22s ease;outline:none}.table-drawer.is-resizing{animation:none}.table-drawer.is-full{position:absolute;top:0;right:0;bottom:0;left:0;width:auto!important;height:auto!important;min-width:0;z-index:30;border-left:0;animation:none;box-shadow:none}@keyframes drawer-in{0%{transform:translate(24px);opacity:.4}to{transform:none;opacity:1}}.drawer-resizer{position:absolute;top:0;left:-3px;width:8px;height:100%;cursor:col-resize;z-index:2}.drawer-resizer:hover,.table-drawer.is-resizing .drawer-resizer{background:var(--resizer)}.table-head{flex:0 0 auto;display:flex;align-items:center;gap:10px;padding:0 12px 0 16px;height:40px;font-size:12px;color:var(--muted);border-bottom:1px solid var(--line)}.table-head strong{color:var(--ink)}.table-actions{margin-left:auto;display:flex;gap:6px}.table-scroll{flex:1 1 0;min-height:0;min-width:0;overflow:auto;overscroll-behavior:contain}.menu{position:relative}.caret{margin-left:4px;opacity:.7;font-size:10px}.menu-pop{position:absolute;top:calc(100% + 6px);left:0;z-index:50;min-width:260px;max-height:min(70vh,520px);overflow:auto;padding:6px;border:1px solid var(--line);border-radius:10px;background:var(--menu-bg);box-shadow:0 12px 32px #00000059}.menu-pop.is-right{left:auto;right:0}.menu-pop.is-compact{min-width:188px;max-width:220px;max-height:min(60vh,340px);padding:4px;border-radius:8px}.menu-item{display:flex;flex-direction:column;align-items:flex-start;gap:2px;width:100%;padding:8px 10px;border:0;border-radius:8px;background:transparent;color:var(--ink);cursor:pointer;text-align:left}.menu-pop.is-compact .menu-item{padding:5px 8px;gap:0;border-radius:5px}.menu-pop.is-compact .menu-item strong{font-size:12px;font-weight:600;line-height:1.3}.menu-item:hover{background:var(--btn-hover)}.menu-item span{color:var(--muted);font-size:11px}.menu-pop.is-compact .menu-item span{font-size:10px;line-height:1.25}.th-inner{display:flex;align-items:center;gap:6px;min-height:30px}.th-name{line-height:1.2;font-weight:600}.th-sort{display:inline-flex;flex-direction:column;align-items:center;justify-content:center;gap:1px;width:14px;flex:0 0 14px}.th-dir{-webkit-appearance:none;-moz-appearance:none;appearance:none;border:0;background:transparent;width:14px;height:10px;padding:0;display:grid;place-items:center;border-radius:2px;color:var(--th-dir);cursor:pointer}.th-dir svg{display:block;width:9px;height:6px;fill:currentColor}.th-dir:hover{color:var(--ink);background:var(--sel)}.th-dir.is-on{color:var(--sel-head-ink);background:var(--sel)}.data-table{-webkit-user-select:none;user-select:none;border-collapse:separate;border-spacing:0;min-width:100%;font-size:12px}.data-table th,.data-table td{border-bottom:1px solid var(--line);border-right:1px solid var(--table-cell-border);padding:6px 10px;text-align:left;white-space:nowrap;cursor:cell}.table-th{background:var(--table-head);position:sticky;top:0;z-index:3;white-space:nowrap;cursor:pointer}.table-check{position:sticky;left:0;z-index:3;width:36px;min-width:36px;padding:6px 0;text-align:center;background:var(--table-index);cursor:default}thead .table-check{z-index:6;top:0;background:var(--table-head);cursor:default}.data-table .table-check{cursor:default}.table-check input[type=checkbox]{width:14px;height:14px;margin:0;accent-color:var(--accent);cursor:pointer;vertical-align:middle}.table-index{position:sticky;left:36px;z-index:2;min-width:46px;width:46px;text-align:center;background:var(--table-index);color:var(--muted);cursor:pointer;font-variant-numeric:tabular-nums}thead .table-index{z-index:5;top:0;cursor:pointer}tbody .table-index{background:var(--table-index)}td.is-sel{background:var(--sel);box-shadow:inset 0 0 0 1.5px var(--accent)}tr.is-row-sel .table-index,.table-index.is-row-sel,tr.is-row-sel .table-check,tr.is-checked .table-check,.table-th.is-col-sel{background:var(--sel-head);color:var(--sel-head-ink)}.th-drag,.th-del{-webkit-appearance:none;-moz-appearance:none;appearance:none;border:0;background:transparent;color:inherit;cursor:pointer}.th-drag{display:inline-flex;flex-direction:column;justify-content:center;align-items:center;gap:2px;width:14px;height:18px;padding:0;color:var(--muted);cursor:grab;flex:0 0 14px}.th-drag span{display:block;width:10px;height:1.5px;border-radius:1px;background:currentColor}.th-del{width:18px;height:18px;display:grid;place-items:center;margin-left:2px;border-radius:4px;color:var(--err);line-height:1;flex:0 0 18px}.th-del:hover{background:var(--editor-lint)}td code{font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:12px}.status{display:flex;align-items:center;gap:8px;padding:0 12px;font-size:12px;font-weight:600;border-top:1px solid var(--line);background:var(--status-bg)}.status.ok{color:var(--ok)}.status.err{color:var(--err)}.dot{width:8px;height:8px;border-radius:50%;background:currentColor}.sep{opacity:.45}.error-link{-webkit-appearance:none;-moz-appearance:none;appearance:none;border:0;background:transparent;color:inherit;cursor:pointer;padding:0}.error-link:hover{text-decoration:underline}.toast{margin-left:auto;color:var(--toast);font-weight:500}@media (max-width: 900px){.app-header{align-items:flex-start;flex-direction:column;height:auto;padding:8px 10px}.out-links{margin-left:0;padding-left:0;border-left:0;justify-content:flex-start}.app{grid-template-rows:auto minmax(0,1fr) var(--status-h)}.editors.is-split{grid-template-columns:1fr!important;grid-template-rows:1fr 6px 1fr}.split-handle{display:none}.workspace.has-drawer{grid-template-columns:1fr}.table-drawer{position:absolute;top:0;right:0;bottom:0;left:0;width:auto!important;z-index:20;min-width:0}.drawer-resizer{display:none}}.about-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:200;background:var(--overlay);display:grid;place-items:center;padding:24px}.about-dialog{width:min(520px,100%);background:var(--panel);border:1px solid var(--btn-border);border-radius:14px;box-shadow:0 24px 60px #00000073;padding:18px 20px 16px}.about-head{display:flex;align-items:center;justify-content:space-between;gap:12px}.about-head h2{margin:0;font-size:18px}.about-head .btn{font-size:18px;line-height:1;padding:2px 8px}.about-lead{margin:10px 0 14px;color:var(--dialog-lead);font-size:13px;line-height:1.55}.about-list{margin:0;padding:0;list-style:none;display:grid;gap:10px}.about-list li{display:grid;grid-template-columns:22px 1fr;gap:10px;align-items:start;font-size:13px;line-height:1.55;color:var(--ink)}.about-num{width:22px;height:22px;border-radius:50%;background:var(--brand);color:var(--mark-ink);display:grid;place-items:center;font-size:12px;font-weight:700;margin-top:1px}.about-contact{margin:16px 0 0;font-size:13px;color:var(--muted)}.about-contact a{margin-left:8px;color:var(--link)}.theme-item{flex-direction:row;align-items:center;gap:8px}.theme-item.is-on{background:var(--btn-active)}.theme-item strong{flex:1}.theme-swatch{width:16px;height:16px;border-radius:4px;flex:0 0 16px;border:1px solid var(--btn-border);box-shadow:inset 0 0 0 1px #ffffff1f}.theme-check{width:12px;color:var(--accent);font-size:12px}.cm-editor{background:var(--editor-bg);color:var(--ink)}.cm-editor .cm-gutters{background:var(--editor-gutter);color:var(--muted);border-right:1px solid var(--line)}.cm-editor .cm-activeLineGutter{background:var(--editor-active)}.cm-editor .cm-activeLine{background:var(--editor-line)}.cm-editor .cm-content{caret-color:var(--editor-caret)}.cm-editor .cm-foldPlaceholder{background:var(--editor-fold-bg);border:1px solid var(--editor-fold-border);color:var(--editor-fold-ink)}.cm-editor .cm-foldCopyHint{color:var(--editor-hint)}.cm-editor .cm-child-count{color:var(--editor-count)}.cm-editor .cm-lintRange-error{background:var(--editor-lint)}
