.toast-container{z-index:9999;pointer-events:none;flex-direction:column;gap:8px;display:flex;position:fixed;top:20px;right:20px}.toast{border-radius:var(--radius-md);background:var(--surface-secondary);border:1px solid var(--surface-border);box-shadow:var(--shadow-lg);color:var(--text-primary);pointer-events:auto;align-items:center;gap:10px;max-width:360px;padding:10px 18px;font-size:.875rem;animation:.3s ease-out toast-in,.3s ease-in 2s forwards toast-out;display:flex}.toast.success{border-left:4px solid var(--success)}.toast.error{border-left:4px solid var(--error)}.toast-icon{flex-shrink:0;width:18px;height:18px}@keyframes toast-in{0%{opacity:0;transform:translate(30px)}to{opacity:1;transform:translate(0)}}@keyframes toast-out{0%{opacity:1;transform:translate(0)}to{opacity:0;transform:translate(30px)}}.header{background:var(--surface-secondary);border-bottom:1px solid var(--surface-border);-webkit-user-select:none;user-select:none;z-index:10;flex-shrink:0;justify-content:space-between;align-items:center;height:48px;padding:0 20px;display:flex}.header-left{align-items:center;gap:10px;display:flex}.header-logo{color:var(--accent-primary);align-items:center;gap:8px;display:flex}.header-logo svg{width:22px;height:22px}.header-title{letter-spacing:-.01em;color:var(--text-primary);font-size:1rem;font-weight:700}.header-right{align-items:center;gap:6px;display:flex}.header-btn{border-radius:var(--radius-sm);width:34px;height:34px;color:var(--text-secondary);justify-content:center;align-items:center;transition:all .15s;display:flex}.header-btn:hover{background:var(--bg-hover);color:var(--text-primary)}.header-btn svg{width:18px;height:18px}.settings-dropdown{position:relative}.settings-menu{background:var(--surface-primary);border:1px solid var(--surface-border);border-radius:var(--radius-md);min-width:200px;box-shadow:var(--shadow-lg);z-index:100;margin-top:6px;padding:8px;animation:.15s ease-out menu-in;position:absolute;top:100%;right:0}@keyframes menu-in{0%{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:translateY(0)}}.settings-menu-label{color:var(--text-tertiary);text-transform:uppercase;letter-spacing:.05em;padding:6px 8px 4px;font-size:.75rem;font-weight:600}.settings-menu-row{gap:4px;padding:2px 4px;display:flex}.settings-option{border-radius:var(--radius-sm);color:var(--text-secondary);text-align:center;flex:1;padding:6px 10px;font-size:.8rem;font-weight:500;transition:all .15s}.settings-option:hover{background:var(--bg-hover);color:var(--text-primary)}.settings-option.active{background:var(--accent-light);color:var(--accent-primary);font-weight:600}.json-editor-wrapper{flex:1;min-height:0;position:relative;overflow:hidden}.json-editor-wrapper .cm-editor{height:100%;font-size:13px;line-height:1.6}.json-editor-wrapper .cm-editor .cm-scroller{font-family:JetBrains Mono,Fira Code,Cascadia Code,Consolas,Monaco,monospace}.json-editor-wrapper .cm-editor .cm-content{padding:8px 0}.json-editor-wrapper .cm-editor .cm-gutters{border-right:1px solid var(--surface-border);background:var(--surface-secondary);color:var(--text-tertiary)}.json-editor-wrapper .cm-editor .cm-activeLineGutter{background:var(--bg-hover);color:var(--text-secondary)}.json-editor-wrapper .cm-editor .cm-activeLine{background:var(--bg-overlay)}.json-editor-wrapper .cm-editor .cm-cursor{border-left-color:var(--accent-primary)}.drag-overlay{background:var(--accent-light);border:3px dashed var(--accent-primary);border-radius:var(--radius-md);z-index:20;pointer-events:none;opacity:0;justify-content:center;align-items:center;transition:opacity .2s;display:flex;position:absolute;inset:0}.drag-overlay.visible{opacity:1}.drag-overlay-content{color:var(--accent-primary);flex-direction:column;align-items:center;gap:8px;font-size:1rem;font-weight:600;display:flex}.drag-overlay-content svg{opacity:.8;width:40px;height:40px}.panel-toolbar{background:var(--surface-secondary);border-bottom:1px solid var(--surface-border);flex-shrink:0;align-items:center;gap:4px;min-height:38px;padding:6px 8px;display:flex}.panel-toolbar-group{align-items:center;gap:2px;display:flex}.panel-toolbar-spacer{flex:1}.toolbar-btn{border-radius:var(--radius-sm);color:var(--text-secondary);white-space:nowrap;align-items:center;gap:6px;padding:5px 10px;font-size:.8rem;font-weight:500;transition:all .15s;display:flex}.toolbar-btn:hover{background:var(--bg-hover);color:var(--text-primary)}.toolbar-btn:active{background:var(--bg-active)}.toolbar-btn.primary{background:var(--accent-primary);color:var(--text-inverse);font-weight:600}.toolbar-btn.primary:hover{background:var(--accent-hover)}.toolbar-btn svg{flex-shrink:0;width:15px;height:15px}.toolbar-tab{border-radius:var(--radius-sm);color:var(--text-secondary);padding:5px 14px;font-size:.8rem;font-weight:500;transition:all .15s}.toolbar-tab:hover{color:var(--text-primary);background:var(--bg-hover)}.toolbar-tab.active{background:var(--accent-light);color:var(--accent-primary);font-weight:600}.editor-panel{background:var(--surface-primary);flex-direction:column;height:100%;min-height:0;display:flex}.editor-body{flex:1;min-height:0;position:relative;overflow:hidden}.json-tree{-webkit-user-select:text;user-select:text;padding:12px 16px;font-family:JetBrains Mono,Fira Code,Cascadia Code,Consolas,Monaco,monospace;font-size:12.5px;line-height:1.7;overflow:auto}.tree-node{padding-left:0}.tree-node.collapsible{cursor:default}.tree-toggle{cursor:pointer;-webkit-user-select:none;user-select:none;width:18px;height:18px;color:var(--text-tertiary);vertical-align:middle;border-radius:3px;flex-shrink:0;justify-content:center;align-items:center;margin-right:2px;transition:transform .15s,color .15s;display:inline-flex}.tree-toggle:hover{color:var(--text-primary);background:var(--bg-hover)}.tree-toggle svg{width:12px;height:12px;transition:transform .2s}.tree-toggle.expanded svg{transform:rotate(90deg)}.tree-children{border-left:1px solid var(--surface-border);margin-left:7px;padding-left:20px;transition:max-height .25s,opacity .25s;overflow:hidden}.tree-children.collapsed{opacity:0;max-height:0}.tree-line{align-items:flex-start;min-height:22px;padding:1px 0;display:flex}.tree-line:hover{background:var(--bg-overlay);border-radius:3px}.tree-key{color:var(--json-key);white-space:nowrap;margin-right:4px;font-weight:500}.tree-colon{color:var(--json-colon);margin-right:6px}.tree-value{word-break:break-all}.tree-value.string{color:var(--json-string)}.tree-value.number{color:var(--json-number)}.tree-value.boolean{color:var(--json-boolean);font-style:italic}.tree-value.null{color:var(--json-null);font-style:italic}.tree-bracket{color:var(--json-bracket);font-weight:600}.tree-count{color:var(--text-tertiary);-webkit-user-select:none;user-select:none;margin-left:4px;font-size:.85em;font-style:italic}.tree-type-icon{color:var(--text-tertiary);vertical-align:middle;align-items:center;margin-right:5px;display:inline-flex}.tree-type-icon svg{width:14px;height:14px}.tree-ellipsis{color:var(--text-tertiary);-webkit-user-select:none;user-select:none;font-style:italic}.tree-toolbar{border-bottom:1px solid var(--surface-border);background:var(--surface-secondary);flex-shrink:0;gap:6px;padding:6px 16px;display:flex}.tree-toolbar-btn{border-radius:var(--radius-sm);color:var(--text-secondary);padding:3px 10px;font-size:.75rem;font-weight:500;transition:all .15s}.tree-toolbar-btn:hover{background:var(--bg-hover);color:var(--text-primary)}.highlighted-json{white-space:pre-wrap;word-break:break-all;color:var(--text-primary);-webkit-user-select:text;user-select:text;margin:0;padding:12px 16px;font-family:JetBrains Mono,Fira Code,Cascadia Code,Consolas,Monaco,monospace;font-size:12.5px;line-height:1.7;overflow:auto}.hl-key{color:var(--json-key)}.hl-string{color:var(--json-string)}.hl-number{color:var(--json-number)}.hl-boolean{color:var(--json-boolean);font-style:italic}.hl-null{color:var(--json-null);font-style:italic}.hl-bracket{color:var(--json-bracket)}.hl-colon{color:var(--json-colon)}.output-panel{background:var(--surface-primary);flex-direction:column;height:100%;min-height:0;display:flex}.output-body{flex:1;min-height:0;overflow:hidden}.resizable-divider{cursor:col-resize;background:var(--surface-border);z-index:5;flex-shrink:0;width:6px;min-width:6px;transition:background-color .15s;position:relative}.resizable-divider:hover,.resizable-divider.dragging{background:var(--accent-primary)}.resizable-divider:after{content:"";position:absolute;inset:0 -3px}@media (width<=768px){.resizable-divider{cursor:row-resize;width:100%;height:6px;min-height:6px}}.statusbar{background:var(--accent-primary);height:28px;color:var(--text-inverse);flex-shrink:0;justify-content:space-between;align-items:center;padding:0 16px;font-size:.75rem;font-weight:500;transition:background-color .2s;display:flex}.statusbar.error{background:var(--error)}.statusbar-left{align-items:center;gap:8px;display:flex}.statusbar-right{align-items:center;gap:16px;display:flex}.status-dot{background:var(--text-inverse);opacity:.9;border-radius:50%;flex-shrink:0;width:7px;height:7px}.status-dot.error-dot{background:#fff}.status-label{opacity:.9}.jsonpath-bar{border-top:1px solid var(--surface-border);background:var(--surface-secondary);flex-shrink:0}.jsonpath-header{cursor:pointer;-webkit-user-select:none;user-select:none;align-items:center;gap:8px;padding:6px 12px;display:flex}.jsonpath-header:hover{background:var(--bg-hover)}.jsonpath-icon{width:14px;height:14px;color:var(--text-tertiary)}.jsonpath-label{color:var(--text-secondary);letter-spacing:.02em;font-size:.8rem;font-weight:600}.jsonpath-arrow{width:12px;height:12px;color:var(--text-tertiary);margin-left:auto;transition:transform .2s}.jsonpath-arrow.open{transform:rotate(180deg)}.jsonpath-body{border-top:1px solid var(--surface-border);align-items:center;gap:8px;padding:6px 12px;display:flex}.jsonpath-input{border:1px solid var(--surface-border);border-radius:var(--radius-sm);background:var(--bg-primary);color:var(--text-primary);outline:none;flex:1;padding:5px 10px;font-family:JetBrains Mono,Fira Code,Consolas,monospace;font-size:.8rem;transition:border-color .15s}.jsonpath-input:focus{border-color:var(--accent-primary);box-shadow:0 0 0 2px var(--accent-ring)}.jsonpath-input::placeholder{color:var(--text-tertiary)}.jsonpath-btn{border-radius:var(--radius-sm);background:var(--accent-primary);color:var(--text-inverse);white-space:nowrap;padding:5px 12px;font-size:.75rem;font-weight:600;transition:background .15s}.jsonpath-btn:hover{background:var(--accent-hover)}.jsonpath-result{border-top:1px solid var(--surface-border);color:var(--text-primary);white-space:pre-wrap;word-break:break-all;max-height:120px;padding:6px 12px;font-family:JetBrains Mono,Fira Code,Consolas,monospace;font-size:.78rem;overflow:auto}.jsonpath-result.error{color:var(--error)}:root,[data-theme=light]{--bg-primary:#fff;--bg-secondary:#f5f6f8;--bg-tertiary:#ebecef;--bg-hover:#e8eaed;--bg-active:#d3d6db;--bg-overlay:#0000000a;--surface-primary:#fff;--surface-secondary:#f8f9fb;--surface-border:#e1e4e8;--text-primary:#1a1b1e;--text-secondary:#5f6368;--text-tertiary:#9aa0a6;--text-inverse:#fff;--accent-primary:#2563eb;--accent-hover:#1d4ed8;--accent-light:#dbeafe;--accent-ring:#2563eb4d;--success:#16a34a;--success-light:#dcfce7;--error:#dc2626;--error-light:#fef2f2;--warning:#f59e0b;--warning-light:#fffbeb;--json-key:#881391;--json-string:#0b7c3e;--json-number:#175fcf;--json-boolean:#c2410c;--json-null:#6b7280;--json-bracket:#374151;--json-colon:#4b5563;--shadow-sm:0 1px 2px #0000000d;--shadow-md:0 4px 6px -1px #00000012, 0 2px 4px -2px #0000000d;--shadow-lg:0 10px 15px -3px #00000014, 0 4px 6px -4px #0000000d;--radius-sm:6px;--radius-md:8px;--radius-lg:12px;--radius-full:9999px}[data-theme=dark]{--bg-primary:#1e1e2e;--bg-secondary:#252536;--bg-tertiary:#2d2d44;--bg-hover:#35354e;--bg-active:#404060;--bg-overlay:#ffffff0a;--surface-primary:#1e1e2e;--surface-secondary:#252536;--surface-border:#3a3a52;--text-primary:#e4e4ed;--text-secondary:#a0a0b8;--text-tertiary:#6b6b80;--text-inverse:#1a1b1e;--accent-primary:#7c8cf8;--accent-hover:#95a3f9;--accent-light:#1e2040;--accent-ring:#7c8cf84d;--success:#4ade80;--success-light:#14532d;--error:#f87171;--error-light:#4c1d1d;--warning:#fbbf24;--warning-light:#4c3a0a;--json-key:#c792ea;--json-string:#a5d6a7;--json-number:#82aaff;--json-boolean:#ff9c6e;--json-null:#616e88;--json-bracket:#a6accd;--json-colon:#7c8cf8;--shadow-sm:0 1px 2px #0003;--shadow-md:0 4px 6px -1px #0000004d, 0 2px 4px -2px #0003;--shadow-lg:0 10px 15px -3px #0006, 0 4px 6px -4px #0000004d}*,:before,:after{box-sizing:border-box;margin:0;padding:0}html{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-size:14px}body{background:var(--bg-primary);color:var(--text-primary);height:100vh;font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Noto Sans,sans-serif;line-height:1.6;overflow:hidden}#root{flex-direction:column;height:100vh;display:flex}::-webkit-scrollbar{width:8px;height:8px}::-webkit-scrollbar-track{background:0 0}::-webkit-scrollbar-thumb{background:var(--text-tertiary);border-radius:var(--radius-full)}::-webkit-scrollbar-thumb:hover{background:var(--text-secondary)}button{cursor:pointer;font-family:inherit;font-size:inherit;color:inherit;background:0 0;border:none}button:disabled{opacity:.4;cursor:not-allowed}input,textarea{font-family:inherit;font-size:inherit;color:inherit}::selection{background:var(--accent-primary);color:var(--text-inverse)}.app-layout{flex-direction:column;height:100vh;display:flex;overflow:hidden}.main-content{flex:1;min-height:0;display:flex;overflow:hidden}.panel{flex-direction:column;min-height:0;display:flex;overflow:hidden}.panel-left,.panel-right{flex:1;min-width:280px}.panel-body{flex:1;min-height:0;overflow:auto}@media (width<=768px){.main-content{flex-direction:column}.panel-left,.panel-right{flex:none;min-height:200px;max-height:50%}}
