:root{color-scheme:dark;--color-bg: #0D1117;--color-surface: #161B22;--color-surface-raised: #1C2128;--color-canvas: #090D12;--color-canvas-grid: rgba(48, 54, 61, .5);--color-text: #E6EDF3;--color-text-secondary: #7D8590;--color-text-muted: #484F58;--color-border: #30363D;--color-border-bright: #484F58;--color-accent: #2DD4BF;--color-accent-hover: #14B8A6;--color-accent-dim: rgba(45, 212, 191, .1);--color-data: #58A6FF;--color-error: #F85149;--color-success: #3FB950;--color-wire: #8B949E;--color-disabled: #484F58;--color-warning: #f9e2af;--color-surface-active: rgba(255, 255, 255, .05);--cm-comment: #6A737D;--cm-keyword: var(--color-accent);--cm-element: #D2A679;--cm-number: var(--color-data);--cm-variable: var(--color-text);--color-series-1: #2DD4BF;--color-series-2: #F0883E;--color-series-3: #f0b429;--color-series-4: #cc4db8;--color-series-5: #44cc44;--color-series-6: #9966cc;--color-series-7: #ff6688;--color-series-8: #66aaff;--color-accent-selection: rgba(45, 212, 191, .25);--color-accent-ring: rgba(45, 212, 191, .15);--color-error-bg: rgba(248, 81, 73, .1);--color-error-border: rgba(248, 81, 73, .2);--color-row-stripe: rgba(255, 255, 255, .02);--color-spinner-track: rgba(13, 17, 23, .3);--color-spinner-head: rgba(13, 17, 23, .9);--shadow-glow: 0 0 12px rgba(45, 212, 191, .3);--shadow-overlay: 0 2px 12px rgba(0, 0, 0, .5);--space-1: 4px;--space-2: 8px;--space-3: 12px;--space-4: 16px;--space-5: 24px;--space-6: 32px;--space-7: 48px;--font-heading: "Inter", system-ui, sans-serif;--font-body: "Inter", system-ui, sans-serif;--font-mono: "IBM Plex Mono", monospace;--radius-sm: 3px;--radius-md: 6px;--radius-lg: 10px;--shadow-inset: inset 0 1px 3px rgba(0, 0, 0, .2);--shadow-sm: 0 1px 3px rgba(0, 0, 0, .3);--shadow-header: 0 1px 0 rgba(255,255,255,.05), 0 4px 16px rgba(0,0,0,.4);--shadow-panel: 0 0 0 1px var(--color-border), 0 4px 24px rgba(0,0,0,.3);--shadow-inset-chart: inset 0 1px 4px rgba(0,0,0,.35)}[data-theme=light]{color-scheme:light;--color-bg: #F7F6F2;--color-surface: #EFEDE8;--color-surface-raised: #E8E5DF;--color-canvas: #F7F6F2;--color-canvas-grid: rgba(160, 145, 128, .25);--color-text: #2C1F14;--color-text-secondary: #7A6652;--color-text-muted: #B5A090;--color-border: #D4C9BA;--color-border-bright: #BFB0A0;--color-accent: #B87333;--color-accent-hover: #A0622A;--color-accent-dim: rgba(184, 115, 51, .12);--color-data: #5C7A9E;--color-error: #C0392B;--color-success: #27AE60;--color-wire: #8C7B6B;--color-disabled: #C4B8AA;--color-warning: #d4800a;--color-surface-active: rgba(137, 180, 250, .15);--cm-comment: #9E8A78;--cm-keyword: var(--color-accent);--cm-element: #8B5E34;--cm-number: var(--color-data);--cm-variable: var(--color-text);--color-series-1: #C07828;--color-series-2: #3A72C8;--color-series-3: #D42828;--color-series-4: #1A9E30;--color-series-5: #8033CC;--color-series-6: #00A0A5;--color-series-7: #9AAA00;--color-series-8: #D43080;--color-accent-selection: rgba(184, 115, 51, .25);--color-accent-ring: rgba(184, 115, 51, .15);--color-error-bg: rgba(192, 57, 43, .08);--color-error-border: rgba(192, 57, 43, .18);--color-row-stripe: rgba(0, 0, 0, .03);--color-spinner-track: rgba(255, 255, 255, .3);--color-spinner-head: rgba(255, 255, 255, .9);--shadow-glow: 0 0 12px rgba(184, 115, 51, .25);--shadow-overlay: 0 2px 12px rgba(0, 0, 0, .15);--shadow-inset: inset 0 1px 3px rgba(0, 0, 0, .06);--shadow-sm: 0 1px 3px rgba(0, 0, 0, .1);--shadow-header: 0 1px 0 rgba(0,0,0,.06), 0 4px 12px rgba(0,0,0,.08);--shadow-panel: 0 0 0 1px var(--color-border), 0 2px 12px rgba(0,0,0,.08);--shadow-inset-chart: inset 0 1px 3px rgba(0,0,0,.08)}*,*:before,*:after{box-sizing:border-box}body{margin:0;min-width:320px;height:100vh;overflow:hidden;font-family:var(--font-body);font-size:14px;line-height:1.5;color:var(--color-text);background-color:var(--color-bg);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}*{scrollbar-width:thin;scrollbar-color:var(--color-border) transparent}*::-webkit-scrollbar{width:4px;height:4px}*::-webkit-scrollbar-track{background:transparent}*::-webkit-scrollbar-thumb{background:var(--color-border);border-radius:2px}*::-webkit-scrollbar-thumb:hover{background:var(--color-border-bright)}:focus-visible{outline:2px solid var(--color-accent);outline-offset:2px}.app{display:flex;flex-direction:column;height:100vh;overflow:hidden}.header{display:flex;align-items:center;justify-content:space-between;padding:0 var(--space-4);height:44px;flex-shrink:0;background:var(--color-surface);border-bottom:1px solid var(--color-border);box-shadow:var(--shadow-header);z-index:10}.header-brand{display:flex;align-items:center;gap:var(--space-3)}.header-icon,.header-logo{color:var(--color-accent);flex-shrink:0}.header-title-group{display:flex;flex-direction:column;justify-content:center}.header-title{margin:0;font-family:var(--font-heading);font-size:13px;font-weight:600;color:var(--color-text);line-height:1.1;letter-spacing:.04em;text-transform:uppercase}.header-subtitle{font-family:var(--font-mono);font-size:10px;font-weight:500;letter-spacing:.06em;color:var(--color-text-secondary);display:block;margin-top:1px}.analysis-badge{display:inline-block;border-radius:20px;padding:1px 8px;font-size:10px;font-weight:600;font-family:var(--font-mono);letter-spacing:.06em;background:var(--color-accent-dim);color:var(--color-accent);border:1px solid color-mix(in srgb,var(--color-accent) 30%,transparent);box-shadow:0 0 8px #2dd4bf26}.header-controls{display:flex;align-items:center;gap:var(--space-3)}.main-content{display:flex;flex:1;min-height:0;overflow:hidden}.panel-editor{display:flex;flex-direction:column;min-height:0;overflow:hidden;transition:width .18s ease;background:var(--color-surface);border-right:1px solid var(--color-border)}.editor-panel-header{display:flex;align-items:center;justify-content:space-between;padding:var(--space-2) var(--space-3);flex-shrink:0;border-bottom:1px solid var(--color-border);background:linear-gradient(180deg,var(--color-surface-raised) 0%,var(--color-surface) 100%);border-top:1px solid rgba(255,255,255,.04)}.editor-panel-title-group{display:flex;flex-direction:column;gap:1px;min-width:0}.editor-panel-title{font-family:var(--font-mono);font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.07em;color:var(--color-text-secondary)}.editor-panel-netlist-name{font-family:var(--font-body);font-size:11px;font-weight:500;color:var(--color-text);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.editor-panel-body{flex:1;min-height:0;overflow:hidden;display:flex;flex-direction:column;padding:var(--space-3)}.btn-load{display:inline-flex;align-items:center;padding:3px 10px;font-family:var(--font-mono);font-size:11px;font-weight:600;color:var(--color-bg);background:var(--color-accent);border:1px solid transparent;border-radius:var(--radius-sm);cursor:pointer;transition:background-color .12s ease,box-shadow .12s ease;-webkit-user-select:none;user-select:none;white-space:nowrap}.btn-load:hover{background:var(--color-accent-hover);box-shadow:var(--shadow-glow)}.resizing .panel-editor{transition:none}.panel-results-section{flex:1;border-top:1px solid var(--color-border);padding-top:var(--space-3);margin-top:var(--space-3);display:flex;flex-direction:column;min-height:0}.panel-results-inline{flex:1;overflow-y:auto;min-height:0}.results-inline-label{font-family:var(--font-mono);font-size:10px;font-weight:600;text-transform:uppercase;letter-spacing:.07em;color:var(--color-text-secondary);margin-bottom:var(--space-2)}.panel-schematic{flex:1;overflow:hidden;background:var(--color-canvas);min-width:0;min-height:0}.resize-handle{width:1px;flex-shrink:0;cursor:col-resize;background:var(--color-border);position:relative;z-index:2;display:flex;align-items:center;justify-content:center;padding:0 7px;margin:0 -7px;background-clip:content-box}.resize-handle-groove{display:none}.resize-handle-chevrons{display:none;position:absolute;gap:2px;font-size:8px;color:var(--color-text-secondary);pointer-events:none}.resize-handle:hover,body.col-resize .resize-handle{background:var(--color-accent);background-clip:content-box;width:2px}.resize-handle:hover .resize-handle-chevrons{display:none}body.col-resize{cursor:col-resize!important;-webkit-user-select:none!important;user-select:none!important}body.col-resize *{cursor:col-resize!important}.resize-handle-minimize-btn{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:20px;height:20px;display:flex;align-items:center;justify-content:center;padding:0;border-radius:var(--radius-sm);background:var(--color-surface-raised);border:1px solid var(--color-border);color:var(--color-text-secondary);cursor:pointer;opacity:0;pointer-events:none;transition:opacity .15s ease,background-color .12s ease,border-color .12s ease,color .12s ease;z-index:4}.resize-handle:hover .resize-handle-minimize-btn{opacity:1;pointer-events:auto}.resize-handle-minimize-btn:hover{background:var(--color-accent-dim);border-color:var(--color-accent);color:var(--color-accent)}body.col-resize .resize-handle-minimize-btn{opacity:0!important;pointer-events:none!important}.panel-collapsed-strip{width:28px;flex-shrink:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:var(--space-2);cursor:pointer;background:var(--color-surface);border-right:1px solid var(--color-border);transition:background-color .12s ease;overflow:hidden}.panel-collapsed-strip:hover{background:var(--color-surface-raised)}.collapsed-strip-chevron{font-size:9px;color:var(--color-text-secondary);transition:color .12s ease}.panel-collapsed-strip:hover .collapsed-strip-chevron{color:var(--color-accent)}.collapsed-strip-label{writing-mode:vertical-rl;text-orientation:mixed;font-family:var(--font-body);font-size:10px;font-weight:600;text-transform:uppercase;letter-spacing:.07em;color:var(--color-text-secondary);white-space:nowrap}.panel-bode{border-left:1px solid var(--color-border);overflow:hidden;background:var(--color-surface);min-width:0;min-height:0;transition:width .18s ease;display:flex;flex-direction:column}.resizing .panel-bode{transition:none}.bode-container{width:100%;height:100%;display:flex;flex-direction:column;padding:var(--space-3) var(--space-3) var(--space-5);position:relative}.analysis-panel-header{display:flex;align-items:center;justify-content:space-between;padding:var(--space-3) var(--space-3) var(--space-2);flex-shrink:0;border-bottom:1px solid var(--color-border);background:linear-gradient(180deg,var(--color-surface-raised) 0%,var(--color-surface) 100%);border-top:1px solid rgba(255,255,255,.04)}.analysis-panel-title{font-family:var(--font-mono);font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.07em;color:var(--color-text-secondary)}.analysis-panel-body{flex:1;min-height:0;overflow:hidden;display:flex;flex-direction:column}.analysis-dc-scroll{flex:1;overflow-y:auto;padding:var(--space-3)}.bode-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:var(--space-2);flex-shrink:0}.bode-title{font-family:var(--font-mono);font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.07em;color:var(--color-text-secondary)}.bode-tooltip{position:absolute;pointer-events:none;z-index:10;background:var(--color-surface-raised);border:1px solid var(--color-border-bright);border-radius:var(--radius-sm);box-shadow:var(--shadow-overlay);padding:6px 10px;font-family:var(--font-mono);font-size:11px;line-height:1.5;white-space:nowrap}.bode-tooltip-freq{font-weight:600;color:var(--color-text);margin-bottom:2px}.bode-tooltip-line{display:flex;align-items:center;gap:5px}.bode-tooltip-dot{display:inline-block;width:7px;height:7px;border-radius:50%;flex-shrink:0}.bode-node-selector{font-family:var(--font-mono);font-size:11px;padding:3px 8px;background:var(--color-bg);color:var(--color-text);border:1px solid var(--color-border);border-radius:var(--radius-sm);outline:none;cursor:pointer}.bode-node-selector:hover{border-color:var(--color-accent)}.bode-view-toggle{display:inline-flex;border:1px solid var(--color-border);border-radius:var(--radius-sm);overflow:hidden}.bode-view-toggle button{font-family:var(--font-mono);font-size:11px;padding:3px 10px;background:var(--color-bg);color:var(--color-text-secondary);border:none;cursor:pointer;transition:background-color .12s ease,color .12s ease;line-height:1.3}.bode-view-toggle button:not(:last-child){border-right:1px solid var(--color-border)}.bode-view-toggle button:hover{color:var(--color-text)}.bode-view-toggle button.active{background:var(--color-accent);color:var(--color-bg)}.analysis-view-toggle{display:inline-flex;border:1px solid var(--color-border);border-radius:20px;overflow:hidden}.analysis-view-toggle button{font-family:var(--font-mono);font-size:12px;font-weight:600;padding:4px 14px;background:var(--color-bg);color:var(--color-text-secondary);border:none;cursor:pointer;transition:background-color .12s ease,color .12s ease;line-height:1.3;letter-spacing:.02em}.analysis-view-toggle button:not(:last-child){border-right:1px solid var(--color-border)}.analysis-view-toggle button:hover{color:var(--color-text)}.analysis-view-toggle button.active{background:var(--color-accent);color:var(--color-bg)}.bode-table-container{flex:1;overflow:auto;min-height:0;min-width:0}.bode-table-container .results-table{table-layout:fixed;width:100%}.bode-table-container .results-table th:nth-child(2),.bode-table-container .results-table td:nth-child(2){text-align:right}.bode-table-container .results-table th:last-child,.bode-table-container .results-table td:last-child{text-align:right;padding-right:var(--space-2)}.bode-chart{flex:1;min-height:0;box-shadow:var(--shadow-inset-chart)}.u-over{background:transparent!important}.waveform-container{display:flex;flex-direction:column;box-shadow:var(--shadow-inset-chart)}.waveform-channels{display:flex;flex-wrap:wrap;align-items:center;gap:2px 12px;padding:6px 12px;border-top:1px solid var(--color-border);background:var(--color-surface);flex-shrink:0;font-family:var(--font-mono);font-size:11px}.waveform-channel-row{display:flex;align-items:center;gap:6px;cursor:pointer;-webkit-user-select:none;user-select:none;padding:2px 4px;border-radius:var(--radius-sm)}.waveform-channel-row:hover{background:var(--color-surface-raised)}.waveform-channel-swatch{display:inline-block;width:12px;height:12px;border-radius:2px;border:1.5px solid;flex-shrink:0;cursor:pointer;transition:opacity .15s}.waveform-channel-name{font-weight:600;font-size:11px;letter-spacing:.03em;transition:color .15s,opacity .15s;min-width:24px}.waveform-channel-readout{color:var(--color-text-secondary);font-size:11px;letter-spacing:.02em;min-width:56px;text-align:right}.waveform-channel-time{margin-left:auto;color:var(--color-text-muted);font-size:10px}.btn-primary{display:inline-flex;align-items:center;gap:7px;padding:6px 14px;font-family:var(--font-mono);font-size:12px;font-weight:600;color:var(--color-bg);background:linear-gradient(180deg,var(--color-accent) 0%,var(--color-accent-hover) 100%);border:none;border-radius:var(--radius-md);cursor:pointer;transition:background-color .12s ease,box-shadow .12s ease,transform .08s ease;letter-spacing:.01em;white-space:nowrap;-webkit-user-select:none;user-select:none}.btn-primary:hover:not(:disabled){background:linear-gradient(180deg,var(--color-accent-hover) 0%,color-mix(in srgb,var(--color-accent-hover) 80%,black) 100%);box-shadow:var(--shadow-glow)}.btn-primary:active:not(:disabled){transform:translateY(1px);box-shadow:none}.btn-primary:disabled{background-color:var(--color-disabled);color:var(--color-text-muted);cursor:not-allowed}.btn-kbd{font-family:var(--font-mono);font-size:10px;font-weight:400;opacity:.65;letter-spacing:.02em;margin-left:1px}.btn-secondary{display:inline-flex;align-items:center;gap:var(--space-2);padding:var(--space-2) var(--space-4);font-family:var(--font-body);font-size:13px;font-weight:500;color:var(--color-text);background-color:transparent;border:1px solid var(--color-border);border-radius:var(--radius-md);cursor:pointer;transition:background-color .12s ease,border-color .12s ease;-webkit-user-select:none;user-select:none}.btn-secondary:hover{background-color:var(--color-surface-raised);border-color:var(--color-border-bright)}.btn-secondary:active{background-color:var(--color-surface-raised);border-color:var(--color-text-secondary)}@keyframes spin{to{transform:rotate(360deg)}}.spinner{width:12px;height:12px;border:1.5px solid var(--color-spinner-track);border-top-color:var(--color-spinner-head);border-radius:50%;animation:spin .65s linear infinite;flex-shrink:0}.error-banner{display:flex;align-items:center;gap:var(--space-2);color:var(--color-error);font-size:12px;font-weight:500;padding:7px var(--space-5);background:var(--color-error-bg);border-bottom:1px solid var(--color-error-border);flex-shrink:0}.schematic-empty{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:var(--space-3);height:100%;color:var(--color-text-secondary);-webkit-user-select:none;user-select:none}.empty-circuit{opacity:.85;filter:drop-shadow(0 0 8px color-mix(in srgb,var(--color-accent) 20%,transparent))}.empty-title{font-family:var(--font-heading);font-size:15px;font-weight:600;color:var(--color-text);margin:0;letter-spacing:.02em}.empty-hint{font-family:var(--font-mono);font-size:11px;color:var(--color-text-secondary);margin:0}.empty-hint kbd{font-family:var(--font-mono);font-size:10px;background:var(--color-surface-raised);border:1px solid var(--color-border);border-radius:3px;padding:1px 5px;color:var(--color-text-secondary)}@media(prefers-reduced-motion:reduce){.empty-current-dot{display:none}}.editor-container{flex:1;display:flex;flex-direction:column;min-height:0}.editor-label{font-family:var(--font-mono);font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.1em;color:var(--color-text-secondary);margin-bottom:var(--space-2);flex-shrink:0;border-bottom:1px solid rgba(45,212,191,.2);padding-bottom:4px;display:inline-block}[data-theme=light] .editor-label,[data-theme=light] .panel-label{border-bottom-color:#b8733340}.editor-codemirror{flex:1;min-height:0;overflow:hidden;display:flex;flex-direction:column}.editor-codemirror .cm-editor{height:100%}.modal-backdrop{position:fixed;inset:0;z-index:100;background:#0000008c;display:flex;align-items:center;justify-content:center}.modal{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);box-shadow:0 8px 40px #00000080;width:580px;max-width:calc(100vw - 48px);display:flex;flex-direction:column;overflow:hidden}.modal-header{display:flex;align-items:center;justify-content:space-between;padding:var(--space-3) var(--space-4);border-bottom:1px solid var(--color-border);flex-shrink:0}.modal-title{font-family:var(--font-body);font-size:14px;font-weight:600;color:var(--color-text)}.modal-close{width:24px;height:24px;display:inline-flex;align-items:center;justify-content:center;padding:0;background:transparent;border:none;border-radius:var(--radius-sm);color:var(--color-text-secondary);cursor:pointer;transition:background-color .12s ease,color .12s ease}.modal-close:hover{background:var(--color-surface-raised);color:var(--color-text)}.modal-tabs{display:flex;border-bottom:1px solid var(--color-border);background:var(--color-surface-raised);flex-shrink:0}.modal-tab{padding:8px 16px;font-family:var(--font-body);font-size:12px;font-weight:500;color:var(--color-text-secondary);background:transparent;border:none;border-bottom:2px solid transparent;cursor:pointer;transition:color .12s ease;white-space:nowrap}.modal-tab.active{color:var(--color-accent);border-bottom-color:var(--color-accent)}.modal-tab:disabled{cursor:default;opacity:.5}.modal-tab-soon{font-size:10px;opacity:.7;margin-left:4px}.modal-body{display:flex;height:300px;min-height:0}.modal-categories{width:196px;flex-shrink:0;border-right:1px solid var(--color-border);overflow-y:auto;padding:var(--space-1)}.modal-category-item{display:flex;align-items:center;justify-content:space-between;padding:7px var(--space-3);border-radius:var(--radius-sm);font-size:12px;color:var(--color-text-secondary);cursor:pointer;-webkit-user-select:none;user-select:none;transition:background-color .1s ease,color .1s ease}.modal-category-item:hover{background:var(--color-surface-raised);color:var(--color-text)}.modal-category-item.active{background:var(--color-accent-dim);color:var(--color-accent)}.modal-category-count{font-size:10px;color:var(--color-text-muted);font-family:var(--font-mono);flex-shrink:0}.modal-category-item.active .modal-category-count{color:var(--color-accent);opacity:.7}.modal-examples{flex:1;overflow-y:auto;padding:var(--space-1)}.modal-example-item{padding:8px var(--space-3);border-radius:var(--radius-sm);font-size:12px;color:var(--color-text-secondary);cursor:pointer;-webkit-user-select:none;user-select:none;transition:background-color .1s ease,color .1s ease;border:1px solid transparent}.modal-example-item:hover{background:var(--color-surface-raised);color:var(--color-text)}.modal-example-item.active{background:var(--color-accent-dim);color:var(--color-accent);border-color:color-mix(in srgb,var(--color-accent) 30%,transparent)}.modal-footer{display:flex;align-items:center;justify-content:flex-end;gap:var(--space-2);padding:var(--space-3) var(--space-4);border-top:1px solid var(--color-border);background:var(--color-surface-raised);flex-shrink:0}.modal-footer .btn-secondary{padding:6px 14px;font-size:12px}.schematic-breadcrumb{display:flex;align-items:center;gap:2px;padding:4px 10px;font-size:12px;font-family:var(--font-body);border-bottom:1px solid var(--color-border);background:var(--color-surface);flex-shrink:0}.schematic-breadcrumb button{background:none;border:none;color:var(--color-accent);cursor:pointer;font-size:12px;font-family:var(--font-body);padding:0 2px}.schematic-breadcrumb button:hover{text-decoration:underline}.breadcrumb-sep{color:var(--color-text-secondary)}.breadcrumb-current{color:var(--color-text);font-weight:600}.schematic-container{width:100%;height:100%;position:relative;background-color:var(--color-canvas);background-image:linear-gradient(var(--color-canvas-grid) 1px,transparent 1px),linear-gradient(90deg,var(--color-canvas-grid) 1px,transparent 1px);background-size:20px 20px}.schematic-svg{width:100%;height:100%;background:transparent}.instance-box-group rect:first-child{transition:fill-opacity .15s,stroke-opacity .15s}.instance-box-group:hover rect:first-child{fill-opacity:.22;stroke-opacity:.85}.canvas-toolbar{position:absolute;bottom:var(--space-3);right:var(--space-3);display:flex;flex-direction:column;gap:1px;background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-md);padding:2px;box-shadow:var(--shadow-overlay)}.btn-toolbar{width:30px;height:30px;padding:0;display:inline-flex;align-items:center;justify-content:center;font-size:16px;font-weight:500;line-height:1;border-radius:var(--radius-sm);color:var(--color-text-secondary);background:transparent;border:none;cursor:pointer;transition:background-color .1s,color .1s}.btn-toolbar:hover:not(:disabled){background-color:var(--color-surface-raised);color:var(--color-accent)}.btn-toolbar:disabled{color:var(--color-disabled);cursor:not-allowed}.results-container{display:flex;flex-direction:column;gap:var(--space-4)}.results-section h3{margin:0 0 var(--space-2) 0;font-family:var(--font-mono);font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.05em;color:var(--color-text-secondary)}.results-table{border-collapse:collapse;width:100%}.results-table th{font-family:var(--font-mono);font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.05em;color:var(--color-text-secondary);text-align:left;padding:var(--space-1) var(--space-3) var(--space-2) 0;border-bottom:1px solid var(--color-border)}.results-table th:last-child{text-align:right;padding-right:0}.results-table td{padding:5px var(--space-3) 5px 0;font-family:var(--font-mono);font-size:11.5px}.results-table td:last-child{text-align:right;padding-right:0;color:var(--color-data);font-variant-numeric:tabular-nums}.results-table tr:last-child td{border-bottom:none}.results-table tr:nth-child(2n) td{background:var(--color-row-stripe)}.results-internal-divider td{padding-top:var(--space-3);padding-bottom:4px;font-family:var(--font-mono);font-size:10px;font-weight:600;text-transform:uppercase;letter-spacing:.04em;color:var(--color-text-secondary);border-bottom:1px solid var(--color-border);background:none!important}.results-internal-row td{opacity:.65}.results-internals-toggle{align-self:flex-start;font-size:11px;padding:4px 10px;margin-top:var(--space-1)}.status-bar{display:flex;align-items:center;justify-content:space-between;height:24px;padding:0 var(--space-3);background:var(--color-surface);border-top:1px solid var(--color-border);flex-shrink:0;font-family:var(--font-mono);font-size:11px;font-weight:500;color:var(--color-text-secondary)}.status-bar-left,.status-bar-right{display:flex;align-items:center;gap:0}.status-bar-item{display:flex;align-items:center;gap:4px;padding:0 var(--space-2)}.status-bar-item:not(:first-child):before{content:"";display:block;width:1px;height:12px;background:var(--color-border);margin-right:var(--space-2)}.status-dot{width:6px;height:6px;border-radius:50%;flex-shrink:0}.status-dot.ready{background:var(--color-success)}.status-dot.idle{background:var(--color-text-muted)}.status-dot.running{background:var(--color-accent);animation:pulse 1.2s ease-in-out infinite}@keyframes pulse{0%,to{opacity:1}50%{opacity:.4}}.theme-toggle{width:32px;height:32px;padding:0;display:inline-flex;align-items:center;justify-content:center;border-radius:var(--radius-md);color:var(--color-text-secondary);background:transparent;border:1px solid var(--color-border);cursor:pointer;transition:background-color .12s ease,border-color .12s ease,color .12s ease}.theme-toggle:hover{background-color:var(--color-surface-raised);border-color:var(--color-border-bright);color:var(--color-accent)}@keyframes labelFadeIn{0%{opacity:0;transform:translateY(-3px)}to{opacity:1;transform:translateY(0)}}.node-label-animated{animation:labelFadeIn .2s ease-out both}@media(prefers-reduced-motion:reduce){.node-label-animated{animation:none}}@keyframes resultsFadeIn{0%{opacity:0;transform:translateY(4px)}to{opacity:1;transform:translateY(0)}}.results-reveal{animation:resultsFadeIn .3s ease-out both}@media(prefers-reduced-motion:reduce){.results-reveal{animation:none}}@keyframes flashSuccess{0%{background:var(--color-success);box-shadow:0 0 12px #3fb95080}to{background:linear-gradient(180deg,var(--color-accent) 0%,var(--color-accent-hover) 100%)}}@keyframes flashError{0%{background:var(--color-error);box-shadow:0 0 12px #f8514980}to{background:linear-gradient(180deg,var(--color-accent) 0%,var(--color-accent-hover) 100%)}}.btn-flash-success{animation:flashSuccess .6s ease-out both}.btn-flash-error{animation:flashError .6s ease-out both}.panel-enter-left-init{transform:translate(-12px);opacity:0}.panel-enter-right-init{transform:translate(12px);opacity:0}.panel-enter-left,.panel-enter-right{transition:transform .25s ease-out,opacity .25s ease-out;transform:translate(0);opacity:1}@media(prefers-reduced-motion:reduce){.panel-enter-left-init,.panel-enter-right-init{transform:none;opacity:1}}@media(max-width:768px){.header-subtitle,.analysis-badge{display:none}.header-brand,.header-controls{gap:var(--space-2)}}.small-screen-overlay{display:none;position:fixed;inset:0;z-index:9999;flex-direction:column;align-items:center;justify-content:center;gap:var(--space-5);background:var(--color-bg);padding:var(--space-6);text-align:center}@media(max-width:480px){.small-screen-overlay{display:flex}}.small-screen-overlay-logo{color:var(--color-accent);opacity:.9}.small-screen-overlay-title{margin:0;font-family:var(--font-heading);font-size:18px;font-weight:600;color:var(--color-text);letter-spacing:.02em}.small-screen-overlay-message{margin:0;font-family:var(--font-body);font-size:14px;color:var(--color-text-secondary);line-height:1.6;max-width:280px}.btn-split-group{display:inline-flex;align-items:center}.btn-split-main{display:inline-flex;align-items:center;padding:3px 9px;font-family:var(--font-mono);font-size:11px;font-weight:600;color:var(--color-bg);background:var(--color-accent);border:1px solid transparent;border-right:none;border-radius:var(--radius-sm) 0 0 var(--radius-sm);cursor:pointer;transition:background-color .12s ease,box-shadow .12s ease;-webkit-user-select:none;user-select:none;white-space:nowrap}.btn-split-main:hover{background:var(--color-accent-hover);box-shadow:var(--shadow-glow)}.btn-split-caret{display:inline-flex;align-items:center;align-self:stretch;padding:0 6px;font-family:var(--font-mono);font-size:10px;color:var(--color-bg);background:var(--color-accent);border:1px solid transparent;border-left:1px solid rgba(0,0,0,.15);border-radius:0 var(--radius-sm) var(--radius-sm) 0;cursor:pointer;transition:background-color .12s ease;-webkit-user-select:none;user-select:none}.btn-split-caret:hover{background:var(--color-accent-hover)}.btn-save-as{display:inline-flex;align-items:center;padding:3px 10px;font-family:var(--font-mono);font-size:11px;font-weight:600;color:var(--color-text-secondary);background:transparent;border:1px solid var(--color-border);border-radius:var(--radius-sm);cursor:pointer;transition:background-color .12s ease,color .12s ease;-webkit-user-select:none;user-select:none;white-space:nowrap}.btn-save-as:hover{background:var(--color-surface-raised);color:var(--color-text)}.editor-panel-netlist-name.modified:after{content:" ●";color:var(--color-warning, #f9e2af);font-size:9px}.save-toast{font-family:var(--font-mono);font-size:10px;color:var(--color-success, #a6e3a1);opacity:0;transition:opacity .15s ease;pointer-events:none;white-space:nowrap}.save-toast.visible{opacity:1}.save-toast.error{color:var(--color-error, #f38ba8)}.recents-anchor{position:relative;display:inline-flex}.recents-dropdown{position:absolute;top:100%;right:0;z-index:200;min-width:220px;max-width:320px;background:var(--color-surface-raised);border:1px solid var(--color-border);border-radius:var(--radius-sm);box-shadow:0 4px 16px #00000059;overflow:hidden}.recents-dropdown-item{display:flex;align-items:center;justify-content:space-between;gap:8px;padding:7px 12px;cursor:pointer;transition:background-color .1s}.recents-dropdown-item:hover{background:var(--color-surface-active, rgba(255,255,255,.05))}.recents-dropdown-name{font-family:var(--font-body);font-size:12px;color:var(--color-text);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.recents-dropdown-tag{font-family:var(--font-mono);font-size:9px;font-weight:600;text-transform:uppercase;letter-spacing:.05em;color:var(--color-text-secondary);flex-shrink:0}.recents-dropdown-empty{padding:12px;font-family:var(--font-body);font-size:11px;color:var(--color-text-secondary);text-align:center}.modal-saved-item{display:flex;align-items:center;gap:6px;padding:7px 10px;cursor:pointer;border-radius:var(--radius-sm);transition:background-color .1s;-webkit-user-select:none;user-select:none}.modal-saved-item:hover{background:var(--color-surface-raised)}.modal-saved-item.active{background:var(--color-surface-active, rgba(137,180,250,.12))}.modal-saved-item-name{flex:1;font-family:var(--font-body);font-size:12px;color:var(--color-text);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.modal-saved-item-input{flex:1;font-family:var(--font-body);font-size:12px;color:var(--color-text);background:var(--color-surface);border:1px solid var(--color-accent);border-radius:3px;padding:1px 5px;outline:none;min-width:0}.modal-saved-item-actions{display:flex;align-items:center;gap:4px;flex-shrink:0}.modal-saved-icon-btn{display:inline-flex;align-items:center;justify-content:center;width:22px;height:22px;padding:0;background:transparent;border:none;border-radius:var(--radius-sm);cursor:pointer;color:var(--color-text-secondary);transition:background-color .1s,color .1s}.modal-saved-icon-btn:hover{background:var(--color-surface-raised);color:var(--color-text)}.modal-saved-delete-confirm{display:flex;align-items:center;gap:6px;font-family:var(--font-body);font-size:11px;color:var(--color-text-secondary)}.modal-saved-delete-confirm button{padding:1px 7px;font-size:11px;border-radius:var(--radius-sm);border:1px solid var(--color-border);background:transparent;cursor:pointer;color:var(--color-text)}.modal-saved-delete-confirm .confirm-yes{color:var(--color-error, #f38ba8);border-color:var(--color-error, #f38ba8)}.modal-saved-delete-confirm .confirm-yes:hover{background:#f38ba81a}.modal-saved-empty{padding:24px 12px;font-family:var(--font-body);font-size:12px;color:var(--color-text-secondary);text-align:center;line-height:1.5}.modal-saved-unavailable{padding:24px 12px;font-family:var(--font-body);font-size:12px;color:var(--color-text-secondary);text-align:center}.editor-panel-actions{display:flex;align-items:center;gap:6px;flex-shrink:0}.editor-panel-footer{display:flex;align-items:center;justify-content:flex-end;gap:8px;padding:5px 8px;border-top:1px solid var(--color-border);flex-shrink:0}.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}
