:root,.dark{--bg-primary: #1A1C1E;--bg-panel: #222427;--bg-canvas: #121416;--bg-header: #282A2D;--bg-hover: rgba(161, 201, 255, .08);--bg-active: rgba(161, 201, 255, .12);--bg-selected: rgba(161, 201, 255, .16);--border-color: #3C3842;--border-hover: #938F99;--border-light: #36343B;--text-primary: #E6E1E5;--text-secondary: #CAC4D0;--text-muted: #938F99;--text-disabled: #49454F;--accent: #A1C9FF;--accent-hover: #C1E8FF;--accent-active: #7EB0F0;--accent-focus: rgba(161, 201, 255, .4);--accent-subtle: rgba(161, 201, 255, .12);--success: #B4E197;--warning: #F2C94C;--error: #F2B8B5;--info: #A8C7FA;--shadow-sm: 0px 1px 2px rgba(0, 0, 0, .3), 0px 1px 3px 1px rgba(0, 0, 0, .15);--shadow-md: 0px 1px 2px rgba(0, 0, 0, .3), 0px 2px 6px 2px rgba(0, 0, 0, .15);--shadow-lg: 0px 4px 8px 3px rgba(0, 0, 0, .15), 0px 1px 3px rgba(0, 0, 0, .3);--scrollbar-track: #1C1B1F;--scrollbar-thumb: #49454F;--scrollbar-thumb-hover: #938F99;--font-size-base: 13px;--font-size-secondary: 12px;--font-size-label: 11px;--control-h-sm: 24px;--control-h-md: 28px;--control-h-lg: 32px;--radius-sm: 4px;--radius-md: 8px;--radius-lg: 12px;--radius-xl: 16px}.light{--bg-primary: #F8FAFF;--bg-panel: #FFFFFF;--bg-canvas: #FFFFFF;--bg-header: #E0E2EC;--bg-hover: rgba(0, 97, 164, .08);--bg-active: rgba(0, 97, 164, .12);--bg-selected: rgba(0, 97, 164, .16);--border-color: #9A949E;--border-hover: #49454F;--border-light: #E7E0EC;--text-primary: #1C1B1F;--text-secondary: #49454F;--text-muted: #79747E;--text-disabled: #CAC4D0;--accent: #0061A4;--accent-hover: #1D80C6;--accent-active: #004A7F;--accent-focus: rgba(0, 97, 164, .3);--accent-subtle: rgba(0, 97, 164, .08);--success: #217346;--warning: #CA8A04;--error: #B3261E;--info: #0061A4;--shadow-sm: 0px 1px 3px 1px rgba(0, 0, 0, .15), 0px 1px 2px rgba(0, 0, 0, .3);--shadow-md: 0px 2px 6px 2px rgba(0, 0, 0, .15), 0px 1px 2px rgba(0, 0, 0, .3);--shadow-lg: 0px 4px 8px 3px rgba(0, 0, 0, .15), 0px 1px 3px rgba(0, 0, 0, .3);--scrollbar-track: #F4F4F5;--scrollbar-thumb: #D4D4D8;--scrollbar-thumb-hover: #A1A1AA;--font-size-base: 13px;--font-size-secondary: 12px;--font-size-label: 11px;--control-h-sm: 24px;--control-h-md: 28px;--control-h-lg: 32px;--radius-sm: 4px;--radius-md: 8px;--radius-lg: 12px;--radius-xl: 16px}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}html,body,#root{width:100%;height:100%;overflow:hidden}body{font-family:Roboto,Inter,Segoe UI,Microsoft YaHei,sans-serif;font-size:var(--font-size-base);line-height:1.5;color:var(--text-primary);background-color:var(--bg-primary);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-smooth:always;text-rendering:optimizeLegibility}*{font-family:inherit}::-webkit-scrollbar{width:8px;height:8px}::-webkit-scrollbar-track{background:var(--scrollbar-track)}::-webkit-scrollbar-thumb{background:var(--scrollbar-thumb);border-radius:4px}::-webkit-scrollbar-thumb:hover{background:var(--scrollbar-thumb-hover)}*{scrollbar-width:thin;scrollbar-color:var(--scrollbar-thumb) var(--scrollbar-track)}.ui-panel{position:absolute;left:0;top:0;background-color:var(--bg-panel);border:1px solid var(--border-light);border-radius:var(--radius-lg);display:flex;flex-direction:column;z-index:200;min-width:220px;min-height:100px;overflow:hidden;color:var(--text-primary);box-shadow:var(--shadow-md);transform:translate(0);backface-visibility:hidden}.ui-panel:hover{box-shadow:var(--shadow-lg)}.ui-panel-header{height:32px;padding:0 12px;background-color:var(--bg-panel);border-bottom:1px solid var(--border-light);font-weight:500;font-size:14px;display:flex;justify-content:space-between;align-items:center;-webkit-user-select:none;user-select:none;cursor:move;letter-spacing:.1px}.ui-panel-header-static{cursor:default}.ui-panel-title{flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.ui-panel-close{display:flex;align-items:center;justify-content:center;width:24px;height:24px;border-radius:4px;cursor:pointer;color:var(--text-secondary);background:transparent;border:none;transition:all .12s ease}.ui-panel-close:hover{background-color:var(--bg-active);color:var(--text-primary)}.ui-panel-close:active{background-color:var(--error);color:#fff}.ui-panel-content{flex:1;overflow-y:auto;overflow-x:hidden;padding:0}.ui-panel-resize-handle{position:absolute;z-index:10;background:transparent}.ui-panel-resize-e{top:0;right:-3px;width:8px;height:100%;cursor:ew-resize}.ui-panel-resize-w{top:0;left:-3px;width:8px;height:100%;cursor:ew-resize}.ui-panel-resize-s{bottom:-3px;left:0;width:100%;height:8px;cursor:ns-resize}.ui-panel-resize-se{bottom:-3px;right:-3px;width:16px;height:16px;cursor:nwse-resize}.ui-panel-resize-sw{bottom:-3px;left:-3px;width:16px;height:16px;cursor:nesw-resize}.ui-btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:4px 12px;font-size:13px;font-weight:500;font-family:inherit;border-radius:var(--radius-sm);cursor:pointer;transition:all .2s cubic-bezier(.4,0,.2,1);-webkit-user-select:none;user-select:none;min-height:var(--control-h-md);border:1px solid transparent;white-space:nowrap;letter-spacing:.1px}.ui-btn:disabled{opacity:.5;cursor:not-allowed;pointer-events:none}.ui-btn:focus{outline:2px solid var(--accent-focus);outline-offset:1px}.ui-btn-default{background-color:var(--bg-panel);color:var(--text-primary);border-color:var(--border-color)}.ui-btn-default:hover{background-color:var(--bg-hover);border-color:var(--border-hover)}.ui-btn-default:active{background-color:var(--bg-active)}.ui-btn-primary{background-color:var(--accent);color:var(--bg-primary);border-color:var(--accent);box-shadow:0 1px 2px #0000001a}.ui-btn-primary:hover{background-color:var(--accent-hover);border-color:var(--accent-hover);box-shadow:var(--shadow-sm)}.ui-btn-primary:active{background-color:var(--accent-active);border-color:var(--accent-active);box-shadow:none}.ui-btn-danger{background-color:var(--error);color:#fff;border-color:var(--error)}.ui-btn-danger:hover{filter:brightness(1.1);box-shadow:var(--shadow-sm)}.ui-btn-danger:active{filter:brightness(.9);box-shadow:none}.ui-btn-ghost{background-color:transparent;color:var(--text-secondary);border-color:transparent}.ui-btn-ghost:hover{background-color:var(--bg-hover);color:var(--text-primary)}.ui-btn-ghost:active{background-color:var(--bg-active)}.ui-btn-icon{width:28px;height:28px;padding:0;min-width:28px;min-height:28px}.ui-btn-icon-sm{width:var(--control-h-sm);height:var(--control-h-sm);padding:0;min-width:var(--control-h-sm);min-height:var(--control-h-sm)}.ui-btn.active{background-color:var(--accent);color:#fff;border-color:var(--accent)}.ui-input{width:100%;padding:4px 12px;font-size:13px;font-family:inherit;background-color:var(--bg-panel);border:1px solid var(--border-color);border-radius:var(--radius-sm);color:var(--text-primary);transition:all .2s ease;min-height:var(--control-h-md)}.ui-input:focus{outline:none;border-color:var(--accent);box-shadow:0 0 0 2px var(--accent-focus)}.ui-input:disabled{opacity:.5;cursor:not-allowed}.ui-input::placeholder{color:var(--text-muted)}input[type=number].ui-input{text-align:right;appearance:textfield;-moz-appearance:textfield;-webkit-appearance:none}input[type=number].ui-input::-webkit-inner-spin-button,input[type=number].ui-input::-webkit-outer-spin-button{opacity:1}.ui-segmented{display:inline-flex;align-items:center;padding:4px;background-color:var(--bg-panel);border:1px solid var(--border-color);border-radius:var(--radius-xl);gap:4px}.ui-segmented-item{display:flex;align-items:center;justify-content:center;gap:6px;padding:2px 12px;font-size:13px;font-weight:500;border-radius:var(--radius-xl);cursor:pointer;transition:all .2s ease;color:var(--text-secondary);background:transparent;border:none;font-family:inherit;white-space:nowrap}.ui-segmented-item:hover{color:var(--text-primary);background-color:var(--bg-hover)}.ui-segmented-item.active{background-color:var(--accent);color:#fff;font-weight:500}.ui-segmented-item:disabled{opacity:.5;cursor:not-allowed}.ui-switch{position:relative;display:inline-flex;align-items:center;width:44px;height:24px;border-radius:12px;background-color:var(--border-color);cursor:pointer;transition:all .2s ease;border:2px solid transparent;padding:0;flex-shrink:0}.ui-switch:hover{background-color:var(--border-hover)}.ui-switch.active{background-color:var(--accent)}.ui-switch:disabled{opacity:.5;cursor:not-allowed}.ui-switch-thumb{position:absolute;left:2px;width:14px;height:14px;border-radius:50%;background-color:#fff;box-shadow:0 1px 3px #0000004d;transition:transform .12s ease}.ui-switch.active .ui-switch-thumb{transform:translate(18px)}.ui-slider{position:relative;width:100%;height:20px;display:flex;align-items:center}.ui-slider-track{position:absolute;width:100%;height:4px;border-radius:2px;background-color:var(--border-color)}.ui-slider-progress{position:absolute;height:4px;border-radius:2px;background-color:var(--accent);pointer-events:none}.ui-slider-thumb{position:absolute;width:16px;height:16px;border-radius:50%;background-color:var(--accent);box-shadow:0 1px 3px #0006;cursor:pointer;transition:transform .12s cubic-bezier(.4,0,.2,1);border:4px solid var(--bg-panel)}.ui-slider-thumb:hover{transform:scale(1.25);box-shadow:0 2px 6px #00000080}.ui-slider-thumb:focus{outline:none;box-shadow:0 0 0 3px var(--accent-focus)}.ui-slider.disabled{opacity:.5;pointer-events:none}.ui-data-panel{font-size:var(--font-size-secondary);background-color:var(--bg-primary);border:1px solid var(--border-color);border-radius:4px;overflow:hidden;flex:1;min-height:100px}.ui-data-row{display:flex;align-items:center;justify-content:space-between;padding:4px 10px;border-bottom:1px solid var(--border-color);min-height:28px}.ui-data-row:last-child{border-bottom:none}.ui-data-row:hover{background-color:var(--bg-hover)}.ui-data-label{color:var(--text-secondary);font-size:var(--font-size-label)}.ui-data-value{color:var(--text-primary);font-weight:500;font-size:var(--font-size-secondary)}.ui-list-item{display:flex;align-items:center;justify-content:space-between;padding:4px 12px;border-bottom:1px solid var(--border-color);transition:background-color 80ms ease;min-height:28px;cursor:pointer}.ui-list-item:last-child{border-bottom:none}.ui-list-item:hover{background-color:var(--bg-hover)}.ui-list-item.selected{background-color:var(--accent-subtle);color:var(--accent);font-weight:500}.ui-group-title{padding:6px 12px 4px;font-size:11px;font-weight:600;color:var(--text-secondary);text-transform:uppercase;letter-spacing:.5px;border-bottom:1px solid var(--border-color);background-color:var(--bg-header)}.ui-divider{width:100%;height:1px;background-color:var(--border-color);margin:8px 0}.ui-divider-vertical{width:1px;height:100%;background-color:var(--border-color);margin:0 4px;flex-shrink:0}.ui-toolbar{display:flex;align-items:center;height:46px;padding:0 12px;gap:4px;background-color:var(--bg-panel);border-bottom:1px solid var(--border-light);box-sizing:border-box}.ui-toolbar-group{display:flex;align-items:center;gap:2px;padding:0 4px;border-right:1px solid var(--border-color);height:100%}.ui-toolbar-group:last-child{border-right:none}.ui-toolbar-btn{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:3px 8px;height:40px;min-width:40px;gap:3px;border-radius:var(--radius-sm);cursor:pointer;transition:all .2s ease;color:var(--text-secondary);background:transparent;border:none;box-sizing:border-box;overflow:visible}.ui-toolbar-btn:hover{background-color:var(--bg-hover);color:var(--text-primary)}.ui-toolbar-btn:active{background-color:var(--bg-active)}.ui-toolbar-btn.active{background-color:var(--accent);color:var(--bg-primary);box-shadow:var(--shadow-sm)}.ui-toolbar-btn:disabled{opacity:.4;cursor:not-allowed}.ui-toolbar-btn svg{width:18px;height:18px;flex-shrink:0;overflow:visible}.ui-toolbar-btn>div:last-child{line-height:1.2}.ui-statusbar{display:flex;align-items:center;justify-content:space-between;height:26px;padding:0 8px;background-color:var(--bg-header);border-top:1px solid var(--border-color);font-size:var(--font-size-label);line-height:1;color:var(--text-secondary)}.ui-statusbar-left,.ui-statusbar-right{display:flex;align-items:center;gap:8px}.ui-statusbar-item{display:flex;align-items:center;gap:4px;line-height:1}.ui-statusbar-value{color:var(--text-primary);font-weight:500;font-size:var(--font-size-label)}.ui-modal-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background-color:#0009;display:flex;align-items:center;justify-content:center;z-index:500}.ui-modal{background-color:var(--bg-panel);border-radius:6px;box-shadow:var(--shadow-lg);z-index:600;max-height:80vh;display:flex;flex-direction:column;border:1px solid var(--border-color)}.ui-modal-header{display:flex;align-items:center;justify-content:space-between;padding:8px 12px;border-bottom:1px solid var(--border-color);background-color:var(--bg-header)}.ui-modal-title{font-size:14px;font-weight:600}.ui-modal-close{display:flex;align-items:center;justify-content:center;width:28px;height:28px;border-radius:4px;cursor:pointer;color:var(--text-secondary);background:transparent;border:none;transition:all .12s ease}.ui-modal-close:hover{background-color:var(--bg-active);color:var(--text-primary)}.ui-modal-close:active{background-color:var(--error);color:#fff}.ui-modal-body{padding:16px;overflow-y:auto;flex:1}.ui-modal-footer{display:flex;align-items:center;justify-content:flex-end;gap:8px;padding:12px 16px;background-color:var(--bg-header)}.ui-tooltip-wrapper{position:relative;display:inline-flex}.ui-tooltip{position:absolute;padding:4px 8px;font-size:11px;color:#fff;background-color:#374151;border-radius:4px;box-shadow:0 2px 8px #0003;pointer-events:none;white-space:nowrap;z-index:1000;opacity:0;transition:opacity .15s ease}.ui-tooltip-wrapper:hover .ui-tooltip{opacity:1}.ui-tooltip-top{bottom:100%;left:50%;transform:translate(-50%);margin-bottom:4px}.ui-tooltip-bottom{top:100%;left:50%;transform:translate(-50%);margin-top:4px}.flex{display:flex}.flex-col{flex-direction:column}.flex-1{flex:1}.flex-shrink-0{flex-shrink:0}.flex-wrap{flex-wrap:wrap}.items-center{align-items:center}.items-start{align-items:flex-start}.items-end{align-items:flex-end}.justify-center{justify-content:center}.justify-between{justify-content:space-between}.justify-end{justify-content:flex-end}.justify-start{justify-content:flex-start}.gap-1{gap:4px}.gap-2{gap:8px}.gap-3{gap:12px}.gap-4{gap:16px}.text-xs{font-size:11px}.text-sm{font-size:var(--font-size-secondary)}.text-base{font-size:13px}.text-lg{font-size:14px}.text-xl{font-size:16px}.font-normal{font-weight:400}.font-medium{font-weight:500}.font-semibold{font-weight:600}.font-bold{font-weight:700}.text-center{text-align:center}.text-right{text-align:right}.text-left{text-align:left}.uppercase{text-transform:uppercase}.truncate{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.text-primary{color:var(--text-primary)}.text-secondary{color:var(--text-secondary)}.text-muted{color:var(--text-muted)}.text-disabled{color:var(--text-disabled)}.text-accent{color:var(--text-primary);font-weight:600}.text-success{color:var(--success)}.text-warning{color:var(--warning)}.text-error{color:var(--error)}.p-0{padding:0}.p-1{padding:4px}.p-2{padding:8px}.p-3{padding:12px}.p-4{padding:16px}.px-1{padding-left:4px;padding-right:4px}.px-2{padding-left:8px;padding-right:8px}.px-3{padding-left:12px;padding-right:12px}.px-4{padding-left:16px;padding-right:16px}.py-1{padding-top:4px;padding-bottom:4px}.py-2{padding-top:8px;padding-bottom:8px}.py-3{padding-top:12px;padding-bottom:12px}.py-4{padding-top:16px;padding-bottom:16px}.m-0{margin:0}.mb-0{margin-bottom:0}.mb-1{margin-bottom:4px}.mb-2{margin-bottom:8px}.mb-3{margin-bottom:12px}.mb-4{margin-bottom:16px}.mt-0{margin-top:0}.mt-1{margin-top:4px}.mt-2{margin-top:8px}.mt-3{margin-top:12px}.mt-4{margin-top:16px}.ml-auto{margin-left:auto}.mr-1{margin-right:4px}.mr-2{margin-right:8px}.w-full{width:100%}.h-full{height:100%}.min-h-0{min-height:0}.min-h-screen{min-height:100vh}.max-h-full{max-height:100%}.max-h-screen{max-height:100vh}.rounded-none{border-radius:0}.rounded-sm{border-radius:4px}.rounded-md{border-radius:6px}.rounded-lg{border-radius:8px}.rounded-full{border-radius:9999px}.border{border:1px solid var(--border-color)}.border-b{border-bottom:1px solid var(--border-color)}.border-t{border-top:1px solid var(--border-color)}.border-l{border-left:1px solid var(--border-color)}.border-r{border-right:1px solid var(--border-color)}.border-l-2{border-left:2px solid var(--accent)}.border-transparent{border-color:transparent}.relative{position:relative}.absolute{position:absolute}.fixed{position:fixed}.inset-0{top:0;right:0;bottom:0;left:0}.top-0{top:0}.bottom-0{bottom:0}.left-0{left:0}.right-0{right:0}.overflow-hidden{overflow:hidden}.overflow-auto{overflow:auto}.overflow-y-auto{overflow-y:auto}.overflow-x-auto{overflow-x:auto}.opacity-0{opacity:0}.opacity-50{opacity:.5}.opacity-75{opacity:.75}.opacity-100{opacity:1}.pointer-events-none{pointer-events:none}.pointer-events-auto{pointer-events:auto}.cursor-pointer{cursor:pointer}.cursor-grab{cursor:grab}.cursor-grabbing{cursor:grabbing}.cursor-text{cursor:text}.cursor-not-allowed{cursor:not-allowed}.cursor-move{cursor:move}.cursor-se-resize{cursor:se-resize}.select-none{-webkit-user-select:none;user-select:none}.select-text{-webkit-user-select:text;user-select:text}.select-all{-webkit-user-select:all;user-select:all}.whitespace-nowrap{white-space:nowrap}.whitespace-pre{white-space:pre}.break-word{word-wrap:break-word}.overflow-ellipsis{text-overflow:ellipsis}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes slideInRight{0%{transform:translate(100%);opacity:0}to{transform:translate(0);opacity:1}}@keyframes slideInDown{0%{transform:translateY(-10px);opacity:0}to{transform:translateY(0);opacity:1}}.animate-fadeIn{animation:fadeIn .2s ease-out}.animate-slideInRight{animation:slideInRight .2s ease-out}.animate-slideInDown{animation:slideInDown .2s ease-out}.bg-primary{background-color:var(--bg-primary)}.bg-panel{background-color:var(--bg-panel)}.bg-header{background-color:var(--bg-header)}.bg-transparent{background-color:transparent}.bg-accent{background-color:var(--accent)}.bg-hover{background-color:var(--bg-hover)}.bg-active{background-color:var(--bg-active)}.bg-selected{background-color:var(--bg-selected)}.z-0{z-index:0}.z-10{z-index:10}.z-20{z-index:20}.z-50{z-index:50}.z-100{z-index:100}.z-200{z-index:200}.z-500{z-index:500}.z-1000{z-index:1000}.disabled{opacity:.5;pointer-events:none;cursor:not-allowed}.selected{background-color:var(--bg-selected);color:var(--text-primary);font-weight:500}.focus-ring:focus{outline:2px solid var(--accent-focus);outline-offset:2px}.row-layout{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:6px 0}.row-layout-label{font-size:12px;color:var(--text-secondary);flex-shrink:0;min-width:60px}.row-layout-control{flex:1;display:flex;align-items:center;justify-content:flex-end;gap:8px;min-width:0}.row-layout-control>*{flex-shrink:0}:root{--font-size-base: 13px}.ui-container,.ui-panel,.ui-modal,.ui-toolbar,.ui-btn,.ui-input,.ui-segmented-item,.ui-list-item,.ui-data-panel{font-size:var(--font-size-base)}.ui-panel-title,.ui-modal-title,.ui-group-title{font-size:14px;font-weight:500}.ui-sidebar{display:flex;flex-direction:column;border-color:var(--border-color);background-color:var(--bg-panel);z-index:10;position:relative}.ui-sidebar-header{height:36px;padding:0 12px;background-color:var(--bg-panel);border-bottom:1px solid var(--border-light);cursor:default;font-weight:500;display:flex;justify-content:space-between;align-items:center;-webkit-user-select:none;user-select:none;font-size:14px;color:var(--text-primary);letter-spacing:.1px}.ui-sidebar-close{cursor:pointer;opacity:.6;display:flex;padding:2px;border-radius:50%;color:var(--text-secondary);background:transparent;border:none;transition:opacity .12s ease,background-color .12s ease}.ui-sidebar-close:hover{opacity:1;background-color:var(--bg-hover)}.ui-sidebar-resize{position:absolute;width:4px;top:0;bottom:0;cursor:col-resize;z-index:20}.ui-toast{position:fixed;top:40px;left:50%;transform:translate(-50%);background-color:var(--bg-panel);color:var(--text-primary);padding:6px 16px;border-radius:var(--radius-lg);box-shadow:var(--shadow-md);z-index:10000;display:flex;align-items:center;gap:10px;font-size:13px;border:1px solid var(--border-color);animation:fadeInDown .3s ease-out}.ui-toast-dot{width:8px;height:8px;border-radius:50%;flex-shrink:0}.ui-toast-close{cursor:pointer;padding:2px;display:flex;opacity:.5;margin-left:4px;color:var(--text-secondary);background:transparent;border:none;transition:opacity .12s ease}.ui-toast-close:hover{opacity:1}.ui-context-menu{position:fixed;background-color:var(--bg-panel);border:1px solid var(--border-color);border-radius:var(--radius-md);box-shadow:var(--shadow-md);z-index:10000;min-width:160px;padding:4px 0}.ui-context-menu-item{padding:10px 16px;font-size:13px;color:var(--text-primary);cursor:pointer;background:transparent;transition:background-color .2s ease;white-space:nowrap}.ui-context-menu-item:hover{background-color:var(--bg-hover)}.ui-context-menu-item:disabled,.ui-context-menu-item.disabled{color:var(--text-muted);cursor:not-allowed;opacity:.5}.ui-context-menu-divider{height:1px;background-color:var(--border-color);margin:4px 0}.ui-progress-bar{height:4px;background-color:var(--border-color);border-radius:2px;overflow:hidden}.ui-progress-fill{height:100%;background-color:var(--accent);transition:width .2s ease;border-radius:2px}.ui-statusbar-btn{cursor:pointer;padding:4px;border-radius:var(--radius-md);display:flex;align-items:center;justify-content:center;transition:background-color .12s ease;color:var(--text-secondary);background:transparent;border:none}.ui-statusbar-btn:hover{background-color:var(--bg-hover);color:var(--text-primary)}.ui-statusbar-btn-compact{padding:2px}.ui-statusbar-tag{display:flex;align-items:center;gap:8px;padding:3px 8px;border-radius:var(--radius-md);background-color:var(--bg-hover);font-size:var(--font-size-label);line-height:1;color:var(--text-primary);font-weight:600;letter-spacing:.5px;cursor:default;border:none;font-family:inherit}.ui-statusbar-tag:hover{background-color:var(--bg-active)}.ui-statusbar-tag-compact{gap:4px;padding:2px 6px}.ui-statusbar-brand{letter-spacing:.3px;display:inline-flex;align-items:center;height:100%}.ui-divider-vertical-compact{margin:0 2px}.ui-link{color:var(--text-primary);text-decoration:underline;text-underline-offset:2px;cursor:pointer}.ui-link:hover{color:var(--text-secondary)}.ui-stats-group{display:flex;gap:8px;align-items:center;padding-left:8px;border-left:1px solid var(--border-color)}.ui-stats-item{display:flex;align-items:center;gap:4px;opacity:.85;color:var(--text-primary);font-size:11px}.ui-tips{display:flex;gap:6px;opacity:.85;color:var(--text-secondary);font-size:11px}.ui-chunk-progress{display:flex;align-items:center;gap:6px;color:var(--text-primary);font-size:11px;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-smooth:always}.ui-search-bar{padding:12px;border-bottom:1px solid var(--border-light);display:flex;flex-direction:column;gap:8px}.ui-search-input-wrap{position:relative;display:flex;align-items:center}.ui-search-clear{position:absolute;right:4px;display:inline-flex;align-items:center;justify-content:center;width:22px;height:22px;border:none;border-radius:4px;background:transparent;color:var(--text-secondary);cursor:pointer}.ui-tree-search-meta{display:flex;align-items:center;justify-content:space-between;gap:8px;font-size:11px;color:var(--text-secondary)}.ui-tree-search-actions{display:flex;align-items:center;gap:6px;flex-wrap:nowrap;flex-shrink:0}.ui-icon-btn{width:28px;min-width:28px;padding:0;justify-content:center}.ui-tree-locator-btn{width:36px;min-width:36px;height:36px;min-height:36px;padding:0;justify-content:center;color:var(--text-primary);border:1px solid var(--border-color);background-color:var(--bg-panel);border-radius:var(--radius-sm)}.ui-tree-locator-btn:hover{border-color:var(--border-hover)}.ui-tree-locator{display:grid;grid-template-columns:110px minmax(0,1fr);gap:6px}.ui-search-clear:hover{background-color:var(--bg-hover);color:var(--text-primary)}.ui-search-meta{margin-top:6px;font-size:11px;color:var(--text-secondary);font-variant-numeric:tabular-nums}.ui-search-hit{background-color:var(--accent-subtle);color:var(--text-primary);border-radius:2px}.ui-tree-filters{display:flex;flex-direction:column;gap:8px;padding:0 8px 8px;border-bottom:1px solid var(--border-color)}.ui-tree-filter-grid{display:grid;grid-template-columns:1fr 1fr;gap:6px}.ui-tree-filter-actions{display:flex;justify-content:flex-end;flex-wrap:wrap;gap:6px}.ui-tree-workset-actions{justify-content:flex-start}.ui-input-compact{min-height:28px;padding-right:28px}.ui-input-number{display:inline-flex;align-items:center;position:relative;background-color:var(--bg-panel);border-radius:var(--radius-sm);transition:all .2s ease}.ui-input-number .ui-input{padding-right:32px;font-family:Roboto Mono,Consolas,monospace}.ui-input-number .ui-input::-webkit-outer-spin-button,.ui-input-number .ui-input::-webkit-inner-spin-button{-webkit-appearance:none;-moz-appearance:none;appearance:none;margin:0}.ui-input-number-btn{transition:all .12s ease;background:transparent;border:none;border-radius:2px;color:var(--text-muted);font-size:8px;display:flex!important;align-items:center;justify-content:center;width:20px;height:50%;padding:0!important;min-height:unset!important}.ui-input-number-btn:hover{background-color:var(--bg-hover)!important;color:var(--accent)!important}.ui-input-number-btn:active{background-color:var(--bg-active)!important}.ui-properties-toolbar{display:flex;flex-direction:column;gap:8px;padding:8px;border-bottom:1px solid var(--border-color)}.ui-properties-views{width:100%}.ui-properties-subbar{display:flex;align-items:center;justify-content:space-between;gap:8px}.ui-properties-actions{display:flex;justify-content:flex-end;flex-shrink:0}.ui-properties-action{min-height:28px;padding:0 10px;font-size:11px}.ui-properties-meta{font-size:11px;color:var(--text-secondary);font-variant-numeric:tabular-nums;min-width:0;white-space:nowrap}.ui-prop-row{display:flex;padding:4px 12px 4px 20px;border-bottom:1px solid var(--border-light);align-items:center;font-size:11px;gap:8px}.ui-prop-key{width:40%;color:var(--text-muted);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.ui-prop-value{width:60%;color:var(--text-primary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;cursor:text}.ui-prop-group{background-color:var(--bg-header);padding:6px 12px;font-weight:500;font-size:13px;color:var(--text-primary);border-bottom:1px solid var(--border-light);border-top:1px solid var(--border-light);cursor:pointer;display:flex;align-items:center;justify-content:space-between;-webkit-user-select:none;user-select:none;transition:background-color .2s ease}.ui-prop-group:hover{background-color:var(--bg-hover)}.ui-prop-group.collapsed{margin-bottom:4px}.ui-prop-group-actions{display:flex;align-items:center;gap:8px}.ui-prop-copy{border:none;background:transparent;color:var(--text-secondary);font-size:11px;cursor:pointer;padding:0}.ui-prop-copy:hover{color:var(--text-primary)}.ui-tree-node{display:flex;align-items:center;height:32px;cursor:pointer;white-space:nowrap;font-size:13px;color:var(--text-primary);background:transparent;transition:all .2s ease;padding-right:8px;border-radius:var(--radius-sm);margin:1px 4px}.ui-tree-node:hover{background-color:var(--bg-hover)}.ui-tree-node.selected{background-color:var(--accent-subtle);color:var(--accent);font-weight:500}.ui-tree-node.matched{background-color:var(--bg-selected)}.ui-tree-node.located{background-color:var(--warning);color:var(--bg-primary);font-weight:600}.ui-tree-expander{width:20px;height:100%;display:flex;align-items:center;justify-content:center;cursor:pointer;color:var(--text-muted);flex-shrink:0}.ui-tree-label{flex:1;overflow:hidden;text-overflow:ellipsis}.ui-tree-panel{display:flex;flex-direction:column;height:100%;overflow:hidden}.ui-panel-stack{display:flex;flex-direction:column;gap:12px;padding:12px}.ui-panel-section{display:flex;flex-direction:column;gap:10px;padding:10px;border:1px solid var(--border-color);border-radius:var(--radius-lg);background-color:var(--bg-primary)}.ui-panel-section-fill{flex:1;min-height:0;overflow:auto}.ui-panel-footer{display:flex;justify-content:flex-end}.ui-form-row{display:flex;align-items:center;justify-content:space-between;gap:12px;min-height:28px}.ui-form-row-top{align-items:flex-start}.ui-form-label{min-width:84px;color:var(--text-secondary);font-size:12px;flex-shrink:0}.ui-form-value{display:flex;align-items:center;justify-content:flex-end;gap:8px;min-width:0}.ui-form-value-stretch{flex:1}.ui-slider-field{display:flex;align-items:center;gap:12px;width:100%;min-width:0}.ui-slider-value{min-width:44px;text-align:right;color:var(--text-secondary);font-size:11px;font-variant-numeric:tabular-nums;flex-shrink:0}.ui-inline-actions{display:flex;align-items:center;gap:8px;width:100%}.ui-inline-actions-wrap{flex-wrap:wrap}.ui-empty-state{min-height:120px;display:flex;align-items:center;justify-content:center;color:var(--text-secondary);font-size:12px;text-align:center}.ui-viewpoint-grid{display:flex;flex-direction:column;gap:12px}.ui-viewpoint-card-v2{display:flex;flex-direction:column;border:1px solid var(--border-light);border-radius:var(--radius-md);overflow:hidden;background-color:var(--bg-panel);transition:border-color .15s ease}.ui-viewpoint-card-v2:hover{border-color:var(--border-color)}.ui-viewpoint-image{position:relative;width:100%;background-color:var(--bg-canvas);cursor:pointer;overflow:hidden}.ui-viewpoint-image img{display:block;width:100%;height:auto}.ui-viewpoint-image:hover{opacity:.95}.ui-viewpoint-no-preview{width:100%;height:120px;display:flex;align-items:center;justify-content:center;color:var(--text-muted);font-size:12px}.ui-viewpoint-delete{position:absolute;top:6px;right:6px;width:22px;height:22px;display:flex;align-items:center;justify-content:center;background:#00000080;border:none;border-radius:4px;color:#fffc;cursor:pointer;opacity:0;transition:opacity .15s ease,background .15s ease}.ui-viewpoint-image:hover .ui-viewpoint-delete{opacity:1}.ui-viewpoint-delete:hover{background:var(--error)}.ui-viewpoint-name{width:100%;padding:6px 8px;font-size:12px;font-family:inherit;color:var(--text-primary);background:transparent;border:none;border-top:1px solid var(--border-light);outline:none;text-align:center}.ui-viewpoint-name:focus{background:var(--bg-hover)}.ui-error-overlay{position:absolute;top:0;right:0;bottom:0;left:0;background-color:#0009;display:flex;align-items:center;justify-content:center;z-index:2000}.ui-error-content{background-color:var(--bg-panel);border:1px solid var(--border-color);border-radius:var(--radius-lg);box-shadow:var(--shadow-lg);display:flex;flex-direction:column;overflow:hidden;color:var(--text-primary)}.ui-error-header{padding:10px 16px;font-weight:600;display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid var(--border-color)}.ui-loading-overlay{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;align-items:center;justify-content:center;z-index:3000}.dark .ui-loading-overlay{background-color:#000c}.light .ui-loading-overlay{background-color:#fffc}.ui-loading-box{width:320px;background-color:var(--bg-panel);padding:20px;border-radius:var(--radius-lg);border:1px solid var(--border-color);box-shadow:var(--shadow-lg);color:var(--text-primary)}
