.oscilloscope.wave-panel{padding:10px 12px 9px;background:var(--panel);border-color:var(--border);max-height:55dvh;overflow:auto;scrollbar-width:thin}.scope-header{display:flex;align-items:center;gap:8px;margin-bottom:9px}.scope-header>div{display:flex;align-items:center;gap:8px;margin-right:auto}.scope-header>div>svg{width:17px;height:17px;color:var(--muted)}.scope-header h2{font-size:12px;font-weight:600;color:var(--ink);white-space:nowrap}.scope-state{font:10px var(--font-data);color:var(--muted);padding:2px 6px;background:var(--bg);border-radius:4px}.scope-time{display:flex;align-items:center;min-width:0}.app .oscilloscope select{border:1px solid var(--border);background:var(--raised);border-radius:5px;color:var(--ink);font-size:11px;min-width:0;padding:4px 6px;height:27px}.scope-time select{max-width:123px;font-family:var(--font-data)}.app .scope-header .scope-acquire{height:28px;min-height:28px;padding:4px 9px;font-size:12px;color:var(--accent);background:var(--accent-soft);border-color:transparent}.scope-acquire svg{width:12px;height:12px}.app .scope-header .scope-toggle{width:28px;height:28px;min-width:28px;min-height:28px;border:0;background:transparent;color:var(--muted);padding:5px}.oscilloscope.collapsed{padding:6px 12px;max-height:none;overflow:hidden}.oscilloscope.collapsed .scope-header{margin:0;min-height:28px}.scope-body{display:grid;grid-template-columns:minmax(0,1fr) 202px;gap:10px}.scope-display{min-width:0;background:var(--scope-bg);border:1px solid var(--border);border-radius:6px;overflow:hidden}.oscilloscope .wave-canvas{height:158px;margin:0;background:var(--scope-bg)}.scope-measurements{display:flex;align-items:center;gap:10px;justify-content:space-between;padding:5px 10px 7px;font:10px var(--font-data);color:var(--scope-text);min-height:25px;flex-wrap:wrap}.scope-stat{white-space:nowrap}.scope-stat b{color:var(--ch1);font-size:10px;margin-right:5px}.scope-stat.ch1 b{color:var(--ch2)}.scope-stat strong{font-weight:400;color:var(--ink)}.scope-channels{display:grid;grid-template-rows:1fr 1fr;gap:7px;min-width:0}.scope-channel{border:1px solid var(--border);background:var(--raised);border-left:3px solid var(--ch1);border-radius:6px;padding:7px 8px;min-width:0}.scope-channel.ch1{border-left-color:var(--ch2)}.scope-channel.disabled{opacity:.6}.scope-channel-heading{display:flex;align-items:center;justify-content:space-between;gap:4px;font-size:10px;color:var(--muted)}.scope-channel-heading label{display:flex;gap:4px;align-items:center}.scope-channel-heading input{margin:0;width:11px;height:11px}.scope-channel-heading b{font:600 11px var(--font-data);color:var(--ch1)}.scope-channel.ch1 .scope-channel-heading b{color:var(--ch2)}.scope-cursor-value{color:var(--ink);font:12px var(--font-data)}.scope-input-row{display:flex;gap:5px;margin:5px 0}.scope-input-row select{flex:1;width:85px}.app .scope-input-row .icon-button{width:27px;min-width:27px;height:27px;min-height:27px;padding:5px}.app .scope-input-row .icon-button svg{width:15px;height:15px}.scope-scale{display:flex;gap:5px;align-items:center;font-size:10px}.scope-scale select{flex:1;width:100%}.scope-scale small{color:var(--warning);font-size:10px;white-space:nowrap}.scope-footer{display:flex;align-items:center;gap:5px;margin-top:8px}.scope-reference{display:flex;align-items:center;gap:7px;min-width:0;font-size:11px;color:var(--muted)}.scope-reference b{white-space:nowrap;font:11px var(--font-data)}.scope-reference select{width:136px}.app .scope-footer .icon-button{width:27px;min-width:27px;height:27px;min-height:27px;padding:5px;border-color:transparent;background:transparent;color:var(--muted)}.app .scope-footer .icon-button svg{width:15px;height:15px}.app .scope-footer .icon-button[aria-pressed=true]{color:var(--active);background:var(--active-soft)}.scope-footer .cursor-row{flex:1;margin:0;min-width:80px;gap:6px}.scope-footer .cursor-row strong{min-width:63px;color:var(--muted);font:11px var(--font-data)}.scope-footer .cursor-row input{accent-color:var(--active)}.scope-note{font-size:11px;line-height:1.8;color:var(--muted);margin-top:6px}.scope-note details{display:inline;margin-left:8px}.scope-note summary{display:inline;cursor:pointer;color:var(--active);text-decoration:underline;text-underline-offset:2px}.scope-note details[open]{display:block;margin:5px 0 0}.scope-warning{display:flex;gap:10px;align-items:center;background:var(--warning-bg);border:1px solid var(--border);color:var(--warning);border-radius:5px;padding:7px 10px;margin-bottom:8px;font-size:12px;line-height:1.6}.scope-warning strong{font-weight:500}.scope-warning button{margin-left:auto;flex-shrink:0;font-size:11px;padding:5px 8px}.scope-sampling-warning{color:var(--warning);font-size:11px;margin-top:7px}@media(min-height:900px){.oscilloscope .wave-canvas{height:184px}.scope-channel{padding:9px}.scope-input-row{margin:7px 0}}@media(max-width:1200px){.scope-body{grid-template-columns:minmax(0,1fr) 180px;gap:8px}.scope-state{display:none}.scope-measurements{gap:4px;font-size:10px;padding:4px 7px}.scope-stat b{margin-right:3px}.scope-reference select{width:114px}.scope-header{gap:6px}}@media(max-width:560px){.oscilloscope.wave-panel{padding:8px;max-height:48dvh}.scope-header{gap:5px;margin-bottom:7px}.scope-header>div{gap:5px}.scope-time select{width:96px;font-size:10px}.app .scope-header .scope-acquire{font-size:11px;padding:4px 7px}.scope-body{grid-template-columns:1fr;gap:7px}.oscilloscope .wave-canvas{height:138px}.scope-channels{grid-template-columns:1fr 1fr;grid-template-rows:auto;gap:6px}.scope-channel{padding:6px}.scope-channel-heading>span{font-size:0}.scope-cursor-value{font-size:11px}.scope-footer{flex-wrap:wrap;gap:5px}.scope-footer .cursor-row{flex-basis:100%}.scope-reference select{width:142px}.scope-warning{font-size:11px;padding:6px;align-items:flex-start}.scope-warning button{font-size:10px;padding:4px}.scope-note{font-size:10px}}:root{font-family:Inter,Segoe UI,Microsoft YaHei,sans-serif;color:#253b39;background:#f4f6f5;font-synthesis:none;font-size:13px;--green:#187d70;--muted:#748581;--border:#e1e7e5;--soft:#f5f8f7}*{box-sizing:border-box}body{margin:0}button,input,select{font:inherit}button,select,summary{cursor:pointer}button{border:1px solid var(--border);background:#fff;color:#435956;padding:7px 10px;border-radius:6px;white-space:nowrap;transition:background .12s}button:hover{background:#edf4f1;border-color:#b5ccc5}button:disabled{opacity:.35;cursor:default}button:focus-visible,input:focus-visible,select:focus-visible,summary:focus-visible,svg [tabindex]:focus-visible{outline:2px solid #279487;outline-offset:2px}button.active{background:#e4f2ed;border-color:#a0cabd;color:#156e60}button.primary{background:var(--green);border-color:var(--green);color:#fff;font-weight:600;padding:8px 16px}button.primary:hover{background:#116357}h2,h3,p{margin:0}h2{font-size:17px}h3{font-size:14px}small{font-size:11px;color:var(--muted)}kbd{font:10px Segoe UI,sans-serif;color:#8b9b96;margin-left:7px}input[type=range],input[type=checkbox]{accent-color:var(--green)}summary{line-height:1.7}button,input,select{-webkit-tap-highlight-color:transparent}.app{height:100dvh;min-height:540px;display:flex;flex-direction:column;overflow:hidden;background:#fff}.app-header{height:59px;flex-shrink:0;padding:0 20px;display:flex;align-items:center;gap:17px;border-bottom:1px solid var(--border)}.brand{display:flex;align-items:center;gap:9px;white-space:nowrap;font-size:15px;letter-spacing:.5px}.brand-mark{background:var(--green);color:#fff;width:30px;height:30px;border-radius:9px;font-size:33px;line-height:23px;text-align:center;font-weight:400}.version{font-family:Consolas,monospace;font-size:11px;padding:3px 6px;border:1px solid #dbe6e1;border-radius:4px;color:#71877e}.header-divider{height:21px;border-left:1px solid var(--border)}.project-name{width:220px;min-width:70px;border:1px solid transparent;padding:6px 4px;color:#4b625c;background:transparent;border-radius:4px}.project-name:hover{border-color:var(--border)}.saved-state{font-size:11px;color:#8a9993;white-space:nowrap}.file-actions{margin-left:auto;display:flex;gap:7px;align-items:center}.file-actions button{font-size:12px}.file-actions button:first-child{margin-right:8px}.file-actions button:first-child span{margin-left:8px}.toolbar{display:flex;align-items:center;gap:14px;padding:9px 18px;background:#fafcfb;border-bottom:1px solid var(--border);flex-shrink:0;min-height:55px}.tool-group{display:flex;gap:5px;align-items:center}.mode-tools button{display:flex;align-items:center;border-color:transparent;background:transparent;padding:7px 10px}.mode-tools button.active{background:#e4f2ed;border-color:#bdd9cf;color:#126956}.tool-icon{font-size:20px;line-height:20px;margin-right:7px}.toolbar-divider{height:23px;border-left:1px solid var(--border)}.history-tools button{border:0;background:transparent;font-size:22px;padding:1px 7px}.run-tools{margin-left:auto;display:flex;align-items:center;gap:14px}.auto-toggle{display:flex;gap:5px;align-items:center;font-size:12px;color:#71857d;white-space:nowrap}.run-status{display:flex;align-items:center;gap:6px;color:var(--green);font-size:11px;white-space:nowrap}.run-status i{width:6px;height:6px;border-radius:50%;background:#2f9675}.run-status.error{color:#987048}.run-status.error i{background:#c4975f}.notice{padding:8px 20px;background:#edf5f0;color:#476957;display:flex;align-items:center;justify-content:space-between;font-size:12px;flex-shrink:0}.notice button{border:none;background:transparent;padding:0 8px;font-size:18px}.workspace{display:grid;grid-template-columns:188px minmax(0,1fr) 246px;min-height:0;flex:1;position:relative}.workspace.hide-library{grid-template-columns:minmax(0,1fr) 246px}.workspace.hide-inspector{grid-template-columns:188px minmax(0,1fr)}.hide-library .library,.hide-inspector .inspector{display:none}.library{display:flex;flex-direction:column;min-height:0;background:#fafcfb;border-right:1px solid var(--border)}.panel-heading{padding:18px 14px 12px;display:flex;align-items:center;gap:8px}.panel-heading strong{font-size:13px}.panel-heading span{font-size:10px;color:#85968e}.panel-heading button{margin-left:auto;border:0;background:transparent;font-size:20px;padding:0 4px}.library-search{margin:0 12px 10px;padding:8px 10px;border:1px solid var(--border);border-radius:6px;min-width:0;background:#fff;font-size:11px;color:#49605a}.library-search::placeholder{color:#94a39c}.library-scroll{overflow:auto;flex:1;padding:0 10px 16px;scrollbar-width:thin}.section-eyebrow{font-size:11px;letter-spacing:.6px;font-weight:600;color:#80918a}.component-group{margin-top:14px}.component-group .section-eyebrow{padding:0 7px;margin-bottom:7px}.component{width:100%;height:36px;display:flex;gap:6px;align-items:center;text-align:left;border-color:transparent;background:transparent;padding:3px 7px;font-size:12px}.component span{flex:1}.component small{font:10px Consolas,monospace;color:#96a69e}.component-icon{width:32px;height:29px;overflow:visible;flex-shrink:0}.component-icon .symbol{stroke-width:5}.component-icon text{font-size:20px}.library-bottom{border-top:1px solid var(--border);padding:12px;display:grid;gap:8px}.library-bottom button{font-size:11px;background:transparent}.library-bottom .lesson-launch{color:#146f61;border-color:transparent;text-align:left;padding:8px 1px}.lesson-launch span{float:right}.library-bottom small{text-align:center;font-size:10px;color:#93a399}.objects-list{margin:20px 6px 0;font-size:11px;color:#6a8075;border-top:1px solid var(--border);padding-top:12px}.objects-list summary span{float:right}.objects-list button{display:flex;width:100%;justify-content:space-between;border:0;background:transparent;font-size:11px;margin-top:3px}.objects-list button span{color:#8c9c95}.experiment{min-width:0;min-height:0;display:flex;flex-direction:column}.canvas-header{height:47px;flex-shrink:0;display:flex;align-items:center;gap:12px;padding:0 13px;border-bottom:1px solid #edf1ef}.canvas-title{display:flex;align-items:center;gap:9px;white-space:nowrap}.canvas-title strong{font-size:12px;font-weight:600}.canvas-title>span{font-size:10px;color:#8b9c96}.panel-toggle{border:0;padding:4px 6px;color:#80938a;background:transparent;font-size:18px;line-height:24px}.canvas-header>.panel-toggle{margin-left:auto}.context-actions{display:flex;align-items:center;gap:5px;margin-left:auto;font-size:11px;color:#8b9c94}.context-actions button{font-size:11px;padding:5px 8px;background:#fff}.context-empty{color:#9aaba3;font-size:11px}.canvas-area{flex:1;min-height:130px;position:relative;overflow:hidden;background:#fff}.schematic{display:block;width:100%;height:100%;touch-action:none;-webkit-user-select:none;user-select:none}.schematic.tool-wire,.schematic.tool-place,.schematic.tool-probe{cursor:crosshair}.schematic.tool-pan{cursor:grab}.schematic.tool-pan:active{cursor:grabbing}.wire path{fill:none;stroke-linejoin:round;stroke-linecap:round;vector-effect:non-scaling-stroke}.wire-under{stroke:#fff;stroke-width:6}.wire-line{stroke:#72948b;stroke-width:1.8}.wire-hit{stroke:transparent;stroke-width:13;cursor:pointer}.wire.selected .wire-line{stroke:#d0923e;stroke-width:2.5}.wire.network .wire-line{stroke:#218f7c;stroke-width:2.5}.wire.selected.network .wire-line{stroke:#cb8f37}.part{cursor:grab}.part:active{cursor:grabbing}.part-hit{fill:transparent;stroke:transparent;vector-effect:non-scaling-stroke}.part.selected .part-hit{fill:#e8f4f080;stroke:#64ac98;stroke-width:1;stroke-dasharray:4 3}.part.error-part .part-hit{stroke:#c28d54;stroke-dasharray:4 4}.symbol{stroke:#2f5950;stroke-width:2.3;fill:#fff;stroke-linecap:round;stroke-linejoin:round}.symbol text{stroke:none;fill:#2f5950;font-size:16px;font-family:monospace}.part-name{font-size:15px;font-weight:600;fill:#3a5a50;pointer-events:none}.part-value{font-size:13px;fill:#7c9389;pointer-events:none}.pin{cursor:crosshair}.pin-dot{fill:#fff;stroke:#648e7b;stroke-width:1.5}.pin-hit{fill:transparent;stroke:none}.pin.active .pin-dot,.pin:hover .pin-dot{fill:#e8ad52;stroke:#b67f30}.pin-label{fill:#668b7a;font-size:11px;pointer-events:none}.probe-badge rect{fill:#e2f3ed;stroke:#b5dccc;stroke-width:1}.probe-badge text{fill:#188878;font-size:12px;font-weight:600}.probe-badge.ch1 rect{fill:#fbefdf;stroke:#ecd3b4}.probe-badge.ch1 text{fill:#b97927}.junction{fill:#416f60;cursor:crosshair}.junction.active{fill:#d59a41}.segment-handle{fill:#fff;stroke:#c88a36;stroke-width:1.5;vector-effect:non-scaling-stroke}.wire-preview{fill:none;stroke:#c48b39;stroke-width:2;stroke-dasharray:6 4;vector-effect:non-scaling-stroke}.draft-corner{fill:#bc873d}.target-ring{stroke:#c28a34;stroke-width:1.5;fill:#f7dfaa66;vector-effect:non-scaling-stroke}.target-label{fill:#946629;paint-order:stroke;stroke:#fff;stroke-width:4;stroke-linejoin:round}.placement-preview{opacity:.6}.selection-box{fill:#3b9c8320;stroke:#3b9c83;stroke-width:1;vector-effect:non-scaling-stroke}.empty-canvas{fill:#8a9e93}.canvas-navigation{position:absolute;bottom:13px;right:14px;display:flex;align-items:center;gap:1px;background:#fffe;border:1px solid var(--border);padding:3px;border-radius:7px;box-shadow:0 2px 8px #29433207}.canvas-navigation button{border:0;background:transparent;padding:4px 8px;font-size:12px}.canvas-navigation span{min-width:42px;text-align:center;font-size:11px;color:#6c8478;font-family:Consolas,monospace}.canvas-navigation button:last-child{border-left:1px solid var(--border);border-radius:0;margin-left:3px;font-size:11px}.canvas-legend{position:absolute;bottom:23px;left:18px;font-size:10px;color:#778f82;pointer-events:none}.canvas-legend span{color:#a0afa7;margin-left:10px}.canvas-help{padding:9px 15px;display:flex;gap:7px;align-items:center;font-size:11px;color:#82958c;background:#fbfcfb;border-top:1px solid #edf1ef;flex-shrink:0;min-height:33px}.mode-dot{height:5px;width:5px;background:#449e83;border-radius:50%;flex-shrink:0}.diagnostic{padding:9px 14px;background:#fff8ec;color:#8b6c3d;font-size:11px;line-height:1.5;display:flex;gap:12px;align-items:center;border-top:1px solid #f1e2ca;flex-shrink:0}.diagnostic strong{margin-right:6px}.diagnostic button{margin-left:auto;font-size:10px;border-color:#e8d6b9;background:transparent;padding:4px 7px}.wave-panel{padding:12px 16px 8px;border-top:1px solid var(--border);background:#fdfefd;flex-shrink:0}.wave-header{display:flex;align-items:center;justify-content:space-between;gap:10px;min-width:0}.wave-header>div:first-child{white-space:nowrap}.wave-header h2{font-size:12px;display:inline-block;margin-right:10px}.wave-header small{font-size:10px;color:#8c9d94}.wave-header>button{border:0;background:transparent;padding:0 3px;font-size:18px}.channel-pickers{display:flex;gap:14px;min-width:0;margin-left:auto}.channel{display:flex;gap:5px;align-items:center;font-size:11px;min-width:0}.channel b{color:#188878}.channel.ch1 b{color:#c17a2f}.channel select{width:103px;min-width:0;padding:4px 2px;border:1px solid var(--border);border-radius:4px;color:#687e72;background:#fff;font-size:10px}.channel strong{min-width:57px;font-size:11px;font-weight:500;font-family:Consolas,monospace;color:#567367}.wave-canvas{display:block;width:100%;height:140px;margin-top:5px;cursor:crosshair}.cursor-row{display:flex;align-items:center;gap:10px;color:#8b988f;font-size:10px;margin-top:1px}.cursor-row input{flex:1;min-width:0;accent-color:#258570;height:13px}.cursor-row button{padding:3px 5px;font-size:10px;border:0;background:transparent;color:#8b9c91}.cursor-row strong{min-width:75px;color:#6b8577;font-weight:400;text-align:right;font-family:Consolas,monospace}.wave-panel.collapsed{padding-bottom:12px}.inspector{border-left:1px solid var(--border);background:#fbfdfb;display:flex;flex-direction:column;min-height:0}.inspector-tabs{height:47px;display:flex;align-items:stretch;padding:0 14px;gap:14px;border-bottom:1px solid var(--border);flex-shrink:0}.inspector-tabs button{border:0;border-bottom:2px solid transparent;border-radius:0;font-size:12px;padding:0 4px;background:transparent;color:#84988c}.inspector-tabs button.active{border-bottom-color:#288a70;color:#296c53}.inspector-tabs button:last-child{margin-left:auto;font-size:20px}.inspector-scroll{overflow:auto;min-height:0;padding:24px 19px;scrollbar-width:thin}.object-heading{display:flex;align-items:center;justify-content:space-between;margin:12px 0 15px}.object-heading h2{font-size:27px;font-weight:500;letter-spacing:-.5px}.object-heading span{font:11px Consolas,monospace;color:#91a497;padding:5px 8px;background:#f1f5f0;border-radius:4px}.object-title{margin:16px 0 20px;font-size:20px;font-weight:500}.object-actions{display:flex;gap:5px;flex-wrap:wrap;margin-bottom:23px}.object-actions button{font-size:11px;padding:5px 8px}.object-actions kbd{display:none}.field{display:block;margin-top:19px}.field>span{display:flex;justify-content:space-between;margin-bottom:8px;font-size:12px;color:#6b8271}.field input:not([type=range]),.field select{width:100%;padding:9px 10px;border:1px solid #dce6df;border-radius:5px;background:#fff;color:#365746;outline-offset:1px}.field input:not([type=range]){font:17px Consolas,monospace}.field input[type=range]{width:100%;padding:0;margin:8px 0}.field select{font-size:11px;padding:9px 6px}.field-error{color:#ae553b;display:block;margin-top:6px;line-height:1.5}.unit-hint{font-size:11px;color:#8b9e90;line-height:1.85;margin-top:14px}.reading{border:1px solid #e1e9de;border-radius:6px;padding:14px;margin-top:23px;background:#f4f8f1}.reading span,.reading small{display:block;font-size:11px;color:#819781}.reading strong{display:block;font-family:Consolas,monospace;color:#426947;font-size:25px;font-weight:400;margin:10px 0 6px}.model-note{font-size:11px;margin-top:23px;line-height:1.85;color:#829681}.model-note strong,.model-note summary{color:#6d846b;font-size:11px}.model-note p{margin-top:8px}.empty-inspector{color:#8c9e90;line-height:1.9;font-size:12px}.empty-inspector .empty-symbol{display:block;color:#86a392;font-size:35px;margin-bottom:8px}.empty-inspector h2{font-size:15px;font-weight:500;color:#698370}.empty-inspector p{margin-top:11px}.empty-inspector button{margin-top:18px;font-size:11px;background:transparent}.probe-actions{display:flex;gap:6px;margin-top:15px}.probe-actions button{padding:7px;font-size:11px}.wire-description{font-size:12px;line-height:1.9;color:#6d8578}.back-to-part{margin-top:20px;font-size:11px;background:transparent}.switch-button{width:100%;margin-top:20px;font-size:12px}.lesson-card{margin-top:30px;padding-top:21px;border-top:1px solid var(--border)}.lesson-card h3{margin:10px 0 9px;font-size:13px;font-weight:500;color:#698264}.lesson-card p{font-size:11px;line-height:1.9;color:#8b9d83}.lesson-card details{margin-top:12px;font-size:11px;color:#778d6e}.lesson-card details p{margin-top:7px}footer{height:30px;flex-shrink:0;padding:0 16px;border-top:1px solid var(--border);display:flex;align-items:center;justify-content:space-between;gap:10px;font-size:10px;color:#94a498;background:#fafcf8}footer button{font-size:10px;border:0;background:transparent;color:#879e8b;padding:0}.footer-separator{margin:0 9px;color:#d0dacf}.modal-backdrop{position:fixed;inset:0;background:#203d3555;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);z-index:20;display:flex;align-items:center;justify-content:center;padding:24px}.dialog{width:780px;max-width:100%;max-height:90dvh;overflow:auto;border-radius:14px;padding:29px;background:#fcfefd;box-shadow:0 24px 100px #163d3526}.dialog-heading{display:flex;justify-content:space-between;align-items:center;gap:20px}.dialog-heading h2{font-size:25px;font-weight:500;margin-top:10px}.dialog-heading button{font-size:21px;padding:2px 10px;border:0;background:transparent}.dialog-intro{font-size:12px;line-height:1.9;color:#86968e;margin:18px 0}.example-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-top:23px}.example-grid button{padding:17px 13px;display:flex;text-align:left;white-space:normal;gap:12px;align-items:flex-start;background:#fff}.example-index{font:12px Consolas,monospace;color:#8db0a0;padding-top:2px}.example-grid button>span:last-child{margin-left:auto;color:#8da99a}.example-grid strong{font-size:13px;font-weight:500}.example-grid small{display:inline-block;margin-left:8px;font-size:10px;color:#99a797}.example-grid p{font-size:11px;color:#8b9d90;line-height:1.8;margin-top:8px}.blank-button{margin-top:16px;border-style:dashed;width:100%;font-size:12px;padding:11px}.help-grid{display:grid;grid-template-columns:1fr 1fr;gap:27px;margin-top:28px}.help-grid h3{font-size:14px;color:#567b68;margin-bottom:13px}.help-grid p{font-size:12px;color:#81968a;line-height:1.95;margin-top:8px}@media(min-height:900px){.wave-canvas{height:190px}.wave-panel{padding-top:16px;padding-bottom:12px}.component{height:40px}}@media(min-width:1700px){.workspace{grid-template-columns:208px minmax(0,1fr) 270px}.workspace.hide-library{grid-template-columns:minmax(0,1fr) 270px}.workspace.hide-inspector{grid-template-columns:208px minmax(0,1fr)}.workspace.hide-library.hide-inspector{grid-template-columns:minmax(0,1fr)}}@media(max-width:1200px){.saved-state{display:none}.app-header{gap:12px;padding:0 13px}.project-name{width:170px}.workspace{grid-template-columns:162px minmax(0,1fr) 220px}.workspace.hide-library{grid-template-columns:minmax(0,1fr) 220px}.workspace.hide-inspector{grid-template-columns:162px minmax(0,1fr)}.workspace.hide-library.hide-inspector{grid-template-columns:minmax(0,1fr)}.component{font-size:11px;padding:3px}.component small{display:none}.inspector-scroll{padding:20px 14px}.wave-header>div:first-child small{display:none}.channel-pickers{gap:7px}.channel select{width:85px}.channel strong{min-width:46px;font-size:10px}.context-empty,.canvas-legend span{display:none}.canvas-title>span{display:none}.run-tools{gap:9px}.toolbar{gap:8px;padding:8px 12px}.mode-tools button{padding:7px}.canvas-header{gap:5px}.object-actions button{padding:5px 6px}}@media(max-width:900px){.workspace,.workspace.hide-library,.workspace.hide-inspector,.workspace.hide-library.hide-inspector{grid-template-columns:minmax(0,1fr)}.library,.inspector{position:absolute;top:0;bottom:0;width:220px;z-index:5;box-shadow:0 6px 25px #24463b20}.library{left:0}.inspector{right:0;width:246px}.workspace:not(.hide-library) .library{display:flex}.workspace:not(.hide-inspector) .inspector{display:flex}.app-header{height:55px;gap:8px}.brand strong{font-size:13px}.brand .version{display:none}.project-name{flex:1;width:80px}.header-divider{display:none}.file-actions{gap:4px}.file-actions button{padding:6px 7px;font-size:11px}.file-actions button:first-child{margin-right:0}.toolbar kbd,.auto-toggle{display:none}.run-tools{gap:7px}.toolbar-divider{display:none}.mode-tools button{font-size:12px}.canvas-header{height:45px}.wave-header h2{font-size:11px}.canvas-help{font-size:10px}.footer-separator,footer>span:first-child{display:none}}@media(max-width:560px){.app{min-height:510px}.brand strong{display:none}.brand-mark{width:27px;height:27px;font-size:30px}.project-name{font-size:11px;max-width:108px}.app-header{padding:0 8px}.file-actions button:first-child span{display:none}.file-actions button{font-size:10px;padding:6px}.file-actions button:first-child{font-size:0}.file-actions button:first-child:before{content:"示例";font-size:10px}.file-actions button:last-child{display:none}.toolbar{padding:7px 6px;min-height:49px;gap:3px}.tool-group{gap:1px}.mode-tools button{padding:5px;font-size:11px}.tool-icon{font-size:17px;margin-right:4px}.history-tools button{font-size:19px;padding:1px 5px}.run-tools{gap:3px}.run-status{display:none}.run-tools .primary{font-size:11px;padding:7px 9px}.canvas-title strong{display:none}.context-actions{gap:3px}.context-actions button{padding:5px 6px;font-size:10px}.context-actions kbd,.canvas-legend{display:none}.canvas-help{min-height:39px;padding:7px 9px;line-height:1.6}.wave-panel{padding:10px 8px 7px}.wave-header{gap:5px;flex-wrap:wrap}.wave-header>div:first-child{width:100%;display:flex;justify-content:space-between}.wave-header>div:first-child small{display:block}.channel-pickers{margin-left:0;gap:10px;flex:1}.channel{flex:1;gap:4px}.channel select{width:81px;flex:1;font-size:10px}.channel strong{min-width:42px}.wave-canvas{height:122px}.canvas-navigation{right:8px;bottom:8px}.canvas-navigation button{font-size:11px;padding:4px 6px}.cursor-row strong{min-width:56px}.modal-backdrop{padding:12px}.dialog{padding:21px 17px}.dialog-heading h2{font-size:21px}.example-grid,.help-grid{grid-template-columns:1fr}.example-grid button{padding:12px}.help-grid{gap:21px}.diagnostic{font-size:10px;padding:6px 9px}.diagnostic strong{display:none}footer{font-size:9px;padding:0 9px}.inspector,.library{bottom:0;top:45px}.inspector{width:230px}.library{width:200px}}@media(prefers-reduced-motion:reduce){*{transition:none!important;scroll-behavior:auto!important}}.pin-dot.connected{fill:#416f60;stroke:#416f60}.wire.candidate .wire-line{stroke:#c78f38;stroke-width:2.5}.wire-choices{position:absolute;top:14px;left:14px;max-width:calc(100% - 28px);background:#fffdf8;border:1px solid #e2d6b9;box-shadow:0 5px 20px #364d3022;padding:12px;border-radius:8px;display:grid;gap:7px;font-size:11px;z-index:3}.wire-choices strong{font-weight:500;color:#8b7348;margin-bottom:3px}.wire-choices button{text-align:left;font-size:11px;padding:6px 9px}.app{--bg:#e9edf1;--panel:#f5f7f9;--raised:#fff;--canvas:#fbfcfd;--ink:#1a2836;--muted:#627182;--faint:#8593a1;--border:#d7dfe7;--grid:#d4dde6;--wire:#33465a;--part:#203448;--accent:#b5601a;--accent-ink:#fff;--accent-soft:#f6e9dd;--active:#2463c9;--active-soft:#e5eefb;--network:#2463c9;--select:#b5601a;--success:#28804e;--success-soft:#e3f2e8;--warning:#996019;--warning-bg:#fff4df;--error:#bb3838;--scope-bg:#f2f5f9;--scope-grid:#d4dee9;--scope-mid:#a6b8cc;--scope-text:#677b90;--scope-faded:#8795a5;--scope-cursor:#8195ab;--ch1:#2463c9;--ch2:#b5601a;--green:var(--active);--soft:var(--panel);--font-ui:"Segoe UI","Microsoft YaHei UI","Microsoft YaHei",sans-serif;--font-data:"Cascadia Code",Consolas,"Microsoft YaHei",monospace;color:var(--ink);background:var(--bg);color-scheme:light;font-family:var(--font-ui);font-size:13px;line-height:1.45}.app[data-theme=blueprint]{--bg:#0e141a;--panel:#141d26;--raised:#1b2733;--canvas:#101820;--ink:#d9e4ef;--muted:#9badbf;--faint:#75899b;--border:#2d3e4e;--grid:#283a4a;--wire:#a7c1dc;--part:#dfebf7;--accent:#e69a59;--accent-ink:#211407;--accent-soft:#3c2c1e;--active:#79adff;--active-soft:#20344f;--network:#79adff;--select:#eda668;--success:#78c998;--success-soft:#213c2e;--warning:#efbd70;--warning-bg:#362b1b;--error:#ff9999;--scope-bg:#0d151e;--scope-grid:#233446;--scope-mid:#3f5872;--scope-text:#9aafc6;--scope-faded:#7e91a5;--scope-cursor:#9ab1cc;--ch1:#79adff;--ch2:#eda668;color-scheme:dark}.app[data-theme=contrast]{--bg:#e2e5e9;--panel:#f1f2f4;--raised:#fff;--canvas:#fff;--ink:#080d14;--muted:#313b49;--faint:#4f5d6d;--border:#667280;--grid:#cdd3dc;--wire:#080d14;--part:#080d14;--accent:#8e4208;--accent-ink:#fff;--accent-soft:#f9e7d5;--active:#073da3;--active-soft:#e0eaff;--network:#073da3;--select:#953b00;--success:#185c34;--success-soft:#e0eee3;--warning:#803800;--warning-bg:#fff0d1;--error:#a40000;--scope-bg:#fff;--scope-grid:#b7c3d0;--scope-mid:#637a93;--scope-text:#313b49;--scope-faded:#637080;--scope-cursor:#25374c;--ch1:#073da3;--ch2:#953b00}.app button{display:inline-flex;align-items:center;justify-content:center;gap:6px;min-height:30px;color:var(--ink);background:var(--raised);border-color:var(--border);font-weight:500;border-radius:6px}.app button:hover:not(:disabled){background:var(--active-soft);border-color:var(--active)}.app button:disabled{opacity:.35}.app button.primary{height:34px;padding:0 17px;color:var(--accent-ink);background:var(--accent);border-color:transparent;box-shadow:0 1px 2px #00000012}.app button.primary:hover:not(:disabled){background:var(--accent);filter:brightness(1.08)}.app button.primary svg{width:15px;height:15px;fill:currentColor;stroke-width:1}.app button.active,.app button[aria-pressed=true]{color:var(--active);background:var(--active-soft);border-color:transparent}.app button.icon-button{width:32px;height:32px;min-width:32px;min-height:32px;padding:6px;flex-shrink:0}.app button.icon-button svg{width:18px;height:18px;flex-shrink:0}.app :is(button,input,select,summary):focus-visible,.app svg [tabindex]:focus-visible{outline:2px solid var(--active);outline-offset:2px}.app input,.app select{color:var(--ink);background:var(--raised);border-color:var(--border)}.app input::placeholder{color:var(--faint);opacity:1}.app input[type=range],.app input[type=checkbox]{accent-color:var(--active)}.app :is(.app-header,.toolbar,.library,.inspector,.canvas-header,footer){background:var(--panel);border-color:var(--border)}.app-header{height:53px;padding:0 18px;gap:17px}.brand{gap:9px;letter-spacing:-.3px;font-size:15px}.brand strong{font-weight:650}.brand-mark{width:28px;height:28px;display:grid;place-items:center;background:var(--accent);color:var(--accent-ink);border-radius:7px}.brand-mark svg{width:21px;height:21px;stroke-width:1.9}.header-divider{height:20px;border-color:var(--border)}.app .project-name{width:205px;font-size:13px;font-weight:500;background:transparent;color:var(--ink);border-color:transparent;padding:6px 8px}.app .project-name:hover{border-color:var(--border)}.saved-state{display:inline-flex;align-items:center;gap:4px;font-size:11px;border-radius:20px;padding:2px 8px;color:var(--success);background:var(--success-soft)}.saved-state svg{width:12px;height:12px}.saved-state.save-error{color:var(--error);background:var(--warning-bg)}.file-actions{gap:5px}.app .file-actions .examples-button{font-size:12px;padding:0 10px;margin-right:6px;height:32px}.examples-button svg{width:13px;height:13px}.file-actions .header-divider{margin:0 6px}.app .file-actions .icon-button{border-color:transparent;background:transparent}.app .file-actions .icon-button:hover,.app .file-actions .icon-button[aria-pressed=true]{color:var(--active);background:var(--active-soft)}.toolbar{min-height:49px;padding:6px 18px;gap:14px}.mode-tools{gap:3px;padding:2px;border:1px solid var(--border);border-radius:8px;background:var(--raised)}.app .mode-tools button{background:transparent;border-color:transparent}.app .mode-tools button.active{background:var(--active-soft);color:var(--active)}.app .history-tools .icon-button{background:transparent;border-color:transparent;color:var(--muted)}.toolbar-divider{height:22px;border-color:var(--border)}.tool-mode{color:var(--muted);font-size:12px}.run-tools{gap:14px}.auto-toggle{font-size:12px;color:var(--muted);gap:5px}.auto-toggle input{width:12px;height:12px}.run-status{font-size:11px;color:var(--success)}.run-status i{width:5px;height:5px;background:var(--success)}.run-status.error{color:var(--warning)}.run-status.error i{background:var(--warning)}.notice{padding:7px 16px;color:var(--ink);background:var(--active-soft);border-bottom:1px solid var(--border)}.app .notice .icon-button{background:transparent;border:0}.workspace{grid-template-columns:196px minmax(0,1fr) 254px}.workspace.hide-library{grid-template-columns:minmax(0,1fr) 254px}.workspace.hide-inspector{grid-template-columns:196px minmax(0,1fr)}.workspace.hide-library.hide-inspector{grid-template-columns:minmax(0,1fr)}.panel-heading{height:49px;padding:9px 13px;gap:9px}.panel-heading strong{font:600 11px var(--font-data);letter-spacing:1px}.panel-heading span{font:11px var(--font-data);color:var(--faint)}.app .panel-heading .icon-button{width:26px;height:26px;min-width:26px;min-height:26px;margin-left:auto;background:transparent;border:0;color:var(--muted)}.library-search-wrap{display:flex;align-items:center;gap:7px;margin:0 12px 12px;padding:0 9px;height:33px;background:var(--raised);border:1px solid var(--border);border-radius:6px;color:var(--faint)}.library-search-wrap:focus-within{outline:2px solid var(--active);outline-offset:2px}.library-search-wrap>svg{width:14px;height:14px;flex-shrink:0}.app .library-search{width:100%;margin:0;padding:0;border:0;background:transparent;font-size:12px;outline:none}.library-scroll{padding:0 10px 15px}.section-eyebrow{font-size:11px;letter-spacing:.3px;color:var(--muted);font-weight:500}.component-group{margin-top:0}.component-group+.component-group{border-top:1px solid var(--border);margin-top:10px;padding-top:12px}.component-group .section-eyebrow{padding:3px;margin:0 0 5px;font-size:11px}.component-group summary small{float:right;font:10px var(--font-data);color:var(--faint)}.component-tiles{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:2px}.app .component{position:relative;height:65px;flex-direction:column;justify-content:center;gap:4px;padding:7px 2px;font-size:11px;background:transparent;border-color:transparent;font-weight:400}.component span{flex:0;white-space:normal;text-align:center;line-height:1.35}.component small{display:none}.component-icon{width:42px;height:31px}.component-icon .symbol{fill:transparent;stroke:var(--part);stroke-width:4}.app .component:hover{background:var(--raised);border-color:var(--border);box-shadow:0 1px 3px #00000008}.app .component.active{background:var(--active-soft);color:var(--active);border-color:var(--active)}.objects-list{margin:18px 3px 0;font-size:12px;color:var(--muted);border-color:var(--border)}.app .objects-list button{display:flex;justify-content:space-between;width:100%;background:transparent;border:0;color:var(--ink);font:12px var(--font-data)}.objects-list button span{font:11px var(--font-ui);color:var(--muted)}.library-bottom{padding:11px 12px;border-color:var(--border)}.library-bottom button{font-size:12px;height:32px}.library-bottom svg{width:15px;height:15px}.canvas-header{height:44px;padding:0 10px;gap:12px}.canvas-title{gap:8px}.canvas-title strong{font-size:12px;letter-spacing:.1px;font-weight:500}.canvas-title>span{font:10px var(--font-data);background:var(--bg);color:var(--muted);padding:2px 5px;border-radius:4px}.app .panel-toggle{background:transparent;border-color:transparent;color:var(--muted)}.canvas-header>.panel-toggle{margin-left:0}.context-actions{gap:2px;margin-left:auto;color:var(--muted)}.app .context-actions .icon-button{border-color:transparent;background:transparent}.app .context-actions .danger:hover{color:var(--error);background:var(--warning-bg)}.theme-picker{display:flex;align-items:center;gap:5px;font-size:11px;color:var(--muted);white-space:nowrap;border-left:1px solid var(--border);padding-left:10px}.theme-picker>svg{width:15px;height:15px}.app .theme-picker select{height:28px;padding:3px;border:1px solid transparent;border-radius:4px;background:transparent;font-size:11px;max-width:92px;color:var(--muted)}.app .theme-picker select:hover{border-color:var(--border)}.canvas-area{background:var(--canvas)}.canvas-grid-dot{fill:var(--grid)}.wire-under{stroke:var(--canvas);stroke-width:7}.wire-line{stroke:var(--wire);stroke-width:2.2}.symbol{stroke:var(--part);fill:var(--canvas);stroke-width:2.6}.symbol text{fill:var(--part)}.part-name{fill:var(--ink);font-family:var(--font-data);font-weight:600}.part-value{fill:var(--muted);font-family:var(--font-data)}.part.selected .part-hit{fill:var(--active-soft);fill-opacity:.75;stroke:var(--active);stroke-width:1.3}.part.error-part .part-hit{stroke:var(--error);stroke-width:2}.wire.selected .wire-line,.wire.selected.network .wire-line{stroke:var(--select);stroke-width:3}.wire.network .wire-line{stroke:var(--network);stroke-width:3}.pin-dot{stroke:var(--wire);fill:var(--canvas);stroke-width:1.8}.pin-dot.connected{fill:var(--wire);stroke:var(--wire)}.pin.active .pin-dot,.pin:hover .pin-dot{fill:var(--select);stroke:var(--select)}.pin-label,.empty-canvas{fill:var(--muted)}.junction{fill:var(--wire)}.junction.active{fill:var(--select)}.segment-handle{fill:var(--canvas);stroke:var(--select)}.wire-preview,.target-ring{stroke:var(--select)}.draft-corner{fill:var(--select)}.target-ring{fill:var(--accent-soft);fill-opacity:.5}.target-label{fill:var(--select);stroke:var(--canvas)}.selection-box{stroke:var(--active);fill:var(--active-soft);fill-opacity:.5}.probe-badge rect{fill:var(--raised);stroke:var(--ch1)}.probe-badge text{fill:var(--ch1)}.probe-badge.ch1 rect{fill:var(--raised);stroke:var(--ch2)}.probe-badge.ch1 text{fill:var(--ch2)}.scope-ground-badge rect{fill:var(--raised);stroke:var(--muted)}.scope-ground-badge text{fill:var(--ink)}.canvas-navigation{bottom:14px;right:14px;padding:3px;gap:1px;background:var(--raised);border-color:var(--border);box-shadow:0 2px 5px #15283c0a}.app .canvas-navigation .icon-button{width:28px;height:28px;min-width:28px;min-height:28px;border:0;background:transparent}.canvas-navigation span{min-width:48px;color:var(--muted);font:11px var(--font-data)}.app .canvas-navigation button:last-child{border-left:1px solid var(--border);border-radius:0;margin-left:4px}.canvas-help{background:var(--panel);border-color:var(--border);color:var(--muted)}.mode-dot{background:var(--active)}.canvas-legend,.canvas-legend span{color:var(--muted)}.app[data-hints=off] :is(.unit-hint,.canvas-help,.canvas-legend,.scope-note,.optional-hint){display:none}.diagnostic,.scope-warning{color:var(--warning);background:var(--warning-bg);border-color:var(--border)}.app .diagnostic button,.app .scope-warning button{color:var(--warning);background:var(--raised);border-color:var(--border)}.wire-choices{background:var(--raised);border-color:var(--select)}.wire-choices strong{color:var(--ink)}.wire.candidate .wire-line{stroke:var(--select)}.inspector-tabs{height:44px;padding:0 14px;gap:17px;border-color:var(--border)}.app .inspector-tabs button{background:transparent;color:var(--muted);border:0;border-bottom:2px solid transparent;border-radius:0;font-size:12px;font-weight:400}.app .inspector-tabs button.active{border-bottom-color:var(--accent);color:var(--ink);font-weight:600}.app .inspector-tabs .icon-button{align-self:center;border:0;margin-left:auto}.inspector-scroll{padding:18px 17px}.object-heading{gap:10px;margin:0 0 24px;align-items:center}.object-symbol{width:49px;height:38px;border:1px solid var(--border);background:var(--raised);border-radius:6px;display:grid;place-items:center;flex-shrink:0}.object-symbol svg{width:43px;height:32px}.object-symbol .symbol{stroke-width:4}.object-heading h2{font:600 19px var(--font-data);letter-spacing:0;line-height:1.15}.object-heading .object-kind{display:block;font:11px var(--font-ui);padding:0;border:0;background:transparent;margin-top:4px;color:var(--muted)}.object-heading>span{font:11px var(--font-data);color:var(--muted);margin-left:auto;background:var(--raised);padding:4px 6px;border:1px solid var(--border);border-radius:4px}.object-title{font-size:18px;margin:11px 0 20px;color:var(--ink)}.field{margin-top:17px}.field>span{margin-bottom:6px;font-size:12px;color:var(--muted)}.field small{color:var(--muted);font:11px var(--font-data)}.app .field input:not([type=range]),.app .field select{color:var(--ink);border-color:var(--border);background:var(--raised);border-radius:5px}.app .field input:not([type=range]){height:36px;padding:7px 9px;font:14px var(--font-data)}.app .field select{font-size:12px;padding:8px 6px}.field-error,.field .field-error{color:var(--error);font:11px var(--font-ui)}.reading{background:var(--raised);border-color:var(--border);margin-top:17px;padding:12px}.reading span,.reading small{color:var(--muted);font-size:11px}.reading strong{color:var(--ink);font:500 23px var(--font-data);margin:7px 0 2px;overflow-wrap:anywhere}.reading:has(+.reading),.reading+.reading{margin-top:0;border-radius:0;border-bottom:0}.reading:has(+.reading){margin-top:18px;border-radius:6px 6px 0 0}.reading+.reading:has(+.reading){margin-top:0;border-radius:0}.reading+.reading:not(:has(+.reading)){border-bottom:1px solid var(--border);border-radius:0 0 6px 6px}.app :is(.unit-hint,.model-note,.model-note strong,.model-note summary,.empty-inspector,.wire-description,.lesson-card p,.lesson-card details){color:var(--muted)}.model-note{margin-top:20px;padding-top:13px;border-top:1px solid var(--border);font-size:12px;line-height:1.8}.model-note summary{font-size:12px}.lesson-card{margin-top:19px;padding-top:13px;border-color:var(--border)}.lesson-card>summary{font-size:12px;color:var(--ink);line-height:1.9}.lesson-card>summary>span{color:var(--muted);margin-right:8px}.lesson-card p{font-size:12px;line-height:1.8;margin-top:10px}.empty-inspector{text-align:center;padding-top:30px}.empty-inspector .empty-symbol{width:28px;height:28px;color:var(--muted);margin:0 auto 12px}.empty-inspector h2{font-size:13px;color:var(--muted);font-weight:400}.probe-actions{gap:6px}.probe-actions button,.back-to-part{font-size:12px}footer{height:26px;padding:0 13px;font:10px var(--font-data);color:var(--muted);gap:10px}.footer-brand{display:flex;align-items:center;gap:6px}.footer-brand i{width:5px;height:5px;background:var(--success);border-radius:50%}.footer-separator{color:var(--border);margin:0 3px}.app footer .icon-button{height:24px;width:26px;min-height:24px;min-width:26px;border:0;background:transparent;color:var(--muted)}.app footer .icon-button svg{width:14px;height:14px}.modal-backdrop{background:#0c1a2b55;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.app .dialog{background:var(--panel);color:var(--ink);border:1px solid var(--border);border-radius:12px}.dialog-heading h2{font-size:23px}.app :is(.dialog-intro,.example-index,.example-grid small,.example-grid p,.help-grid p,.help-grid h3){color:var(--muted)}.app .example-grid button{background:var(--raised);align-items:flex-start;justify-content:flex-start}.example-grid button:hover{border-color:var(--active)}.example-grid strong{font-size:14px}.example-grid p{font-size:12px}.app[data-theme=contrast] .wire-line{stroke-width:2.8}.app[data-theme=contrast] .symbol{stroke-width:3}@media(min-width:1700px){.workspace{grid-template-columns:212px minmax(0,1fr) 276px}.workspace.hide-library{grid-template-columns:minmax(0,1fr) 276px}.workspace.hide-inspector{grid-template-columns:212px minmax(0,1fr)}.workspace.hide-library.hide-inspector{grid-template-columns:minmax(0,1fr)}}@media(max-width:1200px){.saved-state:not(.save-error){display:none}.workspace{grid-template-columns:178px minmax(0,1fr) 234px}.workspace.hide-library{grid-template-columns:minmax(0,1fr) 234px}.workspace.hide-inspector{grid-template-columns:178px minmax(0,1fr)}.workspace.hide-library.hide-inspector{grid-template-columns:minmax(0,1fr)}.canvas-title>span{display:none}.inspector-scroll{padding:17px 14px}.canvas-header{gap:6px}}@media(max-width:900px){.workspace,.workspace.hide-library,.workspace.hide-inspector,.workspace.hide-library.hide-inspector{grid-template-columns:minmax(0,1fr)}.library,.inspector{box-shadow:0 4px 24px #15283c25}.app-header{height:51px;padding:0 12px;gap:8px}.brand strong{font-size:14px}.app .project-name{flex:1;width:100px}.file-actions .header-divider{display:block;margin:0 3px}.toolbar{gap:9px;padding:6px 12px}.tool-mode{display:none}.auto-toggle{display:flex}footer>.footer-brand{display:flex}.library,.inspector{top:0}}@media(max-width:560px){.app{min-height:510px}.app-header{height:48px;padding:0 8px;gap:5px}.brand strong{display:none}.brand-mark{width:26px;height:26px}.app .project-name{font-size:12px;width:85px;max-width:103px;padding:5px 3px}.file-actions{gap:2px}.app .file-actions .examples-button{font-size:11px;padding:0 6px;margin-right:1px}.file-actions button:first-child:before{content:none}.examples-button svg{display:none}.file-actions .header-divider{display:none}.app .file-actions .icon-button{width:29px;height:30px;min-width:29px;min-height:30px;padding:5px}.app .file-actions button:last-child{display:inline-flex}.toolbar{min-height:47px;padding:5px 7px;gap:5px}.mode-tools{gap:1px}.app .mode-tools .icon-button,.app .history-tools .icon-button{width:29px;min-width:29px;height:30px;min-height:30px;padding:5px}.history-tools{gap:0}.run-tools{gap:6px}.auto-toggle{font-size:11px;gap:3px}.auto-toggle input{margin:0}.app button.primary{height:32px;padding:0 9px;font-size:12px}.canvas-header{flex-wrap:nowrap;height:43px;min-height:43px;padding:0 6px;gap:4px}.canvas-title{gap:0}.canvas-title strong{display:none}.context-actions{gap:0}.app .context-actions .icon-button{width:29px;min-width:29px}.theme-picker{margin-left:auto;padding-left:6px;gap:3px}.theme-picker>svg{display:none}.app .theme-picker select{font-size:11px;max-width:77px}.canvas-navigation{bottom:9px;right:9px}.library{width:205px;top:0}.inspector{width:236px;top:0}footer{font-size:9px;padding:0 9px}.app .dialog{padding:20px 17px}.dialog-heading h2{font-size:20px}}@media(max-width:360px){.auto-toggle{display:none}.toolbar{gap:4px}}.light-effect{transition:opacity .12s}.part:focus{outline:none}.part:focus-visible .part-hit{stroke:var(--active);stroke-width:2;stroke-dasharray:4 3}.part-warning{font-size:20px;font-weight:800;fill:var(--error);stroke:none}.safety-list{max-height:110px;overflow:auto;flex-shrink:0}.safety-warning{align-items:flex-start}.safety-warning button{white-space:nowrap;flex-shrink:0}.meter-reading strong{font-size:25px;font-variant-numeric:tabular-nums}@media(prefers-reduced-motion:reduce){.light-effect{transition:none}}
