*{box-sizing:border-box}body{background:var(--canvas);color:var(--ink);margin:0;font-family:Arial,Helvetica,sans-serif}button,input{font:inherit}button{cursor:pointer}.app-shell{grid-template-rows:68px 1fr 42px;min-height:100vh;display:grid}.topbar{color:#f5fafb;border-bottom:3px solid var(--orange);background:#102d37;align-items:center;gap:28px;padding:0 24px;display:flex}.history-actions{gap:7px;display:flex}.history-actions button{color:#f5fafb;background:0 0;border:1px solid #54717a;border-radius:4px;padding:7px 9px;font-size:12px}.history-actions button:disabled{opacity:.4;cursor:not-allowed}.wire-editor{border-left:1px solid #54717a;align-items:center;gap:5px;padding-left:7px;font-size:11px;display:flex}.wire-editor select,.wire-editor input{color:#fff;background:#173842;border:1px solid #54717a;border-radius:3px;max-width:90px;padding:5px;font-size:11px}.file-input{display:none}.inspector .secondary+.delete{margin-top:10px}.modal-backdrop{z-index:10;background:rgba(16,45,55,.533);place-items:center;padding:20px;display:grid;position:fixed;top:0;bottom:0;left:0;right:0}.spec-modal{background:#fff;border-radius:8px;width:min(760px,100%);max-height:min(720px,90vh);padding:24px;overflow:auto;box-shadow:0 25px 60px rgba(6,19,22,.4)}.modal-heading{justify-content:space-between;align-items:flex-start;margin-bottom:20px;display:flex}.modal-close{color:#506169;background:0 0;border:0;font-size:30px;line-height:1}.spec-stats{flex-wrap:wrap;gap:10px;margin-bottom:18px;display:flex}.spec-stats span{color:#4c626a;background:#edf3f4;border-radius:4px;padding:8px 10px;font-size:13px}.spec-modal table{border-collapse:collapse;width:100%;font-size:14px}.spec-modal th{text-align:left;color:#63747c;text-transform:uppercase;letter-spacing:.05em;background:#f1f5f5;font-size:11px}.spec-modal td,.spec-modal th{border-bottom:1px solid var(--line);padding:11px 9px}.spec-modal td small{color:#6e7e84;margin-left:5px}.spec-empty{color:var(--muted);text-align:center;padding:32px 0}.modal-actions{justify-content:flex-end;gap:10px;margin-top:22px;display:flex}.modal-actions button:disabled{opacity:.45;cursor:not-allowed}.device-face{flex:none;width:72px;height:86px}.device-face.compact{width:40px;height:50px}.face-body{fill:#e8edee;stroke:#52666e;stroke-width:3px}.face-label{fill:#fafdfe;stroke:#bbc8cc}.face-mark{fill:#20373f;font:700 13px Arial,sans-serif}.face-toggle{fill:#283d45;stroke:#182c33}.face-handle{fill:#e46e39}.face-terminal{fill:#a6b3b7;stroke:#60727a}.face-test{fill:#3e9bb1}.face-test-text{fill:#fff;font:700 8px Arial,sans-serif}.face-screen{fill:#17343b;stroke:#54737a}.face-digits{fill:#8fddbc;font:700 18px monospace}.face-button{fill:#7e9298;stroke:#425961}.face-coil{fill:#d6e1e3;stroke:#697e85}.face-small{fill:#3e555c;font:700 9px Arial,sans-serif}.face-terminals circle{fill:#566d74}.face-surge{fill:#deeff1;stroke:#547079}.face-status{fill:#6fcf86;stroke:#3d7450}.face-bolt{fill:#f2a438}.face-base{stroke:#8a999d;stroke-width:3px}.placed-device{background:#f8fbfb;height:50px;top:7px}.placed-device .device-label{color:#30474e;background:rgba(255,255,255,.85);padding:1px 2px;font-size:8px;position:absolute;bottom:2px;right:3px}.bus-face rect{fill:#d8e1e3;stroke:#536970;stroke-width:2px}.bus-face text{fill:#18343c;font:700 9px Arial,sans-serif}.bus-face circle{fill:#f9fcfc;stroke:#314c54;stroke-width:2px}.bus-face path{stroke:#314c54;stroke-width:2px}.bus-face.bus-neutral rect{fill:#73a9cc;stroke:#356b8b}.bus-face.bus-neutral text{fill:#fff}.bus-face.bus-earth rect{fill:#65a967;stroke:#39743d}.bus-face.bus-earth text{fill:#fff}.editor-board{background:linear-gradient(145deg,#f9fbfa,#e5ebeb);border:16px solid #dde2e3;padding:34px 30px 42px;box-shadow:inset 0 0 0 2px #c2cccd,inset 0 0 45px rgba(157,174,178,.12),0 12px 28px rgba(39,63,72,.125)}.board-title{margin-bottom:28px}.rail-grid{height:150px;box-shadow:none;background:linear-gradient(transparent 0,transparent 44px,#aeb8bb 44px,#aeb8bb 48px,#dfe5e6 48px,#dfe5e6 97px,#8d999d 97px,#8d999d 103px,transparent 103px);border:0;padding:14px 8px;overflow:visible}.rail-grid:before{content:"";z-index:0;background:repeating-linear-gradient(90deg,#cbd3d5 0,#cbd3d5 22px,#eef2f2 22px,#eef2f2 29px,#a6b2b5 29px,#a6b2b5 34px);border-top:3px solid #7d898d;border-bottom:3px solid #768286;height:40px;position:absolute;top:51px;left:0;right:0;box-shadow:0 4px 5px rgba(35,55,59,.21)}.rail-grid:after{content:"";z-index:0;opacity:.7;background:repeating-linear-gradient(90deg,transparent 0,transparent 14px,#647277 14px,#647277 20px,transparent 20px,transparent 28px);height:14px;position:absolute;top:63px;left:11px;right:11px}.placed-device{z-index:2;height:126px;box-shadow:none;background:0 0;border:0;top:11px;overflow:visible}.placed-device .device-face{filter:drop-shadow(1px 3px 2px rgba(35,56,58,.26));width:100%;height:126px}.placed-device .device-label{z-index:3;border:1px solid #aab7ba;font-size:9px;bottom:9px;right:4px}.active-device{outline:3px solid var(--orange);outline-offset:2px;box-shadow:none;border-radius:3px}.device-card{align-items:center}.selected-symbol{background:linear-gradient(90deg,#eef2f2,#fff,#e0e7e8);height:145px;padding:10px}.selected-symbol .device-face{width:100%;height:125px}@media (max-width:950px){.rail-grid{height:128px}.placed-device,.placed-device .device-face{height:106px}}.canvas{align-items:center}.canvas>.canvas-header,.canvas>.notice,.canvas>.safety-note{width:100%}.editor-board{background:linear-gradient(135deg,#fafcfc 0%,#e5ebec 100%);border:18px solid #e1e6e7;align-self:center;width:min(900px,100%);padding:34px 42px 38px}.rail-grid{background:linear-gradient(transparent 0,transparent 61px,#b9c3c5 61px,#b9c3c5 66px,#e4eaeb 66px,#e4eaeb 127px,#95a1a5 127px,#95a1a5 133px,transparent 133px);height:190px;padding:12px 8px}.rail-grid:before{background:repeating-linear-gradient(90deg,#c6d0d2 0,#c6d0d2 20px,#eef2f2 20px,#eef2f2 28px,#a2afb2 28px,#a2afb2 34px);border-top:4px solid #758287;border-bottom:4px solid #6f7c80;height:48px;top:70px}.slot{border-right:1px solid rgba(144,160,163,.133)}.placed-device .device-face{width:100%;height:158px}.device-card .device-face{width:38px;height:58px}@media (max-width:950px){.editor-board{padding:24px 20px 28px}.rail-grid{height:164px}.placed-device,.placed-device .device-face{height:138px}}.editor-board{width:min(920px,100%)}.rail-row{margin:34px 0}.rail-grid{background:linear-gradient(transparent 0,transparent 116px,#b9c3c5 116px,#b9c3c5 122px,#e4eaeb 122px,#e4eaeb 201px,#95a1a5 201px,#95a1a5 208px,transparent 208px);height:318px}.rail-grid:before{height:58px;top:130px}.rail-grid:after{height:18px;top:151px}.placed-device{height:278px;top:19px}.placed-device .device-face{height:278px}.placed-device .device-label{font-size:10px;bottom:20px}.selected-symbol{height:250px}.selected-symbol .device-face{height:230px}@media (max-width:950px){.rail-grid{height:260px}.placed-device,.placed-device .device-face{height:228px}}.canvas{align-items:center!important;display:flex!important}.editor-board{border:14px solid #e1e6e7!important;align-self:center!important;width:min(860px,100%)!important;padding:28px 34px 30px!important;overflow:hidden!important}.rail-row{grid-template-columns:42px 1fr!important;margin:24px 0!important}.rail-grid{background:linear-gradient(transparent 0,transparent 78px,#aeb9bc 78px,#aeb9bc 84px,#e4eaeb 84px,#e4eaeb 143px,#89969a 143px,#89969a 150px,transparent 150px)!important;border:0!important;height:214px!important;padding:10px 6px!important;position:relative!important;overflow:hidden!important}.rail-grid:before{background:repeating-linear-gradient(90deg,#c5d0d2 0,#c5d0d2 18px,#eef2f2 18px,#eef2f2 26px,#9eabad 26px,#9eabad 32px)!important;border-top:3px solid #6d7a7e!important;border-bottom:3px solid #657277!important;height:44px!important;top:88px!important;left:0!important;right:0!important}.rail-grid:after{background:repeating-linear-gradient(90deg,transparent 0,transparent 12px,#526268 12px,#526268 18px,transparent 18px,transparent 26px)!important;height:15px!important;top:102px!important;left:9px!important;right:9px!important}.slot{z-index:1!important;background:0 0!important;border-right:1px solid rgba(143,160,163,.12)!important}.placed-device{z-index:2!important;background:0 0!important;height:184px!important;top:14px!important;overflow:hidden!important}.placed-device .device-face{width:100%!important;height:184px!important;display:block!important}.placed-device .device-label{bottom:12px!important;right:4px!important}.active-device{outline:3px solid var(--orange)!important;outline-offset:-3px!important}@media (max-width:950px){.editor-board{padding:22px 16px 24px!important}.rail-grid{height:176px!important}.placed-device,.placed-device .device-face{height:150px!important}}.wire-layer{z-index:5;pointer-events:none;position:absolute;top:0;bottom:0;left:0;right:0;overflow:visible}.wire-layer path{fill:none;stroke-width:5px;stroke-linecap:round;filter:drop-shadow(0 1px 1px rgba(24,43,47,.4))}.placed-device{overflow:visible!important}.terminal{z-index:7;cursor:crosshair;background:#344a52;border:2px solid #eff4f4;border-radius:50%;width:13px;height:13px;margin-left:-6px;position:absolute;left:50%;box-shadow:0 1px 2px rgba(21,43,48,.333)}.terminal.top{top:5px}.terminal.bottom{bottom:5px}.terminal:hover,.terminal.pending{background:#f2a438;transform:scale(1.25)}.placed-device .device-label{z-index:8}.wire-layer{z-index:3;pointer-events:none;width:100%;height:100%;display:block;position:absolute;top:0;bottom:0;left:0;right:0;overflow:visible}.wire-layer path{fill:none;stroke-width:6px;vector-effect:non-scaling-stroke;stroke-linecap:round;stroke-linejoin:round}.wire-row-layer{z-index:3;pointer-events:none;width:100%;height:100%;position:absolute;top:0;bottom:0;left:0;right:0;overflow:visible}.wire-row-layer path{fill:none;stroke-width:6px;vector-effect:non-scaling-stroke;stroke-linecap:round;stroke-linejoin:round;filter:drop-shadow(0 1px 1px rgba(24,43,47,.4));pointer-events:stroke;cursor:pointer}.wire-row-layer .active-wire{stroke-width:9px;filter:drop-shadow(0 0 3px #f2a438)}.editor-board{position:relative!important}.pole-control{color:#53636a;margin:0 0 14px;font-size:12px;font-weight:700;display:block}.pole-control select{border:1px solid var(--line);width:100%;color:var(--ink);background:#fff;border-radius:4px;margin-top:5px;padding:8px;display:block}.fixed-bus{z-index:7;grid-template-columns:42px 1fr;align-items:center;gap:10px;margin:12px 0 22px;display:grid;position:relative}.fixed-bus.neutral{margin:22px 0 10px}.fixed-bus-caption{color:#4b6269;text-align:right;white-space:nowrap;font-size:10px;font-weight:700}.fixed-bus-strip{background:repeating-linear-gradient(90deg,#e5cf86 0,#e5cf86 17px,#b49343 17px,#b49343 21px,#f2df9f 21px,#f2df9f 35px);border:4px solid #6c7778;border-radius:3px;height:26px;position:relative;box-shadow:inset 0 0 0 2px rgba(255,255,255,.6)}.fixed-bus.earth .fixed-bus-strip{background:repeating-linear-gradient(90deg,#d9bc75 0,#d9bc75 17px,#9d7a2f 17px,#9d7a2f 21px,#edce85 21px,#edce85 35px);border-color:#73817a}.fixed-bus.neutral .fixed-bus-strip{background:repeating-linear-gradient(90deg,#75a9cb 0,#75a9cb 17px,#376d91 17px,#376d91 21px,#8fc0dd 21px,#8fc0dd 35px);border-color:#607b88}.fixed-terminal{border-color:#f5f7f4;width:14px;height:14px;margin-left:-7px;top:4px}.fixed-bus.earth .fixed-terminal{background:#397e45}.fixed-bus.neutral .fixed-terminal{background:#295a77}.wire-palette{grid-template-columns:1fr 1fr 1fr;gap:5px;margin:0 0 16px;display:grid}.wire-palette span{color:#53636a;grid-column:1/-1;font-size:12px;font-weight:700}.wire-palette button{border:1px solid var(--line);color:#40545b;background:#fff;border-radius:4px;padding:7px 4px;font-size:11px}.wire-palette button:first-of-type{border-left:4px solid #cf453c}.wire-palette button:nth-of-type(2){border-left:4px solid #1d2528}.wire-palette button:nth-of-type(3){border-left:4px solid #3f9b52}.wire-palette .selected{color:#0b6574;background:#e8f1f2;border-color:#0b6574;font-weight:700}.brand{letter-spacing:.01em;white-space:nowrap;font-size:18px;font-weight:800}.brand-mark{background:var(--orange);color:#17323b;place-items:center;width:27px;height:27px;margin-right:8px;display:inline-grid}.brand small{color:#9db4ba;text-transform:uppercase;margin-left:5px;font-size:11px}.project-name{margin-left:auto;font-size:14px}.muted{color:#9cb2b8;margin-left:8px}.status-dot{background:#89d98c;border-radius:50%;width:8px;height:8px;margin-right:6px;display:inline-block}.primary,.secondary{border:0;border-radius:6px;padding:11px 15px;font-size:14px;font-weight:700}.primary{background:var(--orange);color:#1d2f35}.secondary{color:var(--blue);background:#fff;border:1px solid #b9c7cc}.wide{width:100%}.workspace{grid-template-columns:315px minmax(450px,1fr) 285px;min-height:0;display:grid}.catalog,.inspector{background:var(--panel);padding:22px;overflow:auto}.panel-heading,.canvas-header{justify-content:space-between;align-items:flex-start;display:flex}.eyebrow{text-transform:uppercase;color:var(--blue);letter-spacing:.11em;margin:0 0 5px;font-size:11px;font-weight:800}h1,h2,h3{margin:0}h1{font-size:20px}h2{font-size:19px}.count,.badge{color:var(--blue);background:#e5f1f3;border-radius:999px;padding:5px 8px;font-size:12px;font-weight:700}.search{border:1px solid var(--line);color:var(--muted);border-radius:6px;align-items:center;margin:20px 0 14px;padding:0 10px;display:flex}.search input{border:0;outline:0;width:100%;min-width:0;padding:10px 7px}.category-list{flex-wrap:wrap;gap:6px;margin-bottom:17px;display:flex}.category-list button{border:1px solid var(--line);color:#526069;background:#fff;border-radius:4px;padding:6px 9px;font-size:12px}.category-list button.active{border-color:var(--blue);color:#fff;background:var(--blue)}.catalog-grid{gap:8px;display:grid}.device-card{text-align:left;border:1px solid var(--line);background:#fff;border-radius:6px;align-items:center;gap:10px;padding:9px;display:flex}.device-card:hover{border-color:var(--blue);box-shadow:0 2px 9px rgba(11,101,116,.1)}.device-card strong,.device-card small{display:block}.device-card strong{font-size:13px}.device-card small{color:var(--muted);margin-top:3px;font-size:12px}.device-icon{color:#263941;background:linear-gradient(90deg,#e5e9ea,#fff 35%,#d7dfe1);border:2px solid #60727a;flex-direction:column;justify-content:space-between;align-items:center;width:38px;height:45px;padding:4px 2px;font-size:11px;display:flex}.device-icon i{background:#e66c37;border-radius:2px;width:23px;height:6px;display:block}.canvas{flex-direction:column;min-width:0;padding:30px;display:flex}.empty-board{text-align:center;flex-direction:column;flex:1;justify-content:center;align-items:center;min-height:480px;display:flex}.empty-board p{max-width:440px;color:var(--muted);margin:10px 0 18px;line-height:1.55}.cabinet{background:#f8faf9;border:12px solid #e8ecec;border-radius:4px;width:min(560px,92%);margin-bottom:27px;padding:28px 24px;box-shadow:inset 0 0 0 1px #c3ccce,0 9px 24px rgba(39,63,72,.082)}.cabinet-label{text-align:left;color:#61727a;margin-bottom:10px;font-size:12px}.rail{background:#263a42;border:5px solid #7e8f96;grid-template-columns:repeat(12,1fr);gap:3px;height:58px;margin:13px 0;padding:4px;display:grid}.rail span{color:#98a4a8;background:#f5f6f3;place-items:end center;padding-bottom:4px;font-size:10px;display:grid}.safety-note{color:#6b583e;border-left:3px solid var(--orange);background:#fff7e9;margin:0;padding:10px 12px;font-size:12px;line-height:1.4}.preset-pills{flex-wrap:wrap;justify-content:flex-end;gap:6px;display:flex}.preset-pills button{border:1px solid var(--line);color:#526069;background:#fff;border-radius:4px;padding:6px 8px;font-size:12px}.preset-pills .selected{background:var(--blue);border-color:var(--blue);color:#fff}.editor-board{background:#f8faf9;border:10px solid #e4e9e9;margin:34px 0 16px;padding:22px;box-shadow:inset 0 0 0 1px #c3ccce,0 9px 24px rgba(39,63,72,.082)}.board-title{color:#63747c;justify-content:space-between;margin:0 0 16px;font-size:12px;display:flex}.rail-row{grid-template-columns:53px 1fr;align-items:center;gap:10px;margin:13px 0;display:grid}.rail-caption{color:#64747a;text-align:right;font-size:12px}.rail-grid{background:#243942;border:5px solid #74878d;grid-template-columns:repeat(24,1fr);gap:1px;height:64px;padding:6px;display:grid;position:relative}.slot{background:#f5f6f3;border:0;min-width:0}.slot:hover{background:#d9eeef}.placed-device{z-index:2;color:#17323b;background:linear-gradient(90deg,#dae1e2,#fff 45%,#d4dddf);border:2px solid #536870;flex-direction:column;justify-content:center;align-items:center;height:46px;padding:0;font-size:10px;display:flex;position:absolute;top:9px;overflow:hidden}.placed-device b{font-size:12px}.placed-device span{color:#50626a}.active-device{border-color:var(--orange);box-shadow:0 0 0 2px rgba(244,163,64,.44)}.notice{color:#36525a;min-height:20px;margin:0 0 12px;font-size:13px}.field{color:#607078;margin:17px 0;font-size:12px;display:block}.field input,.field select{border:1px solid var(--line);width:100%;color:var(--ink);background:#fff;border-radius:4px;margin-top:5px;padding:8px;display:block}.delete{color:#a74134;background:#fff;border:1px solid #c96356;border-radius:5px;width:100%;padding:9px;font-weight:700}.inspector>p+.selected-symbol{margin-top:20px}.selected-symbol{color:#1e343d;background:linear-gradient(90deg,#e4e9e9,#fff 40%,#d8e0e1);border:3px solid #617177;place-items:center;height:84px;margin-bottom:17px;font-size:23px;font-weight:900;display:grid}.inspector h2{font-size:18px}.inspector h2+p{color:var(--muted);font-size:14px;line-height:1.5}.inspector dl{margin:24px 0}.inspector dl div{border-top:1px solid var(--line);padding:11px 0}.inspector dt{color:var(--muted);font-size:12px}.inspector dd{margin:3px 0 0;font-size:14px;font-weight:600}.inspector-empty{text-align:center;color:var(--muted);padding:90px 10px}.inspector-empty span{color:var(--blue);font-size:42px}.inspector-empty h2{color:var(--ink);margin:14px 0 7px;font-size:16px}.inspector-empty p{font-size:14px;line-height:1.5}.circuit-create{gap:6px;margin:-8px 0 14px;display:flex}.circuit-create input{border:1px solid var(--line);border-radius:4px;flex:1;min-width:0;padding:8px;font-size:12px}.circuit-create .secondary{white-space:nowrap;padding:8px;font-size:12px}.circuit-list{border:1px solid var(--line);color:#52656d;background:#f7faf9;border-radius:5px;gap:5px;margin:0 0 18px;padding:10px;font-size:12px;display:grid}.circuit-list b{color:#263b43}.circuit-list span{justify-content:space-between;display:flex}.circuit-list small{color:#71858d}.diagram-modal{width:min(980px,100%)}.diagram-note{color:#63747c;margin:0 0 18px;font-size:13px;line-height:1.45}.single-line-diagram{background:#fbfdfd;border:1px solid #ccd8da;gap:14px;padding:20px;display:grid;overflow:auto}.single-line-input,.diagram-path{align-items:center;min-width:max-content;display:flex}.single-line-input{margin-left:14px}.diagram-line{background:#47616b;width:66px;height:2px}.diagram-circuit{grid-template-columns:145px 1fr;align-items:center;gap:12px;display:grid}.diagram-circuit header{color:#27454e;justify-content:space-between;gap:6px;font-size:13px;display:flex}.diagram-circuit header small{color:#607d87}.diagram-path{min-height:64px;padding-left:24px;position:relative}.diagram-branch{background:#47616b;width:18px;height:2px;position:absolute;left:0}.diagram-step{align-items:center;display:flex}.diagram-node,.diagram-load{color:#1c3740;text-align:center;background:#fff;border:2px solid #49636b;border-radius:4px;place-items:center;min-width:58px;min-height:43px;padding:5px 8px;font-size:12px;font-weight:700;display:grid}.diagram-node small{color:#6d8188;font-size:9px;font-weight:400;display:block}.diagram-node.source{background:#e7f1f1;border-color:#0b6574}.diagram-arrow{color:#58727b;padding:0 8px;font-weight:700}.diagram-load{color:#61747b;border-style:dashed;font-weight:400}.diagram-warning{color:#8a5a20;margin:0;font-size:12px}.single-line-diagram .spec-empty{margin:0;padding:12px}.circuit-list select{color:#405b64;background:#fff;border:1px solid #c9d5d7;border-radius:3px;padding:2px 4px;font-size:11px}.project-checks{gap:14px;display:grid}.phase-summary,.check-warnings,.check-ok{border-radius:6px;padding:14px}.phase-summary{color:#344d55;background:#f3f8f8;border:1px solid #cbd9dc}.phase-summary div{gap:10px;margin-top:9px;display:flex}.phase-summary span{background:#fff;border-radius:4px;padding:6px 9px}.check-warnings{color:#715326;background:#fff7e9;border-left:4px solid #e5a238}.check-warnings ul{margin:8px 0 0;padding-left:19px}.check-warnings li{margin:5px 0}.check-ok{color:#346345;background:#edf8f0;border-left:4px solid #4f9b67}.check-ok p{margin:6px 0 0;font-size:13px}.check-disclaimer{color:#6d7d83;margin:0;font-size:12px;line-height:1.45}.connection-table{border-collapse:collapse;width:100%;font-size:13px}.connection-table th{text-align:left;color:#61747c;text-transform:uppercase;background:#f1f5f5;font-size:11px}.connection-table td,.connection-table th{border-bottom:1px solid var(--line);padding:10px 8px}.connection-table i{vertical-align:-2px;border:1px solid #405259;border-radius:50%;width:12px;height:12px;margin-right:6px;display:inline-block}.product-details{color:#36545d;background:#eef6f6;border-left:3px solid #0b6574;gap:4px;margin:-8px 0 13px;padding:9px;font-size:12px;display:grid}.product-details span{color:#59737c}.accessory-panel{border-top:1px solid #dbe5e7;margin-top:22px;padding-top:16px}.accessory-panel h3{margin:0 0 9px;font-size:15px}.accessory-row{border-top:1px solid #edf2f3;justify-content:space-between;align-items:center;gap:8px;padding:8px 0;display:flex}.accessory-row b,.accessory-row small{display:block}.accessory-row b{color:#314b54;font-size:12px}.accessory-row small{color:#74858b;max-width:165px;font-size:10px;line-height:1.25}.accessory-count{align-items:center;gap:5px;display:flex}.accessory-count button{color:#26606b;background:#fff;border:1px solid #b9cbd0;border-radius:4px;width:24px;height:24px;font-weight:700}.accessory-count button:disabled{opacity:.35}.accessory-count span{text-align:center;min-width:16px;font-size:12px;font-weight:700}.auto-ferrules{color:#567078;background:#f3f8f8;border-radius:4px;margin:10px 0 0;padding:8px;font-size:11px;line-height:1.35}.circuit-list .circuit-row{grid-template-columns:1fr auto auto;align-items:center;gap:6px;display:grid}.circuit-list .circuit-row>span{justify-content:space-between;gap:5px;display:flex}.circuit-list .circuit-row label{white-space:nowrap;color:#526b74;font-size:10px}.circuit-list .circuit-row input{vertical-align:-2px}.print-only{display:none}@media print{@page{size:A4 landscape;margin:12mm}body{background:#fff}.app-shell>*{display:none!important}.print-only{color:#17292f;font-family:Arial,Helvetica,sans-serif;display:block!important}.project-print-document header{border-bottom:2px solid #244d58;justify-content:space-between;align-items:flex-start;padding-bottom:12px;display:flex}.project-print-document header p{color:#567078;text-transform:uppercase;letter-spacing:.08em;margin:0;font-size:11px}.project-print-document h1{margin:4px 0 0;font-size:22px}.project-print-document h2{margin:18px 0 8px;font-size:15px}.project-print-document section{break-inside:avoid}.project-print-document table{border-collapse:collapse;width:100%;font-size:11px}.project-print-document th,.project-print-document td{text-align:left;border:1px solid #aebdc1;padding:6px}.project-print-document th{background:#edf3f3}.project-print-document .single-line-diagram{gap:7px;padding:10px}.project-print-document .diagram-circuit{grid-template-columns:110px 1fr}.project-print-document .diagram-path{min-height:45px}.project-print-document .diagram-node,.project-print-document .diagram-load{min-width:44px;min-height:34px;padding:3px 5px;font-size:10px}.project-print-document .diagram-arrow{padding:0 4px}.project-print-document footer{color:#61747c;border-top:1px solid #bdc9cc;margin-top:18px;padding-top:8px;font-size:9px}}:root{--ink:#18303a;--muted:#71828a;--line:#d6e0e2;--panel:#fff;--canvas:#e8eff1;--blue:#0b6676;--orange:#ed9a37}.app-shell{grid-template-rows:74px 1fr 38px}.topbar{background:linear-gradient(105deg,#112e38 0%,#17414c 100%);border-bottom:3px solid #ed9a37;gap:16px;padding:10px 20px;box-shadow:0 2px 10px rgba(17,47,56,.19)}.brand{letter-spacing:.02em;font-size:19px}.brand-mark{border-radius:6px;transform:skewY(-2deg);box-shadow:inset 0 0 0 1px rgba(255,255,255,.467)}.project-name{border-left:1px solid rgba(255,255,255,.19);margin-left:0;padding-left:14px}.history-actions{flex-wrap:wrap;justify-content:flex-end;margin-left:auto}.history-actions button{background:rgba(255,255,255,.05);border-color:#82a0a8;padding:7px 8px;transition:background .16s,border-color .16s,transform .16s}.history-actions button:hover{background:rgba(255,255,255,.125);border-color:#eeb153;transform:translateY(-1px)}.wire-color{color:#eaf2f3;background:#173842;border:1px solid #82a0a8;border-radius:4px;padding:6px;font-size:11px}.workspace{background:#e6edef;grid-template-columns:330px minmax(520px,1fr) 300px}.catalog,.inspector{background:#fbfdfd;padding:20px;box-shadow:0 0 20px rgba(40,67,75,.04)}.catalog{border-right:1px solid #d1dde0}.inspector{border-left:1px solid #d1dde0}.panel-heading{border-bottom:1px solid #e5ecee;padding-bottom:14px}.count{background:#e1f1f2;border:1px solid #c5e0e2}.category-list{margin:15px 0}.category-list button{border-radius:999px;padding:6px 10px;transition:all .15s}.category-list button:hover{background:#f0f8f8;border-color:#73aeb5}.pole-control,.wire-palette{background:#f4f8f8;border:1px solid #dbe5e7;border-radius:7px;padding:11px}.pole-control{margin-bottom:10px}.wire-palette{margin-bottom:14px}.pole-control select,.wire-palette button{background:#fff}.device-card{background:linear-gradient(110deg,#fff,#f7fafb);border-color:#dbe5e7;border-radius:7px;min-height:68px;transition:transform .15s,border-color .15s,box-shadow .15s}.device-card:hover{border-color:#55a0a9;transform:translate(2px);box-shadow:0 4px 12px rgba(29,74,82,.08)}.device-card.chosen{background:#eff8f8;border-color:#0b6676;box-shadow:inset 3px 0 #ed9a37,0 3px 9px rgba(11,102,118,.09)}.device-card strong{color:#223e47}.device-card small{color:#71828a}.canvas{background:radial-gradient(circle at 50% -10%,#fff 0%,#f0f5f6 42%,#e4edef 100%);padding:24px 28px}.canvas-header{padding:0 4px}.canvas-header h2{font-size:21px}.preset-pills button{border-radius:999px;padding:7px 11px;transition:all .15s}.preset-pills button:hover{border-color:#6eabb2}.preset-pills .selected{box-shadow:0 3px 7px rgba(11,101,116,.22)}.editor-board{border-radius:10px;background:linear-gradient(145deg,#fbfdfd 0%,#e8eff0 100%)!important;border-color:#d3dfe1!important;box-shadow:inset 0 0 0 1px #fff,0 13px 30px rgba(25,60,68,.133)!important}.board-title{color:#46626a;background:rgba(255,255,255,.72);border:1px solid #d7e2e4;border-radius:6px;padding:8px 10px}.rail-caption{color:#526e77;font-weight:700}.rail-grid{border-radius:5px}.placed-device .device-face{filter:drop-shadow(1px 3px 2px rgba(32,62,70,.32))}.placed-device:hover .device-face{filter:drop-shadow(1px 4px 3px rgba(22,56,64,.408))}.active-device{outline-color:#ed9a37!important;box-shadow:inset 0 0 0 1px rgba(255,255,255,.533)!important}.terminal{border-color:#f7fbfb;box-shadow:0 1px 3px rgba(20,44,50,.4)}.terminal:hover,.terminal.pending{box-shadow:0 0 0 3px rgba(240,160,62,.23),0 1px 3px rgba(20,44,50,.4);background:#f1aa40!important}.notice{background:#f5faf9;border-left:3px solid #0b6676;border-radius:0 5px 5px 0;padding:10px 12px}.safety-note{border-radius:4px}.inspector{background:linear-gradient(#fcfefe,#f6fafb)}.selected-symbol{border-color:#60757c;border-radius:7px;box-shadow:inset 0 0 0 2px rgba(255,255,255,.6),0 4px 10px rgba(30,60,67,.09)}.field input,.field select{transition:border-color .15s,box-shadow .15s}.field input:focus,.field select:focus,.circuit-create input:focus{border-color:#3e959f;outline:none;box-shadow:0 0 0 3px rgba(11,102,118,.1)}.circuit-list,.product-details{border-radius:6px}.delete{transition:background .15s,color .15s}.delete:hover{color:#fff;background:#a74134}.modal-backdrop{-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px)}.spec-modal{border:1px solid #d6e2e4;border-radius:10px}.modal-heading{border-bottom:1px solid #e1eaec;padding-bottom:14px}.spec-modal th{color:#3f5c65;background:#eaf2f3}.single-line-diagram{border-radius:7px;box-shadow:inset 0 0 0 1px #fff}.project-checks,.connection-table{border-radius:6px;overflow:hidden}footer{color:#60747b;background:#f9fbfb;height:38px}@media (max-width:1200px){.workspace{grid-template-columns:300px minmax(460px,1fr)}.inspector,.project-name{display:none}}.selected-symbol{place-items:center;overflow:hidden;height:166px!important;padding:8px!important;display:grid!important}.selected-symbol .device-face{flex:none;max-width:100%;width:126px!important;height:150px!important}.schematic-board{background:#fbfcfc;border:1px solid #d3dfe2;border-radius:8px;gap:14px;min-width:760px;padding:24px;display:grid;overflow:auto}.schematic-source{align-items:center;gap:10px;min-height:56px;padding-left:15px;display:flex;position:relative}.source-title{color:#445b63;font-size:12px;font-weight:700}.source-device,.schematic-device{z-index:2;color:#2d4149;text-align:center;background:linear-gradient(145deg,#f8f9f9,#e5e8e8);border:1px solid #bac6ca;border-radius:3px;place-items:center;min-width:58px;height:52px;padding:6px 10px;display:grid;position:relative;box-shadow:0 2px 4px rgba(35,64,75,.1)}.source-device{min-width:72px;font-weight:800}.source-line{border-radius:2px;width:2px;position:absolute;top:4px;bottom:4px}.source-line.red{background:#e64b3f;left:145px}.source-line.orange{background:#f09a37;left:159px}.source-line.blue{background:#476dff;left:173px}.source-line.neutral{background:#859299;left:187px}.schematic-circuit{grid-template-columns:128px 1fr;align-items:center;gap:10px;min-height:104px;display:grid}.schematic-circuit header{color:#405861;align-self:start;align-items:center;gap:7px;padding-top:13px;font-size:13px;display:flex}.phase-badge{color:#fff;border-radius:4px;place-items:center;min-width:26px;height:21px;font-size:10px;display:inline-grid}.phase-badge.red{background:#e64b3f}.phase-badge.orange{background:#ef9631}.phase-badge.blue{background:#476dff}.phase-badge.violet{background:#7556d8}.phase-badge.three-phase{background:linear-gradient(90deg,#e64b3f 0,#e64b3f 33%,#ef9631 33%,#ef9631 66%,#476dff 66%)}.schematic-flow{background:linear-gradient(90deg,#f7f8fa,#fff);border:1px dashed #cbd5d8;border-radius:7px;align-items:center;min-height:102px;padding:22px 25px 22px 15px;display:flex;position:relative}.schematic-trace{opacity:.92;border-radius:2px;height:3px;position:absolute;left:0;right:22px}.schematic-trace.phase{top:17px}.schematic-trace.phase.red{background:#e64b3f}.schematic-trace.phase.orange{background:#ef9631}.schematic-trace.phase.blue{background:#476dff}.schematic-trace.phase.violet{background:#7556d8}.schematic-trace.phase.three-phase{background:linear-gradient(90deg,#e64b3f 0,#e64b3f 33%,#ef9631 33%,#ef9631 66%,#476dff 66%)}.schematic-trace.neutral{border-top:2px dashed #6f7c83;bottom:27px}.schematic-trace.earth{background:#57aa67;bottom:13px}.schematic-step{z-index:1;align-items:center;display:flex}.schematic-device b{font-size:12px}.schematic-device small{color:#6d8087;font-size:9px}.schematic-switch{background:#078f87;border-radius:1px;width:18px;height:7px;position:absolute;bottom:7px;box-shadow:inset 0 -2px #006a65}.schematic-arrow{color:#6d8189;padding:0 13px;font-size:17px}.schematic-load{z-index:1;color:#62777e;background:#fff;border:1px dashed #849499;border-radius:4px;margin-left:14px;padding:8px;font-size:11px}.schematic-buses{grid-template-columns:30px 1fr;align-items:center;gap:7px 10px;margin-left:138px;display:grid}.schematic-buses span{color:#fff;border-radius:4px;place-items:center;width:28px;height:22px;font-size:11px;font-weight:700;display:grid}.schematic-buses i{border-radius:3px;height:5px}.bus-n{background:#53636a}.bus-pe{background:#4d9b60}.schematic-buses .bus-n+i{background:#65757b}.schematic-buses .bus-pe+i{background:#58a968}.schematic-canvas-wrap{background:#fff;border:1px solid #d2dde0;border-radius:8px;overflow:auto}.schematic-canvas{width:100%;min-width:840px;height:auto;display:block}.schematic-background{fill:#fbfcfc}.schematic-rail{fill:#f7f9fa;stroke:#c4d0d4;stroke-dasharray:6 5}.schematic-row-label{fill:#587078;font:700 13px Arial,sans-serif}.schematic-wires path{fill:none;stroke-width:3.25px;stroke-linejoin:round;stroke-linecap:round;filter:drop-shadow(0 1px 1px rgba(37,62,68,.2))}.schematic-case{fill:#eef0f0;stroke:#aebcc0;stroke-width:1.5px}.schematic-label{fill:#fafcfc;stroke:#c3ced1}.schematic-name{fill:#31464f;font:700 13px Arial,sans-serif}.schematic-switch{fill:#1d7779;stroke:#12585c}.schematic-handle{fill:#0aa49a}.schematic-terminal{fill:#45626b;stroke:#fff;stroke-width:1.5px}.schematic-bus text{fill:#3b5058;font:700 14px Arial,sans-serif}.neutral-bus-line{stroke:#64747b;stroke-width:5px;stroke-linecap:round}.earth-bus-line{stroke:#58aa68;stroke-width:5px;stroke-linecap:round}.rail-grid .wire-row-layer,.editor-board>.wire-layer{z-index:3!important}.rail-grid .placed-device{isolation:isolate;z-index:5!important}.rail-grid .placed-device .terminal{z-index:7}.wire-marker{z-index:12;color:#2b444d;white-space:nowrap;cursor:pointer;background:#fffefc;border:1px solid #6e838a;border-radius:3px;min-width:20px;padding:1px 3px;font:700 8px/1.15 Arial,sans-serif;position:absolute;box-shadow:0 1px 2px rgba(34,59,65,.2)}.wire-marker:hover,.wire-marker.selected{color:#163841;background:#fff1d7;border-color:#ef9d36;box-shadow:0 0 0 2px rgba(237,154,55,.25)}.wire-marker-top{bottom:12px;left:8px}.wire-marker-bottom{top:12px;left:8px}.fixed-terminal .wire-marker-top{top:18px;bottom:auto}.fixed-terminal .wire-marker-bottom{top:auto;bottom:18px}.active-wire-row-layer{z-index:6;pointer-events:none;width:100%;height:100%;position:absolute;top:0;bottom:0;left:0;right:0;overflow:visible}.active-wire-row-layer path{fill:none;stroke-width:7px;vector-effect:non-scaling-stroke;stroke-linecap:round;stroke-linejoin:round;filter:drop-shadow(0 0 3px #f1a33c)}.active-cross-wire-layer{z-index:6;pointer-events:none;width:100%;height:100%;position:absolute;top:0;bottom:0;left:0;right:0;overflow:visible}.active-cross-wire-layer path{fill:none;stroke-width:7px;vector-effect:non-scaling-stroke;stroke-linecap:round;stroke-linejoin:round;filter:drop-shadow(0 0 3px #f1a33c)}.wire-marker{letter-spacing:.01em;background:rgba(255,255,255,.95);border-radius:999px;min-width:18px;padding:2px 4px;font-size:8px;transition:transform .14s,background .14s,box-shadow .14s}.wire-marker:hover{transform:translateY(-1px)scale(1.08)}.wire-marker.selected{background:#fff5e6;box-shadow:0 0 0 2px rgba(237,154,55,.32),0 2px 4px rgba(34,59,65,.2);color:#213d45!important}.wire-editor{background:#153842;border:1px solid #4f7079;border-radius:6px;min-height:32px;padding:4px 5px 4px 8px;box-shadow:inset 0 0 0 1px rgba(255,255,255,.05)}.wire-editor .wire-editor-title{color:#ffd18f;letter-spacing:.04em;min-width:22px;font-weight:800}.wire-editor-close{place-items:center;width:22px;height:22px;line-height:1;display:grid;color:#d7ebee!important;background:rgba(255,255,255,.086)!important;border:0!important;border-radius:4px!important;padding:0!important;font-size:17px!important}.wire-editor-close:hover{color:#fff!important;background:rgba(255,255,255,.176)!important}.board-wiring-hint{color:#47646c;background:#e4f1f1;border-radius:999px;margin-left:8px;padding:2px 6px;font-size:10px;font-style:normal;font-weight:700;display:inline-block}.board-title{align-items:center}footer{border-top:1px solid var(--line);color:#596971;background:#fff;align-items:center;gap:22px;padding:0 24px;font-size:12px;display:flex}@media (max-width:950px){.workspace{grid-template-columns:290px 1fr}.inspector{display:none}}.topbar{min-width:0}@media (max-width:700px){.app-shell{grid-template-rows:auto 1fr auto}.topbar{flex-wrap:wrap;gap:10px;padding:14px}.project-name{display:none}.topbar .primary{margin-left:auto}.workspace{display:block}.catalog{border-right:0;border-bottom:1px solid var(--line)}.catalog-grid{grid-template-columns:1fr 1fr}.canvas{min-height:540px;padding:20px 14px}.cabinet{border-width:8px;padding:18px 10px}.rail{height:45px;margin:8px 0}.rail span{font-size:8px}footer{white-space:nowrap;padding:0 14px;overflow:auto}}body{background:#e9f0f1}.topbar{background:linear-gradient(105deg,#0e2d37,#184b57);gap:18px;min-height:74px;padding:10px 22px;box-shadow:0 3px 15px rgba(23,56,66,.2)}.brand{letter-spacing:.015em;align-items:center;gap:2px;font-size:20px;display:flex}.brand-mark{color:#17323b;background:linear-gradient(145deg,#ffd081,#ea9431);border-radius:8px;place-items:center;width:30px;height:30px;margin-right:7px;display:inline-grid;box-shadow:inset 0 1px rgba(255,255,255,.533),0 2px 5px rgba(6,26,32,.267)}.project-name{color:#e4f0f2;padding-left:16px;font-size:13px}.status-dot{width:9px;height:9px;box-shadow:0 0 0 3px rgba(142,214,147,.18)}.history-actions{align-items:center;gap:6px}.history-actions button{background:rgba(255,255,255,.05);border-color:rgba(255,255,255,.18);border-radius:6px;min-height:30px;padding:6px 9px;font-size:11px}.history-actions button:hover{background:rgba(255,255,255,.11);border-color:#f4b55d}.wire-color{background:#0d2a33;border-color:rgba(255,255,255,.18);border-radius:6px;min-height:30px}.workspace{background:linear-gradient(130deg,#e5edef,#f4f8f8 48%,#e6eef0)}.catalog,.inspector{background:#fbfdfd;padding:18px}.catalog{box-shadow:8px 0 24px rgba(28,68,80,.05)}.inspector{box-shadow:-8px 0 24px rgba(28,68,80,.05)}.panel-heading{z-index:2;background:#fbfdfd;margin:0 -2px 13px;padding:18px 2px 13px;position:-webkit-sticky;position:sticky;top:-18px}.panel-heading h1{letter-spacing:-.01em;font-size:19px}.category-list{gap:5px;margin:10px 0 13px}.category-list button{padding:6px 9px;font-size:11px}.pole-control,.wire-palette{background:linear-gradient(135deg,#f6fbfb,#eef6f6);border-color:#d6e4e5;box-shadow:inset 0 1px #fff}.catalog-grid{gap:6px}.device-card{border-radius:8px;min-height:64px;padding:8px}.device-card:hover{transform:translate(3px)}.device-card.chosen{box-shadow:inset 3px 0 #ed9a37,0 4px 12px rgba(11,102,118,.13)}.canvas{padding:20px 24px 28px}.canvas-header{background:rgba(255,255,255,.79);border:1px solid #d9e4e6;border-radius:12px;align-items:center;width:min(920px,100%);margin:0 auto;padding:12px 14px;box-shadow:0 6px 18px rgba(33,71,82,.055)}.canvas-header h2{letter-spacing:-.02em;font-size:22px}.preset-pills{gap:5px}.preset-pills button{border-radius:8px;min-height:30px;padding:6px 11px}.preset-pills .selected{background:linear-gradient(135deg,#0a6677,#0c5260);box-shadow:0 3px 8px rgba(11,101,116,.24)}.editor-board{border-radius:14px;margin:18px auto 16px;background:linear-gradient(145deg,#fdfefe,#e4edef)!important;border-color:#cedbdd!important;box-shadow:inset 0 0 0 2px rgba(255,255,255,.8),0 16px 32px rgba(24,61,72,.15)!important}.board-title{border-radius:8px;padding:9px 11px}.rail-caption{padding-right:3px;font-size:11px}.notice{margin:0 auto 10px;width:min(860px,100%)!important}.safety-note{margin:0 auto;width:min(860px,100%)!important}.inspector>.eyebrow:first-child{margin-top:3px}.inspector h2{letter-spacing:-.015em;margin-top:2px;font-size:19px}.selected-symbol{background:linear-gradient(120deg,#edf4f4,#fff 48%,#e5edef);border-radius:10px}.field{margin:13px 0}.field input,.field select{border-color:#d0dee1;border-radius:6px}.primary{border-radius:7px;transition:transform .15s,box-shadow .15s;box-shadow:0 3px 8px rgba(214,129,45,.22)}.primary:hover{transform:translateY(-1px);box-shadow:0 5px 12px rgba(214,129,45,.282)}.secondary{border-radius:7px}.accessory-panel{background:#f8fbfb;border:1px solid #dbe6e8;border-radius:10px;margin-top:18px;padding:14px 11px 0}.accessory-row{padding:9px 0}.auto-ferrules{border-radius:6px}footer{background:#f9fbfb;gap:18px;padding:0 22px}@media (max-width:1250px){.history-actions{max-width:60%}.history-actions button{padding:6px 7px}}@media (max-width:950px){.canvas-header{width:100%}.panel-heading{position:static}}@media (min-width:1600px){.canvas{padding-left:18px;padding-right:18px}.editor-board{zoom:1.3}.notice,.safety-note{max-width:860px}}@media (min-width:2050px){.editor-board{zoom:1.42}}
