:root{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--bg:#0d0f13;--panel:#14171d;--panel-2:#1a1e26;--line:#262b35;--text:#e8ecf2;--text-dim:#98a1b0;--accent:#7cc4ff;--ok:#64d69a;--warn:#f2c14e;--bad:#f2715c;color:var(--text);background:var(--bg);font-family:ui-sans-serif,system-ui,-apple-system,Segoe UI,sans-serif;font-size:13px;line-height:1.45}*{box-sizing:border-box}html,body,#root{height:100%;margin:0}body{overflow:hidden}button{font:inherit;cursor:pointer}input,select{font:inherit;color:var(--text);background:var(--panel-2);border:1px solid var(--line);border-radius:4px;padding:3px 6px}input:focus-visible,select:focus-visible,button:focus-visible{outline:2px solid var(--accent);outline-offset:1px}input[type=range]{accent-color:var(--accent);background:0 0;border:none;padding:0}input[type=checkbox]{accent-color:var(--accent);width:14px;height:14px}.app{flex-direction:column;height:100%;display:flex}.topbar{background:var(--panel);border-bottom:1px solid var(--line);flex:none;align-items:center;gap:24px;height:46px;padding:0 14px;display:flex}.brand{letter-spacing:.2px;align-items:baseline;gap:8px;display:flex}.brand strong{font-size:15px}.tag{text-transform:uppercase;letter-spacing:.08em;color:var(--accent);border:1px solid color-mix(in srgb, var(--accent) 40%, transparent);border-radius:3px;padding:1px 5px;font-size:10px}.projectbar{border-right:1px solid var(--line);align-items:center;gap:8px;padding-right:16px;display:flex}.project-select{max-width:150px;font-size:11px}.project-name{color:var(--text);text-overflow:ellipsis;white-space:nowrap;background:0 0;border:1px solid #0000;border-radius:4px;max-width:170px;padding:3px 7px;font-size:12px;font-weight:600;overflow:hidden}.project-name:hover{border-color:var(--line);background:var(--panel-2)}.project-name-input{width:170px;font-size:12px;font-weight:600}.project-menu-wrap{position:relative}.project-menu{z-index:50;background:var(--panel-2);border:1px solid var(--line);border-radius:6px;flex-direction:column;min-width:178px;padding:4px;display:flex;position:absolute;top:calc(100% + 6px);left:0;box-shadow:0 10px 28px #0000008c}.project-menu button{text-align:left;color:var(--text);background:0 0;border:none;border-radius:4px;padding:6px 9px;font-size:12px}.project-menu button:hover{background:color-mix(in srgb, var(--accent) 18%, transparent)}.project-menu button.danger{color:var(--bad)}.project-menu button.danger:hover{background:color-mix(in srgb, var(--bad) 18%, transparent)}.project-menu hr{border:none;border-top:1px solid var(--line);margin:4px 2px}.save-state{color:var(--text-dim);white-space:nowrap;min-width:74px;font-size:10.5px}.save-state.save-saved{color:var(--ok)}.save-state.save-pending{color:var(--text-dim)}.save-state.save-error{color:var(--bad)}.derived{color:var(--accent);font-family:ui-monospace,monospace;font-size:11px}.topbar-controls{flex:1;align-items:center;gap:8px;min-width:0;display:flex}.topbar-controls>label{color:var(--text-dim);align-items:center;gap:6px;font-size:11px;display:flex}.boot{height:100%;color:var(--text-dim);flex-direction:column;justify-content:center;align-items:center;gap:6px;font-size:12px;display:flex}.boot strong{color:var(--text);letter-spacing:.2px;font-size:16px}.sync-state{color:var(--text-dim);white-space:nowrap;align-items:center;gap:6px;font-size:10.5px;display:inline-flex}.sync-state.sync-synced{color:var(--ok)}.sync-state.sync-syncing{color:var(--text-dim)}.sync-state.sync-offline{color:var(--warn)}.sync-state.sync-conflict{color:var(--bad)}.account-menu .menu-label{text-overflow:ellipsis;max-width:120px;overflow:hidden}.account-actions{flex-direction:column;gap:8px;display:flex}.account-actions label{color:var(--text-dim);flex-direction:column;gap:3px;font-size:11px;display:flex}.account-actions label.check{flex-direction:row;align-items:center;gap:6px}.account-actions .tag{margin-left:6px}.user-list{flex-direction:column;gap:2px;margin:0;padding:0;list-style:none;display:flex}.user-row{justify-content:space-between;align-items:center;gap:8px;padding:3px 0;display:flex}.user-name{text-overflow:ellipsis;white-space:nowrap;text-decoration:none;overflow:hidden}.user-name:hover{text-decoration:underline}.user-rights{border-left:2px solid var(--line);flex-direction:column;gap:4px;margin:2px 0 8px 10px;padding-left:9px;display:flex}.user-rights .check{color:var(--text)}.tag-dim{color:var(--text-dim)}.save-state.save-readonly{color:var(--warn)}.project-owner{color:var(--text-dim);white-space:nowrap;font-size:10.5px}.modal-backdrop{z-index:60;background:#0000008c;justify-content:center;align-items:center;padding:20px;display:flex;position:fixed;inset:0}.modal{border:1px solid var(--line);background:var(--panel);border-radius:9px;flex-direction:column;gap:10px;width:100%;max-width:420px;max-height:calc(100vh - 60px);padding:18px;display:flex;overflow-y:auto;box-shadow:0 16px 44px #0000008c}.modal h2{margin:0;font-size:14px;font-weight:600}.modal select{width:100%}.modal-wide{max-width:560px}.tag-button{font:inherit;cursor:pointer;background:0 0;border:1px solid #0000}.tag-button:hover{border-color:var(--accent);color:var(--accent);border-radius:4px}.changelog{flex-direction:column;gap:14px;margin:0;padding:0;list-style:none;display:flex}.release-head{border-bottom:1px solid var(--line);align-items:baseline;gap:8px;padding-bottom:4px;display:flex}.release-head strong{color:var(--accent);font-family:ui-monospace,monospace}.release-title{flex:1;font-size:12px}.release-date{color:var(--text-dim);white-space:nowrap;font-size:10.5px}.changelog ul{flex-direction:column;gap:5px;margin:7px 0 0;padding:0;font-size:11.5px;list-style:none;display:flex}.change-kind{text-transform:uppercase;letter-spacing:.4px;min-width:48px;margin-right:7px;font-size:9.5px;display:inline-block}.change-nytt{color:var(--ok)}.change-endret{color:var(--accent)}.change-fikset{color:var(--warn)}.build-info{font-family:ui-monospace,monospace}.linklike{color:var(--accent);font:inherit;cursor:pointer;background:0 0;border:none;padding:0;font-size:11px;text-decoration:underline}.btn-primary{border-color:var(--accent);color:var(--accent)}.signin{justify-content:center;align-items:center;height:100%;padding:20px;display:flex}.signin-card{border:1px solid var(--line);background:var(--panel);border-radius:9px;flex-direction:column;gap:11px;width:100%;max-width:340px;padding:22px;display:flex;box-shadow:0 14px 40px #00000080}.signin-brand{align-items:baseline;gap:8px;display:flex}.signin-brand strong{font-size:15px}.signin-card h1{margin:0;font-size:15px;font-weight:600}.signin-card label{color:var(--text-dim);flex-direction:column;gap:4px;font-size:11px;display:flex}.signin-card input{width:100%}.signin-card .btn{padding:7px}.signin-foot{margin-top:4px}.undobar{border-right:1px solid var(--line);flex:none;align-items:center;gap:6px;padding-right:16px;display:flex}.undobar>.btn{text-align:center;min-width:26px;font-size:13px;line-height:1}.undobar>.btn:disabled{opacity:.35;cursor:default;border-color:var(--line)}.undo-log ol{flex-direction:column;gap:1px;margin:0;padding:0;list-style:none;display:flex}.undo-step{width:100%;color:var(--text);font:inherit;text-align:left;cursor:pointer;background:0 0;border:1px solid #0000;border-radius:4px;grid-template-columns:12px 1fr auto;align-items:baseline;gap:7px;padding:4px 6px;font-size:11px;display:grid}.undo-step:hover{background:var(--panel-2);border-color:var(--accent)}.undo-now{background:var(--panel-2);color:var(--accent);font-weight:600}.undo-ahead{color:var(--text-dim)}.undo-mark{color:var(--accent);font-size:9px}.undo-text{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.undo-time{color:var(--text-dim);font-family:ui-monospace,monospace;font-size:10px}.menu{position:relative}.menu-btn{border:1px solid var(--line);background:var(--panel-2);max-width:260px;color:var(--text);font:inherit;cursor:pointer;white-space:nowrap;border-radius:5px;align-items:baseline;gap:6px;padding:5px 9px;font-size:11px;display:flex}.menu-btn:hover{border-color:var(--accent)}.menu-open .menu-btn{border-color:var(--accent);color:var(--accent)}.menu-label{font-weight:600}.menu-summary{text-overflow:ellipsis;color:var(--text-dim);font-family:ui-monospace,monospace;font-size:10px;overflow:hidden}.menu-caret{color:var(--text-dim);font-size:9px}.menu-panel{z-index:40;border:1px solid var(--line);background:var(--panel);border-radius:7px;flex-direction:column;gap:9px;max-width:calc(100vw - 24px);max-height:calc(100vh - 70px);padding:11px;display:flex;position:absolute;top:calc(100% + 5px);left:0;overflow-y:auto;box-shadow:0 10px 28px #0000008c}.menu-panel>label{color:var(--text-dim);flex-direction:column;gap:3px;font-size:11px;display:flex}.menu-panel>label.check{flex-direction:row;align-items:center;gap:6px}.menu-panel select{width:100%}.menu-panel .range-pair select{flex:1;width:auto}.range-pair{align-items:center;gap:4px;display:inline-flex}.range-pair i{color:var(--text-dim);font-style:normal}.perf{color:var(--text-dim);font-family:ui-monospace,monospace;font-size:11px}.body{flex:1;grid-template-columns:280px minmax(0,1fr) 300px;min-height:0;display:grid}.panel{background:var(--panel);overflow:hidden auto}.splitter{cursor:col-resize;background:var(--line);touch-action:none;position:relative}.splitter:after{content:"";background:0 0;transition:background .12s;position:absolute;inset:0}.splitter:hover:after{background:color-mix(in srgb, var(--accent) 55%, transparent)}.splitter:active:after{background:var(--accent)}.stage{flex-direction:column;min-width:0;min-height:0;display:flex}.plan-wrap{flex:1;min-height:0;position:relative}.plan-wrap canvas{touch-action:none;display:block}.section{border-bottom:1px solid var(--line)}.section h3{text-transform:uppercase;letter-spacing:.09em;color:var(--text-dim);background:var(--panel-2);border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;gap:8px;margin:0;padding:0 12px 0 0;font-size:10px;font-weight:600;display:flex}.section-toggle{min-width:0;color:inherit;font:inherit;text-align:left;cursor:pointer;background:0 0;border:none;flex:1;align-items:center;gap:6px;padding:9px 12px;display:flex}.section-toggle:hover{color:var(--text)}.section-caret{opacity:.7;flex:none;font-size:9px}.section-closed h3{border-bottom:none}.section-body{flex-direction:column;gap:6px;padding:10px 12px 12px;display:flex}.row{grid-template-columns:92px minmax(0,1fr);align-items:center;gap:8px;display:grid}.row-label{color:var(--text-dim);font-size:11px}.row-input{min-width:0}.row-input>input[type=text],.row-input>select{width:100%}.num{align-items:center;gap:4px;display:flex}.num input{width:100%;min-width:0}.num em,.slider em{color:var(--text-dim);white-space:nowrap;font-family:ui-monospace,monospace;font-size:10px;font-style:normal}.slider{grid-template-columns:minmax(0,1fr) 48px;align-items:center;gap:6px;display:grid}.slider input{width:100%}.slider em{text-align:right}.check{color:var(--text-dim);cursor:pointer;align-items:center;gap:5px;font-size:11px;display:inline-flex}.source-list{flex-direction:column;gap:2px;margin:0;padding:0;list-style:none;display:flex}.source-list li{cursor:pointer;border:1px solid #0000;border-radius:4px;grid-template-rows:auto auto;grid-template-columns:24px minmax(0,1fr);align-items:center;gap:0 8px;padding:5px 7px;display:grid}.source-list li:hover{background:var(--panel-2)}.source-list li.active{background:color-mix(in srgb, var(--accent) 12%, transparent);border-color:color-mix(in srgb, var(--accent) 35%, transparent)}.source-list li.empty{color:var(--text-dim);cursor:default;padding:8px 4px;font-size:11px;display:block}.src-name{font-size:12px}.src-meta{color:var(--text-dim);text-overflow:ellipsis;white-space:nowrap;grid-column:2;font-size:10px;overflow:hidden}.ms-buttons{flex-direction:column;grid-row:1/span 2;gap:2px;display:flex}.mute,.solo,.eye{border:1px solid var(--line);background:var(--panel-2);width:20px;height:19px;color:var(--text-dim);border-radius:3px;padding:0;font-size:9px;font-weight:700}.mute:hover,.solo:hover,.eye:hover{color:var(--text)}.eye.on{background:var(--panel);border-color:var(--line);color:#4d5560}.mute.on{background:var(--bad);border-color:var(--bad);color:#1a0d0a}.solo.on{background:var(--warn);border-color:var(--warn);color:#241c05}.btn-muted{background:color-mix(in srgb, var(--bad) 22%, transparent);border-color:var(--bad);color:var(--bad)}.btn-solo{background:color-mix(in srgb, var(--warn) 22%, transparent);border-color:var(--warn);color:var(--warn)}.btn{border:1px solid var(--line);background:var(--panel-2);color:var(--text);border-radius:4px;padding:3px 8px}.btn:hover{border-color:var(--accent)}.btn-small{text-transform:none;letter-spacing:0;padding:2px 7px;font-size:10px}.btn-danger:hover{border-color:var(--bad);color:var(--bad)}.btn-group{gap:4px;display:inline-flex}.section-right{font-weight:400}.stats{background:var(--line);border:1px solid var(--line);border-radius:4px;grid-template-columns:repeat(2,minmax(0,1fr));gap:1px;margin-top:4px;display:grid;overflow:hidden}.stat{background:var(--panel);flex-direction:column;gap:1px;padding:5px 8px;display:flex}.stat-label{text-transform:uppercase;letter-spacing:.05em;color:var(--text-dim);font-size:9.5px}.stat-value{font-family:ui-monospace,monospace;font-size:12px}.stat-ok .stat-value{color:var(--ok)}.stat-warn .stat-value{color:var(--warn)}.stat-bad .stat-value{color:var(--bad)}.note{color:var(--text-dim);border-left:2px solid var(--line);background:var(--panel-2);border-radius:4px;margin:8px 0 0;padding:6px 8px;font-size:11px;line-height:1.4}.note-ok{border-left-color:var(--ok)}.note-warn{border-left-color:var(--warn);color:var(--warn)}.note .btn{margin-top:6px;display:block}.polar{flex-direction:column;align-items:center;gap:6px;display:flex}.polar canvas{display:block}.polar-legend{color:var(--text-dim);gap:14px;font-size:10px;display:flex}.polar-legend span{align-items:center;gap:4px;display:inline-flex}.polar-legend i{border-radius:1px;width:9px;height:2px}.legend{background:var(--panel);border-top:1px solid var(--line);flex-direction:column;flex:none;gap:4px;padding:8px 14px 10px;display:flex}.legend-bar{border:1px solid var(--line);border-radius:2px;height:10px;display:flex;overflow:hidden}.legend-bar i{flex:1}.legend-bar:has(.legend-step){height:18px}.legend-step{color:#000000b8;border-right:1px solid #00000059;justify-content:center;align-items:center;font-family:ui-monospace,monospace;font-size:9.5px;font-style:normal;font-weight:600;display:flex}.legend-step:last-child{border-right:none}.legend-controls{flex-wrap:wrap;align-items:center;gap:14px;display:flex}.legend-num{color:var(--text-dim);align-items:center;gap:5px;font-size:11px;display:flex}.legend-num .num{width:74px}.legend-num select{font-size:11px}.group-block{margin-bottom:8px}.group-head{border-bottom:1px solid var(--line);align-items:center;gap:6px;margin-bottom:4px;padding:4px 6px 5px;display:flex}.group-dot{border-radius:2px;flex:none;width:9px;height:9px}.group-name{min-width:0;color:var(--text);background:0 0;border:1px solid #0000;flex:1;padding:2px 4px;font-size:11.5px;font-weight:600}.group-name:hover{border-color:var(--line);background:var(--panel-2)}.group-name-static{color:var(--text-dim);flex:1;padding:2px 4px;font-size:11px;font-weight:600}.group-gain{align-items:center;gap:3px;display:flex}.group-gain input{width:52px;padding:2px 4px;font-size:10.5px}.group-gain em{color:var(--text-dim);font-size:9.5px;font-style:normal}.legend-labels{color:var(--text-dim);justify-content:space-between;font-family:ui-monospace,monospace;font-size:10px;display:flex}.legend-mid{color:var(--text);font-family:ui-sans-serif,system-ui,sans-serif}.legend-range{color:var(--text-dim);grid-template-columns:62px minmax(0,1fr);align-items:center;gap:8px;max-width:300px;font-size:11px;display:grid}.paneltabs{z-index:5;background:var(--panel-2);border-bottom:1px solid var(--line);display:flex;position:sticky;top:0}.paneltabs button{color:var(--text-dim);letter-spacing:.03em;background:0 0;border:none;border-bottom:2px solid #0000;flex:1;min-height:34px;padding:9px 4px;font-size:11px;font-weight:600}.paneltabs button:hover{color:var(--text)}.paneltabs button.active{color:var(--accent);border-bottom-color:var(--accent);background:color-mix(in srgb, var(--accent) 9%, transparent)}.viewbar{background:var(--panel);border-bottom:1px solid var(--line);flex-wrap:wrap;flex:none;align-items:center;gap:14px;padding:6px 12px;display:flex}.viewtabs{border:1px solid var(--line);border-radius:5px;display:inline-flex;overflow:hidden}.viewtabs button{background:var(--panel-2);color:var(--text-dim);border:none;min-height:28px;padding:5px 14px;font-size:11px;font-weight:600}.viewtabs button+button{border-left:1px solid var(--line)}.viewtabs button.active{background:color-mix(in srgb, var(--accent) 22%, transparent);color:var(--accent)}.viewopts{flex-wrap:wrap;align-items:center;gap:14px;display:flex}.viewhint{color:var(--text-dim);font-size:10px}.scene3d{touch-action:none;flex:1;min-height:0;position:relative;overflow:hidden}.scene3d canvas{display:block}.scene3d-loading{color:var(--text-dim);flex:1;justify-content:center;align-items:center;font-size:12px;display:flex}.scene3d-error{color:var(--bad);text-align:center;justify-content:center;align-items:center;padding:20px;font-size:13px;display:flex;position:absolute;inset:0}.btn-on{background:color-mix(in srgb, var(--warn) 22%, transparent);border-color:var(--warn);color:var(--warn)}.probe-list{flex-direction:column;gap:2px;margin:0;padding:0;list-style:none;display:flex}.probe-list li{cursor:pointer;border:1px solid #0000;border-radius:4px;grid-template-columns:34px minmax(0,1fr) auto 18px 18px;align-items:center;gap:7px;padding:5px 7px;display:grid}.probe-list li:hover{background:var(--panel-2)}.probe-list li.in-selection{background:color-mix(in srgb, var(--warn) 7%, transparent);border-color:color-mix(in srgb, var(--warn) 22%, transparent)}.probe-list li.active{background:color-mix(in srgb, var(--warn) 12%, transparent);border-color:color-mix(in srgb, var(--warn) 40%, transparent)}select.is-mixed,input.is-mixed{color:var(--text-dim);border-style:dashed;font-style:italic}input.is-mixed::placeholder{color:var(--text-dim);font-style:italic}.probe-name{font-family:ui-monospace,monospace;font-size:11px;font-weight:600}.probe-pos{color:var(--text-dim);text-overflow:ellipsis;white-space:nowrap;font-size:10px;overflow:hidden}.probe-db{white-space:nowrap;font-family:ui-monospace,monospace;font-size:12px}.probe-remove{color:var(--text-dim);background:0 0;border:none;border-radius:3px;padding:2px 4px;font-size:15px;line-height:1}.probe-remove:hover{color:var(--bad);background:var(--panel-2)}.probe-edit{border-top:1px solid var(--line);flex-direction:column;gap:6px;margin-top:10px;padding-top:10px;display:flex}.spectrum{border-top:1px solid var(--line);margin-top:10px;padding-top:10px}.spectrum-head{color:var(--text-dim);justify-content:space-between;align-items:baseline;margin-bottom:7px;font-size:10.5px;display:flex}.spectrum-total{color:var(--warn);font-family:ui-monospace,monospace;font-size:12px}.spectrum-chart{width:100%;height:auto;display:block;overflow:visible}.sc-grid{stroke:var(--line);stroke-width:1px}.sc-axis{fill:var(--text-dim);font-family:ui-monospace,monospace;font-size:8px}.sc-line{stroke-width:1.8px;stroke-linejoin:round;stroke-linecap:round}.sc-area{opacity:.14}.sc-dot{opacity:.9}.wall-list{flex-direction:column;gap:3px;margin:6px 0 0;padding:0;list-style:none;display:flex}.wall-btn{border:1px solid var(--line);background:var(--panel-2);width:22px;height:22px;color:var(--text-dim);border-radius:3px;padding:0;font-size:13px;line-height:1}.wall-btn:hover:not(:disabled){border-color:var(--accent);color:var(--accent)}.wall-btn-danger:hover:not(:disabled){border-color:var(--bad);color:var(--bad)}.wall-btn:disabled{opacity:.35;cursor:not-allowed}.wall-list li{cursor:pointer;border:1px solid #0000;border-radius:4px;grid-template-columns:26px 44px minmax(0,1fr) 22px 22px;align-items:center;gap:6px;padding:4px 6px;display:grid}.wall-list li:hover{background:var(--panel-2)}.wall-list li.active{background:#ff9f5a24;border-color:#ff9f5a73}.wall-name{font-family:ui-monospace,monospace;font-size:11px;font-weight:600}.wall-len{color:var(--text-dim);font-family:ui-monospace,monospace;font-size:10px}.wall-list select{width:100%;min-width:0;font-size:11px}.seg-row{align-items:center;gap:4px;min-width:0;display:flex}.seg-row .num{flex:60px;min-width:0}.seg-row select{flex:78px;min-width:0}.rig-place{flex-wrap:wrap;gap:4px;display:flex}.probe-list li:has(.node-main){grid-template-columns:minmax(0,1fr) 18px 18px}.node-main{flex-direction:column;gap:1px;min-width:0;display:flex}.node-main .probe-name{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.node-meta{color:var(--text-dim);font-family:ui-monospace,monospace;font-size:9.5px}.run-name{width:100%;min-width:54px;padding:1px 3px;font-size:10px}.rig-head{text-transform:uppercase;letter-spacing:.08em;color:var(--text-dim);margin:10px 0 2px;font-size:10px;font-weight:600}.run-scroll{margin:0 -2px;overflow-x:auto}.run-table{border-collapse:collapse;width:100%;min-width:460px;font-size:11px}.run-table th{text-align:left;color:var(--text-dim);border-bottom:1px solid var(--line);padding:3px 4px;font-weight:500}.run-table td{border-bottom:1px solid color-mix(in srgb, var(--line) 50%, transparent);vertical-align:middle;padding:3px 4px}.run-table .num{text-align:right;font-family:ui-monospace,monospace}.run-table select{max-width:84px;padding:1px 2px;font-size:10px}.run-ch{align-items:center;gap:3px;display:flex}.run-chlist{width:42px;padding:1px 3px;font-family:ui-monospace,monospace;font-size:10px}.run-flag{color:var(--text-dim);font-size:9px;font-style:normal;display:block}.run-table tr.run-warn td{background:color-mix(in srgb, var(--bad) 10%, transparent)}.lockbtn{cursor:pointer;opacity:.35;background:0 0;border:none;padding:0 2px;font-size:11px;line-height:1}.lockbtn:hover{opacity:.8}.lockbtn.on{opacity:1}.run-dot i{border-radius:2px;width:8px;height:8px;display:inline-block}.run-drum{color:var(--text-dim);white-space:nowrap;font-size:10px}.run-stage select{max-width:64px;padding:1px 2px;font-size:10px}.probe-remove.on{color:var(--accent);border-color:var(--accent)}.stock-table{border-collapse:collapse;width:100%;font-size:11px}.stock-table th{text-align:left;color:var(--text-dim);border-bottom:1px solid var(--line);padding:3px;font-weight:500}.stock-table td{border-bottom:1px solid color-mix(in srgb, var(--line) 50%, transparent);padding:2px 3px}.stock-table .num{text-align:right}.stock-table select{width:100%;padding:1px 2px;font-size:10px}.stock-table input{padding:1px 3px;font-size:10px}.stock-table .num em{font-size:9px}.stock-drum{justify-content:flex-end;align-items:center;gap:3px;display:flex}.stock-drum .num{flex:0 auto}.stock-drum input[type=number]{width:42px}.stock-kind{align-items:center;gap:4px;display:flex}.stock-kind i{border-radius:2px;flex:none;width:8px;height:8px}.run-short{color:var(--bad)}.run-warnings{color:var(--bad);margin:6px 0 0;padding:0;font-size:10.5px;line-height:1.45;list-style:none}.surface-table{border-collapse:collapse;width:100%;margin-top:10px;font-size:11px}.surface-table th{text-align:left;text-transform:uppercase;letter-spacing:.05em;color:var(--text-dim);border-bottom:1px solid var(--line);padding:3px 5px;font-size:9.5px;font-weight:600}.surface-table td{border-bottom:1px solid color-mix(in srgb, var(--line) 55%, transparent);padding:3px 5px}.surface-table .num-cell{text-align:right;white-space:nowrap;font-family:ui-monospace,monospace}.surface-table .mat-cell{color:var(--text-dim);text-overflow:ellipsis;white-space:nowrap;max-width:0;overflow:hidden}.tabbar{background:var(--panel);border-top:1px solid var(--line);padding-bottom:env(safe-area-inset-bottom,0);flex:none;display:none}.tabbar button{min-height:52px;color:var(--text-dim);background:0 0;border:none;border-top:2px solid #0000;flex:1;justify-content:center;align-items:center;gap:6px;font-size:12px;font-weight:500;display:flex}.tabbar button.active{color:var(--accent);border-top-color:var(--accent);background:color-mix(in srgb, var(--accent) 8%, transparent)}.tab-badge{background:var(--panel-2);border:1px solid var(--line);border-radius:9px;min-width:18px;padding:0 5px;font-family:ui-monospace,monospace;font-size:10px}@media (width<=860px){.topbar{flex-wrap:wrap;align-items:center;gap:8px;height:auto;padding:7px 10px}.brand{flex:none}.perf{display:none}.projectbar{border-right:none;flex:auto;min-width:0;padding-right:0}.project-select{max-width:108px}.project-name{max-width:116px}.project-name-input{width:120px}.topbar-controls{flex-wrap:wrap;flex:100%;gap:6px}.topbar-controls>label{flex:none}.menu-summary{display:none}.undobar{border-right:none;flex:none;padding-right:0}.undobar .menu{display:none}.body{grid-template-columns:minmax(0,1fr)!important}.splitter{display:none}.panel-left,.panel-right{border:none}.body[data-mobile-tab=plan] .panel-left,.body[data-mobile-tab=plan] .panel-right,.body[data-mobile-tab=sources] .stage,.body[data-mobile-tab=sources] .panel-right,.body[data-mobile-tab=analysis] .stage,.body[data-mobile-tab=analysis] .panel-left{display:none}.tabbar{display:flex}input,select{min-height:38px;padding:6px 8px;font-size:16px}input[type=checkbox]{width:20px;height:20px;min-height:0}input[type=range]{min-height:34px}.btn{min-height:36px;padding:6px 12px}.btn-small{min-height:32px;font-size:12px}.mute,.solo,.eye{width:26px;height:22px;font-size:10px}.source-list li{grid-template-columns:30px minmax(0,1fr);gap:0 10px;padding:8px}.src-name{font-size:14px}.src-meta{font-size:11px}.row{grid-template-columns:84px minmax(0,1fr);gap:10px}.row-label{font-size:12px}.section-body{gap:10px;padding:12px}.section h3{padding:11px 12px;font-size:11px}.slider{grid-template-columns:minmax(0,1fr) 54px}.slider em,.num em{font-size:11px}.stat{padding:8px 10px}.stat-value{font-size:14px}.note{font-size:12px}.project-menu button{padding:10px 12px;font-size:14px}.legend{padding:10px 12px 12px}.legend-range{max-width:none}}@media (width<=400px){.brand .tag{display:none}.save-state{min-width:0;font-size:10px}.row{grid-template-columns:76px minmax(0,1fr)}.stats{grid-template-columns:minmax(0,1fr)}}@media (height<=480px) and (width<=900px){.menu-panel{max-height:calc(100vh - 56px)}.tabbar button{min-height:42px}}.hoverreadout{z-index:4;background:color-mix(in srgb, var(--panel) 72%, transparent);-webkit-backdrop-filter:blur(7px);backdrop-filter:blur(7px);border:1px solid color-mix(in srgb, var(--line) 80%, transparent);pointer-events:none;border-radius:5px;min-width:236px;max-width:300px;padding:7px 9px 8px;font-size:11px;position:absolute;top:10px;left:10px;box-shadow:0 6px 20px #0006}.hr-head{border-bottom:1px solid var(--line);justify-content:space-between;align-items:baseline;gap:10px;margin-bottom:5px;padding-bottom:4px;display:flex}.hr-pos{color:var(--text-dim);font-family:ui-monospace,monospace;font-size:10.5px}.hr-spl{color:var(--accent);font-family:ui-monospace,monospace;font-size:13px;font-weight:600}.hr-table{border-collapse:collapse;width:100%;font-size:10px}.hr-table th{text-align:left;text-transform:uppercase;letter-spacing:.05em;color:var(--text-dim);padding:0 0 3px;font-size:9px;font-weight:600}.hr-table td{padding:1.5px 0;font-family:ui-monospace,monospace}.hr-table .num{text-align:right;padding-left:8px}.hr-name{text-overflow:ellipsis;white-space:nowrap;max-width:88px;font-family:ui-sans-serif,system-ui,sans-serif;overflow:hidden}.hr-rel{color:var(--warn)}.hr-first{color:var(--ok)}.hr-table tr.hr-muted td,.hr-table tr.hr-muted .hr-rel{color:#4d5560}.hr-empty{color:var(--text-dim);margin:4px 0 0;font-size:10px}.zoomctl{z-index:4;background:color-mix(in srgb, var(--panel) 88%, transparent);border:1px solid var(--line);border-radius:5px;gap:3px;padding:3px;display:flex;position:absolute;top:10px;right:10px}.zoomctl button{background:var(--panel-2);border:1px solid var(--line);min-width:28px;min-height:28px;color:var(--text);border-radius:3px;padding:0 6px;font-size:13px;line-height:1}.zoomctl button:hover:not(:disabled){border-color:var(--accent);color:var(--accent)}.zoomctl button:disabled{opacity:.45;cursor:default}.zoomctl-reset{min-width:62px;font-family:ui-monospace,monospace;font-size:10px!important}.report{display:none}@media print{.app>.topbar,.app>.body,.app>.tabbar{display:none!important}html,body,#root{color:#111;background:#fff;height:auto;overflow:visible}.app{height:auto;display:block;overflow:visible}.report{color:#111;padding:0;font-family:ui-sans-serif,system-ui,sans-serif;font-size:9.5pt;line-height:1.4;display:block}.report,.report *{box-sizing:border-box;max-width:100%}.report table{table-layout:fixed;width:100%;min-width:0!important}.report td,.report th{overflow-wrap:anywhere;word-break:break-word}.report .run-scroll,.report-section>div{overflow:visible!important}.report-head{border-bottom:2px solid #111;margin-bottom:12pt;padding-bottom:6pt}.report-head h1{margin:0;font-size:17pt}.report-meta{color:#555;margin:2pt 0 0;font-size:8.5pt}.report-section{break-inside:avoid;margin-bottom:14pt}.report-section h2{text-transform:uppercase;letter-spacing:.05em;border-bottom:1px solid #bbb;margin:0 0 5pt;padding-bottom:2pt;font-size:10.5pt}.report-plan img{object-fit:contain;border:1px solid #ccc;width:100%;max-height:115mm}.report-caption{color:#555;margin:3pt 0 0;font-size:8pt}.report table{border-collapse:collapse;width:100%;font-size:8.5pt}.report th{text-align:left;text-transform:uppercase;letter-spacing:.03em;border-bottom:1px solid #111;padding:3pt 4pt;font-size:8pt}.report td{border-bottom:1px solid #ddd;padding:2.5pt 4pt}.report td.num,.report th.num{text-align:right;font-variant-numeric:tabular-nums}.report tr.muted td{color:#888}.report-facts{grid-template-columns:repeat(3,1fr);gap:4pt 12pt;margin:0;display:grid}.report-facts div{border-bottom:1px solid #ddd;justify-content:space-between;padding-bottom:2pt;display:flex}.report-facts dt{color:#555;font-size:8pt}.report-facts dd{font-variant-numeric:tabular-nums;margin:0}.report-table{border-collapse:collapse;width:100%;font-size:8.5pt}.report-table th{text-align:left;border-bottom:1px solid #999;padding:2pt 4pt;font-weight:600}.report-table td{border-bottom:1px solid #ddd;padding:2pt 4pt}.report-table .num{text-align:right}.report-note{color:#555;margin:4pt 0 0;font-size:8pt}@page{size:A4;margin:14mm}}.panel::-webkit-scrollbar{width:9px}.panel::-webkit-scrollbar-track{background:var(--panel)}.panel::-webkit-scrollbar-thumb{background:var(--line);border:2px solid var(--panel);border-radius:5px}.panel::-webkit-scrollbar-thumb:hover{background:#39404d}.capture-stage{pointer-events:none;width:1280px;height:760px;position:fixed;top:0;left:-4000px}@media print{.capture-stage{display:none!important}.aim-grid{grid-template-columns:repeat(2,1fr);gap:6pt;display:grid}.aim-card{break-inside:avoid;border:1px solid #999;border-radius:2pt;padding:5pt 6pt 6pt}.aim-muted{opacity:.55}.aim-title{border-bottom:1px solid #ccc;align-items:baseline;gap:6pt;margin-bottom:4pt;padding-bottom:3pt;display:flex}.aim-title strong{font-size:11pt}.aim-group{color:#555;border:1px solid #bbb;border-radius:2pt;padding:0 3pt;font-size:7.5pt}.aim-flag{color:#a11;margin-left:auto;font-size:7.5pt;font-weight:700}.aim-angles{grid-template-columns:1fr 1fr;gap:4pt;margin-bottom:5pt;display:grid}.aim-angles>div{background:#f1f3f5;border-radius:2pt;padding:3pt 5pt}.aim-lbl{text-transform:uppercase;letter-spacing:.06em;color:#666;font-size:7pt;display:block}.aim-big{font-variant-numeric:tabular-nums;font-size:11.5pt;font-weight:700;display:block}.aim-rows{margin:0;font-size:8pt}.aim-rows>div{border-bottom:1px solid #eee;justify-content:space-between;gap:8pt;padding:1pt 0;display:flex}.aim-rows dt{color:#666;white-space:nowrap}.aim-rows dd{text-align:right;font-variant-numeric:tabular-nums;margin:0}.aim-strong{font-weight:700}.view-grid{grid-template-columns:1fr;gap:8pt;display:grid}.view-grid img{object-fit:contain;border:1px solid #ccc;width:100%;max-width:100%;max-height:105mm}.view-grid figure{break-inside:avoid;margin:0}.view-grid figcaption{color:#555;padding-top:2pt;font-size:8.5pt}}
