@import url(https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700&family=JetBrains+Mono:wght@400;500&display=swap);:root{--bg-darkest:#0d0d0d;--bg-primary:#1a1a1a;--bg-secondary:#242424;--bg-tertiary:#2d2d2d;--bg-elevated:#333;--bg-input:#1a1a1a;--border-subtle:#ffffff0f;--border-default:#ffffff1a;--border-strong:#ffffff26;--border-hover:#fff3;--border-focus:#06c;--text-primary:#fff;--text-secondary:#a0a0a0;--text-muted:#666;--text-disabled:#555;--text-inverse:#1a1a1a;--accent-primary:#06c;--accent-hover:#07e;--accent-active:#05a;--accent-subtle:#0066cc26;--accent-text:#4a9eff;--color-success:#4caf50;--color-success-bg:#4caf5026;--color-warning:#ff9800;--color-warning-bg:#ff980026;--color-error:#f44336;--color-error-bg:#f4433626;--color-info:#2196f3;--color-info-bg:#2196f326;--input-bg:#1a1a1a;--input-bg-hover:#1a1a1a;--input-border:#ffffff1a;--input-border-hover:#ffffff26;--input-border-focus:#06c;--input-text:#fff;--input-placeholder:#666;--btn-bg:#ffffff14;--btn-bg-hover:#ffffff1f;--btn-bg-active:#ffffff0f;--btn-border:#ffffff1a;--btn-text:#fff;--btn-primary-bg:#ffffffe6;--btn-primary-bg-hover:#fff;--btn-primary-bg-active:#ffffffd9;--btn-primary-text:#1a1a1a;--toolbar-bg:#ffffff08;--toolbar-bg-solid:#242424;--toolbar-border:#ffffff1a;--toolbar-btn-hover:#ffffff14;--toolbar-btn-active:#ffffff26;--foldout-bg:#2a2a2a;--foldout-bg-hover:#303030;--menu-bg:#2a2a2a;--menu-border:#ffffff1a;--menu-item-hover:#ffffff14;--menu-item-active:#ffffff26;--menu-separator:#ffffff14;--panel-bg:#1a1a1a;--panel-header-bg:#ffffff08;--panel-border:#ffffff1a;--panel-header-text:#fff;--tree-item-hover:#ffffff0d;--tree-item-selected:#06c;--tree-item-selected-text:#fff;--tree-indent-guide:#ffffff14;--scrollbar-track:#ffffff08;--scrollbar-thumb:#ffffff26;--scrollbar-thumb-hover:#ffffff40;--scrollbar-width:8px;--tab-bg:#0000;--tab-bg-active:#ffffff14;--tab-border:#ffffff1a;--tab-text:grey;--tab-text-active:#fff;--slider-track:#1a1a1a;--slider-track-hover:#1a1a1a;--slider-track-fill:#06c;--slider-thumb:#06c;--slider-thumb-hover:#07e;--select-arrow:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='gray' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E");--checkbox-bg:#1a1a1a;--checkbox-border:#fff3;--checkbox-checked-bg:#06c;--checkbox-checked-border:#06c;--checkbox-checkmark:#fff;--toggle-bg:#1a1a1a;--toggle-bg-active:#06c;--toggle-thumb:#fff;--tooltip-bg:#333;--tooltip-text:#fff;--tooltip-border:#ffffff1a;--shadow-sm:0 1px 2px #0003;--shadow-md:0 2px 8px #00000040;--shadow-lg:0 4px 16px #0000004d;--shadow-xl:0 8px 32px #0006;--spacing-xs:4px;--spacing-sm:8px;--spacing-md:12px;--spacing-lg:16px;--spacing-xl:24px;--radius-none:0;--radius-sm:4px;--radius-md:6px;--radius-lg:10px;--radius-xl:14px;--radius-full:9999px;--transition-fast:150ms ease;--transition-normal:200ms ease;--transition-slow:300ms ease;--z-dropdown:100;--z-modal:200;--z-tooltip:300;--z-notification:400;--font-family:"Inter",-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Oxygen,Ubuntu,sans-serif;--font-family-mono:"JetBrains Mono","Consolas","Monaco","Courier New",monospace;--font-mono:var(--font-family-mono);--font-size-xs:11px;--font-size-sm:12px;--font-size-md:13px;--font-size-lg:14px;--font-size-xl:16px}body.light-theme{--bg-darkest:#f8f8f8;--bg-primary:#fff;--bg-secondary:#f5f5f5;--bg-tertiary:#ebebeb;--bg-elevated:#fff;--bg-input:#fff;--border-subtle:#0000000d;--border-default:#00000014;--border-strong:#0000001f;--border-hover:#00000026;--border-focus:#06c;--text-primary:#1a1a1a;--text-secondary:#666;--text-muted:#999;--text-disabled:#b0b0b0;--text-inverse:#fff;--accent-primary:#06c;--accent-hover:#05a;--accent-active:#048;--accent-subtle:#0066cc1a;--accent-text:#05a;--color-success:#2e7d32;--color-success-bg:#2e7d321a;--color-warning:#ed6c02;--color-warning-bg:#ed6c021a;--color-error:#d32f2f;--color-error-bg:#d32f2f1a;--color-info:#0288d1;--color-info-bg:#0288d11a;--input-bg:#fff;--input-bg-hover:#fff;--input-border:#0000001a;--input-border-hover:#00000026;--input-border-focus:#00000040;--input-text:#1a1a1a;--input-placeholder:#999;--btn-bg:#0000000d;--btn-bg-hover:#00000014;--btn-bg-active:#0000000a;--btn-border:#0000001a;--btn-text:#1a1a1a;--btn-primary-bg:#000000d9;--btn-primary-bg-hover:#000000f2;--btn-primary-bg-active:#000000bf;--btn-primary-text:#fff;--toolbar-bg:#00000005;--toolbar-bg-solid:#f5f5f5;--toolbar-border:#00000014;--toolbar-btn-hover:#0000000d;--toolbar-btn-active:#0000001a;--foldout-bg:#ebebeb;--foldout-bg-hover:#e0e0e0;--menu-bg:#fff;--menu-border:#0000001a;--menu-item-hover:#0000000d;--menu-item-active:#0000001a;--menu-separator:#0000000f;--panel-bg:#fff;--panel-header-bg:#00000005;--panel-border:#00000014;--panel-header-text:#1a1a1a;--tree-item-hover:#0000000a;--tree-item-selected:#06c;--tree-item-selected-text:#fff;--tree-indent-guide:#0000000f;--scrollbar-track:#00000005;--scrollbar-thumb:#00000026;--scrollbar-thumb-hover:#00000040;--tab-bg:#0000;--tab-bg-active:#0000000d;--tab-border:#00000014;--tab-text:grey;--tab-text-active:#1a1a1a;--slider-track:#fff;--slider-track-hover:#fff;--slider-track-fill:#0006;--slider-thumb:#1a1a1a;--slider-thumb-hover:#1a1a1a;--select-arrow:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23666' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E");--checkbox-bg:#fff;--checkbox-border:#0003;--checkbox-checked-bg:#000000d9;--checkbox-checked-border:#000000d9;--checkbox-checkmark:#fff;--toggle-bg:#fff;--toggle-bg-active:#0000004d;--toggle-thumb:#fff;--tooltip-bg:#333;--tooltip-text:#fff;--tooltip-border:#0000001a;--shadow-sm:0 1px 2px #0000000f;--shadow-md:0 2px 8px #0000001a;--shadow-lg:0 4px 16px #0000001f;--shadow-xl:0 8px 32px #00000026}::-webkit-scrollbar{height:8px;height:var(--scrollbar-width);width:8px;width:var(--scrollbar-width)}::-webkit-scrollbar-track{background:#ffffff08;background:var(--scrollbar-track)}::-webkit-scrollbar-thumb{background:#ffffff26;background:var(--scrollbar-thumb);border-radius:6px;border-radius:var(--radius-md)}::-webkit-scrollbar-thumb:hover{background:#ffffff40;background:var(--scrollbar-thumb-hover)}::-webkit-scrollbar-corner{background:#ffffff08;background:var(--scrollbar-track)}::selection{background:#06c;background:var(--accent-primary);color:#1a1a1a;color:var(--text-inverse)}*{-webkit-user-select:none;user-select:none}input,textarea{-webkit-user-select:text;user-select:text}body{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-feature-settings:"cv02","cv03","cv04","cv11";font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;margin:0}code{font-family:JetBrains Mono,source-code-pro,Menlo,Monaco,Consolas,Courier New,monospace}::selection{background:#fff3;color:inherit}body.light-theme ::selection{background:#00000026;color:inherit}body.light-theme ::-moz-selection{background:#00000026;color:inherit}:focus-visible{outline:2px solid var(--border-focus);outline-offset:2px}html{scroll-behavior:smooth}.app-container{background-color:var(--bg-primary);color:var(--text-primary);flex-direction:column;font-family:var(--font-family);height:100vh;-webkit-user-select:none;user-select:none}.app-container,.app-content{display:flex;overflow:hidden}.app-content{flex:1 1;min-width:0;width:100%}.bottom-panels{display:contents}*{box-sizing:border-box;margin:0;padding:0}.panel{background-color:var(--panel-bg);border:1px solid var(--panel-border);border-radius:var(--radius-lg);display:flex;flex-direction:column;overflow:hidden;transition:border-color var(--transition-fast)}.panel:hover{border-color:var(--border-strong)}.panel-header{background-color:var(--panel-header-bg);border-bottom:1px solid var(--panel-border);color:var(--panel-header-text);font-size:var(--font-size-sm);font-weight:600;letter-spacing:.5px;padding:var(--spacing-sm) var(--spacing-md);text-transform:uppercase;-webkit-user-select:none;user-select:none}.hierarchy-panel{border-right:1px solid var(--panel-border);order:1}.hierarchy-panel,.properties-panel{flex:1 1;min-width:0;transition:width .2s ease;width:100%}.properties-panel{border-left:1px solid var(--panel-border);order:3}.viewport-container{background-color:var(--bg-darkest);flex:1 1;min-width:0;order:2;position:relative}.tabs-container{display:flex;flex:1 1;flex-direction:column;overflow:hidden}.tabs-header{background-color:var(--tab-bg);border-bottom:1px solid var(--panel-border);display:flex;gap:var(--spacing-xs);padding:var(--spacing-xs)}.tab-button{align-items:center;background:#0000;border:none;border-radius:var(--radius-md);color:var(--tab-text);cursor:pointer;display:flex;font-size:var(--font-size-sm);font-weight:500;gap:6px;justify-content:center;letter-spacing:0;padding:var(--spacing-xs) var(--spacing-md);position:relative;text-transform:none;transition:all var(--transition-fast)}.tab-button:hover{color:var(--text-primary)}.tab-button.active,.tab-button:hover{background-color:var(--tab-bg-active)}.tab-button.active{color:var(--tab-text-active)}.tab-button.active:after{display:none}.tab-icon{font-size:14px;opacity:.8}.tab-button.active .tab-icon{opacity:1}.tab-content{flex:1 1;overflow:hidden;position:relative}.viewport-toolbar{background:var(--panel-bg);border:1px solid var(--border-default);border-radius:var(--radius-lg);gap:4px;left:10px;padding:4px;top:10px;z-index:10}.toolbar-button{background-color:initial;padding:6px 10px}.toolbar-button:hover{background-color:var(--btn-bg-hover)}.toolbar-button.active{background-color:var(--btn-bg);border-color:var(--border-default);color:var(--text-primary)}@media (max-width:1400px){.hierarchy-panel{min-width:160px;width:18%}.properties-panel{min-width:200px;width:20%}}@media (max-width:1200px){.hierarchy-panel{min-width:160px;width:100%}.properties-panel{min-width:200px;width:100%}}@media (max-width:1000px){.hierarchy-panel{min-width:150px;width:100%}.properties-panel{min-width:190px;width:100%}.property-group>.property-label{min-width:40px}}@media (max-width:850px){.app-content{overflow-x:auto;overflow-y:hidden}.hierarchy-panel,.properties-panel{flex:1 1;width:100%}.viewport-container{min-width:300px}}@media (max-width:768px) and (orientation:portrait){.app-container{display:flex;flex-direction:column;height:100vh}.app-content{flex:1 1;flex-direction:column;height:calc(100vh - 64px);overflow:hidden}.viewport-container{flex:1 1;height:50%;min-width:0;order:1;width:100%}.bottom-panels{display:flex;flex:0 0 50vh;order:2;overflow:hidden;width:100%}.hierarchy-panel{border-left:none;border-right:1px solid var(--panel-border)}.hierarchy-panel,.properties-panel{flex:1 1;height:100%;min-width:0;order:0;width:50%}.properties-panel{border-left:1px solid var(--panel-border)}.panel-header{font-size:var(--font-size-sm);padding:6px 10px}.hierarchy-content,.properties-content{padding:var(--spacing-sm)}.property-group>.property-label{font-size:var(--font-size-sm);min-width:35px!important}.property-section{margin-bottom:var(--spacing-sm);padding-bottom:6px}.section-header{font-size:var(--font-size-md);margin-bottom:6px}.number-input,.vector-input input{font-size:var(--font-size-sm);padding:3px 6px}.draggable-number-input .input-label{font-size:var(--font-size-xs)}.app-content::-webkit-scrollbar{display:none}.hierarchy-content{background:linear-gradient(to right,var(--bg-primary) 28px,#0000 28px);padding:0}.hierarchy-row .visibility-toggle{font-size:var(--font-size-sm);width:28px}.hierarchy-row .visibility-toggle:after{display:none}.hierarchy-item{font-size:var(--font-size-sm);padding:2px 6px}.hierarchy-row{height:22px}.expand-toggle{font-size:7px;height:12px;width:12px}.expand-spacer{width:14px}.hierarchy-icon{font-size:var(--font-size-sm);margin-right:4px}}.top-bar{align-items:center;background-color:#1a1a1a;border-bottom:none;display:flex;height:40px;padding:0 20px;position:relative;z-index:var(--z-dropdown)}body.light-theme .top-bar{background-color:#d0d0d0}.top-bar-left{flex:0 0 auto;gap:20px}.top-bar-center{align-items:center;display:flex;justify-content:center;left:50%;pointer-events:none;position:absolute;transform:translateX(-50%)}.top-bar-center .connection-status{pointer-events:auto}.top-bar-right{flex:0 0 auto;justify-content:flex-end;margin-left:auto}.menu-bar{align-items:center;display:flex;gap:0}.menu-container{position:relative}.menu-button,.windows-menu-button{background-color:initial;border:1px solid #0000;border-radius:var(--radius-md);color:var(--text-secondary);cursor:pointer;font-size:var(--font-size-sm);height:100%;outline:none;padding:6px var(--spacing-md);transition:all var(--transition-fast)}.menu-button:hover,.windows-menu-button:hover{background-color:var(--btn-bg);border-color:var(--border-default);color:var(--text-primary)}.menu-button.active,.windows-menu-button.active{background-color:var(--btn-bg-hover);border-color:var(--border-default);color:var(--text-primary)}.menu-dropdown,.windows-dropdown{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background-color:var(--menu-bg);border:1px solid var(--menu-border);border-radius:var(--radius-lg);box-shadow:var(--shadow-lg);left:0;margin-top:4px;min-width:200px;padding:var(--spacing-xs);position:absolute;top:100%;z-index:10000}.menu-item,.windows-menu-item{align-items:center;border-radius:var(--radius-md);color:var(--text-primary);cursor:pointer;display:flex;font-size:var(--font-size-sm);justify-content:space-between;margin:1px 0;min-height:28px;padding:8px var(--spacing-md);position:relative;transition:all var(--transition-fast)}.menu-item:hover,.windows-menu-item:hover{background-color:var(--menu-item-hover);color:var(--text-primary)}.menu-item span:first-child{flex:1 1}.menu-shortcut{font-size:var(--font-size-sm);margin-left:20px;opacity:.7}.menu-divider{background-color:var(--menu-separator);height:1px;margin:var(--spacing-xs) var(--spacing-sm)}.menu-item-check{margin-right:var(--spacing-sm);opacity:0;transition:opacity var(--transition-normal);width:20px}.menu-item-check.visible{opacity:1}.connection-status{align-items:center;background-color:var(--toolbar-bg-solid);border:1px solid var(--border-default);border-radius:20px;color:var(--text-primary);display:flex;flex-shrink:0;font-size:13px;gap:var(--spacing-sm);padding:6px var(--spacing-lg);transition:all var(--transition-normal);-webkit-user-select:none;user-select:none}.connection-status:hover{background-color:var(--bg-tertiary);border-color:var(--border-strong)}.status-indicator{border-radius:var(--radius-full);height:8px;width:8px}.connection-status.connected .status-indicator{animation:pulse 2s infinite;background-color:var(--color-success)}.connection-status.disconnected{animation:glow-error 2s ease-in-out infinite}.connection-status.disconnected .status-indicator{animation:none;background-color:var(--color-error)}.connection-status.connecting{animation:glow-warning 1.5s ease-in-out infinite}.connection-status.connecting .status-indicator{animation:pulse-warning 1s infinite;background-color:var(--color-warning)}@keyframes pulse-warning{0%{box-shadow:0 0 0 0 #ffc107b3}70%{box-shadow:0 0 0 6px #ffc10700}to{box-shadow:0 0 0 0 #ffc10700}}@keyframes glow-error{0%,to{border-color:var(--border-default);box-shadow:0 0 0 0 #f4433600}50%{border-color:#f44336cc;box-shadow:0 0 20px #f4433699,inset 0 0 10px #f4433633}}@keyframes glow-warning{0%,to{border-color:var(--border-default);box-shadow:0 0 0 0 #ffc10700}50%{border-color:#ffc107cc;box-shadow:0 0 20px #ffc10799,inset 0 0 10px #ffc10733}}.trace-button{background-color:var(--btn-primary-bg);border:none;border-radius:var(--radius-lg);color:var(--btn-primary-text);cursor:pointer;font-size:var(--font-size-sm);font-weight:500;letter-spacing:0;padding:8px var(--spacing-xl);text-transform:none;transition:all var(--transition-fast)}.trace-button:hover{background-color:var(--btn-primary-bg-hover)}.trace-button:active{background-color:var(--btn-primary-bg-active);transform:scale(.98)}.app-title{color:var(--text-primary);font-size:20px;font-weight:600;letter-spacing:-.5px;margin:0}.icon-button{align-items:center;background-color:var(--btn-bg);border:1px solid var(--btn-border);border-radius:var(--radius-md);color:var(--text-secondary);cursor:pointer;display:flex;height:32px;justify-content:center;transition:all var(--transition-fast);width:32px}.icon-button:hover{background-color:var(--btn-bg-hover);border-color:var(--border-hover);color:var(--text-primary)}.icon-button:active{background-color:var(--btn-bg-active);transform:scale(.95)}@media (max-width:1200px){.connection-status{font-size:12px;padding:4px var(--spacing-md)}}@media (max-width:1000px){.top-bar{justify-content:center;position:relative}.top-bar-left{gap:10px;left:20px;position:absolute}.top-bar-right{position:absolute;right:20px}.menu-bar{gap:0}.menu-button,.windows-menu-button{font-size:12px;padding:4px var(--spacing-sm)}}.top-bar-main{align-items:center;display:flex;justify-content:space-between;width:100%}@media (max-width:768px) and (orientation:portrait){.top-bar{flex-direction:column;height:auto;justify-content:flex-start;padding:0}.top-bar-center{background-color:var(--bg-secondary);border-bottom:1px solid var(--border-subtle);display:flex!important;justify-content:center;left:auto;order:-1;padding:var(--spacing-sm);pointer-events:auto;position:relative;transform:none;width:100%}.connection-status{background-color:var(--bg-primary);border:1px solid var(--border-default);border-radius:20px;font-size:var(--font-size-sm);padding:6px var(--spacing-lg);width:auto}.top-bar-main{padding:var(--spacing-xs) var(--spacing-sm);width:100%}.top-bar-left{flex:1 1;left:auto}.top-bar-left,.top-bar-right{gap:var(--spacing-xs);position:relative}.top-bar-right{flex:0 0 auto;margin-left:0;right:auto}.app-title{font-size:16px}.menu-button,.windows-menu-button{font-size:12px;padding:4px var(--spacing-sm)}.icon-button{height:28px;width:28px}.icon-button svg{height:14px;width:14px}@media (max-width:380px){.menu-bar,.name-toggle{display:none}}}.viewport-container{display:flex;flex-direction:column;height:100%;margin:0!important;overflow:hidden;padding:0!important}.viewport-container>div:not(.viewport-toolbar){flex:1 1;margin:32px 0 0!important;padding:0!important}.viewport-container canvas{display:block;outline:none}.viewport-toolbar{align-items:center;background:var(--toolbar-bg-solid);border:none;border-radius:0;box-sizing:border-box;display:flex;gap:2px;height:32px;left:0;margin:0;padding:0 var(--spacing-sm);position:absolute;right:0;top:0;width:100%;z-index:var(--z-dropdown)}.toolbar-button{align-items:center;background:#0000;border:1px solid #0000;border-radius:var(--radius-md);color:var(--text-secondary);cursor:pointer;display:flex;font-size:var(--font-size-sm);height:24px;justify-content:center;padding:var(--spacing-xs) var(--spacing-md);transition:all var(--transition-fast)}.toolbar-button:hover{background:var(--btn-bg);border-color:var(--border-default);color:var(--text-primary)}.toolbar-button:active{transform:scale(.95)}.toolbar-button.active{background:var(--accent-primary);border-color:var(--accent-primary);color:#fff}.toolbar-separator{background:var(--border-default);height:18px;margin:0 var(--spacing-sm)}.toolbar-spacer{flex:1 1}.viewport-loading{align-items:center;background:var(--bg-primary);display:flex;flex-direction:column;height:100vh;justify-content:center;left:0;position:fixed;top:0;width:100vw;z-index:10000}.loading-spinner{animation:spin 1s linear infinite;border:3px solid var(--border-default);border-radius:50%;border-top-color:var(--accent-primary);height:48px;width:48px}.loading-text{color:var(--text-secondary);font-size:var(--font-size-base);margin-top:var(--spacing-lg)}.react-flow{direction:ltr}.react-flow__container{height:100%;left:0;position:absolute;top:0;width:100%}.react-flow__pane{cursor:grab;z-index:1}.react-flow__pane.selection{cursor:pointer}.react-flow__pane.dragging{cursor:grabbing}.react-flow__viewport{pointer-events:none;transform-origin:0 0;z-index:2}.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 .react-flow__edges{overflow:visible;pointer-events:none}.react-flow__connection-path,.react-flow__edge-path{stroke:#b1b1b7;stroke-width:1;fill:none}.react-flow__edge{cursor:pointer;pointer-events:visibleStroke}.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:focus .react-flow__edge-path,.react-flow__edge:focus-visible .react-flow__edge-path{stroke:#555}.react-flow__edge-textwrapper{pointer-events:all}.react-flow__edge-textbg{fill:#fff}.react-flow__edge .react-flow__edge-text{pointer-events:none;-webkit-user-select:none;user-select:none}.react-flow__connection{pointer-events:none}.react-flow__connection .animated{stroke-dasharray:5;animation:dashdraw .5s linear infinite}.react-flow__connectionline{z-index:1001}.react-flow__nodes{pointer-events:none;transform-origin:0 0}.react-flow__node{box-sizing:border-box;cursor:grab;pointer-events:all;position:absolute;transform-origin:0 0;-webkit-user-select:none;user-select:none}.react-flow__node.dragging{cursor:grabbing}.react-flow__nodesselection{pointer-events:none;transform-origin:left top;z-index:3}.react-flow__nodesselection-rect{cursor:grab;pointer-events:all;position:absolute}.react-flow__handle{background:#1a192b;border:1px solid #fff;border-radius:100%;height:6px;min-height:5px;min-width:5px;pointer-events:none;position:absolute;width:6px}.react-flow__handle.connectionindicator{cursor:crosshair;pointer-events:all}.react-flow__handle-bottom{bottom:-4px;left:50%;top:auto;transform:translate(-50%)}.react-flow__handle-top{left:50%;top:-4px;transform:translate(-50%)}.react-flow__handle-left{left:-4px;top:50%;transform:translateY(-50%)}.react-flow__handle-right{right:-4px;top:50%;transform:translateY(-50%)}.react-flow__edgeupdater{cursor:move;pointer-events:all}.react-flow__panel{margin:15px;position:absolute;z-index:5}.react-flow__panel.top{top:0}.react-flow__panel.bottom{bottom:0}.react-flow__panel.left{left:0}.react-flow__panel.right{right:0}.react-flow__panel.center{left:50%;transform:translateX(-50%)}.react-flow__attribution{background:#ffffff80;font-size:10px;margin:0;padding:2px 3px}.react-flow__attribution a{color:#999;text-decoration:none}.react-flow__edgelabel-renderer{height:100%;pointer-events:none;position:absolute;-webkit-user-select:none;user-select:none;width:100%}.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-default,.react-flow__node-group,.react-flow__node-input,.react-flow__node-output{background-color:#fff;border:1px solid #1a192b;border-radius:3px;color:#222;font-size:12px;padding:10px;text-align:center;width:150px}.react-flow__node-default.selectable:hover,.react-flow__node-group.selectable:hover,.react-flow__node-input.selectable:hover,.react-flow__node-output.selectable:hover{box-shadow:0 1px 4px 1px #00000014}.react-flow__node-default.selectable.selected,.react-flow__node-default.selectable:focus,.react-flow__node-default.selectable:focus-visible,.react-flow__node-group.selectable.selected,.react-flow__node-group.selectable:focus,.react-flow__node-group.selectable:focus-visible,.react-flow__node-input.selectable.selected,.react-flow__node-input.selectable:focus,.react-flow__node-input.selectable:focus-visible,.react-flow__node-output.selectable.selected,.react-flow__node-output.selectable:focus,.react-flow__node-output.selectable:focus-visible{box-shadow:0 0 0 .5px #1a192b}.react-flow__node-group{background-color:#f0f0f040}.react-flow__nodesselection-rect,.react-flow__selection{background:#0059dc14;border:1px dotted #0059dccc}.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{box-shadow:0 0 2px 1px #00000014}.react-flow__controls-button{background:#fefefe;border-bottom:1px solid #eee;box-sizing:initial;height:16px;padding:5px;-webkit-user-select:none;user-select:none;width:16px}.react-flow__controls-button:hover{background:#f4f4f4}.react-flow__controls-button svg{max-height:12px;max-width:12px;width:100%}.react-flow__controls-button:disabled{pointer-events:none}.react-flow__controls-button:disabled svg{fill-opacity:.4}.react-flow__minimap{background-color:#fff}.react-flow__minimap svg{display:block}.react-flow__resize-control{position:absolute}.react-flow__resize-control.left,.react-flow__resize-control.right{cursor:ew-resize}.react-flow__resize-control.bottom,.react-flow__resize-control.top{cursor:ns-resize}.react-flow__resize-control.bottom.right,.react-flow__resize-control.top.left{cursor:nwse-resize}.react-flow__resize-control.bottom.left,.react-flow__resize-control.top.right{cursor:nesw-resize}.react-flow__resize-control.handle{background-color:#3367d9;border:1px solid #fff;border-radius:1px;height:4px;transform:translate(-50%,-50%);width:4px}.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.bottom.left,.react-flow__resize-control.handle.top.left{left:0}.react-flow__resize-control.handle.bottom.right,.react-flow__resize-control.handle.top.right{left:100%}.react-flow__resize-control.line{border:0 solid #3367d9}.react-flow__resize-control.line.left,.react-flow__resize-control.line.right{height:100%;top:0;transform:translate(-50%);width:1px}.react-flow__resize-control.line.left{border-left-width:1px;left:0}.react-flow__resize-control.line.right{border-right-width:1px;left:100%}.react-flow__resize-control.line.bottom,.react-flow__resize-control.line.top{height:1px;left:0;transform:translateY(-50%);width:100%}.react-flow__resize-control.line.top{border-top-width:1px;top:0}.react-flow__resize-control.line.bottom{border-bottom-width:1px;top:100%}.code-panel-container{isolation:isolate;z-index:10}.code-panel-container,.code-panel-container *{user-select:text!important;-webkit-user-select:text!important;-moz-user-select:text!important;-ms-user-select:text!important}.code-panel-content{flex:1 1;height:calc(100% - 52px);min-height:0;overflow-x:auto!important;overflow-y:auto!important;position:relative}.code-panel-content::-webkit-scrollbar{height:10px;width:10px}.code-panel-content::-webkit-scrollbar-track{background:#0000001a}.code-panel-content::-webkit-scrollbar-thumb{background:#0000004d;border-radius:5px}.code-panel-content::-webkit-scrollbar-thumb:hover{background:#00000080}.code-panel-content.dark::-webkit-scrollbar-track{background:#ffffff1a}.code-panel-content.dark::-webkit-scrollbar-thumb{background:#ffffff4d}.code-panel-content.dark::-webkit-scrollbar-thumb:hover{background:#ffffff80}.code-highlight pre{cursor:text!important;pointer-events:auto!important;user-select:text!important;-webkit-user-select:text!important;-moz-user-select:text!important;-ms-user-select:text!important}.code-highlight pre ::selection,.code-highlight pre::selection{background-color:#3399ff4d}.code-highlight pre ::-moz-selection,.code-highlight pre::-moz-selection{background-color:#3399ff4d}.spin{animation:spin 1s linear infinite}.object-node{background:var(--bg-tertiary);border:1px solid var(--border-strong);border-radius:var(--radius-lg);box-shadow:var(--shadow-md);font-family:var(--font-family);min-width:320px;transition:all var(--transition-normal)}.object-node.selected{border-color:var(--accent-text);box-shadow:0 0 0 2px var(--accent-subtle)}.object-node-header{background:linear-gradient(180deg,#1d4e8940,#1d4e891f);border-bottom:1px solid #1d4e894d;border-radius:var(--radius-lg) var(--radius-lg) 0 0;padding:10px var(--spacing-md)}.object-node-title{color:var(--text-primary);font-size:var(--font-size-lg);font-weight:600;margin-bottom:2px}.object-node-type{color:var(--text-muted);font-size:var(--font-size-sm);opacity:.8}.object-node-components{padding:var(--spacing-xs) 0}.component-section{border-top:1px solid #8080801a}.component-section:first-child{border-top:none}.component-header{align-items:center;cursor:pointer;display:flex;padding:6px var(--spacing-md);transition:background-color var(--transition-normal);-webkit-user-select:none;user-select:none}.component-header:hover{background-color:#8080800d}.component-toggle{color:var(--text-muted);font-size:var(--font-size-xs);margin-right:var(--spacing-sm);transition:transform var(--transition-normal)}.component-toggle.expanded{transform:rotate(90deg)}.component-name{color:var(--text-primary);font-size:var(--font-size-sm);font-weight:500}.component-fields{background:#00000026;padding:var(--spacing-xs) 0}.field-row{padding:6px var(--spacing-md) 6px 32px}.field-content{gap:var(--spacing-sm)}.field-handle{border:2px solid var(--bg-tertiary);transition:transform var(--transition-normal)}.field-label{color:var(--text-muted)}.field-label,.field-value{font-size:var(--font-size-sm)}.field-value{color:var(--text-primary)}.mode-btn{border-radius:var(--radius-lg);color:var(--text-muted);transition:all var(--transition-fast)}.mode-btn:hover:not(.active){color:var(--text-secondary)}.mode-btn.active{background:var(--accent-subtle);color:var(--accent-text)}.vector-value{font-size:var(--font-size-xs);padding:2px var(--spacing-xs)}.float-value,.vector-value{font-family:var(--font-family-mono)}.color-value,.float-value,.vector-value{border-radius:var(--radius-xs)}.boolean-value{color:var(--text-primary)}.string-value{border-radius:var(--radius-xs)}body.light-theme .object-node-header{background:linear-gradient(180deg,#1d4e8926,#1d4e8914);border-bottom:1px solid #1d4e8933}.object-group-node{background:#2d2d2d;border:1px solid #404040;border-radius:8px;box-shadow:0 2px 4px #0000001a;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;min-width:320px;transition:all .2s ease}.object-group-node.selected{border-color:#4a9eff;box-shadow:0 0 0 2px #4a9eff4d}.object-group-header{align-items:center;background:linear-gradient(180deg,#1d4e8940,#1d4e891f);border-bottom:1px solid #1d4e894d;border-radius:8px 8px 0 0;display:flex;justify-content:space-between;padding:10px 12px}.object-group-title{color:#e0e0e0;font-size:14px;font-weight:600}.object-count{background:#1d4e8940;border-radius:10px;color:#ccc;font-size:11px;padding:2px 8px;transition:all .2s ease}.filter-section{background:#0000004d;border-bottom:1px solid #8080801a;padding:10px 12px}.filter-row{align-items:center;display:flex;gap:8px;margin-bottom:8px}.filter-label{color:#999;font-size:11px;min-width:60px}.toggle-group{background:#1a1a1a;border:1px solid #404040;border-radius:16px;display:flex;gap:2px;padding:2px}.toggle-btn{background:#0000;border:none;border-radius:14px;color:#999;cursor:pointer;font-size:11px;outline:none;padding:4px 12px;transition:all .2s ease}.toggle-btn:hover:not(.active){background:#ffffff0d;color:#ccc}.toggle-btn.active{background:#1d4e894d;color:#e0e0e0;font-weight:500}.filter-select{background:#1a1a1a;border:1px solid #404040;border-radius:4px;color:#e0e0e0;cursor:pointer;flex:1 1;font-size:11px;outline:none;padding:5px 8px;transition:all .2s ease}.filter-select:hover{background:#1d4e890d;border-color:#1d4e8999}.filter-select:focus{border-color:#1d4e89cc;box-shadow:0 0 0 2px #1d4e8933}.filter-value-row{margin-top:6px}.filter-value{align-items:center;background:#1a1a1a;border:1px solid #404040;border-radius:4px;color:#e0e0e0;cursor:text;display:flex;font-size:11px;min-height:26px;padding:6px 8px;transition:all .2s ease}.filter-value:hover{background:#1d4e890d;border-color:#1d4e8999}.filter-value .placeholder{color:#666;font-style:italic}.filter-input{background:#1a1a1a;border:1px solid #1d4e89cc;border-radius:4px;box-shadow:0 0 0 2px #1d4e8933;color:#e0e0e0;font-size:11px;outline:none;padding:6px 8px;width:100%}.components-section{padding:8px 12px}.components-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:8px}.components-label{color:#e0e0e0;font-size:12px;font-weight:500}.add-component-btn{align-items:center;background:#1a1a1a;border:1px solid #404040;border-radius:4px;color:#999;cursor:pointer;display:flex;font-size:14px;height:20px;justify-content:center;line-height:1;padding:0;transition:all .2s ease;width:20px}.add-component-btn:hover{background:#1d4e8933;border-color:#1d4e8980;color:#e0e0e0;transform:scale(1.1)}.component-menu{animation:slideDown .2s ease;background:#2d2d2d;border:1px solid #404040;border-radius:4px;box-shadow:0 4px 12px #00000080;min-width:120px;overflow:hidden}@keyframes slideDown{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}.component-menu-item{color:#e0e0e0;cursor:pointer;font-size:11px;padding:8px 12px;transition:all .15s ease}.component-menu-item:hover{background:#1d4e8933;padding-left:16px}.component-menu-empty{color:#666;font-size:11px;font-style:italic;padding:8px 12px}.add-component-section{border-top:1px solid #8080801a;padding:8px 12px}.add-component-full-button{align-items:center;background:#3c3c3c99;border:1px solid #64646466;border-radius:4px;color:#e0e0e0;cursor:pointer;display:flex;font-size:12px;font-weight:500;gap:6px;justify-content:center;padding:8px;transition:all .2s ease;width:100%}.add-component-full-button:hover{background:#1d4e8940;border-color:#1d4e8980;transform:translateY(-1px)}.component-dropdown-menu{animation:slideDown .2s ease;background:#2d2d2d;border:1px solid #404040;border-radius:4px;box-shadow:0 4px 12px #00000080;display:flex;flex-direction:column;left:12px;max-height:300px;position:absolute;right:12px;top:calc(100% + 4px);z-index:1000}.component-search-input{background:#1a1a1a;border:none;border-bottom:1px solid #404040;color:#e0e0e0;font-size:12px;outline:none;padding:8px 10px}.component-search-input:focus{background:#222}.component-list{max-height:250px}.component-list::-webkit-scrollbar{width:6px}.component-list::-webkit-scrollbar-track{background:#0000}.component-list::-webkit-scrollbar-thumb{background:#404040;border-radius:3px}.component-list::-webkit-scrollbar-thumb:hover{background:#555}.component-group{border-top:1px solid #8080801a;margin-bottom:4px}.component-group:first-child{border-top:none}.component-group-header{align-items:center;background:#0003;cursor:default;display:flex;justify-content:space-between;padding:6px 12px;-webkit-user-select:none;user-select:none}.component-group-name{color:#e0e0e0;flex:1 1;font-size:12px;font-weight:500}.remove-component-btn{align-items:center;background:#0000;border:none;border-radius:3px;color:#666;cursor:pointer;display:flex;flex-shrink:0;font-size:16px;height:18px;justify-content:center;line-height:1;margin-left:auto;padding:0;transition:all .2s ease;width:18px}.remove-component-btn:hover{background:#e11d4833;color:#ff4d6d;transform:scale(1.1)}.component-fields{background:#0000004d;padding:4px 0}.field-row{align-items:center;display:flex;min-height:28px;padding:6px 12px 6px 32px;position:relative}.port-handle{border:2px solid #2d2d2d;box-shadow:0 0 0 1px #0000001a;cursor:crosshair;height:12px!important;transition:transform .2s ease;width:12px!important}.port-handle:hover{transform:translateY(-50%) scale(1.2)}.field-handle{border:2px solid #2d2d2d;box-shadow:0 0 0 1px #0000001a;cursor:crosshair;height:12px!important;transition:transform .2s ease;width:12px!important}.field-handle:hover{transform:translateY(-50%) scale(1.2)}.collapsed-handle{height:10px!important;opacity:.9;width:10px!important}.collapsed-handle:hover{opacity:1;transform:translateY(-50%) scale(1.3)}.field-content{align-items:center;display:flex;gap:8px;width:100%}.field-label{color:#999;font-size:11px;min-width:80px}.field-value{align-items:center;color:#e0e0e0;display:flex;flex:1 1;font-size:11px;justify-content:flex-end}.vector-value{background:#8080801a;font-size:10px;padding:2px 4px}.float-value,.vector-value{border-radius:3px;font-family:Consolas,Monaco,monospace}.float-value{background:#84d6841a;padding:2px 6px}.color-value{border:1px solid #8080804d;border-radius:3px;height:16px;width:40px}.boolean-value{color:#e0e0e0;font-weight:600}.string-value{background:#60a5fa1a;border-radius:3px;max-width:100px;overflow:hidden;padding:2px 6px;text-overflow:ellipsis;white-space:nowrap}.field-mode-toggle{background:#0000004d;border:1px solid #ffffff1a;border-radius:10px;display:flex;gap:1px;margin-left:auto;padding:1px}.mode-btn{background:#0000;border:none;border-radius:8px;color:#666;cursor:pointer;font-size:9px;font-weight:500;letter-spacing:.5px;outline:none;padding:2px 6px;text-transform:uppercase;transition:all .15s ease}.mode-btn:hover:not(.active){background:#ffffff0d;color:#999}.mode-btn.active{background:#4a9eff33;color:#4a9eff}body.light-theme .object-group-node{background:#f5f5f5;border-color:#d0d0d0}body.light-theme .object-group-node.selected{border-color:#4a9eff;box-shadow:0 0 0 2px #4a9eff4d}body.light-theme .object-group-header{background:linear-gradient(180deg,#1d4e8926,#1d4e8914);border-bottom:1px solid #1d4e8933}body.light-theme .object-group-title{color:#333}body.light-theme .object-count{background:#1d4e8926;color:#666}body.light-theme .filter-section{background:#00000005}body.light-theme .filter-label{color:#666}body.light-theme .toggle-group{background:#fafafa;border-color:#d0d0d0}body.light-theme .toggle-btn{color:#666}body.light-theme .toggle-btn:hover:not(.active){background:#00000008;color:#333}body.light-theme .toggle-btn.active{background:#1d4e8933;color:#333}body.light-theme .filter-input,body.light-theme .filter-select,body.light-theme .filter-value{background:#fafafa;border-color:#d0d0d0;color:#333}body.light-theme .filter-select:hover,body.light-theme .filter-value:hover{background:#1d4e8905;border-color:#1d4e8966}body.light-theme .filter-input,body.light-theme .filter-select:focus{border-color:#1d4e8999;box-shadow:0 0 0 2px #1d4e891a}body.light-theme .filter-value .placeholder{color:#999}body.light-theme .components-label{color:#333}body.light-theme .add-component-btn{background:#fafafa;border-color:#d0d0d0;color:#666}body.light-theme .add-component-btn:hover{background:#1d4e891a;border-color:#1d4e8966;color:#1d4e89}body.light-theme .component-menu{background:#fafafa;border-color:#d0d0d0;box-shadow:0 4px 12px #00000026}body.light-theme .component-menu-item{color:#333}body.light-theme .component-menu-item:hover{background:#1d4e891a}body.light-theme .component-menu-empty{color:#999}body.light-theme .add-component-full-button{background:#96969633;border-color:#7878784d;color:#333}body.light-theme .add-component-full-button:hover{background:#1d4e8926;border-color:#1d4e8966}body.light-theme .component-dropdown-menu{background:#fafafa;border-color:#d0d0d0;box-shadow:0 4px 12px #00000026}body.light-theme .component-search-input{background:#fff;border-bottom-color:#e0e0e0;color:#333}body.light-theme .component-search-input:focus{background:#f5f5f5}body.light-theme .component-list::-webkit-scrollbar-thumb{background:#ccc}body.light-theme .component-list::-webkit-scrollbar-thumb:hover{background:#aaa}body.light-theme .component-group-header{background:#00000005}body.light-theme .component-group-name{color:#333}body.light-theme .component-fields{background:#00000005}body.light-theme .field-label{color:#666}body.light-theme .boolean-value,body.light-theme .field-value{color:#333}body.light-theme .field-handle{border-color:#f5f5f5}body.light-theme .field-mode-toggle{background:#0000000d;border-color:#0000001a}body.light-theme .mode-btn{color:#999}body.light-theme .mode-btn:hover:not(.active){background:#00000008;color:#666}body.light-theme .mode-btn.active{background:#4a9eff26;color:#4a9eff}body.light-theme .port-handle{border-color:#f5f5f5}body.light-theme .remove-component-btn{color:#999}body.light-theme .remove-component-btn:hover{background:#e11d481a;color:#e11d48}.react-flow__node{background:#0000!important;border:none!important;overflow:visible!important}.react-flow__node,.react-flow__node.selected{box-shadow:none!important}.react-flow__node.selected .shader-node{border-color:var(--accent-text)!important;box-shadow:0 0 0 1px var(--accent-text)!important}.shader-node{overflow:visible!important}.react-flow__controls{background:var(--bg-secondary)!important;border:1px solid var(--border-default)!important;border-radius:var(--radius-lg)!important;box-shadow:var(--shadow-lg);display:flex!important;flex-direction:row!important;gap:2px;padding:var(--spacing-xs)!important}.react-flow__controls-button{align-items:center;background:#0000;border:none;border-radius:var(--radius-md);cursor:pointer;display:flex;height:24px!important;justify-content:center;margin:0!important;padding:0!important;transition:all var(--transition-fast);width:24px!important}.react-flow__controls-button:hover{background:var(--bg-tertiary)}.react-flow__controls-button:active{transform:scale(.9)}.react-flow__controls-button svg{fill:var(--text-muted);stroke:var(--text-muted);height:14px!important;width:14px!important}.react-flow__controls-button:hover svg{fill:var(--text-primary);stroke:var(--text-primary)}.react-flow__handle{border:1px solid var(--border-subtle);height:12px!important;width:12px!important}.react-flow__handle.react-flow__handle-left{background:var(--bg-tertiary)}.react-flow__handle.react-flow__handle-right{background:var(--bg-secondary)}.react-flow__handle-connecting{background:var(--accent-text)}.react-flow__pane{cursor:default!important}.react-flow__pane.dragging{cursor:grab!important}.react-flow__pane.dragging:active{cursor:grabbing!important}.react-flow__edge,.react-flow__handle,.react-flow__pane.connecting{cursor:default!important}.react-flow__node{cursor:move!important}.react-flow__connection-path{cursor:default!important}.react-flow__edge-path{stroke:var(--border-strong);stroke-width:2}.react-flow__edge.animated path{stroke-dasharray:5;animation:dashdraw .5s linear infinite}@keyframes dashdraw{to{stroke-dashoffset:-10}}.react-flow__selection{background:var(--accent-subtle);border:1px solid var(--accent-text)}.react-flow__nodesselection{background:#0000!important;border:none!important;display:none!important}.react-flow__attribution{display:none}.react-flow__node[data-nodetype=group]{z-index:-1!important}.parameter-drag-preview{align-items:center;background:var(--bg-secondary);border:1px solid var(--border-strong);border-radius:var(--radius-lg);box-shadow:var(--shadow-lg);color:var(--text-primary);display:flex;font-size:var(--font-size-sm);gap:var(--spacing-sm);padding:6px var(--spacing-md);pointer-events:none!important;position:fixed!important;transition:none!important;z-index:999999!important}@keyframes dashFlowBack{0%{stroke-dashoffset:0}to{stroke-dashoffset:20px}}@keyframes edgeGlow{0%{filter:blur(3px);opacity:.2}50%{filter:blur(5px);opacity:.4}to{filter:blur(3px);opacity:.2}}.react-flow__edge-path:hover{cursor:pointer}.hierarchy-content-wrapper{display:flex;flex:1 1;flex-direction:column;height:100%;min-width:120px;overflow:hidden;width:100%}.hierarchy-toolbar{align-items:center;background-color:var(--toolbar-bg-solid);border-bottom:1px solid var(--border-default);display:flex;gap:var(--spacing-xs);height:32px;overflow:visible;padding:var(--spacing-xs) 6px;position:relative;z-index:10}.hierarchy-search{background-color:var(--input-bg);border:1px solid var(--input-border);border-radius:var(--radius-full);color:var(--input-text);flex:1 1;font-size:var(--font-size-sm);height:26px;min-width:60px;outline:none;padding:var(--spacing-xs) var(--spacing-md);transition:all var(--transition-fast)}.hierarchy-search:hover{background-color:var(--input-bg-hover);border-color:var(--input-border-hover)}.hierarchy-search:focus{background-color:var(--input-bg-hover);border-color:var(--input-border-focus)}.hierarchy-search::placeholder{color:var(--input-placeholder)}.hierarchy-content{background:linear-gradient(to right,var(--bg-secondary) 32px,#0000 32px);flex:1 1;min-width:0;overflow-x:hidden;overflow-y:auto;position:relative;width:100%}.hierarchy-panel.dragging *{-webkit-user-select:none!important;user-select:none!important}.hierarchy-row{align-items:stretch;display:flex;height:24px;min-width:0;position:relative;width:100%}.hierarchy-row .visibility-toggle{align-items:center;background-color:initial;border:none;display:flex;flex-shrink:0;justify-content:center;margin:0;padding:0;position:relative;width:32px}.hierarchy-row .visibility-toggle:after{background-color:var(--border-default);bottom:0;content:"";position:absolute;right:0;top:0;width:1px}.hierarchy-item{align-items:center;cursor:grab;display:flex;flex:1 1;font-size:var(--font-size-md);min-width:0;overflow:hidden;padding:3px var(--spacing-sm);position:relative;text-overflow:ellipsis;transition:background-color var(--transition-normal);user-select:none;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;white-space:nowrap}.hierarchy-item:active{cursor:grabbing}.hierarchy-item.dragging{opacity:.5}.hierarchy-children{margin-left:0}.expand-toggle{align-items:center;background:none;border:none;color:var(--text-muted);cursor:pointer;display:flex;flex-shrink:0;font-size:8px;height:14px;justify-content:center;margin-right:2px;padding:0;transition:transform var(--transition-normal);width:14px}.expand-toggle.expanded{transform:rotate(90deg)}.expand-spacer{display:inline-block;flex-shrink:0;width:16px}.hierarchy-empty{color:var(--text-muted);font-style:italic;padding:20px;text-align:center}.hierarchy-row:hover .hierarchy-item,.hierarchy-row:hover .visibility-toggle{background-color:var(--tree-item-hover)}.hierarchy-row:has(.hierarchy-item.selected) .visibility-toggle{background-color:var(--tree-item-selected)}.hierarchy-row .hierarchy-item.selected{background-color:var(--tree-item-selected);color:var(--tree-item-selected-text)}.hierarchy-icon{flex-shrink:0;font-size:var(--font-size-md);margin-right:6px;opacity:.8}.hierarchy-name{flex:1 1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.visibility-toggle{align-items:center;color:var(--text-primary);cursor:pointer;display:flex;font-size:var(--font-size-md);justify-content:center;opacity:.8;transition:all var(--transition-normal)}.visibility-toggle svg{height:14px;width:14px}.visibility-toggle:hover{background-color:var(--bg-secondary);opacity:1}.visibility-toggle.hidden{opacity:.4}.panel-header{align-items:center;display:flex;justify-content:space-between}.hierarchy-actions{display:flex;flex-shrink:0;gap:2px;margin-left:auto;position:relative;z-index:10}.hierarchy-action-btn{align-items:center;background-color:var(--btn-bg);border:1px solid var(--btn-border);border-radius:var(--radius-md);color:var(--btn-text);cursor:pointer;display:flex;flex-shrink:0;font-size:var(--font-size-md);height:24px;justify-content:center;padding:0;transition:all var(--transition-fast);width:24px}.hierarchy-action-btn:hover:not(:disabled){background-color:var(--btn-bg-hover);border-color:var(--border-hover)}.hierarchy-action-btn:active:not(:disabled){background-color:var(--btn-bg-active);transform:scale(.95)}.hierarchy-action-btn:disabled{cursor:not-allowed;opacity:.4}.add-button-container{position:relative;z-index:10}.add-menu-dropdown{background-color:var(--menu-bg);border:1px solid var(--menu-border);border-radius:var(--radius-md);box-shadow:var(--shadow-lg);margin-top:2px;min-width:140px;padding:var(--spacing-xs) 0;position:absolute;right:0;top:100%;z-index:10001}.add-menu-item{align-items:center;background:none;border:none;color:var(--text-primary);cursor:pointer;display:flex;font-size:13px;gap:var(--spacing-sm);padding:var(--spacing-sm) var(--spacing-lg);text-align:left;transition:background-color var(--transition-normal);width:100%}.add-menu-item:hover{background-color:var(--menu-item-hover)}.add-menu-item .menu-icon{text-align:center;width:16px}.add-menu-separator{background-color:var(--menu-separator);height:1px;margin:var(--spacing-xs) 0}.hierarchy-row .hierarchy-item.drag-over{background-color:var(--accent-subtle);border:2px solid var(--accent-primary);border-radius:var(--radius-md)}.hierarchy-content.drag-over{background-color:var(--accent-subtle);border:2px dashed var(--accent-primary);border-radius:var(--radius-md)}.hierarchy-drag-preview{align-items:center!important;background-color:var(--accent-primary)!important;border:2px solid #ffffff4d!important;border-radius:var(--radius-lg)!important;box-shadow:var(--shadow-xl)!important;color:var(--btn-primary-text)!important;display:inline-flex!important;font-family:inherit!important;font-size:var(--font-size-lg)!important;gap:var(--spacing-sm)!important;padding:var(--spacing-sm) var(--spacing-lg)!important;white-space:nowrap!important}@keyframes dragPreviewFadeIn{0%{opacity:0;transform:scale(.8)}to{opacity:1;transform:scale(1)}}.hierarchy-drag-preview .hierarchy-icon{font-size:var(--font-size-lg)}.library-panel{background:var(--bg-primary);color:var(--text-primary);display:flex;flex-direction:column;font-family:var(--font-family);height:100%}.library-toolbar{align-items:center;background-color:var(--toolbar-bg-solid);border-bottom:1px solid var(--border-default);display:flex;gap:var(--spacing-xs);height:32px;padding:var(--spacing-xs) 6px}.library-search{background-color:var(--input-bg);border:1px solid var(--input-border);border-radius:var(--radius-lg);box-sizing:border-box;color:var(--input-text);flex:1 1;font-size:var(--font-size-md);height:24px;min-width:60px;outline:none;padding:var(--spacing-xs) var(--spacing-md);transition:all var(--transition-fast)}.library-search:hover{background-color:var(--input-bg-hover);border-color:var(--input-border-hover)}.library-search:focus{background-color:var(--input-bg-hover);border-color:var(--input-border-focus)}.library-search::placeholder{color:var(--input-placeholder)}.library-main{display:flex;flex:1 1;overflow:hidden}.library-tabs{background:var(--bg-secondary);border-right:1px solid var(--border-default);display:flex;flex-direction:column;gap:2px;min-width:40px;padding:0 0 var(--spacing-xs) 0;width:40px}.library-tab{align-items:center;background:#0000;border:none;border-left:2px solid #0000;border-radius:0 var(--radius-sm) var(--radius-sm) 0;color:var(--text-muted);cursor:pointer;display:flex;height:36px;justify-content:center;margin:1px 0;transition:all var(--transition-fast);width:100%}.library-tab:hover{background:var(--bg-tertiary);color:var(--text-primary)}.library-tab.active{background:var(--bg-tertiary);border-left-color:var(--accent-primary);color:var(--accent-primary)}.tab-icon{font-size:16px}.library-content{display:flex;flex:1 1;flex-direction:column;overflow:hidden}.library-header{background:var(--bg-secondary);border-bottom:1px solid var(--border-subtle);color:var(--text-secondary);font-size:var(--font-size-sm);font-weight:600;letter-spacing:.5px;padding:var(--spacing-sm) var(--spacing-md);text-transform:uppercase}.library-items{grid-gap:var(--spacing-xs);align-content:start;display:grid;flex:1 1;gap:var(--spacing-xs);grid-template-columns:repeat(auto-fit,minmax(100px,1fr));overflow-y:auto;padding:var(--spacing-sm)}.library-item{align-items:center;background:var(--bg-secondary);border:1px solid var(--border-subtle);border-radius:var(--radius-md);cursor:pointer;display:flex;gap:var(--spacing-sm);padding:var(--spacing-sm) var(--spacing-sm);transition:all var(--transition-fast);-webkit-user-select:none;user-select:none}.library-item:hover{background:var(--bg-tertiary);border-color:var(--border-default);transform:translateY(-1px)}.library-item:active{background:var(--accent-subtle);border-color:var(--accent-primary);transform:translateY(0)}.item-icon{flex-shrink:0;font-size:14px;text-align:center;width:20px}.item-name{color:var(--text-primary);flex:1 1;font-size:var(--font-size-sm);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.item-drag-handle{align-items:center;color:var(--text-muted);cursor:grab;display:flex;height:100%;justify-content:center;opacity:.5;transition:opacity var(--transition-fast);width:16px}.library-item:hover .item-drag-handle{opacity:1}.drag-dots{font-size:10px;letter-spacing:-2px;line-height:1}.library-item[draggable=true]:active{cursor:grabbing}.library-items::-webkit-scrollbar{width:6px}.library-items::-webkit-scrollbar-track{background:#0000}.library-items::-webkit-scrollbar-thumb{background:var(--border-default);border-radius:3px}.library-items::-webkit-scrollbar-thumb:hover{background:var(--border-strong)}.draggable-number-input{align-items:center;display:flex;gap:4px}.input-label{color:var(--text-secondary);font-size:var(--font-size-sm);font-weight:500;min-width:12px;-webkit-user-select:none;user-select:none}.input-container{align-items:center;background:var(--input-bg);border:1px solid var(--input-border);border-radius:var(--radius-sm);display:flex;flex:1 1;min-width:60px;overflow:hidden;position:relative;transition:all var(--transition-fast)}.input-container:hover{background:var(--input-bg-hover);border-color:var(--input-border-hover)}.input-container.dragging{background:var(--input-bg-hover);border-color:var(--accent-primary)}.input-container.editing{border-color:var(--input-border-focus)}.number-input{background:#0000;border:none;color:var(--text-primary);flex:1 1;font-family:var(--font-mono);font-size:var(--font-size-sm);min-width:0;outline:none;padding:4px 8px}.number-input:disabled{color:var(--text-primary);cursor:ew-resize}.input-suffix{color:var(--text-muted);font-size:var(--font-size-xs);padding-left:4px;padding-right:8px;-webkit-user-select:none;user-select:none}.drag-overlay{bottom:0;cursor:ew-resize;left:0;position:absolute;right:0;top:0}.draggable-number-input .input-container.dragging:before{animation:dragPulse 1s infinite;background:var(--accent-primary);bottom:0;content:"";left:0;position:absolute;top:0;width:2px}@keyframes dragPulse{0%{opacity:1}50%{opacity:.5}to{opacity:1}}.properties-content{background-color:var(--toolbar-bg-solid);box-sizing:border-box;flex:1 1;max-width:100%!important;min-width:0!important;overflow-x:hidden;overflow-y:auto;padding:0;width:100%!important}.properties-header-bar{align-items:center;background-color:var(--toolbar-bg-solid);border-bottom:1px solid var(--border-default);display:flex;height:32px;margin-bottom:var(--spacing-sm);padding:var(--spacing-xs) var(--spacing-lg);position:sticky;top:0;z-index:10}.header-bar-content{align-items:center;display:flex;justify-content:space-between;width:100%}.header-left{align-items:center;display:flex;flex:1 1;gap:var(--spacing-md)}.object-type{background-color:var(--bg-tertiary);color:var(--text-muted);font-size:var(--font-size-sm);font-style:italic;padding:2px var(--spacing-sm);text-transform:capitalize}.object-name,.object-type{border-radius:var(--radius-sm)}.object-name{color:var(--text-primary);cursor:pointer;font-size:var(--font-size-lg);font-weight:600;padding:2px var(--spacing-xs);transition:background-color var(--transition-normal);-webkit-user-select:none;user-select:none}.object-name:hover{background-color:var(--accent-subtle)}.header-name-input{background-color:var(--input-bg);border:1px solid var(--accent-primary);border-radius:var(--radius-sm);color:var(--text-primary);font-family:inherit;font-size:var(--font-size-lg);font-weight:600;min-width:100px;outline:none;padding:2px var(--spacing-xs)}.header-tag-group{align-items:center;display:flex;gap:var(--spacing-sm)}.header-tag-label{color:var(--text-muted);font-size:var(--font-size-md);font-weight:500}.header-tag-input{background-color:var(--input-bg);border:1px solid #0000;border-radius:var(--radius-sm);color:var(--text-primary);flex:0 0 auto;font-family:var(--font-mono);font-size:var(--font-size-sm);padding:var(--spacing-xs) var(--spacing-sm);text-align:left;transition:all var(--transition-normal);width:100px}.header-tag-input:hover{background-color:var(--input-bg);border-color:var(--border-strong)}.header-tag-input:focus{background-color:var(--input-bg);border-color:var(--accent-primary);outline:none}.properties-content>.add-component-section,.properties-content>.property-section{padding:0 10px}.no-selection{color:var(--text-muted);font-style:italic;padding:20px;text-align:center}.property-section{margin-bottom:var(--spacing-sm);min-width:0;width:100%}.section-header{color:var(--text-primary);font-size:var(--font-size-lg);font-weight:600;margin-bottom:var(--spacing-sm)}.property-section-header{align-items:center;background-color:var(--btn-bg);border:1px solid var(--btn-bg);border-radius:var(--radius-sm);cursor:pointer;display:flex;padding:4px var(--spacing-sm);transition:all var(--transition-fast);-webkit-user-select:none;user-select:none}.property-section-header:hover{background-color:var(--btn-bg-hover);border-color:var(--border-hover)}.property-section-icon{align-items:center;display:inline-flex;margin-right:6px;opacity:.7}.property-section-toggle{color:var(--text-muted);font-size:var(--font-size-xs);margin-right:var(--spacing-sm);transition:transform var(--transition-normal)}.property-section-toggle.expanded{transform:rotate(90deg)}.property-section-title{color:var(--text-primary);font-size:var(--font-size-md);font-weight:600}.property-section-content{min-width:0;overflow:hidden;padding:var(--spacing-xs) var(--spacing-sm) 0 var(--spacing-sm);width:100%}.property-row{align-items:center;display:flex;font-size:13px;justify-content:space-between;margin-bottom:var(--spacing-sm);min-width:0;width:100%}.property-label{color:var(--text-secondary);display:block;font-size:var(--font-size-sm);margin-bottom:var(--spacing-xs)}.property-value{color:var(--text-primary)}.property-group{align-items:center;display:flex;gap:var(--spacing-sm);margin-bottom:6px;min-width:0;width:100%}.property-group:last-child{margin-bottom:0}.property-group>.property-label{flex:0 0 auto;font-size:var(--font-size-sm);margin-bottom:0;min-width:80px;padding-right:var(--spacing-sm);position:relative;text-align:left;width:80px}.property-group>.property-label:after{background-color:var(--border-default);content:"";height:20px;margin-left:var(--spacing-sm);opacity:.3;position:absolute;right:0;top:50%;transform:translateY(-50%);width:1px}.vector-input{grid-gap:4px;display:grid;flex:1 1;gap:4px;grid-template-columns:1fr 1fr 1fr}.vector-input input{background-color:var(--input-bg);border:1px solid var(--input-border);border-radius:var(--radius-sm);color:var(--input-text);font-size:var(--font-size-sm);padding:4px 8px;transition:all var(--transition-fast);width:100%}.vector-input input:hover{background-color:var(--input-bg-hover);border-color:var(--input-border-hover)}.vector-input input:focus{background-color:var(--input-bg-hover);border-color:var(--input-border-focus);outline:none}.color-input{background-color:var(--input-bg);border:1px solid var(--input-border);border-radius:var(--radius-sm);cursor:pointer;flex:1 1;height:24px;transition:all var(--transition-fast)}.color-input:hover{border-color:var(--input-border-hover)}.material-input-group{align-items:center;display:flex;flex:1 1;gap:var(--spacing-sm)}.material-input-group input[type=range]{min-width:0;width:100%}.slider-input{appearance:none;background:var(--slider-track);border-radius:var(--radius-full);flex:1 1;height:4px;outline:none;transition:background var(--transition-fast)}.slider-input:hover{background:var(--slider-track-hover)}.slider-input::-webkit-slider-thumb{appearance:none;background:var(--slider-thumb);border:none;border-radius:50%;box-shadow:0 1px 3px #0000004d;cursor:pointer;height:14px;-webkit-transition:transform var(--transition-fast);transition:transform var(--transition-fast);width:14px}.slider-input::-webkit-slider-thumb:hover{transform:scale(1.1)}.slider-input::-webkit-slider-thumb:active{transform:scale(.95)}.slider-input::-moz-range-thumb{background:var(--slider-thumb);border:none;border-radius:50%;box-shadow:0 1px 3px #0000004d;cursor:pointer;height:14px;-moz-transition:transform var(--transition-fast);transition:transform var(--transition-fast);width:14px}.slider-input::-moz-range-thumb:hover{transform:scale(1.1)}.slider-value{flex:0 0 auto;min-width:32px}.quaternion-input{grid-gap:var(--spacing-xs);display:grid;gap:var(--spacing-xs);grid-template-columns:repeat(4,1fr);width:100%}.quaternion-value{align-items:center;display:flex;flex-direction:row;gap:4px}.quaternion-value label{color:var(--text-muted);flex-shrink:0;font-size:var(--font-size-sm);font-weight:500}.quaternion-value input{text-align:center;width:100%}.readonly-input{background-color:var(--toolbar-bg-solid)!important;border:1px solid var(--border-default)!important;border-radius:var(--radius-sm)!important;box-sizing:border-box!important;color:var(--text-secondary)!important;cursor:default!important;flex:1 1!important;font-size:var(--font-size-sm)!important;padding:4px 8px!important;text-align:center!important}.readonly-input:focus{border-color:var(--border-strong)!important;outline:none!important}.checkbox-input{appearance:none;background-color:var(--checkbox-bg);border:1px solid var(--checkbox-border);border-radius:var(--radius-sm);cursor:pointer;flex-shrink:0;height:18px;position:relative;transition:all var(--transition-fast);width:18px}.checkbox-input:hover{background-color:var(--input-bg-hover);border-color:var(--border-hover)}.checkbox-input:checked{background-color:var(--checkbox-checked-bg);border-color:var(--checkbox-checked-border)}.checkbox-input:checked:after{border:solid var(--checkbox-checkmark);border-width:0 2px 2px 0;content:"";height:9px;left:5px;position:absolute;top:2px;transform:rotate(45deg);width:5px}.checkbox-input:focus{border-color:var(--border-focus);outline:none}.text-input{background-color:var(--input-bg);border:1px solid var(--input-border);border-radius:var(--radius-sm);color:var(--input-text);font-family:var(--font-mono);font-size:var(--font-size-sm);padding:4px 8px;transition:all var(--transition-fast);width:100%}.text-input:hover{border-color:var(--input-border-hover)}.text-input:focus,.text-input:hover{background-color:var(--input-bg-hover)}.text-input:focus{border-color:var(--input-border-focus);outline:none}.draggable-number-input{flex:1 1;min-width:0;width:100%}.draggable-number-container{align-items:center;display:flex;gap:var(--spacing-xs);min-width:0;width:100%}.add-component-section{border-top:1px solid var(--border-default);margin-top:var(--spacing-lg);padding-top:var(--spacing-lg);position:relative}.add-component-button{align-items:center;background-color:var(--btn-bg);border:1px solid var(--btn-border);border-radius:var(--radius-lg);color:var(--btn-text);cursor:pointer;display:flex;font-size:var(--font-size-sm);font-weight:500;gap:var(--spacing-sm);justify-content:center;margin:var(--spacing-md) auto 0 auto;padding:8px 12px;transition:all var(--transition-fast);width:50%}.add-component-button:hover{background-color:var(--btn-bg-hover);border-color:var(--border-hover)}.add-component-button:active{background-color:var(--btn-bg-active);transform:scale(.98)}.refresh-components-button{align-items:center;background:#0000;border:1px solid var(--border-strong);border-radius:var(--radius-sm);color:var(--text-primary);cursor:pointer;display:flex;font-size:var(--font-size-lg);height:20px;justify-content:center;line-height:1;padding:0;transition:all var(--transition-normal);width:20px}.refresh-components-button:hover{background-color:var(--accent-subtle);border-color:var(--border-strong);transform:rotate(180deg)}.refresh-components-button:active{background-color:var(--bg-tertiary)}.component-dropdown{background-color:var(--menu-bg);border:1px solid var(--menu-border);border-radius:var(--radius-lg);box-shadow:var(--shadow-lg);left:50%;overflow:hidden;position:absolute;top:calc(100% + 4px);transform:translateX(-50%);width:50%;z-index:var(--z-dropdown)}.component-search{background-color:var(--input-bg);border:none;border-bottom:1px solid var(--border-default);box-sizing:border-box;color:var(--text-primary);font-size:var(--font-size-sm);outline:none;padding:var(--spacing-sm) var(--spacing-md);transition:all var(--transition-fast);width:100%}.component-search:focus{background-color:var(--input-bg-hover);border-bottom-color:var(--border-hover)}.component-search::placeholder{color:var(--text-muted)}.component-list{max-height:180px;overflow-y:auto;padding:var(--spacing-xs)}.component-dropdown-item{border-radius:var(--radius-md);color:var(--text-primary);cursor:pointer;font-size:var(--font-size-sm);margin:1px 0;padding:var(--spacing-sm) var(--spacing-md);transition:all var(--transition-fast)}.component-dropdown-item:hover{background-color:var(--menu-item-hover)}.component-dropdown-item:active{background-color:var(--menu-item-active)}.component-dropdown-item.disabled{color:var(--text-disabled);cursor:not-allowed;font-style:italic}.component-dropdown-item.disabled:hover{background-color:initial}.component-context-menu{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background-color:var(--menu-bg);border:1px solid var(--menu-border);border-radius:var(--radius-lg);box-shadow:var(--shadow-lg);font-family:var(--font-family);min-width:140px;padding:var(--spacing-xs);z-index:var(--z-dropdown)}.context-menu-item{border-radius:var(--radius-md);color:var(--text-primary);cursor:pointer;font-size:var(--font-size-sm);margin:1px 0;padding:8px var(--spacing-md);transition:all var(--transition-fast);-webkit-user-select:none;user-select:none}.context-menu-item:hover:not(.disabled){background-color:var(--menu-item-hover);color:var(--text-primary)}.context-menu-item:active:not(.disabled){background-color:var(--menu-item-active)}.context-menu-item.disabled{color:var(--text-disabled);cursor:default;font-style:normal}.context-menu-divider{background-color:var(--menu-separator);height:1px;margin:var(--spacing-xs) var(--spacing-sm)}.component-buttons{border-top:1px solid var(--border-default);display:flex;flex-wrap:wrap;gap:6px;justify-content:center;margin-top:10px;padding-top:10px}.component-button{align-items:center;background-color:var(--btn-bg);border:1px solid var(--btn-border);border-radius:var(--radius-lg);color:var(--btn-text);cursor:pointer;display:inline-flex;font-size:var(--font-size-sm);font-weight:500;gap:var(--spacing-xs);padding:8px var(--spacing-md);transition:all var(--transition-fast)}.component-button:hover{background-color:var(--btn-bg-hover);border-color:var(--border-hover)}.component-button:active{background-color:var(--btn-bg-active);transform:scale(.98)}.component-button .button-icon{font-size:var(--font-size-md);opacity:.8}@media (max-width:900px){.property-group>.property-label{min-width:60px!important;width:60px!important}.vector-input{gap:2px}}.color-picker-container{align-items:center;display:flex;gap:var(--spacing-sm)}.color-picker-label{color:var(--text-primary);font-size:var(--font-size-sm);min-width:80px}.color-picker-wrapper{flex:1 1;position:relative}.color-picker-button{align-items:center;background:var(--input-bg);border:1px solid var(--input-border);border-radius:var(--radius-sm);box-sizing:border-box;cursor:pointer;display:flex;gap:var(--spacing-sm);height:24px;padding:3px;transition:all var(--transition-fast);-webkit-user-select:none;user-select:none}.color-picker-button:hover{background:var(--input-bg-hover);border-color:var(--input-border-hover)}.color-preview{border:1px solid #0003;border-radius:var(--radius-sm);box-shadow:inset 0 0 0 1px #ffffff1a;flex-shrink:0;height:16px;width:16px}.color-value{background:none;border:none;color:var(--text-secondary);font-family:var(--font-mono);font-size:var(--font-size-sm);text-transform:uppercase}.color-picker-overlay{animation:colorPickerFadeIn var(--transition-normal);position:fixed;z-index:10000}@keyframes colorPickerFadeIn{0%{opacity:0;transform:translateY(-8px)}to{opacity:1;transform:translateY(0)}}.color-picker-content{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:var(--menu-bg);border:1px solid var(--border-default);border-radius:var(--radius-xl);box-shadow:var(--shadow-xl);padding:var(--spacing-lg);width:260px}.color-picker-content .react-colorful{height:200px;margin-bottom:var(--spacing-md);width:100%}.color-picker-content .react-colorful__saturation{border-radius:var(--radius-sm) var(--radius-sm) 0 0}.color-picker-content .react-colorful__hue{border-radius:0 0 var(--radius-sm) var(--radius-sm);height:24px;margin-top:var(--spacing-md)}.color-picker-content .react-colorful__pointer{border:2px solid #fff;box-shadow:var(--shadow-md),inset 0 0 0 1px #0000001a;height:20px;width:20px}.color-picker-content .react-colorful__hue-pointer{border:2px solid #fff;border-radius:var(--radius-sm);box-shadow:var(--shadow-md);height:24px;width:24px}.color-picker-inputs{margin-bottom:var(--spacing-md)}.color-picker-hex-input{align-items:center;display:flex;gap:var(--spacing-sm);margin-bottom:var(--spacing-sm)}.color-picker-hex-input label{color:var(--text-secondary);font-size:var(--font-size-sm);font-weight:500;min-width:30px}.color-picker-hex-input input{background:var(--input-bg);border:1px solid var(--input-border);border-radius:var(--radius-md);color:var(--input-text);flex:1 1;font-family:var(--font-mono);font-size:var(--font-size-sm);outline:none;padding:8px var(--spacing-sm);text-transform:uppercase;transition:all var(--transition-fast)}.color-picker-hex-input input:hover{background:var(--input-bg-hover);border-color:var(--input-border-hover)}.color-picker-hex-input input:focus{background:var(--input-bg-hover);border-color:var(--input-border-focus)}.color-picker-rgb-inputs{display:flex;gap:var(--spacing-sm)}.rgb-input-group{align-items:center;display:flex;flex:1 1;gap:var(--spacing-xs)}.rgb-input-group label{color:var(--text-secondary);font-size:var(--font-size-sm);font-weight:500}.rgb-input-group input{background:var(--input-bg);border:1px solid var(--input-border);border-radius:var(--radius-md);color:var(--input-text);flex:1 1;font-size:var(--font-size-sm);min-width:0;outline:none;padding:6px var(--spacing-xs);text-align:center;transition:all var(--transition-fast)}.rgb-input-group input:hover{border-color:var(--input-border-hover)}.rgb-input-group input:focus{background:var(--input-bg-hover);border-color:var(--input-border-focus)}.rgb-input-group input[type=number]::-webkit-inner-spin-button,.rgb-input-group input[type=number]::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}.rgb-input-group input[type=number]{-moz-appearance:textfield}.color-picker-preview-row{margin-bottom:var(--spacing-md)}.color-preview-comparison{align-items:center;background:var(--bg-secondary);border-radius:var(--radius-sm);display:flex;gap:var(--spacing-sm);justify-content:center;padding:var(--spacing-sm)}.color-preview-new,.color-preview-old{border:1px solid #0003;border-radius:var(--radius-sm);box-shadow:inset 0 0 0 1px #fff3;height:30px;width:60px}.color-preview-arrow{color:var(--text-secondary);font-size:var(--font-size-lg)}.color-picker-actions{display:flex;gap:var(--spacing-sm);justify-content:flex-end}.color-picker-btn{border:none;border-radius:var(--radius-lg);cursor:pointer;font-size:var(--font-size-sm);font-weight:500;outline:none;padding:8px var(--spacing-lg);transition:all var(--transition-fast)}.color-picker-cancel{background:var(--btn-bg);border:1px solid var(--btn-border);color:var(--btn-text)}.color-picker-cancel:hover{background:var(--btn-bg-hover);border-color:var(--border-hover)}.color-picker-confirm{background:var(--accent-primary);border:1px solid var(--accent-primary);color:var(--btn-primary-text)}.color-picker-confirm:hover{background:var(--accent-hover);border-color:var(--accent-hover)}.color-picker-confirm:active{transform:scale(.98)}@media (max-width:768px){.color-picker-overlay{left:50%!important;position:fixed!important;top:50%!important;transform:translate(-50%,-50%)!important}.color-picker-content{width:280px}}.custom-dropdown{flex:1 1;outline:none;position:relative}.dropdown-trigger{align-items:center;background-color:var(--input-bg);border:1px solid var(--input-border);border-radius:var(--radius-md);cursor:pointer;display:flex;justify-content:space-between;min-height:20px;padding:8px 12px;transition:all var(--transition-fast)}.dropdown-trigger:hover{background-color:var(--input-bg-hover);border-color:var(--input-border-hover)}.custom-dropdown.open .dropdown-trigger,.custom-dropdown:focus .dropdown-trigger{background-color:var(--input-bg-hover);border-color:var(--input-border-focus)}.dropdown-value{color:var(--text-primary);flex:1 1;font-size:var(--font-size-sm);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.dropdown-arrow{align-items:center;color:var(--text-muted);display:flex;justify-content:center;margin-left:8px;transition:transform var(--transition-fast)}.custom-dropdown.open .dropdown-arrow{transform:rotate(180deg)}.dropdown-menu{animation:dropdownFadeIn var(--transition-fast);background-color:var(--menu-bg);border:1px solid var(--menu-border);border-radius:var(--radius-lg);box-shadow:var(--shadow-lg);left:0;max-height:200px;overflow-y:auto;padding:var(--spacing-xs);position:absolute;right:0;top:calc(100% + 4px);z-index:var(--z-dropdown)}@keyframes dropdownFadeIn{0%{opacity:0;transform:translateY(-8px)}to{opacity:1;transform:translateY(0)}}.dropdown-item{border-radius:var(--radius-md);color:var(--text-primary);cursor:pointer;font-size:var(--font-size-sm);margin:1px 0;padding:8px 12px;transition:all var(--transition-fast)}.dropdown-item:hover{background-color:var(--menu-item-hover)}.dropdown-item.selected{background-color:var(--accent-subtle);color:var(--accent-primary);font-weight:500}.dropdown-menu::-webkit-scrollbar{width:6px}.dropdown-menu::-webkit-scrollbar-track{background:#0000}.dropdown-menu::-webkit-scrollbar-thumb{background:var(--scrollbar-thumb);border-radius:3px}.dropdown-menu::-webkit-scrollbar-thumb:hover{background:var(--scrollbar-thumb-hover)}.settings-content{background-color:var(--toolbar-bg-solid);flex:1 1;overflow-y:auto;padding:var(--spacing-sm) var(--spacing-md)}.settings-content .property-section{margin-bottom:var(--spacing-sm)}.settings-content .section-header{color:var(--text-primary);font-size:var(--font-size-md);font-weight:600;margin-bottom:var(--spacing-xs);padding:var(--spacing-xs) 0}.settings-content .property-group{align-items:center;display:flex;gap:var(--spacing-sm);margin-bottom:6px}.settings-content .property-group:last-child{margin-bottom:0}.settings-content .property-label{color:var(--text-secondary);font-size:var(--font-size-sm);min-width:110px}.settings-content .dropdown-trigger{border-radius:var(--radius-sm);min-height:auto;padding:4px 8px}.settings-content .number-input,.settings-content .select-input{background-color:var(--input-bg);border:1px solid var(--input-border);border-radius:var(--radius-sm);color:var(--input-text);flex:1 1;font-family:var(--font-mono);font-size:var(--font-size-sm);outline:none;padding:4px 8px;transition:all var(--transition-fast)}.settings-content .number-input:hover,.settings-content .select-input:hover{background-color:var(--input-bg-hover);border-color:var(--input-border-hover)}.settings-content .number-input:focus,.settings-content .select-input:focus{background-color:var(--input-bg-hover);border-color:var(--input-border-focus)}.settings-content .select-input{appearance:none;background-image:var(--select-arrow);background-position:right 10px center;background-repeat:no-repeat;background-size:14px;cursor:pointer;padding-right:32px}.settings-content .select-input option{background-color:var(--menu-bg);color:var(--text-primary);padding:8px 12px}.settings-content .number-input::-webkit-inner-spin-button,.settings-content .number-input::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}.settings-content .number-input[type=number]{-moz-appearance:textfield}.checkbox-wrapper{display:inline-block;position:relative}.settings-content .checkbox-input{cursor:pointer;height:0;opacity:0;position:absolute;width:0}.checkbox-custom{background-color:var(--checkbox-bg);border:1px solid var(--checkbox-border);border-radius:var(--radius-sm);cursor:pointer;display:inline-block;height:18px;position:relative;transition:all var(--transition-fast);width:18px}.checkbox-wrapper:hover .checkbox-custom{background-color:var(--input-bg-hover);border-color:var(--border-hover)}.checkbox-input:checked~.checkbox-custom{background-color:var(--checkbox-checked-bg);border-color:var(--checkbox-checked-border)}.checkbox-input:checked~.checkbox-custom:after{animation:checkAnim var(--transition-fast);border:solid var(--checkbox-checkmark);border-width:0 2px 2px 0;content:"";display:block;height:9px;left:5px;position:absolute;top:2px;transform:rotate(45deg);width:5px}@keyframes checkAnim{0%{transform:rotate(45deg) scale(0)}to{transform:rotate(45deg) scale(1)}}.settings-content .slider-input{-webkit-appearance:none;background:#0000;background:var(--slider-track);border-radius:var(--radius-full);flex:1 1;height:4px;outline:none;transition:all var(--transition-fast)}.settings-content .slider-input:hover{background:var(--slider-track-hover)}.settings-content .slider-input::-webkit-slider-thumb{-webkit-appearance:none;background:var(--slider-thumb);border:none;border-radius:var(--radius-full);box-shadow:0 1px 3px #0000004d;cursor:pointer;height:14px;-webkit-transition:all var(--transition-fast);transition:all var(--transition-fast);width:14px}.settings-content .slider-input::-webkit-slider-thumb:hover{transform:scale(1.1)}.settings-content .slider-input::-webkit-slider-thumb:active{transform:scale(.95)}.settings-content .slider-input::-moz-range-thumb{background:var(--slider-thumb);border:none;border-radius:var(--radius-full);box-shadow:0 1px 3px #0000004d;cursor:pointer;height:14px;-moz-transition:all var(--transition-fast);transition:all var(--transition-fast);width:14px}.settings-content .slider-input::-moz-range-thumb:hover{transform:scale(1.1)}.settings-content .slider-input::-moz-range-thumb:active{transform:scale(.95)}.settings-content .property-unit{color:var(--text-muted);font-size:var(--font-size-xs);margin-left:var(--spacing-xs)}.slider-group{align-items:center;display:flex;flex:1 1;gap:var(--spacing-sm)}.slider-value{font-feature-settings:"tnum";color:var(--text-secondary);font-size:var(--font-size-sm);font-variant-numeric:tabular-nums;min-width:40px;text-align:right}.timeline-panel-container{background-color:var(--bg-primary);overflow:hidden}.timeline-content,.timeline-panel-container{display:flex;flex-direction:column;height:100%;width:100%}.timeline-toolbar{background-color:var(--toolbar-bg-solid);border-bottom:1px solid var(--border-default);flex-shrink:0;gap:var(--spacing-sm);height:32px}.timeline-button,.timeline-toolbar{align-items:center;display:flex;padding:var(--spacing-xs) var(--spacing-sm)}.timeline-button{background-color:var(--btn-bg);border:1px solid var(--btn-border);border-radius:var(--radius-md);color:var(--btn-text);cursor:pointer;font-size:var(--font-size-sm);justify-content:center;min-width:0;transition:all var(--transition-fast)}.timeline-button:hover{background-color:var(--btn-bg-hover);border-color:var(--border-hover);color:var(--text-primary)}.timeline-button:active{transform:scale(.98)}.timeline-button.active{background-color:var(--accent-subtle);border-color:var(--accent-primary);color:var(--accent-text)}.timeline-button:disabled{cursor:not-allowed;opacity:.4}.timeline-button:disabled:hover{background-color:var(--btn-bg);border-color:var(--btn-border)}.record-button .record-icon{color:var(--text-muted)}.record-button.active{background-color:var(--color-error-bg);border-color:var(--color-error)}.record-button.active .record-icon{animation:pulse-record 1s ease-in-out infinite;color:var(--color-error)}@keyframes pulse-record{0%,to{opacity:1}50%{opacity:.5}}.toolbar-separator{background-color:var(--border-default);height:20px;margin:0 var(--spacing-xs);width:1px}.timeline-icon{display:block;font-size:var(--font-size-xs)}.timeline-frame-info{align-items:center;background-color:var(--input-bg);border:1px solid var(--border-default);border-radius:var(--radius-md);display:flex;flex-shrink:0;gap:5px;margin-left:auto;padding:var(--spacing-xs) var(--spacing-md)}.frame-label{color:var(--text-muted)}.frame-input,.frame-label{font-size:var(--font-size-sm)}.frame-input{background-color:var(--input-bg);border:1px solid var(--input-border);border-radius:var(--radius-sm);color:var(--input-text);padding:2px 6px;text-align:center;transition:all var(--transition-fast);width:50px}.frame-input:hover{border-color:var(--input-border-hover)}.frame-input:focus,.frame-input:hover{background-color:var(--input-bg-hover)}.frame-input:focus{border-color:var(--input-border-focus);outline:none}.frame-separator,.frame-total{color:var(--text-muted);font-size:var(--font-size-sm)}.timeline-tracks-container{display:flex;flex:1 1;flex-direction:column;overflow:hidden;position:relative;width:100%}.timeline-scrollbar-container{display:flex;height:10px}.scrollbar-header,.timeline-scrollbar-container{background-color:var(--bg-secondary);flex-shrink:0}.scrollbar-header{border-right:1px solid var(--border-default);min-width:120px;width:120px}.timeline-scrollbar{flex:1 1;overflow-x:auto;overflow-y:hidden}.timeline-scrollbar::-webkit-scrollbar{height:8px}.timeline-scrollbar::-webkit-scrollbar-track{background:var(--scrollbar-track)}.timeline-scrollbar::-webkit-scrollbar-thumb{background:var(--scrollbar-thumb);border-radius:var(--radius-sm)}.timeline-scrollbar::-webkit-scrollbar-thumb:hover{background:var(--scrollbar-thumb-hover)}.scrollbar-content{height:1px;min-width:100px}.timeline-ruler-container{border-bottom:1px solid var(--border-default);display:flex;height:30px}.ruler-header,.timeline-ruler-container{background-color:var(--bg-secondary);flex-shrink:0}.ruler-header{border-right:1px solid var(--border-default);min-width:120px;width:120px}.timeline-ruler{flex:1 1;overflow-x:hidden;overflow-y:hidden;position:relative}.ruler-content{background-color:var(--bg-secondary);height:30px;min-width:100px;position:relative}.ruler-mark{align-items:flex-start;cursor:pointer;display:flex;flex-direction:column;height:100%;justify-content:flex-end;margin-left:-5px;padding:0 5px;position:absolute;top:0}.ruler-tick{background-color:var(--border-strong);width:1px}.ruler-tick.major{background-color:var(--text-muted);height:12px}.ruler-tick.minor{height:6px}.ruler-number{color:var(--text-muted);font-size:var(--font-size-xs);margin-bottom:3px;margin-left:.5px;transform:translateX(-50%)}.ruler-mark:hover .ruler-tick{background-color:var(--text-secondary)}.timeline-tracks-wrapper{display:flex;flex:1 1;overflow:hidden}.timeline-tracks-headers{-ms-overflow-style:none;background-color:var(--bg-secondary);border-right:1px solid var(--border-default);flex-shrink:0;min-width:120px;overflow-x:hidden;overflow-y:scroll;position:relative;scrollbar-width:none;width:120px;z-index:25}.timeline-tracks-headers::-webkit-scrollbar{display:none}.timeline-tracks{background-color:var(--bg-primary);flex:1 1;overflow-x:hidden;overflow-y:auto;position:relative}.timeline-tracks::-webkit-scrollbar{height:0;width:8px}.timeline-tracks::-webkit-scrollbar-track{background:var(--scrollbar-track)}.timeline-tracks::-webkit-scrollbar-thumb{background:var(--scrollbar-thumb);border-radius:var(--radius-sm)}.timeline-tracks::-webkit-scrollbar-thumb:hover{background:var(--scrollbar-thumb-hover)}.timeline-tracks-content{min-width:100px;position:relative}.timeline-track{background:repeating-linear-gradient(90deg,#0000,#0000 calc(100% - 1px),var(--border-subtle) calc(100% - 1px),var(--border-subtle) 100%);background-size:10px 100%}.timeline-track,.track-header{border-bottom:1px solid var(--border-subtle);display:flex;height:24px}.track-header{align-items:center;gap:4px;padding:0 10px}.track-header.has-children .track-name{color:var(--text-primary);font-weight:600}.track-expand-btn{align-items:center;background:none;border:none;border-radius:var(--radius-sm);color:var(--text-muted);cursor:pointer;display:flex;font-size:8px;height:16px;justify-content:center;padding:2px;transition:all var(--transition-fast);width:16px}.track-expand-btn:hover{background-color:var(--btn-bg-hover);color:var(--text-primary)}.track-name{color:var(--text-muted);font-size:var(--font-size-sm);font-weight:500;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.track-content{flex:1 1;position:relative}.track-keys{height:100%;position:relative}.keyframe{background-color:var(--accent-primary);border:1px solid var(--accent-hover);border-radius:1px;box-shadow:var(--shadow-sm);cursor:grab;height:8px;position:absolute;top:50%;transform:translate(-50%,-50%) rotate(45deg);transition:all var(--transition-fast);width:8px;z-index:3}.keyframe:hover{background-color:var(--accent-hover);border-color:var(--accent-active);box-shadow:var(--shadow-md);transform:translate(-50%,-50%) rotate(45deg) scale(1.2)}.keyframe.selected{background-color:#ff6b6b;border-color:#f44;box-shadow:0 0 6px #ff6b6b80}.keyframe.dragging{background-color:var(--color-warning);border-color:var(--color-warning);cursor:grabbing;z-index:10}.selection-box{background-color:#0066cc26;border:1px solid var(--accent-primary);z-index:15}.selection-box,.timeline-scrubber{pointer-events:none;position:absolute}.timeline-scrubber{bottom:0;cursor:ew-resize;top:0;width:21px;z-index:20}.timeline-scrubber.dragging{z-index:25}.scrubber-head{background-color:var(--color-error);border-radius:3px 3px 0 0;cursor:ew-resize;height:18px;pointer-events:all;top:14px;width:10px;z-index:30}.scrubber-head,.scrubber-head:after{left:50%;position:absolute;transform:translateX(-50%)}.scrubber-head:after{border-left:5px solid #0000;border-right:5px solid #0000;border-top:5px solid var(--color-error);bottom:-5px;content:"";height:0;width:0}.scrubber-line{background:linear-gradient(90deg,#0000 4px,var(--color-error) 4px,var(--color-error) 6px,#0000 6px);bottom:0;cursor:ew-resize;left:50%;pointer-events:all;position:absolute;top:40px;transform:translateX(-50%);width:10px}.timeline-scrubber.dragging .scrubber-head,.timeline-scrubber:hover .scrubber-head{background-color:#f66}.timeline-scrubber.dragging .scrubber-line,.timeline-scrubber:hover .scrubber-line{background:linear-gradient(90deg,#0000 4px,#f66 0,#f66 6px,#0000 0)}.timeline-scrubber.dragging .scrubber-head:after,.timeline-scrubber:hover .scrubber-head:after{border-top-color:#f66}@media (max-width:768px){.timeline-toolbar{gap:6px;padding:var(--spacing-sm)}.timeline-button{font-size:11px;padding:var(--spacing-xs) var(--spacing-sm)}.timeline-icon{font-size:var(--font-size-sm)}.ruler-header,.track-header{min-width:80px;width:80px}.timeline-tracks{padding-left:80px}.frame-input{width:40px}}.results-panel{background-color:var(--bg-primary);color:var(--text-primary);display:flex;font-family:var(--font-family);height:100%}.results-content{display:flex;flex:1 1;flex-direction:column;overflow:hidden;position:relative}.results-top-bar{background-color:var(--toolbar-bg-solid);border-bottom:1px solid var(--border-default);flex-shrink:0;height:32px;justify-content:space-between;padding:var(--spacing-xs) var(--spacing-md)}.results-top-bar,.top-bar-left{align-items:center;display:flex}.results-title{color:var(--text-primary);font-size:var(--font-size-lg);font-weight:600}.top-bar-right{align-items:center;display:flex;gap:var(--spacing-md)}.scale-label{color:var(--text-muted);font-size:var(--font-size-md)}.scale-slider{appearance:none;background:var(--slider-track);border-radius:var(--radius-full);cursor:pointer;height:4px;outline:none;width:120px}.scale-slider::-webkit-slider-thumb{appearance:none;background:#fff;border:none;border-radius:50%;box-shadow:var(--shadow-md);cursor:pointer;height:14px;-webkit-transition:all var(--transition-fast);transition:all var(--transition-fast);width:14px}.scale-slider::-webkit-slider-thumb:hover{box-shadow:var(--shadow-lg);transform:scale(1.15)}.scale-slider::-moz-range-thumb{background:#fff;border:none;border-radius:50%;box-shadow:var(--shadow-md);cursor:pointer;height:14px;-moz-transition:all var(--transition-fast);transition:all var(--transition-fast);width:14px}.scale-slider::-moz-range-thumb:hover{box-shadow:var(--shadow-lg);transform:scale(1.15)}.scale-value{color:var(--text-primary);font-family:var(--font-mono);font-size:var(--font-size-md);min-width:35px;text-align:right}.version-list{background-color:var(--bg-secondary);border-right:1px solid var(--border-default);display:flex;flex-direction:column;width:200px}.version-list-header{align-items:center;background-color:var(--toolbar-bg-solid);border-bottom:1px solid var(--border-default);color:var(--text-primary);display:flex;font-size:13px;font-weight:600;height:32px;padding:var(--spacing-xs) var(--spacing-md)}.version-items{flex:1 1;overflow-y:auto}.version-item{border-bottom:1px solid var(--border-subtle);cursor:pointer;padding:6px var(--spacing-md);transition:all var(--transition-fast)}.version-item:hover{background-color:var(--tree-item-hover)}.version-item.selected{background-color:var(--tree-item-selected);border-left:3px solid var(--accent-primary);padding-left:9px}.version-item:active{transform:scale(.99)}.version-content{align-items:center;display:flex;justify-content:space-between}.version-main{flex:1 1;min-width:0}.version-header{align-items:center;display:flex;gap:6px;margin-bottom:2px}.version-tag{border-radius:var(--radius-sm);color:#fff;display:inline-block;font-size:9px;font-weight:600;letter-spacing:.5px;line-height:1;padding:2px 6px;text-transform:uppercase}.version-name{color:var(--accent-text);font-size:var(--font-size-md);font-weight:600}.version-details{align-items:center;display:flex;gap:var(--spacing-sm)}.version-time{color:var(--text-muted)}.version-info,.version-time{font-size:var(--font-size-xs)}.version-delete,.version-info{color:var(--text-disabled)}.version-delete{align-items:center;background:#0000;border:none;cursor:pointer;display:flex;font-size:20px;height:20px;justify-content:center;line-height:1;opacity:0;padding:0;transition:opacity var(--transition-normal),color var(--transition-normal);width:20px}.version-item:hover .version-delete{opacity:1}.version-delete:hover{color:var(--color-error)}.version-empty{color:var(--text-muted);font-size:var(--font-size-md);padding:20px;text-align:center}.visualization-container{align-content:flex-start;background-color:var(--bg-primary);display:flex;flex:1 1;flex-wrap:wrap;gap:15px;justify-content:flex-start;overflow:auto;padding:20px;position:relative}.visualization-container .fullscreen-overlay{background-color:#00000080;bottom:0;left:0;position:absolute;right:0;top:0;z-index:45}.plot-wrapper{flex-shrink:0;transition:all .3s ease}.grid-item{background-color:var(--bg-secondary);border:1px solid var(--border-default);border-radius:var(--radius-lg);box-sizing:border-box;display:flex;flex-direction:column;height:100%;overflow:visible;padding:var(--spacing-lg);position:relative;transition:all .3s ease;width:100%}.plot-top-bar{align-items:center;background-color:var(--toolbar-bg);border-bottom:1px solid var(--border-default);border-radius:var(--radius-lg) var(--radius-lg) 0 0;display:flex;height:32px;justify-content:space-between;margin:-16px -16px var(--spacing-md) -16px;padding:0 var(--spacing-sm)}.plot-top-bar-left{align-items:center;display:flex;flex:1 1;gap:var(--spacing-sm);min-width:0;overflow:hidden}.plot-top-bar-title{color:var(--text-primary);font-size:var(--font-size-md);font-weight:600;margin-right:auto;max-width:150px;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.plot-top-bar-controls{align-items:center;display:flex;gap:6px;margin-right:var(--spacing-sm)}.plot-dropdown{appearance:none;-webkit-appearance:none;-moz-appearance:none;background-color:var(--input-bg);background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='10' height='6'%3E%3Cpath fill='%23999' d='m0 0 5 5 5-5z'/%3E%3C/svg%3E");background-position:right 6px center;background-repeat:no-repeat;background-size:10px 6px;border:1px solid var(--input-border);border-radius:var(--radius-sm);color:var(--text-secondary);cursor:pointer;font-size:var(--font-size-sm);min-width:80px;outline:none;padding:3px 20px 3px var(--spacing-sm);transition:all var(--transition-normal)}.plot-dropdown:hover{background-color:var(--input-bg-hover);border-color:var(--input-border-hover);color:var(--text-primary)}.plot-dropdown:focus{border-color:var(--accent-primary);box-shadow:0 0 0 1px var(--accent-subtle)}.plot-input{background-color:var(--input-bg);border:1px solid var(--input-border);border-radius:var(--radius-sm);color:var(--input-text);font-family:var(--font-mono);font-size:var(--font-size-sm);outline:none;padding:3px 6px;text-align:right;transition:all var(--transition-normal);width:60px}.plot-input:hover{background-color:var(--input-bg-hover);border-color:var(--input-border-hover)}.plot-input:focus{background-color:var(--bg-secondary);border-color:var(--accent-primary);box-shadow:0 0 0 1px var(--accent-subtle)}.plot-input::placeholder{color:var(--text-muted);font-style:italic}.plot-top-bar-buttons{display:flex;gap:var(--spacing-xs)}.plot-bar-btn{align-items:center;background-color:var(--btn-bg);border:1px solid var(--btn-border);border-radius:var(--radius-md);color:var(--text-muted);cursor:pointer;display:flex;font-size:var(--font-size-md);height:22px;justify-content:center;transition:all var(--transition-fast);width:22px}.plot-bar-btn:hover{background-color:var(--btn-bg-hover);border-color:var(--border-hover);color:var(--text-primary)}.plot-bar-btn:active{transform:scale(.95)}.plot-bar-btn.active{background-color:var(--accent-primary);border-color:var(--accent-primary);color:var(--btn-primary-text)}.plot-wrapper.fullscreen-in-container{bottom:0;height:100%!important;left:0;padding:0;position:absolute!important;right:0;top:0;width:100%!important;z-index:50}.plot-wrapper.fullscreen-in-container .grid-item{border-radius:0;height:100%!important;margin:0;max-height:none!important;max-width:none!important;width:100%!important}.plot-wrapper.fullscreen-in-container .plot-content{height:calc(100% - 44px)!important;width:100%!important}.plot-wrapper.fullscreen-in-container .heatmap-container,.plot-wrapper.fullscreen-in-container .signal-plot-container,.plot-wrapper.fullscreen-in-container .table-container{height:100%!important}.plot-wrapper.fullscreen-in-container .heatmap-canvas{height:600px!important;width:600px!important}.plot-wrapper.fullscreen-in-container .heatmap-main{padding:20px}.heatmap-container{flex:1 1;flex-direction:column}.heatmap-container,.heatmap-main{display:flex;height:100%;min-height:0;width:100%}.heatmap-main{gap:var(--spacing-md);overflow:visible}.canvas-wrapper,.heatmap-main{align-items:center;flex:1 1;justify-content:center}.canvas-wrapper{display:flex;min-height:0;overflow:hidden;position:relative}.heatmap-canvas{background-color:var(--bg-darkest);border:1px solid var(--border-default);cursor:grab}.heatmap-canvas:active{cursor:grabbing}.tooltip{background-color:var(--tooltip-bg);border:1px solid var(--tooltip-border);border-radius:var(--radius-sm);color:var(--tooltip-text);font-family:var(--font-mono);font-size:var(--font-size-sm);padding:var(--spacing-xs) var(--spacing-sm);white-space:nowrap;z-index:var(--z-tooltip)}.colorbar-vertical{align-items:center;display:flex;flex-direction:row;flex-shrink:0;width:50px}.colorbar-gradient-vertical{background:linear-gradient(180deg,red,#ff0,#0f0,#0ff,#00f);border:1px solid var(--border-default);border-radius:var(--radius-sm);height:80%;max-height:250px;width:20px}.colorbar-vertical .colorbar-labels{color:var(--text-muted);display:flex;flex-direction:column;font-size:var(--font-size-xs);height:80%;justify-content:space-between;margin-left:var(--spacing-xs);max-height:250px}.plot-content{display:flex;flex:1 1;flex-direction:column;height:calc(100% - 32px);overflow:hidden;width:100%}.signal-plot-container{align-items:center;display:flex;flex:1 1;height:100%;justify-content:center;min-height:0;position:relative;width:100%}.plot-hamburger-wrapper{margin-left:auto;position:relative}.hamburger-btn{font-size:var(--font-size-lg);height:28px;width:28px}.plot-dropdown-menu{background-color:var(--menu-bg);border:1px solid var(--menu-border);border-radius:var(--radius-lg);box-shadow:var(--shadow-xl);margin-top:var(--spacing-xs);min-width:200px;padding:var(--spacing-md);position:absolute;right:0;top:100%;z-index:var(--z-dropdown)}.menu-section{margin-bottom:var(--spacing-md)}.menu-section label{color:var(--text-muted);display:block;font-size:var(--font-size-sm);font-weight:600;margin-bottom:var(--spacing-xs)}.menu-section .menu-item{width:100%}.menu-buttons{border-top:1px solid var(--menu-separator);display:flex;flex-direction:column;gap:var(--spacing-sm);padding-top:var(--spacing-sm)}.menu-btn{gap:var(--spacing-sm);height:28px;justify-content:flex-start;padding:0 10px;width:100%}.table-container{display:flex;flex:1 1;flex-direction:column;height:100%;overflow:hidden;padding:0;width:100%}.table-title{color:var(--text-primary);display:none;font-size:var(--font-size-md);font-weight:600;margin-bottom:var(--spacing-sm);text-align:center}.table-scroll{background-color:var(--bg-darkest);border:none;border-radius:0;flex:1 1;overflow:auto}.data-table{border-collapse:collapse;font-family:var(--font-mono);font-size:var(--font-size-sm);width:100%}.data-table thead{background-color:var(--toolbar-bg);position:sticky;top:0;z-index:10}.data-table th{border-bottom:2px solid var(--border-default);color:var(--text-primary);font-weight:600;padding:var(--spacing-sm) 10px;text-align:left}.data-table td,.data-table th{font-size:var(--font-size-md);white-space:nowrap}.data-table td{border-bottom:1px solid var(--border-subtle);color:var(--text-secondary);padding:6px 10px}.data-table tr:hover td{background-color:var(--bg-secondary);color:var(--text-primary)}.data-table tr:last-child td{border-bottom:none}.no-data-message{color:var(--text-muted);font-size:var(--font-size-lg);height:400px;text-align:center;width:100%}.delete-modal-overlay,.no-data-message{align-items:center;display:flex;justify-content:center}.delete-modal-overlay{background-color:#000000b3;bottom:0;left:0;position:fixed;right:0;top:0;z-index:var(--z-modal)}.delete-modal{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background-color:var(--bg-elevated);border:1px solid var(--border-default);border-radius:var(--radius-xl);box-shadow:var(--shadow-xl);min-width:350px;padding:var(--spacing-xl)}.delete-modal h3{color:var(--text-primary);font-size:18px;font-weight:600;margin:0 0 var(--spacing-lg) 0}.delete-modal p{color:var(--text-secondary);font-size:var(--font-size-lg);margin:0 0 var(--spacing-md) 0}.delete-warning{color:var(--color-warning);font-size:var(--font-size-md);font-style:italic}.delete-modal-buttons{display:flex;gap:var(--spacing-md);justify-content:flex-end;margin-top:20px}.delete-modal-buttons button{border-radius:var(--radius-lg);cursor:pointer;font-size:var(--font-size-lg);font-weight:500;padding:var(--spacing-sm) var(--spacing-lg);transition:all var(--transition-fast)}.cancel-btn{background-color:var(--btn-bg);border:1px solid var(--btn-border);color:var(--btn-text)}.cancel-btn:hover{background-color:var(--btn-bg-hover);border-color:var(--border-hover)}.cancel-btn:active{transform:scale(.98)}.delete-btn{background-color:var(--color-error);border:none;color:#fff}.delete-btn:hover{background-color:#e44}.delete-btn:active{transform:scale(.98)}.console-panel{background:var(--bg-primary);display:flex;flex-direction:column;font-family:var(--font-family-mono);font-size:var(--font-size-sm);height:100%}.console-header{align-items:center;background:var(--toolbar-bg-solid);border-bottom:1px solid var(--border-default);display:flex;height:32px;justify-content:space-between;padding:var(--spacing-xs) var(--spacing-md)}.console-clear-btn{background:var(--btn-bg);border:1px solid var(--btn-border);border-radius:var(--radius-md);color:var(--btn-text);cursor:pointer;font-size:var(--font-size-sm);padding:6px var(--spacing-md);transition:all var(--transition-fast)}.console-clear-btn:hover{background:var(--btn-bg-hover);border-color:var(--border-hover);color:var(--text-primary)}.console-clear-btn:active{transform:scale(.98)}.console-filters{align-items:center;display:flex;gap:var(--spacing-lg)}.console-filter{align-items:center;color:var(--text-secondary);cursor:pointer;display:flex;gap:6px;transition:opacity var(--transition-normal);-webkit-user-select:none;user-select:none}.console-filter.inactive{opacity:1}.console-filter.inactive span{color:var(--text-secondary)}.console-filter input[type=checkbox]{appearance:none;-webkit-appearance:none;background:var(--checkbox-bg);border:1px solid var(--checkbox-border);border-radius:var(--radius-sm);cursor:pointer;height:16px;margin:0;position:relative;transition:all var(--transition-fast);width:16px}.console-filter input[type=checkbox]:checked{background:var(--checkbox-checked-bg);border-color:var(--checkbox-checked-border)}.console-filter input[type=checkbox]:checked:after{border:solid var(--checkbox-checkmark);border-width:0 2px 2px 0;content:"";height:8px;left:4px;position:absolute;top:1px;transform:rotate(45deg);width:5px}.console-filter input[type=checkbox]:hover{border-color:var(--border-hover)}.console-filter span{font-size:var(--font-size-sm);font-weight:500}.console-messages{background:var(--bg-primary);flex:1 1;overflow-y:auto;padding:var(--spacing-sm)}.console-empty{align-items:center;color:var(--text-secondary);display:flex;flex-direction:column;height:100%;justify-content:center;opacity:.6}.console-empty p{margin:var(--spacing-xs) 0}.console-hint{font-size:11px;font-style:italic}.console-message ::selection{background:var(--bg-tertiary);color:var(--text-primary)}.console-message ::-moz-selection{background:var(--bg-tertiary);color:var(--text-primary)}.console-message{align-items:flex-start;border-radius:var(--radius-xs);cursor:text;display:flex;gap:var(--spacing-sm);line-height:1.4;margin-bottom:2px;padding:2px var(--spacing-xs);transition:background var(--transition-fast);word-break:break-word}.console-message:hover{background:var(--bg-secondary)}.console-message-icon{flex-shrink:0;text-align:center;-webkit-user-select:none;user-select:none;width:16px}.console-message-time{color:var(--text-secondary);flex-shrink:0;font-size:11px;opacity:.7}.console-message-time.no-select{-webkit-user-select:none;user-select:none}.console-message-source{color:var(--text-secondary);flex-shrink:0;font-weight:600;-webkit-user-select:text;user-select:text}.console-message-text{flex:1 1;-webkit-user-select:text;user-select:text;white-space:pre-wrap}.console-log .console-message-icon{color:var(--text-secondary)}.console-log .console-message-text{color:var(--text-primary)}.console-warning .console-message-icon,.console-warning .console-message-text{color:var(--color-warning)}.console-error .console-message-icon,.console-error .console-message-text{color:var(--color-error)}.console-input-wrapper{align-items:center;background:var(--bg-primary);border-top:1px solid var(--border-default);display:flex;gap:var(--spacing-sm);padding:var(--spacing-md)}.console-input-container{align-items:center;background:var(--input-bg);border:1px solid var(--input-border);border-radius:var(--radius-lg);display:flex;flex:1 1;gap:6px;padding:8px 12px;transition:all var(--transition-fast)}.console-input-container:hover{background:var(--input-bg-hover);border-color:var(--input-border-hover)}.console-input-container:focus-within{border-color:var(--input-border-focus)}.console-prompt{color:var(--text-muted);flex-shrink:0;font-weight:700;-webkit-user-select:none;user-select:none}.console-input{background:#0000;border:none;color:var(--text-primary);flex:1 1;font-family:inherit;font-size:var(--font-size-sm);outline:none;padding:2px var(--spacing-xs)}.console-input::placeholder{color:var(--input-placeholder);opacity:1}.console-messages::-webkit-scrollbar{width:8px}.console-messages::-webkit-scrollbar-track{background:var(--bg-secondary)}.console-messages::-webkit-scrollbar-thumb{background:var(--scrollbar-thumb);border-radius:var(--radius-sm)}.console-messages::-webkit-scrollbar-thumb:hover{background:var(--scrollbar-thumb-hover)}.console-context-menu{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:var(--menu-bg);border:1px solid var(--menu-border);border-radius:var(--radius-lg);box-shadow:var(--shadow-lg);min-width:120px;padding:var(--spacing-xs)}.console-context-menu-item{background:#0000;border:none;border-radius:var(--radius-md);color:var(--text-primary);cursor:pointer;display:block;font-size:var(--font-size-sm);margin:1px 0;padding:8px var(--spacing-md);text-align:left;transition:all var(--transition-fast);width:100%}.console-context-menu-item:hover{background:var(--menu-item-hover);color:var(--text-primary)}.dv-scrollable{overflow:hidden;position:relative}.dv-scrollable .dv-scrollbar-horizontal{backface-visibility:hidden;background-color:initial;border-radius:2px;bottom:0;height:4px;left:0;position:absolute;transform:translateZ(0);transition-delay:0s;transition-duration:1s;transition-property:background-color;transition-timing-function:ease-in-out;will-change:background-color,transform}.dv-scrollable.dv-scrollable-resizing .dv-scrollbar-horizontal,.dv-scrollable.dv-scrollable-scrolling .dv-scrollbar-horizontal,.dv-scrollable:hover .dv-scrollbar-horizontal{background-color:#ffffff40;background-color:var(--dv-scrollbar-background-color,#ffffff40)}.dv-svg{fill:currentcolor;stroke:currentcolor;stroke-width:0;display:inline-block;line-height:1}.dockview-theme-dark{--dv-paneview-active-outline-color:#1e90ff;--dv-tabs-and-actions-container-font-size:13px;--dv-tabs-and-actions-container-height:35px;--dv-drag-over-background-color:#53595d80;--dv-drag-over-border-color:#0000;--dv-tabs-container-scrollbar-color:#888;--dv-icon-hover-background-color:#5a5d5e4f;--dv-floating-box-shadow:8px 8px 8px 0px #53595d80;--dv-overlay-z-index:999;--dv-tab-font-size:inherit;--dv-border-radius:0px;--dv-tab-margin:0;--dv-sash-color:#0000;--dv-active-sash-color:#0000;--dv-active-sash-transition-duration:0.1s;--dv-active-sash-transition-delay:0.5s;--dv-group-view-background-color:#1e1e1e;--dv-tabs-and-actions-container-background-color:#252526;--dv-activegroup-visiblepanel-tab-background-color:#1e1e1e;--dv-activegroup-hiddenpanel-tab-background-color:#2d2d2d;--dv-inactivegroup-visiblepanel-tab-background-color:#1e1e1e;--dv-inactivegroup-hiddenpanel-tab-background-color:#2d2d2d;--dv-tab-divider-color:#1e1e1e;--dv-activegroup-hiddenpanel-tab-color:#969696;--dv-inactivegroup-visiblepanel-tab-color:#8f8f8f;--dv-inactivegroup-hiddenpanel-tab-color:#626262;--dv-separator-border:#444;--dv-paneview-header-border-color:#ccc3}.dockview-theme-dark .dv-drop-target-container .dv-drop-target-anchor.dv-drop-target-anchor-container-changed{opacity:0;transition:none}.dockview-theme-light{--dv-paneview-active-outline-color:#1e90ff;--dv-tabs-and-actions-container-font-size:13px;--dv-tabs-and-actions-container-height:35px;--dv-drag-over-background-color:#53595d80;--dv-drag-over-border-color:#0000;--dv-tabs-container-scrollbar-color:#888;--dv-icon-hover-background-color:#5a5d5e4f;--dv-floating-box-shadow:8px 8px 8px 0px #53595d80;--dv-overlay-z-index:999;--dv-tab-font-size:inherit;--dv-border-radius:0px;--dv-tab-margin:0;--dv-sash-color:#0000;--dv-active-sash-color:#0000;--dv-active-sash-transition-duration:0.1s;--dv-active-sash-transition-delay:0.5s;--dv-group-view-background-color:#fff;--dv-tabs-and-actions-container-background-color:#f3f3f3;--dv-activegroup-hiddenpanel-tab-background-color:#ececec;--dv-inactivegroup-hiddenpanel-tab-background-color:#ececec;--dv-tab-divider-color:#fff;--dv-activegroup-visiblepanel-tab-color:#333;--dv-activegroup-hiddenpanel-tab-color:#333333b3;--dv-inactivegroup-visiblepanel-tab-color:#333333b3;--dv-inactivegroup-hiddenpanel-tab-color:#33333359;--dv-separator-border:#80808059;--dv-paneview-header-border-color:#333;--dv-scrollbar-background-color:#00000040}.dockview-theme-light .dv-drop-target-container .dv-drop-target-anchor.dv-drop-target-anchor-container-changed{opacity:0;transition:none}.dockview-theme-vs{--dv-paneview-active-outline-color:#1e90ff;--dv-tabs-and-actions-container-font-size:13px;--dv-tabs-and-actions-container-height:35px;--dv-drag-over-background-color:#53595d80;--dv-drag-over-border-color:#0000;--dv-tabs-container-scrollbar-color:#888;--dv-icon-hover-background-color:#5a5d5e4f;--dv-floating-box-shadow:8px 8px 8px 0px #53595d80;--dv-overlay-z-index:999;--dv-tab-font-size:inherit;--dv-border-radius:0px;--dv-tab-margin:0;--dv-sash-color:#0000;--dv-active-sash-color:#0000;--dv-active-sash-transition-duration:0.1s;--dv-active-sash-transition-delay:0.5s;--dv-group-view-background-color:#1e1e1e;--dv-tabs-and-actions-container-background-color:#252526;--dv-activegroup-visiblepanel-tab-background-color:#1e1e1e;--dv-activegroup-hiddenpanel-tab-background-color:#2d2d2d;--dv-inactivegroup-visiblepanel-tab-background-color:#1e1e1e;--dv-inactivegroup-hiddenpanel-tab-background-color:#2d2d2d;--dv-tab-divider-color:#1e1e1e;--dv-activegroup-hiddenpanel-tab-color:#969696;--dv-inactivegroup-visiblepanel-tab-color:#8f8f8f;--dv-inactivegroup-hiddenpanel-tab-color:#626262;--dv-separator-border:#444;--dv-paneview-header-border-color:#ccc3;--dv-tabs-and-actions-container-background-color:#2d2d30;--dv-tabs-and-actions-container-height:20px;--dv-tabs-and-actions-container-font-size:11px;--dv-activegroup-visiblepanel-tab-background-color:#007acc;--dv-inactivegroup-visiblepanel-tab-background-color:#3f3f46;--dv-activegroup-visiblepanel-tab-color:#fff;--dv-activegroup-hiddenpanel-tab-color:#fff;--dv-inactivegroup-visiblepanel-tab-color:#fff;--dv-inactivegroup-hiddenpanel-tab-color:#fff}.dockview-theme-vs .dv-drop-target-container .dv-drop-target-anchor.dv-drop-target-anchor-container-changed{opacity:0;transition:none}.dockview-theme-vs .dv-groupview.dv-active-group>.dv-tabs-and-actions-container{border-bottom:2px solid var(--dv-activegroup-visiblepanel-tab-background-color);box-sizing:initial}.dockview-theme-vs .dv-groupview.dv-active-group>.dv-tabs-and-actions-container .dv-tab.dv-active-tab{border-top:2px solid var(--dv-activegroup-visiblepanel-tab-background-color)}.dockview-theme-vs .dv-groupview.dv-active-group>.dv-tabs-and-actions-container .dv-tab.dv-inactive-tab{border-top:2px solid var(--dv-activegroup-hiddenpanel-tab-background-color)}.dockview-theme-vs .dv-groupview.dv-inactive-group>.dv-tabs-and-actions-container{border-bottom:2px solid var(--dv-inactivegroup-visiblepanel-tab-background-color);box-sizing:initial}.dockview-theme-vs .dv-groupview.dv-inactive-group>.dv-tabs-and-actions-container .dv-tab.dv-active-tab{border-top:2px solid var(--dv-inactivegroup-visiblepanel-tab-background-color)}.dockview-theme-vs .dv-groupview.dv-inactive-group>.dv-tabs-and-actions-container .dv-tab.dv-inactive-tab{border-top:2px solid var(--dv-inactivegroup-hiddenpanel-tab-background-color)}.dockview-theme-abyss{--dv-paneview-active-outline-color:#1e90ff;--dv-tabs-and-actions-container-font-size:13px;--dv-tabs-and-actions-container-height:35px;--dv-drag-over-background-color:#53595d80;--dv-drag-over-border-color:#0000;--dv-tabs-container-scrollbar-color:#888;--dv-icon-hover-background-color:#5a5d5e4f;--dv-floating-box-shadow:8px 8px 8px 0px #53595d80;--dv-overlay-z-index:999;--dv-tab-font-size:inherit;--dv-border-radius:0px;--dv-tab-margin:0;--dv-sash-color:#0000;--dv-active-sash-color:#0000;--dv-active-sash-transition-duration:0.1s;--dv-active-sash-transition-delay:0.5s;--dv-color-abyss-dark:#000c18;--dv-color-abyss:#10192c;--dv-color-abyss-light:#1c1c2a;--dv-color-abyss-lighter:#2b2b4a;--dv-color-abyss-accent:#5b1ecf;--dv-color-abyss-primary-text:#fff;--dv-color-abyss-secondary-text:#9497a9;--dv-group-view-background-color:var(--dv-color-abyss-dark);--dv-tabs-and-actions-container-background-color:var(
      --dv-color-abyss-light
  );--dv-activegroup-visiblepanel-tab-background-color:var(
      --dv-color-abyss-dark
  );--dv-activegroup-hiddenpanel-tab-background-color:var(--dv-color-abyss);--dv-inactivegroup-visiblepanel-tab-background-color:var(
      --dv-color-abyss-dark
  );--dv-inactivegroup-hiddenpanel-tab-background-color:var(--dv-color-abyss);--dv-tab-divider-color:var(--dv-color-abyss-lighter);--dv-activegroup-visiblepanel-tab-color:#fff;--dv-activegroup-hiddenpanel-tab-color:#ffffff80;--dv-inactivegroup-visiblepanel-tab-color:#ffffff80;--dv-inactivegroup-hiddenpanel-tab-color:#ffffff40;--dv-separator-border:var(--dv-color-abyss-lighter);--dv-paneview-header-border-color:var(--dv-color-abyss-lighter);--dv-paneview-active-outline-color:#596f99}.dockview-theme-abyss .dv-drop-target-container .dv-drop-target-anchor.dv-drop-target-anchor-container-changed{opacity:0;transition:none}.dockview-theme-dracula{--dv-paneview-active-outline-color:#1e90ff;--dv-tabs-and-actions-container-font-size:13px;--dv-tabs-and-actions-container-height:35px;--dv-drag-over-background-color:#53595d80;--dv-drag-over-border-color:#0000;--dv-tabs-container-scrollbar-color:#888;--dv-icon-hover-background-color:#5a5d5e4f;--dv-floating-box-shadow:8px 8px 8px 0px #53595d80;--dv-overlay-z-index:999;--dv-tab-font-size:inherit;--dv-border-radius:0px;--dv-tab-margin:0;--dv-sash-color:#0000;--dv-active-sash-color:#0000;--dv-active-sash-transition-duration:0.1s;--dv-active-sash-transition-delay:0.5s;--dv-group-view-background-color:#282a36;--dv-tabs-and-actions-container-background-color:#191a21;--dv-activegroup-visiblepanel-tab-background-color:#282a36;--dv-activegroup-hiddenpanel-tab-background-color:#21222c;--dv-inactivegroup-visiblepanel-tab-background-color:#282a36;--dv-inactivegroup-hiddenpanel-tab-background-color:#21222c;--dv-tab-divider-color:#191a21;--dv-activegroup-visiblepanel-tab-color:#f8f8f2;--dv-activegroup-hiddenpanel-tab-color:#6272a4;--dv-inactivegroup-visiblepanel-tab-color:#f8f8f280;--dv-inactivegroup-hiddenpanel-tab-color:#6272a480;--dv-separator-border:#bd93f9;--dv-paneview-header-border-color:#bd93f9;--dv-paneview-active-outline-color:#6272a4}.dockview-theme-dracula .dv-drop-target-container .dv-drop-target-anchor.dv-drop-target-anchor-container-changed{opacity:0;transition:none}.dockview-theme-dracula .dv-groupview.dv-active-group>.dv-tabs-and-actions-container .dv-tabs-container>.dv-tab.dv-active-tab{position:relative}.dockview-theme-dracula .dv-groupview.dv-active-group>.dv-tabs-and-actions-container .dv-tabs-container>.dv-tab.dv-active-tab:after{background-color:#94527e;content:"";height:1px;left:0;position:absolute;top:0;width:100%;z-index:999}.dockview-theme-dracula .dv-groupview.dv-inactive-group>.dv-tabs-and-actions-container .dv-tabs-container>.dv-tab.dv-active-tab{position:relative}.dockview-theme-dracula .dv-groupview.dv-inactive-group>.dv-tabs-and-actions-container .dv-tabs-container>.dv-tab.dv-active-tab:after{background-color:#5e3d5a;bottom:0;content:"";height:1px;left:0;position:absolute;width:100%;z-index:999}.dockview-theme-replit{--dv-paneview-active-outline-color:#1e90ff;--dv-tabs-and-actions-container-font-size:13px;--dv-tabs-and-actions-container-height:35px;--dv-drag-over-background-color:#53595d80;--dv-drag-over-border-color:#0000;--dv-tabs-container-scrollbar-color:#888;--dv-icon-hover-background-color:#5a5d5e4f;--dv-floating-box-shadow:8px 8px 8px 0px #53595d80;--dv-overlay-z-index:999;--dv-tab-font-size:inherit;--dv-border-radius:0px;--dv-tab-margin:0;--dv-sash-color:#0000;--dv-active-sash-color:#0000;--dv-active-sash-transition-duration:0.1s;--dv-active-sash-transition-delay:0.5s;--dv-group-view-background-color:#ebeced;--dv-tabs-and-actions-container-background-color:#fcfcfc;--dv-activegroup-visiblepanel-tab-background-color:#f0f1f2;--dv-activegroup-hiddenpanel-tab-background-color:#fcfcfc;--dv-inactivegroup-visiblepanel-tab-background-color:#f0f1f2;--dv-inactivegroup-hiddenpanel-tab-background-color:#fcfcfc;--dv-tab-divider-color:#0000;--dv-activegroup-visiblepanel-tab-color:#333;--dv-activegroup-hiddenpanel-tab-color:#333;--dv-inactivegroup-visiblepanel-tab-color:#333;--dv-inactivegroup-hiddenpanel-tab-color:#333;--dv-separator-border:#0000;--dv-paneview-header-border-color:#333;--dv-sash-color:#cfd1d3;--dv-active-sash-color:#babbbb;background-color:#ebeced;box-sizing:border-box;padding:10px}.dockview-theme-replit .dv-drop-target-container .dv-drop-target-anchor.dv-drop-target-anchor-container-changed{opacity:0;transition:none}.dockview-theme-replit .dv-resize-container:has(>.dv-groupview){border-radius:8px}.dockview-theme-replit .dv-resize-container{border:none;border-radius:10px!important}.dockview-theme-replit .dv-groupview{border-radius:10px;overflow:hidden}.dockview-theme-replit .dv-groupview .dv-tabs-and-actions-container{border-bottom:1px solid #80808059}.dockview-theme-replit .dv-groupview .dv-tabs-and-actions-container .dv-tab{border-radius:8px;margin:4px}.dockview-theme-replit .dv-groupview .dv-tabs-and-actions-container .dv-tab .dv-svg{height:8px;width:8px}.dockview-theme-replit .dv-groupview .dv-tabs-and-actions-container .dv-tab:hover{background-color:#e4e5e6!important}.dockview-theme-replit .dv-groupview .dv-content-container{background-color:#fcfcfc}.dockview-theme-replit .dv-groupview.dv-active-group{border:1px solid #80808059}.dockview-theme-replit .dv-groupview.dv-inactive-group{border:1px solid #0000}.dockview-theme-replit .dv-vertical>.dv-sash-container>.dv-sash{background-color:initial}.dockview-theme-replit .dv-vertical>.dv-sash-container>.dv-sash:not(.disabled):after{background-color:var(--dv-sash-color);border-radius:2px;content:"";height:4px;left:50%;position:absolute;top:50%;transform:translate(-50%,-50%);width:40px}.dockview-theme-replit .dv-vertical>.dv-sash-container>.dv-sash:not(.disabled):active,.dockview-theme-replit .dv-vertical>.dv-sash-container>.dv-sash:not(.disabled):hover{background-color:initial}.dockview-theme-replit .dv-vertical>.dv-sash-container>.dv-sash:not(.disabled):active:after,.dockview-theme-replit .dv-vertical>.dv-sash-container>.dv-sash:not(.disabled):hover:after{background-color:var(--dv-active-sash-color)}.dockview-theme-replit .dv-horizontal>.dv-sash-container>.dv-sash{background-color:initial}.dockview-theme-replit .dv-horizontal>.dv-sash-container>.dv-sash:not(.disabled):after{background-color:var(--dv-sash-color);border-radius:2px;content:"";height:40px;left:50%;position:absolute;top:50%;transform:translate(-50%,-50%);width:4px}.dockview-theme-replit .dv-horizontal>.dv-sash-container>.dv-sash:not(.disabled):active,.dockview-theme-replit .dv-horizontal>.dv-sash-container>.dv-sash:not(.disabled):hover{background-color:initial}.dockview-theme-replit .dv-horizontal>.dv-sash-container>.dv-sash:not(.disabled):active:after,.dockview-theme-replit .dv-horizontal>.dv-sash-container>.dv-sash:not(.disabled):hover:after{background-color:var(--dv-active-sash-color)}.dockview-theme-abyss-spaced{--dv-paneview-active-outline-color:#1e90ff;--dv-tabs-and-actions-container-font-size:13px;--dv-tabs-and-actions-container-height:35px;--dv-drag-over-background-color:#53595d80;--dv-drag-over-border-color:#0000;--dv-tabs-container-scrollbar-color:#888;--dv-icon-hover-background-color:#5a5d5e4f;--dv-floating-box-shadow:8px 8px 8px 0px #53595d80;--dv-overlay-z-index:999;--dv-tab-font-size:inherit;--dv-border-radius:0px;--dv-tab-margin:0;--dv-sash-color:#0000;--dv-active-sash-color:#0000;--dv-active-sash-transition-duration:0.1s;--dv-active-sash-transition-delay:0.5s;--dv-tab-font-size:12px;--dv-tab-margin:0.5rem 0.25rem;--dv-tabs-and-actions-container-height:44px;--dv-border-radius:20px;--dv-color-abyss-dark:#0b0611;--dv-color-abyss:#16121f;--dv-color-abyss-light:#201d2b;--dv-color-abyss-lighter:#2a2837;--dv-color-abyss-accent:#5b1ecf;--dv-color-abyss-primary-text:#fff;--dv-color-abyss-secondary-text:#9497a9;--dv-drag-over-border:2px solid var(--dv-color-abyss-accent);--dv-drag-over-background-color:"";--dv-group-view-background-color:var(--dv-color-abyss-dark);--dv-tabs-and-actions-container-background-color:var(--dv-color-abyss);--dv-activegroup-visiblepanel-tab-background-color:var(
      --dv-color-abyss-lighter
  );--dv-activegroup-hiddenpanel-tab-background-color:var(
      --dv-color-abyss-light
  );--dv-inactivegroup-visiblepanel-tab-background-color:var(
      --dv-color-abyss-lighter
  );--dv-inactivegroup-hiddenpanel-tab-background-color:var(
      --dv-color-abyss-light
  );--dv-tab-divider-color:#0000;--dv-activegroup-visiblepanel-tab-color:var(--dv-color-abyss-primary-text);--dv-activegroup-hiddenpanel-tab-color:var(
      --dv-color-abyss-secondary-text
  );--dv-inactivegroup-visiblepanel-tab-color:var(
      --dv-color-abyss-primary-text
  );--dv-inactivegroup-hiddenpanel-tab-color:var(
      --dv-color-abyss-secondary-text
  );--dv-separator-border:#0000;--dv-paneview-header-border-color:#333;--dv-active-sash-color:var(--dv-color-abyss-accent);--dv-floating-box-shadow:8px 8px 8px 0px #00000080;background-color:var(--dv-color-abyss-dark);box-sizing:border-box;padding:10px}.dockview-theme-abyss-spaced .dv-resize-container:has(>.dv-groupview){border-radius:8px}.dockview-theme-abyss-spaced .dv-sash{border-radius:4px}.dockview-theme-abyss-spaced .dv-drop-target-anchor{border-radius:calc(var(--dv-border-radius)/4)}.dockview-theme-abyss-spaced .dv-drop-target-anchor.dv-drop-target-content{border-radius:var(--dv-border-radius)}.dockview-theme-abyss-spaced .dv-resize-container{border:none;border-radius:var(--dv-border-radius)!important}.dockview-theme-abyss-spaced .dv-tabs-overflow-container,.dockview-theme-abyss-spaced .dv-tabs-overflow-dropdown-default{border-radius:8px;height:auto!important}.dockview-theme-abyss-spaced .dv-tab{border-radius:8px}.dockview-theme-abyss-spaced .dv-tab .dv-svg{height:8px;width:8px}.dockview-theme-abyss-spaced .dv-groupview{border-radius:var(--dv-border-radius)}.dockview-theme-abyss-spaced .dv-groupview .dv-tabs-and-actions-container{padding:0 calc(var(--dv-border-radius)/2)}.dockview-theme-abyss-spaced .dv-groupview .dv-content-container{background-color:var(--dv-tabs-and-actions-container-background-color)}.dockview-theme-abyss-spaced .dv-resize-container .dv-groupview{border:2px solid var(--dv-color-abyss-dark)}.dockview-theme-light-spaced{--dv-paneview-active-outline-color:#1e90ff;--dv-tabs-and-actions-container-font-size:13px;--dv-tabs-and-actions-container-height:35px;--dv-drag-over-background-color:#53595d80;--dv-drag-over-border-color:#0000;--dv-tabs-container-scrollbar-color:#888;--dv-icon-hover-background-color:#5a5d5e4f;--dv-floating-box-shadow:8px 8px 8px 0px #53595d80;--dv-overlay-z-index:999;--dv-tab-font-size:inherit;--dv-border-radius:0px;--dv-tab-margin:0;--dv-sash-color:#0000;--dv-active-sash-color:#0000;--dv-active-sash-transition-duration:0.1s;--dv-active-sash-transition-delay:0.5s;--dv-tab-font-size:12px;--dv-tab-margin:0.5rem 0.25rem;--dv-tabs-and-actions-container-height:44px;--dv-border-radius:20px;--dv-drag-over-border:2px solid #5b1ecf;--dv-drag-over-background-color:"";--dv-group-view-background-color:#f6f5f9;--dv-tabs-and-actions-container-background-color:#fff;--dv-activegroup-visiblepanel-tab-background-color:#ededf0;--dv-activegroup-hiddenpanel-tab-background-color:#f9f9fa;--dv-inactivegroup-visiblepanel-tab-background-color:#ededf0;--dv-inactivegroup-hiddenpanel-tab-background-color:#f9f9fa;--dv-tab-divider-color:#0000;--dv-activegroup-visiblepanel-tab-color:#686b82;--dv-activegroup-hiddenpanel-tab-color:#9497a9;--dv-inactivegroup-visiblepanel-tab-color:#686b82;--dv-inactivegroup-hiddenpanel-tab-color:#9497a9;--dv-separator-border:#0000;--dv-paneview-header-border-color:#333;--dv-floating-box-shadow:8px 8px 8px 0px #0000001a;--dv-scrollbar-background-color:#00000040;background-color:#f6f5f9;box-sizing:border-box;padding:10px}@supports (color:rgb(0 0 0/0)){.dockview-theme-light-spaced{--dv-active-sash-color:#5b1ecf}}.dockview-theme-light-spaced .dv-resize-container:has(>.dv-groupview){border-radius:8px}.dockview-theme-light-spaced .dv-sash{border-radius:4px}.dockview-theme-light-spaced .dv-drop-target-anchor{border-radius:calc(var(--dv-border-radius)/4)}.dockview-theme-light-spaced .dv-drop-target-anchor.dv-drop-target-content{border-radius:var(--dv-border-radius)}.dockview-theme-light-spaced .dv-resize-container{border:none;border-radius:var(--dv-border-radius)!important}.dockview-theme-light-spaced .dv-tabs-overflow-container,.dockview-theme-light-spaced .dv-tabs-overflow-dropdown-default{border-radius:8px;height:auto!important}.dockview-theme-light-spaced .dv-tab{border-radius:8px}.dockview-theme-light-spaced .dv-tab .dv-svg{height:8px;width:8px}.dockview-theme-light-spaced .dv-groupview{border-radius:var(--dv-border-radius)}.dockview-theme-light-spaced .dv-groupview .dv-tabs-and-actions-container{padding:0 calc(var(--dv-border-radius)/2)}.dockview-theme-light-spaced .dv-groupview .dv-content-container{background-color:var(--dv-tabs-and-actions-container-background-color)}.dockview-theme-light-spaced .dv-resize-container .dv-groupview{border:2px solid #ffffff1a}.dv-drop-target-container{--dv-transition-duration:300ms;height:100%;left:0;overflow:hidden;pointer-events:none;position:absolute;top:0;width:100%;z-index:9999}.dv-drop-target-container .dv-drop-target-anchor{backface-visibility:hidden;background-color:var(--dv-drag-over-background-color);border:var(--dv-drag-over-border);contain:layout paint;opacity:1;position:relative;transform:translateZ(0);transition:opacity var(--dv-transition-duration) ease-in,transform var(--dv-transition-duration) ease-out;will-change:transform,opacity}.dv-drop-target{--dv-transition-duration:70ms;position:relative}.dv-drop-target>.dv-drop-target-dropzone{height:100%;left:0;pointer-events:none;position:absolute;top:0;width:100%;z-index:1000}.dv-drop-target>.dv-drop-target-dropzone>.dv-drop-target-selection{background-color:var(--dv-drag-over-background-color);border:var(--dv-drag-over-border);box-sizing:border-box;height:100%;pointer-events:none;position:relative;transition:top var(--dv-transition-duration) ease-out,left var(--dv-transition-duration) ease-out,width var(--dv-transition-duration) ease-out,height var(--dv-transition-duration) ease-out,opacity var(--dv-transition-duration) ease-out;width:100%;will-change:transform}.dv-drop-target>.dv-drop-target-dropzone>.dv-drop-target-selection.dv-drop-target-top.dv-drop-target-small-vertical{border-top:1px solid var(--dv-drag-over-border-color)}.dv-drop-target>.dv-drop-target-dropzone>.dv-drop-target-selection.dv-drop-target-bottom.dv-drop-target-small-vertical{border-bottom:1px solid var(--dv-drag-over-border-color)}.dv-drop-target>.dv-drop-target-dropzone>.dv-drop-target-selection.dv-drop-target-left.dv-drop-target-small-horizontal{border-left:1px solid var(--dv-drag-over-border-color)}.dv-drop-target>.dv-drop-target-dropzone>.dv-drop-target-selection.dv-drop-target-right.dv-drop-target-small-horizontal{border-right:1px solid var(--dv-drag-over-border-color)}.dv-dockview{background-color:var(--dv-group-view-background-color);contain:layout;position:relative}.dv-dockview .dv-watermark-container{height:100%;left:0;position:absolute;top:0;width:100%;z-index:1}.dv-dockview .dv-overlay-render-container{position:relative}.dv-groupview.dv-active-group>.dv-tabs-and-actions-container .dv-tabs-container>.dv-tab.dv-active-tab{background-color:var(--dv-activegroup-visiblepanel-tab-background-color);color:var(--dv-activegroup-visiblepanel-tab-color)}.dv-groupview.dv-active-group>.dv-tabs-and-actions-container .dv-tabs-container>.dv-tab.dv-inactive-tab{background-color:var(--dv-activegroup-hiddenpanel-tab-background-color);color:var(--dv-activegroup-hiddenpanel-tab-color)}.dv-groupview.dv-inactive-group>.dv-tabs-and-actions-container .dv-tabs-container>.dv-tab.dv-active-tab{background-color:var(--dv-inactivegroup-visiblepanel-tab-background-color);color:var(--dv-inactivegroup-visiblepanel-tab-color)}.dv-groupview.dv-inactive-group>.dv-tabs-and-actions-container .dv-tabs-container>.dv-tab.dv-inactive-tab{background-color:var(--dv-inactivegroup-hiddenpanel-tab-background-color);color:var(--dv-inactivegroup-hiddenpanel-tab-color)}.dv-tab.dv-tab-dragging{background-color:var(--dv-activegroup-visiblepanel-tab-background-color);color:var(--dv-activegroup-visiblepanel-tab-color)}.dv-groupview{background-color:var(--dv-group-view-background-color);display:flex;flex-direction:column;height:100%;overflow:hidden}.dv-groupview:focus{outline:none}.dv-groupview>.dv-content-container{flex-grow:1;min-height:0;outline:none}.dv-branch-node,.dv-grid-view,.dv-root-wrapper{height:100%;width:100%}.dv-debug .dv-resize-container .dv-resize-handle-top{background-color:red}.dv-debug .dv-resize-container .dv-resize-handle-bottom{background-color:green}.dv-debug .dv-resize-container .dv-resize-handle-left{background-color:#ff0}.dv-debug .dv-resize-container .dv-resize-handle-right{background-color:blue}.dv-debug .dv-resize-container .dv-resize-handle-bottomleft,.dv-debug .dv-resize-container .dv-resize-handle-bottomright,.dv-debug .dv-resize-container .dv-resize-handle-topleft,.dv-debug .dv-resize-container .dv-resize-handle-topright{background-color:cyan}.dv-resize-container{--dv-overlay-z-index:var(--dv-overlay-z-index,999);backface-visibility:hidden;border:1px solid var(--dv-tab-divider-color);box-shadow:var(--dv-floating-box-shadow);position:absolute;transform:translateZ(0);will-change:transform,opacity;z-index:calc(var(--dv-overlay-z-index) - 2)}.dv-resize-container.dv-hidden{display:none}.dv-resize-container.dv-resize-container-dragging{opacity:.5;will-change:transform,opacity}.dv-resize-container .dv-resize-handle-top{top:-2px}.dv-resize-container .dv-resize-handle-bottom,.dv-resize-container .dv-resize-handle-top{cursor:ns-resize;height:4px;left:4px;position:absolute;width:calc(100% - 8px);z-index:var(--dv-overlay-z-index)}.dv-resize-container .dv-resize-handle-bottom{bottom:-2px}.dv-resize-container .dv-resize-handle-left{left:-2px}.dv-resize-container .dv-resize-handle-left,.dv-resize-container .dv-resize-handle-right{cursor:ew-resize;height:calc(100% - 8px);position:absolute;top:4px;width:4px;z-index:var(--dv-overlay-z-index)}.dv-resize-container .dv-resize-handle-right{right:-2px}.dv-resize-container .dv-resize-handle-topleft{cursor:nw-resize;height:4px;left:-2px;position:absolute;top:-2px;width:4px;z-index:var(--dv-overlay-z-index)}.dv-resize-container .dv-resize-handle-topright{cursor:ne-resize;height:4px;position:absolute;right:-2px;top:-2px;width:4px;z-index:var(--dv-overlay-z-index)}.dv-resize-container .dv-resize-handle-bottomleft{bottom:-2px;cursor:sw-resize;height:4px;left:-2px;position:absolute;width:4px;z-index:var(--dv-overlay-z-index)}.dv-resize-container .dv-resize-handle-bottomright{bottom:-2px;cursor:se-resize;height:4px;position:absolute;right:-2px;width:4px;z-index:var(--dv-overlay-z-index)}.dv-render-overlay{--dv-overlay-z-index:var(--dv-overlay-z-index,999);backface-visibility:hidden;contain:layout paint;height:100%;isolation:isolate;position:absolute;transform:translateZ(0);width:100%;will-change:transform;z-index:1}.dv-render-overlay.dv-render-overlay-float{z-index:calc(var(--dv-overlay-z-index) - 1)}.dv-debug .dv-render-overlay{outline:1px solid red;outline-offset:-1}.dv-pane-container{height:100%;width:100%}.dv-pane-container.dv-animated .dv-view{backface-visibility:hidden;transform:translateZ(0);transition:transform .15s ease-out;will-change:transform}.dv-pane-container .dv-view{display:flex;flex-direction:column;overflow:hidden;padding:0!important}.dv-pane-container .dv-view:not(:first-child):before{background-color:initial!important}.dv-pane-container .dv-view:not(:first-child) .dv-pane>.dv-pane-header{border-top:1px solid var(--dv-paneview-header-border-color)}.dv-pane-container .dv-view .dv-default-header{background-color:var(--dv-group-view-background-color);color:var(--dv-activegroup-visiblepanel-tab-color);cursor:pointer;display:flex;padding:0 8px}.dv-pane-container .dv-view .dv-default-header .dv-pane-header-icon{align-items:center;display:flex;justify-content:center}.dv-pane-container .dv-view .dv-default-header>span{flex-grow:1;padding-left:8px}.dv-pane-container:first-of-type>.dv-pane>.dv-pane-header{border-top:none!important}.dv-pane-container .dv-pane{display:flex;flex-direction:column;height:100%;overflow:hidden}.dv-pane-container .dv-pane .dv-pane-header{box-sizing:border-box;outline:none;position:relative;-webkit-user-select:none;user-select:none}.dv-pane-container .dv-pane .dv-pane-header.dv-pane-draggable{cursor:pointer}.dv-pane-container .dv-pane .dv-pane-header:focus-within:before,.dv-pane-container .dv-pane .dv-pane-header:focus:before{content:"";height:100%;left:0;outline:1px solid;outline-color:var(--dv-paneview-active-outline-color);outline-offset:-1px;outline-style:solid;outline-width:-1px;pointer-events:none;position:absolute;top:0;width:100%;z-index:5}.dv-pane-container .dv-pane .dv-pane-body{flex-grow:1;outline:none;overflow-x:hidden;overflow-y:auto;position:relative}.dv-pane-container .dv-pane .dv-pane-body:focus-within:before,.dv-pane-container .dv-pane .dv-pane-body:focus:before{content:"";height:100%;left:0;outline:1px solid;outline-color:var(--dv-paneview-active-outline-color);outline-offset:-1px;outline-style:solid;outline-width:-1px;pointer-events:none;position:absolute;top:0;width:100%;z-index:5}.dv-debug .dv-split-view-container .dv-sash-container .dv-sash.dv-enabled{background-color:#000}.dv-debug .dv-split-view-container .dv-sash-container .dv-sash.dv-disabled{background-color:orange}.dv-debug .dv-split-view-container .dv-sash-container .dv-sash.dv-maximum{background-color:green}.dv-debug .dv-split-view-container .dv-sash-container .dv-sash.dv-minimum{background-color:red}.dv-split-view-container{height:100%;overflow:hidden;position:relative;width:100%}.dv-split-view-container.dv-splitview-disabled>.dv-sash-container>.dv-sash{pointer-events:none}.dv-split-view-container.dv-animation .dv-sash,.dv-split-view-container.dv-animation .dv-view{backface-visibility:hidden;transform:translateZ(0);transition:transform .15s ease-out;will-change:transform}.dv-split-view-container.dv-horizontal{height:100%}.dv-split-view-container.dv-horizontal>.dv-sash-container>.dv-sash{height:100%;width:4px}.dv-split-view-container.dv-horizontal>.dv-sash-container>.dv-sash.dv-enabled{cursor:ew-resize}.dv-split-view-container.dv-horizontal>.dv-sash-container>.dv-sash.dv-disabled{cursor:default}.dv-split-view-container.dv-horizontal>.dv-sash-container>.dv-sash.dv-maximum{cursor:w-resize}.dv-split-view-container.dv-horizontal>.dv-sash-container>.dv-sash.dv-minimum{cursor:e-resize}.dv-split-view-container.dv-horizontal>.dv-view-container>.dv-view:not(:first-child):before{height:100%;width:1px}.dv-split-view-container.dv-vertical{width:100%}.dv-split-view-container.dv-vertical>.dv-sash-container>.dv-sash{height:4px;width:100%}.dv-split-view-container.dv-vertical>.dv-sash-container>.dv-sash.dv-enabled{cursor:ns-resize}.dv-split-view-container.dv-vertical>.dv-sash-container>.dv-sash.dv-disabled{cursor:default}.dv-split-view-container.dv-vertical>.dv-sash-container>.dv-sash.dv-maximum{cursor:n-resize}.dv-split-view-container.dv-vertical>.dv-sash-container>.dv-sash.dv-minimum{cursor:s-resize}.dv-split-view-container.dv-vertical>.dv-view-container>.dv-view{width:100%}.dv-split-view-container.dv-vertical>.dv-view-container>.dv-view:not(:first-child):before{height:1px;width:100%}.dv-split-view-container .dv-sash-container{height:100%;position:absolute;width:100%}.dv-split-view-container .dv-sash-container .dv-sash{background-color:initial;background-color:var(--dv-sash-color,#0000);outline:none;position:absolute;touch-action:none;user-select:none;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;z-index:99}.dv-split-view-container .dv-sash-container .dv-sash:not(.disabled):active,.dv-split-view-container .dv-sash-container .dv-sash:not(.disabled):hover{background-color:initial;background-color:var(--dv-active-sash-color,#0000);transition-delay:.5s;transition-delay:var(--dv-active-sash-transition-delay,.5s);transition-duration:.1s;transition-duration:var(--dv-active-sash-transition-duration,.1s);transition-property:background-color;transition-timing-function:ease-in-out}.dv-split-view-container .dv-view-container{height:100%;position:relative;width:100%}.dv-split-view-container .dv-view-container .dv-view{box-sizing:border-box;height:100%;overflow:auto;position:absolute}.dv-split-view-container.dv-separator-border .dv-view:not(:first-child):before{background-color:var(--dv-separator-border);content:" ";left:0;pointer-events:none;position:absolute;top:0;z-index:5}.dv-dragged{transform:translateZ(0)}.dv-tab{flex-shrink:0}.dv-tab:focus,.dv-tab:focus-within{position:relative}.dv-tab:focus-within:after,.dv-tab:focus:after{content:"";height:100%;left:0;outline:1px solid var(--dv-tab-divider-color)!important;outline-offset:-1px;pointer-events:none;position:absolute;top:0;width:100%;z-index:5}.dv-tab.dv-tab-dragging .dv-default-tab-action{background-color:var(--dv-activegroup-visiblepanel-tab-color)}.dv-tab.dv-active-tab .dv-default-tab .dv-default-tab-action{visibility:visible}.dv-tab.dv-inactive-tab .dv-default-tab .dv-default-tab-action{visibility:hidden}.dv-tab.dv-inactive-tab .dv-default-tab:hover .dv-default-tab-action{visibility:visible}.dv-tab .dv-default-tab{align-items:center;display:flex;height:100%;position:relative;text-overflow:ellipsis;white-space:nowrap}.dv-tab .dv-default-tab .dv-default-tab-content{flex-grow:1;margin-right:4px}.dv-tab .dv-default-tab .dv-default-tab-action{align-items:center;box-sizing:border-box;display:flex;justify-content:center;padding:4px}.dv-tab .dv-default-tab .dv-default-tab-action:hover{background-color:var(--dv-icon-hover-background-color);border-radius:2px}.dv-tabs-overflow-dropdown-default{align-items:center;color:var(--dv-activegroup-hiddenpanel-tab-color);cursor:pointer;display:flex;flex-shrink:0;height:100%;margin:var(--dv-tab-margin);padding:.25rem .5rem}.dv-tabs-overflow-dropdown-default>span{padding-left:.25rem}.dv-tabs-overflow-dropdown-default>svg{transform:rotate(90deg)}.dv-tabs-container{display:flex;height:100%;overflow:auto;scrollbar-width:thin;transform:translateZ(0);will-change:scroll-position}.dv-tabs-container.dv-horizontal .dv-tab:not(:first-child):before{background-color:var(--dv-tab-divider-color);content:" ";height:100%;left:0;pointer-events:none;position:absolute;top:0;width:1px;z-index:5}.dv-tabs-container::-webkit-scrollbar{height:3px}.dv-tabs-container::-webkit-scrollbar-track{background:#0000}.dv-tabs-container::-webkit-scrollbar-thumb{background:var(--dv-tabs-container-scrollbar-color)}.dv-scrollable>.dv-tabs-container{overflow:hidden}.dv-tab{-webkit-user-drag:element;box-sizing:border-box;cursor:pointer;font-size:var(--dv-tab-font-size);margin:var(--dv-tab-margin);outline:none;padding:.25rem .5rem;position:relative}.dv-tabs-overflow-container{background-color:var(--dv-group-view-background-color);border:1px solid var(--dv-tab-divider-color);flex-direction:column;height:auto}.dv-tabs-overflow-container .dv-tab:not(:last-child){border-bottom:1px solid var(--dv-tab-divider-color)}.dv-tabs-overflow-container .dv-active-tab{background-color:var(--dv-activegroup-visiblepanel-tab-background-color);color:var(--dv-activegroup-visiblepanel-tab-color)}.dv-tabs-overflow-container .dv-inactive-tab{background-color:var(--dv-activegroup-hiddenpanel-tab-background-color);color:var(--dv-activegroup-hiddenpanel-tab-color)}.dv-tabs-and-actions-container{background-color:var(--dv-tabs-and-actions-container-background-color);box-sizing:border-box;display:flex;flex-shrink:0;font-size:var(--dv-tabs-and-actions-container-font-size);height:var(--dv-tabs-and-actions-container-height)}.dv-tabs-and-actions-container.dv-single-tab.dv-full-width-single-tab .dv-scrollable,.dv-tabs-and-actions-container.dv-single-tab.dv-full-width-single-tab .dv-tabs-container{flex-grow:1}.dv-tabs-and-actions-container.dv-single-tab.dv-full-width-single-tab .dv-tabs-container .dv-tab{flex-grow:1;padding:0}.dv-tabs-and-actions-container.dv-single-tab.dv-full-width-single-tab .dv-void-container{flex-grow:0}.dv-tabs-and-actions-container .dv-void-container{display:flex;flex-grow:1}.dv-tabs-and-actions-container .dv-void-container.dv-draggable{cursor:grab}.dv-tabs-and-actions-container .dv-right-actions-container{display:flex}.dv-watermark{display:flex;height:100%}.dockview-container{position:relative}.dockview,.dockview-container{height:100%;width:100%}.dockview-panel-content{box-sizing:border-box;display:flex;flex-direction:column;height:100%;min-width:0;overflow:auto;width:100%!important}.dockview .dv-groupview{border-bottom:1px solid var(--dv-panel-border-color)!important;border-left:none!important;border-right:1px solid var(--dv-panel-border-color)!important;border-top:none!important;box-sizing:border-box}.dockview-panel-content{border:none!important}.hierarchy-panel .hierarchy-toolbar{border-left:none!important;border-right:none!important;border-top:none!important}.hyperparameters-panel>div:first-child,.properties-panel>div:first-child,.settings-panel>div:first-child,.timeline-panel>div:first-child{border:none!important}.dockview>.dv-react-part>.split-view-container{box-sizing:border-box;padding:1px}.node-editor-panel,.viewport-panel{overflow:hidden}.hierarchy-panel,.hyperparameters-panel,.properties-panel,.settings-panel,.timeline-panel{border:none!important;box-sizing:border-box;max-width:100%!important;min-width:0!important;overflow-x:hidden;width:100%!important}.dockview .dv-panel-body,.dockview .dv-panel-content,.dockview .panel-body,.dockview [class*=panel-content]{margin:0!important;max-width:100%!important;min-width:0!important;padding:0!important;width:100%!important}.dockview .dv-paneview,.dockview .dv-paneview-content{border-top:none!important;margin:0!important;padding:0!important}.dockview .dv-groupview-container{border-top:none!important;margin-top:0!important;padding-top:0!important}.dockview-panel-content.viewport-panel{margin:0!important;overflow:hidden;padding:0!important}.dockview [style*="width: 250px"],.dockview [style*="width: 350px"],.dockview [style*="width: 400px"],.dockview [style*="width:250px"],.dockview [style*="width:350px"],.dockview [style*="width:400px"]{max-width:100%!important;min-width:0!important;width:100%!important}.dockview-theme-dark{--dv-activegroup-visiblepanel-tab-background-color:#242424;--dv-activegroup-visiblepanel-tab-color:#fff;--dv-activegroup-hiddenpanel-tab-background-color:#1a1a1a;--dv-activegroup-hiddenpanel-tab-color:grey;--dv-inactivegroup-visiblepanel-tab-background-color:#242424;--dv-inactivegroup-visiblepanel-tab-color:#fff;--dv-inactivegroup-hiddenpanel-tab-background-color:#1a1a1a;--dv-inactivegroup-hiddenpanel-tab-color:grey;--dv-tabs-and-actions-container-background-color:#1a1a1a;--dv-tabs-container-background-color:#1a1a1a;--dv-group-view-background-color:#1a1a1a;--dv-tab-divider-color:#0000;--dv-panel-border-color:#3a3a3a;--dv-separator-border:1px solid #3a3a3a;--dv-paneview-header-background-color:#1e1e1e;--dv-paneview-header-border-color:#3a3a3a;--dv-group-header-background-color:#1e1e1e;--dv-group-header-border-color:#3a3a3a;--dv-drag-over-background-color:#0066cc1a;--dv-drag-over-border-color:#06c;--dv-activegroup-header-background-color:#1e1e1e;--dv-inactivegroup-header-background-color:#1a1a1a}.dockview-theme-dark .dv-default-tab,.dockview-theme-dark .dv-default-tab:focus,.dockview-theme-dark .dv-default-tab:focus-visible,.dockview-theme-dark [role=tab],.dockview-theme-dark [role=tab]:focus,.dockview-theme-dark [role=tab]:focus-visible{border:none!important;box-shadow:none!important;outline:none!important}.dockview-theme-dark .dv-default-tab-content,.dockview-theme-dark .dv-default-tab>span,.dockview-theme-dark [role=tab]>span{background:#0000!important;background-color:initial!important}.dockview-theme-dark .dv-tab.dv-active-tab{background-color:#242424!important;color:#fff!important}.dockview-theme-dark .dv-tab.dv-inactive-tab{background-color:#1a1a1a!important;color:grey!important}.dockview-theme-dark .dv-tab.dv-inactive-tab:hover{background-color:#1f1f1f!important;color:silver!important}.dockview-theme-light{--dv-activegroup-visiblepanel-tab-background-color:#fff;--dv-activegroup-visiblepanel-tab-color:#222;--dv-activegroup-hiddenpanel-tab-background-color:#e5e5e5;--dv-activegroup-hiddenpanel-tab-color:#666;--dv-inactivegroup-visiblepanel-tab-background-color:#fff;--dv-inactivegroup-visiblepanel-tab-color:#222;--dv-inactivegroup-hiddenpanel-tab-background-color:#e5e5e5;--dv-inactivegroup-hiddenpanel-tab-color:#666;--dv-tabs-and-actions-container-background-color:#d0d0d0;--dv-tabs-container-background-color:#d0d0d0;--dv-group-view-background-color:#f5f5f5;--dv-tab-divider-color:#0000;--dv-panel-border-color:grey;--dv-separator-border:1px solid #ddd;--dv-paneview-header-background-color:#eee;--dv-paneview-header-border-color:#ddd;--dv-group-header-background-color:#eee;--dv-group-header-border-color:#ddd;--dv-drag-over-background-color:#4f9eff1a;--dv-drag-over-border-color:#4f9eff}.dockview-theme-light .dv-default-tab,.dockview-theme-light .dv-default-tab:focus,.dockview-theme-light .dv-default-tab:focus-visible,.dockview-theme-light [role=tab],.dockview-theme-light [role=tab]:focus,.dockview-theme-light [role=tab]:focus-visible{border:none!important;box-shadow:none!important;outline:none!important}.dockview-theme-light .dv-default-tab-content,.dockview-theme-light .dv-default-tab>span,.dockview-theme-light [role=tab]>span{background:#0000!important;background-color:initial!important}.dockview-theme-light .dv-tab.dv-active-tab{background-color:#fff!important;color:#222!important}.dockview-theme-light .dv-tab.dv-inactive-tab{background-color:#e5e5e5!important;color:#666!important}.dockview-theme-light .dv-tab.dv-inactive-tab:hover{background-color:#f0f0f0!important;color:#444!important}.dockview .dv-default-tab{font-size:13px;margin-right:2px;padding:6px 14px;position:relative;transition:background-color .2s,color .2s}.dockview .dv-tab{border-radius:5px 5px 0 0!important;overflow:hidden}.dockview .dv-tab .dv-default-tab{align-items:center;background:#0000!important;border:none!important;border-radius:inherit!important;display:flex;height:100%;padding:0!important}.dockview .dv-tab .dv-default-tab-content{font-size:12px!important;font-weight:400!important;letter-spacing:.3px!important}.dockview .dv-default-tab:after{display:none!important}.dockview .panel-header{align-items:center;background:var(--dv-paneview-header-background-color);border-bottom:1px solid var(--dv-paneview-header-border-color);display:flex;height:32px;padding:0 12px}.dockview .dv-tabs-and-actions-container{height:32px!important;margin-bottom:0!important}.dockview-theme-dark .dv-tabs-and-actions-container{border-bottom:2px solid #242424!important}.dockview-theme-light .dv-tabs-and-actions-container{border-bottom:2px solid #fff!important}.dockview .dv-groupview-header{margin-bottom:0!important;padding-bottom:0!important}.dockview .dv-paneview{margin-top:0!important;padding-top:0!important}.dockview .dv-tab{align-items:center!important;display:inline-flex!important;font-size:13px!important;height:28px!important;justify-content:space-between!important;line-height:28px!important;margin:2px 2px 0!important;padding:0 5px 0 12px!important}.dockview .dv-tab:first-child{margin-left:0!important}.dockview .dv-groupview-content{border-top:none!important}.dockview .dv-tabs-container{padding-left:4px!important}.dockview .dv-tabs-and-actions-container,.dockview .dv-tabs-container{pointer-events:auto!important;-webkit-user-select:none!important;user-select:none!important}.dockview .dv-tabs-container{-webkit-user-drag:none!important;-moz-user-drag:none!important;user-drag:none!important}.dockview .dv-groupview-header,.dockview .dv-tabs-and-actions-container>div:not(.dv-tab){-webkit-user-drag:none!important;-moz-user-drag:none!important;user-drag:none!important;cursor:default!important}.dockview .dv-tab{pointer-events:auto!important;position:relative;z-index:10}.dockview .dv-tab:active{cursor:grabbing!important}.dockview .dv-tabs-container:after{-webkit-user-drag:none!important;user-drag:none!important;content:"";flex:1 1;pointer-events:auto}.dockview .dv-tabs-and-actions-container[draggable=true],.dockview .dv-tabs-container[draggable=true]{-webkit-user-drag:none!important;-moz-user-drag:none!important;user-drag:none!important}.dockview .dv-group-actions{pointer-events:auto!important}.dockview .dv-default-tab-actions{margin-left:auto!important;padding-left:6px!important;pointer-events:auto!important}.dockview .dv-default-tab-action{align-items:center!important;border-radius:4px!important;display:flex!important;height:18px!important;justify-content:center!important;transition:background-color .15s ease!important;width:18px!important}.dockview .dv-default-tab-action:hover{background-color:#ffffff1a!important}.dockview-theme-light .dv-default-tab-action:hover{background-color:#0000001a!important}.dockview .split-view-container .sash{background-color:initial;transition:background-color .2s}.dockview .split-view-container .sash:hover{background-color:var(--dv-drag-over-border-color)}.dockview .split-view-container .sash.vertical{margin-left:-2px;width:4px}.dockview .split-view-container .sash.horizontal{height:4px;margin-top:-2px}.dockview .dv-floating-box{border-radius:8px;box-shadow:0 8px 32px #0003}.dockview-theme-dark .dv-floating-box{background-color:#1e1e1e;border:1px solid #3a3a3a}.dockview-theme-light .dv-floating-box{background-color:#fff;border:1px solid #ddd}.dockview .watermark{align-items:center;display:flex;flex-direction:column;height:100%;justify-content:center;opacity:.5}.dockview-theme-dark .watermark{color:#666}.dockview-theme-light .watermark{color:#aaa}.dockview .group-actions{align-items:center;display:flex;padding:0 8px}.dockview .group-actions button{background:none;border:none;border-radius:3px;color:inherit;margin-left:4px;padding:4px;transition:background-color .2s}.dockview-theme-dark .group-actions button:hover{background-color:#ffffff1a}.dockview-theme-light .group-actions button:hover{background-color:#0000000d}.dockview-theme-dark ::-webkit-scrollbar{background-color:#1e1e1e}.dockview-theme-dark ::-webkit-scrollbar-thumb{background-color:#4a4a4a}.dockview-theme-dark ::-webkit-scrollbar-thumb:hover{background-color:#5a5a5a}.dockview-theme-light ::-webkit-scrollbar{background-color:#f5f5f5}.dockview-theme-light ::-webkit-scrollbar-thumb{background-color:silver}.dockview-theme-light ::-webkit-scrollbar-thumb:hover{background-color:#a0a0a0}.dockview .tab-icon{align-items:center;display:inline-flex;flex-shrink:0;justify-content:center;margin-right:6px;opacity:.7}.dockview .dv-active-tab .tab-icon{opacity:1}.dockview .dv-default-tab{align-items:center!important;display:flex!important}.modal-overlay{align-items:center;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background-color:#000000b3;bottom:0;display:flex;justify-content:center;left:0;position:fixed;right:0;top:0;z-index:20000}.modal-content{animation:modalSlideIn .2s ease-out;backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);background-color:#1a1a1ad9;border:1px solid #ffffff1a;border-radius:var(--radius-xl);box-shadow:var(--shadow-xl);max-width:500px;width:90%}body.light-theme .modal-content{background-color:#ffffffd9;border:1px solid #0000001a}.server-selector-modal{max-width:600px}@keyframes modalSlideIn{0%{opacity:0;transform:translateY(-20px)}to{opacity:1;transform:translateY(0)}}.modal-header{align-items:center;border-bottom:1px solid var(--border-default);display:flex;justify-content:space-between;padding:20px 24px}.modal-header h2{color:var(--text-primary);font-size:20px;margin:0}.modal-close{align-items:center;background:none;border:none;border-radius:var(--radius-md);color:var(--text-muted);cursor:pointer;display:flex;font-size:28px;height:32px;justify-content:center;padding:0;transition:all var(--transition-fast);width:32px}.modal-close:hover{background-color:var(--bg-tertiary);color:var(--text-primary)}.modal-body{padding:24px}.modal-body label{color:var(--text-secondary);display:block;font-size:14px;margin-bottom:8px}.server-help-text{color:var(--text-muted);font-size:12px;margin:8px 0 0}.server-input-group{margin-bottom:24px}.input-row{display:flex;gap:12px;margin-bottom:8px}.input-field{display:flex;flex-direction:column}.address-field{flex:1 1}.port-field{width:100px}.input-field label{color:var(--text-secondary);display:block;font-size:13px;margin-bottom:6px}.input-field input{background-color:var(--input-bg);border:1px solid var(--input-border);border-radius:var(--radius-md);color:var(--input-text);font-family:var(--font-family-mono);font-size:var(--font-size-sm);padding:8px 10px;transition:all var(--transition-fast);width:100%}.input-field input:hover{background-color:var(--input-bg-hover);border-color:var(--input-border-hover)}.input-field input:focus{background-color:var(--input-bg-hover);border-color:var(--input-border-focus);outline:none}.server-history{border-top:1px solid var(--border-default);margin-top:24px;padding-top:16px}.server-history h3{color:var(--text-secondary);font-size:14px;font-weight:500;margin:0 0 12px}.history-list{display:flex;flex-direction:column;gap:8px;max-height:200px;overflow-y:auto}.history-item{align-items:center;background-color:var(--bg-secondary);border:1px solid var(--border-subtle);border-radius:var(--radius-md);cursor:pointer;display:flex;justify-content:space-between;padding:10px 12px;transition:all var(--transition-fast)}.history-item:hover{background-color:var(--bg-tertiary);border-color:var(--border-default)}.history-item.online{animation:breathe 2s ease-in-out infinite;border-color:#2a4a2a}@keyframes breathe{0%{box-shadow:0 0 0 0 #4caf5066}50%{box-shadow:0 0 0 4px #4caf5033}to{box-shadow:0 0 0 0 #4caf5066}}.history-server{display:flex;flex-direction:column;gap:2px}.history-address{color:var(--text-primary);font-family:var(--font-mono);font-size:13px}.history-time{color:var(--text-muted);font-size:11px}.history-item .status-indicator{align-items:center;display:flex;flex-shrink:0;height:12px;justify-content:center;position:relative;width:12px}.history-item .status-indicator:before{border-radius:50%;content:"";display:block;height:4px;position:absolute;width:4px}.history-item .status-indicator.online:before{background-color:#4caf50}.history-item .status-indicator.offline:before{background-color:#f44336}.history-item .status-indicator.checking:before{animation:pulse 1.5s ease-in-out infinite;background-color:#ff9800}@keyframes pulse{0%{opacity:1;transform:scale(1)}50%{opacity:.7;transform:scale(1.2)}to{opacity:1;transform:scale(1)}}@keyframes spin{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}.history-list::-webkit-scrollbar{width:6px}.history-list::-webkit-scrollbar-track{background:var(--scrollbar-track);border-radius:3px}.history-list::-webkit-scrollbar-thumb{background:var(--scrollbar-thumb);border-radius:3px}.history-list::-webkit-scrollbar-thumb:hover{background:var(--scrollbar-thumb-hover)}.modal-footer{border-top:1px solid var(--border-default);display:flex;gap:12px;justify-content:flex-end;padding:16px 24px}.modal-footer:has(>:only-child){justify-content:center}.cancel-button{background-color:var(--btn-bg);border:1px solid var(--btn-border);border-radius:var(--radius-lg);color:var(--btn-text);cursor:pointer;font-size:var(--font-size-sm);padding:8px 20px;transition:all var(--transition-fast)}.cancel-button:hover{background-color:var(--btn-bg-hover);border-color:var(--border-hover)}.cancel-button:active{transform:scale(.98)}.cancel-button:disabled{cursor:not-allowed;opacity:.5}.connect-modal-button{background-color:var(--accent-primary);border:none;border-radius:var(--radius-lg);color:#fff;cursor:pointer;font-size:var(--font-size-sm);font-weight:500;padding:8px 20px;transition:all var(--transition-fast)}.connect-modal-button:hover{background-color:var(--accent-hover);box-shadow:0 2px 8px #0066cc4d}.connect-modal-button:active{transform:scale(.98)}.connect-modal-button:disabled{background-color:var(--btn-bg);box-shadow:none;color:var(--text-muted);cursor:not-allowed}.continue-offline-button{background-color:var(--btn-bg);border:1px solid var(--btn-border);border-radius:var(--radius-lg);color:var(--text-primary);cursor:pointer;font-size:var(--font-size-sm);padding:8px 20px;transition:all var(--transition-fast)}.continue-offline-button:hover{background-color:var(--btn-bg-hover);border-color:var(--border-hover)}.continue-offline-button:disabled{cursor:not-allowed;opacity:.5}.light-theme .modal-overlay{background-color:#ffffff80}.light-theme .modal-header{border-bottom-color:#e0e0e0}.light-theme .modal-header h2{color:#333}.light-theme .modal-close{color:#999}.light-theme .modal-close:hover{background-color:#f0f0f0;color:#333}.light-theme .modal-body label{color:#666}.light-theme .modal-body input{background-color:#f5f5f5;border-color:#d0d0d0;color:#333}.light-theme .modal-body input:focus{border-color:#06c}.light-theme .server-help-text{color:#666}.light-theme .preset-button{background-color:#f0f0f0;border-color:#d0d0d0;color:#666}.light-theme .preset-button:hover{background-color:#e0e0e0;border-color:silver;color:#333}.light-theme .modal-footer{border-top-color:#e0e0e0}.light-theme .cancel-button{background-color:#f0f0f0;border-color:#d0d0d0;color:#333}.light-theme .cancel-button:hover{background-color:#e0e0e0;border-color:silver}.light-theme .connect-modal-button{background-color:#06c;color:#fff}.light-theme .connect-modal-button:hover{background-color:#07d}.light-theme .connect-modal-button:disabled{background-color:#ccc;color:#999}.light-theme .input-field label{color:#666}.light-theme .input-field input{background-color:#f5f5f5;border-color:#d0d0d0;color:#333}.light-theme .input-field input:focus{border-color:#06c}.light-theme .server-history{border-top-color:#e0e0e0}.light-theme .server-history h3{color:#666}.light-theme .history-item{background-color:#f5f5f5;border-color:#e0e0e0}.light-theme .history-item:hover{background-color:#eee;border-color:#d0d0d0}.light-theme .history-item.online{border-color:#4caf50}.light-theme .history-address{color:#333}.light-theme .history-time{color:#999}.light-theme .history-list::-webkit-scrollbar-track{background:#f5f5f5}.light-theme .history-list::-webkit-scrollbar-thumb{background:silver}.light-theme .history-list::-webkit-scrollbar-thumb:hover{background:#b0b0b0}.light-theme .continue-offline-button{background-color:#ccc;border-color:#bbb;color:#333}.light-theme .continue-offline-button:hover{background-color:#bbb;border-color:#aaa}.tutorial-section{background-color:var(--bg-secondary);border:1px solid var(--border-default);border-radius:var(--radius-md);margin-top:20px;padding:16px}.tutorial-text{color:var(--text-secondary);font-size:13px;line-height:1.4;margin:0}.tutorial-link{color:var(--accent-primary);font-weight:500;text-decoration:none}.tutorial-link:hover{color:var(--accent-hover);text-decoration:underline}.drag-drop-overlay{align-items:center;background-color:#000c;bottom:0;display:flex;justify-content:center;left:0;pointer-events:none;position:fixed;right:0;top:0;z-index:1000}.drag-drop-content{color:#fff;text-align:center}.drag-drop-icon{font-size:64px;margin-bottom:20px}.drag-drop-content h2{font-size:24px;margin-bottom:10px}.drag-drop-content p{font-size:16px;opacity:.8}.upload-progress-overlay{align-items:center;background-color:#000c;bottom:0;display:flex;justify-content:center;left:0;position:fixed;right:0;top:0;z-index:1000}.upload-progress-content{background-color:var(--bg-elevated);border:1px solid var(--border-default);border-radius:var(--radius-xl);box-shadow:var(--shadow-xl);min-width:300px;padding:30px;text-align:center}.upload-progress-content h3{color:var(--text-primary);margin-bottom:20px}.progress-bar{background-color:var(--bg-primary);border-radius:var(--radius-full);height:20px;margin-bottom:10px;overflow:hidden;width:100%}.progress-fill{background-color:var(--accent-primary);height:100%;transition:width .3s ease}.upload-progress-content p{color:var(--text-primary);margin:0}
/*# sourceMappingURL=main.0c927d5b.css.map*/