:root{--paper:#f7f7f2;--white:#fdfefa;--ink:#263a36;--muted:#85908a;--line:#dce1da;--dark:#193b32;--accent:#c6ee91;--control:#309684;--safety:#d28b42;--service:#6394c1;--grid:#dfe3db;--font:Arial,Helvetica,sans-serif;--mono:"Courier New",monospace}*{box-sizing:border-box}html,body{margin:0;overflow-x:clip;font-family:var(--font);color:var(--ink);background:var(--paper)}button,input,textarea{font:inherit}button{cursor:pointer;border:1px solid var(--line);background:var(--white);color:var(--ink);border-radius:5px;padding:9px 12px}button:hover{background:var(--paper)}:focus-visible{outline:2px solid var(--control);outline-offset:3px}header{height:72px;border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;padding:0 26px;background:var(--white)}.brand{color:var(--dark);text-decoration:none;font-size:30px;display:flex;gap:12px;align-items:center}.brand b{letter-spacing:-2px}.brand span{font-size:12px;letter-spacing:0;color:var(--muted);margin-left:24px}.header-right{display:flex;align-items:center;gap:22px;font-size:12px}.header-right button,#generate{background:var(--dark);color:var(--white);border-color:var(--dark)}main{display:grid;grid-template-columns:220px minmax(0,1fr) 300px;max-width:1920px;margin:auto;height:calc(100vh - 72px);min-height:730px}aside{position:relative;background:var(--white)}.left{border-right:1px solid var(--line);display:flex;flex-direction:column}.project{padding:28px 22px;border-bottom:1px solid var(--line)}small{font-size:11px;color:var(--muted)}h2{font-size:19px;margin:12px 0}.badge,h1 span{font-size:10px;border:1px solid var(--line);padding:4px 7px;border-radius:4px;font-weight:400}section{padding:22px 16px;border-bottom:1px solid var(--line)}h3{font-size:13px;font-weight:600;margin:0 0 16px}h3 span{float:right;color:var(--muted);font-weight:400}.tree{font-size:12px;padding:12px 8px;white-space:nowrap}.tree.active{background:var(--paper);width:100%;text-align:left}.indent{padding-left:20px;color:var(--muted)}.layer{display:flex;align-items:center;gap:10px;font-size:12px;margin:16px 0;cursor:pointer}.layer i{width:20px;height:3px;background:var(--network)}.layer input{accent-color:var(--dark);margin-left:auto}.idea{margin-top:auto;border:0;padding:28px 24px}.spark{font-size:26px;color:var(--control)}.idea h3{font-size:20px;line-height:1.35;margin:14px 0}.idea p,.panel-head p,.separation p,.fields p,details p{font-size:12px;line-height:1.7;color:var(--muted)}.left-foot,.right-foot{font-size:10px;color:var(--muted);padding:22px}.center{display:flex;flex-direction:column;min-width:0}.document-heading{height:100px;padding:24px 28px;display:flex;justify-content:space-between;align-items:center}.document-heading button{font-size:12px}h1{font-size:25px;letter-spacing:-.7px;margin:8px 0;overflow-wrap:break-word;min-width:0}h1 span{vertical-align:middle;margin-left:10px;letter-spacing:0}.toolbar{height:52px;background:var(--white);border-block:1px solid var(--line);display:flex;justify-content:space-between;align-items:center;padding:0 14px;font-size:11px}.toolbar button{font-size:11px;border:0}.toolbar .selected{background:var(--paper)}.toolbar>span{color:var(--muted)}.canvas{position:relative;flex:1;background-image:radial-gradient(var(--grid) 1px,transparent 1px);background-size:16px 16px;min-height:430px}svg{width:100%;height:100%;position:absolute;touch-action:none}.canvas-note{position:absolute;bottom:18px;left:20px;font-size:10px;color:var(--muted)}.canvas-note span{margin:0 10px}.zoom{position:absolute;bottom:12px;right:12px;background:var(--white);border:1px solid var(--line);border-radius:5px;font-size:10px}.zoom button{border:0}.prompt{display:flex;gap:12px;align-items:center;margin:12px 20px 0;padding:10px 12px;background:var(--white);border:1px solid var(--line);border-radius:7px}.prompt input{min-width:0;flex:1;border:0;outline:none;font-size:12px;background:var(--white);color:var(--ink)}.prompt button{font-size:11px}.status{display:flex;justify-content:space-between;padding:14px 22px;font-size:10px;color:var(--muted)}.right{border-left:1px solid var(--line)}.tabs{display:flex;border-bottom:1px solid var(--line);padding:14px 16px 0;gap:14px}.tabs button{border:0;border-radius:0;font-size:12px;padding:14px 0}.tabs .active{border-bottom:2px solid var(--dark)}.panel-head{padding:26px 22px 14px}.panel-head h3{font-size:17px;margin-bottom:10px}.filebar{font-size:11px;padding:14px 20px;background:var(--paper);border-block:1px solid var(--line)}.filebar span{float:right;color:var(--muted)}textarea{width:100%;height:310px;resize:vertical;border:0;padding:18px 20px;font:11px/1.9 var(--mono);background:var(--white);color:var(--dark)}.source-actions{display:flex;align-items:center;justify-content:space-between;padding:12px 18px;border-block:1px solid var(--line);font-size:10px;color:var(--muted)}.source-actions button{font-size:10px}.separation{padding:24px 22px}.separation>span{font-size:24px;color:var(--control)}.separation h3{margin:12px 0}details{padding:0 22px;font-size:11px}.right-foot{margin-top:25px;line-height:1.7}.fields{padding:22px}.fields input{display:block;width:100%;margin:10px 0 20px;padding:10px;border:1px solid var(--line)}.fields label{font-size:12px}.zone{fill:none;stroke:var(--line);stroke-dasharray:5 4}.zone-label{fill:var(--muted);font-size:12px}.device{cursor:grab}.device rect{fill:var(--white);stroke:var(--line);stroke-width:1.5}.device.selected rect{stroke:var(--control);stroke-width:2}.device text{fill:var(--ink);font-size:11px;pointer-events:none}.device .id{fill:var(--muted);font-size:9px}.device .symbol{fill:var(--paper);stroke:var(--muted)}.wire{fill:none;stroke:var(--network);stroke-width:2;cursor:ew-resize}.handle{fill:var(--white);stroke:var(--network);stroke-width:2;cursor:ew-resize}.port{fill:var(--white);stroke:var(--control)}@media(max-width:1100px){main{grid-template-columns:170px minmax(0,1fr) 260px}.brand span,.toolbar>span{display:none}.project{padding:22px 14px}.tree{font-size:10px}}@media(max-width:800px){main{grid-template-columns:minmax(0,1fr);height:auto}.left{display:none}.right{border-top:1px solid var(--line)}.center{height:760px}.header-right>span{display:none}.document-heading{padding:20px}header{padding:0 16px}.right-foot{display:none}}button:active{transform:translateY(1px)}button:disabled{background:var(--paper);color:var(--muted);cursor:not-allowed}h1,h2{text-wrap:balance}:root{--drawing:#202622;--selected:#309684;--wire-hit:transparent}.canvas{background:var(--white)}.sheet-border{fill:none;stroke:var(--drawing);stroke-width:1}.sheet-caption{fill:var(--drawing);font:11px var(--font)}.equipment{cursor:grab}.equipment .body{fill:var(--white);stroke:var(--drawing);stroke-width:1}.equipment.chosen .body{stroke:var(--selected);stroke-width:2}.equipment-name{fill:var(--drawing);font:12px var(--font);text-anchor:middle;pointer-events:none}.terminal{fill:var(--drawing)}.terminal-name{fill:var(--drawing);font:8px var(--font);pointer-events:none}.electrical-wire{fill:none;stroke:var(--drawing);stroke-width:1.1;pointer-events:none}.earth{stroke-dasharray:6 3}.wire-hit{fill:none;stroke:var(--wire-hit);stroke-width:12;cursor:pointer}.circuit.chosen .electrical-wire{stroke:var(--selected);stroke-width:2.5}.circuit:hover .electrical-wire{stroke:var(--selected)}.fields select{display:block;width:100%;padding:8px;margin:8px 0 16px;background:var(--white);color:var(--ink);border:1px solid var(--line);font:12px var(--font)}.fields textarea{height:70px;border:1px solid var(--line);padding:8px;margin-top:8px}.dimensions{display:flex;gap:12px}.dimensions label{min-width:0}.connect-title{margin-top:24px}.right{overflow-y:auto}.layer i{background:var(--drawing)}.canvas-note{background:var(--white);padding:4px}.fields button{font-size:12px}.wire-paper{fill:none;stroke:var(--white);stroke-width:3;pointer-events:none}.canvas-note{max-width:75%;line-height:1.5}.terminal-target{cursor:crosshair}.terminal-hit{fill:var(--wire-hit);stroke:none}.terminal-target:hover .terminal,.terminal-target:focus-visible .terminal,.wiring-start .terminal{fill:var(--selected);stroke:var(--selected);stroke-width:3}.terminal-target:hover .terminal-hit,.wiring-start .terminal-hit{stroke:var(--selected);stroke-width:1;fill:var(--white)}.wire-preview{stroke:var(--selected);stroke-width:1.5;stroke-dasharray:5 4;fill:none;pointer-events:none}.wiring-controls{display:flex;align-items:center;gap:8px}.wiring-controls select{font:11px var(--font);color:var(--ink);background:var(--white);border:1px solid var(--line);padding:6px}.terminal-target:focus-visible{outline:2px solid var(--selected)}.fuse-hit{fill:var(--wire-hit);stroke:none;pointer-events:all}.fuse-lead{fill:none;stroke:var(--drawing);stroke-width:1.1}.equipment .fuse-body{fill:none;pointer-events:all}.equipment-name.fuse-name{font-size:9px;text-anchor:start}.equipment.chosen .fuse-lead{stroke:var(--selected)}#fuseExample{font-size:10px;margin-top:12px}.context-menu{position:fixed;z-index:1000;width:180px;padding:4px;background:var(--white);border:1px solid var(--line);border-radius:6px;box-shadow:0 8px 24px var(--line)}.context-menu[hidden],.context-submenu[hidden]{display:none}.context-menu button{display:block;width:100%;border:0;text-align:left;font-size:12px;padding:10px 12px}.context-menu button span{float:right}.context-menu button:hover,.context-menu button:focus-visible{background:var(--paper)}.context-menu button:disabled{background:var(--white);color:var(--muted);cursor:not-allowed}.context-submenu{border-top:1px solid var(--line);margin-top:4px;padding:4px 0 0 12px}
