:root{font-family:system-ui,-apple-system,Segoe UI,sans-serif;color:#eff0fa;background:#10121d;font-synthesis:none}*{box-sizing:border-box}body{margin:0}button,select{font:inherit;cursor:pointer}button{border:1px solid #454765;border-radius:10px;background:#242843;color:#f6f6fc;padding:10px 12px;min-height:42px}button:disabled{opacity:.5}button:focus-visible,select:focus-visible{outline:3px solid #b29afe;outline-offset:2px}button:hover{background:#343959}.shell{max-width:1320px;margin:auto;min-height:100vh;padding:12px}.topbar{display:flex;align-items:center;justify-content:space-between;gap:12px}.topbar h1{font-size:clamp(1.2rem,4.6vw,1.8rem);margin:6px 0;color:#f4d5a2}.topbar p{font-size:.85rem;color:#adafca;margin:0 0 14px}.toolbar{display:flex;gap:8px;flex-wrap:wrap;padding:8px 0 12px}.toolbar button{flex:1}.hidden{display:none}.projectbar{display:flex;align-items:center;flex-wrap:wrap;gap:12px;padding:12px;border:1px solid #30334e;border-radius:12px;background:#181c30}.projectbar label{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.projectbar select{max-width:190px;color:#fff;background:#252941;border:1px solid #535878;padding:8px;border-radius:8px}.muted{color:#a9abc5}.tabs{display:flex;gap:8px;margin:14px 0}.tabs button{flex:1}.tabs .active{background:#5d3c9a;border-color:#a987f4}.workspace{background:#181b2b;border:1px solid #30334c;border-radius:16px;padding:12px;min-height:400px}.catalog{margin-bottom:12px}.catalog label{display:block;font-weight:700;margin:0 0 8px}.familybuttons{display:flex;overflow-x:auto;gap:8px;padding-bottom:6px}.familybuttons button{white-space:nowrap}.hint{color:#c4c8df;font-size:.9rem}.hint button{margin-inline-start:8px}.canvas{min-height:280px;border:1px solid #444767;border-radius:12px;padding:14px;background-color:#141625;background-image:linear-gradient(#39385547 1px,transparent 1px),linear-gradient(90deg,#39385547 1px,transparent 1px);background-size:24px 24px}.canvas.panel{background-color:#242a36;background-image:linear-gradient(#7d899922 1px,transparent 1px),linear-gradient(90deg,#7d899922 1px,transparent 1px);background-size:32px 32px}.empty{text-align:center;color:#bbb;padding:60px 0}.components{display:grid;grid-template-columns:repeat(auto-fill,minmax(145px,1fr));gap:12px}.component{border:2px solid #7f81ae;border-radius:12px;background:#24263c;padding:8px;min-height:108px}.panel .component{background:linear-gradient(#dedfe5,#aaadbf);color:#1b2133;border-color:#5f6278;box-shadow:4px 5px #151b28}.componentname{display:flex;justify-content:space-between;gap:6px;align-items:center}.componentname small{font-size:.75rem}.terminals{display:flex;flex-wrap:wrap;gap:5px;justify-content:space-between;margin-top:15px}.terminals button{background:#11182f;color:#fff;border:1px solid #e6b35d;border-radius:7px;min-height:34px;padding:4px 8px;font-size:.8rem}.terminals .selected{background:#8053ba;border:2px solid #e1c3ff}.connections{margin-top:14px}.connections h2{font-size:1rem}.connections ul{margin:0;padding:0;list-style:none}.connections li{display:flex;justify-content:space-between;align-items:center;gap:10px;border-bottom:1px solid #444761;padding:8px 2px}.connections code{white-space:normal;word-break:break-word}.inspect{padding:14px;background:#1e253b;border-radius:10px}footer{font-size:.8rem;color:#b1b8cf;line-height:1.6;padding:18px 2px}.error{background:#602d3f;padding:10px;border-radius:8px}@media(min-width:900px){.shell{padding:22px}.workspace{min-height:600px}.canvas{min-height:430px}.toolbar button{flex:unset}.components{grid-template-columns:repeat(auto-fill,minmax(175px,1fr))}}.recovery{padding:12px;border:1px solid #63518a;border-radius:12px;background:#1d2437;margin:10px 0}.recovery h2{font-size:1rem}.recovery button{display:block;width:100%;margin-top:8px;text-align:start}.topbar button{flex-shrink:0}.terminals button{min-width:44px;min-height:44px;touch-action:manipulation}.canvas{touch-action:pan-x pan-y}.toolbar button{min-width:74px}.rating-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(170px,1fr));gap:12px;margin:12px 0}.rating-grid label{display:flex;flex-direction:column;gap:6px}.rating-grid select{min-height:44px;min-width:0;max-width:100%;padding:7px;border-radius:8px;color:#fff;background:#252941;border:1px solid #535878}.rating-summary{margin-top:12px;border:1px solid #494d6b;padding:10px;border-radius:8px}.rating-summary ul{padding-inline-start:20px}.schematic-workspace{min-width:0}.schematic-controls{display:flex;align-items:center;gap:8px;flex-wrap:wrap;margin-bottom:10px}.schematic-controls output{min-width:54px;text-align:center;font-variant-numeric:tabular-nums}.schematic-controls button{min-width:44px}.schematic-scroll{overflow:auto;max-height:65vh;border:1px solid #4b4b70;border-radius:12px;touch-action:pan-x pan-y;background:#15182a}.schematic-stage{position:relative;transform-origin:0 0;direction:ltr;background-image:linear-gradient(#5a5d7c32 1px,transparent 1px),linear-gradient(90deg,#5a5d7c32 1px,transparent 1px);background-size:24px 24px}.schematic-wires{position:absolute;top:0;left:0;z-index:0;pointer-events:none}.schematic-part{position:absolute;width:185px;min-height:145px;z-index:1;direction:ltr;box-shadow:0 6px 18px #060714aa}.schematic-part .componentname{align-items:flex-start}.schematic-drag{width:100%;margin-top:7px;min-height:36px;font-size:.78rem;background:#353659;touch-action:none;-webkit-user-select:none;user-select:none;cursor:grab}.schematic-drag:active{cursor:grabbing}.schematic-part .terminals{justify-content:flex-start;gap:6px;margin-top:9px}.schematic-caption{font-size:.78rem;color:#adb2c9;margin:8px 0 3px}.schematic-empty{padding:130px 60px;text-align:center;color:#b3b7ce}@media(min-width:900px){.schematic-scroll{max-height:76vh}}.sheet-toolbar{display:flex;gap:8px;align-items:center;flex-wrap:wrap;margin:10px 0}.sheet-toolbar label{display:flex;align-items:center;gap:8px;font-size:.88rem}.sheet-toolbar select{max-width:210px;min-height:44px;padding:8px;color:#fff;background:#252941;border:1px solid #535878;border-radius:8px}.sheet-toolbar button{min-height:44px;flex:1}@media(min-width:700px){.sheet-toolbar button{flex:unset}}.is-panel-stage{background-color:#333d49;background-image:repeating-linear-gradient(0deg,transparent 0 134px,#b3b7bb 134px 145px,#505861 145px 153px,transparent 153px 270px),linear-gradient(90deg,#ffffff19 1px,transparent 1px);background-size:100% 270px,32px 32px;border:12px solid #596270;box-shadow:inset 0 0 0 2px #b7c1ce}.is-panel-device{background:linear-gradient(155deg,#fafafa,#d3d6d9 54%,#9ca1aa);color:#26303d;border-color:#6a7383;border-radius:8px;box-shadow:3px 7px #252b35b3}.is-panel-device .componentname{border-bottom:1px solid #89919f;padding-bottom:4px}.is-panel-device .schematic-drag{color:#f8f9fe;background:#596375;border-color:#404957}.is-panel-device .terminals button{color:#fff;background:#273144;border-color:#a7834e}.part-actions{display:flex;gap:5px;margin-top:7px}.part-actions button{flex:1;padding:4px 6px;min-height:36px;font-size:.75rem}.part-actions button:last-child{border-color:#a75869;color:#ffd3db}.cross-sheet-links{margin-top:8px;display:flex;flex-direction:column;gap:5px}.cross-sheet-link,.cross-sheet-unplaced{display:block;width:100%;border:1px dashed #b7a4f2;background:#35345c;color:#f7f1ff;line-height:1.35;text-align:left;white-space:normal;overflow-wrap:anywhere;min-height:44px;font-size:.72rem;padding:6px;border-radius:6px}.cross-sheet-unplaced{opacity:.85}.schematic-symbol-frame{margin:7px 0 5px;padding:4px;background:#f0f3f7;border:1px solid #8994ac;border-radius:7px;line-height:0;pointer-events:none}.schematic-symbol{display:block;width:100%;height:98px;max-width:160px;margin:auto;stroke:#1d2939;fill:none;stroke-width:1.8}.schematic-symbol text{font-family:Arial,Helvetica,sans-serif;fill:#1d2939;stroke:none;font-size:9px;font-weight:700}.schematic-part:not(.is-panel-device) .terminals button{min-width:44px}.wire-route-handle{position:absolute;z-index:8;transform:translate(-50%,-50%);width:38px;height:38px;padding:0;border:2px solid #dcb873;border-radius:50%;background:#242e50;color:#ffe5a1;cursor:ew-resize;touch-action:none;-webkit-user-select:none;user-select:none;box-shadow:0 3px 10px #080a18aa}.wire-route-handle.selected{background:#e4b05c;color:#141b2c;border-color:#fff}.schematic-controls button[aria-label="Route left"],.schematic-controls button[aria-label="Route right"]{min-width:44px}.schematic-power-poles{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:3px;margin:4px auto 0;direction:ltr;color:#1d2939;font-size:10px;line-height:1.4;text-align:center}.schematic-power-poles span{border:1px solid #b7c4d1;border-radius:4px;padding:2px 1px;white-space:nowrap;background:#fff}.is-panel-device[data-family=mcb]{background:linear-gradient(155deg,#eceff3,#c9ced7);border-left:8px solid #737f94}.is-panel-device[data-family=mcb] .componentname:after{content:"I / O";font-size:10px;border:1px solid #344054;border-radius:3px;color:#2b3441;padding:4px}.is-panel-device[data-family=terminal_block]{background:linear-gradient(120deg,#dce3e6,#a9b4bb);border-left:6px solid #ccab4b}.is-panel-device[data-family=terminal_block] .componentname:after{content:"●  1  ●";font-size:12px;letter-spacing:2px;color:#243544}.is-panel-device[data-family=mcb_3p]{background:repeating-linear-gradient(90deg,#c7cdd3 0 33%,#eef0f3 33% 34%,#c7cdd3 34% 66%,#eef0f3 66% 67%,#c7cdd3 67% 100%);border-left:8px solid #6d7890}.is-panel-device[data-family=mcb_3p] .componentname:after{content:"I / O  ×3";font-size:10px;border:1px solid #3e495a;border-radius:3px;color:#2c3542;padding:4px}.schematic-part.sim-active{border-color:#40d39a;box-shadow:0 0 0 2px #1a815a6b,0 0 13px #38e7a548}.schematic-part.sim-tripped{border-color:#fb7a72;box-shadow:0 0 0 2px #dc56595e}.sim-indicator{border-radius:999px;background:#30374e;color:#f1f3fa;border:1px solid #6d718c;padding:2px 7px;font-size:.7rem;white-space:nowrap}.sim-active .sim-indicator{background:#11513c;color:#caffdf;border-color:#44d39a}.sim-tripped .sim-indicator{background:#71313b;color:#fff0ee;border-color:#fb817d}.sim-active .schematic-symbol{filter:drop-shadow(0 0 4px #3dde9b)}.pwa-bar{margin-top:10px;border:1px solid #48506c;border-radius:12px;background:#1b2336;padding:10px 12px;display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:8px}.pwa-summary{display:flex;align-items:center;flex-wrap:wrap;gap:8px 12px;font-size:.83rem}.pwa-summary strong{font-weight:700}.pwa-summary span{color:#bec7e5}.pwa-summary [data-pwa-network=offline]{color:#f4ca90}.pwa-summary [data-pwa-cache=ready]{color:#96e2c5}.pwa-buttons{display:flex;align-items:center;flex-wrap:wrap;gap:8px}.pwa-buttons button{padding:6px 10px;font-size:.84rem;min-height:40px}.pwa-buttons [data-pwa-update]{border-color:#b7a4f2}.pwa-buttons [data-pwa-installed]{font-size:.82rem;color:#96e2c5}.pwa-instructions{margin:0;flex-basis:100%;color:#d5d9ec;line-height:1.55;font-size:.87rem}@media(max-width:520px){.pwa-bar{align-items:stretch}.pwa-summary,.pwa-buttons{width:100%}.pwa-buttons button{flex:1}}[hidden]{display:none!important}.ux-home{margin:12px 0 22px;display:grid;gap:16px}.ux-welcome{background:linear-gradient(135deg,#1d3441,#171d32);border:1px solid #335966;border-radius:18px;padding:22px 18px}.ux-welcome p{color:#79d6c5;margin:0 0 8px;font-size:.85rem}.ux-welcome h2{margin:0 0 10px;font-size:clamp(1.25rem,4.5vw,1.9rem);line-height:1.4}.ux-welcome span{color:#b8c5d5;font-size:.9rem}.ux-home-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.ux-home-grid button{display:flex;flex-direction:column;align-items:flex-start;text-align:start;gap:12px;min-height:120px;padding:18px;background:#1d2639;border:1px solid #3b5364;border-radius:16px}.ux-home-grid button:first-child{border-color:#188c83;background:#153a3c}.ux-home-grid strong{font-size:1rem}.ux-home-grid small{font-size:.82rem;color:#b8c6d5;line-height:1.5}.ux-tools-toggle,.ux-catalog-toggle{background:#1b3540;border-color:#2d7775;min-height:44px}.ux-tools-toggle{margin-top:10px}.ux-catalog-toggle{width:100%;text-align:start}.tabs{position:sticky;bottom:0;z-index:20;background:#10121df2;padding:8px 0;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px)}.tabs button{min-width:0;font-size:.9rem;padding:10px 4px;min-height:48px}.tabs .active{background:#175f5c;border-color:#4ab9a5}@media(max-width:520px){.shell{padding:10px}.workspace{padding:8px}.ux-home-grid{gap:9px}.ux-home-grid button{padding:14px;min-height:112px}.toolbar button{flex:1 1 42%}.projectbar{gap:8px}}@media(min-width:900px){.ux-home-grid{grid-template-columns:repeat(4,minmax(0,1fr))}.tabs{position:static}}:root{--ux-bg:#0e1422;--ux-surface:#172238;--ux-panel:#1d2a40;--ux-border:#34455a;--ux-accent:#168b81;--ux-ink:#eef3fb;--ux-muted:#b4c3d2;--ux-amber:#e5af55}html{scroll-padding-bottom:90px}body{background:var(--ux-bg)}.shell{width:100%;max-width:1320px;padding:12px 12px 96px}.topbar{padding:8px 0 10px;align-items:flex-start}.topbar h1{font-size:clamp(1.1rem,4.5vw,1.65rem);letter-spacing:-.025em;color:#f4d59e;line-height:1.5}.topbar p{font-size:.78rem;line-height:1.6;margin:1px 0 2px}.topbar button{border-radius:12px;font-size:.85rem;padding:8px 11px;min-height:44px;background:#202f46}.ux-welcome{background:radial-gradient(circle at 95% 0%,#20736955,transparent 57%),linear-gradient(135deg,#1a3141,#152035);border:1px solid #2f6769;padding:24px 18px;border-radius:20px;box-shadow:0 12px 32px #0002}.ux-welcome h2{font-size:clamp(1.25rem,4.5vw,1.85rem)}.ux-home{margin:12px 0}.ux-home-grid button{background:var(--ux-surface);border:1px solid var(--ux-border);border-radius:17px;box-shadow:0 4px 15px #0002;transition:transform .12s ease,border-color .15s ease;justify-content:flex-start}.ux-home-grid button:active{transform:scale(.98)}.ux-home-grid button:first-child{background:linear-gradient(145deg,#15504a,#14373b);border-color:#3ca79b}.ux-home-grid button:before{display:flex;align-items:center;justify-content:center;content:"⌁";width:35px;height:35px;border-radius:11px;background:#244059;color:#e5af55;font-size:1.6rem}.ux-home-grid button:nth-child(1):before{content:"+";background:#247367;color:#fff}.ux-home-grid button:nth-child(2):before{content:"↗"}.ux-home-grid button:nth-child(3):before{content:"▤"}.ux-home-grid button:nth-child(4):before{content:"▣"}.ux-home-grid strong{font-size:1rem;color:var(--ux-ink)}.ux-home-grid small{color:#b9cad7;font-size:.82rem}.ux-tools-toggle{margin:8px 0 2px;background:#1b2b40;border:1px solid #375970;border-radius:11px;padding:8px 12px;font-size:.85rem;min-height:44px}.toolbar:not([hidden]){background:#172238;border:1px solid #34445b;border-radius:13px;padding:9px;margin:6px 0 10px}.toolbar button{font-size:.84rem;min-height:44px}.ux-rename-project{font-weight:700;text-align:start;padding:7px 9px;border:1px solid transparent;background:transparent;color:#f6e0b5;min-width:0;overflow-wrap:anywhere}.ux-rename-project:hover{background:#27394c}.ux-rename-project span{color:#7fc9c1;font-weight:400}.projectbar{margin:6px 0 8px;gap:8px;padding:10px;border-color:#34465a;background:#172238}.projectbar label{font-size:.8rem;gap:6px}.projectbar select{max-width:125px;padding:5px;min-height:40px}.projectbar .muted{font-size:.75rem}.pwa-bar{border-color:#304f51;background:#14212e;padding:8px 10px;border-radius:12px;margin:8px 0 4px}.pwa-summary{font-size:.74rem;gap:4px 10px}.pwa-summary strong{font-size:.8rem}.pwa-buttons button{font-size:.78rem;min-height:38px}.sheet-toolbar{margin-top:8px}.workspace{border:1px solid #304158;background:#141d2f;border-radius:15px;padding:10px;min-width:0;overflow:hidden}.ux-catalog-toggle{display:block;border-radius:11px;font-size:.87rem;background:#1b3540;border:1px solid #27786f;min-height:44px}.ux-library{border-radius:12px;background:#18283a;padding:10px;border:1px solid #34586c;margin:8px 0 10px}.ux-library label{font-size:.83rem;margin:0 0 6px}.ux-library input{display:block;width:100%;background:#0d1b2c;color:#fff;border:1px solid #45657d;border-radius:10px;padding:11px;font:inherit;font-size:.9rem;min-height:44px}.ux-library input::placeholder{color:#9cb0c5}.ux-library input:focus-visible{outline:3px solid #54a9a2;outline-offset:2px}.ux-library .familybuttons{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:7px;max-height:268px;overflow-y:auto;overflow-x:hidden;margin-top:8px;padding-bottom:3px;scrollbar-width:thin}.ux-library .familybuttons button{min-width:0;white-space:normal;text-align:start;line-height:1.3;padding:9px 10px;font-size:.8rem;border-color:#3a5870;background:#202f47}.hint{margin:8px 2px 12px;font-size:.8rem;line-height:1.5}.connections{margin-top:12px}.connections h2{font-size:.95rem}.tabs{position:fixed;bottom:0;inset-inline:0;z-index:50;display:flex;justify-content:space-around;gap:4px;margin:0;background:#111c2af5;border-top:1px solid #42606d;padding:8px max(8px,env(safe-area-inset-right)) calc(9px + env(safe-area-inset-bottom)) max(8px,env(safe-area-inset-left));box-shadow:0 -10px 28px #0006;-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px)}.tabs button{flex:1;min-width:0;min-height:57px;display:flex;flex-direction:column;justify-content:center;align-items:center;gap:3px;border:none;border-radius:12px;background:transparent;color:#b8c9d7;font-size:.73rem;padding:5px 3px}.tabs .active{background:#164f4c;color:#effffb;border:1px solid #2da397}.ux-tab-icon{font-size:1.25rem;line-height:1.1;font-weight:600}.tabs button:focus-visible{outline:3px solid #ffe1a5;outline-offset:-3px}@media(min-width:700px){.shell{padding:24px 22px}.tabs{position:sticky;top:0;bottom:auto;z-index:20;border:1px solid #35516a;border-radius:14px;margin:12px 0;padding:6px;box-shadow:none;max-width:760px}.tabs button{min-height:48px;flex-direction:row;font-size:.9rem;gap:8px}.ux-home-grid{grid-template-columns:repeat(4,minmax(0,1fr))}.ux-library .familybuttons{grid-template-columns:repeat(4,minmax(0,1fr));max-height:230px}.workspace{padding:16px}}@media(prefers-reduced-motion:reduce){.ux-home-grid button{transition:none}}
