@import"https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700&family=JetBrains+Mono:wght@400;500;600&display=swap";.tree-node[data-v-53d2fc3f]{-webkit-user-select:text;user-select:text;cursor:text}.node-content[data-v-53d2fc3f]{display:flex;align-items:center;padding:4px 0;cursor:text;border-radius:4px;transition:background-color .2s ease;-webkit-user-select:text;user-select:text}.node-content[data-v-53d2fc3f]:hover{background:#f8f9fa}.node-content[data-v-53d2fc3f] ::selection{background:#0969da;color:#fff}.node-content[data-v-53d2fc3f] ::-moz-selection{background:#0969da;color:#fff}.selected .node-content[data-v-53d2fc3f],.selected .node-content[data-v-53d2fc3f]:hover{background:#e3f2fd}.node-toggle[data-v-53d2fc3f]{width:20px;height:20px;display:flex;align-items:center;justify-content:center;cursor:pointer;border-radius:2px;-webkit-user-select:none;user-select:none}.node-toggle[data-v-53d2fc3f]:hover{background:#e1e5e9}.node-toggle-placeholder[data-v-53d2fc3f]{width:20px;height:20px}.toggle-icon[data-v-53d2fc3f]{font-size:10px;color:#656d76;-webkit-user-select:none;user-select:none}.node-info[data-v-53d2fc3f]{display:flex;align-items:center;gap:8px;flex:1;min-width:0;-webkit-user-select:text;user-select:text;cursor:text}.node-key[data-v-53d2fc3f]{font-weight:600;color:#0d1117;font-size:13px;-webkit-user-select:text;user-select:text;cursor:text}.node-type[data-v-53d2fc3f]{font-size:11px;padding:2px 6px;border-radius:10px;font-weight:500;text-transform:uppercase;-webkit-user-select:none;user-select:none}.node-type.object[data-v-53d2fc3f]{background:#e3f2fd;color:#1565c0}.node-type.array[data-v-53d2fc3f]{background:#f3e5f5;color:#6a1b9a}.node-type.string[data-v-53d2fc3f]{background:#e8f5e8;color:#2e7d32}.node-type.number[data-v-53d2fc3f]{background:#fff3e0;color:#ef6c00}.node-type.boolean[data-v-53d2fc3f]{background:#fce4ec;color:#ad1457}.node-type.null[data-v-53d2fc3f]{background:#f5f5f5;color:#616161}.node-value[data-v-53d2fc3f]{font-family:SF Mono,Monaco,monospace;font-size:12px;color:#0d1117;font-weight:500;flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;-webkit-user-select:text;user-select:text;cursor:text}.node-count[data-v-53d2fc3f]{font-size:12px;color:#4a4a4a;font-style:italic;font-weight:500;-webkit-user-select:text;user-select:text;cursor:text}.node-children[data-v-53d2fc3f]{margin-left:0;-webkit-user-select:text;user-select:text;cursor:text}.tree-node.dark-mode .node-content[data-v-53d2fc3f]:hover{background:#30363d}.tree-node.dark-mode .node-content[data-v-53d2fc3f] ::selection{background:#58a6ff;color:#0d1117}.tree-node.dark-mode .node-content[data-v-53d2fc3f] ::-moz-selection{background:#58a6ff;color:#0d1117}.tree-node.dark-mode.selected .node-content[data-v-53d2fc3f],.tree-node.dark-mode.selected .node-content[data-v-53d2fc3f]:hover{background:#1a3d5c}.tree-node.dark-mode .node-toggle[data-v-53d2fc3f]:hover{background:#30363d}.tree-node.dark-mode .toggle-icon[data-v-53d2fc3f]{color:#8b949e}.tree-node.dark-mode .node-key[data-v-53d2fc3f]{color:#f0f6fc;font-weight:600}.tree-node.dark-mode .node-value[data-v-53d2fc3f]{color:#e6edf3;font-weight:500}.tree-node.dark-mode .node-count[data-v-53d2fc3f]{color:#8b949e;font-weight:500}.tree-node.dark-mode .node-type.object[data-v-53d2fc3f]{background:#58a6ff26;color:#79c0ff}.tree-node.dark-mode .node-type.array[data-v-53d2fc3f]{background:#bc8cff26;color:#d2a8ff}.tree-node.dark-mode .node-type.string[data-v-53d2fc3f]{background:#56d36426;color:#7ee787}.tree-node.dark-mode .node-type.number[data-v-53d2fc3f]{background:#ffa65726;color:#ffa657}.tree-node.dark-mode .node-type.boolean[data-v-53d2fc3f]{background:#ff7b7226;color:#ff7b72}.tree-node.dark-mode .node-type.null[data-v-53d2fc3f]{background:#8b949e26;color:#8b949e}.tree-visualization[data-v-ef0c9722]{padding:20px;height:100%;overflow-y:auto;font-family:SF Mono,Monaco,Cascadia Code,monospace;cursor:text;-webkit-user-select:text;user-select:text}.tree-container[data-v-ef0c9722]{background:#fff;border:1px solid #e1e5e9;border-radius:8px;overflow:hidden;padding:12px;cursor:text;color:#1a1a1a}.tree-container[data-v-ef0c9722] *{-webkit-user-select:text;user-select:text;cursor:text}.tree-container[data-v-ef0c9722] ::selection{background:#0969da;color:#fff}.tree-container[data-v-ef0c9722] ::-moz-selection{background:#0969da;color:#fff}.tree-visualization.dark-mode .tree-container[data-v-ef0c9722]{background:#21262d;border-color:#30363d;color:#f0f6fc}.tree-visualization.dark-mode .tree-container[data-v-ef0c9722] ::selection{background:#58a6ff;color:#0d1117}.tree-visualization.dark-mode .tree-container[data-v-ef0c9722] ::-moz-selection{background:#58a6ff;color:#0d1117}.graph-visualization[data-v-2be037d2]{height:100%;display:flex;flex-direction:column;position:relative;background:#fafbfc}.graph-container[data-v-2be037d2]{flex:1;overflow:hidden;background:#fff;border:1px solid #e1e5e9;border-radius:8px;margin:20px;position:relative;cursor:grab}.graph-container[data-v-2be037d2]:active{cursor:grabbing}.graph-svg[data-v-2be037d2]{width:100%;height:100%;display:block}.graph-svg[data-v-2be037d2] .link{stroke:#999;stroke-width:2;stroke-opacity:.6}.graph-svg[data-v-2be037d2] .node{cursor:pointer}.graph-svg[data-v-2be037d2] .node .node-rect{transition:all .3s ease}.graph-svg[data-v-2be037d2] .node .node-rect:hover{stroke-width:4!important;filter:brightness(1.1)}.graph-svg[data-v-2be037d2] .node .node-type{font-family:SF Mono,Monaco,Cascadia Code,monospace;font-size:10px;font-weight:700;fill:#fff;text-transform:uppercase;opacity:.8;pointer-events:none;-webkit-user-select:none;user-select:none}.graph-svg[data-v-2be037d2] .node .node-label{font-family:SF Mono,Monaco,Cascadia Code,monospace;font-size:12px;font-weight:600;fill:#fff;pointer-events:none;-webkit-user-select:none;user-select:none}.graph-svg[data-v-2be037d2] .node .node-value,.graph-svg[data-v-2be037d2] .node .node-count{font-family:SF Mono,Monaco,Cascadia Code,monospace;font-size:9px;font-weight:400;fill:#fff;opacity:.9;pointer-events:none;-webkit-user-select:none;user-select:none}.graph-controls[data-v-2be037d2]{position:absolute;top:20px;right:20px;display:flex;gap:8px;z-index:10}.control-btn[data-v-2be037d2]{display:flex;align-items:center;gap:6px;padding:8px 12px;border:1px solid #d0d7de;border-radius:6px;background:#fff;color:#24292f;font-size:12px;font-weight:500;cursor:pointer;transition:all .2s ease;box-shadow:0 1px 3px #0000001a}.control-btn[data-v-2be037d2]:hover{background:#f3f4f6;border-color:#afb8c1}.control-btn.active[data-v-2be037d2]{background:#0969da;color:#fff;border-color:#0969da}.control-btn.active[data-v-2be037d2]:hover{background:#0860ca}.control-btn svg[data-v-2be037d2]{flex-shrink:0}.graph-info[data-v-2be037d2]{position:absolute;bottom:20px;left:20px;background:#fff;border:1px solid #e1e5e9;border-radius:8px;padding:16px;box-shadow:0 4px 12px #00000026;max-width:300px;z-index:10}.info-header[data-v-2be037d2]{display:flex;align-items:center;gap:12px;margin-bottom:12px;padding-bottom:8px;border-bottom:1px solid #f1f3f4}.info-header h4[data-v-2be037d2]{margin:0;font-size:14px;font-weight:600;color:#24292f;font-family:SF Mono,Monaco,monospace}.info-type[data-v-2be037d2]{font-size:11px;padding:2px 8px;border-radius:12px;font-weight:500;text-transform:uppercase}.info-type.object[data-v-2be037d2]{background:#e3f2fd;color:#1565c0}.info-type.array[data-v-2be037d2]{background:#f3e5f5;color:#6a1b9a}.info-type.string[data-v-2be037d2]{background:#e8f5e8;color:#2e7d32}.info-type.number[data-v-2be037d2]{background:#fff3e0;color:#ef6c00}.info-type.boolean[data-v-2be037d2]{background:#fce4ec;color:#ad1457}.info-type.null[data-v-2be037d2]{background:#f5f5f5;color:#616161}.info-content .info-row[data-v-2be037d2]{display:flex;align-items:flex-start;gap:8px;margin-bottom:8px}.info-content .info-row[data-v-2be037d2]:last-child{margin-bottom:0}.info-content .info-label[data-v-2be037d2]{font-size:12px;font-weight:600;color:#656d76;min-width:60px;flex-shrink:0}.info-content .info-value[data-v-2be037d2]{font-size:12px;font-family:SF Mono,Monaco,monospace;color:#24292f;word-break:break-word;flex:1}.graph-visualization.dark-mode[data-v-2be037d2]{background:#0d1117}.graph-visualization.dark-mode .graph-container[data-v-2be037d2]{background:#21262d;border-color:#30363d}.graph-visualization.dark-mode .graph-svg[data-v-2be037d2] .link{stroke:#7d8590}.graph-visualization.dark-mode .graph-svg[data-v-2be037d2] .node .node-value,.graph-visualization.dark-mode .graph-svg[data-v-2be037d2] .node .node-count{fill:#fff;opacity:.9}.graph-visualization.dark-mode .graph-svg[data-v-2be037d2] .node .node-type{fill:#fff;opacity:.8}.graph-visualization.dark-mode .graph-svg[data-v-2be037d2] .node .node-label{fill:#fff}.graph-visualization.dark-mode .control-btn[data-v-2be037d2]{background:#21262d;border-color:#30363d;color:#f0f6fc}.graph-visualization.dark-mode .control-btn[data-v-2be037d2]:hover{background:#30363d;border-color:#484f58}.graph-visualization.dark-mode .control-btn.active[data-v-2be037d2]{background:#58a6ff;color:#0d1117;border-color:#58a6ff}.graph-visualization.dark-mode .control-btn.active[data-v-2be037d2]:hover{background:#539bf5}.graph-visualization.dark-mode .graph-info[data-v-2be037d2]{background:#21262d;border-color:#30363d}.graph-visualization.dark-mode .graph-info .info-header[data-v-2be037d2]{border-color:#30363d}.graph-visualization.dark-mode .graph-info .info-header h4[data-v-2be037d2]{color:#f0f6fc}.graph-visualization.dark-mode .graph-info .info-type.object[data-v-2be037d2]{background:#58a6ff26;color:#79c0ff}.graph-visualization.dark-mode .graph-info .info-type.array[data-v-2be037d2]{background:#bc8cff26;color:#d2a8ff}.graph-visualization.dark-mode .graph-info .info-type.string[data-v-2be037d2]{background:#56d36426;color:#7ee787}.graph-visualization.dark-mode .graph-info .info-type.number[data-v-2be037d2]{background:#ffa65726;color:#ffa657}.graph-visualization.dark-mode .graph-info .info-type.boolean[data-v-2be037d2]{background:#ff7b7226;color:#ff7b72}.graph-visualization.dark-mode .graph-info .info-type.null[data-v-2be037d2]{background:#8b949e26;color:#8b949e}.graph-visualization.dark-mode .graph-info .info-label[data-v-2be037d2]{color:#8b949e}.graph-visualization.dark-mode .graph-info .info-value[data-v-2be037d2]{color:#e6edf3}@media (max-width: 768px){.graph-controls[data-v-2be037d2]{top:10px;right:10px;flex-direction:column}.graph-info[data-v-2be037d2]{bottom:10px;left:10px;right:10px;max-width:none}.control-btn[data-v-2be037d2]{padding:6px 10px;font-size:11px}}.card-visualization[data-v-402ae4de]{padding:20px;height:100%;overflow-y:auto;cursor:text;-webkit-user-select:text;user-select:text}.cards-container[data-v-402ae4de]{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:16px;max-width:100%}.data-card[data-v-402ae4de]{background:#fff;border:1px solid #e1e5e9;border-radius:8px;padding:16px;box-shadow:0 1px 3px #0000001a;transition:all .2s ease;cursor:text;-webkit-user-select:text;user-select:text}.data-card[data-v-402ae4de]:hover{box-shadow:0 4px 12px #00000026;transform:translateY(-2px)}.data-card[data-v-402ae4de] ::selection{background:#0969da;color:#fff}.data-card[data-v-402ae4de] ::-moz-selection{background:#0969da;color:#fff}.card-header[data-v-402ae4de]{display:flex;justify-content:space-between;align-items:center;margin-bottom:12px;padding-bottom:8px;border-bottom:1px solid #f1f3f4}.card-key[data-v-402ae4de]{font-weight:600;font-size:14px;color:#0d1117;flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;-webkit-user-select:text;user-select:text;cursor:text}.card-type[data-v-402ae4de]{font-size:12px;padding:2px 8px;border-radius:12px;font-weight:500;text-transform:uppercase}.card-type[data-v-402ae4de]:contains("object"){background:#e3f2fd;color:#1976d2}.card-type[data-v-402ae4de]:contains("array"){background:#f3e5f5;color:#7b1fa2}.card-type[data-v-402ae4de]:contains("string"){background:#e8f5e8;color:#388e3c}.card-type[data-v-402ae4de]:contains("number"){background:#fff3e0;color:#f57c00}.card-type[data-v-402ae4de]:contains("boolean"){background:#fce4ec;color:#c2185b}.card-type[data-v-402ae4de]:contains("null"){background:#f5f5f5;color:#757575}.card-content[data-v-402ae4de]{margin-bottom:12px}.object-content .object-properties[data-v-402ae4de],.object-content .array-length[data-v-402ae4de],.array-content .object-properties[data-v-402ae4de],.array-content .array-length[data-v-402ae4de]{font-size:13px;color:#666;font-style:italic}.primitive-content .value[data-v-402ae4de]{font-family:SF Mono,Monaco,Cascadia Code,monospace;font-size:13px;font-weight:500;padding:8px 12px;border-radius:4px;display:inline-block;max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;-webkit-user-select:text;user-select:text;cursor:text}.primitive-content .value.string[data-v-402ae4de]{background:#e8f5e8;color:#0d4421}.primitive-content .value.number[data-v-402ae4de]{background:#fff3e0;color:#8b3d00}.primitive-content .value.boolean[data-v-402ae4de]{background:#fce4ec;color:#7a0e3b}.primitive-content .value.null[data-v-402ae4de]{background:#f5f5f5;color:#4a4a4a}.card-children .children-indicator[data-v-402ae4de]{font-size:12px;color:#666;padding:4px 8px;background:#f8f9fa;border-radius:4px;text-align:center}.card-visualization.dark-mode .data-card[data-v-402ae4de]{background:#21262d;border-color:#30363d;color:#f0f6fc}.card-visualization.dark-mode .data-card[data-v-402ae4de] ::selection{background:#58a6ff;color:#0d1117}.card-visualization.dark-mode .data-card[data-v-402ae4de] ::-moz-selection{background:#58a6ff;color:#0d1117}.card-visualization.dark-mode .data-card .card-key[data-v-402ae4de]{color:#f0f6fc}.card-visualization.dark-mode .data-card .card-header[data-v-402ae4de]{border-color:#30363d}.card-visualization.dark-mode .data-card .primitive-content .value[data-v-402ae4de]{font-weight:500}.card-visualization.dark-mode .data-card .primitive-content .value.string[data-v-402ae4de]{background:#7ee78726;color:#7ee787}.card-visualization.dark-mode .data-card .primitive-content .value.number[data-v-402ae4de]{background:#ffa65726;color:#ffa657}.card-visualization.dark-mode .data-card .primitive-content .value.boolean[data-v-402ae4de]{background:#ff7b7226;color:#ff7b72}.card-visualization.dark-mode .data-card .primitive-content .value.null[data-v-402ae4de]{background:#8b949e26;color:#8b949e}.card-visualization.dark-mode .data-card .children-indicator[data-v-402ae4de]{background:#30363d;color:#8b949e}#app{height:100vh;display:flex;flex-direction:column;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,sans-serif;background:#fafbfc;color:#24292f;overflow:hidden}.top-nav{display:flex;justify-content:space-between;align-items:center;height:64px;padding:0 24px;background:#fff;border-bottom:1px solid #e1e5e9;box-shadow:0 1px 3px #0000000d;z-index:10}.nav-left{display:flex;align-items:center;gap:32px}.logo{display:flex;align-items:center;gap:12px}.logo .logo-icon{color:#0969da}.logo h1{font-size:20px;font-weight:700;color:#24292f;margin:0}.file-actions{display:flex;align-items:center}.file-info{display:flex;align-items:center;gap:16px}.format-dropdown{padding:8px 12px;border:1px solid #d0d7de;border-radius:8px;background:#fff;font-size:14px;font-weight:500;outline:none;cursor:pointer;transition:all .2s ease}.format-dropdown:hover{border-color:#0969da}.format-dropdown:focus{border-color:#0969da;box-shadow:0 0 0 3px #0969da1f}.filename{font-size:15px;font-weight:600;color:#24292f}.file-status{font-size:13px;font-weight:500;padding:4px 8px;border-radius:6px}.file-status.success{background:#dafbe1;color:#1a7f37}.file-status.error{background:#ffebe9;color:#cf222e}.file-status.info{background:#ddf4ff;color:#0969da}.nav-right{display:flex;align-items:center;gap:16px}.action-group{display:flex;align-items:center;gap:8px}.nav-btn{display:flex;align-items:center;gap:8px;padding:8px 16px;border:1px solid #d0d7de;border-radius:8px;background:#fff;color:#24292f;font-size:14px;font-weight:500;cursor:pointer;transition:all .2s ease}.nav-btn:hover{background:#f3f4f6;border-color:#afb8c1}.nav-btn:active{background:#e1e5e9}.nav-btn.secondary{background:#f6f8fa;border-color:#d0d7de}.nav-btn svg{flex-shrink:0}.separator{width:1px;height:24px;background:#d0d7de}.theme-btn{display:flex;align-items:center;justify-content:center;width:40px;height:40px;border:1px solid #d0d7de;border-radius:8px;background:#fff;color:#656d76;cursor:pointer;transition:all .2s ease}.theme-btn:hover{background:#f3f4f6;color:#24292f}.github-btn{display:flex;align-items:center;gap:6px;padding:8px 12px;border:1px solid #d0d7de;border-radius:8px;background:#fff;color:#656d76;text-decoration:none;font-size:14px;font-weight:500;cursor:pointer;transition:all .2s ease}.github-btn:hover{background:#f3f4f6;color:#24292f;text-decoration:none}.github-btn svg{flex-shrink:0}.github-btn span{white-space:nowrap}.main-content{flex:1;display:flex;overflow:hidden}.editor-panel,.visualization-panel{display:flex;flex-direction:column;background:#fff}.editor-panel{width:50%;border-right:1px solid #e1e5e9}.visualization-panel{width:50%;background:#fafbfc}.panel-divider{width:4px;background:#e1e5e9;cursor:col-resize}.panel-divider:hover{background:#0969da}.panel-header{display:flex;justify-content:space-between;align-items:center;padding:16px 20px;background:#f6f8fa;border-bottom:1px solid #e1e5e9}.panel-header h3{font-size:16px;font-weight:600;color:#24292f;margin:0}.editor-actions,.viz-controls{display:flex;align-items:center;gap:12px}.action-btn{display:flex;align-items:center;gap:6px;padding:6px 12px;border:1px solid #d0d7de;border-radius:6px;background:#fff;color:#24292f;font-size:13px;font-weight:500;cursor:pointer;transition:all .2s ease}.action-btn:hover{background:#f3f4f6}.view-selector{padding:6px 12px;border:1px solid #d0d7de;border-radius:6px;background:#fff;font-size:14px;font-weight:500;outline:none;cursor:pointer}.view-selector:focus{border-color:#0969da;box-shadow:0 0 0 2px #0969da1f}.zoom-controls{display:flex;align-items:center;gap:8px}.zoom-btn{display:flex;align-items:center;justify-content:center;width:32px;height:32px;border:1px solid #d0d7de;border-radius:6px;background:#fff;color:#24292f;cursor:pointer;transition:all .2s ease}.zoom-btn:hover{background:#f3f4f6}.zoom-level{font-size:13px;font-weight:500;color:#656d76;min-width:45px;text-align:center}.editor-wrapper{flex:1;overflow:hidden;position:relative}.drop-zone{width:100%;height:100%;position:relative;cursor:text}.drop-zone:hover{cursor:text}.drop-zone.drag-over .monaco-editor{opacity:.3}.drop-overlay{position:absolute;inset:0;background:#0969da1a;border:2px dashed #0969da;display:flex;align-items:center;justify-content:center;z-index:1000;pointer-events:none}.drop-message{text-align:center;color:#0969da}.drop-message .drop-icon{margin-bottom:16px;color:#0969da}.drop-message h4{font-size:18px;font-weight:600;margin-bottom:8px}.drop-message p{font-size:14px;opacity:.8}.monaco-editor{width:100%;height:100%;border:none!important;outline:none!important;cursor:text!important}.monaco-editor:hover{cursor:text!important}.monaco-editor .prism-editor__textarea,.monaco-editor .prism-editor__editor{font-family:SF Mono,Monaco,Cascadia Code,Roboto Mono,Consolas,Liberation Mono,Menlo,monospace!important;font-size:14px!important;line-height:1.6!important;padding:20px!important;cursor:text!important}.monaco-editor .prism-editor__textarea{outline:none!important;background:transparent!important;color:#0d1117!important;font-weight:500!important;resize:none!important;cursor:text!important;caret-color:#0969da!important}.monaco-editor .prism-editor__textarea:focus{cursor:text!important;caret-color:#0969da!important;outline:none!important}.monaco-editor .prism-editor__textarea:hover{cursor:text!important}.monaco-editor .prism-editor__textarea::selection{background:#0969da!important;color:#fff!important}.monaco-editor .prism-editor__textarea::-moz-selection{background:#0969da!important;color:#fff!important}.monaco-editor .prism-editor__textarea::placeholder{color:#656d76!important;font-weight:400!important}.monaco-editor .prism-editor__editor{background:#fff!important;cursor:text!important}.monaco-editor .prism-editor__editor .token.string{color:#0a3069!important;font-weight:500!important}.monaco-editor .prism-editor__editor .token.number{color:#8250df!important;font-weight:600!important}.monaco-editor .prism-editor__editor .token.boolean{color:#cf222e!important;font-weight:600!important}.monaco-editor .prism-editor__editor .token.null{color:#656d76!important;font-weight:600!important}.monaco-editor .prism-editor__editor .token.property{color:#0969da!important;font-weight:600!important}.monaco-editor .prism-editor__editor .token.punctuation{color:#24292f!important;font-weight:500!important}.monaco-editor .prism-editor__line-numbers{background:#f6f8fa!important;color:#656d76!important;border-right:1px solid #e1e5e9!important;font-family:SF Mono,Monaco,Cascadia Code,monospace!important;font-size:14px!important;line-height:1.6!important;padding:20px 16px!important;min-width:60px!important;text-align:right!important;font-weight:500!important;-webkit-user-select:none!important;user-select:none!important}.visualization-canvas{flex:1;overflow:auto;background:#fafbfc;position:relative;transform-origin:top left;transition:transform .2s ease}.empty-canvas{display:flex;align-items:center;justify-content:center;height:100%;background:#fafbfc}.empty-message{text-align:center;color:#656d76;max-width:320px;padding:40px}.empty-message .empty-icon{color:#d0d7de;margin-bottom:16px}.empty-message h4{font-size:18px;font-weight:600;margin-bottom:8px;color:#24292f}.empty-message p{font-size:14px;line-height:1.5}.dark-mode{background:#0d1117;color:#f0f6fc}.dark-mode .top-nav{background:#161b22;border-color:#30363d}.dark-mode .logo h1{color:#f0f6fc}.dark-mode .format-dropdown,.dark-mode .nav-btn,.dark-mode .theme-btn,.dark-mode .github-btn,.dark-mode .action-btn,.dark-mode .view-selector,.dark-mode .zoom-btn{background:#21262d;border-color:#30363d;color:#f0f6fc}.dark-mode .format-dropdown:hover,.dark-mode .nav-btn:hover,.dark-mode .theme-btn:hover,.dark-mode .github-btn:hover,.dark-mode .action-btn:hover,.dark-mode .view-selector:hover,.dark-mode .zoom-btn:hover{background:#30363d;border-color:#484f58}.dark-mode .nav-btn.secondary{background:#161b22}.dark-mode .filename{color:#f0f6fc}.dark-mode .file-status.success{background:#2ea04326;color:#3fb950}.dark-mode .file-status.error{background:#f8514926;color:#f85149}.dark-mode .file-status.info{background:#58a6ff26;color:#58a6ff}.dark-mode .separator{background:#30363d}.dark-mode .editor-panel,.dark-mode .visualization-panel{background:#0d1117}.dark-mode .panel-divider{background:#30363d}.dark-mode .panel-divider:hover{background:#58a6ff}.dark-mode .panel-header{background:#161b22;border-color:#30363d}.dark-mode .panel-header h3{color:#f0f6fc}.dark-mode .code-editor .prism-editor__textarea{color:#e6edf3!important;font-weight:500!important;caret-color:#58a6ff!important}.dark-mode .code-editor .prism-editor__textarea:focus{cursor:text!important;caret-color:#58a6ff!important;outline:none!important}.dark-mode .code-editor .prism-editor__textarea:hover{cursor:text!important}.dark-mode .code-editor .prism-editor__textarea::selection{background:#58a6ff!important;color:#0d1117!important}.dark-mode .code-editor .prism-editor__textarea::-moz-selection{background:#58a6ff!important;color:#0d1117!important}.dark-mode .code-editor .prism-editor__textarea::placeholder{color:#7d8590!important;font-weight:400!important}.dark-mode .code-editor .prism-editor__editor{background:#0d1117!important;cursor:text!important}.dark-mode .code-editor .prism-editor__editor .token.string{color:#7ee787!important;font-weight:500!important}.dark-mode .code-editor .prism-editor__editor .token.number{color:#79c0ff!important;font-weight:600!important}.dark-mode .code-editor .prism-editor__editor .token.boolean{color:#ff7b72!important;font-weight:600!important}.dark-mode .code-editor .prism-editor__editor .token.null{color:#8b949e!important;font-weight:600!important}.dark-mode .code-editor .prism-editor__editor .token.property{color:#79c0ff!important;font-weight:600!important}.dark-mode .code-editor .prism-editor__editor .token.punctuation{color:#e6edf3!important;font-weight:500!important}.dark-mode .code-editor .prism-editor__line-numbers{background:#161b22!important;color:#8b949e!important;border-color:#30363d!important;font-weight:500!important}.dark-mode .visualization-canvas,.dark-mode .empty-canvas{background:#0d1117}.dark-mode .empty-message{color:#7d8590}.dark-mode .empty-message .empty-icon{color:#484f58}.dark-mode .empty-message h4{color:#f0f6fc}.dark-mode .drop-overlay{background:#58a6ff1a;border-color:#58a6ff}.dark-mode .drop-message,.dark-mode .drop-message .drop-icon{color:#58a6ff}@media (max-width: 1024px){.main-content{flex-direction:column}.editor-panel,.visualization-panel{width:100%;height:50%}.editor-panel{border-right:none;border-bottom:1px solid #e1e5e9}.panel-divider{display:none}}@media (max-width: 768px){.top-nav{padding:0 16px;flex-wrap:wrap;min-height:64px}.nav-left{gap:16px}.nav-right{gap:8px}.action-group{gap:4px}.nav-btn{padding:6px 12px;font-size:13px}.nav-btn span{display:none}.github-btn{padding:8px}.github-btn span{display:none}.panel-header{padding:12px 16px}}*{margin:0;padding:0;box-sizing:border-box}html,body{height:100%;font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;font-size:14px;line-height:1.5;color:var(--text-primary);background-color:var(--bg-primary);transition:background-color .3s ease,color .3s ease}.dark-mode{--bg-primary: #1e293b;--bg-secondary: #334155;--bg-tertiary: #475569;--bg-hover: #475569;--text-primary: #f1f5f9;--text-secondary: #cbd5e1;--text-muted: #94a3b8;--border: #475569}h1,h2,h3,h4,h5,h6{margin-bottom:1rem;font-weight:600;line-height:1.2;color:var(--text-primary)}p{margin-bottom:1rem;color:var(--text-secondary)}.btn{display:inline-flex;align-items:center;padding:.5rem 1rem;font-size:.875rem;font-weight:500;border-radius:.375rem;border:1px solid transparent;cursor:pointer;text-decoration:none;transition:all .2s ease}.btn:focus{outline:2px solid var(--primary);outline-offset:2px}.btn:disabled{opacity:.5;cursor:not-allowed}.btn-primary{background-color:var(--primary);color:#fff}.btn-primary:hover:not(:disabled){opacity:.9}.btn-secondary{background-color:var(--secondary);color:#fff}.btn-secondary:hover:not(:disabled){opacity:.9}.btn-sm{padding:.25rem .5rem;font-size:.75rem}.btn-lg{padding:1rem 1.5rem;font-size:1rem}input,select,textarea{border:1px solid var(--border);border-radius:.375rem;padding:.5rem;background-color:var(--bg-primary);color:var(--text-primary);font-size:.875rem;transition:border-color .2s ease}input:focus,select:focus,textarea:focus{outline:none;border-color:var(--primary)}.text-center{text-align:center}.text-left{text-align:left}.text-right{text-align:right}.flex{display:flex}.flex-col{flex-direction:column}.items-center{align-items:center}.justify-center{justify-content:center}.justify-between{justify-content:space-between}.gap-2{gap:.5rem}.gap-4{gap:1rem}.p-2{padding:.5rem}.p-4{padding:1rem}.m-2{margin:.5rem}.m-4{margin:1rem}.w-full{width:100%}.h-full{height:100%}.font-mono{font-family:JetBrains Mono,Monaco,Menlo,Ubuntu Mono,monospace}::-webkit-scrollbar{width:8px;height:8px}::-webkit-scrollbar-track{background:var(--bg-secondary)}::-webkit-scrollbar-thumb{background:var(--border);border-radius:4px}::-webkit-scrollbar-thumb:hover{background:var(--text-muted)}
