:root{color-scheme:dark;--bg: #0e131c;--bg-panel: #15191f;--bg-panel-2: #1f242c;--bg-input: #1a1f27;--border: #262b34;--border-strong: #353c47;--text: #dde6eb;--text-dim: #7e8895;--accent: #1ec4b6;--accent-strong: #28dccd;--accent-soft: rgba(30, 196, 182, .12);--accent-fg: #0e131c;--secondary: #fa9a26;--danger: #e93636;--gradient-primary: linear-gradient(135deg, hsl(175 80% 45%), hsl(190 80% 40%));--radius: 4px}body{background:var(--bg);color:var(--text);font-size:13px;font-family:-apple-system,BlinkMacSystemFont,Inter,Segoe UI,Roboto,Helvetica Neue,Arial,sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}button{font:inherit;cursor:pointer}input,select{font:inherit;color:inherit}.app-root{position:relative;width:100%;height:100%;overflow:hidden}.layout{width:100%;height:100%;display:grid;grid-template-rows:auto 1fr auto;grid-template-columns:300px 1fr 340px;grid-template-areas:"toolbar toolbar toolbar" "left    main    right" "bottom  bottom  bottom"}.toolbar{grid-area:toolbar;display:flex;align-items:center;gap:8px;padding:8px 14px;background:linear-gradient(180deg,#161b25,#11151c);border-bottom:1px solid var(--border);box-shadow:0 1px #1ec4b640;flex-wrap:wrap;row-gap:6px;min-height:52px}.brand-mark{display:flex;align-items:center;gap:10px;padding-right:12px;margin-right:4px;height:100%;flex:0 0 auto}.brand-mark img{height:34px;width:auto;display:block;object-fit:contain}.brand-mark .brand-tag{font-size:9px;letter-spacing:1.4px;color:var(--accent);text-transform:uppercase;font-weight:600;white-space:nowrap}@media (max-width: 1100px){.brand-mark .brand-tag{display:none}}.toolbar-group{display:flex;align-items:center;gap:6px;flex:0 0 auto}.toolbar-spacer{flex:1 1 auto;min-width:8px}.toolbar-sep{flex:0 0 1px;width:1px;height:22px;background:var(--border);margin:0 4px}.toolbar-select{max-width:160px}.dropdown{position:relative;flex:0 0 auto}.dropdown-caret{font-size:9px;margin-left:4px;color:var(--text-dim)}.dropdown-menu{position:absolute;top:calc(100% + 4px);background:var(--bg-panel);border:1px solid var(--border-strong);border-radius:var(--radius);min-width:200px;display:flex;flex-direction:column;padding:4px 0;z-index:50;box-shadow:0 10px 30px #0000008c}.dropdown-menu--left{left:0}.dropdown-menu--right{right:0}.dropdown-item{background:transparent;color:var(--text);border:none;padding:6px 14px;text-align:left;font:inherit;cursor:pointer;white-space:nowrap;transition:background .1s ease,color .1s ease}.dropdown-item:hover:not(:disabled){background:var(--bg-panel-2);color:var(--accent)}.dropdown-item:disabled{color:var(--text-dim);cursor:not-allowed}.dropdown-item--danger:hover:not(:disabled){color:var(--danger)}.dropdown-divider{height:1px;background:var(--border);margin:4px 0}.workspace-row{display:flex;align-items:stretch}.workspace-row-load{flex:1}.workspace-row-delete{background:transparent;border:none;color:var(--text-dim);cursor:pointer;padding:0 10px;font-size:14px}.workspace-row-delete:hover{color:var(--danger)}.btn-segmented .btn{border-radius:0}.btn-segmented .btn:first-child{border-radius:var(--radius) 0 0 var(--radius)}.btn-segmented .btn:last-child{border-radius:0 var(--radius) var(--radius) 0}.btn-segmented .btn+.btn{margin-left:-1px}.btn-segmented .btn.active{z-index:1}.left-panel,.right-panel{background:var(--bg-panel);overflow:hidden;min-height:0}.left-panel{grid-area:left}.right-panel{grid-area:right}.main-view-area{grid-area:main;position:relative;background:var(--bg);overflow:hidden}.view-controls{position:absolute;top:10px;right:10px;z-index:5;display:flex;gap:0;padding:3px;background:#1419238c;border:1px solid rgba(255,255,255,.06);border-radius:10px;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);pointer-events:auto}.view-controls .btn-segmented{gap:0}.view-controls .btn{background:transparent;border:none;color:#c8d0dcb3;padding:5px 14px;border-radius:7px;margin:0;font-size:12px;transition:background .12s ease,color .12s ease}.view-controls .btn:hover{background:#ffffff0d;color:#fff;border-color:transparent}.view-controls .btn.active{background:#ffffff24;color:#fff;box-shadow:inset 0 0 0 1px #ffffff14}.view-controls .btn.active:hover{background:#ffffff2e}.view-controls .btn:focus-visible{outline:2px solid rgba(255,255,255,.35);outline-offset:-2px}.view-controls-sep{width:1px;align-self:stretch;margin:4px;background:#ffffff14}.bottom-panel{grid-area:bottom;background:var(--bg-panel);border-top:1px solid var(--border)}.btn{background:var(--bg-panel-2);color:var(--text);border:1px solid var(--border);padding:5px 12px;border-radius:var(--radius);white-space:nowrap;flex-shrink:0;transition:border-color .12s ease,background .12s ease,color .12s ease}.btn:hover{border-color:var(--accent);color:var(--accent-strong)}.btn:focus-visible,.icon-btn:focus-visible,.dropdown-item:focus-visible{outline:2px solid var(--accent);outline-offset:1px}.btn.primary{background:var(--accent);color:var(--accent-fg);border-color:var(--accent);font-weight:600;letter-spacing:.3px}.btn.primary:hover{background:var(--accent-strong);border-color:var(--accent-strong);color:var(--accent-fg)}.btn.active{background:var(--accent-soft);border-color:var(--accent);color:var(--accent-strong)}.btn.danger{color:var(--danger);border-color:#e9363666}.btn.danger:hover{border-color:var(--danger);background:#e936361a}.btn:disabled{opacity:.45;cursor:not-allowed}.btn-link{background:transparent;color:var(--accent);border:none;padding:2px 4px;text-decoration:underline}.btn-link:hover{color:var(--accent-strong)}.icon-btn{background:transparent;color:var(--text-dim);border:1px solid transparent;width:22px;height:22px;border-radius:3px;font-size:11px;padding:0;margin:0;transition:border-color .12s ease,color .12s ease,background .12s ease}.icon-btn:hover{border-color:var(--border-strong);color:var(--text)}.icon-btn.on{color:var(--accent);border-color:var(--accent);background:var(--accent-soft)}.icon-btn.danger:hover{color:var(--danger);border-color:var(--danger)}.list-section,.list-section--closed{border-bottom:1px solid var(--border)}.list-section-header{display:flex;align-items:center;gap:6px;width:100%;padding:8px 12px 8px 8px;font-weight:600;font-size:10px;text-transform:uppercase;letter-spacing:1.2px;color:var(--text-dim);background:var(--bg-panel-2);border:none;border-bottom:1px solid var(--border);text-align:left;cursor:pointer;transition:color .12s ease,background .12s ease}.list-section-header:hover{color:var(--text)}.list-section-header:focus-visible{outline:2px solid var(--accent);outline-offset:-2px}.list-section--closed .list-section-header{border-bottom:none}.list-section-chevron{width:10px;display:inline-block;color:var(--text-dim);font-size:9px}.list-section-title{flex:1;min-width:0}.list-section-extra{display:flex;align-items:center;gap:4px}.list-empty{padding:12px 14px;color:var(--text-dim);font-style:italic;font-size:11px}.item-list{list-style:none;margin:0;padding:0}.item{display:grid;grid-template-columns:22px 14px minmax(60px,1fr) minmax(0,60px) 72px;align-items:center;gap:6px;padding:6px 10px;border-bottom:1px solid #11151c;cursor:pointer;min-width:0;transition:background .12s ease}.item:hover{background:var(--bg-panel-2)}.item:focus-visible{outline:2px solid var(--accent);outline-offset:-2px}.item-selected{background:linear-gradient(90deg,var(--accent-soft) 0%,transparent 100%);box-shadow:inset 2px 0 0 var(--accent)}.item-swatch{width:12px;height:12px;border-radius:50%;border:1px solid var(--border-strong);box-shadow:0 0 4px currentColor}.item-name{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;min-width:0;font-weight:500}.item-meta{color:var(--text-dim);font-size:11px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;min-width:0}.item-actions{display:flex;gap:2px;justify-content:flex-end}.inspector{padding:10px 12px}.inspector-empty{padding:28px 16px;text-align:center;color:var(--text-dim)}.inspector-header{display:flex;align-items:center;gap:8px;font-size:13px;font-weight:600;letter-spacing:.3px;padding:6px 4px 12px;border-bottom:1px solid var(--border);color:var(--text)}.inspector-header .dot{width:10px;height:10px;border-radius:50%;box-shadow:0 0 6px currentColor}.inspector-title{display:flex;align-items:baseline;gap:10px;padding:10px 4px;border-bottom:1px solid var(--border);min-width:0}.inspector-title .dot{width:10px;height:10px;border-radius:50%;box-shadow:0 0 6px currentColor;align-self:center;flex:0 0 auto}.inspector-title-name{font-size:15px;font-weight:600;color:var(--text);flex:1 1 auto;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.inspector-title-kind{font-size:10px;font-weight:600;letter-spacing:.8px;text-transform:uppercase;color:var(--text-dim);flex:0 0 auto}.inspector-section{padding:10px 0;border-bottom:1px solid var(--border)}.inspector-section:last-child{border-bottom:none}.inspector-subheader{color:var(--accent);font-size:10px;text-transform:uppercase;letter-spacing:1.2px;margin-bottom:8px;font-weight:600;display:flex;align-items:center;gap:6px}.info-icon{display:inline-flex;align-items:center;justify-content:center;width:14px;height:14px;border-radius:50%;background:var(--bg-panel-2);border:1px solid var(--border-strong);color:var(--text-dim);font-size:10px;font-style:italic;font-weight:600;letter-spacing:0;text-transform:none;cursor:help;-webkit-user-select:none;user-select:none;transition:color .1s ease,border-color .1s ease}.info-icon:hover,.info-icon:focus-visible{color:var(--accent);border-color:var(--accent);outline:none}.inspector-subheader--toggle{cursor:pointer;display:flex;align-items:center;gap:6px;-webkit-user-select:none;user-select:none}.inspector-subheader--toggle:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.inspector-chevron{font-size:9px}.info{font-size:11px;color:var(--text-dim);padding:4px 0}.field{display:grid;grid-template-columns:78px minmax(0,1fr);align-items:center;gap:6px;padding:3px 4px;min-width:0}.pose-editor .field{grid-template-columns:44px minmax(0,1fr);gap:4px;padding:2px}.field-label{color:var(--text-dim);font-size:11px}.field-input-wrap{display:flex;align-items:center;gap:4px}.field-input{background:var(--bg-input);color:var(--text);border:1px solid var(--border);border-radius:var(--radius);padding:4px 8px;width:100%;min-width:0;transition:border-color .12s ease,box-shadow .12s ease}.field-input:focus{outline:none;border-color:var(--accent);box-shadow:0 0 0 2px var(--accent-soft)}.field-input.small{width:50px}.field-suffix{color:var(--text-dim);font-size:11px}.field-color{background:var(--bg-input);border:1px solid var(--border);border-radius:var(--radius);width:36px;height:24px;padding:0;cursor:pointer}.field-slider-wrap{gap:4px}.field-slider-num{width:54px;flex:0 0 54px;text-align:right}.slider{flex:1;min-width:0;height:18px;display:flex;align-items:center;cursor:pointer;position:relative;outline:none}.slider-track{position:relative;width:100%;height:8px;background:transparent;border-radius:4px;box-sizing:border-box}.slider-fill{position:absolute;left:0;top:0;bottom:0;background:var(--border-strong);border-radius:4px;pointer-events:none;min-width:16px;transition:background .12s ease}.slider-thumb{display:none}.slider:hover .slider-fill{background:#4a5363}.slider:focus-visible .slider-fill{background:#4a5363;box-shadow:0 0 0 2px var(--accent-soft)}.field-checkbox{grid-template-columns:18px 1fr}.field-checkbox input{accent-color:var(--accent)}input[type=number]::-webkit-inner-spin-button,input[type=number]::-webkit-outer-spin-button{-webkit-appearance:none;-moz-appearance:none;appearance:none;margin:0}input[type=number]{-moz-appearance:textfield;-webkit-appearance:textfield;appearance:textfield}.pose-editor{display:grid;grid-template-columns:1fr 1fr;gap:10px}.pose-group{display:flex;flex-direction:column;gap:2px}.pose-group-label{font-size:10px;text-transform:uppercase;color:var(--text-dim);letter-spacing:1px;padding:0 4px 2px}.urdf-row-tag{font-size:9px;font-weight:600;color:var(--accent);border:1px solid var(--accent);background:var(--accent-soft);border-radius:3px;padding:0 3px;letter-spacing:.5px}.list-section-header .btn-link,.list-section-extra .btn-link{font-size:10px;letter-spacing:0;text-transform:none;font-weight:500}.types-list{padding:4px 8px}.type-row{display:flex;align-items:center;gap:4px;padding:3px 0}.type-name{flex:1;min-width:60px}.add-type-row{display:flex;gap:4px;padding:4px 8px 10px}.live-views-strip{grid-area:bottom;display:flex;flex-wrap:wrap;align-content:flex-start;align-items:flex-start;gap:8px;padding:8px 12px 10px;overflow-x:hidden;overflow-y:auto;background:var(--bg-panel);border-top:1px solid var(--border);max-height:33vh;scrollbar-width:thin;scrollbar-color:var(--border-strong) transparent}.live-view-card{flex:0 0 auto;width:260px;height:200px;background:var(--bg);border:1px solid var(--border);border-radius:var(--radius);display:flex;flex-direction:column;overflow:hidden;transition:border-color .12s ease}.live-view-card:hover{border-color:var(--border-strong)}.live-view-header{display:flex;align-items:center;gap:6px;padding:5px 8px;background:var(--bg-panel-2);border-bottom:1px solid var(--border);font-size:11px}.live-view-name{font-weight:600;flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:var(--text)}.live-view-spec{color:var(--text-dim);font-size:10px}.live-view-canvas{flex:1;position:relative}.live-view-card--overflow{border-style:dashed}.live-view-canvas--overflow{display:flex;align-items:center;justify-content:center;text-align:center;padding:8px;color:var(--text-dim);font-size:11px;line-height:1.35}.perf-hud{position:absolute;top:10px;right:10px;min-width:120px;background:#0e131cd1;border:1px solid var(--border-strong);border-radius:var(--radius);padding:6px 8px;font-family:var(--font-mono, ui-monospace, monospace);font-size:11px;color:var(--text);pointer-events:none;z-index:5}.perf-hud-row{display:flex;justify-content:space-between;gap:12px}.perf-hud-row span{color:var(--text-dim)}.perf-hud-row b{font-weight:600}.perf-hud-hint{margin-top:4px;padding-top:4px;border-top:1px solid var(--border);color:var(--text-dim);font-size:10px;text-align:right}.hover-readout{position:absolute;top:10px;left:10px;width:200px;background:#0e131cd1;border:1px solid var(--border);border-radius:var(--radius);padding:6px 24px 6px 10px;display:flex;flex-direction:column;gap:4px;font-family:SFMono-Regular,Consolas,Liberation Mono,monospace;font-size:11px;color:var(--text);z-index:5;-webkit-user-select:none;user-select:none;pointer-events:none}.hover-readout-z,.hover-readout-pos,.hover-readout-vis,.hover-readout-toggle{pointer-events:auto}.hover-readout-toggle{position:absolute;top:4px;right:4px;width:18px;height:18px;padding:0;border:1px solid transparent;border-radius:3px;background:transparent;color:var(--text-dim);font-size:14px;line-height:1;cursor:pointer}.hover-readout-toggle:hover{color:var(--text);border-color:var(--border-strong)}.hover-readout-collapsed{position:absolute;top:10px;left:10px;width:26px;height:26px;padding:0;background:#0e131cd1;border:1px solid var(--border);border-radius:var(--radius);color:var(--text);font-size:14px;line-height:1;cursor:pointer;z-index:5}.hover-readout-collapsed:hover{border-color:var(--accent);color:var(--accent)}.hover-readout-z{display:flex;align-items:center;gap:6px}.hover-readout-z--divider{border-bottom:1px solid var(--border);padding-bottom:4px}.hover-readout-label{color:var(--accent);font-weight:600}.hover-readout-input{width:60px;background:var(--bg-input);color:var(--text);border:1px solid var(--border);border-radius:3px;padding:2px 6px;font:inherit;text-align:right}.hover-readout-input:focus{outline:none;border-color:var(--accent);box-shadow:0 0 0 2px var(--accent-soft)}.hover-readout-pos{display:grid;grid-template-columns:12px auto 12px auto 12px auto;align-items:center;gap:4px}.hover-readout-pos>span:nth-child(odd){color:var(--text-dim)}.hover-readout-empty{color:var(--text-dim);font-style:italic}.hover-readout-unit{color:var(--text-dim);margin-left:4px}.hover-readout-vis{display:flex;flex-direction:column;align-items:stretch;gap:4px;border-top:1px solid var(--border);padding-top:4px}.hover-readout-count{color:var(--accent);font-weight:600}.hover-readout-chips{display:flex;flex-direction:column;gap:3px}.hover-readout-chip{display:flex;align-items:center;gap:6px;padding:2px 6px;border:1px solid var(--border);border-radius:3px;background:var(--bg-panel-2)}.hover-readout-chip-dot{width:8px;height:8px;border-radius:50%;box-shadow:0 0 3px currentColor}.hover-readout-chip-name{font-size:10px;color:var(--text)}.dropzone-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:9999;pointer-events:none;border:3px dashed var(--accent);background:var(--accent-soft);display:flex;align-items:center;justify-content:center}.dropzone-hint{background:#0e131ce6;border:1px solid var(--accent);border-radius:var(--radius);padding:20px 32px;text-align:center}.dropzone-title{color:var(--accent);font-weight:600;font-size:16px;letter-spacing:.5px}.dropzone-sub{margin-top:6px;color:var(--text-dim);font-family:SFMono-Regular,Consolas,Liberation Mono,monospace;font-size:11px}.modal-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;background:#0000008c;display:flex;align-items:center;justify-content:center;z-index:1000}.modal{background:var(--bg-panel);border:1px solid var(--border);border-radius:var(--radius);width:min(800px,92vw);max-height:86vh;display:flex;flex-direction:column;box-shadow:0 20px 80px #00000073}.modal-header{display:flex;align-items:center;justify-content:space-between;padding:10px 14px;border-bottom:1px solid var(--border);font-weight:600;font-size:13px}.modal-body{padding:12px 14px;flex:1 1 auto;display:flex;flex-direction:column;min-height:0}.modal-footer{padding:8px 14px;border-top:1px solid var(--border);display:flex;gap:6px;justify-content:flex-end}.help-modal{width:min(640px,92vw)}.help-modal-body{gap:14px;overflow-y:auto;font-size:12px;line-height:1.5}.help-modal-body section{margin:0}.help-modal-body h3{margin:0 0 4px;font-size:11px;text-transform:uppercase;letter-spacing:1px;color:var(--accent)}.help-modal-body p{margin:0}.help-modal-body code{background:var(--bg-panel-2);padding:1px 4px;border-radius:3px;font-size:11px}.help-modal-table{width:100%;border-collapse:collapse;margin-top:4px}.help-modal-table th,.help-modal-table td{text-align:left;padding:3px 6px;border-bottom:1px solid var(--border)}.help-modal-table th{color:var(--text-dim);font-weight:500}.help-modal-keys{margin:0;padding-left:16px}.help-modal-keys li{margin-bottom:2px}.help-modal-keys kbd{background:var(--bg-panel-2);border:1px solid var(--border-strong);border-radius:3px;padding:0 5px;font-size:10px;font-family:ui-monospace,monospace}.help-modal-footer{margin-top:4px;padding-top:6px;border-top:1px solid var(--border);font-size:11px;color:var(--text-dim)}.time-scrubber{display:flex;align-items:center;gap:8px;padding:6px 10px;background:var(--bg-panel);border-top:1px solid var(--border);font-size:11px}.time-scrubber-slider{flex:1;min-width:0;accent-color:var(--accent)}.time-scrubber-readout{color:var(--text-dim);font-family:ui-monospace,monospace;width:80px;text-align:right}.coverage-table-wrap{overflow-x:auto;margin-top:4px}.coverage-table{width:100%;border-collapse:collapse;font-size:11px}.coverage-table th,.coverage-table td{text-align:left;padding:4px 6px;border-bottom:1px solid var(--border);white-space:nowrap}.coverage-table th{color:var(--text-dim);font-weight:500;text-transform:uppercase;letter-spacing:.5px;font-size:10px}.coverage-table tr:hover td{background:var(--bg-panel-2)}.coverage-occ{color:#e0a040;font-weight:600}.urdf-paste-area{flex:1 1 auto;min-height:320px;font-family:SFMono-Regular,Consolas,Liberation Mono,monospace;font-size:12px;line-height:1.4;resize:vertical;white-space:pre}.modal-error{margin-top:6px;padding:6px 10px;background:#e936361a;border:1px solid rgba(233,54,54,.4);border-radius:var(--radius);color:var(--danger);font-size:11px;font-family:monospace;word-break:break-word}.orphan-row{display:inline-flex;align-items:center;gap:4px;margin-right:6px}.orphan-name{font-weight:600;color:var(--text)}.orphan-arrow{color:var(--text-dim)}.field-input--compact{padding:2px 6px;max-width:140px}.missing-banner{display:flex;align-items:center;gap:8px;padding:5px 10px;background:#fa9a261a;border:1px solid rgba(250,154,38,.4);border-radius:var(--radius);margin-left:8px;font-size:11px;color:var(--secondary)}.missing-banner--error{background:#dc3c3c1a;border-color:#dc3c3c73;color:#e57373;align-items:flex-start;flex-wrap:wrap;max-width:720px}.missing-banner--warn{align-items:flex-start;flex-wrap:wrap;max-width:720px}.urdf-findings-list{flex-basis:100%;margin:2px 0 0;padding:0 0 0 18px;max-height:140px;overflow-y:auto}.urdf-finding{list-style:none;font-family:monospace;font-size:10.5px;padding:1px 0;color:inherit}.urdf-finding--error{color:#e57373}.urdf-finding--warn{color:var(--secondary)}.left-panel::-webkit-scrollbar,.right-panel::-webkit-scrollbar,.left-panel-body::-webkit-scrollbar,.right-panel-body::-webkit-scrollbar,.live-views-strip::-webkit-scrollbar{width:8px;height:8px}.left-panel::-webkit-scrollbar-thumb,.right-panel::-webkit-scrollbar-thumb,.left-panel-body::-webkit-scrollbar-thumb,.right-panel-body::-webkit-scrollbar-thumb,.live-views-strip::-webkit-scrollbar-thumb{background:var(--border-strong);border-radius:4px}.left-panel::-webkit-scrollbar-track,.right-panel::-webkit-scrollbar-track,.left-panel-body::-webkit-scrollbar-track,.right-panel-body::-webkit-scrollbar-track,.live-views-strip::-webkit-scrollbar-track{background:transparent}.left-panel-body,.right-panel-body,.live-views-strip{scrollbar-width:thin;scrollbar-color:var(--border-strong) transparent}.library-toolbar{display:flex;gap:6px;padding:4px 6px 8px}.library-toolbar .field-input{flex:1;min-width:0}.library-family{border-top:1px solid var(--border)}.library-family:first-of-type{border-top:none}.library-family-header{width:100%;display:flex;align-items:center;gap:6px;padding:6px 8px;background:transparent;border:none;color:var(--text-dim);font-size:11px;font-weight:600;letter-spacing:.04em;text-transform:uppercase;cursor:pointer}.library-family-header:hover{color:var(--text)}.library-family-chevron{width:8px;color:var(--text-dim)}.library-family-glyph{font-family:monospace;font-size:10px;padding:1px 4px;border-radius:3px;background:var(--border);color:var(--text-dim)}.library-family-name{flex:1;text-align:left;text-transform:none;letter-spacing:0}.library-family-count{color:var(--text-dim);font-weight:400}.library-list{list-style:none;padding:0 6px 6px;margin:0}.library-row{display:flex;flex-direction:column;border-radius:var(--radius);margin-bottom:4px;background:#ffffff05}.library-row--builtin{background:#ffffff03}.library-row-summary{display:flex;align-items:center;gap:6px;padding:4px 6px}.library-row-name{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:12px}.library-row-fov,.library-row-range{color:var(--text-dim);font-family:monospace;font-size:11px}.library-row-actions{display:flex;gap:2px}.library-row-detail{padding:6px 8px 8px;border-top:1px dashed var(--border);display:flex;flex-direction:column;gap:3px}.library-row-notes{font-style:italic}.field--compact .field-label{min-width:90px;font-size:10px}.field--compact .field-input{font-size:11px;padding:2px 6px}.picker-wrap{position:relative;display:inline-block}.picker-popover{position:fixed;z-index:50;width:360px;max-height:480px;display:flex;flex-direction:column;background:var(--bg-panel-2);border:1px solid var(--border-strong);border-radius:var(--radius);box-shadow:0 12px 36px #0009;padding:8px;gap:6px}.picker-search{width:100%}.picker-quick{display:flex;flex-direction:column;gap:4px}.picker-quick-label{font-size:10px;color:var(--text-dim);text-transform:uppercase;letter-spacing:.04em}.picker-quick-buttons{display:flex;gap:4px;flex-wrap:wrap}.picker-quick-btn{display:inline-flex;align-items:center;gap:6px;background:#ffffff08;border:1px solid var(--border);border-radius:var(--radius);padding:4px 8px;cursor:pointer;color:var(--text);font-size:11px}.picker-quick-btn:hover{background:#ffffff12;border-color:var(--border-strong)}.picker-quick-glyph{font-family:monospace;font-size:10px;padding:1px 4px;border-radius:3px;background:var(--border);color:var(--text-dim)}.picker-divider{height:1px;background:var(--border);margin:2px 0}.picker-library{overflow-y:auto;flex:1;min-height:0}.picker-family{margin-bottom:4px}.picker-family-header{display:flex;align-items:center;gap:6px;padding:3px 4px;font-size:10px;text-transform:uppercase;letter-spacing:.04em;color:var(--text-dim)}.picker-family-glyph{font-family:monospace;font-size:9px;padding:1px 3px;border-radius:3px;background:var(--border)}.picker-family-rows{list-style:none;padding:0;margin:0}.picker-row{width:100%;display:grid;grid-template-columns:12px 1fr auto;align-items:center;gap:8px;background:transparent;border:none;text-align:left;cursor:pointer;padding:4px 6px;border-radius:var(--radius);color:var(--text);font-size:12px}.picker-row:hover{background:#ffffff0d}.picker-row-swatch{width:10px;height:10px;border-radius:50%;display:inline-block}.picker-row-meta{color:var(--text-dim);font-family:monospace;font-size:10px}.picker-empty{text-align:center;font-size:11px;color:var(--text-dim);padding:12px}.inspector-subtle{color:var(--text-dim);font-weight:400;font-size:12px}.left-panel,.right-panel{position:relative;display:flex;flex-direction:column}.left-panel-body,.right-panel-body{flex:1 1 auto;min-height:0;overflow-y:auto}.left-panel-body{direction:rtl}.left-panel-body>*{direction:ltr}.left-panel--collapsed,.right-panel--collapsed{border:none!important}.panel-gutter{position:absolute;top:0;bottom:0;width:10px;z-index:5;cursor:ew-resize;background:transparent;display:flex;align-items:center;justify-content:center}.panel-gutter--left{right:0}.panel-gutter--right{left:0}.panel-gutter:before{content:"";position:absolute;top:0;bottom:0;width:1px;background:var(--border);pointer-events:none}.panel-gutter--left:before{right:0}.panel-gutter--right:before{left:0}.panel-gutter:hover:before{background:var(--primary, #1ec4b6);width:2px}.panel-gutter-toggle{position:absolute;top:50%;transform:translateY(-50%);width:14px;height:36px;background:var(--bg-panel-2);border:1px solid var(--border);border-radius:3px;color:var(--text-dim);font-size:10px;display:flex;align-items:center;justify-content:center;cursor:pointer;padding:0}.panel-gutter-toggle:hover{color:var(--text);background:var(--border)}.left-panel>:not(.panel-gutter),.right-panel>:not(.panel-gutter){min-height:0}.right-panel-tabs{display:flex;background:var(--bg-panel);border-bottom:1px solid var(--border);padding:4px 8px 0;flex:0 0 auto}.right-panel-tab{flex:1;background:transparent;border:none;padding:8px 10px;color:var(--text-dim);font-size:12px;font-weight:500;cursor:pointer}.right-panel-tab:hover{color:var(--text)}.right-panel-tab.active{color:var(--accent)}.library-panel{padding:4px 0}.library-row-name--editable{background:transparent;border:1px solid transparent;padding:2px 4px;margin:-2px -4px;font:inherit;font-size:12px;color:inherit;border-radius:3px;width:100%;min-width:0;flex:1}.library-row-name--editable:hover{border-color:var(--border);background:#ffffff08}.library-row-name--editable:focus{outline:none;border-color:var(--accent);background:var(--bg-input)}.library-row-name--editable.invalid,.library-row-name--editable.invalid:focus{border-color:var(--danger);background:#e9363612}.item-name--editable{background:var(--bg-input);border:1px solid var(--accent);padding:1px 4px;margin:-1px -4px;border-radius:3px;color:inherit;font:inherit;width:auto;min-width:0;flex:1}.item-name--editable:focus{outline:none}.item-name{-webkit-user-select:none;user-select:none;cursor:text}.inspector-row-name{font-size:13px;font-weight:600;color:var(--text);padding:2px 0 6px;border-bottom:1px solid var(--border);margin-bottom:6px}.library-row-expand{font-size:11px;width:16px;text-align:center;color:var(--text-dim)}.library-row-expand:hover{color:var(--text)}.library-family-header-wrap{display:flex;align-items:center;gap:6px;padding-right:8px}.library-family-header-wrap .library-family-header{flex:1;padding-right:0}.library-family-collapseall{background:transparent;border:1px solid var(--border);border-radius:var(--radius);color:var(--text-dim);font-size:10px;padding:2px 6px;cursor:pointer}.library-family-collapseall:hover{color:var(--text);border-color:var(--border-strong)}
