:root{font-family:system-ui,Avenir,Helvetica,Arial,sans-serif;line-height:1.5;font-weight:400;color-scheme:light dark;color:#ffffffde;background-color:#242424;font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}a{font-weight:500;color:#646cff;text-decoration:inherit}a:hover{color:#535bf2}body{margin:0;display:flex;place-items:center;min-width:320px;min-height:100vh}h1{font-size:3.2em;line-height:1.1}button{border-radius:8px;border:1px solid transparent;padding:.6em 1.2em;font-size:1em;font-weight:500;font-family:inherit;background-color:#1a1a1a;cursor:pointer;transition:border-color .25s}button:hover{border-color:#646cff}button:focus,button:focus-visible{outline:4px auto -webkit-focus-ring-color}@media(prefers-color-scheme:light){:root{color:#213547;background-color:#fff}a:hover{color:#747bff}button{background-color:#f9f9f9}}:root{--bg: #f5f6f8;--panel: #ffffff;--panel2: #f0f1f4;--text: #1a1d23;--text-secondary: #4b5563;--muted: #8892a2;--accent: #4f6ef7;--accent-light: #eef1fe;--danger: #e5484d;--warn: #e5983e;--success: #46a758;--border: #e2e4e9;--border-hover: #d0d3d9;--shadow-sm: 0 1px 2px rgba(0, 0, 0, .05);--shadow-md: 0 2px 8px rgba(0, 0, 0, .08);--shadow-lg: 0 4px 16px rgba(0, 0, 0, .1);font-family:Inter,ui-sans-serif,system-ui,-apple-system,sans-serif;color-scheme:light dark}[data-theme=dark]{--bg: #0f1117;--panel: #181b23;--panel2: #1e2230;--text: #e4e8ef;--text-secondary: #9ba3b5;--muted: #6b7280;--accent: #6384f8;--accent-light: rgba(99, 132, 248, .12);--danger: #f87171;--warn: #fbbf24;--success: #4ade80;--border: #2a2e3a;--border-hover: #3a3f4e;--shadow-sm: 0 1px 2px rgba(0, 0, 0, .3);--shadow-md: 0 2px 8px rgba(0, 0, 0, .4);--shadow-lg: 0 4px 16px rgba(0, 0, 0, .5)}@media(prefers-color-scheme:dark){:root:not([data-theme=light]){--bg: #0f1117;--panel: #181b23;--panel2: #1e2230;--text: #e4e8ef;--text-secondary: #9ba3b5;--muted: #6b7280;--accent: #6384f8;--accent-light: rgba(99, 132, 248, .12);--danger: #f87171;--warn: #fbbf24;--success: #4ade80;--border: #2a2e3a;--border-hover: #3a3f4e;--shadow-sm: 0 1px 2px rgba(0, 0, 0, .3);--shadow-md: 0 2px 8px rgba(0, 0, 0, .4);--shadow-lg: 0 4px 16px rgba(0, 0, 0, .5)}}body{margin:0;background:var(--bg);color:var(--text);line-height:1.5;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.layout{display:grid;grid-template-columns:300px 1fr;grid-template-rows:60px 1fr;height:100vh}.topbar{grid-column:1 / -1;display:flex;align-items:center;justify-content:space-between;padding:0 20px;background:var(--panel);border-bottom:1px solid var(--border);z-index:10}.title{font-weight:700;font-size:16px;letter-spacing:-.01em}.actions{display:flex;gap:8px;align-items:center}.btn{display:inline-flex;align-items:center;justify-content:center;padding:7px 14px;border:1px solid var(--border);border-radius:8px;background:var(--panel);color:var(--text);cursor:pointer;font-weight:500;font-size:13px;transition:background .15s,border-color .15s,box-shadow .15s}.btn:hover:not(:disabled){background:var(--panel2);border-color:var(--border-hover)}.btn:disabled{opacity:.4;cursor:not-allowed}.sidebar{background:var(--panel);border-right:1px solid var(--border);padding:20px;overflow:auto}.sidebarHeader{display:flex;justify-content:space-between;align-items:center;margin-bottom:8px}.iconBtn{background:var(--panel);border:1px solid var(--border);color:var(--text-secondary);border-radius:6px;width:28px;height:28px;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:background .15s,border-color .15s}.iconBtn:hover{background:var(--panel2);border-color:var(--border-hover)}.main{padding:32px;overflow:auto}.hint{color:var(--muted);line-height:1.5}.sectionTitle{font-size:11px;font-weight:600;color:var(--muted);text-transform:uppercase;letter-spacing:.06em}.tree{margin-top:10px;display:flex;flex-direction:column;gap:16px}.treeGroup{border-bottom:1px solid var(--border);padding-bottom:12px}.treeGroupHeader{display:flex;justify-content:space-between;align-items:center;margin-bottom:8px}.treeGroupNameInput{background:transparent;border:none;color:var(--text);font-weight:600;font-size:14px;min-width:0;flex:1;outline:none}.treeGroupNameInput:focus{border-bottom:1px solid var(--accent)}.groupActions{display:flex;gap:4px;flex-shrink:0}.groupActions button{background:none;border:none;color:var(--muted);cursor:pointer;font-size:16px;padding:2px 4px;transition:color .15s}.groupActions button:hover{color:var(--text)}.treeChecklists{display:flex;flex-direction:column;gap:2px;padding-left:8px}.treeItemContainer{display:flex;align-items:center;border-radius:6px;transition:background .1s}.treeItemContainer.active{background:var(--accent-light)}.treeItemContainer.active .treeItem{color:var(--accent);font-weight:500}.treeItem{flex:1;text-align:left;padding:6px 8px;background:transparent;border:none;color:var(--text-secondary);cursor:pointer;font-size:13px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.treeItem:hover{color:var(--text)}.removeBtn{background:none;border:none;color:var(--muted);cursor:pointer;padding:4px 8px;display:none}.treeItemContainer:hover .removeBtn{display:block}.removeBtn:hover{color:var(--danger)}.ok{margin-top:8px;color:var(--success)}.issues{margin:8px 0 0 18px;padding:0;font-size:12px;color:var(--muted)}.issues li.error{color:var(--danger)}.issues li.warn{color:var(--warn)}.canvas{background:var(--panel);border:1px solid var(--border);box-shadow:var(--shadow-md);border-radius:12px;padding:24px}.headerBox{display:flex;justify-content:space-between;align-items:flex-end;margin-bottom:24px;padding-bottom:16px;border-bottom:1px solid var(--border)}.headerFields{flex:1;display:flex;flex-direction:column;gap:12px}.field{display:flex;flex-direction:column;gap:4px}.field label{font-size:10px;font-weight:500;color:var(--muted);text-transform:uppercase}.h2Input{background:transparent;border:none;border-bottom:2px solid var(--border);color:var(--text);font-size:20px;font-weight:600;width:100%;max-width:400px;outline:none;transition:border-color .15s}.h2Input:focus{border-color:var(--accent)}.items{display:flex;flex-direction:column;gap:6px}.row{display:grid;grid-template-columns:160px 1fr 240px 60px;gap:12px;align-items:center;padding:10px 16px;border-radius:10px;border:1px solid var(--border);background:var(--panel);position:relative;transition:box-shadow .15s,border-color .15s}.row:hover{box-shadow:var(--shadow-sm);border-color:var(--border-hover)}.row.type-w{border-left:4px solid var(--danger)}.row.type-a{border-left:4px solid var(--warn)}.row.type-n{border-left:4px solid var(--accent)}.row.type-t{background:var(--panel2)}.itemControls{display:flex;gap:4px}.typeSelect{background:var(--panel2);border:1px solid var(--border);color:var(--text);border-radius:6px;font-size:11px;padding:4px 6px;outline:none}.indentInput{width:32px;background:var(--panel2);border:1px solid var(--border);color:var(--text);border-radius:6px;font-size:11px;padding:4px;text-align:center;outline:none}.prompt,.response{width:100%;background:transparent;border:none;color:var(--text);font-size:14px;outline:none}.itemActions{display:flex;gap:4px;opacity:0;transition:opacity .15s}.row:hover .itemActions{opacity:1}.itemActions button{background:var(--panel);border:1px solid var(--border);color:var(--muted);border-radius:6px;width:28px;height:28px;display:flex;align-items:center;justify-content:center;cursor:pointer;font-size:14px;transition:background .15s,color .15s}.itemActions button:hover{background:var(--panel2);color:var(--text)}.itemActions button.danger:hover{color:var(--danger);border-color:var(--danger)}.emptyHint{padding:40px;text-align:center;color:var(--muted);font-style:italic}.muted{color:var(--muted)}.filename-field{display:flex;align-items:center;background:var(--panel2);border:1px solid var(--border);border-radius:6px;padding:0 8px}.filename-input{background:transparent;border:none;color:var(--text);font-size:13px;outline:none;width:160px;padding:6px 0}.filename-ext{color:var(--muted);font-size:13px}.btn-subtle{background:transparent;border:1px solid var(--border);font-size:16px;padding:4px 8px}.btn-subtle:hover:not(:disabled){background:var(--panel2)}.theme-toggle{background:var(--panel2);border:1px solid var(--border);border-radius:6px;width:32px;height:32px;display:flex;align-items:center;justify-content:center;cursor:pointer;font-size:16px;transition:background .15s,border-color .15s;flex-shrink:0}.theme-toggle:hover{background:var(--border);border-color:var(--border-hover)}.cellLeft,.cellRight{display:flex;flex-direction:column}.char-count{font-size:10px;color:var(--muted);margin-top:2px;font-variant-numeric:tabular-nums;text-align:right}.char-count.char-warn{color:var(--warn)}.char-count.char-over{color:var(--danger);font-weight:600}.prompt.field-error,.response.field-error{border-bottom:2px solid var(--danger)}.prompt.field-warn,.response.field-warn{border-bottom:2px solid var(--warn)}@keyframes row-flash{0%{box-shadow:0 0 0 2px var(--accent)}to{box-shadow:0 0 0 0 transparent}}.row-highlight{animation:row-flash 1.5s ease-out}.issue-clickable{cursor:pointer;padding:4px 0;border-radius:4px;transition:background .1s}.issue-clickable:hover{background:var(--panel2)}.issue-location{font-weight:600}.issue-suggestion{font-size:11px;color:var(--muted);margin-top:2px}.dragHandle{cursor:grab;color:var(--muted);font-size:14px;padding:2px 4px;border-radius:4px;-webkit-user-select:none;user-select:none;display:flex;align-items:center;transition:color .15s,background .15s}.dragHandle:hover{color:var(--text);background:var(--panel2)}.dragHandle:active{cursor:grabbing}.dupBtn{background:none;border:none;color:var(--muted);cursor:pointer;padding:4px;display:none;font-size:12px}.treeItemContainer:hover .dupBtn{display:block}.dupBtn:hover{color:var(--accent)}.headerEditor{margin-bottom:16px;padding-bottom:12px;border-bottom:1px solid var(--border)}.headerEditorFields{display:flex;flex-direction:column;gap:6px;margin-top:8px}.headerEditorField{display:flex;flex-direction:column;gap:2px}.headerEditorField label{font-size:10px;font-weight:500;color:var(--muted);text-transform:uppercase;letter-spacing:.04em}.headerEditorField input{background:var(--bg);border:1px solid var(--border);border-radius:6px;color:var(--text);font-size:12px;padding:6px 8px;outline:none;transition:border-color .15s,box-shadow .15s}.headerEditorField input:focus{border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-light)}.headerEditorField input.field-error{border-color:var(--danger)}.headerEditorField input.field-readonly{opacity:.6;cursor:not-allowed;background:var(--panel2)}.searchFilter{margin-bottom:12px}.searchInput{width:100%;background:var(--bg);border:1px solid var(--border);border-radius:8px;color:var(--text);font-size:13px;padding:8px 12px;outline:none;box-sizing:border-box;transition:border-color .15s,box-shadow .15s}.searchInput:focus{border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-light)}.searchInput::placeholder{color:var(--muted)}@media(max-width:768px){.layout{grid-template-columns:1fr;grid-template-rows:60px auto 1fr}.sidebar{border-right:none;border-bottom:1px solid var(--border);max-height:40vh}.topbar{flex-wrap:wrap;gap:8px;padding:8px 12px}.actions{flex-wrap:wrap}.row{grid-template-columns:120px 1fr 160px 48px;gap:6px;padding:6px 8px}}.save-indicator{font-size:11px;color:var(--success);font-weight:500;padding:2px 6px;white-space:nowrap;transition:color .3s}.save-indicator.save-dirty{color:var(--warn)}.dropdown-menu-wrapper{position:relative}.dropdown-menu{position:absolute;top:100%;left:0;margin-top:4px;background:var(--panel);border:1px solid var(--border);border-radius:8px;box-shadow:var(--shadow-lg);z-index:50;min-width:200px;padding:4px}.dropdown-menu button{display:block;width:100%;padding:8px 12px;border:none;background:none;color:var(--fg);font-size:13px;text-align:left;cursor:pointer;border-radius:4px;white-space:nowrap}.dropdown-menu button:hover{background:var(--hover)}.dropdown-menu-divider{height:1px;background:var(--border);margin:4px 8px}.export-dialog-overlay{position:fixed;inset:0;background:#00000080;display:flex;align-items:center;justify-content:center;z-index:100}.export-dialog{background:var(--panel);border:1px solid var(--border);border-radius:12px;padding:24px;min-width:360px;max-width:480px;box-shadow:var(--shadow-lg)}.export-dialog-title{margin:0 0 16px;font-size:15px;font-weight:600;color:var(--text)}.export-dialog-field{display:flex;align-items:center;gap:0;margin-bottom:20px}.export-dialog-input{flex:1;background:var(--bg);border:1px solid var(--border);border-right:none;border-radius:6px 0 0 6px;color:var(--text);font-size:14px;padding:8px 12px;outline:none;transition:border-color .15s,box-shadow .15s}.export-dialog-input:focus{border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-light)}.export-dialog-ext{background:var(--bg);border:1px solid var(--border);border-left:none;border-radius:0 6px 6px 0;color:var(--muted);font-size:14px;padding:8px 12px 8px 0;-webkit-user-select:none;user-select:none}.export-dialog-actions{display:flex;justify-content:flex-end;gap:8px}.export-dialog-actions .btn-primary{background:var(--accent);color:#fff;border-color:var(--accent);font-weight:600}.export-dialog-actions .btn-primary:hover{filter:brightness(1.1)}.export-dialog-actions .btn-primary:disabled{opacity:.5;cursor:not-allowed}.shortcuts-dialog{min-width:320px;max-width:420px}.shortcuts-table{width:100%;border-collapse:collapse;margin-bottom:20px}.shortcuts-table td{padding:8px 12px;border-bottom:1px solid var(--border);font-size:13px}.shortcuts-table tr:last-child td{border-bottom:none}.shortcut-key{display:inline-block;background:var(--panel2);border:1px solid var(--border);border-radius:4px;padding:2px 8px;font-family:Inter,ui-monospace,monospace;font-size:12px;font-weight:500;white-space:nowrap}.shortcut-desc{color:var(--muted)}
