:root{color:#d9e0e4;font-synthesis:none;text-rendering:optimizelegibility;color-scheme:dark;--shell:#101519;--panel:#151b20;--panel-strong:#1b2228;--border:#2c363d;--border-strong:#40505a;--text:#e2e8eb;--muted:#8e9ca5;--accent:#45e0b1;--accent-ink:#061d16;--danger:#ff8f7f;background:#101519;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}*{box-sizing:border-box}html,body,#root{width:100%;min-width:320px;height:100%;margin:0;overflow:hidden}button,input,select{font:inherit;letter-spacing:0}button{color:inherit}button:focus-visible,input:focus-visible,select:focus-visible,.control-help>button:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.app-shell{background:var(--shell);grid-template-rows:58px minmax(0,1fr) 30px;width:100%;height:100dvh;display:grid}.planned-tool-shell{background:radial-gradient(circle at 50% 15%, #45e0b114, transparent 34rem), var(--shell);min-height:100dvh}.tool-loading{width:100%;height:100dvh;color:var(--muted);background:var(--shell);justify-content:center;align-items:center;gap:12px;display:flex}.converter-shell{background:radial-gradient(circle at 20% 0%, #45e0b112, transparent 34rem), var(--shell);grid-template-rows:58px minmax(0,1fr);width:100%;height:100dvh;display:grid}.converter-header{z-index:10;border-bottom:1px solid var(--border);background:#12181c;justify-content:space-between;align-items:center;padding:0 18px;display:flex}.converter-header-actions{align-items:center;gap:18px;display:flex}.converter-header-actions>a{color:#b5c0c6;font-size:12px;font-weight:650;text-decoration:none}.converter-header-actions>a:hover,.converter-header-actions>a:focus-visible{color:var(--accent)}.converter-help-action{border:1px solid var(--border);color:#b5c0c6;background:var(--panel-strong);cursor:pointer;border-radius:5px;align-items:center;gap:5px;min-height:30px;padding:0 8px;font-size:11px;font-weight:650;display:inline-flex}.converter-help-action:hover,.converter-help-action:focus-visible{color:var(--accent);border-color:var(--border-strong)}.converter-main{padding:42px clamp(18px,4vw,58px) 58px;overflow:auto}.converter-drop-overlay{z-index:30;border:2px dashed var(--accent);color:var(--text);pointer-events:none;background:#061d16e0;place-items:center;font-size:20px;font-weight:700;display:grid;position:fixed;inset:58px 0 0}.converter-intro,.converter-start-card,.converter-workspace{width:min(1180px,100%);margin-left:auto;margin-right:auto}.converter-intro{margin-bottom:24px}.converter-section-heading span{color:var(--accent);letter-spacing:.1em;text-transform:uppercase;font-size:10px;font-weight:750}.converter-intro h1{color:var(--text);margin:0 0 8px;font-size:clamp(28px,4vw,38px);line-height:1.1}.converter-intro>p{max-width:720px;color:var(--muted);margin:0;font-size:14px;line-height:1.55}.converter-start-card{gap:12px;display:grid}.converter-dropzone{border:1px dashed var(--border-strong);min-height:280px;color:var(--muted);cursor:pointer;background:#151b20d1;border-radius:12px;justify-items:center;gap:8px;padding:40px;display:grid}.converter-dropzone:hover{border-color:var(--accent);background:#1b2228eb}.converter-dropzone svg{color:var(--accent)}.converter-dropzone strong{color:var(--text);font-size:18px}.converter-dropzone span{font-size:13px}.converter-dropzone small{color:#6f7e86;margin-top:10px;font-size:11px}.converter-workspace{grid-template-columns:minmax(230px,.8fr) minmax(360px,1.5fr) minmax(260px,.9fr);align-items:stretch;gap:14px;display:grid}.converter-details,.converter-preview-card,.converter-output-card{border:1px solid var(--border);background:#151b20eb;border-radius:9px;min-width:0;padding:18px}.converter-section-heading{justify-content:space-between;align-items:center;gap:12px;min-height:38px;margin-bottom:16px;display:flex}.converter-section-heading h2{color:var(--text);margin:4px 0 0;font-size:14px}.converter-section-heading button,.converter-details button{border:1px solid var(--border);color:#aeb9bf;background:var(--panel-strong);cursor:pointer;border-radius:4px;align-items:center;gap:5px;min-height:28px;padding:0 8px;font-size:10px;display:inline-flex}.converter-facts,.converter-bounds dl{gap:0;margin:0;display:grid}.converter-facts>div,.converter-bounds dl>div{border-bottom:1px solid #2c363d94;grid-template-columns:minmax(70px,.75fr) minmax(0,1.25fr);gap:8px;padding:8px 0;font-size:10px;display:grid}.converter-facts dt,.converter-bounds dt{color:var(--muted)}.converter-facts dd,.converter-bounds dd{color:var(--text);text-align:right;text-overflow:ellipsis;white-space:nowrap;margin:0;overflow:hidden}.converter-bounds{margin-top:18px}.converter-batch{margin-top:16px}.e57-converter-overlay{width:100vw;max-width:none;height:100dvh;max-height:none;color:inherit;z-index:1000;background:var(--background,#101619);border:0;margin:0;padding:16px;position:fixed;inset:0;overflow:auto}.converter-batch-heading{justify-content:space-between;align-items:baseline;gap:8px;display:flex}.converter-batch-heading h3{color:var(--text);margin:0;font-size:11px}.converter-batch-heading span,.converter-batch>p{color:var(--muted);font-size:9px}.converter-batch ol{max-height:150px;margin:8px 0 0;padding:0;list-style:none;overflow:auto}.converter-batch li{color:var(--text);border-bottom:1px solid #2c363d94;grid-template-columns:minmax(0,1fr) auto;gap:8px;padding:7px 0;font-size:9px;display:grid}.converter-batch li>span{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.converter-batch li>small{color:var(--muted);font-size:8px}.converter-batch li[data-status=completed]>small{color:var(--accent)}.converter-batch li[data-status=failed]>small{color:var(--danger)}.converter-batch>p{margin:8px 0 0;line-height:1.45}.converter-folder-output,.converter-e57-scan-actions{align-items:center;gap:8px;margin-top:10px;display:flex}.converter-folder-output button,.converter-e57-scan-actions button{border:1px solid var(--border);min-height:28px;color:var(--text);font:inherit;background:#11181c;border-radius:5px;flex:none;align-items:center;gap:5px;padding:5px 8px;display:inline-flex}.converter-folder-output span,.converter-e57-scans>p{color:var(--muted);font-size:9px;line-height:1.4}.converter-e57-scans{border:1px solid var(--border);border-radius:6px;margin:12px 0 0;padding:10px}.converter-e57-scans legend{color:var(--text);padding:0 4px;font-size:10px}.converter-e57-scan-list{max-height:180px;margin-top:8px;overflow:auto}.converter-e57-scan-list label{color:var(--text);border-bottom:1px solid #2c363d94;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:7px;padding:6px 0;font-size:9px;display:grid}.converter-e57-scan-list label span{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.converter-e57-scan-list small{color:var(--muted);font-size:8px}.converter-e57-scans>p{margin:9px 0 0}.converter-bounds h3{color:var(--text);margin:0 0 4px;font-size:11px}.converter-frame-actions{align-items:center;gap:6px;margin-top:10px;display:flex}.converter-frame-actions>button{justify-content:center;width:30px;min-width:30px;padding:0}.converter-frame-actions button:disabled{cursor:not-allowed;opacity:.42}.converter-playback-toggle{color:#07110e!important;border-color:var(--accent)!important;background:var(--accent)!important}.converter-playback-speed{color:var(--muted);align-items:center;gap:5px;margin-left:auto;font-size:9px;display:flex}.converter-playback-speed select{border:1px solid var(--border);min-height:28px;color:var(--text);background:var(--panel-strong);border-radius:4px;font-size:10px}.converter-recording-scrubber{gap:4px;margin-top:10px;display:grid}.converter-recording-scrubber input{width:100%;accent-color:var(--accent)}.converter-recording-scrubber span{color:var(--muted);text-align:center;font-size:9px}.converter-recording-facts{grid-template-columns:1fr 1fr;gap:8px;margin:10px 0 0;display:grid}.converter-recording-facts>div{border:1px solid #2c363d94;border-radius:5px;gap:3px;padding:7px;font-size:9px;display:grid}.converter-recording-facts dt{color:var(--muted)}.converter-recording-facts dd{color:var(--text);margin:0;font-weight:700}.converter-recording-notice{color:var(--muted);margin-top:10px;font-size:9px;line-height:1.45}.converter-recording-notice summary{cursor:pointer;color:#93a1a8;width:fit-content}.converter-recording-notice p{border-left:1px solid var(--border);margin:6px 0 0;padding-left:12px}.converter-preview-card{grid-template-rows:auto minmax(320px,1fr) auto;display:grid}.converter-preview{background:#0d1215;border:1px solid #202a30;border-radius:6px;min-height:320px;position:relative;overflow:hidden}.converter-preview .viewer-stage{position:absolute;inset:0}.converter-preview-placeholder{color:var(--muted);pointer-events:none;place-content:center;justify-items:center;gap:12px;display:grid;position:absolute;inset:0}.converter-preview-placeholder strong{font-size:12px}.converter-preview-note,.converter-output-card>p,.converter-local-note{color:var(--muted);margin:12px 0 0;font-size:10px;line-height:1.5}.converter-output-card{align-self:stretch}.converter-frame-range{border:1px solid var(--border);border-radius:7px;gap:10px;margin:16px 0 0;padding:12px;display:grid}.converter-frame-range legend{color:var(--text);padding:0 5px;font-size:10px;font-weight:700}.converter-range-mode{grid-template-columns:repeat(3,minmax(0,1fr));gap:7px;display:grid}.converter-range-mode label{color:var(--muted);align-items:center;gap:6px;font-size:10px;display:flex}.converter-range-mode input{accent-color:var(--accent)}.converter-trim-help{color:var(--muted);margin:0;font-size:9px;line-height:1.45}.converter-trim-sliders{gap:6px;display:grid}.converter-trim-sliders label{color:var(--muted);grid-template-columns:34px minmax(0,1fr) 58px;align-items:center;gap:7px;font-size:9px;display:grid}.converter-trim-sliders input[type=range]{width:100%;accent-color:var(--accent)}.converter-trim-number,.converter-stride-input input{border:1px solid var(--border-strong);min-width:0;min-height:32px;color:var(--text);background:var(--panel-strong);border-radius:4px;padding:0 6px}.converter-stride-input{width:96px}.converter-stride-input label{color:var(--muted);gap:4px;font-size:9px;display:grid}.converter-stride-input input{width:100%;min-width:0}.converter-range-shortcuts{flex-wrap:wrap;gap:6px;display:flex}.converter-range-shortcuts button{border:1px solid var(--border);min-height:28px;color:var(--muted);background:var(--panel-strong);cursor:pointer;border-radius:4px;padding:0 8px;font-size:9px}.converter-range-summary{color:var(--muted);flex-wrap:wrap;align-items:baseline;gap:6px;font-size:9px;display:flex}.converter-range-summary strong{color:var(--text);font-size:12px}.converter-range-summary span:last-child:not(:first-child){flex-basis:100%}.converter-output-select{color:var(--muted);gap:6px;font-size:10px;display:grid}.converter-output-select select{border:1px solid var(--border-strong);width:100%;min-height:36px;color:var(--text);background:var(--panel-strong);opacity:1;border-radius:5px;padding:0 10px}.converter-flow{color:var(--muted);justify-content:center;align-items:center;gap:14px;margin:18px 0 4px;display:flex}.converter-flow strong{border:1px solid var(--border);color:var(--text);background:#101519;border-radius:5px;padding:7px 10px;font-size:11px}.converter-convert,.converter-cancel{cursor:pointer;border:1px solid #0000;border-radius:5px;justify-content:center;align-items:center;gap:7px;width:100%;min-height:38px;margin-top:18px;font-size:12px;font-weight:750;display:inline-flex}.converter-convert{color:var(--accent-ink);background:var(--accent)}.converter-convert:hover:not(:disabled){background:#69e7c1}.converter-convert:disabled{cursor:not-allowed;opacity:.42}.converter-cancel{border-color:var(--border-strong);color:var(--text);background:var(--panel-strong)}.converter-progress{color:var(--muted);gap:7px;margin-top:18px;font-size:10px;display:grid}.converter-progress progress{width:100%;height:5px;accent-color:var(--accent)}.converter-success{color:var(--accent);background:#45e0b10f;border:1px solid #45e0b152;border-radius:5px;grid-template-columns:20px minmax(0,1fr);gap:9px;margin-top:18px;padding:10px;display:grid}.converter-success div{gap:4px;display:grid}.converter-success strong{color:var(--text);font-size:11px}.converter-success span{color:var(--muted);font-size:9px;line-height:1.45}.converter-error{color:var(--danger);background:#ff8f7f0f;border:1px solid #ff8f7f52;border-radius:5px;margin:12px 0 0;padding:9px 10px;font-size:10px;line-height:1.45}.converter-status{color:var(--muted);font-size:10px}.converter-local-note{align-items:flex-start;gap:6px;display:flex}.converter-local-note svg{color:var(--accent);flex:none}.converter-footer{border-top:1px solid var(--border);width:min(1180px,100%);color:var(--muted);flex-wrap:wrap;justify-content:center;align-items:center;gap:7px 14px;margin:36px auto 0;padding:20px 0 4px;font-size:10px;display:flex}.converter-footer a{color:#b5c0c6;text-decoration:none}.converter-footer a:hover,.converter-footer a:focus-visible{color:var(--accent)}.ouster-workspace{grid-template-columns:minmax(250px,.9fr) minmax(380px,1.5fr) minmax(260px,.8fr)}.ouster-health{color:var(--accent);background:#45e0b112;border:1px solid #45e0b14d;border-radius:6px;align-items:center;gap:7px;margin-bottom:12px;padding:9px;font-size:10px;line-height:1.4;display:flex}.ouster-health.has-issues{color:#f2bf6b;background:#f2bf6b12;border-color:#f2bf6b59}.ouster-problem-list{flex-wrap:wrap;gap:5px;margin-top:8px;display:flex}.ouster-problem-list button{min-height:24px;padding:0 6px}.ouster-range-inputs{grid-template-columns:1fr 1fr;gap:8px;margin:12px 0;display:grid}.ouster-pending-files{color:var(--muted);background:#45e0b10a;border:1px solid #45e0b13d;border-radius:6px;flex-wrap:wrap;align-items:center;gap:6px;padding:9px 10px;font-size:10px;display:flex}.ouster-pending-files strong{color:var(--accent);margin-right:2px}.ouster-pending-files span{text-overflow:ellipsis;white-space:nowrap;background:#ffffff0a;border-radius:4px;max-width:100%;padding:3px 6px;overflow:hidden}.ouster-zip-note{color:#738189;margin:0;font-size:9px;line-height:1.45}.ouster-range-inputs label{color:var(--muted);gap:5px;font-size:10px;display:grid}.ouster-range-inputs input{border:1px solid var(--border);width:100%;min-width:0;color:var(--text);background:var(--panel-strong);border-radius:4px;padding:8px}.ouster-export-warning{color:#b8a47d;background:#f2bf6b0d;border:1px solid #f2bf6b47;border-radius:5px;align-items:flex-start;gap:7px;margin-top:14px;padding:8px 9px;font-size:9px;line-height:1.45;display:flex}.ouster-export-warning svg{flex:none}.converter-download{width:100%;min-height:38px;color:var(--accent);cursor:pointer;background:#45e0b112;border:1px solid #45e0b166;border-radius:5px;justify-content:center;align-items:center;gap:7px;margin-top:11px;font-size:11px;font-weight:700;display:inline-flex}.converter-download:hover,.converter-download:focus-visible{background:#45e0b11f}.ouster-help-dialog .help-content{grid-template-columns:1fr 1fr}.ouster-help-dialog .help-content ol{color:var(--muted);gap:7px;margin:8px 0 0;padding-left:18px;font-size:10px;line-height:1.45;display:grid}@media (width<=960px){.converter-workspace{grid-template-columns:minmax(220px,.8fr) minmax(360px,1.2fr)}.converter-output-card{grid-column:1/-1}}@media (width<=680px){.converter-header-actions>a{display:none}.converter-main{padding:22px 14px 42px}.converter-intro h1{font-size:28px}.converter-workspace{grid-template-columns:1fr}.converter-output-card{grid-column:auto}.converter-preview-card{grid-template-rows:auto 320px auto}.converter-range-mode{grid-template-columns:1fr}}.planned-tool-header{border-bottom:1px solid var(--border);background:#12181c;justify-content:space-between;align-items:center;min-height:58px;padding:0 18px;display:flex}.planned-tool-brand{color:var(--text);align-items:center;gap:10px;font-size:15px;font-weight:700;text-decoration:none;display:inline-flex}.planned-tool-content{justify-items:start;max-width:680px;margin:0 auto;padding:clamp(64px,14vh,140px) 24px 64px;display:grid}.planned-tool-release{color:var(--accent);letter-spacing:.08em;text-transform:uppercase;font-size:12px;font-weight:700}.planned-tool-content h1{color:var(--text);margin:12px 0 14px;font-size:clamp(32px,6vw,56px);line-height:1.05}.planned-tool-content p{max-width:58ch;color:var(--muted);margin:0 0 28px;font-size:16px;line-height:1.65}.planned-tool-content .primary-action{min-height:38px;padding:0 16px;text-decoration:none}.topbar{z-index:10;border-bottom:1px solid var(--border);background:#12181c;grid-template-columns:minmax(180px,1fr) repeat(6,auto);align-items:center;gap:24px;padding:0 14px 0 12px;display:grid}.brand-block{align-items:center;gap:10px;min-width:0;display:flex}.brand-mark{border-radius:6px;width:34px;height:34px}.brand-block h1{color:var(--text);margin:0;font-size:15px;font-weight:700;line-height:1.1}.brand-block span{color:var(--muted);margin-top:3px;font-size:10px;line-height:1;display:block}.brand-block a{color:inherit}.brand-block a:hover,.brand-block a:focus-visible{color:var(--text)}.privacy-note{color:#9ba9b1;white-space:nowrap;align-items:center;gap:7px;font-size:11px;display:flex}.privacy-note svg{color:var(--accent)}.privacy-settings-action{cursor:pointer;background:0 0;border:0;padding:0}.privacy-settings-action:hover,.privacy-settings-action:focus-visible{color:var(--text)}.primary-action,.secondary-action,.help-action,.view-actions button{cursor:pointer;border:1px solid #0000;border-radius:5px;justify-content:center;align-items:center;gap:7px;min-height:32px;font-size:12px;font-weight:650;display:inline-flex}.help-action{border:1px solid var(--border);color:#aeb9bf;background:var(--panel-strong);cursor:pointer;border-radius:5px;justify-content:center;align-items:center;gap:6px;min-height:32px;padding:0 8px;font-size:11px;display:inline-flex}.secondary-action{border:1px solid var(--border);color:#b5c0c6;background:var(--panel-strong);cursor:pointer;border-radius:5px;justify-content:center;align-items:center;gap:6px;min-height:32px;padding:0 9px;font-size:11px;font-weight:650;display:inline-flex}.secondary-action:hover,.help-action:hover{border-color:var(--border-strong);color:var(--text)}.primary-action{color:var(--accent-ink);background:var(--accent);padding:0 13px}.primary-action:hover{background:#69e7c1}.sample-select,.language-control select,.control-select{border:1px solid var(--border);color:#b8c3c9;background:var(--panel-strong);cursor:pointer;border-radius:5px;min-height:32px;font-size:11px}.language-control{color:#9ba9b1;align-items:center;gap:6px;display:inline-flex}.language-control svg{color:var(--accent);flex:none}.language-control select{max-width:104px;padding:0 22px 0 8px}.sample-select{max-width:142px;padding:0 27px 0 10px}.control-select{width:100%;padding:0 9px}.recording-controls .field-label{margin-top:14px}.recording-controls h2+.field-label{margin-top:0}.recording-warning{color:#d8c184;background:#292515;border:1px solid #695a33;border-radius:5px;grid-template-columns:16px minmax(0,1fr);gap:7px;margin:0 0 14px;padding:9px;font-size:10px;line-height:1.4;display:grid}.recording-warning svg{margin-top:1px}.recording-topic-select{font-family:SFMono-Regular,Consolas,monospace}.recording-topic-select[aria-describedby]{border-color:var(--accent);box-shadow:0 0 0 1px #44b4a533}.recording-topic-guidance{color:#8fd5ca;margin:7px 0 0;font-size:10px;line-height:1.4}.recording-schema{color:var(--muted);text-overflow:ellipsis;white-space:nowrap;margin:7px 0 0;font-family:SFMono-Regular,Consolas,monospace;font-size:9px;overflow:hidden}.tools-panel .field-label{margin-top:14px}.tool-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:5px;display:grid}.tool-grid button,.tool-command,.view-shortcuts button,.filter-heading button,.segmented-control button{border:1px solid var(--border);color:var(--muted);cursor:pointer;background:#151b1f;border-radius:4px}.tool-grid button{text-align:left;align-items:center;gap:5px;min-width:0;min-height:34px;padding:0 7px;font-size:9px;display:flex;position:relative}.tool-grid button.has-persistent-state:not(.is-active):after{background:var(--accent);content:"";border-radius:50%;width:5px;height:5px;position:absolute;top:5px;right:5px}.tool-grid button.has-persistent-state:not(.is-active){color:#b7cbc6;background:#14221f;border-color:#34534e}.tool-grid button span{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.tool-grid button:hover:not(:disabled),.tool-command:hover:not(:disabled),.view-shortcuts button:hover:not(:disabled),.filter-heading button:hover:not(:disabled),.segmented-control button:hover:not(:disabled){color:var(--text);border-color:#4d6868}.tool-grid button.is-active,.segmented-control button[aria-pressed=true]{border-color:var(--accent);color:#d9f7f0;background:#16332e}.tool-grid button:disabled,.tool-command:disabled,.view-shortcuts button:disabled{cursor:default;opacity:.45}.tool-command{justify-content:center;align-items:center;gap:6px;width:100%;min-height:31px;margin-top:7px;padding:0 8px;font-size:10px;display:flex}.segmented-control{grid-template-columns:repeat(2,minmax(0,1fr));gap:4px;display:grid}.segmented-control button{min-height:29px;padding:0 7px;font-size:9px}.view-shortcuts{grid-template-columns:repeat(3,minmax(0,1fr));gap:4px;display:grid}.view-shortcuts button{min-height:27px;padding:0 5px;font-size:9px}.tool-details,.filter-block,.clip-controls{border-top:1px solid var(--border);margin-top:15px;padding-top:13px}.tool-details h3,.clip-controls h3{color:var(--text);text-transform:uppercase;margin:0 0 9px;font-size:10px;font-weight:700}.tool-details dl,.clip-dimensions{gap:5px;margin:0;display:grid}.tool-details dl div,.clip-dimensions div{grid-template-columns:minmax(0,1fr) minmax(0,1.35fr);gap:8px;display:grid}.tool-details dt,.clip-dimensions dt{color:var(--muted);font-size:9px}.tool-details dd,.clip-dimensions dd{overflow-wrap:anywhere;min-width:0;color:var(--text);text-align:right;margin:0;font-family:SFMono-Regular,Consolas,monospace;font-size:9px}.filter-heading{min-height:26px;color:var(--label);text-transform:uppercase;justify-content:space-between;align-items:center;gap:8px;font-size:10px;font-weight:700;display:flex}.filter-heading div{gap:4px;display:flex}.filter-heading button{min-height:24px;padding:0 6px;font-size:8px}.classification-list{border-top:1px solid var(--border);max-height:152px;margin-top:5px;display:grid;overflow-y:auto}.classification-list label{min-height:27px;color:var(--muted);border-bottom:1px solid #222b30;grid-template-columns:16px minmax(0,1fr) auto;align-items:center;gap:5px;font-size:9px;display:grid}.classification-list input{accent-color:var(--accent);margin:0}.classification-list small{font-family:SFMono-Regular,Consolas,monospace;font-size:8px}.numeric-pair{grid-template-columns:repeat(2,minmax(0,1fr));gap:6px;display:grid}.numeric-pair label,.box-coordinate-grid div{gap:4px;display:grid}.numeric-pair span,.box-coordinate-grid span{color:var(--muted);text-transform:uppercase;font-size:8px}.numeric-pair input,.box-coordinate-grid input,.control-number{border:1px solid var(--border);width:100%;min-width:0;height:29px;color:var(--text);background:#11171a;border-radius:4px;padding:0 6px;font-family:SFMono-Regular,Consolas,monospace;font-size:9px}.control-number{width:100%}.clip-controls .range-label{margin-top:12px}.clip-controls .segmented-control{margin-top:10px}.box-coordinate-grid{gap:7px;display:grid}.clip-field-headings{color:var(--muted);text-align:center;text-transform:uppercase;grid-template-columns:18px minmax(0,1fr) minmax(0,1fr);gap:4px;margin-bottom:4px;font-size:8px;display:grid}.box-coordinate-grid div{grid-template-columns:18px minmax(0,1fr) minmax(0,1fr);align-items:center}.clip-dimensions{margin-top:10px}.clip-command-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:5px;margin-top:10px;display:grid}.clip-command-grid .tool-command{min-width:0;margin-top:0;padding:4px 6px;font-size:9px}.clip-command-grid .tool-command:last-child{grid-column:1/-1}.control-note{color:var(--muted);margin:7px 0 0;font-size:9px;line-height:1.4}.workspace{grid-template-columns:274px minmax(0,1fr);min-height:0;display:grid}.control-panel{border-right:1px solid var(--border);background:var(--panel);scrollbar-width:thin;min-height:0;overflow:auto}.panel-section{border-bottom:1px solid var(--border);padding:16px 15px}.panel-section h2,.field-label{color:#82919a;text-transform:uppercase;margin:0 0 11px;font-size:10px;font-weight:750;line-height:1;display:block}.export-panel{gap:10px;display:grid}.export-toggle{margin-top:0}.export-details,.export-form-scroll{gap:12px;min-height:0;display:grid}.export-action-bar{gap:7px;display:grid}.export-action-bar .tool-command{width:100%}.export-heading{justify-content:space-between;align-items:center;display:flex}.export-heading h2{margin:0}.export-heading button{width:24px;height:24px;color:var(--muted);background:0 0;border:0;justify-content:center;align-items:center;padding:0;display:inline-flex}.export-details fieldset{border:0;gap:7px;min-width:0;margin:0;padding:0;display:grid}.export-details legend{color:var(--muted);text-transform:uppercase;margin-bottom:7px;font-size:9px;font-weight:700}.radio-row{align-items:center;gap:7px;min-width:0;font-size:10px;display:flex}.radio-row input[type=radio]{accent-color:var(--accent)}.sampling-row input[type=number]{width:58px;margin-left:auto}.export-current-frame,.export-summary{grid-template-columns:minmax(0,1fr) auto;gap:6px 10px;margin:0;font-size:9px;display:grid}.export-current-frame div{display:contents}.export-current-frame dt,.export-summary span{color:var(--muted)}.export-current-frame dd{text-align:right;text-overflow:ellipsis;white-space:nowrap;min-width:0;margin:0;overflow:hidden}.export-range-grid{gap:10px;display:grid}.export-range-row{grid-template-columns:72px minmax(0,1fr);align-items:end;gap:7px;display:grid}.export-range-row label{color:var(--muted);gap:4px;font-size:9px;display:grid}.export-range-shortcuts{grid-template-columns:repeat(2,minmax(0,1fr));gap:5px;display:grid}.export-range-grid input,.sampling-row input[type=number]{border:1px solid var(--border);background:var(--panel-strong);min-width:0;color:var(--text);border-radius:3px;padding:5px 6px}.export-range-shortcuts button{border:1px solid var(--border);min-height:28px;color:var(--muted);background:0 0;border-radius:3px;padding:4px 6px;font-size:8px}.export-progress{gap:4px;font-size:9px;display:grid}.export-progress progress{width:100%;accent-color:var(--accent)}.export-progress small,.export-result{color:var(--muted)}.export-result,.export-error{margin:0;font-size:9px;line-height:1.4}.export-error{color:var(--danger)}.primary-command{border-color:var(--accent);background:var(--accent);color:var(--accent-ink)}.privacy-consent{z-index:40;border:1px solid var(--border-strong);background:#1b2228;border-radius:7px;gap:9px;width:min(560px,100vw - 32px);padding:16px;display:grid;position:fixed;bottom:46px;right:16px;box-shadow:0 12px 36px #00000061}.privacy-consent-heading{grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:8px;display:grid}.privacy-consent-heading>svg{color:var(--accent)}.privacy-consent h2,.privacy-consent p{margin:0}.privacy-consent h2{font-size:13px}.privacy-consent p{color:#c3cdd2;font-size:11px;line-height:1.45}.privacy-consent .privacy-consent-detail{color:var(--muted);font-size:10px}.privacy-consent-heading button{width:28px;height:28px;color:var(--muted);cursor:pointer;background:0 0;border:0;justify-content:center;align-items:center;padding:0;display:inline-flex}.privacy-consent-actions{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin-top:3px;display:grid}.privacy-consent-actions button{border:1px solid var(--border-strong);min-height:34px;color:var(--text);cursor:pointer;background:#151b1f;border-radius:4px;padding:6px 10px;font-size:11px;font-weight:650}.privacy-consent-actions .privacy-allow{color:#86c8b6;border-color:#4c9482}.privacy-consent-actions button:hover,.privacy-consent-actions button:focus-visible{border-color:var(--accent)}.file-facts,.bounds-list{gap:8px;margin:0;display:grid}.file-facts div,.bounds-list div{grid-template-columns:58px minmax(0,1fr);align-items:baseline;gap:8px;display:grid}.file-facts dt,.bounds-list dt{color:var(--muted);font-size:11px}.file-facts dd,.bounds-list dd{min-width:0;color:var(--text);text-overflow:ellipsis;white-space:nowrap;margin:0;font-family:SFMono-Regular,Consolas,monospace;font-size:11px;line-height:1.35;overflow:hidden}.range-label{color:#b9c3c8;justify-content:space-between;align-items:center;margin-bottom:7px;font-size:11px;display:flex;position:relative}.range-label output{color:var(--muted);font-family:SFMono-Regular,Consolas,monospace;font-size:10px}.label-with-help,.field-label-with-help{align-items:center;gap:5px;display:inline-flex}.field-label-with-help{width:100%;position:relative}.field-label-with-help label{cursor:pointer}.control-help{color:var(--muted);text-align:left;text-transform:none;font-size:10px;font-weight:400;line-height:1.4;display:inline-block;position:relative}.control-help>button{width:18px;height:18px;color:inherit;cursor:pointer;background:0 0;border:0;border-radius:50%;justify-content:center;align-items:center;padding:0;display:flex}.control-help:hover>button,.control-help>button:focus-visible{color:var(--accent);background:#202a30}.control-help-popover{z-index:50;border:1px solid var(--border-strong);color:#bec8cd;letter-spacing:0;pointer-events:none;background:#20282e;border-radius:5px;width:min(236px,100vw - 32px);padding:10px 11px;position:fixed;box-shadow:0 8px 22px #00000059}input[type=range]{width:100%;height:4px;accent-color:var(--accent);cursor:pointer;margin:5px 0 19px}.field-label{margin-top:16px}.segmented-control{border:1px solid var(--border);background:#101519;border-radius:5px;grid-template-columns:repeat(2,minmax(0,1fr));display:grid;overflow:hidden}.segmented-control.color-control{grid-template-columns:repeat(2,minmax(0,1fr))}.segmented-control button{border:0;border-right:1px solid var(--border);border-bottom:1px solid var(--border);color:#99a7af;cursor:pointer;background:0 0;justify-content:center;align-items:center;gap:6px;min-width:0;min-height:30px;padding:0 7px;font-size:10px;display:flex}.segmented-control button:nth-child(2n){border-right:0}.segmented-control button:nth-last-child(-n+2){border-bottom:0}.segmented-control.color-control button:nth-last-child(2){border-bottom:1px solid var(--border)}.segmented-control.color-control button:last-child{border-bottom:0;border-right:0;grid-column:1/-1}.segmented-control:not(.color-control) button{border-bottom:0}.segmented-control button.active{color:var(--text);background:#283239;box-shadow:inset 0 0 0 1px #52616a}.segmented-control button:disabled{color:#536068;cursor:not-allowed}.swatch{border:1px solid #6e7a81;border-radius:2px;width:10px;height:10px}.swatch-dark{background:#0a0d10}.swatch-light{background:#e9edf0}.view-actions{grid-template-columns:repeat(2,minmax(0,1fr));gap:7px;display:grid}.view-actions button{border-color:var(--border);color:#b7c1c7;background:var(--panel-strong)}.view-actions button:hover:not(:disabled){border-color:var(--border-strong);color:var(--text);background:#222b31}.view-actions .clear-button{color:#cfaaa4;grid-column:1/-1}.view-actions button:disabled{opacity:.4;cursor:not-allowed}.bounds-section{border-bottom:0}.bounds-list div{grid-template-columns:36px minmax(0,1fr)}.viewport-shell{background:#0a0d10;min-width:0;min-height:0;position:relative;overflow:hidden}.viewer-stage,.viewer-canvas{width:100%;height:100%;display:block}.viewer-stage{position:relative}.viewer-canvas.is-tool-active{cursor:crosshair}.viewer-label-layer{pointer-events:none;position:absolute;inset:0;overflow:hidden}.measurement-label{color:#dff8f2;white-space:nowrap;background:#0a1113e0;border:1px solid #37645e;border-radius:3px;padding:4px 6px;font-family:SFMono-Regular,Consolas,monospace;font-size:9px;position:absolute;top:0;left:0;box-shadow:0 2px 8px #00000047}.viewer-canvas:focus{outline:none}.copc-streaming-status{color:#aebbc1;pointer-events:none;background:#0c1114db;border:1px solid #465860cc;border-radius:4px;align-items:center;gap:9px;min-height:28px;padding:0 9px;font-size:9px;display:flex;position:absolute;top:12px;right:12px}.copc-streaming-status .streaming-state{color:#77d9c1;font-weight:700}.empty-state,.loading-state{color:#adb8be;backdrop-filter:blur(5px);background:#0c1013d6;border:1px dashed #45535c;border-radius:6px;flex-direction:column;align-items:center;min-width:230px;padding:25px 30px;display:flex;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.empty-state{cursor:pointer}.empty-state:hover{border-color:var(--accent);color:var(--text)}.empty-state svg{color:var(--accent);margin-bottom:13px}.empty-state strong,.loading-state strong,.drop-state strong{font-size:13px;line-height:1.3}.empty-state span,.loading-state span{color:var(--muted);margin-top:5px;font-size:10px}.loading-state{border-style:solid}.sequence-loading-state{z-index:4;pointer-events:none}.topic-prompt{width:min(360px,100% - 32px);color:var(--text);backdrop-filter:blur(5px);background:#0c1315f0;border:1px solid #426c68;border-radius:6px;grid-template-columns:24px minmax(0,1fr);gap:6px 11px;padding:17px;display:grid;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);box-shadow:0 12px 35px #0000004d}.topic-prompt>svg{color:var(--accent);margin-top:1px}.topic-prompt div{flex-direction:column;gap:4px;min-width:0;display:flex}.topic-prompt strong{font-size:13px;line-height:1.3}.topic-prompt span{color:var(--muted);font-size:10px;line-height:1.45}.topic-prompt button{color:#bce8e1;cursor:pointer;background:#17332f;border:1px solid #487e77;border-radius:4px;grid-column:2;justify-self:start;min-height:30px;padding:0 11px;font-size:10px;font-weight:700}.topic-prompt button:hover,.topic-prompt button:focus-visible{border-color:var(--accent);color:#e7faf6;background:#1c403a}.loading-indicator{border:2px solid #3d494f;border-top-color:var(--accent);border-radius:50%;width:22px;height:22px;margin:0 0 13px;animation:.8s linear infinite spin}.progress-value{color:var(--accent);margin-bottom:10px;font-family:SFMono-Regular,Consolas,monospace;font-size:18px}.loading-filename{text-overflow:ellipsis;white-space:nowrap;max-width:280px;overflow:hidden}.loading-state progress{width:100%;height:4px;accent-color:var(--accent);border:0;margin-top:12px}.cancel-load{border:1px solid var(--border-strong);color:#b8c3c9;background:var(--panel-strong);cursor:pointer;border-radius:5px;align-items:center;gap:6px;min-height:29px;margin-top:14px;padding:0 10px;font-size:10px;display:inline-flex}.cancel-load:hover{color:var(--text);border-color:#667781}.drop-state{z-index:4;border:2px solid var(--accent);color:var(--accent);pointer-events:none;background:#081915e0;border-radius:6px;flex-direction:column;justify-content:center;align-items:center;gap:10px;display:flex;position:absolute;inset:10px}.error-banner{color:#f2d4cf;background:#321e1c;border:1px solid #7f4a45;border-radius:6px;align-items:flex-start;width:min(390px,100% - 28px);padding:12px 12px 12px 14px;display:flex;position:absolute;bottom:14px;right:14px;box-shadow:0 8px 24px #0000004d}.recording-timeline{z-index:5;min-height:64px;color:var(--text);backdrop-filter:blur(6px);background:#12181cf0;border:1px solid #3d4a52;border-radius:6px;grid-template-columns:auto minmax(160px,1fr) auto 8px;align-items:center;gap:13px;padding:8px 10px;display:grid;position:absolute;bottom:12px;left:12px;right:12px;box-shadow:0 9px 26px #00000052}.timeline-controls{grid-template-columns:repeat(3,32px);gap:5px;display:grid}.timeline-controls button{border:1px solid var(--border);color:#b6c1c7;background:var(--panel-strong);cursor:pointer;border-radius:5px;place-items:center;width:32px;height:32px;padding:0;display:grid}.timeline-controls button:hover{border-color:var(--border-strong);color:var(--text)}.timeline-controls button:disabled{opacity:.42;cursor:default}.timeline-controls .playback-toggle{color:var(--accent-ink);border-color:var(--accent);background:var(--accent)}.timeline-track{min-width:0}.timeline-readout{justify-content:space-between;align-items:baseline;gap:12px;min-width:0;font-family:SFMono-Regular,Consolas,monospace;display:flex}.timeline-readout strong{flex:none;font-size:10px}.timeline-readout span{color:var(--muted);text-overflow:ellipsis;white-space:nowrap;font-size:9px;overflow:hidden}.sequence-readout .sequence-filename{min-width:0;max-width:100%}.sequence-readout .sequence-filename.is-loading{color:var(--accent);justify-content:flex-end;align-items:center;gap:6px;display:inline-flex}.timeline-loading-indicator{border:2px solid #3d494f;border-top-color:var(--accent);border-radius:50%;flex:0 0 10px;width:10px;height:10px;animation:.8s linear infinite spin}.screenshot-command{margin-top:8px}.timeline-track input[type=range]{height:4px;margin:9px 0 2px;display:block}.timeline-speed{color:var(--muted);text-transform:uppercase;gap:4px;font-size:9px;display:grid}.timeline-playback-settings{align-items:end;gap:9px;display:flex}.timeline-source-rate{color:var(--muted);text-transform:uppercase;white-space:nowrap;gap:4px;font-size:9px;display:grid}.timeline-source-rate strong{height:29px;color:var(--text);align-items:center;font-family:SFMono-Regular,Consolas,monospace;font-size:10px;font-weight:600;display:flex}.timeline-speed select{border:1px solid var(--border);width:62px;height:29px;color:var(--text);background:var(--panel-strong);cursor:pointer;border-radius:5px;padding:0 6px;font-size:10px}.timeline-activity{background:#55636b;border-radius:50%;width:6px;height:6px}.timeline-activity.is-active{background:var(--accent);box-shadow:0 0 0 3px #45e0b126}.recording-timeline~.error-banner{bottom:88px}.error-banner div{gap:4px;display:grid}.error-banner strong{font-size:11px}.error-banner span{color:#d7aaa4;font-size:10px;line-height:1.4}.error-banner button{color:#d7aaa4;cursor:pointer;background:0 0;border:0;width:26px;height:26px;margin:-5px -5px 0 auto;font-size:19px}.statusbar{border-top:1px solid var(--border);color:#839199;background:#11171b;align-items:center;gap:8px;min-width:0;padding:0 12px;font-size:10px;display:flex}.status-dot{background:#687780;border-radius:50%;flex:none;width:6px;height:6px}.status-loaded{background:var(--accent)}.status-loading{background:#ffd271}.status-error{background:var(--danger)}.status-separator{background:var(--border);width:1px;height:11px}.status-fps{color:#a5b0b6;margin-left:auto;font-family:SFMono-Regular,Consolas,monospace}.visually-hidden{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;padding:0;position:absolute;overflow:hidden}.help-backdrop{z-index:100;background:#030608b8;place-items:center;padding:18px;display:grid;position:fixed;inset:0}.help-dialog{border:1px solid var(--border-strong);width:min(760px,100%);max-height:min(690px,100dvh - 36px);color:var(--text);background:#151b20;border-radius:6px;grid-template-rows:auto minmax(0,1fr);display:grid;overflow:hidden;box-shadow:0 18px 54px #0000007a}.help-dialog>header{border-bottom:1px solid var(--border);background:#181f24;justify-content:space-between;align-items:flex-start;gap:20px;padding:17px 18px 15px;display:flex}.help-dialog h2,.help-dialog h3,.help-dialog p{margin:0}.help-dialog h2{font-size:16px;line-height:1.2}.help-dialog header p{color:var(--muted);margin-top:5px;font-size:11px}.help-dialog header button{border:1px solid var(--border);color:#aab6bc;background:var(--panel-strong);cursor:pointer;border-radius:5px;flex:none;place-items:center;width:30px;height:30px;display:grid}.help-dialog header button:hover{border-color:var(--border-strong);color:var(--text)}.remote-dialog{border:1px solid var(--border-strong);width:min(520px,100%);color:var(--text);background:#151b20;border-radius:6px;overflow:hidden;box-shadow:0 18px 54px #0000007a}.remote-dialog>header{border-bottom:1px solid var(--border);background:#181f24;justify-content:space-between;align-items:flex-start;gap:20px;padding:17px 18px 15px;display:flex}.remote-dialog h2,.remote-dialog p{margin:0}.remote-dialog h2{font-size:16px}.remote-dialog header p{color:var(--muted);margin-top:5px;font-size:11px}.remote-dialog header button{border:1px solid var(--border);color:#aab6bc;background:var(--panel-strong);cursor:pointer;border-radius:5px;flex:none;place-items:center;width:30px;height:30px;display:grid}.remote-dialog form{gap:10px;padding:18px;display:grid}.remote-dialog label{color:#c3cdd2;font-size:11px;font-weight:700}.remote-dialog input{border:1px solid var(--border-strong);width:100%;height:38px;color:var(--text);background:#0f1417;border-radius:4px;padding:0 10px;font-family:SFMono-Regular,Consolas,monospace;font-size:11px}.remote-dialog form p{color:var(--muted);font-size:10px;line-height:1.45}.remote-dialog form .remote-privacy{color:#8fc9bb}.remote-actions{justify-content:flex-end;gap:8px;margin-top:4px;display:flex}.remote-actions>button:not(.primary-action){border:1px solid var(--border);color:#b5c0c6;background:var(--panel-strong);cursor:pointer;border-radius:5px;min-height:32px;padding:0 12px;font-size:11px}.help-content{grid-template-columns:repeat(2,minmax(0,1fr));display:grid;overflow:auto}.help-content section{border-right:1px solid var(--border);border-bottom:1px solid var(--border);min-width:0;padding:17px 18px 19px}.help-content section:nth-child(2n){border-right:0}.help-content section:nth-last-child(-n+2){border-bottom:0}.help-content h3{color:#92a0a8;text-transform:uppercase;margin-bottom:12px;font-size:10px;font-weight:750}.help-content ul{color:#bac4c9;gap:7px;margin:0;padding-left:17px;font-size:11px;line-height:1.45;display:grid}.help-content dl{gap:8px;margin:0;display:grid}.help-content dl div{grid-template-columns:minmax(94px,.7fr) minmax(0,1.3fr);gap:10px;display:grid}.help-content dt{color:#d5dde1;font-size:11px;font-weight:650}.help-content dd,.help-content section>p{color:#aab6bc;margin:0;font-size:11px;line-height:1.45}.help-content .coordinate-note{border-top:1px solid var(--border);margin-top:13px;padding-top:12px}.help-content .engineering-help-section,.help-content .mcap-help-section,.help-content .sequence-help-section{border-right:0;grid-column:1/-1}.help-content .sequence-help-section{border-bottom:0}.coordinate-note strong{color:var(--accent)}@keyframes spin{to{transform:rotate(360deg)}}@media (width<=720px){.app-shell{grid-template-rows:54px minmax(0,1fr) 28px}.topbar{grid-template-columns:minmax(0,1fr) repeat(5,auto);gap:7px}.privacy-note{display:none}.privacy-consent{width:calc(100vw - 20px);bottom:38px;right:10px}.secondary-action{width:34px;padding:0;font-size:0}.brand-block span{display:none}.workspace{grid-template-rows:minmax(310px,1fr) auto;grid-template-columns:1fr;overflow:auto}.viewport-shell{grid-row:1;min-height:310px}.control-panel{border-top:1px solid var(--border);border-right:0;grid-row:2;grid-template-columns:repeat(2,minmax(0,1fr));display:grid;overflow:visible}.tools-panel{grid-column:1/-1}.panel-section{border-right:1px solid var(--border)}.panel-section:nth-child(2n){border-right:0}.statusbar{z-index:5;position:relative}.help-content,.ouster-help-dialog .help-content{grid-template-columns:1fr}.help-content section,.help-content section:nth-child(2n),.help-content section:nth-last-child(-n+2){border-right:0;border-bottom:1px solid var(--border)}.help-content section:last-child{border-bottom:0}.recording-timeline{grid-template-columns:auto minmax(0,1fr) auto;gap:8px}.timeline-activity,.timeline-readout span{display:none}.sequence-readout .sequence-filename{display:block}}@media (width>=721px){.frame-export-panel.is-open{z-index:9;background:var(--panel);grid-template-rows:auto minmax(0,1fr);width:274px;position:fixed;top:58px;bottom:30px;left:0;overflow:hidden;box-shadow:8px 0 24px #00000038}.frame-export-panel.is-open .export-details{grid-template-rows:auto minmax(0,1fr) auto}.frame-export-panel.is-open .export-form-scroll{scrollbar-width:thin;padding-right:4px;overflow-y:auto}}@media (width<=440px){.primary-action,.help-action{width:34px;padding:0;font-size:0}.sample-select{width:82px}.language-control{gap:0}.language-control svg{display:none}.language-control select{width:70px}.control-panel,.privacy-consent-actions{grid-template-columns:1fr}.panel-section{border-right:0}.empty-state{min-width:210px;padding:22px}.recording-timeline{grid-template-columns:1fr auto;padding:8px;bottom:7px;left:7px;right:7px}.timeline-controls{grid-area:1/1}.timeline-speed,.mcap-timeline .timeline-playback-settings{grid-area:1/2}.timeline-track{grid-area:2/1/auto/-1}}
