:root{--bg: #0a0a0b;--bg-2: #0f0f11;--bg-3: #141417;--bg-4: #1a1a1e;--border: #222228;--border-2: #2e2e36;--muted: #3a3a45;--text-dim: #5a5a6e;--text-mid: #8a8a9e;--text: #c8c8d8;--text-hi: #e8e8f0;--accent: #ff6b1a;--accent-2: #ffa040;--accent-hi: #ff8a4a;--accent-dim: #3a1a0a;--accent-bg: rgba(255, 107, 26, .08);--cool: #2ae0f0;--cool-dim: #0a2a32;--warn: #f0c44a;--err: #ff5f57;--ok: #28c840;--font-mono: "JetBrains Mono", "Space Mono", ui-monospace, monospace;--r: 4px;--r-lg: 8px;--transition: .18s ease;--sidebar-w: 280px;--right-w: 260px;--topbar-h: 48px;--minimap-h: 72px;--crosshair-h: 36px}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}html,body,#root{height:100%;width:100%}html{font-size:16px}body{background:var(--bg);color:var(--text);font-family:var(--font-mono);font-size:.85rem;line-height:1.5;-webkit-font-smoothing:antialiased;overflow:hidden}button,input{font-family:inherit}::-webkit-scrollbar{width:6px;height:6px}::-webkit-scrollbar-track{background:transparent}::-webkit-scrollbar-thumb{background:var(--muted);border-radius:2px}::-webkit-scrollbar-thumb:hover{background:var(--accent-dim)}.drop-screen{position:fixed;top:0;right:0;bottom:0;left:0;display:flex;align-items:center;justify-content:center;background:radial-gradient(ellipse 60% 60% at 50% 50%,rgba(255,107,26,.06),transparent 70%),var(--bg);padding:2rem}.drop-screen-inner{width:100%;max-width:600px;text-align:center}.brand{font-size:1.4rem;font-weight:700;color:var(--text-hi);letter-spacing:-.02em;margin-bottom:.5rem}.brand span{color:var(--accent)}.brand-sub{font-size:.75rem;color:var(--text-dim);text-transform:uppercase;letter-spacing:.18em;margin-bottom:2.5rem}.dropzone{position:relative;border:1.5px dashed var(--border-2);border-radius:var(--r-lg);background:linear-gradient(180deg,var(--bg-2) 0%,var(--bg-3) 100%);padding:3rem 2rem;cursor:pointer;transition:border-color var(--transition),background var(--transition),transform var(--transition);overflow:hidden}.dropzone:before{content:"";position:absolute;top:0;left:0;right:0;height:2px;background:linear-gradient(90deg,var(--accent),var(--accent-2));opacity:0;transition:opacity var(--transition)}.dropzone:hover,.dropzone.drag-over{border-color:var(--accent);background:linear-gradient(180deg,var(--bg-3) 0%,rgba(255,107,26,.04) 100%);transform:translateY(-1px)}.dropzone:hover:before,.dropzone.drag-over:before{opacity:1}.dropzone-icon{font-size:2.2rem;color:var(--accent);filter:drop-shadow(0 0 10px rgba(255,107,26,.35));margin-bottom:.75rem}.dropzone-title{color:var(--text-hi);font-weight:500}.dropzone-sub{color:var(--text-dim);font-size:.78rem;margin-top:.4rem}.dropzone-hint{color:var(--muted);font-size:.7rem;margin-top:.9rem;letter-spacing:.05em}.linklike{background:none;border:none;padding:0;color:var(--accent);font-family:inherit;font-size:inherit;cursor:pointer;text-decoration:underline;text-decoration-color:var(--accent-dim);text-underline-offset:3px}.linklike:hover{color:var(--accent-2);text-decoration-color:var(--accent)}.alert-error{margin-top:1rem;background:#ff5f5714;border:1px solid rgba(255,95,87,.35);color:#ffb3ad;padding:.6rem .9rem;border-radius:var(--r);font-size:.78rem}.parse-progress{margin-top:1.25rem;font-size:.75rem;color:var(--text-mid);font-variant-numeric:tabular-nums}.progress-bar{height:3px;background:var(--bg-3);border-radius:2px;overflow:hidden;margin-top:.5rem;position:relative}.progress-bar>div{height:100%;background:linear-gradient(90deg,var(--accent),var(--accent-2));transition:width .15s linear}.drop-footer{position:absolute;left:0;right:0;bottom:1rem;display:flex;justify-content:center;align-items:center;gap:.6rem;font-size:.7rem;color:var(--muted);letter-spacing:.05em}.drop-footer a{color:var(--text-dim);text-decoration:none;transition:color var(--transition)}.drop-footer a:hover{color:var(--accent)}.format-picker-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:200;display:flex;align-items:center;justify-content:center;background:#000000a6;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);padding:1rem}.format-picker{width:100%;max-width:480px;background:var(--bg-3);border:1px solid var(--border-2);border-radius:var(--r-lg);box-shadow:0 24px 48px #00000080;display:flex;flex-direction:column;overflow:hidden}.format-picker-header{padding:1rem 1.25rem .75rem;border-bottom:1px solid var(--border)}.format-picker-title{font-size:.9rem;font-weight:600;color:var(--text-hi)}.format-picker-filename{margin-top:.2rem;font-size:.72rem;color:var(--text-dim);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.format-picker-body{padding:1rem 1.25rem}.format-picker-hint{font-size:.78rem;color:var(--text-mid);margin-bottom:.9rem;line-height:1.6}.format-picker-list{display:flex;flex-direction:column;gap:.5rem}.format-picker-option{display:flex;flex-direction:column;gap:.25rem;background:var(--bg-4);border:1px solid var(--border);border-radius:var(--r);padding:.75rem 1rem;text-align:left;cursor:pointer;transition:border-color var(--transition),background var(--transition)}.format-picker-option:hover{border-color:var(--accent);background:var(--accent-bg)}.format-picker-option-label{font-size:.82rem;font-weight:500;color:var(--text-hi)}.format-picker-option-desc{font-size:.7rem;color:var(--text-dim);line-height:1.5}.format-picker-footer{padding:.6rem 1.25rem .9rem;display:flex;justify-content:flex-end;border-top:1px solid var(--border)}.app-shell{display:flex;flex-direction:column;height:100vh;width:100vw;overflow:hidden}.app-grid{flex:1;min-height:0;display:grid;grid-template-columns:var(--sidebar-w) 1fr var(--right-w);grid-template-rows:1fr auto var(--minimap-h);grid-template-areas:"left   chart      right" "left   crosshair  right" "left   mini       right"}.app-shell.left-collapsed .app-grid{grid-template-columns:36px 1fr var(--right-w)}.app-shell.right-collapsed .app-grid{grid-template-columns:var(--sidebar-w) 1fr 36px}.app-shell.left-collapsed.right-collapsed .app-grid{grid-template-columns:36px 1fr 36px}.topbar{display:flex;align-items:center;gap:1rem;padding:0 1rem;height:var(--topbar-h);background:var(--bg-2);border-bottom:1px solid var(--border);flex-shrink:0}.topbar .brand-mini{font-weight:700;color:var(--text-hi);letter-spacing:-.02em;font-size:.95rem}.topbar .brand-mini span{color:var(--accent)}.topbar-meta{display:flex;gap:1.25rem;flex:1;min-width:0;font-size:.72rem;color:var(--text-dim);text-transform:uppercase;letter-spacing:.1em;overflow:hidden;white-space:nowrap}.topbar-meta span strong{color:var(--text);margin-left:.4rem;font-variant-numeric:tabular-nums;font-weight:500;letter-spacing:0}.topbar-actions{display:flex;gap:.5rem;align-items:center}.warn-banner{background:#f0c44a1a;border-bottom:1px solid rgba(240,196,74,.4);color:var(--warn);padding:6px 14px;font-size:.72rem;display:flex;align-items:center;gap:.6rem;letter-spacing:.02em;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.warn-banner strong{color:var(--warn);margin-right:.4rem}.warn-banner button{margin-left:auto;background:none;border:none;color:var(--warn);cursor:pointer;font-size:.95rem;padding:0 .3rem;opacity:.7}.warn-banner button:hover{opacity:1}.btn{display:inline-flex;align-items:center;gap:.4rem;background:transparent;border:1px solid var(--border-2);color:var(--text-mid);padding:5px 12px;font-size:.7rem;text-transform:uppercase;letter-spacing:.12em;border-radius:var(--r);cursor:pointer;transition:color var(--transition),border-color var(--transition),background var(--transition)}.btn:hover{color:var(--text-hi);border-color:var(--accent-dim)}.btn.primary{color:var(--accent);border-color:var(--accent-dim);background:var(--accent-dim)}.btn.primary:hover{background:#ff6b1a2e;border-color:var(--accent)}.toggle-group{display:inline-flex;background:var(--bg-3);border:1px solid var(--border-2);border-radius:var(--r);padding:2px}.toggle-group button{background:transparent;border:none;color:var(--text-mid);padding:4px 10px;font-size:.68rem;text-transform:uppercase;letter-spacing:.12em;border-radius:3px;cursor:pointer;transition:color var(--transition),background var(--transition)}.toggle-group button:hover{color:var(--text-hi)}.toggle-group button.active{color:var(--accent);background:var(--accent-dim)}.sidebar{background:var(--bg-2);border-right:1px solid var(--border);display:flex;flex-direction:column;overflow:hidden;min-width:0}.sidebar.right{border-right:none;border-left:1px solid var(--border)}.sidebar.left{grid-area:left}.sidebar.right{grid-area:right}.sidebar-collapsed{display:flex;flex-direction:column;align-items:center;padding:.5rem 0}.sidebar-collapsed button{background:none;border:none;color:var(--text-mid);cursor:pointer;writing-mode:vertical-rl;transform:rotate(180deg);font-size:.7rem;letter-spacing:.18em;text-transform:uppercase;padding:.75rem 0;transition:color var(--transition)}.sidebar-collapsed button:hover{color:var(--accent)}.sidebar-head{display:flex;align-items:center;justify-content:space-between;padding:.6rem .85rem;border-bottom:1px solid var(--border);flex-shrink:0}.sidebar-title{font-size:.68rem;text-transform:uppercase;letter-spacing:.18em;color:var(--text-dim)}.icon-btn{background:none;border:none;color:var(--text-dim);cursor:pointer;padding:2px 6px;font-size:.85rem;transition:color var(--transition)}.icon-btn:hover{color:var(--accent)}.search-wrap{padding:.5rem .6rem .4rem}.search-input{width:100%;background:var(--bg-3);border:1px solid var(--border);border-radius:var(--r);padding:6px 10px;font-size:.78rem;color:var(--text);outline:none;transition:border-color var(--transition)}.search-input:focus{border-color:var(--accent)}.search-input::placeholder{color:var(--muted)}.channel-list{flex:1;overflow-y:auto;padding:.25rem .4rem 1rem}.channel-item{display:grid;grid-template-columns:16px 12px 1fr auto auto;align-items:center;gap:.5rem;padding:5px 8px;border-radius:3px;cursor:pointer;transition:background var(--transition);-webkit-user-select:none;user-select:none}.channel-pin{background:none;border:none;padding:0 4px;cursor:pointer;color:var(--muted);font-size:.85rem;line-height:1;opacity:0;transition:color var(--transition),opacity var(--transition)}.channel-item:hover .channel-pin{opacity:.7}.channel-pin:hover{color:var(--accent);opacity:1!important}.channel-pin.is-primary{color:var(--accent);opacity:1}.channel-item:hover{background:var(--bg-3)}.channel-item.focused{background:var(--bg-3);outline:1px solid var(--border-2)}.channel-item.active{background:var(--bg-4)}.channel-check{width:14px;height:14px;border:1px solid var(--border-2);border-radius:2px;background:var(--bg-3);position:relative}.channel-item.active .channel-check{border-color:var(--ch-color, var(--accent));background:var(--ch-color, var(--accent))}.channel-item.active .channel-check:after{content:"";position:absolute;top:1px;left:4px;width:4px;height:8px;border:solid #0a0a0b;border-width:0 2px 2px 0;transform:rotate(45deg)}.channel-color{width:10px;height:10px;border-radius:2px;background:var(--ch-color, var(--muted));opacity:.8}.channel-item.active .channel-color{opacity:1}.channel-meta{min-width:0}.channel-name{font-size:.78rem;color:var(--text);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.channel-units{font-size:.65rem;color:var(--text-dim)}.channel-active-idx{font-size:.62rem;color:var(--accent);background:var(--accent-dim);padding:1px 5px;border-radius:2px;font-variant-numeric:tabular-nums}.chart-area{grid-area:chart;background:var(--bg);position:relative;overflow:hidden;display:flex;flex-direction:column}.chart-empty{flex:1;display:flex;align-items:center;justify-content:center;color:var(--text-dim);font-size:.85rem;flex-direction:column;gap:.5rem}.chart-empty .hint{font-size:.7rem;color:var(--muted);text-transform:uppercase;letter-spacing:.15em}.chart-stack{flex:1;min-height:0;display:grid;grid-auto-rows:minmax(110px,1fr);padding:.25rem;gap:.25rem}.chart-stack>.uplot-wrap{position:relative;min-height:0;overflow:hidden}.chart-overlay{flex:1;padding:.25rem;min-height:0;position:relative}.chart-overlay>.uplot-wrap{position:absolute;top:.25rem;right:.25rem;bottom:.25rem;left:.25rem}.uplot-wrap{background:var(--bg-2);border:1px solid var(--border);border-radius:var(--r);padding:4px 6px;position:relative;overflow:hidden}.chart-stack>.uplot-wrap{min-height:140px}.chart-stack.scroll{grid-auto-rows:180px;overflow-y:auto}.chart-stack.scroll>.uplot-wrap{min-height:180px}.u-legend{font-family:var(--font-mono)!important;font-size:.72rem!important;color:var(--text-mid)!important}.u-legend th,.u-legend td{padding:1px 6px!important}.u-legend .u-marker{width:8px!important;height:8px!important}.u-axis text,.u-label{fill:var(--text-dim)!important;color:var(--text-dim)!important}.crosshair-bar{grid-area:crosshair;display:flex;align-items:center;flex-wrap:wrap;gap:0;padding:.3rem .6rem;min-height:var(--crosshair-h);background:var(--bg-2);border-top:1px solid var(--border)}.crosshair-time{display:inline-flex;align-items:center;gap:.5rem;font-size:.65rem;color:var(--text-dim);text-transform:uppercase;letter-spacing:.12em;padding-right:.85rem;margin-right:.85rem;border-right:1px solid var(--border);flex-shrink:0;height:22px}.crosshair-time strong{color:var(--accent);font-size:.78rem;letter-spacing:0;font-variant-numeric:tabular-nums;text-transform:none}.crosshair-bar.is-hover .crosshair-time strong{color:var(--text-hi)}.crosshair-bar.is-hover .crosshair-time:before{content:"";width:6px;height:6px;border:1px dashed var(--text-mid);border-radius:50%;margin-right:4px}.crosshair-item{display:inline-flex;align-items:baseline;gap:.4rem;padding:.2rem .85rem;border-right:1px solid var(--border);flex-shrink:0}.crosshair-item:last-child{border-right:none}.crosshair-dot{width:7px;height:7px;border-radius:50%;background:var(--ch-color, var(--muted));align-self:center;flex-shrink:0}.crosshair-name{font-size:.68rem;color:var(--text-dim);text-transform:uppercase;letter-spacing:.08em}.crosshair-value{font-size:.85rem;color:var(--text-hi);font-variant-numeric:tabular-nums;font-weight:500}.crosshair-units{font-size:.62rem;color:var(--text-dim);letter-spacing:.04em}.crosshair-empty{color:var(--text-dim);font-size:.72rem;letter-spacing:.04em}.minimap{grid-area:mini;background:var(--bg-2);border-top:1px solid var(--border);padding:6px 8px;position:relative;display:flex;align-items:stretch}.minimap canvas{width:100%;height:100%;cursor:ew-resize;display:block}.marker-list{flex:1;overflow-y:auto;padding:.4rem .4rem 1rem}.marker-item{display:grid;grid-template-columns:auto 1fr auto;gap:.4rem .5rem;padding:6px 8px;border-radius:3px;cursor:pointer;border:1px solid transparent;transition:background var(--transition),border-color var(--transition);margin-bottom:4px}.marker-item:hover{background:var(--bg-3);border-color:var(--border-2)}.marker-channel{grid-column:1 / -1;display:flex;align-items:center;gap:.4rem;font-size:.65rem;color:var(--text-dim);text-transform:uppercase;letter-spacing:.1em}.marker-channel select{background:var(--bg-3);border:1px solid var(--border);color:var(--text);font-family:var(--font-mono);font-size:.7rem;padding:2px 4px;border-radius:2px;outline:none;flex:1;min-width:0}.marker-channel-dot{width:8px;height:8px;border-radius:50%;background:var(--mc-color, var(--text-dim));flex-shrink:0}.marker-time{color:var(--accent);font-size:.7rem;font-variant-numeric:tabular-nums}.marker-name{color:var(--text);font-size:.78rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.marker-name input{width:100%;background:var(--bg-3);border:1px solid var(--accent-dim);border-radius:2px;padding:2px 6px;color:var(--text);font-size:.78rem;outline:none}.marker-del{background:none;border:none;color:var(--text-dim);cursor:pointer;font-size:.95rem;line-height:1}.marker-del:hover{color:var(--err)}.marker-empty{color:var(--text-dim);font-size:.75rem;text-align:center;padding:1.5rem 1rem;line-height:1.6}.marker-empty kbd{background:var(--bg-3);border:1px solid var(--border-2);border-radius:3px;padding:1px 6px;color:var(--text);font-size:.7rem;font-family:var(--font-mono)}.color-popover{position:fixed;background:var(--bg-3);border:1px solid var(--border-2);border-radius:var(--r);padding:.6rem;box-shadow:0 8px 24px #00000080;z-index:1000;display:grid;grid-template-columns:repeat(6,18px);gap:6px}.color-swatch{width:18px;height:18px;border-radius:3px;border:1px solid var(--border);cursor:pointer;padding:0;transition:transform var(--transition)}.color-swatch:hover{transform:scale(1.15)}.color-swatch-custom{display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#ff6b1a,#2ab8ff,#c06bff);overflow:hidden;position:relative}.color-swatch-custom input[type=color]{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;border:none;padding:0;opacity:0;cursor:pointer}.channel-item.active+.channel-item:not(.active){position:relative;margin-top:.45rem}.channel-item.active+.channel-item:not(.active):before{content:"";position:absolute;left:8px;right:8px;top:-.25rem;height:1px;background:var(--border-2)}.topbar-shortcuts{position:relative}.btn.icon-only{width:28px;height:28px;padding:0;font-size:.95rem;display:inline-flex;align-items:center;justify-content:center;letter-spacing:0}.btn.icon-only.active{color:var(--accent);border-color:var(--accent-dim);background:var(--accent-dim)}.shortcuts-popover{position:absolute;top:calc(100% + 6px);right:0;z-index:200;background:#0f0f11f5;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border:1px solid var(--border-2);border-radius:var(--r-lg);padding:.85rem 1rem;box-shadow:0 8px 28px #0000008c}.shortcuts-popover:before{content:"";position:absolute;top:-6px;right:11px;width:10px;height:10px;background:#0f0f11f5;border-left:1px solid var(--border-2);border-top:1px solid var(--border-2);transform:rotate(45deg)}.shortcuts-grid{display:grid;grid-template-columns:auto;gap:6px 14px;font-size:.72rem;color:var(--text-mid);white-space:nowrap}.shortcuts-grid span{display:inline-flex;align-items:center;gap:.4rem}.shortcuts-grid kbd{background:var(--bg-3);border:1px solid var(--border-2);border-radius:2px;padding:1px 6px;color:var(--text);font-family:var(--font-mono);font-size:.68rem;min-width:1.4em;text-align:center}.uplot .u-select{background:#ff6b1a24!important;border:1px solid var(--accent)!important;border-top:none!important;border-bottom:none!important;box-shadow:0 0 0 1px #ff6b1a2e}.share-modal{max-width:540px}.share-body{display:flex;flex-direction:column;gap:.85rem}.share-body .progress-bar{margin-top:.4rem}.share-row{display:flex;align-items:center;justify-content:space-between;gap:.75rem;font-size:.78rem;color:var(--text-mid)}.share-row select{background:var(--bg-4);border:1px solid var(--border);border-radius:var(--r);color:var(--text-hi);font-family:inherit;font-size:.78rem;padding:.3rem .55rem}.share-fine{font-size:.72rem;color:var(--text-dim);line-height:1.55}.share-fine code.share-token{display:inline-block;margin:0 .35em;padding:1px .4em;background:var(--bg-4);border:1px solid var(--border);border-radius:2px;font-family:var(--font-mono);font-size:.7rem;color:var(--accent)}.share-consent{display:flex;align-items:flex-start;gap:.55rem;font-size:.76rem;color:var(--text-mid);line-height:1.55;cursor:pointer;padding:.55rem .7rem;background:var(--bg-4);border:1px solid var(--border);border-radius:var(--r)}.share-consent input{margin-top:.15rem;accent-color:var(--accent)}.share-error{background:#e8411814;border:1px solid rgba(232,65,24,.45);color:#ff8a72;border-radius:var(--r);padding:.55rem .7rem;font-size:.76rem;line-height:1.5}.share-link-row{display:flex;align-items:stretch;gap:.4rem}.share-link{flex:1;min-width:0;background:var(--bg-4);border:1px solid var(--border);border-radius:var(--r);color:var(--text-hi);font-family:var(--font-mono);font-size:.74rem;padding:.45rem .6rem;text-overflow:ellipsis}.share-saved{margin-top:.4rem;border-top:1px solid var(--border);padding-top:.7rem}.share-saved-title{font-size:.72rem;color:var(--text-dim);text-transform:uppercase;letter-spacing:.05em;margin-bottom:.45rem}.share-saved-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:.35rem;max-height:12rem;overflow-y:auto}.share-saved-item{display:flex;align-items:center;gap:.6rem;padding:.4rem .55rem;background:var(--bg-4);border:1px solid var(--border);border-radius:var(--r)}.share-saved-meta{flex:1;min-width:0}.share-saved-name{font-size:.76rem;color:var(--text-hi);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.share-saved-sub{font-size:.68rem;color:var(--text-dim)}.share-saved-actions{display:flex;gap:.35rem}.share-saved-actions .btn{padding:.25rem .55rem;font-size:.7rem}.btn.danger{color:#ff8a72;border-color:#e8411873}.btn.danger:hover{color:#ffb09e;border-color:#e84118b3;background:#e8411814}.share-footer{gap:.5rem}.share-loading-screen{position:fixed;top:0;right:0;bottom:0;left:0;display:flex;align-items:center;justify-content:center;background:var(--bg);z-index:100}.share-loading-card{background:var(--bg-3);border:1px solid var(--border-2);border-radius:var(--r-lg);padding:1.5rem 2rem;display:flex;flex-direction:column;gap:.75rem;min-width:320px;max-width:420px;align-items:center;text-align:center}.share-loading-card .progress-bar{width:100%}.search-wrap{display:flex;gap:.4rem;align-items:center}.math-add-btn{flex-shrink:0;background:var(--bg-3);border:1px solid var(--border-2);color:var(--text-dim);padding:6px 9px;border-radius:var(--r);cursor:pointer;font-size:.72rem;font-family:inherit;letter-spacing:.06em;transition:color var(--transition),border-color var(--transition),background var(--transition)}.math-add-btn:hover{color:var(--accent);border-color:#ff6b1a73;background:#ff6b1a14}.channel-item.derived .channel-name{color:var(--text-hi)}.channel-fn-badge{display:inline-block;background:#ff6b1a24;color:var(--accent);border:1px solid rgba(255,107,26,.35);border-radius:2px;font-size:.62rem;padding:0 4px;margin-right:5px;font-style:italic;letter-spacing:0}.channel-err-badge{display:inline-block;background:#e841182e;color:#ff8a72;border-radius:50%;font-size:.6rem;font-weight:700;width:12px;height:12px;line-height:12px;text-align:center;margin-left:5px}.channel-derived-actions{display:none;gap:.15rem;grid-column:4 / span 2;margin-left:.25rem}.channel-item.derived:hover .channel-derived-actions{display:flex}.channel-item.derived:hover .channel-active-idx,.channel-item.derived:hover .channel-pin{display:none}.icon-btn.small{font-size:.78rem;padding:0 5px}.icon-btn.small.danger{color:#ff8a72}.icon-btn.small.danger:hover{color:#ffb09e}.math-modal{width:min(560px,92vw)}.math-body{display:flex;flex-direction:column;gap:.7rem}.math-row{display:grid;grid-template-columns:80px 1fr;gap:.6rem;align-items:center}.math-row>span{font-size:.7rem;text-transform:uppercase;letter-spacing:.14em;color:var(--text-dim)}.math-row input,.math-row textarea{background:var(--bg-3);border:1px solid var(--border);border-radius:var(--r);padding:7px 10px;color:var(--text);font-family:inherit;font-size:.85rem;outline:none;transition:border-color var(--transition);resize:vertical}.math-row input:focus,.math-row textarea:focus{border-color:var(--accent)}.math-row textarea{min-height:3.5rem;font-variant-ligatures:none;line-height:1.45}.math-row-expr{align-items:start}.math-row-expr>span{padding-top:6px}.math-hints,.math-presets{display:flex;flex-direction:column;gap:.35rem}.math-hints-title{font-size:.66rem;text-transform:uppercase;letter-spacing:.14em;color:var(--text-dim)}.math-hints-list,.math-presets-list{display:flex;flex-wrap:wrap;gap:.3rem}.math-hint-chip,.math-preset-chip{background:var(--bg-3);border:1px solid var(--border-2);color:var(--text);padding:3px 7px;font-size:.7rem;border-radius:3px;cursor:pointer;font-family:inherit;transition:color var(--transition),border-color var(--transition),background var(--transition)}.math-hint-chip:hover,.math-preset-chip:hover{color:var(--accent);border-color:#ff6b1a73;background:#ff6b1a14}.math-help{font-size:.7rem;color:var(--text-dim);line-height:1.55;padding:.55rem .7rem;background:var(--bg-3);border:1px solid var(--border);border-radius:var(--r)}.math-help code{background:var(--bg-4);padding:0 4px;border-radius:2px;font-size:.68rem;color:var(--text)}.stats-panel{border-bottom:1px solid var(--border);flex-shrink:0;display:flex;flex-direction:column}.stats-panel.collapsed{padding-bottom:0}.stats-head{display:flex;align-items:center;gap:.5rem;padding:.55rem .85rem;border-bottom:1px solid var(--border)}.stats-toggle{background:none;border:none;color:var(--text-dim);cursor:pointer;padding:0 4px;font-size:.75rem}.stats-toggle:hover{color:var(--accent)}.stats-title{font-size:.68rem;text-transform:uppercase;letter-spacing:.18em;color:var(--text-dim);flex:1}.stats-duration{font-size:.7rem;color:var(--text-dim);font-variant-numeric:tabular-nums}.stats-panel.collapsed .stats-head{border-bottom:none}.stats-range-row{display:flex;flex-direction:column;gap:.4rem;padding:.5rem .7rem;border-bottom:1px solid var(--border)}.stats-range-select,.stats-marker-pickers select{background:var(--bg-3);border:1px solid var(--border);color:var(--text);border-radius:var(--r);padding:5px 8px;font-size:.75rem;font-family:inherit;outline:none;transition:border-color var(--transition);width:100%}.stats-range-select:focus,.stats-marker-pickers select:focus{border-color:var(--accent)}.stats-marker-pickers{display:flex;align-items:center;gap:.35rem}.stats-marker-pickers select{flex:1;min-width:0}.stats-marker-arrow{color:var(--text-dim);font-size:.85rem;flex-shrink:0}.stats-empty{padding:.75rem .85rem;color:var(--text-dim);font-size:.72rem;font-style:italic}.stats-table-wrap{overflow-x:auto;padding:.25rem .25rem .4rem;max-height:18rem;overflow-y:auto}.stats-table{width:100%;border-collapse:collapse;font-size:.72rem;font-variant-numeric:tabular-nums}.stats-table th{text-align:right;font-weight:500;color:var(--text-dim);text-transform:lowercase;letter-spacing:.04em;padding:4px 6px;border-bottom:1px solid var(--border);position:sticky;top:0;background:var(--bg-2)}.stats-table th:first-child{text-align:left}.stats-table td{padding:4px 6px;text-align:right;color:var(--text);border-bottom:1px solid rgba(60,60,72,.3)}.stats-table tr:last-child td{border-bottom:none}.stats-name{text-align:left!important;display:flex;align-items:center;gap:.4rem;max-width:8rem}.stats-dot{width:8px;height:8px;border-radius:50%;background:var(--ch-color, var(--accent));flex-shrink:0}.stats-name-text{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.stats-no-data{color:var(--text-dim);font-style:italic;text-align:left!important}.math-footer{gap:.5rem}.math-combo{position:relative;width:100%}.math-combo-input{width:100%;background:var(--bg-3);border:1px solid var(--border);border-radius:var(--r);padding:7px 10px;color:var(--text);font-family:inherit;font-size:.85rem;outline:none;transition:border-color var(--transition)}.math-combo-input:focus{border-color:var(--accent)}.math-combo-options{position:absolute;top:calc(100% + 4px);left:0;right:0;z-index:10;max-height:14rem;overflow-y:auto;background:var(--bg-3);border:1px solid var(--border-2);border-radius:var(--r);box-shadow:0 6px 20px #00000073;padding:3px}.math-combo-option{display:flex;width:100%;align-items:baseline;justify-content:space-between;gap:.6rem;padding:5px 8px;background:transparent;border:none;border-radius:3px;color:var(--text);font-family:inherit;font-size:.78rem;text-align:left;cursor:pointer}.math-combo-option:hover,.math-combo-option.is-highlight{background:var(--bg-4);color:var(--text-hi)}.math-combo-option-name{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;flex:1;min-width:0}.math-combo-option-units{color:var(--text-dim);font-size:.7rem;flex-shrink:0}.math-combo-empty{padding:.5rem .6rem;color:var(--text-dim);font-size:.75rem;font-style:italic}.uplot,.uplot *,.uplot *:before,.uplot *:after{box-sizing:border-box}.uplot{font-family:system-ui,-apple-system,Segoe UI,Roboto,Helvetica Neue,Arial,Noto Sans,sans-serif,"Apple Color Emoji","Segoe UI Emoji",Segoe UI Symbol,"Noto Color Emoji";line-height:1.5;width:min-content}.u-title{text-align:center;font-size:18px;font-weight:700}.u-wrap{position:relative;-webkit-user-select:none;user-select:none}.u-over,.u-under{position:absolute}.u-under{overflow:hidden}.uplot canvas{display:block;position:relative;width:100%;height:100%}.u-axis{position:absolute}.u-legend{font-size:14px;margin:auto;text-align:center}.u-inline{display:block}.u-inline *{display:inline-block}.u-inline tr{margin-right:16px}.u-legend th{font-weight:600}.u-legend th>*{vertical-align:middle;display:inline-block}.u-legend .u-marker{width:1em;height:1em;margin-right:4px;background-clip:padding-box!important}.u-inline.u-live th:after{content:":";vertical-align:middle}.u-inline:not(.u-live) .u-value{display:none}.u-series>*{padding:4px}.u-series th{cursor:pointer}.u-legend .u-off>*{opacity:.3}.u-select{background:#00000012;position:absolute;pointer-events:none}.u-cursor-x,.u-cursor-y{position:absolute;left:0;top:0;pointer-events:none;will-change:transform}.u-hz .u-cursor-x,.u-vt .u-cursor-y{height:100%;border-right:1px dashed #607D8B}.u-hz .u-cursor-y,.u-vt .u-cursor-x{width:100%;border-bottom:1px dashed #607D8B}.u-cursor-pt{position:absolute;top:0;left:0;border-radius:50%;border:0 solid;pointer-events:none;will-change:transform;background-clip:padding-box!important}.u-axis.u-off,.u-select.u-off,.u-cursor-x.u-off,.u-cursor-y.u-off,.u-cursor-pt.u-off{display:none}
