.uplot,.uplot *,.uplot :before,.uplot :after{box-sizing:border-box}.uplot{width:min-content;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}.u-title{text-align:center;font-size:18px;font-weight:700}.u-wrap{-webkit-user-select:none;user-select:none;position:relative}.u-over,.u-under{position:absolute}.u-under{overflow:hidden}.uplot canvas{width:100%;height:100%;display:block;position:relative}.u-axis{position:absolute}.u-legend{text-align:center;margin:auto;font-size:14px}.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{pointer-events:none;background:#00000012;position:absolute}.u-cursor-x,.u-cursor-y{pointer-events:none;will-change:transform;position:absolute;top:0;left:0}.u-hz .u-cursor-x,.u-vt .u-cursor-y{border-right:1px dashed #607d8b;height:100%}.u-hz .u-cursor-y,.u-vt .u-cursor-x{border-bottom:1px dashed #607d8b;width:100%}.u-cursor-pt{pointer-events:none;will-change:transform;border:0 solid;border-radius:50%;position:absolute;top:0;left:0;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}@font-face{font-family:Geist;font-style:normal;font-weight:100 900;font-display:swap;src:url(/fonts/Geist-latin.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Geist;font-style:normal;font-weight:100 900;font-display:swap;src:url(/fonts/Geist-latin-ext.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}:root{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}*{box-sizing:border-box}html,body,#root{color:#e8e8e8;background:#000;min-height:100vh;margin:0;font-family:system-ui,-apple-system,Segoe UI,Roboto,sans-serif}.shell{flex-direction:column;flex:1;width:100%;min-height:0;display:flex}.ingestion-container{flex-direction:column;flex:1;width:100%;min-height:0;display:flex;position:relative}.drop-header{justify-content:space-between;align-items:center;width:100%;padding:16px 24px;display:flex}.drop-header-brand{align-items:center;gap:10px;display:flex}.drop-header-logo{border-radius:7px;width:32px;height:32px;display:block}.brand-text{letter-spacing:0;color:#e8e8e8;-webkit-user-select:none;user-select:none;font-family:Geist,system-ui,sans-serif;font-size:1.1rem;font-weight:600}.brand-dot{color:#fcc603}.drop-header-github{color:#9a9a9a;border-radius:8px;justify-content:center;align-items:center;padding:6px;transition:color .2s,background-color .2s;display:flex}.drop-header-github:hover{color:#fff;background-color:#141414}.drop-header-github:focus-visible{color:#fff;outline-offset:2px;outline:2px solid #00bfff}.github-icon{width:24px;height:24px;display:block}.hero-dropzone{cursor:pointer;background:#080808;border:2px dashed #2a2a2a;border-radius:12px;outline:none;flex:1;justify-content:center;align-items:center;width:90%;max-width:680px;min-height:380px;margin:40px auto;transition:border-color .2s,background-color .2s,box-shadow .2s;display:flex}.hero-dropzone:hover{background:#0d0d0d;border-color:#444}.hero-dropzone:focus-visible{outline-offset:4px;border-color:#00bfff;outline:2px solid #00bfff}.hero-dropzone--active{background:#061320;border-color:#00bfff;box-shadow:0 0 24px #00bfff40}.hero-content{text-align:center;flex-direction:column;align-items:center;padding:32px;display:flex}.hero-logo{border-radius:19px;width:84px;height:84px;margin-bottom:20px}.hero-title{color:#fff;margin:0 0 8px;font-size:1.5rem;font-weight:600}.hero-subtitle{color:#888;margin:0 0 24px;font-size:.95rem}.hero-privacy{color:#7a7a7a;margin:4px 0 0;font-size:.82rem}.hero-parsing{flex-direction:column;justify-content:center;align-items:center;gap:16px;display:flex}.hero-spinner{border:3px solid #222;border-top-color:#00bfff;border-radius:50%;width:40px;height:40px;animation:.8s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}.hero-parsing-text{color:#00bfff;margin:0;font-size:1.1rem;font-weight:500}.hover-tooltip{z-index:20;color:#e8e8e8;white-space:nowrap;pointer-events:none;background:#0d0d0f;border:1px solid #333;border-radius:6px;align-items:baseline;gap:10px;padding:5px 10px;font-family:monospace;font-size:.72rem;display:flex;position:absolute}.hover-tooltip-name{font-family:system-ui,sans-serif;font-size:.72rem;font-weight:600}.hover-tooltip-coords{color:#bdbdbd}.shell-drop-overlay{z-index:100;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);pointer-events:none;background:#000000d1;border:3px dashed #00bfff;justify-content:center;align-items:center;display:flex;position:absolute;inset:0}.shell-drop-overlay-text{color:#00bfff;text-shadow:0 0 16px #00bfff99;margin:0;font-size:2rem;font-weight:700}.metadata-banner{color:#ccc;background:#0c0c0c;border-bottom:1px solid #1f1f1f;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px 28px;padding:10px 20px;font-size:.85rem;display:flex}.banner-logo{border-radius:6px;flex-shrink:0;width:28px;height:28px;display:block}.banner-github{color:#9a9a9a;border-radius:6px;flex-shrink:0;justify-content:center;align-items:center;padding:5px;transition:color .15s,background-color .15s;display:flex}.banner-github:hover{color:#fff;background-color:#1c1c1c}.banner-github:focus-visible{color:#fff;outline-offset:2px;outline:2px solid #00bfff}.banner-github .github-icon{width:22px;height:22px}.banner-primary-group{align-items:center;gap:14px;display:flex}.banner-filename{color:#fff;text-overflow:ellipsis;white-space:nowrap;max-width:280px;font-family:monospace;font-size:.92rem;font-weight:600;overflow:hidden}.banner-open-btn{color:#00bfff;cursor:pointer;background:#181818;border:1px solid #2e2e2e;border-radius:4px;padding:4px 10px;font-size:.8rem;font-weight:500;transition:all .15s}.banner-open-btn:hover{background:#222;border-color:#00bfff}.banner-metrics{flex-wrap:wrap;align-items:center;gap:12px 28px;display:flex}.banner-field{flex-direction:column;gap:2px;display:flex}.banner-field-label{text-transform:uppercase;letter-spacing:.06em;color:#777;font-size:.68rem}.banner-field-value{color:#e0e0e0;font-family:monospace;font-weight:500}.banner-channel-names{color:inherit}.banner-channel-selected{font-weight:700;text-decoration:underline}.banner-field-vertical .banner-field-value{white-space:pre-wrap}.banner-field-vertical .banner-field-value span:not(:first-of-type){margin-left:14px}.waveform-toolbar{background:#0c0c0c;border-bottom:1px solid #1f1f1f;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:8px 16px;padding:8px 20px;display:flex}.waveform-toolbar-channels{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.waveform-toolbar-label{text-transform:uppercase;letter-spacing:.06em;color:#777;margin-right:4px;font-size:.68rem}.waveform-channel-badge{text-align:center;color:#888;cursor:pointer;background:#181818;border:1px solid #2e2e2e;border-radius:999px;justify-content:center;align-items:center;min-width:38px;padding:3px 10px;font-family:monospace;font-size:.78rem;font-weight:600;transition:all .15s;display:inline-flex}.waveform-channel-badge:hover{color:#bbb;border-color:#444}.waveform-channel-badge:focus-visible{outline-offset:2px;outline:2px solid #00bfff}.waveform-channel-badge--active{background:#101010}.waveform-channel-badge--selected{font-weight:700}.waveform-channel-badge--editing{align-items:center;gap:2px;padding:2px 6px;display:inline-flex}.waveform-channel-badge-prefix{font-weight:700}.waveform-channel-badge--editing input{width:9ch;min-width:6ch;font:inherit;color:#fff;background:#101010;border:1px solid #00bfff;border-radius:3px;padding:1px 4px;font-size:.72rem}.waveform-channel-badge--editing input:focus-visible{outline-offset:1px;outline:2px solid #00bfff}.waveform-fit-button{color:#00bfff;cursor:pointer;background:#181818;border:1px solid #2e2e2e;border-radius:4px;padding:4px 12px;font-size:.8rem;font-weight:500;transition:all .15s}.waveform-fit-button:hover{background:#222;border-color:#00bfff}.waveform-fit-button:focus-visible{outline-offset:2px;outline:2px solid #00bfff}.waveform-theme-button{color:#bbb;cursor:pointer;background:#181818;border:1px solid #2e2e2e;border-radius:4px;padding:4px 12px;font-size:.8rem;font-weight:500;transition:all .15s}.waveform-theme-button:hover{color:#fff;background:#222;border-color:#555}.waveform-theme-button:focus-visible{outline-offset:2px;outline:2px solid #00bfff}.palette-settings{display:inline-flex;position:relative}.palette-settings-panel{z-index:30;background:#101010;border:1px solid #2e2e2e;border-radius:6px;flex-direction:column;gap:6px;padding:10px 12px;display:flex;position:absolute;top:calc(100% + 6px);right:0;box-shadow:0 6px 18px #0000008c}.palette-entry{flex-direction:column;gap:6px;display:flex}.palette-row{align-items:center;gap:8px;display:flex}.palette-row-label{color:#888;min-width:76px;font-size:.72rem;font-weight:600}.palette-chip{cursor:pointer;border:1px solid #444;border-radius:4px;width:34px;height:20px;padding:0;transition:box-shadow .15s,border-color .15s}.palette-chip:hover{border-color:#888;box-shadow:0 0 6px #ffffff40}.palette-chip--custom{border-color:#00bfff}.palette-chip:focus-visible{outline-offset:1px;outline:2px solid #00bfff}.palette-accordion{background:#181818;border:1px solid #2e2e2e;border-radius:6px;flex-direction:column;gap:8px;padding:8px;display:flex}.palette-swatch-grid{grid-template-columns:repeat(6,1fr);gap:5px;display:grid}.palette-grid-swatch{aspect-ratio:1;cursor:pointer;border:1px solid #333;border-radius:3px;width:100%;min-width:0;padding:0}.palette-grid-swatch:hover{border-color:#888}.palette-grid-swatch--active,.palette-grid-swatch:focus-visible{outline-offset:1px;outline:2px solid #00bfff}.palette-accordion-controls{align-items:center;gap:6px;display:flex}.palette-picker{cursor:pointer;background:#181818;border:1px solid #2e2e2e;border-radius:3px;width:28px;height:22px;padding:0}.palette-accordion-done{margin-left:auto}.palette-hex{color:#bbb;background:#181818;border:1px solid #2e2e2e;border-radius:3px;width:76px;padding:2px 6px;font-family:monospace;font-size:.72rem}.palette-hex--invalid{border-color:#f44}.palette-hex:focus-visible{outline-offset:1px;outline:2px solid #00bfff}.palette-row-reset{color:#bbb;cursor:pointer;background:#181818;border:1px solid #2e2e2e;border-radius:3px;width:22px;height:22px;line-height:1}.palette-row-reset:disabled{opacity:.35;cursor:default}.palette-reset-all{margin-top:4px}.oscilloscope-container{background-color:#000;flex:1;width:100%;min-height:400px;position:relative;overflow:hidden}.oscilloscope-container .uplot{background-color:#000;font-family:system-ui,-apple-system,sans-serif}.oscilloscope-container[data-theme=light],.oscilloscope-container[data-theme=light] .uplot{background-color:#fff}.oscilloscope-container .box-zoom-overlay{background:#00bfff26;border:1px solid #00bfffe6}.oscilloscope-empty{color:#888;background-color:#000;justify-content:center;align-items:center;min-height:300px;font-style:italic;display:flex}.waveform-toolbar-cursors{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.waveform-cursor-badge{text-align:center;color:#888;cursor:pointer;background:#181818;border:1px solid #2e2e2e;border-radius:999px;justify-content:center;align-items:center;min-width:38px;padding:3px 10px;font-family:monospace;font-size:.78rem;font-weight:600;transition:all .15s;display:inline-flex}.waveform-cursor-badge:hover{border-color:#555}.waveform-cursor-badge:focus-visible{outline-offset:2px;outline:2px solid #00bfff}.cursor-handle{transition:box-shadow .15s}.cursor-readout-card{z-index:50;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);color:#e0e0e0;-webkit-user-select:none;user-select:none;background:#0c0c0ce0;border:1px solid #2a2a2a;border-radius:8px;min-width:220px;max-width:320px;font-family:monospace;font-size:.8rem;position:absolute;top:76px;right:16px;overflow:hidden;box-shadow:0 4px 20px #0009}.cursor-readout-card-titlebar{cursor:grab;touch-action:none;-webkit-user-select:none;user-select:none;background:#181818f2;border-bottom:1px solid #222;justify-content:space-between;align-items:center;padding:6px 12px;display:flex}.cursor-readout-card-titlebar:focus-visible{outline-offset:-2px;outline:2px solid #00bfff}.cursor-readout-card--dragging{-webkit-user-select:none;user-select:none}.cursor-readout-card--dragging .cursor-readout-card-titlebar{cursor:grabbing}.cursor-readout-card-title{text-transform:uppercase;letter-spacing:.05em;color:#888;font-size:.72rem;font-weight:600}.cursor-readout-titlebar-actions{align-items:center;gap:6px;display:flex}.cursor-readout-help-btn{color:#888;cursor:pointer;background:0 0;border:none;justify-content:center;align-items:center;padding:0 2px;line-height:1;transition:color .15s;display:flex}.cursor-readout-help-btn:hover,.cursor-readout-help-btn:focus-visible{color:#00bfff}.cursor-readout-help-btn:focus-visible{outline-offset:1px;border-radius:2px;outline:1px solid #00bfff}.cursor-readout-help-panel{color:#e0e0e0;background:#00000073;border:1px solid #2a2a2a;border-radius:6px;margin:8px 12px 0;padding:8px 10px;font-size:.72rem}.cursor-readout-help-header{justify-content:space-between;align-items:center;gap:8px;margin-bottom:6px;display:flex}.cursor-readout-help-title{text-transform:uppercase;letter-spacing:.05em;color:#888;font-size:.7rem;font-weight:600}.cursor-readout-help-close{color:#888;cursor:pointer;background:0 0;border:none;padding:0 4px;font-size:.7rem}.cursor-readout-help-close:hover{color:#fff}.cursor-readout-help-list{color:#ccc;flex-direction:column;gap:3px;margin:0;padding-left:16px;display:flex}.cursor-readout-collapse-btn{color:#888;cursor:pointer;background:0 0;border:none;padding:0 4px;font-size:.7rem}.cursor-readout-collapse-btn:hover{color:#fff}.cursor-readout-card-content{flex-direction:column;gap:10px;padding:10px 12px;display:flex}.cursor-readout-row{background:#ffffff05;border:1px solid #0000;border-radius:4px;flex-direction:column;gap:4px;padding:6px;display:flex}.cursor-readout-row--selected{background:#ffffff0d;border-color:#ffffff26}.cursor-readout-header{align-items:center;gap:8px;display:flex}.cursor-badge{cursor:pointer;background:0 0;border:1px solid #444;border-radius:4px;align-items:center;gap:4px;padding:1px 6px;font-size:.75rem;font-weight:700;transition:all .15s;display:inline-flex}.cursor-channel-identity,.cursor-diff-identity{align-items:center;gap:6px;min-width:0;display:inline-flex}.cursor-channel-swatch{border-radius:50%;flex:none;width:8px;height:8px;box-shadow:0 0 4px #ffffff26}.cursor-sample-index{color:#999;font-size:.75rem}.cursor-time-value{color:#fff;margin-left:auto;font-weight:600}.cursor-channel-voltages{flex-direction:column;gap:2px;padding-left:8px;display:flex}.cursor-channel-reading{justify-content:space-between;font-size:.75rem;display:flex}.cursor-voltage-value{color:#ddd}.cursor-readout-differential{background:#0000004d;border-top:1px dashed #262626;border-radius:4px;flex-direction:column;gap:4px;margin-top:4px;padding:8px;display:flex}.cursor-diff-row{justify-content:space-between;font-size:.75rem;display:flex}.cursor-diff-label{color:#888;font-weight:600}.cursor-diff-value{color:#00e5ff;font-weight:600}.cursor-channel-reading--selected,.cursor-meta-row--selected,.cursor-diff-row--selected{background:#ffffff0f;border-radius:2px;font-weight:700}.cursor-readout-row--out-of-view{opacity:.45;filter:grayscale(.4);transition:opacity .15s}.cursor-recovery-badges{pointer-events:none}.cursor-recovery-group{z-index:55;pointer-events:auto;flex-direction:column;gap:6px;display:flex;position:absolute;top:14px}.cursor-recovery-group--left{align-items:flex-start;left:56px}.cursor-recovery-group--right{align-items:flex-end;right:16px}.cursor-recovery-badge{-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);cursor:pointer;-webkit-user-select:none;user-select:none;background:#121212eb;border:1px solid;border-radius:4px;align-items:center;gap:5px;padding:3px 8px;font-family:monospace;font-size:.75rem;font-weight:700;transition:all .15s;display:inline-flex}.cursor-recovery-badge:hover{background:#202020f2;transform:translateY(-1px)}.cursor-recovery-badge:focus-visible{outline-offset:2px;outline:2px solid #fff}.cursor-recovery-chevron{font-size:.7rem}.cursor-recovery-tag{letter-spacing:.05em}.modal-backdrop{z-index:200;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);background:#000000bf;justify-content:center;align-items:center;padding:20px;display:flex;position:fixed;inset:0}.error-modal{background:#111;border:1px solid #d32f2f;border-radius:8px;flex-direction:column;width:100%;max-width:520px;display:flex;overflow:hidden;box-shadow:0 12px 40px #000000e6,0 0 20px #d32f2f40}.error-modal-header{background:#160e0e;border-bottom:1px solid #242424;justify-content:space-between;align-items:center;padding:14px 18px;display:flex}.error-modal-title{color:#ff5252;margin:0;font-size:1.1rem;font-weight:600}.error-modal-close-icon{color:#888;cursor:pointer;background:0 0;border:none;padding:0 4px;font-size:1.4rem;line-height:1}.error-modal-close-icon:hover{color:#fff}.error-modal-body{color:#ccc;padding:18px;font-size:.9rem;line-height:1.5}.error-modal-message{color:#e8e8e8;margin:0 0 14px}.error-modal-bytes{background:#080808;border:1px solid #222;border-radius:4px;margin-top:10px;padding:10px 14px;font-family:monospace;font-size:.85rem}.error-byte-row{align-items:baseline;gap:10px;margin:4px 0;display:flex}.error-byte-label{color:#888;min-width:150px;font-size:.8rem}.error-byte-hex,.error-byte-ascii{color:gold;font-weight:600}.error-modal-footer{background:#0d0d0d;border-top:1px solid #242424;justify-content:flex-end;padding:12px 18px;display:flex}.error-modal-dismiss-btn{color:#fff;cursor:pointer;background:#252525;border:1px solid #3d3d3d;border-radius:4px;padding:6px 18px;font-size:.85rem;font-weight:500;transition:background .15s}.error-modal-dismiss-btn:hover{background:#333;border-color:#555}.canvas-blocked-modal{background:#111;border:1px solid gold;border-radius:8px;flex-direction:column;width:100%;max-width:520px;display:flex;overflow:hidden;box-shadow:0 12px 40px #000000e6,0 0 20px #ffd70033}.canvas-blocked-modal-header{background:#19160a;border-bottom:1px solid #242424;justify-content:space-between;align-items:center;padding:14px 18px;display:flex}.canvas-blocked-modal-title{color:gold;margin:0;font-size:1.1rem;font-weight:600}.canvas-blocked-modal-close-icon{color:#888;cursor:pointer;background:0 0;border:none;padding:0 4px;font-size:1.4rem;line-height:1}.canvas-blocked-modal-close-icon:hover{color:#fff}.canvas-blocked-modal-body{color:#ccc;padding:18px;font-size:.9rem;line-height:1.5}.canvas-blocked-modal-message{color:#e8e8e8;margin:0 0 10px}.canvas-blocked-modal-submessage{color:#aaa;margin:0 0 14px}.canvas-blocked-steps{color:#e0e0e0;margin:0 0 10px;padding-left:22px}.canvas-blocked-steps li{margin-bottom:8px}.canvas-blocked-steps strong{color:#fff}.canvas-blocked-modal-footer{background:#0d0d0d;border-top:1px solid #242424;justify-content:flex-end;padding:12px 18px;display:flex}.canvas-blocked-dismiss-btn{color:#fff;cursor:pointer;background:#252525;border:1px solid #3d3d3d;border-radius:4px;padding:6px 18px;font-size:.85rem;font-weight:500;transition:background .15s}.canvas-blocked-dismiss-btn:hover{background:#333;border-color:gold}.roadblock{z-index:300;overscroll-behavior:none;background:#000;justify-content:center;align-items:center;padding:24px;display:flex;position:fixed;inset:0}.roadblock-panel{text-align:center;flex-direction:column;align-items:center;gap:14px;max-width:560px;display:flex}.roadblock-title{color:#fff;letter-spacing:.02em;margin:0;font-size:1.7rem;font-weight:700}.roadblock-message{color:#c8c8c8;margin:0;font-size:1rem;line-height:1.5}.roadblock-hint{color:#8a8a8a;margin:0;font-size:.9rem}.roadblock-share{color:#00bfff;cursor:pointer;background:0 0;border:1px solid #00bfff;border-radius:6px;margin-top:10px;padding:12px 28px;font-size:1rem;font-weight:600;transition:background .15s,color .15s}.roadblock-share:hover{color:#000;background:#00bfff}.roadblock-sr-status{clip:rect(0 0 0 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.roadblock-manual{flex-direction:column;align-items:center;gap:8px;margin-top:8px;display:flex}.roadblock-manual-hint{color:#c8c8c8;margin:0;font-size:.85rem}.roadblock-url{overflow-wrap:anywhere;color:#00bfff;-webkit-user-select:all;user-select:all;background:#101418;border:1px solid #24303a;border-radius:4px;max-width:100%;padding:8px 12px;font-size:.8rem;display:block}.waveform-csv-button{color:#bbb;cursor:pointer;background:#181818;border:1px solid #2e2e2e;border-radius:4px;padding:4px 12px;font-size:.8rem;font-weight:500;transition:all .15s}.waveform-csv-button:hover:not(:disabled){color:#fff;background:#222;border-color:#555}.waveform-csv-button:focus-visible{outline-offset:2px;outline:2px solid #00bfff}.waveform-csv-button:disabled{opacity:.5;cursor:default}.waveform-png-button{color:#bbb;cursor:pointer;background:#181818;border:1px solid #2e2e2e;border-radius:4px;padding:4px 12px;font-size:.8rem;font-weight:500;transition:all .15s}.waveform-png-button:hover:not(:disabled){color:#fff;background:#222;border-color:#555}.waveform-png-button:focus-visible{outline-offset:2px;outline:2px solid #00bfff}.waveform-png-button:disabled{opacity:.5;cursor:default}.app-frame{flex-direction:column;height:100vh;min-height:560px;display:flex}.app-frame .shell{flex:1;min-height:0}.app-frame .ingestion-container{min-height:0}.site-footer{text-align:center;background:#0d0d0d;border-top:1px solid #242424;flex:none;padding:6px 20px}.site-footer-disclaimer{color:#8a8a8a;margin:0;font-size:.72rem;line-height:1.45}.site-footer--compact{background:0 0;border-top:none;max-width:480px;padding:4px 12px}.site-footer--compact .site-footer-disclaimer{color:#6f6f6f;font-size:.62rem}.png-export-controls{align-items:center;gap:6px;display:inline-flex}.png-invert-toggle{color:#bbb;cursor:pointer;-webkit-user-select:none;user-select:none;align-items:center;gap:4px;font-size:.72rem;display:inline-flex}.png-invert-toggle input{accent-color:#00bfff;cursor:pointer}.png-invert-toggle input:disabled{cursor:default}
