/* Logic Studio — isolated from Circuit Studio and the rest of Tech Lab */
.logic-page{color:#eaf4ff}.logic-page .logic-shell{padding:90px clamp(13px,2vw,32px) 40px;background:radial-gradient(ellipse at 55% 0,#182d49,#0a1220 54%,#080e19)}.logic-container{max-width:1800px;margin:auto;min-width:0}.logic-container *{box-sizing:border-box}.logic-container button,.logic-container input,.logic-container select{font:inherit}.logic-container button{cursor:pointer}.logic-container [hidden]{display:none!important}.logic-container :focus-visible{outline:2px solid #7be5ec;outline-offset:3px}.logic-container a{text-decoration:none}.logic-header{display:flex;align-items:flex-end;justify-content:space-between;gap:25px;margin:16px 0 24px}.logic-back{font-size:12px;font-weight:800;color:#8ce4ec;display:inline-block;border:1px solid #355e77;padding:9px 13px;border-radius:9px;margin-bottom:18px}.logic-back:hover{background:#183449}.logic-eyebrow{font-size:10px;letter-spacing:1.8px;font-weight:850;color:#72cde3}.logic-admin-mark{display:inline-block;color:#efc18b;background:#482f25;padding:5px 8px;border-radius:6px;margin-left:8px;letter-spacing:.6px}.logic-header h1{font-size:clamp(33px,4vw,54px);letter-spacing:-2px;line-height:1.1;margin:11px 0}.logic-header h1 em{color:#8ce5ed;font-style:normal}.logic-header p{color:#9eb6ca;line-height:1.7;font-size:13px;max-width:710px;margin:0}.logic-header-aside{flex-shrink:0;border:1px solid #30536b;background:#0c1d2e;border-radius:13px;padding:18px;min-width:220px;display:grid;gap:8px}.logic-header-aside span{font-size:10px;color:#7eb1c9;letter-spacing:2px}.logic-header-aside strong{font:800 20px Consolas,monospace;color:#99e8ec}.logic-header-aside small{font-size:11px;color:#8ca8bd}
.logic-toolbar{border:1px solid #2d4760;border-radius:14px;background:#101f33;display:flex;gap:9px;flex-wrap:wrap;padding:10px;margin-bottom:17px;align-items:center}.logic-toolbar-group{display:flex;gap:6px;flex-wrap:wrap;align-items:center;padding-right:10px;border-right:1px solid #29455a}.logic-toolbar-group:last-of-type{border-right:0}.logic-toolbar button,.logic-zoom-buttons button,.logic-wide,.logic-analysis-actions button{border:1px solid #375973;background:#152f46;color:#c5e4f4;border-radius:8px;font-size:11px;font-weight:800;padding:10px 12px;white-space:nowrap}.logic-toolbar button:hover,.logic-zoom-buttons button:hover,.logic-wide:hover,.logic-analysis-actions button:hover{background:#1d4159;border-color:#64bbd2}.logic-toolbar button.active{background:#174b5b;border-color:#71d5da;color:#b0f9ef}.logic-toolbar button.logic-primary{border-color:#3c947d;color:#a6f2d3}.logic-toolbar button:disabled{opacity:.4;cursor:not-allowed}.logic-layout{display:grid;grid-template-columns:minmax(185px,230px) minmax(0,1fr) minmax(200px,258px);gap:14px;align-items:start}.logic-sidebar{display:grid;gap:14px;min-width:0}.logic-panel{border:1px solid #2b465e;background:linear-gradient(140deg,#102036,#0b1828);border-radius:14px;padding:18px;min-width:0}.logic-panel h2{font-size:16px;letter-spacing:-.25px;margin:0 0 13px;color:#eef8ff}.logic-help{color:#93afc5;line-height:1.65;font-size:11px;margin:0 0 15px}.logic-help-bottom{border-top:1px solid #2a4156;padding-top:13px;margin:14px 0 0}.logic-help code{color:#b0f4e4;overflow-wrap:anywhere}.logic-category{font-size:9px;letter-spacing:1.5px;font-weight:850;color:#71cfe1;margin:18px 0 9px}.logic-palette{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:7px}.logic-palette button{display:flex;align-items:center;gap:7px;border:1px solid #31506a;background:#10283c;color:#d8eaf6;border-radius:8px;padding:9px 7px;font-size:11px;text-align:left;min-width:0}.logic-palette button:hover{background:#1c4157;border-color:#6ac5df}.logic-palette i{display:grid;place-items:center;width:22px;height:23px;font-style:normal;border:1px solid #3d6e82;background:#193a51;border-radius:5px;color:#99f0ec;font-size:12px;flex:0 0 22px;font-weight:900}.logic-field{display:flex;flex-direction:column;gap:7px;font-size:11px;font-weight:750;color:#acc6d8;margin:12px 0}.logic-field input,.logic-field select{width:100%;min-width:0;border:1px solid #385b75;border-radius:8px;background:#071524;color:#e6f9ff;padding:10px;font-size:12px}.logic-wide{width:100%;white-space:normal}.logic-selected-id{font-size:14px;font-weight:800;color:#8de6e9;line-height:1.6;overflow-wrap:anywhere}.logic-validation{padding:10px 11px;border-radius:9px;border:1px solid #36566d;background:#0b1d2b;color:#bad5e4;font-size:11px;line-height:1.65;max-height:180px;overflow:auto}.logic-validation p{margin:0 0 9px}.logic-validation p:last-child{margin-bottom:0}.logic-validation.warn{border-color:#8e6549;background:#291f21;color:#efc6a8}.logic-validation.good{border-color:#3a8877;color:#abe7d5}.logic-metrics{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-top:10px}.logic-metrics div{border:1px solid #2f465d;background:#0a1b2d;border-radius:9px;padding:12px 8px;display:grid;gap:4px}.logic-metrics strong{font-size:21px;color:#98efe8}.logic-metrics span{font-size:10px;color:#93adc3}.logic-guide{padding-left:17px;margin:0;display:grid;gap:9px;color:#95b0c7;font-size:11px;line-height:1.5}.logic-guide b{color:#b4f2ee;font-family:Consolas,monospace}
.logic-workspace{min-width:0;border:1px solid #2c4965;background:#0b1727;border-radius:14px;overflow:hidden}.logic-boardhead,.logic-board-foot{display:flex;justify-content:space-between;gap:12px;align-items:center;padding:12px 15px;color:#88a7c2;font-size:10px;font-weight:800;letter-spacing:.65px}.logic-boardhead{border-bottom:1px solid #2b435d}.logic-dot{display:inline-block;width:7px;height:7px;background:#6de5bd;border-radius:50%;margin-right:8px;box-shadow:0 0 10px #6de5bd80}.logic-board{position:relative;background:#081626;min-width:0;overflow:hidden}.logic-board svg{width:100%;height:min(62vh,715px);min-height:470px;display:block;touch-action:none;user-select:none}.logic-board.mode-pan svg{cursor:grab}.logic-board.mode-pan svg:active{cursor:grabbing}.logic-board.mode-wire svg{cursor:crosshair}.logic-board-overlay{position:absolute;bottom:13px;left:13px;right:13px;pointer-events:none;display:flex;justify-content:space-between}.logic-board-overlay span{background:#0c2034de;border:1px solid #365572;border-radius:6px;padding:6px 9px;font-size:9px;font-weight:900;color:#91c5dc;letter-spacing:.8px}.logic-board-foot{border-top:1px solid #2b435d;letter-spacing:0;flex-wrap:wrap}.logic-state-key{display:flex;flex-wrap:wrap;gap:12px}.logic-state-key span{display:flex;align-items:center;gap:5px;font-size:9px}.logic-state-key i{display:inline-block;width:11px;height:5px;border-radius:3px}.logic-state-key i.high{background:#56dfac}.logic-state-key i.low{background:#56718d}.logic-state-key i.unknown{background:#e0ac67}.logic-state-key i.error{background:#ee7483}.logic-zoom-buttons{display:flex;gap:6px}.logic-zoom-buttons button{padding:6px 10px}
/* SVG styles are defined here for the browser and mirrored in the SVG export markup. */
#ls-canvas .ls-node-body{fill:#112b41;stroke:#4a7c97;stroke-width:2}#ls-canvas .ls-node-selected .ls-node-body{stroke:#9feaf0;stroke-width:3}#ls-canvas .ls-node-title{font:bold 17px 'Segoe UI',sans-serif;fill:#eaf8ff;text-anchor:middle;pointer-events:none}#ls-canvas .ls-node-caption{font:11px Consolas,monospace;fill:#9cbad0;text-anchor:middle;pointer-events:none}#ls-canvas .ls-gate-shape{fill:#153f55;stroke:#93dce7;stroke-width:2.5;pointer-events:none}#ls-canvas .ls-wire-path{fill:none;stroke-width:4;stroke-linecap:round;stroke-linejoin:round;pointer-events:stroke;cursor:pointer}#ls-canvas .ls-wire-hit{fill:none;stroke:transparent;stroke-width:17;pointer-events:stroke;cursor:pointer}#ls-canvas .ls-wire-selected{stroke-width:7}#ls-canvas .ls-port{stroke:#def0fc;stroke-width:2;cursor:crosshair}#ls-canvas .ls-node-switch{cursor:pointer}#ls-canvas .ls-led-glow{filter:drop-shadow(0 0 11px rgba(73,233,176,.65))}#ls-canvas .ls-node{cursor:grab}#ls-canvas .ls-node:active{cursor:grabbing}#ls-canvas .ls-wire-handle{fill:#0e3145;stroke:#8ce8f0;stroke-width:2.2;cursor:move}
.logic-bottom{border:1px solid #2d4860;background:linear-gradient(150deg,#0f1e31,#0b1729);border-radius:15px;margin-top:17px;overflow:hidden}.logic-analysis-header{display:flex;justify-content:space-between;align-items:flex-end;padding:20px 24px 12px}.logic-analysis-header h2{font-size:24px;margin:5px 0 0}.logic-analysis-header>span{font-size:11px;color:#92afc4}.logic-tabrow{display:flex;gap:7px;flex-wrap:wrap;padding:0 24px 13px;border-bottom:1px solid #2b4760}.logic-tabrow button{border:1px solid #35516b;background:#11283c;color:#a8c3d6;border-radius:8px;padding:10px 14px;font-weight:800;font-size:11px}.logic-tabrow button.active{background:#16465a;color:#b4f6f6;border-color:#69d0d8}.logic-analysis-content{padding:19px 24px;min-height:112px;color:#abc4d6;font-size:12px}.logic-analysis-content p{line-height:1.7}.logic-analysis-actions{display:flex;align-items:flex-start;justify-content:space-between;gap:10px;flex-wrap:wrap}.logic-analysis-actions p{margin:0}.logic-table-scroll{overflow:auto;max-height:420px}.logic-truth-table{border-collapse:collapse;width:100%;white-space:nowrap;font:12px Consolas,monospace}.logic-truth-table th,.logic-truth-table td{border-bottom:1px solid #28445c;padding:10px 14px;text-align:center}.logic-truth-table th{background:#19374a;color:#a0edf0;position:sticky;top:0;z-index:1}.logic-truth-table td{color:#d8eaf3}.logic-truth-table td.one{color:#7deac0;font-weight:850}.logic-truth-table td.invalid{color:#f5bd79}.logic-expressions{display:grid;gap:10px}.logic-expression{border:1px solid #31516c;background:#0c1d30;padding:12px;border-radius:9px;overflow-wrap:anywhere;color:#c2eef5}.logic-expression strong{color:#87e9db;margin-right:12px}.logic-toast{position:fixed;bottom:26px;right:25px;max-width:min(400px,85vw);padding:12px 15px;background:#153c4f;color:#dff9fb;border:1px solid #6bafc0;border-radius:10px;z-index:30;font-size:12px;box-shadow:0 12px 30px #0009;opacity:0;pointer-events:none;transition:opacity .18s}.logic-toast.visible{opacity:1}
@media(max-width:1320px){.logic-layout{grid-template-columns:minmax(150px,200px) minmax(0,1fr)}.logic-right{grid-column:1 / -1;display:grid;grid-template-columns:repeat(3,minmax(0,1fr))}.logic-board svg{height:580px}}
@media(max-width:850px){.logic-header-aside{display:none}.logic-layout{grid-template-columns:minmax(0,1fr)}.logic-left{display:grid;grid-template-columns:1fr 1fr}.logic-right{grid-column:auto;grid-template-columns:1fr 1fr}.logic-right .logic-panel:last-child{grid-column:1 / -1}.logic-board svg{height:480px;min-height:370px}}
@media(max-width:600px){.logic-page .logic-shell{padding:96px 10px 25px}.logic-left,.logic-right{grid-template-columns:1fr}.logic-right .logic-panel:last-child{grid-column:auto}.logic-toolbar{gap:7px}.logic-toolbar-group{border-right:0;padding-right:0}.logic-toolbar button{padding:9px 10px;font-size:10px}.logic-board svg{height:390px;min-height:300px}.logic-boardhead{font-size:8px;flex-wrap:wrap}.logic-panel{padding:14px}.logic-analysis-header,.logic-analysis-content{padding:15px}.logic-tabrow{padding:0 15px 12px}}
/* Keep components tappable on small screens rather than shrinking a 1200-unit canvas to 390 px. */
@media(max-width:600px){.logic-board{overflow-x:auto;scrollbar-width:thin;scrollbar-color:#4a7992 #0b1c2a}.logic-board svg{width:860px;min-width:860px;height:510px;min-height:510px}.logic-board-overlay{position:sticky;left:12px;right:auto;width:calc(100% - 24px);min-width:0;bottom:10px}.logic-board-overlay span{font-size:8px}}

/* Sequential editing, per-expression actions, and Karnaugh map. */
.logic-clock-badge{color:#a7d8e6;background:#0e283b;border:1px solid #385b72;padding:8px 11px;border-radius:8px;font:700 11px Consolas,monospace}
#ls-canvas .ls-pin-caption{font:700 10px Consolas,monospace;fill:#a8daec;text-anchor:start;pointer-events:none}
#ls-canvas .ls-pin-out{text-anchor:end}
.logic-expression{display:flex;flex-wrap:wrap;gap:10px;align-items:center}
.logic-expression code{color:#e0f9fa;flex:1 1 220px;overflow-wrap:anywhere;line-height:1.75}
.logic-expression-actions,.logic-export-actions{display:flex;align-items:center;gap:7px;flex-wrap:wrap}
.logic-expression-actions button,.logic-export-actions button{border:1px solid #3c6882;border-radius:8px;background:#153a51;color:#c5f0f4;font:750 11px 'Segoe UI',sans-serif;padding:9px 12px;cursor:pointer}
.logic-expression-actions button:hover,.logic-export-actions button:hover{background:#20546a}
.logic-expression-actions button:disabled{opacity:.45;cursor:not-allowed}
.logic-kmap-toolbar{display:flex;justify-content:space-between;align-items:flex-end;gap:13px;flex-wrap:wrap;margin-bottom:14px}
.logic-kmap-toolbar label{display:flex;gap:10px;align-items:center;color:#bdd8eb;font-size:12px;font-weight:750}
.logic-kmap-toolbar select{background:#071525;border:1px solid #3d607b;border-radius:8px;padding:10px;color:#dff7ff;min-width:125px}
.logic-kmap-scroll{width:fit-content;max-width:100%;overflow-x:auto;border:1px solid #2e4c61;border-radius:12px;background:#091b2b;padding:10px;margin:0 auto}
.logic-kmap-scroll svg{display:block;width:auto;height:auto;max-width:100%;min-width:0;margin:0 auto}
.logic-kmap-groups{display:flex;flex-wrap:wrap;gap:8px;margin:14px 0}
.logic-group-tag{background:#10293c;border:1px solid #4f758a;border-radius:7px;color:#d8ebf6;padding:7px 10px;font:650 11px Consolas,monospace}

.logic-clock-rate{display:inline-flex;gap:7px;align-items:center;color:#a7d8e6;font-size:11px;font-weight:700}
.logic-clock-rate select{border:1px solid #39627b;background:#071626;border-radius:7px;color:#e8f8ff;padding:8px;min-width:65px}

#ls-canvas .ls-clock-label{font:700 12px Consolas,monospace;fill:#83dfe4;text-anchor:middle;pointer-events:none;}
.logic-field small{color:#83a9c0;font-size:10px;line-height:1.5;}

/* Hidden selected-component controls must stay hidden despite the flex field layout. */
.logic-page .logic-field[hidden]{display:none!important;}
