@import"https://fonts.googleapis.com/css2?family=IBM+Plex+Sans:wght@400;500;600;700&family=IBM+Plex+Mono:wght@400;500;600&display=swap";*{margin:0;padding:0;box-sizing:border-box}body{font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;background:#1e1e1e;color:#d4d4d4;height:100vh;overflow:hidden;margin:0}#root{height:100vh;width:100vw}::-webkit-scrollbar{width:10px;height:10px}::-webkit-scrollbar-track{background:#1e1e1e}::-webkit-scrollbar-thumb{background:#424242;border-radius:5px}::-webkit-scrollbar-thumb:hover{background:#4e4e4e}.container{display:flex;flex-direction:column;height:100vh}.header{background:#252526;border-bottom:1px solid #3e3e42;padding:12px 20px;display:flex;align-items:center;justify-content:space-between}.logo{font-size:18px;font-weight:600;color:#61dafb;display:flex;align-items:center;gap:8px}.logo:before{content:"{ }";font-size:24px}.header-actions{display:flex;gap:10px}.convert-menu-container{position:relative}.convert-dropdown{position:absolute;top:100%;margin-top:8px;right:0;background:#2d2d30;border:1px solid #3e3e42;border-radius:6px;box-shadow:0 4px 12px #00000080;min-width:200px;z-index:1000;padding:6px}.convert-option{display:flex;align-items:center;gap:10px;width:100%;padding:10px 14px;background:transparent;border:none;border-radius:4px;color:#d4d4d4;cursor:pointer;font-size:13px;transition:all .2s;text-align:left}.convert-option:hover{background:#3e3e42;color:#61dafb}.convert-option .option-icon{font-size:16px;flex-shrink:0}.convert-option .option-label{flex:1}.btn{padding:8px 16px;border:none;border-radius:6px;cursor:pointer;font-size:14px;transition:all .2s;display:flex;align-items:center;gap:6px}.btn-primary{background:#0e639c;color:#fff}.btn-primary:hover{background:#17b}.btn-secondary{background:#3e3e42;color:#d4d4d4}.btn-secondary:hover{background:#4e4e52}.toolbar{background:#2d2d30;padding:10px 20px;display:flex;align-items:center;gap:15px;border-bottom:1px solid #3e3e42;flex-wrap:wrap}.toolbar-group{display:flex;gap:8px;align-items:center}.toolbar-divider{width:1px;height:24px;background:#3e3e42}.icon-btn{padding:6px 10px;background:transparent;border:1px solid #3e3e42;border-radius:4px;color:#d4d4d4;cursor:pointer;font-size:13px;transition:all .2s}.icon-btn:hover{background:#3e3e42;border-color:#4e4e52}.icon-btn.active{background:#0e639c;border-color:#0e639c;color:#fff}.main-content{flex:1;display:flex;overflow:hidden}.sidebar{width:280px;background:#252526;border-right:1px solid #3e3e42;display:flex;flex-direction:column}.sidebar-header{padding:15px;border-bottom:1px solid #3e3e42;font-weight:600;font-size:13px;text-transform:uppercase;letter-spacing:.5px;color:#888}.tree-view{flex:1;overflow-y:auto;padding:10px}.tree-action-btn{min-width:36px;min-height:36px;padding:6px;border-radius:8px;background:transparent;border:1px solid transparent;color:#9cdcfe;display:inline-flex;align-items:center;justify-content:center;cursor:pointer;opacity:.75;transition:transform .12s ease,background .12s ease,box-shadow .12s ease}.tree-action-btn:hover{transform:translateY(-2px) scale(1.06);background:#4fc3f70f;box-shadow:0 8px 20px #00000080;opacity:1}div[class*=collection-element]:hover .tree-action-btn,div[class*=jer-collection-element]:hover .tree-action-btn{opacity:1}.tree-action-icon{font-size:16px}.editor-container{flex:1;display:flex;flex-direction:column;background:#1e1e1e;position:relative}.tabs{display:flex;background:#2d2d30;border-bottom:1px solid #3e3e42;overflow-x:auto}.tab{padding:10px 20px;cursor:pointer;border-right:1px solid #3e3e42;font-size:13px;display:flex;align-items:center;gap:8px;transition:background .15s;white-space:nowrap}.tab:hover{background:#1e1e1e}.tab.active{background:#1e1e1e;color:#61dafb}.tab-close{margin-left:8px;opacity:.6;transition:opacity .15s}.tab-close:hover{opacity:1}.editor-content{flex:1;display:flex;flex-direction:column;position:relative;overflow:hidden}.right-panel{width:320px;background:#1e1e1e;border-left:1px solid #3e3e42;display:flex;flex-direction:column;overflow-y:auto}.properties-panel{width:320px;background:#252526;border-left:1px solid #3e3e42;display:flex;flex-direction:column}.panel-header{padding:15px;border-bottom:1px solid #3e3e42;font-weight:600;font-size:13px;text-transform:uppercase;letter-spacing:.5px;color:#888;display:flex;justify-content:space-between;align-items:center}.unsaved-indicator{color:#f85149;font-size:16px;animation:pulse 2s infinite}.panel-content{flex:1;overflow-y:auto;padding:15px}.property-group{margin-bottom:20px}.property-label{font-size:12px;color:#888;margin-bottom:6px;text-transform:uppercase;letter-spacing:.5px}.property-value{background:#3e3e42;padding:8px 12px;border-radius:4px;font-size:14px;color:#d4d4d4;border:1px solid transparent;transition:border-color .2s}.property-value:hover{border-color:#0e639c}.property-chip{display:inline-block;background:#094771;padding:4px 10px;border-radius:12px;font-size:12px;margin-right:6px;margin-bottom:6px}.status-bar{background:#007acc;padding:6px 20px;display:flex;justify-content:space-between;align-items:center;font-size:12px;color:#fff}.status-left,.status-right{display:flex;gap:20px}.status-item{display:flex;align-items:center;gap:6px}.validation-badge{display:inline-flex;align-items:center;gap:6px;padding:4px 10px;border-radius:12px;font-size:12px;font-weight:500}.validation-badge.valid{background:#1a7f37;color:#d4d4d4}.validation-badge.invalid{background:#cf222e;color:#d4d4d4}.code-view-header{position:sticky;top:0;z-index:100;background:#0d1117;border-bottom:1px solid #30363d;padding:8px 12px;display:flex;align-items:center;justify-content:flex-end}.code-editor-wrapper{flex:1;overflow:hidden}.search-box{background:#161b2299;border:1px solid #30363d;border-radius:6px;padding:8px 12px;display:flex;align-items:center;gap:10px;min-width:300px}.search-input{background:transparent;border:none;color:#d4d4d4;font-size:14px;flex:1;outline:none}.search-input::placeholder{color:#666}.search-count{color:#888;font-size:12px}.empty-state{padding:40px 20px;text-align:center;color:#888;font-size:14px}.context-path,.context-type{margin-bottom:20px}.path-container{display:flex;align-items:center;gap:8px}.copy-path-button{padding:6px 10px;background:#58a6ff1f;border:1px solid rgba(88,166,255,.3);border-radius:4px;color:#58a6ff;cursor:pointer;font-size:14px;transition:all .2s ease;flex-shrink:0}.copy-path-button:hover{background:#58a6ff40;border-color:#58a6ff;transform:translateY(-1px);box-shadow:0 2px 8px #58a6ff4d}.copy-path-button:active{transform:translateY(0);box-shadow:0 1px 4px #58a6ff33}.context-editor-body{margin-top:20px}.context-fields{display:flex;flex-direction:column;gap:15px}.context-field-group{border-left:2px solid #3e3e42;padding-left:15px}.context-field{display:flex;flex-direction:column;gap:8px}.context-field.nested{padding-left:20px;border-left:2px solid #2d2d30}.context-label{font-size:13px;color:#9cdcfe;font-weight:500;display:flex;align-items:center;gap:8px}.field-key{color:#d4d4d4}.field-type{font-size:11px;color:#888;font-weight:400}.context-input{width:100%;padding:8px 12px;background:#3e3e42;border:1px solid #3e3e42;border-radius:4px;color:#d4d4d4;font-size:13px;font-family:Monaco,Menlo,Courier New,monospace;transition:border-color .2s}.context-input:focus{outline:none;border-color:#58a6ff;background:#58a6ff0d;box-shadow:0 0 0 3px #58a6ff26,inset 0 0 0 1px #58a6ff33;transform:translateY(-1px)}.context-input:hover{border-color:#4e4e52}.context-input-wrapper{display:flex;align-items:center;gap:10px}.context-checkbox{width:20px;height:20px;cursor:pointer}.context-checkbox-label{font-size:13px;color:#569cd6;font-family:Monaco,Menlo,Courier New,monospace}.expand-button{background:none;border:none;color:gold;cursor:pointer;font-size:12px;padding:0;width:20px;text-align:center;transition:transform .2s}.expand-button:hover{color:#61dafb}.delete-field-button{padding:4px 10px;background:#cf222e;border:none;border-radius:4px;color:#fff;cursor:pointer;font-size:12px;transition:background .2s}.delete-field-button:hover{background:#e82d3a}.complex-field-info{font-size:12px;color:#888;padding:8px 0}.nested-fields{margin-top:10px;display:flex;flex-direction:column;gap:10px}.add-field-section{margin-top:20px;padding-top:20px;border-top:1px solid #3e3e42}.add-field-header{font-size:13px;color:#888;margin-bottom:10px;font-weight:500}.add-field-inputs{display:flex;gap:10px;align-items:center}.add-field-button{padding:8px 16px;background:#1a7f37;border:none;border-radius:4px;color:#fff;cursor:pointer;font-size:13px;white-space:nowrap;transition:background .2s}.add-field-button:hover{background:#2ea44f}.context-editor-actions{display:flex;gap:8px;padding:16px;border-top:1px solid #3c3c3c;background:#252526;margin-top:16px}.save-changes-button{flex:1;padding:10px 16px;background:#1a7f37;border:none;border-radius:4px;color:#fff;font-size:14px;font-weight:600;cursor:pointer;transition:background .2s}.save-changes-button:hover{background:#2ea44f}.cancel-changes-button{flex:1;padding:10px 16px;background:#6e768166;border:1px solid #6e7681;border-radius:4px;color:#c9d1d9;font-size:14px;font-weight:600;cursor:pointer;transition:all .2s}.cancel-changes-button:hover{background:#6e768199;border-color:#8b949e}.validation-badge.string,.validation-badge.number,.validation-badge.boolean,.validation-badge.object,.validation-badge.array,.validation-badge.null{background:#094771;color:#d4d4d4}.json-tree-wrapper input,.json-tree-wrapper input[type=text],.json-tree-wrapper input[type=number],.json-tree-wrapper input[type=checkbox],.json-tree-wrapper textarea,.json-tree-wrapper select,.json-tree-wrapper div[class*=select],.json-tree-wrapper div[class*=jer-select],.json-tree-wrapper [role=combobox],.json-tree-wrapper [class*=Select],.json-tree-wrapper [class*=dropdown]{background-color:#2d2d30!important;color:#d4d4d4!important;border:1.5px solid #444!important;padding:7px 10px!important;border-radius:4px!important;font-family:Monaco,Menlo,Courier New,monospace!important;font-size:13px!important}.json-tree-wrapper option,.json-tree-wrapper [role=option]{background-color:#2d2d30!important;color:#d4d4d4!important}.json-tree-wrapper .jer-btn-select-node{background-color:#007acc!important;color:#fff!important;opacity:1!important;min-width:auto!important;height:28px!important;padding:6px 12px!important;font-weight:500!important;margin-right:8px!important}.json-tree-wrapper .jer-btn-select-node:hover{background-color:#0098ff!important;transform:translateY(-1px)!important;box-shadow:0 4px 12px #007acc66!important}.json-tree-wrapper input:focus,.json-tree-wrapper textarea:focus,.json-tree-wrapper select:focus{background-color:#1e1e1e!important;border-color:#007acc!important;outline:none!important;box-shadow:0 0 0 2px #007acc4d!important}.json-tree-wrapper button{min-width:36px!important;min-height:36px!important;padding:8px!important;border-radius:6px!important;border:1.5px solid transparent!important;background:#ffffff0d!important;cursor:pointer!important;transition:all .2s cubic-bezier(.4,0,.2,1)!important;display:inline-flex!important;align-items:center!important;justify-content:center!important;margin:0 3px!important;opacity:.7!important}.json-tree-wrapper button svg{width:18px!important;height:18px!important}.json-tree-wrapper button:hover{opacity:1!important;transform:scale(1.1)!important;box-shadow:0 3px 10px #00000080!important}.json-tree-wrapper button:nth-child(1){color:#58a6ff!important}.json-tree-wrapper button:nth-child(1):hover{background:#58a6ff33!important;border-color:#58a6ff!important}.json-tree-wrapper button:nth-child(2){color:#f85149!important}.json-tree-wrapper button:nth-child(2):hover{background:#f8514933!important;border-color:#f85149!important}.json-tree-wrapper button:nth-child(3){color:#3fb950!important}.json-tree-wrapper button:nth-child(3):hover{background:#3fb95033!important;border-color:#3fb950!important}.json-tree-wrapper button:nth-child(4){color:#a78bfa!important}.json-tree-wrapper button:nth-child(4):hover{background:#a78bfa33!important;border-color:#a78bfa!important}.json-tree-wrapper>div>div,.json-tree-wrapper [class*=component],.json-tree-wrapper [class*=jer-component]{transition:background-color .15s ease!important;padding:6px 8px!important;margin:2px 0!important;border-radius:4px!important}.json-tree-wrapper>div>div:hover,.json-tree-wrapper [class*=component]:hover{background-color:#ffffff0f!important}.json-tree-wrapper [class*=main-row],.json-tree-wrapper [class*=value-main-row]{display:flex!important;align-items:center!important;gap:8px!important;flex-wrap:nowrap!important}.json-tree-wrapper span[class*=key-text]:hover,.json-tree-wrapper span[class*=jer-key-text]:hover{background-color:#58a6ff26!important;border-radius:3px!important;padding:2px 4px!important;margin:-2px -4px!important;cursor:pointer!important}.json-tree-wrapper span[class*=value]:not([class*=input]):hover{background-color:#ffffff1a!important;border-radius:3px!important;padding:2px 4px!important;margin:-2px -4px!important;cursor:pointer!important}.json-tree-wrapper [class*=inner],.json-tree-wrapper [class*=jer-collection-inner]{margin-left:12px!important;padding-left:18px!important;border-left:2px solid #404040!important;margin-top:4px!important;margin-bottom:4px!important}.json-tree-wrapper span[class*=key],.json-tree-wrapper [class*=property]{color:#79c0ff!important;font-weight:600!important;font-size:13px!important}.json-tree-wrapper span[class*=colon],.json-tree-wrapper [class*=key-colon]{color:#8b949e!important;margin:0 6px 0 2px!important}.json-tree-wrapper span[class*=value-string],.json-tree-wrapper [class*=string]:not([class*=empty]){color:#ffa657!important}.json-tree-wrapper span[class*=value-number],.json-tree-wrapper [class*=number]{color:#a5d6ff!important;font-weight:600!important}.json-tree-wrapper span[class*=value-boolean],.json-tree-wrapper [class*=boolean]{color:#7ee787!important;font-weight:700!important}.json-tree-wrapper [class*=null]{color:#8b949e!important;font-style:italic!important}.json-tree-wrapper [class*=bracket]{color:#7d8590!important;font-weight:400!important;margin:0 4px!important}.json-tree-wrapper svg[class*=chevron],.json-tree-wrapper svg[class*=icon-collection]{color:#8b949e!important;transition:transform .2s ease!important;margin-right:6px!important}.json-tree-wrapper select{cursor:pointer!important;padding-right:30px!important;background-image:url('data:image/svg+xml;charset=UTF-8,<svg xmlns="http://www.w3.org/2000/svg" width="12" height="12" viewBox="0 0 12 12"><path fill="%23d4d4d4" d="M6 9L1 4h10z"/></svg>')!important;background-repeat:no-repeat!important;background-position:right 8px center!important}.json-tree-wrapper button[class*=confirm],.json-tree-wrapper button[class*=ok]{background:#3fb95026!important;border-color:#3fb950!important;color:#7ee787!important;opacity:1!important}.json-tree-wrapper button[class*=cancel]{background:#f8514926!important;border-color:#f85149!important;color:#ff7b72!important;opacity:1!important}.json-tree-wrapper [class*=empty-string]{color:#8b949e!important;font-style:italic!important;opacity:.7!important}.schema-validator{border-bottom:1px solid #3e3e42;padding:15px}.schema-validator-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:15px}.schema-validator-header h3{margin:0;color:#d4d4d4;font-size:14px;font-weight:600}.schema-actions{display:flex;gap:8px}.schema-input-section{margin-bottom:15px}.schema-textarea{width:100%;min-height:120px;background:#2d2d30;border:1px solid #3e3e42;border-radius:4px;color:#d4d4d4;font-family:Monaco,Menlo,Courier New,monospace;font-size:13px;padding:10px;resize:vertical;outline:none}.schema-textarea:focus{border-color:#0e639c}.schema-selection{margin-bottom:15px;display:flex;align-items:center;gap:10px}.schema-select{flex:1;background:#2d2d30;border:1px solid #3e3e42;border-radius:4px;color:#d4d4d4;padding:8px 12px;font-size:13px;outline:none}.schema-select:focus{border-color:#0e639c}.btn-small{padding:6px 12px;font-size:12px}.validation-actions{margin-bottom:15px}.validation-results{background:#252526;border-radius:6px;padding:15px;border:1px solid #3e3e42}.validation-status{font-weight:600;margin-bottom:10px}.validation-status.valid{color:#56d364}.validation-status.invalid{color:#f85149}.validation-errors,.validation-warnings{margin-top:15px}.validation-errors h4,.validation-warnings h4{margin:0 0 10px;color:#d4d4d4;font-size:13px;font-weight:600}.error-item,.warning-item{padding:8px 12px;margin-bottom:6px;border-radius:4px;font-size:12px;line-height:1.4}.error-item{background:#f851491a;border-left:3px solid #f85149;color:#ff7b72}.warning-item{background:#ffc1071a;border-left:3px solid #d29922;color:#d29922}.error-keyword{font-weight:600;color:#f85149}.json-tree-wrapper [class*=item-count],.json-tree-wrapper [class*=count]{background:#6e768133!important;color:#8b949e!important;padding:2px 8px!important;border-radius:10px!important;font-size:11px!important;margin-left:8px!important}.modern-tree-editor{flex:1;overflow:auto;background:#0d1117;padding:20px;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Inter,sans-serif;min-width:0;display:flex;flex-direction:column}.tree-header{display:flex;justify-content:space-between;align-items:center;padding:8px 16px;background:#2d2d30;border-bottom:1px solid #3e3e42}.tree-controls{display:flex;gap:8px}.tree-search-container{margin-bottom:16px}.tree-search-toggle{background:#1c2128;border:1px solid #30363d;border-radius:6px;padding:8px 16px;color:#c9d1d9;cursor:pointer;font-size:16px;transition:all .2s ease;margin-bottom:8px}.tree-search-toggle:hover{background:#21262d;border-color:#58a6ff}.tree-search-bar{background:#161b22;border:1px solid #30363d;border-radius:6px;padding:12px;overflow:hidden}.tree-search-input-wrapper{display:flex;align-items:center;gap:8px;background:#0d1117;border:2px solid #30363d;border-radius:6px;padding:8px 12px;transition:border-color .2s ease}.tree-search-input-wrapper:focus-within{border-color:#58a6ff}.tree-search-icon{font-size:16px;opacity:.7}.tree-search-input{flex:1;background:transparent;border:none;color:#c9d1d9;font-size:14px;outline:none;font-family:inherit}.tree-search-input::placeholder{color:#6e7681}.tree-search-clear{background:transparent;border:none;color:#8b949e;cursor:pointer;padding:4px;font-size:16px;transition:color .2s ease}.tree-search-clear:hover{color:#f85149}.tree-search-results{margin-top:8px;padding:4px 8px;background:#58a6ff1a;border-radius:4px;font-size:12px;color:#58a6ff;text-align:center}.tree-node-wrapper.search-match .tree-node-card{background:#ffd50026;border-color:gold;box-shadow:0 0 0 2px #ffd7004d}.tree-node-wrapper.search-match .node-key,.tree-node-wrapper.search-match .node-value{font-weight:600}.tree-root{display:flex;flex-direction:column;gap:8px;flex:1;overflow:auto}.tree-node{position:relative;-webkit-user-select:none;user-select:none}.tree-node-card{display:flex;align-items:center;gap:12px;padding:12px 16px;background:#161b22;border:2px solid #30363d;border-radius:8px;transition:all .15s ease;cursor:pointer;position:relative}.tree-node-card.dragging{opacity:.5;transform:scale(.95);cursor:grabbing!important}.drag-overlay-node{pointer-events:none}.drag-overlay-node .tree-node-card{background:#1c2128;border:2px solid #58a6ff;box-shadow:0 8px 24px #00000080;transform:scale(1.05);opacity:.9}.drag-operation-indicator{font-size:10px;font-weight:600;color:#58a6ff;background:#58a6ff1a;padding:2px 6px;border-radius:8px;margin-left:8px;text-transform:uppercase;letter-spacing:.5px}.tree-node-wrapper{position:relative;transition:all .2s ease}.tree-node-wrapper.drop-target{animation:dropPulse .6s ease-in-out infinite}.tree-node-wrapper.drop-target-valid{animation:dropPulseValid .6s ease-in-out infinite}.tree-node-wrapper.drop-target-invalid{animation:dropPulseInvalid .6s ease-in-out infinite}.tree-node-wrapper.being-dragged{opacity:.3}@keyframes dropPulse{0%,to{border-top-color:#58a6ff}50%{border-top-color:#79c0ff}}@keyframes dropPulseValid{0%,to{border-top-color:#58a6ff;box-shadow:0 0 0 2px #58a6ff4d}50%{border-top-color:#79c0ff;box-shadow:0 0 0 4px #58a6ff33}}@keyframes dropPulseInvalid{0%,to{border-top-color:#f85149;box-shadow:0 0 0 2px #f851494d}50%{border-top-color:#da3633;box-shadow:0 0 0 4px #f8514933}}.tree-node:before{content:"";position:absolute;left:0;right:0;height:2px;background:#58a6ff;opacity:0;transition:opacity .2s ease;pointer-events:none;z-index:10}.tree-node.drag-over-top:before{top:-2px;opacity:1}.tree-node.drag-over-bottom:before{bottom:-2px;opacity:1}.tree-node-card:hover{background:#1c2128;border-color:#58a6ff;box-shadow:0 4px 12px #58a6ff26;transform:translateY(-1px)}.tree-node.selected .tree-node-card{background:#1c2128;border-color:#58a6ff;box-shadow:0 0 0 3px #58a6ff33}.tree-node.multi-selected .tree-node-card{background:#1c2128;border-color:#3fb950;box-shadow:0 0 0 3px #3fb95033}.drag-handle{display:flex;align-items:center;justify-content:center;color:#6e7681;cursor:grab;padding:4px;opacity:0;transition:opacity .2s ease}.tree-node-card:hover .drag-handle{opacity:1}.drag-handle:hover{color:#8b949e}.expand-toggle{display:flex;align-items:center;justify-content:center;width:24px;height:24px;background:transparent;border:none;color:#8b949e;cursor:pointer;border-radius:4px;transition:all .2s ease;padding:0}.expand-toggle:hover{background:#58a6ff26;color:#58a6ff}.node-content{display:flex;align-items:center;gap:8px;flex:1;min-width:0}.node-key{font-weight:600;color:#79c0ff;font-size:14px;white-space:nowrap}.node-colon{color:#6e7681;font-weight:500}.type-badge{display:inline-flex;align-items:center;gap:4px;padding:4px 10px;border-radius:12px;font-size:11px;font-weight:600;color:#0d1117;cursor:pointer;white-space:nowrap;transition:all .15s ease;text-transform:uppercase;letter-spacing:.5px}.type-badge:hover{box-shadow:0 2px 8px #0000004d;transform:scale(1.05)}.type-badge:active{transform:scale(.95)}.item-count{font-size:12px;color:#8b949e;background:#6e768133;padding:3px 8px;border-radius:10px;white-space:nowrap}.node-value{font-family:Monaco,Menlo,Courier New,monospace;font-size:13px;font-weight:500;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.inline-edit{flex:1;padding:6px 12px;background:#0d1117;border:2px solid #58a6ff;border-radius:6px;color:#c9d1d9;font-family:Monaco,Menlo,Courier New,monospace;font-size:13px;outline:none;min-width:100px;box-shadow:0 0 0 3px #58a6ff33}.inline-edit:focus{border-color:#58a6ff;box-shadow:0 0 0 3px #58a6ff4d}.node-actions{display:flex;gap:6px;opacity:0;transition:opacity .2s ease}.tree-node-card:hover .node-actions{opacity:1}.action-btn{display:flex;align-items:center;justify-content:center;width:28px;height:28px;background:#6e76811a;border:1px solid #30363d;border-radius:6px;color:#8b949e;cursor:pointer;transition:all .15s ease;padding:0}.action-btn:hover{background:#6e768133;border-color:#58a6ff;color:#58a6ff}.action-btn.delete:hover{background:#f8514926;border-color:#f85149;color:#f85149}.action-btn.duplicate:hover{background:#a371f726;border-color:#a371f7;color:#a371f7}.action-btn.add-child:hover{background:#3fb95026;border-color:#3fb950;color:#3fb950}.tree-node-children{margin-left:40px;margin-top:8px;padding-left:20px;border-left:2px solid #30363d;display:flex;flex-direction:column;gap:8px;overflow:hidden}.tree-node[data-depth="0"]{margin-left:0}.tree-node[data-depth="1"] .tree-node-children{margin-left:20px}.context-menu{background:#161b22;border:1px solid #30363d;border-radius:8px;padding:6px;box-shadow:0 8px 24px #00000080;z-index:1000;min-width:180px}.context-menu button{display:flex;align-items:center;gap:8px;width:100%;padding:8px 12px;background:transparent;border:none;color:#c9d1d9;font-size:13px;text-align:left;cursor:pointer;border-radius:6px;transition:background .15s ease}.context-menu button:hover{background:#1c2128}.context-menu .delete-btn:hover{background:#f8514926;color:#f85149}.menu-divider{height:1px;background:#30363d;margin:6px 0}.modern-tree-editor::-webkit-scrollbar{width:12px}.modern-tree-editor::-webkit-scrollbar-track{background:#0d1117}.modern-tree-editor::-webkit-scrollbar-thumb{background:#30363d;border-radius:6px;border:2px solid #0d1117}.modern-tree-editor::-webkit-scrollbar-thumb:hover{background:#484f58}@keyframes slideIn{0%{opacity:0;transform:translate(-10px)}to{opacity:1;transform:translate(0)}}.tree-node{animation:slideIn .2s ease}.modal-overlay{position:fixed;inset:0;background:#000000b3;display:flex;align-items:center;justify-content:center;z-index:10000;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.modal-content{background:#161b22;border:1px solid #30363d;border-radius:12px;padding:24px;min-width:400px;max-width:500px;box-shadow:0 16px 48px #0009}.modal-title{color:#c9d1d9;font-size:18px;font-weight:600;margin:0 0 20px}.modal-field{margin-bottom:16px}.modal-label{display:block;color:#8b949e;font-size:12px;font-weight:600;text-transform:uppercase;letter-spacing:.5px;margin-bottom:8px}.modal-input,.modal-select{width:100%;background:#0d1117;border:2px solid #30363d;border-radius:6px;padding:10px 12px;color:#c9d1d9;font-size:14px;font-family:Monaco,Menlo,Courier New,monospace;outline:none;transition:border-color .2s ease}.modal-input:focus,.modal-select:focus{border-color:#58a6ff}.modal-select{cursor:pointer}.modal-actions{display:flex;justify-content:flex-end;gap:12px;margin-top:24px}.modal-btn{padding:8px 16px;border:none;border-radius:6px;font-size:14px;font-weight:600;cursor:pointer;transition:all .2s ease}.modal-btn-primary{background:#238636;color:#fff}.modal-btn-primary:hover{background:#2ea043}.modal-btn-secondary{background:transparent;color:#c9d1d9;border:1px solid #30363d}.modal-btn-secondary:hover{background:#21262d;border-color:#58a6ff}@media (max-width: 768px){.tree-node-children{margin-left:20px;padding-left:15px}.node-content{flex-wrap:wrap}.modal-content{min-width:90%;max-width:90%}}.context-menu .submenu{margin-left:12px;padding:6px;background:#0d1117;border:1px solid #30363d;border-radius:6px;margin-top:4px}.context-menu .submenu button{font-size:12px;padding:6px 10px;justify-content:space-between}.context-menu .menu-item-with-submenu{justify-content:space-between}.path-preview{font-family:Monaco,Menlo,Courier New,monospace;font-size:10px;color:#6e7681;margin-left:8px;overflow:hidden;text-overflow:ellipsis;max-width:150px;white-space:nowrap}.reduced-tree-view{width:100%;height:100%;background:#0d1117;color:#c9d1d9;font-family:Monaco,Menlo,Ubuntu Mono,monospace;font-size:13px;overflow:auto;padding:16px;display:flex;flex-direction:column}.tree-header{position:sticky;top:0;z-index:100;display:flex;flex-direction:row;align-items:center;justify-content:space-between;gap:12px;padding:8px 12px;margin-bottom:16px;background:#0d1117;border-bottom:1px solid #30363d}.breadcrumb{flex:1;display:flex;align-items:center;gap:6px;padding:6px 12px;background:#161b2299;border:1px solid #30363d;border-radius:6px;font-size:12px;overflow-x:auto;white-space:nowrap;min-height:32px}.breadcrumb-item{color:#8b949e;transition:all .15s ease}.breadcrumb-item.clickable{color:#58a6ff;cursor:pointer}.breadcrumb-item.clickable:hover{color:#79c0ff;text-decoration:underline}.breadcrumb-item.active{color:#f0f6fc;font-weight:600}.breadcrumb-separator{color:#484f58;-webkit-user-select:none;user-select:none}.tree-controls{display:flex;gap:8px;flex-shrink:0}.view-toggle-btn{padding:6px 12px;background:#3e3e42;border:1px solid #3e3e42;border-radius:4px;color:#d4d4d4;cursor:pointer;font-size:12px;transition:all .2s;display:flex;align-items:center;gap:4px}.view-toggle-btn:hover{background:#4e4e52;border-color:#4e4e52}.view-toggle-btn.active{background:#0e639c;border-color:#0e639c;color:#fff}.tree-container{min-height:100%}.tree-node-wrapper{position:relative}.tree-node{padding:2px 4px;margin:1px 0;border-radius:3px;cursor:pointer;transition:background-color .15s ease;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.tree-node:hover{background:#b1bac41f}.tree-node.selected{background:#58a6ff33;border-left:3px solid #58a6ff}.tree-node.hovered{background:#b1bac414}.tree-node.root-node{font-weight:600;font-size:14px;margin-bottom:8px;background:#218bff1a;border-left:3px solid #218dfb}.node-content{display:flex;align-items:center;gap:4px}.expand-icon{color:#8b949e;font-size:11px;min-width:16px;text-align:center}.expand-icon.clickable{cursor:pointer;color:#58a6ff}.expand-icon.clickable:hover{color:#79c0ff}.node-key{color:#f0f6fc;font-weight:500;max-width:200px;overflow:hidden;text-overflow:ellipsis}.node-count{color:#8b949e;font-size:11px;font-weight:400}.node-preview{font-size:12px;margin-left:8px;flex:1;overflow:hidden;text-overflow:ellipsis}.value-string{color:#ffa657;font-weight:500}.value-number{color:#79c0ff;font-weight:600}.value-boolean{color:#7ee787;font-weight:700}.value-null{color:#8b949e;font-style:italic;font-weight:500}.value-array{color:#d2a8ff;font-weight:500}.value-object{color:#58a6ff;font-weight:500}.mini-preview{color:#58a6ff;font-size:11px;background:#58a6ff1a;padding:1px 4px;border-radius:2px;margin:0 2px}.more-indicator{color:#8b949e;font-style:italic;opacity:.7}.more-text{color:#f85149;font-weight:500}.inline-editor{display:flex;align-items:flex-start;gap:8px;width:100%}.node-colon{color:#8b949e;font-weight:700}.edit-input{flex:1;background:#161b22cc;border:2px solid #58a6ff;border-radius:4px;color:#c9d1d9;font-family:Monaco,Menlo,Ubuntu Mono,monospace;font-size:12px;padding:4px 8px;outline:none;min-width:100px}.edit-input:focus{border-color:#79c0ff;box-shadow:0 0 0 2px #58a6ff4d}.edit-buttons{display:flex;gap:4px}.edit-save,.edit-cancel{background:none;border:none;cursor:pointer;padding:2px 6px;border-radius:3px;font-size:12px;transition:background-color .15s ease}.edit-save:hover{background:#2ea04333}.edit-cancel:hover{background:#f8514933}.tree-node.editing{background:#58a6ff1a;border-left:3px solid #58a6ff}.tooltip{position:fixed;z-index:1000;pointer-events:none;background:#161b22f2;border:1px solid #30363d;border-radius:8px;padding:12px;max-width:400px;max-height:300px;overflow:auto;box-shadow:0 8px 32px #0006;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px)}.tooltip-content{color:#c9d1d9;font-family:JetBrains Mono,monospace;font-size:11px}.tooltip-path{color:#58a6ff;font-weight:600;margin-bottom:8px;border-bottom:1px solid #30363d;padding-bottom:4px}.tooltip-value{line-height:1.4;font-family:JetBrains Mono,Fira Code,monospace;font-size:12px}.tooltip-value .json-key{color:#79c0ff;font-weight:600}.tooltip-value .json-string{color:#ffa657}.tooltip-value .json-number{color:#a5d6ff;font-weight:600}.tooltip-value .json-boolean{color:#7ee787;font-weight:700}.tooltip-value .json-null{color:#8b949e;font-style:italic}.reduced-tree-view::-webkit-scrollbar{width:8px}.reduced-tree-view::-webkit-scrollbar-track{background:#0d1117}.reduced-tree-view::-webkit-scrollbar-thumb{background:#30363d;border-radius:4px}.reduced-tree-view::-webkit-scrollbar-thumb:hover{background:#484f58}.editable-key{cursor:pointer;transition:background-color .15s ease;padding:1px 4px;border-radius:2px}.editable-key:hover{background-color:#58a6ff26}.node-actions{display:none;gap:4px;margin-left:auto;padding-left:8px}.tree-node:hover .node-actions{display:flex}.action-btn{background:#30363dcc;border:1px solid #30363d;border-radius:3px;color:#8b949e;cursor:pointer;padding:2px 6px;font-size:11px;transition:all .15s ease}.action-btn:hover{background:#30363d;border-color:#484f58;color:#c9d1d9}.action-btn.edit-key-btn:hover{border-color:#58a6ff;color:#58a6ff}.action-btn.delete-btn:hover{border-color:#f85149;color:#f85149}.action-btn.add-btn:hover{border-color:#3fb950;color:#3fb950}.type-badge{font-size:10px;padding:2px 6px;border-radius:3px;margin-left:6px;cursor:pointer;transition:all .15s ease;font-weight:600;text-transform:uppercase}.type-badge.type-string{background:#ffa65726;color:#ffa657;border:1px solid rgba(255,166,87,.3)}.type-badge.type-number{background:#a5d6ff26;color:#a5d6ff;border:1px solid rgba(165,214,255,.3)}.type-badge.type-boolean{background:#7ee78726;color:#7ee787;border:1px solid rgba(126,231,135,.3)}.type-badge.type-null{background:#8b949e26;color:#8b949e;border:1px solid rgba(139,148,158,.3)}.type-badge.type-object{background:#79c0ff26;color:#79c0ff;border:1px solid rgba(121,192,255,.3)}.type-badge.type-array{background:#d299ff26;color:#d299ff;border:1px solid rgba(210,153,255,.3)}.type-badge:hover{transform:scale(1.05);filter:brightness(1.2)}.type-selector{position:absolute;background:#161b22;border:1px solid #30363d;border-radius:6px;box-shadow:0 8px 24px #00000080;z-index:1000;min-width:140px;padding:4px}.type-option{padding:6px 12px;cursor:pointer;border-radius:4px;transition:background .15s ease;font-size:12px;display:flex;align-items:center;gap:8px}.type-option:hover{background:#58a6ff26}.type-option.selected{background:#58a6ff33;font-weight:600}.search-bar{position:sticky;top:52px;z-index:99;display:flex;gap:8px;padding:8px 12px;background:#0d1117;border:1px solid #30363d;border-radius:6px;margin-bottom:12px;align-items:center}.search-input{flex:1;background:#0d1117;border:1px solid #30363d;border-radius:4px;color:#c9d1d9;font-family:Monaco,Menlo,monospace;font-size:13px;padding:6px 10px;outline:none}.search-input:focus{border-color:#58a6ff;box-shadow:0 0 0 2px #58a6ff33}.search-controls{display:flex;gap:4px;align-items:center}.search-btn{background:#3e3e42;border:1px solid #3e3e42;border-radius:4px;color:#d4d4d4;cursor:pointer;padding:4px 8px;font-size:11px;transition:all .2s}.search-btn:hover{background:#4e4e52;border-color:#4e4e52}.search-btn.active{background:#0e639c;border-color:#0e639c;color:#fff}.search-results-count{font-size:11px;color:#8b949e;white-space:nowrap}.search-highlight{background:#ffdf004d;border-radius:2px;padding:1px 2px;box-shadow:0 0 0 2px #ffdf0033}.search-highlight.active{background:#ffdf0080;box-shadow:0 0 0 2px #ffdf0066}.drag-handle{cursor:grab;color:#8b949e;font-size:14px;padding:2px 4px;margin-right:4px;opacity:0;transition:opacity .15s ease}.tree-node:hover .drag-handle{opacity:.6}.drag-handle:hover{opacity:1!important;color:#58a6ff}.drag-handle:active{cursor:grabbing}.tree-node.dragging{opacity:.5;background:#58a6ff1a}.tree-node.drag-over{border-top:2px solid #3fb950}.tree-node.drag-over-invalid{border-top:2px solid #f85149}.add-key-form{display:flex;gap:6px;align-items:center;padding:6px 8px;background:#58a6ff0d;border:1px solid #58a6ff;border-radius:4px;margin:2px 0}.add-key-input{background:#0d1117;border:1px solid #30363d;border-radius:3px;color:#c9d1d9;font-family:Monaco,Menlo,monospace;font-size:12px;padding:4px 6px;outline:none;min-width:100px}.add-key-input:focus{border-color:#58a6ff}.add-key-type-select{background:#0d1117;border:1px solid #30363d;border-radius:3px;color:#c9d1d9;font-size:11px;padding:4px 6px;outline:none;cursor:pointer}.add-key-type-select:focus{border-color:#58a6ff}.add-key-btns{display:flex;gap:4px}.add-key-btn{background:#3e3e42;border:1px solid #3e3e42;border-radius:3px;color:#d4d4d4;cursor:pointer;padding:4px 8px;font-size:11px;transition:all .15s}.add-key-btn:hover{background:#4e4e52}.add-key-btn.primary{background:#0e639c;border-color:#0e639c;color:#fff}.add-key-btn.primary:hover{background:#17b}.context-menu{position:fixed;background:#161b22;border:1px solid #30363d;border-radius:6px;box-shadow:0 8px 24px #00000080;z-index:1001;min-width:180px;padding:4px}.context-menu-item{padding:8px 12px;cursor:pointer;border-radius:4px;transition:background .15s ease;font-size:12px;display:flex;align-items:center;gap:8px;color:#c9d1d9}.context-menu-item:hover{background:#58a6ff26}.context-menu-item.danger:hover{background:#f8514926;color:#f85149}.context-menu-separator{height:1px;background:#30363d;margin:4px 0}.confirm-dialog-overlay{position:fixed;inset:0;background:#0009;z-index:2000;display:flex;align-items:center;justify-content:center}.confirm-dialog{background:#161b22;border:1px solid #30363d;border-radius:8px;box-shadow:0 16px 48px #000000b3;padding:20px;min-width:320px;max-width:480px}.confirm-dialog-title{color:#f0f6fc;font-size:16px;font-weight:600;margin-bottom:12px}.confirm-dialog-message{color:#c9d1d9;font-size:13px;margin-bottom:12px;line-height:1.5;white-space:pre-line}.confirm-dialog-checkbox{display:flex;align-items:center;gap:8px;margin-bottom:20px;padding:8px;background:#58a6ff0d;border-radius:4px}.confirm-dialog-checkbox input[type=checkbox]{width:16px;height:16px;cursor:pointer;accent-color:#58a6ff}.confirm-dialog-checkbox label{color:#c9d1d9;font-size:12px;cursor:pointer;-webkit-user-select:none;user-select:none}.confirm-dialog-actions{display:flex;gap:8px;justify-content:flex-end}.confirm-dialog-btn{padding:6px 16px;border-radius:6px;font-size:13px;cursor:pointer;transition:all .15s;border:1px solid}.confirm-dialog-btn.cancel{background:#3e3e42;border-color:#3e3e42;color:#d4d4d4}.confirm-dialog-btn.cancel:hover{background:#4e4e52}.confirm-dialog-btn.confirm{background:#f85149;border-color:#f85149;color:#fff}.confirm-dialog-btn.confirm:hover{background:#da3633}.insert-indicator{height:2px;background:#3fb950;margin:2px 0;border-radius:1px;box-shadow:0 0 4px #3fb95080}.modern-table-view{width:100%;height:100%;background:#0d1117;display:flex;flex-direction:column;font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;color:#c9d1d9;overflow:hidden;max-width:100vw}.array-selector{display:flex;align-items:center;gap:12px;padding:12px 20px;background:#161b22;border-bottom:1px solid #30363d}.selector-label{font-size:13px;font-weight:600;color:#8b949e}.selector-dropdown{position:relative;flex:1;max-width:500px}.selector-button{width:100%;display:flex;align-items:center;gap:10px;padding:8px 12px;background:#0d1117;border:1px solid #30363d;border-radius:6px;color:#c9d1d9;font-size:14px;cursor:pointer;transition:all .15s ease}.selector-button:hover{background:#161b22;border-color:#58a6ff}.selector-icon{font-size:16px}.selector-text{flex:1;text-align:left;font-weight:500}.selector-count{font-size:12px;color:#8b949e;padding:2px 8px;background:#21262d;border-radius:12px}.selector-arrow{font-size:10px;color:#8b949e;transition:transform .2s ease}.selector-arrow.open{transform:rotate(180deg)}.selector-backdrop{position:fixed;inset:0;z-index:99}.selector-menu{position:absolute;top:calc(100% + 4px);left:0;right:0;background:#161b22;border:1px solid #30363d;border-radius:8px;box-shadow:0 8px 24px #00000080;z-index:100;max-height:400px;overflow-y:auto}.selector-option{width:100%;padding:12px 16px;background:none;border:none;border-bottom:1px solid #21262d;text-align:left;cursor:pointer;transition:background .15s ease}.selector-option:last-child{border-bottom:none}.selector-option:hover{background:#21262d}.selector-option.selected{background:#1c2d41}.option-header{display:flex;align-items:center;gap:8px;margin-bottom:4px}.option-icon{font-size:14px}.option-path{flex:1;font-weight:600;color:#58a6ff;font-size:14px}.option-check{color:#3fb950;font-size:16px}.option-meta{font-size:12px;color:#8b949e;margin-bottom:4px}.option-columns{font-size:11px;color:#6e7681;font-family:Monaco,monospace}.table-toolbar{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px 20px;background:#161b22;border-bottom:1px solid #30363d;flex-shrink:0}.toolbar-left,.toolbar-right{display:flex;align-items:center;gap:12px}.search-box{position:relative;min-width:280px}.search-icon{position:absolute;left:12px;top:50%;transform:translateY(-50%);font-size:14px;color:#8b949e;pointer-events:none}.search-input{width:100%;padding:7px 32px 7px 36px;background:#0d1117;border:1px solid #30363d;border-radius:6px;color:#c9d1d9;font-size:13px;transition:all .15s ease;outline:none}.search-input:focus{border-color:#58a6ff;box-shadow:0 0 0 3px #58a6ff26}.search-clear{position:absolute;right:8px;top:50%;transform:translateY(-50%);width:20px;height:20px;display:flex;align-items:center;justify-content:center;background:#21262d;border:none;border-radius:4px;color:#8b949e;font-size:16px;cursor:pointer;transition:all .15s ease}.search-clear:hover{background:#30363d;color:#c9d1d9}.toolbar-stats{display:flex;gap:12px;font-size:13px;color:#8b949e}.stat-item{padding:4px 10px;background:#21262d;border-radius:12px}.stat-selected{background:#1c2d41;color:#58a6ff;font-weight:500}.toolbar-btn{display:flex;align-items:center;gap:6px;padding:7px 12px;background:#21262d;border:1px solid #30363d;border-radius:6px;color:#c9d1d9;font-size:13px;font-weight:500;cursor:pointer;transition:all .15s ease}.toolbar-btn:hover{background:#30363d;border-color:#58a6ff}.toolbar-btn:active{transform:scale(.98)}.btn-add{border-color:#3fb950;color:#3fb950}.btn-add:hover{background:#3fb95026;border-color:#3fb950}.btn-delete{border-color:#f85149;color:#f85149}.btn-delete:hover{background:#f8514926;border-color:#f85149}.btn-export{border-color:#58a6ff;color:#58a6ff}.btn-export:hover{background:#58a6ff26;border-color:#58a6ff}.btn-icon{font-size:14px}.btn-text{font-size:13px}.toolbar-dropdown{position:relative}.dropdown-backdrop{position:fixed;inset:0;z-index:199}.dropdown-menu{position:absolute;top:calc(100% + 4px);right:0;min-width:200px;background:#161b22;border:1px solid #30363d;border-radius:8px;box-shadow:0 8px 24px #00000080;z-index:200;padding:4px}.dropdown-columns{max-height:400px;overflow-y:auto}.dropdown-header{display:flex;align-items:center;justify-content:space-between;padding:8px 12px;border-bottom:1px solid #30363d;margin-bottom:4px;font-size:12px;font-weight:600;color:#8b949e}.dropdown-toggle-all{background:none;border:none;color:#58a6ff;font-size:11px;cursor:pointer;padding:2px 6px;border-radius:4px;transition:background .15s ease}.dropdown-toggle-all:hover{background:#21262d}.dropdown-item{width:100%;display:flex;align-items:center;gap:10px;padding:8px 12px;background:none;border:none;border-radius:6px;text-align:left;color:#c9d1d9;font-size:13px;cursor:pointer;transition:all .15s ease}.dropdown-item:hover{background:#21262d}.dropdown-item.active{background:#1c2d41;color:#58a6ff}.item-icon{font-size:14px;width:20px;text-align:center}.item-text{flex:1}.item-check{color:#3fb950;font-size:14px}.dropdown-checkbox{display:flex;align-items:center;gap:10px;padding:8px 12px;cursor:pointer;border-radius:6px;transition:background .15s ease}.dropdown-checkbox:hover{background:#21262d}.dropdown-checkbox input[type=checkbox]{cursor:pointer}.checkbox-text{font-size:13px;color:#c9d1d9}.table-scroll-container{flex:1;position:relative;background:#0d1117;overflow-x:scroll;overflow-y:auto;scrollbar-gutter:stable}@supports (-moz-appearance: none){.table-scroll-container{overflow-x:scroll!important;scrollbar-width:auto}}.modern-data-table{min-width:100%;width:max-content;border-collapse:separate;border-spacing:0;font-size:13px}.table-th{position:sticky;top:0;background:#161b22;padding:12px 16px;text-align:left;font-weight:600;color:#c9d1d9;border-bottom:2px solid #30363d;-webkit-user-select:none;user-select:none;z-index:10}.table-th.select-col{width:48px;padding:12px 16px}.th-content{display:flex;align-items:center;justify-content:space-between;gap:8px;cursor:pointer;transition:color .15s ease}.th-content:hover,.table-th.sorted .th-content{color:#58a6ff}.column-header-content{display:flex;align-items:center;gap:8px}.column-icon{font-size:14px;opacity:.7}.column-title{font-size:13px}.sort-icon{font-size:12px;color:#58a6ff}.column-resizer{position:absolute;right:0;top:0;height:100%;width:4px;background:transparent;cursor:col-resize;-webkit-user-select:none;user-select:none;touch-action:none;transition:background .15s ease}.column-resizer:hover{background:#58a6ff}.table-tr{transition:background .15s ease}.table-tr:hover{background:#161b22}.table-tr.selected{background:#1c2d41!important}.table-td{padding:10px 16px;border-bottom:1px solid #21262d;vertical-align:middle}.table-td.select-col{width:48px;padding:10px 16px}.view-compact .table-th{padding:8px 12px}.view-compact .table-td{padding:6px 12px;font-size:12px}.view-spacious .table-th{padding:16px 20px}.view-spacious .table-td{padding:14px 20px;font-size:14px}.table-cell{position:relative;max-width:400px}.cell-value{display:block;padding:2px 0;max-width:400px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.cell-null{color:#6e7681;font-style:italic}.cell-boolean{display:inline-flex;align-items:center;gap:4px;padding:2px 8px;border-radius:4px;font-weight:500;font-size:12px}.cell-boolean.true{background:#3fb95026;color:#3fb950}.cell-boolean.false{background:#f8514926;color:#f85149}.bool-icon{font-size:10px}.cell-number{color:#79c0ff;font-family:Monaco,Courier New,monospace;font-weight:500}.cell-string{color:#a5d6ff;font-family:Monaco,Courier New,monospace;max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;display:inline-block}.cell-array,.cell-object{color:#d2a8ff;font-weight:500;font-size:12px}.cell-editor{width:100%;padding:4px 8px;background:#0d1117;border:2px solid #58a6ff;border-radius:4px;color:#c9d1d9;font-size:13px;font-family:Monaco,Courier New,monospace;outline:none;box-shadow:0 0 0 3px #58a6ff26}.table-pagination{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:12px 20px;background:#161b22;border-top:1px solid #30363d;flex-shrink:0;width:100%;max-width:100%;overflow:visible}.pagination-info{font-size:13px;color:#8b949e}.pagination-controls{display:flex;align-items:center;gap:4px}.pagination-btn{width:32px;height:32px;display:flex;align-items:center;justify-content:center;background:#21262d;border:1px solid #30363d;border-radius:6px;color:#c9d1d9;font-size:14px;cursor:pointer;transition:all .15s ease}.pagination-btn:hover:not(:disabled){background:#30363d;border-color:#58a6ff}.pagination-btn:disabled{opacity:.3;cursor:not-allowed}.pagination-page{padding:0 12px;font-size:13px;color:#c9d1d9;font-weight:500}.pagination-select{padding:6px 10px;background:#21262d;border:1px solid #30363d;border-radius:6px;color:#c9d1d9;font-size:13px;cursor:pointer;transition:all .15s ease;outline:none}.pagination-select:hover{background:#30363d;border-color:#58a6ff}.table-empty-state{display:flex;flex-direction:column;align-items:center;justify-content:center;height:100%;padding:64px 32px;text-align:center}.empty-icon{font-size:64px;margin-bottom:24px;opacity:.5}.empty-title{font-size:20px;font-weight:600;color:#c9d1d9;margin-bottom:12px}.empty-description{font-size:14px;color:#8b949e;line-height:1.6;max-width:400px}input[type=checkbox]{width:16px;height:16px;cursor:pointer;accent-color:#58a6ff}.table-scroll-container::-webkit-scrollbar{width:12px;height:14px;display:block}.selector-menu::-webkit-scrollbar,.dropdown-columns::-webkit-scrollbar{width:10px;height:10px}.table-scroll-container::-webkit-scrollbar-track,.selector-menu::-webkit-scrollbar-track,.dropdown-columns::-webkit-scrollbar-track{background:#0d1117}.table-scroll-container::-webkit-scrollbar-thumb,.selector-menu::-webkit-scrollbar-thumb,.dropdown-columns::-webkit-scrollbar-thumb{background:#30363d;border-radius:5px}.table-scroll-container::-webkit-scrollbar-thumb:hover,.selector-menu::-webkit-scrollbar-thumb:hover,.dropdown-columns::-webkit-scrollbar-thumb:hover{background:#484f58}@keyframes fadeIn{0%{opacity:0;transform:translateY(4px)}to{opacity:1;transform:translateY(0)}}@keyframes slideDown{0%{opacity:0;transform:translateY(-8px)}to{opacity:1;transform:translateY(0)}}@media (max-width: 768px){.table-toolbar{flex-direction:column;align-items:stretch}.toolbar-left,.toolbar-right{width:100%;justify-content:space-between}.search-box{min-width:100%}.btn-text{display:none}.toolbar-btn{padding:7px 10px}}.selector-group{margin-bottom:4px}.selector-group:last-child{margin-bottom:0}.selector-group-header{display:flex;align-items:center;gap:8px;padding:8px 16px;background:#0d1117;font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.5px;color:#8b949e;border-bottom:1px solid #21262d;border-top:1px solid #21262d}.group-icon{font-size:12px}.group-label{flex:1}.selector-option.nested-option{padding-left:24px}.option-indent{color:#6e7681;font-size:12px;margin-right:4px}.option-path-full{font-size:10px;color:#6e7681;font-family:Monaco,monospace;margin-top:4px;opacity:.7}.column-title.depth-1{color:#79c0ff}.column-title.depth-2{color:#58a6ff}.column-title.depth-3{color:#2f81f7}.cell-array-clickable{background:none;border:none;cursor:pointer;padding:2px 8px;border-radius:4px;transition:all .15s ease;display:inline-flex;align-items:center;gap:4px}.cell-array-clickable:hover{background:#58a6ff33;color:#58a6ff;transform:translate(2px)}.cell-array-clickable:active{transform:translate(0) scale(.98)}.column-title{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:200px}.column-header-content[title]:hover:after{content:attr(title);position:absolute;bottom:100%;left:50%;transform:translate(-50%);background:#161b22;color:#c9d1d9;padding:4px 8px;border-radius:4px;font-size:11px;white-space:nowrap;z-index:1000;border:1px solid #30363d;box-shadow:0 4px 12px #00000080;pointer-events:none}.breadcrumb-container{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:10px 20px;background:#161b22;border-bottom:1px solid #30363d}.breadcrumb-trail{display:flex;align-items:center;gap:4px;flex:1}.breadcrumb-separator{color:#6e7681;font-size:14px;margin:0 4px}.breadcrumb-segment{display:inline-flex;align-items:center;gap:6px;padding:6px 12px;background:none;border:none;border-radius:6px;color:#8b949e;font-size:13px;font-weight:500;cursor:pointer;transition:all .15s ease}.breadcrumb-segment:hover:not(:disabled){background:#21262d;color:#58a6ff}.breadcrumb-segment.active{background:#1c2d41;color:#58a6ff;cursor:default}.breadcrumb-segment:disabled{cursor:default}.segment-icon{font-size:14px}.segment-label{font-size:13px}.breadcrumb-info{display:flex;align-items:center;gap:12px}.nested-indicator{display:inline-flex;align-items:center;gap:6px;padding:4px 12px;background:#f59e0b26;color:#f59e0b;border:1px solid rgba(245,158,11,.3);border-radius:12px;font-size:11px;font-weight:600;letter-spacing:.5px}.indicator-icon{font-size:12px}.indicator-text{text-transform:uppercase}.parent-info{display:inline-flex;align-items:center;gap:6px;padding:4px 10px;background:#21262d;border-radius:12px;font-size:12px;color:#8b949e;cursor:help}.info-icon{font-size:13px}.info-text{font-size:11px}.breadcrumb-back-btn{display:inline-flex;align-items:center;gap:6px;padding:6px 14px;background:#21262d;border:1px solid #30363d;border-radius:6px;color:#c9d1d9;font-size:13px;font-weight:500;cursor:pointer;transition:all .15s ease}.breadcrumb-back-btn:hover{background:#30363d;border-color:#58a6ff;color:#58a6ff}.back-icon{font-size:14px}.back-text{font-size:13px}.cell-editor-boolean{display:flex;align-items:center;gap:10px;padding:4px 8px;cursor:pointer;-webkit-user-select:none;user-select:none}.cell-editor-boolean input[type=checkbox]{width:18px;height:18px;cursor:pointer;accent-color:#3fb950}.cell-editor-boolean .bool-label{font-size:13px;font-weight:500;color:#c9d1d9}.cell-editor-number{width:100%;padding:4px 8px;background:#0d1117;border:2px solid #79c0ff;border-radius:4px;color:#79c0ff;font-size:13px;font-family:Monaco,Courier New,monospace;font-weight:500;outline:none;box-shadow:0 0 0 3px #79c0ff26}.cell-editor-number:focus{border-color:#58a6ff;box-shadow:0 0 0 3px #58a6ff33}.cell-editor-text{width:100%;padding:4px 8px;background:#0d1117;border:2px solid #58a6ff;border-radius:4px;color:#a5d6ff;font-size:13px;font-family:Monaco,Courier New,monospace;outline:none;box-shadow:0 0 0 3px #58a6ff26}.cell-editor-text:focus{border-color:#58a6ff;box-shadow:0 0 0 3px #58a6ff33}.cell-editor-select{width:100%;padding:4px 8px;background:#0d1117;border:2px solid #8b949e;border-radius:4px;color:#c9d1d9;font-size:13px;cursor:pointer;outline:none}.cell-editor-select:focus{border-color:#58a6ff;box-shadow:0 0 0 3px #58a6ff26}.modern-table-view.is-nested .table-scroll-container{background:#0f1319;border-top:3px solid #f59e0b}.modern-table-view.is-nested .modern-data-table{background:#0f1319}.modern-table-view.is-nested .table-th,.modern-table-view.is-nested .table-tr:hover{background:#14181f}.graph-view{position:relative;width:100%;height:100%;background:#0d1117;overflow:hidden}.graph-canvas{width:100%;height:100%;cursor:grab}.graph-canvas:active{cursor:grabbing}.graph-controls{position:absolute;top:20px;left:20px;display:flex;gap:20px;z-index:10}.search-box{display:flex;align-items:center;gap:10px;background:#0d1117f2;border:1px solid #30363d;border-radius:8px;padding:8px 12px;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.search-input{background:transparent;border:none;color:#c9d1d9;font-size:14px;outline:none;width:200px;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}.search-input::placeholder{color:#6e7681}.search-results-info{display:flex;align-items:center;gap:8px;color:#8b949e;font-size:12px;border-left:1px solid #30363d;padding-left:12px}.search-nav-btn{background:transparent;border:1px solid #30363d;color:#c9d1d9;cursor:pointer;padding:2px 8px;border-radius:4px;font-size:14px;transition:all .2s}.search-nav-btn:hover{background:#21262d;border-color:#58a6ff}.zoom-controls{display:flex;align-items:center;gap:8px;background:#0d1117f2;border:1px solid #30363d;border-radius:8px;padding:8px 12px;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.zoom-controls button{background:transparent;border:1px solid #30363d;color:#c9d1d9;cursor:pointer;padding:4px 12px;border-radius:4px;font-size:16px;font-weight:700;transition:all .2s;min-width:32px}.zoom-controls button:hover{background:#21262d;border-color:#58a6ff}.zoom-controls span{color:#8b949e;font-size:12px;min-width:50px;text-align:center}.minimap-container{position:absolute;bottom:20px;right:20px;background:#0d1117f2;border:2px solid #30363d;border-radius:8px;padding:8px;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);box-shadow:0 4px 12px #0000004d}.minimap-canvas{display:block;border-radius:4px}.minimap-label{text-align:center;color:#8b949e;font-size:11px;margin-top:4px;text-transform:uppercase;letter-spacing:.5px}.edit-overlay{position:absolute;top:0;left:0;width:100%;height:100%;background:#000000b3;display:flex;align-items:center;justify-content:center;z-index:100;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.edit-modal{background:#0d1117;border:2px solid #30363d;border-radius:12px;padding:24px;min-width:400px;box-shadow:0 8px 24px #00000080}.edit-modal h3{margin:0 0 16px;color:#c9d1d9;font-size:18px;font-weight:600}.edit-modal input[type=text]{width:100%;background:#161b22;border:1px solid #30363d;border-radius:6px;color:#c9d1d9;padding:10px 12px;font-size:14px;font-family:SF Mono,Monaco,Inconsolata,Fira Code,monospace;outline:none;transition:border-color .2s}.edit-modal input[type=text]:focus{border-color:#58a6ff}.edit-buttons{display:flex;gap:12px;margin-top:16px;justify-content:flex-end}.edit-buttons button{padding:8px 16px;border-radius:6px;font-size:14px;font-weight:500;cursor:pointer;transition:all .2s;border:1px solid #30363d}.edit-buttons button:first-child{background:#238636;color:#fff;border-color:#238636}.edit-buttons button:first-child:hover{background:#2ea043;border-color:#2ea043}.edit-buttons button:last-child{background:transparent;color:#c9d1d9}.edit-buttons button:last-child:hover{background:#21262d}.graph-legend{position:absolute;bottom:20px;left:20px;background:#0d1117f2;border:1px solid #30363d;border-radius:8px;padding:12px;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);display:flex;flex-direction:column;gap:8px}.legend-item{display:flex;align-items:center;gap:8px;color:#8b949e;font-size:12px}.legend-color{width:16px;height:16px;border-radius:50%;border:2px solid}.legend-color.root{background:#1f2937;border-color:#ef4444}.legend-color.object{background:#1e3a8a;border-color:#3b82f6}.legend-color.array{background:#713f12;border-color:#f59e0b}.legend-color.primitive{background:#064e3b;border-color:#10b981}@keyframes pulse{0%,to{opacity:1}50%{opacity:.5}}.graph-canvas.loading{animation:pulse 2s infinite}@media (max-width: 768px){.graph-controls{flex-direction:column;gap:10px}.search-input{width:150px}.minimap-container{bottom:10px;right:10px}.minimap-canvas{width:150px;height:112px}.graph-legend{bottom:10px;left:10px}.edit-modal{min-width:90%}}.graph-view:before{content:"";position:absolute;top:0;left:0;width:100%;height:100%;background:radial-gradient(circle at 20% 50%,rgba(59,130,246,.03) 0%,transparent 50%),radial-gradient(circle at 80% 80%,rgba(239,68,68,.03) 0%,transparent 50%),radial-gradient(circle at 40% 80%,rgba(16,185,129,.03) 0%,transparent 50%);pointer-events:none;z-index:0}.graph-canvas.selecting{cursor:crosshair}.graph-performance-hint{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);background:#0d1117f2;border:1px solid #30363d;border-radius:8px;padding:20px;color:#8b949e;font-size:14px;text-align:center;z-index:5}.graph-loading{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);color:#8b949e;font-size:16px}.graph-loading:after{content:"...";animation:loading 1.5s infinite}@keyframes loading{0%{content:"."}33%{content:".."}66%{content:"..."}to{content:"."}}.building-view{position:relative;width:100%;height:100%;background:linear-gradient(to bottom,#0a0e27,#1a1f3a,#0a0e27);overflow:hidden;display:flex;flex-direction:column}.building-header{display:flex;justify-content:space-between;align-items:center;padding:16px 24px;background:#0d1123f2;border-bottom:2px solid #2d3748;box-shadow:0 2px 8px #0000004d;z-index:100}.building-title{display:flex;align-items:center;gap:12px}.building-icon{font-size:28px;animation:float 3s ease-in-out infinite}@keyframes float{0%,to{transform:translateY(0)}50%{transform:translateY(-5px)}}.building-name{font-size:20px;font-weight:700;color:#fff;text-shadow:0 2px 4px rgba(0,0,0,.5)}.floor-indicator{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;padding:6px 14px;border-radius:20px;font-size:13px;font-weight:600;box-shadow:0 2px 8px #667eea66}.search-box{display:flex;align-items:center;gap:12px;background:#1e293bcc;border:1px solid #475569;border-radius:8px;padding:8px 14px}.search-input{background:transparent;border:none;color:#e2e8f0;font-size:14px;outline:none;width:250px}.search-input::placeholder{color:#64748b}.search-results-info{display:flex;align-items:center;gap:8px;color:#94a3b8;font-size:12px;padding-left:12px;border-left:1px solid #475569}.search-nav-btn{background:#334155;border:1px solid #475569;color:#e2e8f0;cursor:pointer;padding:4px 8px;border-radius:4px;font-size:12px;transition:all .2s}.search-nav-btn:hover{background:#475569;transform:scale(1.1)}.breadcrumb-nav{display:flex;align-items:center;padding:12px 24px;background:#0f172ae6;border-bottom:1px solid #1e293b;overflow-x:auto;gap:8px}.breadcrumb-item{background:transparent;border:1px solid #334155;color:#94a3b8;padding:6px 12px;border-radius:6px;cursor:pointer;font-size:13px;transition:all .2s;white-space:nowrap}.breadcrumb-item:hover{background:#1e293b;border-color:#667eea;color:#e2e8f0;transform:translateY(-2px)}.breadcrumb-separator{color:#475569;font-size:14px}.building-content{display:flex;flex:1;overflow:hidden;padding:20px;gap:20px}.elevator-shaft{display:flex;flex-direction:column;align-items:center;gap:12px;width:80px;background:linear-gradient(to right,#1e293b,#0f172a);border:2px solid #334155;border-radius:12px;padding:16px 8px;box-shadow:inset 0 2px 10px #00000080;position:relative}.elevator-btn{width:50px;height:50px;background:linear-gradient(135deg,#3b82f6,#2563eb);border:2px solid #60a5fa;border-radius:50%;color:#fff;font-size:20px;cursor:pointer;transition:all .3s;box-shadow:0 4px 12px #3b82f666;display:flex;align-items:center;justify-content:center}.elevator-btn:hover:not(:disabled){background:linear-gradient(135deg,#2563eb,#1d4ed8);transform:scale(1.1);box-shadow:0 6px 16px #3b82f699}.elevator-btn:disabled{background:#1e293b;border-color:#334155;color:#475569;cursor:not-allowed;opacity:.5}.elevator-track{position:relative;width:60px;height:400px;background:linear-gradient(to bottom,#0f172a,#1e293b);border:2px solid #334155;border-radius:8px;overflow:hidden;box-shadow:inset 0 0 20px #000c}.elevator-car{position:absolute;top:0;left:50%;transform:translate(-50%);width:50px;height:50px;background:linear-gradient(135deg,#ef4444,#dc2626);border:3px solid #fca5a5;border-radius:8px;display:flex;align-items:center;justify-content:center;box-shadow:0 4px 16px #ef444499;z-index:10}.elevator-car.animating{transition:transform .5s cubic-bezier(.4,0,.2,1)}.elevator-display{color:#fff;font-weight:700;font-size:18px;text-shadow:0 2px 4px rgba(0,0,0,.5)}.floor-marker{position:absolute;left:-25px;width:20px;height:2px;background:#334155}.floor-marker.active{background:#ef4444;width:30px;height:3px;box-shadow:0 0 8px #ef4444cc}.properties-container{flex:1;display:flex;flex-direction:column;overflow-y:auto;padding:0 20px}.floor-title{display:flex;justify-content:space-between;align-items:center;margin-bottom:20px;padding-bottom:12px;border-bottom:2px solid #334155}.floor-title h2{margin:0;color:#e2e8f0;font-size:24px;font-weight:700;text-shadow:0 2px 4px rgba(0,0,0,.5)}.sibling-nav{display:flex;gap:8px}.sibling-btn{background:linear-gradient(135deg,#8b5cf6,#7c3aed);border:2px solid #a78bfa;color:#fff;padding:8px 16px;border-radius:8px;cursor:pointer;font-size:14px;font-weight:600;transition:all .2s;box-shadow:0 2px 8px #8b5cf666}.sibling-btn:hover:not(:disabled){background:linear-gradient(135deg,#7c3aed,#6d28d9);transform:translateY(-2px);box-shadow:0 4px 12px #8b5cf699}.sibling-btn:disabled{background:#1e293b;border-color:#334155;color:#475569;cursor:not-allowed;opacity:.5}.properties-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:16px;padding-bottom:20px}.property-box{background:linear-gradient(135deg,#1e293b,#0f172a);border:2px solid #334155;border-radius:12px;padding:16px;cursor:default;transition:all .3s;position:relative;overflow:hidden;box-shadow:0 4px 12px #0000004d}.property-box:before{content:"";position:absolute;top:0;left:0;right:0;height:4px;background:linear-gradient(90deg,transparent,currentColor,transparent);opacity:0;transition:opacity .3s}.property-box:hover:before{opacity:1}.property-box.clickable{cursor:pointer}.property-box.clickable:hover{transform:translateY(-4px);box-shadow:0 8px 24px #0006}.property-object{border-color:#3b82f6;color:#3b82f6}.property-object:hover{background:linear-gradient(135deg,#1e3a8a,#1e40af);border-color:#60a5fa}.property-array{border-color:#f59e0b;color:#f59e0b}.property-array:hover{background:linear-gradient(135deg,#78350f,#92400e);border-color:#fbbf24}.property-primitive{border-color:#10b981;color:#10b981}.property-primitive:hover{background:linear-gradient(135deg,#064e3b,#065f46);border-color:#34d399}.property-header{display:flex;align-items:center;gap:8px;margin-bottom:12px;padding-bottom:8px;border-bottom:1px solid rgba(51,65,85,.5)}.property-icon{font-size:20px}.property-key{color:#e2e8f0;font-weight:600;font-size:14px;flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.property-count{background:#64748b4d;color:#94a3b8;padding:2px 8px;border-radius:12px;font-size:11px;font-weight:600}.property-value{color:#cbd5e1;font-size:13px;font-family:SF Mono,Monaco,Inconsolata,Fira Code,monospace;word-break:break-word;min-height:40px}.property-action{margin-top:12px;padding-top:12px;border-top:1px solid rgba(51,65,85,.5);color:#94a3b8;font-size:12px;font-style:italic;text-align:center;opacity:0;transition:opacity .3s}.property-box.clickable:hover .property-action{opacity:1}.empty-floor{text-align:center;padding:80px 20px;color:#64748b;font-size:18px}.building-minimap{width:120px;background:#0f172af2;border:2px solid #334155;border-radius:12px;padding:16px;box-shadow:0 4px 16px #00000080}.minimap-title{color:#94a3b8;font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:1px;margin-bottom:12px;text-align:center}.minimap-floors{display:flex;flex-direction:column-reverse;gap:4px;max-height:400px;overflow-y:auto}.minimap-floor{height:30px;background:#1e293b;border:1px solid #334155;border-radius:4px;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:all .2s;position:relative}.minimap-floor:hover{background:#334155;transform:scaleX(1.1)}.minimap-floor.current{background:linear-gradient(135deg,#ef4444,#dc2626);border-color:#fca5a5;box-shadow:0 0 12px #ef444499;transform:scaleX(1.2)}.minimap-floor-label{color:#94a3b8;font-size:11px;font-weight:600}.minimap-floor.current .minimap-floor-label{color:#fff}.shortcuts-hint{background:#0f172af2;border-top:1px solid #334155;padding:10px 24px;color:#64748b;font-size:12px;text-align:center;display:flex;justify-content:center;gap:20px}.shortcuts-hint kbd{background:#1e293b;border:1px solid #334155;border-radius:4px;padding:2px 6px;font-family:monospace;font-size:11px;color:#94a3b8}.edit-overlay{position:absolute;top:0;left:0;width:100%;height:100%;background:#000c;display:flex;align-items:center;justify-content:center;z-index:1000;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.edit-modal{background:linear-gradient(135deg,#1e293b,#0f172a);border:2px solid #334155;border-radius:16px;padding:32px;min-width:400px;box-shadow:0 20px 60px #000c}.edit-modal h3{margin:0 0 20px;color:#e2e8f0;font-size:20px;font-weight:700}.edit-modal input[type=text]{width:100%;background:#0f172a;border:2px solid #334155;border-radius:8px;color:#e2e8f0;padding:12px 16px;font-size:14px;font-family:SF Mono,Monaco,Inconsolata,Fira Code,monospace;outline:none;transition:border-color .3s}.edit-modal input[type=text]:focus{border-color:#3b82f6;box-shadow:0 0 0 3px #3b82f61a}.edit-buttons{display:flex;gap:12px;margin-top:20px;justify-content:flex-end}.edit-buttons button{padding:10px 24px;border-radius:8px;font-size:14px;font-weight:600;cursor:pointer;transition:all .2s;border:2px solid}.edit-buttons button:first-child{background:linear-gradient(135deg,#10b981,#059669);color:#fff;border-color:#34d399}.edit-buttons button:first-child:hover{background:linear-gradient(135deg,#059669,#047857);transform:translateY(-2px);box-shadow:0 4px 12px #10b98166}.edit-buttons button:last-child{background:transparent;color:#94a3b8;border-color:#334155}.edit-buttons button:last-child:hover{background:#1e293b;border-color:#475569}.properties-container::-webkit-scrollbar,.minimap-floors::-webkit-scrollbar{width:8px}.properties-container::-webkit-scrollbar-track,.minimap-floors::-webkit-scrollbar-track{background:#0f172a;border-radius:4px}.properties-container::-webkit-scrollbar-thumb,.minimap-floors::-webkit-scrollbar-thumb{background:#334155;border-radius:4px}.properties-container::-webkit-scrollbar-thumb:hover,.minimap-floors::-webkit-scrollbar-thumb:hover{background:#475569}@media (max-width: 1024px){.building-minimap{display:none}.properties-grid{grid-template-columns:repeat(auto-fill,minmax(180px,1fr))}}@media (max-width: 768px){.building-header{flex-direction:column;gap:12px}.search-input{width:100%}.breadcrumb-nav{font-size:11px}.properties-grid{grid-template-columns:1fr}.elevator-shaft{width:60px}.shortcuts-hint{font-size:10px;gap:10px}}.react-flow{direction:ltr;--xy-edge-stroke-default: #b1b1b7;--xy-edge-stroke-width-default: 1;--xy-edge-stroke-selected-default: #555;--xy-connectionline-stroke-default: #b1b1b7;--xy-connectionline-stroke-width-default: 1;--xy-attribution-background-color-default: rgba(255, 255, 255, .5);--xy-minimap-background-color-default: #fff;--xy-minimap-mask-background-color-default: rgba(240, 240, 240, .6);--xy-minimap-mask-stroke-color-default: transparent;--xy-minimap-mask-stroke-width-default: 1;--xy-minimap-node-background-color-default: #e2e2e2;--xy-minimap-node-stroke-color-default: transparent;--xy-minimap-node-stroke-width-default: 2;--xy-background-color-default: transparent;--xy-background-pattern-dots-color-default: #91919a;--xy-background-pattern-lines-color-default: #eee;--xy-background-pattern-cross-color-default: #e2e2e2;background-color:var(--xy-background-color, var(--xy-background-color-default));--xy-node-color-default: inherit;--xy-node-border-default: 1px solid #1a192b;--xy-node-background-color-default: #fff;--xy-node-group-background-color-default: rgba(240, 240, 240, .25);--xy-node-boxshadow-hover-default: 0 1px 4px 1px rgba(0, 0, 0, .08);--xy-node-boxshadow-selected-default: 0 0 0 .5px #1a192b;--xy-node-border-radius-default: 3px;--xy-handle-background-color-default: #1a192b;--xy-handle-border-color-default: #fff;--xy-selection-background-color-default: rgba(0, 89, 220, .08);--xy-selection-border-default: 1px dotted rgba(0, 89, 220, .8);--xy-controls-button-background-color-default: #fefefe;--xy-controls-button-background-color-hover-default: #f4f4f4;--xy-controls-button-color-default: inherit;--xy-controls-button-color-hover-default: inherit;--xy-controls-button-border-color-default: #eee;--xy-controls-box-shadow-default: 0 0 2px 1px rgba(0, 0, 0, .08);--xy-edge-label-background-color-default: #ffffff;--xy-edge-label-color-default: inherit;--xy-resize-background-color-default: #3367d9}.react-flow.dark{--xy-edge-stroke-default: #3e3e3e;--xy-edge-stroke-width-default: 1;--xy-edge-stroke-selected-default: #727272;--xy-connectionline-stroke-default: #b1b1b7;--xy-connectionline-stroke-width-default: 1;--xy-attribution-background-color-default: rgba(150, 150, 150, .25);--xy-minimap-background-color-default: #141414;--xy-minimap-mask-background-color-default: rgba(60, 60, 60, .6);--xy-minimap-mask-stroke-color-default: transparent;--xy-minimap-mask-stroke-width-default: 1;--xy-minimap-node-background-color-default: #2b2b2b;--xy-minimap-node-stroke-color-default: transparent;--xy-minimap-node-stroke-width-default: 2;--xy-background-color-default: #141414;--xy-background-pattern-dots-color-default: #777;--xy-background-pattern-lines-color-default: #777;--xy-background-pattern-cross-color-default: #777;--xy-node-color-default: #f8f8f8;--xy-node-border-default: 1px solid #3c3c3c;--xy-node-background-color-default: #1e1e1e;--xy-node-group-background-color-default: rgba(240, 240, 240, .25);--xy-node-boxshadow-hover-default: 0 1px 4px 1px rgba(255, 255, 255, .08);--xy-node-boxshadow-selected-default: 0 0 0 .5px #999;--xy-handle-background-color-default: #bebebe;--xy-handle-border-color-default: #1e1e1e;--xy-selection-background-color-default: rgba(200, 200, 220, .08);--xy-selection-border-default: 1px dotted rgba(200, 200, 220, .8);--xy-controls-button-background-color-default: #2b2b2b;--xy-controls-button-background-color-hover-default: #3e3e3e;--xy-controls-button-color-default: #f8f8f8;--xy-controls-button-color-hover-default: #fff;--xy-controls-button-border-color-default: #5b5b5b;--xy-controls-box-shadow-default: 0 0 2px 1px rgba(0, 0, 0, .08);--xy-edge-label-background-color-default: #141414;--xy-edge-label-color-default: #f8f8f8}.react-flow__background{background-color:var(--xy-background-color-props, var(--xy-background-color, var(--xy-background-color-default)));pointer-events:none;z-index:-1}.react-flow__container{position:absolute;width:100%;height:100%;top:0;left:0}.react-flow__pane{z-index:1}.react-flow__pane.draggable{cursor:grab}.react-flow__pane.dragging{cursor:grabbing}.react-flow__pane.selection{cursor:pointer}.react-flow__viewport{transform-origin:0 0;z-index:2;pointer-events:none}.react-flow__renderer{z-index:4}.react-flow__selection{z-index:6}.react-flow__nodesselection-rect:focus,.react-flow__nodesselection-rect:focus-visible{outline:none}.react-flow__edge-path{stroke:var(--xy-edge-stroke, var(--xy-edge-stroke-default));stroke-width:var(--xy-edge-stroke-width, var(--xy-edge-stroke-width-default));fill:none}.react-flow__connection-path{stroke:var(--xy-connectionline-stroke, var(--xy-connectionline-stroke-default));stroke-width:var(--xy-connectionline-stroke-width, var(--xy-connectionline-stroke-width-default));fill:none}.react-flow .react-flow__edges{position:absolute}.react-flow .react-flow__edges svg{overflow:visible;position:absolute;pointer-events:none}.react-flow__edge{pointer-events:visibleStroke}.react-flow__edge.selectable{cursor:pointer}.react-flow__edge.animated path{stroke-dasharray:5;animation:dashdraw .5s linear infinite}.react-flow__edge.animated path.react-flow__edge-interaction{stroke-dasharray:none;animation:none}.react-flow__edge.inactive{pointer-events:none}.react-flow__edge.selected,.react-flow__edge:focus,.react-flow__edge:focus-visible{outline:none}.react-flow__edge.selected .react-flow__edge-path,.react-flow__edge.selectable:focus .react-flow__edge-path,.react-flow__edge.selectable:focus-visible .react-flow__edge-path{stroke:var(--xy-edge-stroke-selected, var(--xy-edge-stroke-selected-default))}.react-flow__edge-textwrapper{pointer-events:all}.react-flow__edge .react-flow__edge-text{pointer-events:none;-webkit-user-select:none;-moz-user-select:none;user-select:none}.react-flow__arrowhead polyline{stroke:var(--xy-edge-stroke, var(--xy-edge-stroke-default))}.react-flow__arrowhead polyline.arrowclosed{fill:var(--xy-edge-stroke, var(--xy-edge-stroke-default))}.react-flow__connection{pointer-events:none}.react-flow__connection .animated{stroke-dasharray:5;animation:dashdraw .5s linear infinite}svg.react-flow__connectionline{z-index:1001;overflow:visible;position:absolute}.react-flow__nodes{pointer-events:none;transform-origin:0 0}.react-flow__node{position:absolute;-webkit-user-select:none;-moz-user-select:none;user-select:none;pointer-events:all;transform-origin:0 0;box-sizing:border-box;cursor:default}.react-flow__node.selectable{cursor:pointer}.react-flow__node.draggable{cursor:grab;pointer-events:all}.react-flow__node.draggable.dragging{cursor:grabbing}.react-flow__nodesselection{z-index:3;transform-origin:left top;pointer-events:none}.react-flow__nodesselection-rect{position:absolute;pointer-events:all;cursor:grab}.react-flow__handle{position:absolute;pointer-events:none;min-width:5px;min-height:5px;width:6px;height:6px;background-color:var(--xy-handle-background-color, var(--xy-handle-background-color-default));border:1px solid var(--xy-handle-border-color, var(--xy-handle-border-color-default));border-radius:100%}.react-flow__handle.connectingfrom{pointer-events:all}.react-flow__handle.connectionindicator{pointer-events:all;cursor:crosshair}.react-flow__handle-bottom{top:auto;left:50%;bottom:0;transform:translate(-50%,50%)}.react-flow__handle-top{top:0;left:50%;transform:translate(-50%,-50%)}.react-flow__handle-left{top:50%;left:0;transform:translate(-50%,-50%)}.react-flow__handle-right{top:50%;right:0;transform:translate(50%,-50%)}.react-flow__edgeupdater{cursor:move;pointer-events:all}.react-flow__pane.selection .react-flow__panel{pointer-events:none}.react-flow__panel{position:absolute;z-index:5;margin:15px}.react-flow__panel.top{top:0}.react-flow__panel.bottom{bottom:0}.react-flow__panel.top.center,.react-flow__panel.bottom.center{left:50%;transform:translate(-15px) translate(-50%)}.react-flow__panel.left{left:0}.react-flow__panel.right{right:0}.react-flow__panel.left.center,.react-flow__panel.right.center{top:50%;transform:translateY(-15px) translateY(-50%)}.react-flow__attribution{font-size:10px;background:var(--xy-attribution-background-color, var(--xy-attribution-background-color-default));padding:2px 3px;margin:0}.react-flow__attribution a{text-decoration:none;color:#999}@keyframes dashdraw{0%{stroke-dashoffset:10}}.react-flow__edgelabel-renderer{position:absolute;width:100%;height:100%;pointer-events:none;-webkit-user-select:none;-moz-user-select:none;user-select:none;left:0;top:0}.react-flow__viewport-portal{position:absolute;width:100%;height:100%;left:0;top:0;-webkit-user-select:none;-moz-user-select:none;user-select:none}.react-flow__minimap{background:var( --xy-minimap-background-color-props, var(--xy-minimap-background-color, var(--xy-minimap-background-color-default)) )}.react-flow__minimap-svg{display:block}.react-flow__minimap-mask{fill:var( --xy-minimap-mask-background-color-props, var(--xy-minimap-mask-background-color, var(--xy-minimap-mask-background-color-default)) );stroke:var( --xy-minimap-mask-stroke-color-props, var(--xy-minimap-mask-stroke-color, var(--xy-minimap-mask-stroke-color-default)) );stroke-width:var( --xy-minimap-mask-stroke-width-props, var(--xy-minimap-mask-stroke-width, var(--xy-minimap-mask-stroke-width-default)) )}.react-flow__minimap-node{fill:var( --xy-minimap-node-background-color-props, var(--xy-minimap-node-background-color, var(--xy-minimap-node-background-color-default)) );stroke:var( --xy-minimap-node-stroke-color-props, var(--xy-minimap-node-stroke-color, var(--xy-minimap-node-stroke-color-default)) );stroke-width:var( --xy-minimap-node-stroke-width-props, var(--xy-minimap-node-stroke-width, var(--xy-minimap-node-stroke-width-default)) )}.react-flow__background-pattern.dots{fill:var( --xy-background-pattern-color-props, var(--xy-background-pattern-color, var(--xy-background-pattern-dots-color-default)) )}.react-flow__background-pattern.lines{stroke:var( --xy-background-pattern-color-props, var(--xy-background-pattern-color, var(--xy-background-pattern-lines-color-default)) )}.react-flow__background-pattern.cross{stroke:var( --xy-background-pattern-color-props, var(--xy-background-pattern-color, var(--xy-background-pattern-cross-color-default)) )}.react-flow__controls{display:flex;flex-direction:column;box-shadow:var(--xy-controls-box-shadow, var(--xy-controls-box-shadow-default))}.react-flow__controls.horizontal{flex-direction:row}.react-flow__controls-button{display:flex;justify-content:center;align-items:center;height:26px;width:26px;padding:4px;border:none;background:var(--xy-controls-button-background-color, var(--xy-controls-button-background-color-default));border-bottom:1px solid var( --xy-controls-button-border-color-props, var(--xy-controls-button-border-color, var(--xy-controls-button-border-color-default)) );color:var( --xy-controls-button-color-props, var(--xy-controls-button-color, var(--xy-controls-button-color-default)) );cursor:pointer;-webkit-user-select:none;-moz-user-select:none;user-select:none}.react-flow__controls-button svg{width:100%;max-width:12px;max-height:12px;fill:currentColor}.react-flow__edge.updating .react-flow__edge-path{stroke:#777}.react-flow__edge-text{font-size:10px}.react-flow__node.selectable:focus,.react-flow__node.selectable:focus-visible{outline:none}.react-flow__node-input,.react-flow__node-default,.react-flow__node-output,.react-flow__node-group{padding:10px;border-radius:var(--xy-node-border-radius, var(--xy-node-border-radius-default));width:150px;font-size:12px;color:var(--xy-node-color, var(--xy-node-color-default));text-align:center;border:var(--xy-node-border, var(--xy-node-border-default));background-color:var(--xy-node-background-color, var(--xy-node-background-color-default))}.react-flow__node-input.selectable:hover,.react-flow__node-default.selectable:hover,.react-flow__node-output.selectable:hover,.react-flow__node-group.selectable:hover{box-shadow:var(--xy-node-boxshadow-hover, var(--xy-node-boxshadow-hover-default))}.react-flow__node-input.selectable.selected,.react-flow__node-input.selectable:focus,.react-flow__node-input.selectable:focus-visible,.react-flow__node-default.selectable.selected,.react-flow__node-default.selectable:focus,.react-flow__node-default.selectable:focus-visible,.react-flow__node-output.selectable.selected,.react-flow__node-output.selectable:focus,.react-flow__node-output.selectable:focus-visible,.react-flow__node-group.selectable.selected,.react-flow__node-group.selectable:focus,.react-flow__node-group.selectable:focus-visible{box-shadow:var(--xy-node-boxshadow-selected, var(--xy-node-boxshadow-selected-default))}.react-flow__node-group{background-color:var(--xy-node-group-background-color, var(--xy-node-group-background-color-default))}.react-flow__nodesselection-rect,.react-flow__selection{background:var(--xy-selection-background-color, var(--xy-selection-background-color-default));border:var(--xy-selection-border, var(--xy-selection-border-default))}.react-flow__nodesselection-rect:focus,.react-flow__nodesselection-rect:focus-visible,.react-flow__selection:focus,.react-flow__selection:focus-visible{outline:none}.react-flow__controls-button:hover{background:var( --xy-controls-button-background-color-hover-props, var(--xy-controls-button-background-color-hover, var(--xy-controls-button-background-color-hover-default)) );color:var( --xy-controls-button-color-hover-props, var(--xy-controls-button-color-hover, var(--xy-controls-button-color-hover-default)) )}.react-flow__controls-button:disabled{pointer-events:none}.react-flow__controls-button:disabled svg{fill-opacity:.4}.react-flow__controls-button:last-child{border-bottom:none}.react-flow__controls.horizontal .react-flow__controls-button{border-bottom:none;border-right:1px solid var( --xy-controls-button-border-color-props, var(--xy-controls-button-border-color, var(--xy-controls-button-border-color-default)) )}.react-flow__controls.horizontal .react-flow__controls-button:last-child{border-right:none}.react-flow__resize-control{position:absolute}.react-flow__resize-control.left,.react-flow__resize-control.right{cursor:ew-resize}.react-flow__resize-control.top,.react-flow__resize-control.bottom{cursor:ns-resize}.react-flow__resize-control.top.left,.react-flow__resize-control.bottom.right{cursor:nwse-resize}.react-flow__resize-control.bottom.left,.react-flow__resize-control.top.right{cursor:nesw-resize}.react-flow__resize-control.handle{width:5px;height:5px;border:1px solid #fff;border-radius:1px;background-color:var(--xy-resize-background-color, var(--xy-resize-background-color-default));translate:-50% -50%}.react-flow__resize-control.handle.left{left:0;top:50%}.react-flow__resize-control.handle.right{left:100%;top:50%}.react-flow__resize-control.handle.top{left:50%;top:0}.react-flow__resize-control.handle.bottom{left:50%;top:100%}.react-flow__resize-control.handle.top.left,.react-flow__resize-control.handle.bottom.left{left:0}.react-flow__resize-control.handle.top.right,.react-flow__resize-control.handle.bottom.right{left:100%}.react-flow__resize-control.line{border-color:var(--xy-resize-background-color, var(--xy-resize-background-color-default));border-width:0;border-style:solid}.react-flow__resize-control.line.left,.react-flow__resize-control.line.right{width:1px;transform:translate(-50%);top:0;height:100%}.react-flow__resize-control.line.left{left:0;border-left-width:1px}.react-flow__resize-control.line.right{left:100%;border-right-width:1px}.react-flow__resize-control.line.top,.react-flow__resize-control.line.bottom{height:1px;transform:translateY(-50%);left:0;width:100%}.react-flow__resize-control.line.top{top:0;border-top-width:1px}.react-flow__resize-control.line.bottom{border-bottom-width:1px;top:100%}.react-flow__edge-textbg{fill:var(--xy-edge-label-background-color, var(--xy-edge-label-background-color-default))}.react-flow__edge-text{fill:var(--xy-edge-label-color, var(--xy-edge-label-color-default))}.json-graph-container{width:100%;height:100%;background:#0d1117;position:relative}.graph-controls{position:absolute;top:1rem;left:1rem;z-index:10;display:flex;gap:.5rem}.btn-layout{background:#161b22;border:1px solid #30363d;border-radius:6px;padding:.5rem 1rem;color:#c9d1d9;font-family:IBM Plex Mono,monospace;font-size:.875rem;font-weight:500;cursor:pointer;transition:all .2s ease}.btn-layout:hover{background:#21262d;border-color:#58a6ff;color:#58a6ff}.graph-node{background:#161b22;border:2px solid #30363d;border-radius:8px;padding:.75rem;min-width:180px;font-family:IBM Plex Mono,monospace;transition:all .2s ease;box-shadow:0 4px 12px #0000004d}.graph-node:hover{border-color:#58a6ff;box-shadow:0 0 0 3px #58a6ff33;transform:translateY(-2px)}.node-header{display:flex;align-items:center;justify-content:space-between;gap:.5rem;margin-bottom:.5rem;padding-bottom:.5rem;border-bottom:1px solid #30363d}.header-left{display:flex;align-items:center;gap:.5rem}.node-count{background:#30363d;color:#8b949e;font-size:.75rem;padding:1px 6px;border-radius:10px;font-weight:600}.node-icon{display:flex;align-items:center;justify-content:center;width:24px;height:24px;border-radius:4px;font-weight:600;font-size:.875rem}.node-type{font-size:.625rem;font-weight:600;letter-spacing:.5px;opacity:.7}.node-label{font-size:.875rem;font-weight:500;color:#c9d1d9;word-break:break-word}.node-value{font-size:.8125rem;color:#c9d1d9;word-break:break-word;line-height:1.4}.node-value-container{cursor:pointer;padding:2px 4px;border-radius:4px;transition:all .2s;display:flex;flex-wrap:wrap;gap:4px}.node-value-container:hover{background:#ffffff0d}.node-key{color:#8b949e;font-size:.8125rem}.node-value-text{word-break:break-all}.node-inline-editor{display:flex;align-items:center;gap:8px;margin-top:4px;background:#0d1117;border:1px solid #30363d;border-radius:6px;padding:4px 8px;min-height:32px}.node-input{background:transparent;border:none;color:#c9d1d9;font-family:inherit;font-size:.8125rem;width:100%;outline:none}.editor-actions{display:flex;gap:8px}.btn-save,.btn-cancel{background:transparent;border:none;cursor:pointer;padding:2px;font-size:1rem;display:flex;align-items:center;justify-content:center;transition:opacity .2s}.btn-save{color:#3fb950}.btn-cancel{color:#ff7b72}.btn-save:hover,.btn-cancel:hover{opacity:.7}.object-node{border-color:#1f6feb}.object-node .node-icon{background:#1f6feb33;color:#58a6ff}.object-node .node-type{color:#58a6ff}.object-node:hover{border-color:#58a6ff;background:#161b22}.array-node{border-color:#8957e5}.array-node .node-icon{background:#c471ed33;color:#c471ed}.array-node .node-type{color:#c471ed}.array-node:hover{border-color:#c471ed}.string-node{border-color:#2ea043}.string-node .node-icon{background:#3fb95033;color:#3fb950}.string-node .node-type,.string-node .node-value{color:#3fb950}.string-node:hover{border-color:#3fb950}.number-node{border-color:#da3633}.number-node .node-icon{background:#ff7b7233;color:#ff7b72}.number-node .node-type,.number-node .node-value{color:#ff7b72}.number-node:hover{border-color:#ff7b72}.boolean-node{border-color:#8957e5}.boolean-node .node-icon{background:#d2a8ff33;color:#d2a8ff}.boolean-node .node-type,.boolean-node .node-value{color:#d2a8ff}.boolean-node:hover{border-color:#d2a8ff}.null-node{border-color:#484f58}.null-node .node-icon{background:#6e768133;color:#6e7681}.null-node .node-type{color:#6e7681}.null-node .node-value{color:#6e7681;font-style:italic}.null-node:hover{border-color:#6e7681}.react-flow__node{cursor:grab}.react-flow__handle{width:8px;height:8px;background:#30363d;border:2px solid #0d1117}.react-flow__handle-left{left:-5px}.react-flow__handle-right{right:-5px}.react-flow__edge-path{stroke:#444c56!important;stroke-width:2}.react-flow__edge:hover .react-flow__edge-path{stroke:#79c0ff!important;stroke-width:3}.react-flow__controls{background:#161b22;border:1px solid #30363d}.react-flow__controls button{background:#161b22;border-bottom:1px solid #30363d;color:#c9d1d9;transition:all .2s ease}.react-flow__controls button:hover{background:#21262d;color:#58a6ff}.react-flow__controls button svg{fill:currentColor}.react-flow__minimap{background:#0d1117;border:1px solid #30363d}.react-flow__attribution{display:none}.react-flow__pane{cursor:default}::-webkit-scrollbar{width:12px;height:12px}::-webkit-scrollbar-track{background:#0d1117}::-webkit-scrollbar-thumb{background:#30363d;border-radius:6px;border:3px solid #0d1117}::-webkit-scrollbar-thumb:hover{background:#484f58}.features-page{position:absolute;top:0;left:0;width:100%;height:100%;background-color:#1e1e1e;color:#d4d4d4;z-index:1000;overflow-y:auto;font-family:Segoe UI,Tahoma,Geneva,Verdana,sans-serif;padding-bottom:50px}.features-header{background:linear-gradient(135deg,#2d2d2d,#1e1e1e);padding:4rem 2rem;text-align:center;border-bottom:1px solid #333}.features-title{font-size:3.5rem;margin:0;background:linear-gradient(90deg,#61dafb,#bb86fc);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent;font-weight:800}.features-subtitle{font-size:1.5rem;color:#a0a0a0;margin-top:1rem;max-width:800px;margin-left:auto;margin-right:auto}.features-back-btn{margin-top:2rem;padding:12px 24px;background-color:#007acc;color:#fff;border:none;border-radius:4px;font-size:1.1rem;cursor:pointer;transition:transform .2s,background-color .2s}.features-back-btn:hover{background-color:#0062a3;transform:translateY(-2px)}.features-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(350px,1fr));gap:2rem;padding:3rem;max-width:1400px;margin:0 auto}.feature-card{background-color:#252526;border:1px solid #333;border-radius:8px;padding:2rem;transition:transform .3s,box-shadow .3s}.feature-card:hover{transform:translateY(-5px);box-shadow:0 10px 20px #0000004d;border-color:#007acc}.feature-icon{font-size:3rem;margin-bottom:1rem;display:block}.feature-card h3{color:#fff;font-size:1.5rem;margin-bottom:1rem;margin-top:0}.feature-card p{color:#bbb;line-height:1.6}.feature-list{list-style:none;padding:0;margin-top:1.5rem}.feature-list li{margin-bottom:.5rem;padding-left:1.5rem;position:relative;color:#9cdcfe}.feature-list li:before{content:"✔";position:absolute;left:0;color:#4ec9b0}.cta-section{text-align:center;padding:4rem 2rem;background-color:#252526;margin-top:2rem}.cta-section h2{font-size:2.5rem;color:#fff;margin-bottom:1.5rem}.cta-section p{font-size:1.2rem;color:#a0a0a0;margin-bottom:2rem}.converter-layout{min-height:100vh;background:#0d1117;font-family:IBM Plex Sans,monospace;padding:2rem}.converter-header{max-width:1600px;margin:0 auto 3rem;display:grid;grid-template-columns:100px 1fr 100px;align-items:center;text-align:center}.btn-back{display:inline-flex;align-items:center;gap:.5rem;background:#161b22;border:1px solid #30363d;border-radius:6px;padding:.5rem 1rem;font-size:.875rem;font-weight:500;color:#58a6ff;cursor:pointer;transition:all .2s ease;font-family:IBM Plex Sans,sans-serif}.btn-back:hover{background:#21262d;border-color:#58a6ff}.btn-back svg{transition:transform .2s ease}.btn-back:hover svg{transform:translate(-3px)}.header-branding{display:flex;flex-direction:column;align-items:center;justify-content:center}.brand-name{font-size:1rem;font-weight:500;color:#8b949e;margin:0 0 .5rem;font-family:IBM Plex Mono,monospace;opacity:.8}.page-title{font-size:2rem;color:#c9d1d9;margin:0;font-weight:700;font-family:IBM Plex Sans,sans-serif;background:linear-gradient(90deg,#58a6ff,#d2a8ff);-webkit-background-clip:text;-webkit-text-fill-color:transparent;text-shadow:0 0 30px rgba(88,166,255,.2)}.page-title:before{content:none}.bento-container{max-width:1600px;margin:0 auto;display:grid;grid-template-columns:1fr auto 1fr;grid-template-rows:auto auto;gap:1rem;align-items:stretch}.bento-item{background:#161b22;border:1px solid #30363d;border-radius:6px;padding:1.25rem;transition:all .2s ease}.bento-item:hover{border-color:#58a6ff;box-shadow:0 0 0 1px #58a6ff}.input-card{grid-column:1;grid-row:1;display:flex;flex-direction:column;height:600px}.convert-card{grid-column:2;grid-row:1;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:1.5rem .75rem;background:#161b22;border-color:#30363d;gap:1rem}.output-card{grid-column:3;grid-row:1;display:flex;flex-direction:column;height:600px}.stats-card{grid-column:1 / 3;grid-row:2;min-height:100px;display:flex;align-items:center;justify-content:center;background:#0d1117;border:1px solid #21262d}.info-card{grid-column:3 / 4;grid-row:2}.card-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1rem;padding-bottom:1rem;border-bottom:1px solid #21262d}.header-left{display:flex;align-items:center;gap:.75rem}.icon-wrapper{width:32px;height:32px;border-radius:4px;display:flex;align-items:center;justify-content:center;background:#21262d;color:#c9d1d9}.card-header h3{font-size:1rem;font-weight:600;margin:0;color:#c9d1d9;font-family:IBM Plex Mono,monospace}.badge{padding:.25rem .5rem;border-radius:4px;font-size:.6875rem;font-weight:600;text-transform:uppercase;letter-spacing:.05em;font-family:IBM Plex Mono,monospace}.badge-blue{background:#58a6ff26;color:#58a6ff;border:1px solid rgba(88,166,255,.3)}.badge-green{background:#3fb95026;color:#3fb950;border:1px solid rgba(63,185,80,.3)}.code-area{flex:1;width:100%;border:1px solid #30363d;border-radius:6px;padding:1rem;font-family:IBM Plex Mono,Consolas,monospace;font-size:.8125rem;line-height:1.6;resize:none;background:#0d1117;color:#c9d1d9;transition:all .2s ease}.code-area:focus{outline:none;border-color:#58a6ff;box-shadow:0 0 0 1px #58a6ff}.code-area[data-vid=json]{color:#79c0ff}.code-area[data-vid=xml]{color:#ff7b72}.code-area[data-vid=csv]{color:#7ee787}.code-area[data-vid=yaml]{color:#d2a8ff}.card-actions{display:flex;gap:.5rem;margin-top:1rem;padding-top:1rem;border-top:1px solid #21262d}.btn-action{flex:1;display:inline-flex;align-items:center;justify-content:center;gap:.5rem;background:#21262d;border:1px solid #30363d;border-radius:6px;padding:.5rem 1rem;font-size:.8125rem;font-weight:500;color:#c9d1d9;cursor:pointer;transition:all .2s ease;font-family:IBM Plex Sans,sans-serif}.btn-action:hover{background:#30363d;border-color:#58a6ff}.btn-download{width:100%;display:inline-flex;align-items:center;justify-content:center;gap:.5rem;background:#238636;border:1px solid #2ea043;border-radius:6px;padding:.5rem 1rem;font-size:.8125rem;font-weight:600;color:#fff;cursor:pointer;transition:all .2s ease;font-family:IBM Plex Sans,sans-serif}.btn-download:hover:not(:disabled){background:#2ea043;border-color:#3fb950}.btn-download:disabled{opacity:.5;cursor:not-allowed}.btn-convert{width:64px;height:64px;display:flex;align-items:center;justify-content:center;background:#1f6feb;border:2px solid #58a6ff;border-radius:50%;font-size:1.5rem;color:#fff;cursor:pointer;transition:all .3s cubic-bezier(.34,1.56,.64,1);position:relative}.btn-convert:hover{background:#58a6ff;border-color:#79c0ff;box-shadow:0 0 0 8px #58a6ff33;transform:scale(1.1)}.btn-convert:active{transform:scale(.95)}.error-box{display:flex;flex-direction:column;align-items:center;gap:.75rem;background:#f851491a;border:1px solid rgba(248,81,73,.3);border-radius:6px;padding:1rem;color:#ff7b72;font-size:.75rem;font-weight:500;font-family:IBM Plex Mono,monospace;text-align:center;max-width:140px}.stat-group{display:flex;align-items:center;gap:2rem}.stat{text-align:center}.stat-value{font-size:2rem;font-weight:700;color:#58a6ff;font-family:IBM Plex Mono,monospace}.stat-label{font-size:.75rem;color:#8b949e;text-transform:uppercase;font-family:IBM Plex Mono,monospace}.stat-divider{width:1px;height:40px;background:#21262d}.info-title{display:flex;align-items:center;gap:.625rem;font-size:1rem;font-weight:600;margin:0 0 1rem;color:#c9d1d9;font-family:IBM Plex Mono,monospace}.info-list{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:.625rem}.info-list li{position:relative;padding-left:1.25rem;font-size:.875rem;color:#8b949e;line-height:1.5;font-family:IBM Plex Mono,monospace}.info-list li:before{content:">";position:absolute;left:0;color:#58a6ff;font-weight:600}@media (max-width: 1200px){.bento-container{grid-template-columns:1fr;grid-template-rows:auto auto auto auto}.input-card{grid-column:1;grid-row:1;height:400px}.convert-card{grid-column:1;grid-row:2;flex-direction:row;min-height:auto}.output-card{grid-column:1;grid-row:3;height:400px}.stats-card{grid-column:1;grid-row:4}.info-card{grid-column:1;grid-row:5}.btn-convert{width:auto;height:auto;padding:.75rem 2rem;border-radius:6px}}.related-tools-section{max-width:1200px;margin:4rem auto 0;padding:2rem;background:#161b22;border:1px solid #30363d;border-radius:12px}.related-tools-section h3{color:#c9d1d9;font-size:1.1rem;margin-bottom:1.5rem;font-family:IBM Plex Mono,monospace;display:flex;align-items:center;gap:.5rem}.related-tools-section h3:before{content:"⚡"}.tools-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:1rem}.tool-card-mini{background:#0d1117;border:1px solid #30363d;padding:1.25rem;border-radius:8px;cursor:pointer;display:flex;justify-content:space-between;align-items:center;transition:all .2s cubic-bezier(.4,0,.2,1);position:relative;overflow:hidden}.tool-card-mini:before{content:"";position:absolute;top:0;left:0;width:2px;height:100%;background:#58a6ff;opacity:0;transition:opacity .2s ease}.tool-card-mini:hover{border-color:#58a6ff;background:#13171f;transform:translateY(-4px);box-shadow:0 4px 12px #0003}.tool-card-mini:hover:before{opacity:1}.tool-name{color:#c9d1d9;font-weight:500;font-size:.9rem;font-family:IBM Plex Sans,sans-serif}.tool-arrow{color:#58a6ff;opacity:.5;transition:all .2s ease;font-weight:700}.tool-card-mini:hover .tool-arrow{opacity:1;transform:translate(4px)}.converter-footer{max-width:1200px;margin:2rem auto 4rem;padding-top:2rem;border-top:1px solid rgba(48,54,61,.5);text-align:center}.converter-footer h4{color:#6e7681;font-size:.75rem;text-transform:uppercase;letter-spacing:.1em;margin-bottom:2rem}.footer-links{display:flex;flex-wrap:wrap;justify-content:center;gap:.75rem 1.5rem}.footer-link{color:#8b949e;text-decoration:none;font-size:.85rem;padding:.25rem .5rem;border-radius:4px;transition:all .2s ease;font-family:IBM Plex Mono,monospace}.footer-link:hover{color:#58a6ff;background:#58a6ff1a}.converter-page,.tools-grid{animation:fadeIn .4s ease}
