:root{font-family:Inter,-apple-system,BlinkMacSystemFont,"Segoe UI",Arial,sans-serif;color:#202b43;background:#f7f8fc;font-synthesis:none;--purple:#605bd9;--purple-dark:#4b47b5;--ink:#202b43;--sub:#76839b;--line:#e5e9f1;--panel:#fff}*{box-sizing:border-box}body{min-width:320px;margin:0}button,input,select,textarea{font:inherit}button{cursor:pointer}button:disabled{opacity:.45;cursor:not-allowed}[hidden]{display:none!important}.circuit-stage:focus-visible,.component:focus-visible,.junction:focus-visible,button:focus-visible,dialog:focus-visible,input:focus-visible,select:focus-visible{outline:3px solid #9889fe;outline-offset:3px}a{color:inherit;text-decoration:none}.skip{position:absolute;top:-100px;left:12px;z-index:999;background:#fff;padding:12px}.skip:focus{top:8px}.site-header{height:73px;background:#fff;border-bottom:1px solid var(--line);display:flex;align-items:center;gap:20px;padding:0 clamp(17px,3vw,53px)}.brand{display:flex;gap:9px;align-items:center;font-size:20px;letter-spacing:-.9px;font-weight:800;white-space:nowrap}.brand-mark{width:32px;height:32px;background:#5b56d5;color:#fff;display:grid;place-items:center;border-radius:10px;font-size:22px}.brand-accent{color:#5f59da}.header-divider{height:28px;border-left:1px solid var(--line)}.app-id{display:flex;flex-direction:column;gap:2px;font-size:13px}.app-id small{font-size:11px;color:#8c96a7}.header-spacer{flex:1}.private-pill{background:#f6faf9;border:1px solid #e1efe8;border-radius:99px;padding:9px 13px;color:#658071;font-size:11px;display:flex;align-items:center;gap:8px;white-space:nowrap}.pill-dot,.private-pill span{width:8px;height:8px;background:#45bc8c;display:inline-block;border-radius:50%}.workspace-heading{max-width:1890px;margin:auto;padding:31px clamp(16px,2.8vw,46px) 23px;display:flex;justify-content:space-between;gap:24px;align-items:end}.breadcrumbs{font-size:11px;color:#99a3b5;margin:0 0 11px}.breadcrumbs span{margin:0 8px}.workspace-heading h1{font-size:clamp(27px,2.5vw,41px);line-height:1.15;letter-spacing:-1.7px;margin:0 0 9px}.workspace-heading h1 em{font-style:normal;color:var(--purple)}.workspace-heading>div>p:last-child{font-size:13px;color:#8590a5;margin:0;line-height:1.6}.toolbar-top{display:flex;gap:8px;align-items:center;justify-content:flex-end;flex-wrap:wrap}.btn{font-size:12px;border:1px solid #dfe4ef;white-space:nowrap;border-radius:10px;min-height:42px;padding:10px 15px;font-weight:700;background:#fff;color:#4f5a76}.btn:hover{background:#f6f7fc}.btn.primary{background:var(--purple);color:#fff;border-color:var(--purple);box-shadow:0 7px 16px #605bd926}.btn.primary:hover{background:var(--purple-dark)}.summary-strip{margin:0 clamp(16px,2.8vw,46px) 14px;max-width:1798px;background:#fff;border:1px solid var(--line);border-radius:12px;display:flex;flex-wrap:wrap;gap:18px;padding:12px 19px;color:#7c899f;font-size:11px}.summary-strip>div{display:flex;gap:9px;align-items:center}.summary-strip>div:first-child{color:#465474;font-weight:750}.studio-layout{max-width:1890px;margin:auto;padding:0 clamp(16px,2.8vw,46px);display:grid;grid-template-columns:250px minmax(0,1fr) 292px;align-items:stretch;gap:16px}.panel{background:var(--panel);border:1px solid var(--line);border-radius:18px;min-width:0;box-shadow:0 5px 24px #1a285305}.side{padding:22px 20px;min-height:735px}.panel-head{margin-bottom:20px}.eyebrow{font-size:10px;letter-spacing:1.6px;color:#7a72c4;font-weight:800}.panel-head h2{font-size:19px;letter-spacing:-.5px;margin:9px 0 6px}.panel-head p{color:#93a0b3;font-size:11px;line-height:1.65;margin:0}.palette{display:grid;grid-template-columns:1fr 1fr;gap:9px}.tool{min-height:73px;display:flex;flex-direction:column;justify-content:center;align-items:center;gap:7px;border:1px solid #e4e7f1;border-radius:11px;background:#fff;color:#586580;font-size:11px;font-weight:690;padding:8px}.tool:first-child{grid-column:span 2;min-height:56px;flex-direction:row}.tool.active,.tool:hover{background:#f7f5ff;border-color:#9891f2;color:#5d52c8}.glyph{font-size:24px;color:#5a55c8;height:25px;line-height:1}.divider{height:1px;background:#edf0f5;margin:22px 0}.side h3{font-size:13px;letter-spacing:-.1px;margin:0 0 11px}.example-buttons{display:grid;gap:8px}.example-buttons button{border:1px solid #e8eaf2;background:#fafbfe;border-radius:9px;padding:11px 10px;font-weight:680;font-size:11px;color:#4d5b74;display:flex;justify-content:space-between;text-align:left}.example-buttons button:hover{background:#f3f1ff;color:#5851d1}.example-buttons span{color:#8f91b2}.tip{padding:15px;border-radius:12px;background:#f7f8fe;border:1px solid #e9ecf7;font-size:11px;color:#7a849c;line-height:1.65}.tip strong{font-size:12px;color:#4e5980}.tip p{margin:8px 0 0}.text-danger{margin-top:20px;background:0 0;border:0;color:#b75b5b;font-size:11px;text-align:left;padding:4px}.canvas-panel{display:flex;flex-direction:column;overflow:hidden;min-height:735px}.canvas-toolbar{min-height:76px;padding:14px 19px;display:flex;gap:10px;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line)}#projectName{font-size:14px;font-weight:780;color:#23314b;outline-offset:2px;border:0;padding:5px 0;max-width:320px;width:100%;background:0 0}#saveState{color:#98a2b3;font-size:10px;margin-top:4px}.canvas-actions{display:flex;align-items:center;gap:6px;white-space:nowrap}.compact{border-radius:8px;min-width:29px;padding:8px 9px;border:1px solid #e5e7f0;color:#63708a;background:#fff;font-weight:680;font-size:11px}.compact.active,.compact:hover{background:#f4f2ff;border-color:#d6d0fc;color:#6157c8}.zoom-number{min-width:43px;font-size:11px;text-align:center;color:#7c879c}.canvas-viewport{flex:1;min-height:540px;overflow:auto;background:radial-gradient(circle at 1px 1px,#e2e5f0 1px,transparent 1px) 0 0/18px 18px,#f3f5fa;padding:22px;display:flex;align-items:flex-start;justify-content:flex-start}.circuit-stage{width:100%;min-width:0;position:relative;background:#fff;box-shadow:0 0 0 1px #dde3ee,0 11px 34px #1a264b16;border-radius:6px;overflow:hidden;flex:none;touch-action:pan-x pan-y}.circuit-stage svg{width:100%;height:100%;display:block;user-select:none}.circuit-stage.mode-junction{cursor:crosshair}.circuit-stage.mode-connect{cursor:cell}.circuit-stage.mode-select .junction{cursor:grab}.circuit-stage.mode-select .junction:active{cursor:grabbing}.junction.selected>circle{filter:drop-shadow(0 0 6px #7668e97b)}.component.selected>.symbol>*{stroke:#675be6;stroke-width:4}.component:hover .symbol{filter:drop-shadow(0 0 2px #b1a8f2)}.led-on .led-glow{animation:pulse 2s ease-in-out infinite}@keyframes pulse{50%{opacity:.48}}.canvas-footer{min-height:48px;display:flex;align-items:center;justify-content:space-between;gap:15px;padding:11px 16px;border-top:1px solid var(--line);color:#99a2b3;font-size:11px;line-height:1.4}.fault-area{padding:13px 18px;background:#fff6f0;color:#a15b37;border-top:1px solid #ffddc3;font-size:12px;line-height:1.5}.inspector{min-height:170px}.empty-inspector{padding:29px 12px;text-align:center;background:#fafbff;border:1px dashed #e3e5f0;border-radius:12px}.empty-inspector .empty-icon{font-size:25px;color:#776ce1;margin-bottom:12px}.empty-inspector strong{font-size:12px}.empty-inspector p{font-size:11px;color:#9ba5b4;line-height:1.6}.inspector h3{font-size:14px;margin:0 0 12px}.inspector label{font-size:11px;color:#718098;display:block;font-weight:690;margin:11px 0 0}.inspector label>input,.inspector label>select{display:block;margin-top:6px;min-height:38px;width:100%;padding:8px 10px;border-radius:9px;border:1px solid #e1e5ef;color:#34415b;background:#fff;font-size:12px}.inspector .check-label{display:flex;align-items:center;gap:7px}.inspector .check-label input{width:auto;min-height:auto;margin:0;accent-color:#5e58d6}.field-row{display:grid;grid-template-columns:1fr 1fr;gap:9px}.inspect-badge{font-size:10px;color:#655ec9;font-weight:800;letter-spacing:1px;text-transform:uppercase}.inspector .tiny-note{color:#8b94a8;font-size:11px;line-height:1.5}.inspector-actions{display:flex;gap:7px;margin-top:17px}.inspector-actions button{border:1px solid #dfe3ef;background:#f9f9fd;border-radius:9px;padding:9px 11px;font-size:11px;font-weight:700;color:#56647d}.inspector-actions button.danger{color:#b7565c}.results-title{display:flex;align-items:center;justify-content:space-between}.results-title span{font-size:10px;color:#8d94af;border:1px solid #e0e5ef;border-radius:30px;padding:4px 7px}.readings{display:grid;gap:7px;max-height:290px;overflow:auto;margin-top:12px}.reading{border:1px solid #e7eaf2;border-radius:10px;padding:11px;background:#fafbfe}.reading>div:first-child{display:flex;justify-content:space-between;gap:5px;color:#43506a;font-size:11px}.reading>div:nth-child(2){display:flex;gap:10px;font-size:10px;color:#7f8da2;margin-top:6px}.reading b{font-size:11px}.reading small{color:#9ba5b2}.empty-result{padding:23px;background:#f9fafd;border-radius:10px;font-size:11px;color:#a0a8b7;text-align:center;line-height:1.7}.warnings{font-size:11px;color:#9f6730;line-height:1.55;margin-top:13px}.warnings p{margin:8px 0;background:#fff9ee;border:1px solid #f5e6ca;border-radius:9px;padding:10px}.lower-note{max-width:1840px;margin:17px auto 45px;padding:25px clamp(16px,2.8vw,46px);border-top:1px solid #e5e8f1;display:flex;gap:50px;align-items:center}.lower-note>div:first-child{max-width:640px;flex:1}.lower-note h2{font-size:22px;margin:8px 0;letter-spacing:-.7px}.lower-note p{font-size:12px;line-height:1.6;color:#8d96a8;margin:0}.note-item{text-align:center;display:flex;flex-direction:column;gap:4px;min-width:70px}.note-item strong{font-size:26px;color:#6a5fda}.note-item span{font-size:11px;color:#8793a7}.toast{position:fixed;z-index:400;bottom:20px;left:50%;transform:translateX(-50%);background:#1e2c45;color:#fff;border-radius:11px;padding:12px 17px;box-shadow:0 10px 35px #18264155;font-size:12px;max-width:90vw}.dialog-head{display:flex;justify-content:space-between;align-items:center}.dialog-head h2{font-size:21px;margin:0}.dialog-head button{width:33px;height:33px;border:0;background:#f0f1f7;border-radius:9px;color:#5e6b83;font-size:20px}dialog{width:min(92vw,480px);border:1px solid #e0e4f0;border-radius:20px;box-shadow:0 18px 80px #1a254c55;padding:24px;color:#253049}dialog::backdrop{background:#18203a88;backdrop-filter:blur(3px)}.dialog-sub{font-size:12px;color:#8a95a8;line-height:1.6}.exports{display:grid;gap:8px;margin-top:19px}.exports button{display:flex;flex-direction:column;gap:5px;text-align:left;padding:13px;background:#fcfcff;border:1px solid #e4e7ef;border-radius:11px;color:#35405a}.exports button:hover{border-color:#958aef;background:#f7f5ff}.exports b{font-size:12px}.exports span{font-size:11px;color:#939db0}@media(max-width:1320px){.studio-layout{grid-template-columns:220px minmax(0,1fr) 250px;gap:10px;padding:0 13px}.side{padding:19px 13px}.workspace-heading{padding-left:13px;padding-right:13px}.summary-strip{margin-left:13px;margin-right:13px}.canvas-viewport{padding:13px}.canvas-toolbar{padding:10px}}@media(max-width:1030px){.studio-layout{grid-template-columns:210px minmax(0,1fr)}.right-side{grid-column:1/-1;min-height:0;display:grid;grid-template-columns:minmax(200px,1fr) minmax(270px,1fr);gap:10px 23px}.right-side>.panel-head{grid-column:1/-1;margin:0}.right-side>.divider{display:none}.right-side>.inspector{grid-row:2/span 3}.readings,.results-title,.warnings{grid-column:2}.readings{grid-row:3}.canvas-panel{min-height:680px}.toolbar-top{max-width:470px}.workspace-heading{align-items:flex-start}.lower-note{gap:20px}}@media(max-width:710px){.site-header{height:65px;padding:0 14px;gap:12px}.brand{font-size:17px}.brand-mark{width:29px;height:29px;font-size:18px}.app-id{font-size:11px}.app-id small,.header-divider,.private-pill{display:none}.workspace-heading{display:block;padding:22px 14px 17px}.workspace-heading h1{font-size:27px}.toolbar-top{justify-content:flex-start;max-width:none;margin-top:18px;gap:6px}.btn{padding:10px;font-size:11px;min-height:38px}.summary-strip{margin:0 12px 12px;padding:10px 13px;gap:9px 14px}.studio-layout{display:flex;flex-direction:column;padding:0 12px;gap:12px}.canvas-panel{order:1;min-height:0;width:100%}.left-side{order:2;min-height:0;width:100%}.right-side{order:3;display:block;min-height:0;width:100%}.right-side>.divider{display:block}.palette{grid-template-columns:repeat(4,minmax(0,1fr))}.tool:first-child{grid-column:span 2}.tool{min-height:70px;font-size:10px}.panel-head{margin-bottom:12px}.example-buttons{grid-template-columns:repeat(2,minmax(0,1fr))}.canvas-viewport{min-height:390px}.canvas-toolbar{min-height:60px;flex-wrap:wrap;gap:8px}.canvas-footer{flex-wrap:wrap}.lower-note{flex-wrap:wrap;margin-top:18px;padding:20px}.lower-note>div:first-child{flex-basis:100%}.inspector{min-height:0}}@media(max-width:400px){.canvas-toolbar{padding:8px}#projectName{font-size:12px}.canvas-actions{gap:2px}.compact{padding:7px 6px}.canvas-viewport{min-height:310px}.palette{grid-template-columns:repeat(3,1fr)}.tool:first-child{grid-column:span 3}}@media(prefers-reduced-motion:reduce){*,:after,:before{animation:none!important;transition:none!important;scroll-behavior:auto!important}}.diagnostics-section,.probe-section{margin-top:16px}.diagnostics-section h3,.probe-section h3{font-size:13px;margin:0 0 7px}.probe-section .tiny-note{font-size:11px;line-height:1.5;color:#8a95a8;margin:0 0 12px}.probe-section label{display:block;font-size:10px;color:#65738b;font-weight:690}.probe-section select{display:block;margin-top:6px;min-width:0;width:100%;height:36px;border:1px solid #dfe5f0;border-radius:9px;background:#fff;color:#38455d;font-size:11px;padding:5px}.probe-result{display:block;margin-top:11px;background:#f4f2ff;border:1px solid #e7e1ff;border-radius:10px;padding:12px;color:#524ab4;font-weight:750;font-size:13px;line-height:1.5}.diagnostics-result{display:grid;gap:7px;padding:10px;background:#f8f9fd;border:1px solid #eef0f5;border-radius:10px;font-size:11px;color:#637086;line-height:1.5}.diagnostics-result div{display:flex;justify-content:space-between;gap:8px}.diagnostics-result b{color:#394960;text-align:right}@media(max-width:1030px) and (min-width:711px){.diagnostics-section,.probe-section{grid-column:2}}.circuit-stage.mode-select .junction{touch-action:none}