@import "https://fonts.googleapis.com/css2?family=IBM+Plex+Mono:ital,wght@0,300;0,400;0,500;1,300&family=Chakra+Petch:wght@500;600&display=swap";*,:before,:after{box-sizing:border-box}:root{--bg:#0c0d0f;--panel:#0a0b0ee0;--border:#191c22;--border-mid:#22262f;--t3:#384055;--t2:#6e7a94;--t1:#b0b9cc;--t0:#dde3ef;--amber:#e8a53c;--amber-lo:#e8a53c12;--amber-border:#e8a53c38;--blue:#4d80ff;--blue-lo:#4d80ff14;--green:#5fba6f;--red:#e05c5c;--mono:"IBM Plex Mono", ui-monospace, "Cascadia Code", monospace;--display:"Chakra Petch", system-ui, sans-serif}html,body{background:var(--bg);width:100%;height:100%;color:var(--t2);font-family:var(--mono);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;margin:0;padding:0;font-size:11.5px;line-height:1.6;overflow:hidden}#root{width:100%;height:100%;overflow:hidden}.app-root{width:100%;height:100%;position:relative}.viewport-fill{position:absolute;inset:0}.hud{pointer-events:none;z-index:10;position:absolute;inset:0}.hud>*{pointer-events:auto}.panel{background:var(--panel);border:1px solid var(--border);-webkit-backdrop-filter:blur(18px)saturate(1.5)}.hud-header{align-items:stretch;height:34px;display:flex;position:absolute;top:16px;left:16px}.wordmark{font-family:var(--display);letter-spacing:.26em;text-transform:uppercase;color:var(--amber);border-right:1px solid var(--border-mid);-webkit-user-select:none;user-select:none;white-space:nowrap;cursor:default;background:0 0;border-top:none;border-bottom:none;border-left:none;align-items:center;padding:0 16px;font-size:11.5px;font-weight:600;transition:color .12s,background .12s;display:flex}.wordmark.wordmark-link{cursor:pointer}.wordmark.wordmark-link:hover{color:var(--t1);background:var(--amber-lo)}.open-btn{border:none;border-right:1px solid var(--border-mid);color:var(--t2);font-family:var(--mono);cursor:pointer;letter-spacing:.04em;white-space:nowrap;background:0 0;height:100%;padding:0 16px;font-size:11px;transition:color .12s,background .12s}.open-btn:hover:not(:disabled){color:var(--amber);background:var(--amber-lo)}.open-btn:disabled{opacity:.4;cursor:default}.open-btn.loading{animation:1.1s ease-in-out infinite pulse-opacity}@keyframes pulse-opacity{0%,to{opacity:.4}50%{opacity:.8}}.error-msg{color:var(--red);text-overflow:ellipsis;white-space:nowrap;border-right:1px solid var(--border-mid);align-items:center;max-width:280px;padding:0 12px;font-size:10.5px;display:flex;overflow:hidden}.hud-sidebar{scrollbar-width:thin;scrollbar-color:var(--border-mid) transparent;width:284px;max-height:calc(100dvh - 94px);position:absolute;top:62px;left:16px;overflow:hidden auto}.hud-sidebar::-webkit-scrollbar{width:3px}.hud-sidebar::-webkit-scrollbar-track{background:0 0}.hud-sidebar::-webkit-scrollbar-thumb{background:var(--border-mid)}.hud-stats{letter-spacing:.04em;align-items:center;gap:7px;height:26px;padding:0 13px;font-size:10.5px;display:flex;position:absolute;bottom:16px;right:16px}.stat-tag{letter-spacing:.06em;font-weight:500}.stat-ctx{color:var(--blue)}.stat-lyr{color:var(--amber)}.stat-sep{color:var(--t3)}.stat-num{color:var(--t2)}.stat-dir{color:var(--t3);text-overflow:ellipsis;white-space:nowrap;max-width:220px;overflow:hidden}.landing{z-index:5;background:var(--bg);justify-content:center;align-items:center;display:flex;position:absolute;inset:0}.landing-grid{background-image:radial-gradient(circle, var(--border) 1px, transparent 1px);opacity:.4;pointer-events:none;background-size:32px 32px;position:absolute;inset:0;-webkit-mask-image:radial-gradient(60% 50%,#000 20%,#0000 70%);mask-image:radial-gradient(60% 50%,#000 20%,#0000 70%)}.landing-content{flex-direction:column;align-items:center;gap:40px;width:100%;max-width:800px;animation:.5s ease-out landing-fade-in;display:flex;position:relative}@keyframes landing-fade-in{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}.landing-brand{text-align:center;-webkit-user-select:none;user-select:none}.landing-wordmark{font-family:var(--display);letter-spacing:.35em;text-transform:uppercase;color:var(--amber);text-indent:.35em;opacity:.85;font-size:44px;font-weight:600;line-height:1}.landing-tagline{letter-spacing:.22em;text-transform:uppercase;color:var(--t3);text-indent:.22em;margin-top:10px;font-size:10px}.landing-columns{gap:28px;width:100%;display:flex}.landing-section{flex:1;min-width:0}.landing-section-head{font-family:var(--display);letter-spacing:.28em;text-transform:uppercase;color:var(--t3);border-bottom:1px solid var(--border);margin-bottom:6px;padding-bottom:10px;font-size:8.5px;font-weight:600}.landing-action{cursor:pointer;width:100%;font-family:var(--mono);text-align:left;background:0 0;border:1px solid #0000;border-radius:4px;align-items:center;gap:12px;margin-top:4px;padding:10px 12px;transition:background .15s,border-color .15s;display:flex}.landing-action:hover:not(:disabled){background:var(--amber-lo);border-color:var(--amber-border)}.landing-action:disabled{opacity:.5;cursor:default}.landing-action-icon{border:1px solid var(--border-mid);width:32px;height:32px;color:var(--amber);background:#ffffff08;border-radius:6px;flex-shrink:0;justify-content:center;align-items:center;transition:border-color .15s;display:flex}.landing-action:hover:not(:disabled) .landing-action-icon{border-color:var(--amber-border)}.landing-action-body{flex-direction:column;flex:1;gap:1px;min-width:0;display:flex}.landing-action-title{color:var(--t0);letter-spacing:.02em;font-size:11.5px;font-weight:400}.landing-action-desc{color:var(--t3);letter-spacing:.02em;white-space:nowrap;text-overflow:ellipsis;font-size:10px;overflow:hidden}.landing-action-keys{flex-shrink:0}.landing-action-keys kbd{font-family:var(--mono);letter-spacing:.06em;color:var(--t3);border:1px solid var(--border);background:#ffffff08;border-radius:3px;padding:2px 6px;font-size:9px}.landing-recents{flex-direction:column;gap:1px;display:flex}.landing-recent-row{border:1px solid #0000;border-radius:3px;align-items:center;transition:background .12s,border-color .12s;display:flex;position:relative}:is(.landing-recent-row:has(.landing-recent:hover:not(:disabled)),.landing-recent-row:has(.landing-recent-remove:hover)){border-color:var(--border-mid);background:#ffffff06}.landing-recent{cursor:pointer;min-width:0;font-family:var(--mono);text-align:left;background:0 0;border:none;flex:1;align-items:center;gap:8px;padding:8px 10px;display:flex}.landing-recent:disabled{opacity:.5;cursor:default}.landing-recent.loading{animation:1.1s ease-in-out infinite pulse-opacity}.landing-recent-icon{color:var(--t3);flex-shrink:0;align-items:center;transition:color .12s;display:flex}.landing-recent-row:has(.landing-recent:hover:not(:disabled)) .landing-recent-icon{color:var(--amber)}.landing-recent-name{color:var(--t1);text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0;font-size:11px;overflow:hidden}.landing-recent-time{color:var(--t3);letter-spacing:.02em;flex-shrink:0;font-size:9.5px}.landing-recent-remove{color:var(--t3);opacity:0;cursor:pointer;background:0 0;border:none;flex-shrink:0;padding:4px 8px;font-family:inherit;font-size:14px;line-height:1;transition:opacity .12s,color .12s}.landing-recent-row:hover .landing-recent-remove{opacity:1}.landing-recent-remove:hover{color:var(--red)}.landing-footer{color:var(--t3);letter-spacing:.03em;opacity:.6;text-align:center;font-size:10px}.landing-footer-hl{color:var(--t2);letter-spacing:.05em}.inspector-section-head{font-family:var(--display);letter-spacing:.28em;text-transform:uppercase;color:var(--t3);border-bottom:1px solid var(--border);padding:9px 14px 6px;font-size:8.5px;font-weight:600}.properties-section .inspector-section-head{border-bottom:none;padding-bottom:0}.camera-block{border-bottom:1px solid var(--border);padding:8px 14px 10px}.kv-table{flex-direction:column;gap:4px;display:flex}.kv-row{grid-template-columns:40px 1fr;gap:0 6px;line-height:1.7;display:grid}.kv-key{color:var(--t3);letter-spacing:.03em;font-size:10.5px}.kv-val{color:var(--t1);font-variant-numeric:tabular-nums;text-overflow:ellipsis;white-space:nowrap;font-size:11px;overflow:hidden}.layer-card{border-bottom:1px solid var(--border)}details>summary{list-style:none}details>summary::-webkit-details-marker{display:none}.layer-summary{cursor:pointer;-webkit-user-select:none;user-select:none;align-items:center;gap:7px;padding:7px 14px;transition:background .1s;display:flex}.layer-summary:hover{background:#ffffff05}.layer-chevron{width:9px;height:9px;color:var(--t3);flex-shrink:0;transition:transform .14s}details[open] .layer-chevron{transform:rotate(90deg)}.layer-tag{letter-spacing:.1em;border:1px solid;flex-shrink:0;padding:1px 5px;font-size:8.5px;font-weight:500;line-height:1.5}.layer-tag-ctx{color:var(--blue);background:var(--blue-lo);border-color:#4d80ff4d}.layer-tag-lyr{color:var(--amber);border-color:var(--amber-border);background:var(--amber-lo)}.layer-name{color:var(--t1);text-overflow:ellipsis;white-space:nowrap;flex:1;font-size:11px;overflow:hidden}.layer-counts{color:var(--t3);white-space:nowrap;flex-shrink:0;font-size:10px}.layer-body{padding:2px 14px 10px 30px}.layer-sub-head{letter-spacing:.2em;text-transform:uppercase;color:var(--t3);margin:8px 0 3px;font-size:8.5px}.data-row{color:var(--t2);text-overflow:ellipsis;white-space:nowrap;font-size:10.5px;line-height:1.65;transition:color .1s;overflow:hidden}button.data-row{width:100%;font:inherit;color:inherit;text-align:left;cursor:pointer;background:0 0;border:none;margin:0;display:block}.data-row:hover{color:var(--t1)}.data-name{color:var(--t1);font-weight:500}.data-type{color:var(--t3)}.render-row{color:var(--t2);flex-wrap:wrap;gap:2px 14px;font-size:10.5px;display:flex}.render-kv{white-space:nowrap}.render-k{color:var(--t3)}.data-row-clickable{cursor:pointer;border-radius:2px;margin:0 -4px;padding:1px 4px;transition:background .1s,color .1s}.data-row-clickable:hover{color:var(--t0);background:#e8a53c0f}.data-row-selected{color:var(--amber);border-left:2px solid var(--amber);background:#e8a53c1a;padding-left:6px}.data-row-selected:hover{color:var(--amber);background:#e8a53c24}.hud-properties{scrollbar-width:thin;scrollbar-color:var(--border-mid) transparent;width:284px;max-height:calc(100dvh - 94px);position:absolute;top:62px;right:16px;overflow:hidden auto}.hud-properties::-webkit-scrollbar{width:3px}.hud-properties::-webkit-scrollbar-track{background:0 0}.hud-properties::-webkit-scrollbar-thumb{background:var(--border-mid)}.properties-header{border-bottom:1px solid var(--border);align-items:center;gap:8px;padding:9px 14px;display:flex}.properties-title{font-family:var(--display);letter-spacing:.1em;color:var(--t0);font-size:11px;font-weight:600}.properties-layer{color:var(--t3);text-overflow:ellipsis;white-space:nowrap;margin-left:auto;font-size:10px;overflow:hidden}.properties-section{border-bottom:1px solid var(--border)}.properties-body{padding:10px 14px 14px}.num-input{border:1px solid var(--border-mid);color:var(--t0);font-family:var(--mono);font-variant-numeric:tabular-nums;background:#ffffff0a;border-radius:2px;outline:none;width:100%;padding:2px 5px;font-size:11px;transition:border-color .12s}.num-input:focus{border-color:var(--amber-border)}.num-input::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}.num-input::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}.num-input{appearance:textfield}.num-label{cursor:ew-resize;-webkit-user-select:none;user-select:none;transition:color .1s}.num-label:hover{color:var(--t1)}.num-label:active{color:var(--amber)}.vec3-row{grid-template-columns:40px 1fr 1fr 1fr;align-items:center;gap:0 6px;min-height:1.7lh;display:grid}.vec3-cell{border:1px solid var(--border-mid);background:#ffffff0a;border-radius:2px;flex-direction:row;align-items:stretch;display:flex;overflow:hidden}.vec3-cell .num-input{background:0 0;border:none;border-radius:0;padding:2px 4px}.vec3-component{color:var(--t2);text-transform:uppercase;letter-spacing:.06em;border-right:1px solid var(--border-mid);background:#0000002e;flex-shrink:0;justify-content:center;align-items:center;min-width:18px;padding:0 5px;font-size:9px;font-weight:500;line-height:1;display:flex}.vec3-row>.vec3-cell:nth-child(2) .vec3-component{color:var(--red)}.vec3-row>.vec3-cell:nth-child(3) .vec3-component{color:var(--green)}.vec3-row>.vec3-cell:nth-child(4) .vec3-component{color:var(--blue)}.mat-select{border:1px solid var(--border-mid);color:var(--t0);font-family:var(--mono);cursor:pointer;appearance:none;background:#ffffff0a;border-radius:2px;outline:none;width:100%;padding:2px 5px;font-size:11px;transition:border-color .12s}.mat-select:focus{border-color:var(--amber-border)}.mat-select option{background:var(--bg);color:var(--t0)}.toggle-btn{border:1px solid var(--border-mid);color:var(--t3);font-family:var(--mono);letter-spacing:.06em;cursor:pointer;text-align:left;background:#ffffff0a;border-radius:2px;padding:1px 10px;font-size:10px;transition:background .12s,color .12s,border-color .12s}.toggle-btn:hover{color:var(--t1)}.toggle-btn.active{background:var(--amber-lo);border-color:var(--amber-border);color:var(--amber)}
