:root,[data-theme="dark"]{--lg-bg:#0f1117;--lg-panel:#181b22;--lg-panel-deep:#12141a;--lg-border:#2a2e38;--lg-text:#e2e8f0;--lg-muted:#64748b;--lg-accent:#a78bfa;--lg-accent-dim:rgba(167,139,250,.15);--lg-canvas-bg:#13151c;--lg-grid-dot:#252830;--lg-gate-fill:#1e2230;--lg-gate-stroke:#8b95a8;--lg-success:#22c55e;--lg-error:#ef4444;--lg-warn:#f59e0b;--lg-wire-0:#64748b;--lg-wire-1:#22c55e;--lg-wire-x:#3b82f6;--lg-wire-e:#ef4444;--lg-hover:rgba(167,139,250,.08);--lg-header-h:44px}[data-theme="light"]{--lg-bg:#f1f5f9;--lg-panel:#ffffff;--lg-panel-deep:#f8fafc;--lg-border:#e2e8f0;--lg-text:#1e293b;--lg-muted:#64748b;--lg-accent:#7c3aed;--lg-accent-dim:rgba(124,58,237,.1);--lg-canvas-bg:#f8fafc;--lg-grid-dot:#cbd5e1;--lg-gate-fill:#ffffff;--lg-gate-stroke:#475569;--lg-hover:rgba(124,58,237,.06)}*{box-sizing:border-box;margin:0;padding:0}.lg-app{display:flex;flex-direction:column;height:calc(100vh - var(--header-height-desktop,72px) - 40px - var(--lg-ad-bottom-h,100px));background:var(--lg-bg);color:var(--lg-text);font-family:"DM Sans",sans-serif;overflow:hidden}.lg-adsense-bar{height:var(--lg-ad-bottom-h,100px);max-height:100px;overflow:hidden;text-align:center;background:var(--lg-panel-deep);border-top:1px solid var(--lg-border);display:flex;align-items:center;justify-content:center;flex-shrink:0}.lg-hero-bar{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap;flex-shrink:0;max-width:100%;padding:5px 14px;padding-top:calc(var(--header-height-desktop,72px) + 5px);border-bottom:1px solid var(--lg-border);background:var(--lg-panel-deep);overflow:hidden;position:relative;z-index:2}.lg-hero-h1{font:600 15px/1.3"Sora",sans-serif;color:var(--lg-text);margin:0;white-space:nowrap}.lg-toolbar{display:flex;align-items:center;gap:2px;height:var(--lg-header-h);padding:0 10px;background:var(--lg-panel);border-bottom:1px solid var(--lg-border);flex-shrink:0}.lg-tb-group{display:flex;align-items:center;gap:2px;padding:0 6px}.lg-tb-group+.lg-tb-group{border-left:1px solid var(--lg-border)}.lg-tb-btn{display:inline-flex;align-items:center;justify-content:center;gap:5px;height:30px;padding:0 10px;border:1px solid transparent;border-radius:5px;background:transparent;color:var(--lg-text);font:500 12px/1"DM Sans",sans-serif;cursor:pointer;white-space:nowrap;transition:background .15s,border-color .15s}.lg-tb-btn:hover{background:var(--lg-hover)}.lg-tb-btn.active{background:var(--lg-accent-dim);border-color:var(--lg-accent);color:var(--lg-accent)}.lg-tb-btn svg{width:16px;height:16px;flex-shrink:0}.lg-tb-btn#btnSimulate.active{background:rgba(34,197,94,.12);color:#22c55e;border-color:#22c55e}.lg-tb-btn#btnSimulate:not(.active){color:var(--lg-muted)}.lg-tb-btn#btnAI{background:linear-gradient(135deg,rgba(167,139,250,.15),rgba(236,72,153,.15));color:#a78bfa;border-color:rgba(167,139,250,.3)}.lg-tb-btn#btnAI:hover{background:linear-gradient(135deg,rgba(167,139,250,.25),rgba(236,72,153,.25))}.lg-tb-btn#btnAI:disabled{opacity:.5;cursor:wait}.lg-ai-panel{display:none;flex-direction:column;flex-shrink:0}.lg-ai-panel.open{display:flex}.lg-ai-bar{display:flex;align-items:center;gap:8px;padding:4px 12px;background:linear-gradient(90deg,rgba(167,139,250,.08),rgba(236,72,153,.08));border-bottom:1px solid var(--lg-border);flex-shrink:0;height:36px}.lg-ai-input{flex:1;min-width:0;padding:4px 10px;border:1px solid rgba(167,139,250,.3);border-radius:6px;background:rgba(0,0,0,.2);color:var(--lg-text);font:12px/1.3"DM Sans",sans-serif;outline:none}.lg-ai-input:focus{border-color:#a78bfa}.lg-ai-input::placeholder{color:var(--lg-muted);font-size:11px}.lg-ai-btn{padding:4px 14px;border:none;border-radius:6px;background:#a78bfa;color:#fff;font:600 12px/1"DM Sans",sans-serif;cursor:pointer;white-space:nowrap}.lg-ai-btn:hover{background:#8b5cf6}.lg-ai-btn:disabled{opacity:.5;cursor:wait}.lg-ai-close{padding:2px 8px;border:none;background:transparent;color:var(--lg-muted);font-size:16px;cursor:pointer;line-height:1}.lg-ai-close:hover{color:#ef4444}.lg-ai-status{font-size:11px;white-space:nowrap;flex-shrink:0;overflow:hidden;text-overflow:ellipsis}.lg-ai-status.loading{color:#a78bfa}.lg-ai-status.success{color:#22c55e}.lg-ai-status.error{color:#ef4444}.lg-ai-examples{display:flex;align-items:center;gap:6px;padding:3px 12px;background:rgba(167,139,250,.04);border-bottom:1px solid var(--lg-border);flex-shrink:0;overflow-x:auto;scrollbar-width:none}.lg-ai-examples::-webkit-scrollbar{display:none}.lg-ai-label{color:var(--lg-muted);font:11px/1"DM Sans",sans-serif;white-space:nowrap;flex-shrink:0}.lg-ai-chip{padding:2px 10px;border:1px solid rgba(167,139,250,.25);border-radius:12px;background:transparent;color:#c4b5fd;font:11px/1.3"DM Sans",sans-serif;cursor:pointer;white-space:nowrap;flex-shrink:0;transition:all .15s}.lg-ai-chip:hover{background:rgba(167,139,250,.15);border-color:#a78bfa;color:#e9d5ff}.lg-tb-sep{width:1px;height:20px;background:var(--lg-border);margin:0 4px}.lg-circuit-tabs{display:flex;align-items:center;gap:2px;height:28px;padding:0 8px;background:var(--lg-panel-deep);border-bottom:1px solid var(--lg-border);flex-shrink:0;overflow-x:auto}.lg-circuit-tab{height:24px;padding:0 12px;border:1px solid transparent;border-radius:4px 4px 0 0;background:transparent;color:var(--lg-muted);font:500 11px/1"Fira Code",monospace;cursor:pointer;white-space:nowrap;transition:background .12s}.lg-circuit-tab:hover{background:var(--lg-hover)}.lg-circuit-tab.active{background:var(--lg-panel);color:var(--lg-text);border-color:var(--lg-border);border-bottom-color:var(--lg-panel)}.lg-breadcrumb{padding:4px 12px;font:400 11px/1"DM Sans",sans-serif;color:var(--lg-muted);background:var(--lg-panel-deep);border-bottom:1px solid var(--lg-border);flex-shrink:0}.lg-breadcrumb a{color:var(--lg-accent);text-decoration:none;cursor:pointer}.lg-breadcrumb a:hover{text-decoration:underline}.lg-breadcrumb .sep{margin:0 6px;color:var(--lg-border)}.lg-main{display:flex;flex:1;min-height:0}.lg-library{width:200px;flex-shrink:0;background:var(--lg-panel);border-right:1px solid var(--lg-border);overflow-y:auto;overflow-x:hidden}.lg-lib-section .lg-lib-body{display:none}.lg-lib-section.open .lg-lib-body{display:block}.lg-lib-header{padding:10px 12px 6px;font:600 11px/1"DM Sans",sans-serif;color:var(--lg-muted);text-transform:uppercase;letter-spacing:.05em}.lg-lib-header.lg-collapsible{cursor:pointer;display:flex;align-items:center;justify-content:space-between;padding:8px 12px;user-select:none;transition:color .12s}.lg-lib-header.lg-collapsible:hover{color:var(--lg-text)}.lg-chevron{display:inline-block;width:0;height:0;border-left:4px solid transparent;border-right:4px solid transparent;border-top:5px solid var(--lg-muted);transition:transform .15s}.lg-lib-section.open .lg-chevron{transform:rotate(180deg)}.ad-lg-hero{flex:1;min-width:300px;max-width:970px;min-height:50px;max-height:100px;overflow:hidden;text-align:center;flex-shrink:0;position:relative;z-index:1}.lg-lib-item{display:flex;align-items:center;gap:8px;padding:6px 12px;cursor:pointer;font:400 13px/1.4"DM Sans",sans-serif;color:var(--lg-text);transition:background .12s;user-select:none}.lg-lib-item:hover{background:var(--lg-hover)}.lg-lib-item.active{background:var(--lg-accent-dim);color:var(--lg-accent)}.lg-lib-icon{width:28px;height:22px;display:flex;align-items:center;justify-content:center;flex-shrink:0}.lg-lib-icon svg{width:100%;height:100%}.lg-lib-search{width:100%;padding:5px 8px;border:1px solid var(--lg-border);border-radius:4px;background:var(--lg-panel-deep);color:var(--lg-text);font:400 11px/1.3"DM Sans",sans-serif;outline:none}.lg-lib-search:focus{border-color:var(--lg-accent)}.lg-lib-search::placeholder{color:var(--lg-muted)}.lg-tb-select{height:28px;padding:0 6px;border:1px solid var(--lg-border);border-radius:4px;background:var(--lg-panel-deep);color:var(--lg-text);font:500 11px/1"DM Sans",sans-serif;cursor:pointer;outline:none;max-width:140px}.lg-tb-select:focus{border-color:var(--lg-accent)}.lg-canvas-wrap{flex:1;position:relative;overflow:hidden;background:var(--lg-canvas-bg);isolation:isolate;z-index:0}.lg-canvas-wrap svg{width:100%;height:100%;display:block}.lg-port{cursor:crosshair;transition:r .12s}.lg-port:hover{r:7}.lg-clickable{cursor:pointer}.lg-status{display:flex;align-items:center;gap:12px;height:26px;padding:0 12px;background:var(--lg-panel-deep);border-top:1px solid var(--lg-border);font:400 11px/1"Fira Code",monospace;color:var(--lg-muted);flex-shrink:0}.lg-status-item{display:flex;align-items:center;gap:4px}.lg-zoom-badge{position:absolute;bottom:8px;right:8px;display:flex;align-items:center;gap:2px;background:var(--lg-panel);border:1px solid var(--lg-border);border-radius:6px;overflow:hidden}.lg-zoom-btn{width:28px;height:26px;border:none;background:transparent;color:var(--lg-text);font:500 13px/1"DM Sans",sans-serif;cursor:pointer;display:flex;align-items:center;justify-content:center}.lg-zoom-btn:hover{background:var(--lg-hover)}.lg-zoom-label{font:500 11px/1"Fira Code",monospace;color:var(--lg-muted);min-width:36px;text-align:center}.lg-help-banner{position:absolute;top:10px;left:50%;transform:translateX(-50%);padding:6px 16px;background:var(--lg-panel);border:1px solid var(--lg-border);border-radius:8px;font:400 12px/1.4"DM Sans",sans-serif;color:var(--lg-muted);pointer-events:none;opacity:0;transition:opacity .2s;z-index:10}.lg-help-banner.visible{opacity:1}.lg-analysis{width:340px;flex-shrink:0;background:var(--lg-panel);border-left:1px solid var(--lg-border);display:flex;flex-direction:column;overflow:hidden}.lg-analysis-header{display:flex;align-items:center;justify-content:space-between;padding:8px 12px;font:600 12px/1"DM Sans",sans-serif;color:var(--lg-text);border-bottom:1px solid var(--lg-border);flex-shrink:0}.lg-analysis-body{flex:1;overflow-y:auto;padding:10px;font:400 12px/1.5"DM Sans",sans-serif;color:var(--lg-text)}.lg-analysis-body h3{font:600 11px/1.4"DM Sans",sans-serif;color:var(--lg-accent);text-transform:uppercase;letter-spacing:.04em;margin:14px 0 6px}.lg-analysis-body h3:first-child{margin-top:0}.lg-tt{width:100%;border-collapse:collapse;font:400 11px/1.3"Fira Code",monospace;margin-bottom:10px}.lg-tt th{background:var(--lg-panel-deep);color:var(--lg-muted);font-weight:600;padding:3px 6px;border:1px solid var(--lg-border)}.lg-tt td{padding:2px 6px;text-align:center;border:1px solid var(--lg-border)}.lg-tt .tt-1{color:var(--lg-success);font-weight:600}.lg-tt .tt-0{color:var(--lg-muted)}.lg-tt .tt-sep{border-left:2px solid var(--lg-accent)}.lg-expr{font:500 12px/1.6"Fira Code",monospace;color:var(--lg-text);padding:6px 8px;background:var(--lg-panel-deep);border-radius:4px;word-break:break-all;margin-bottom:8px}.lg-expr-label{font:600 10px/1"DM Sans",sans-serif;color:var(--lg-muted);margin-bottom:2px}.lg-kmap{border-collapse:collapse;margin-bottom:10px}.lg-kmap th{font:600 10px/1"Fira Code",monospace;color:var(--lg-muted);padding:3px 8px}.lg-kmap td{width:32px;height:28px;text-align:center;font:600 13px/1"Fira Code",monospace;border:1px solid var(--lg-border)}.lg-kmap .km-1{color:var(--lg-success);background:rgba(34,197,94,.08)}.lg-kmap .km-0{color:var(--lg-muted)}.lg-kmap .km-header{background:var(--lg-panel-deep)}.lg-chrono{flex-shrink:0;border-top:1px solid var(--lg-border);background:var(--lg-panel);overflow:hidden;display:flex;flex-direction:column}.lg-chrono-header{display:flex;align-items:center;gap:6px;padding:5px 10px;border-bottom:1px solid var(--lg-border);flex-shrink:0}.lg-chrono-header span{font:600 11px/1"DM Sans",sans-serif;color:var(--lg-text)}.lg-chrono-body{flex:1;overflow:hidden}.lg-chrono-wrap{display:flex;height:100%}.lg-chrono-labels{flex-shrink:0;width:70px;border-right:1px solid var(--lg-border);overflow:hidden}.lg-chrono-label{display:flex;align-items:center;padding:0 8px;font:500 10px/1"Fira Code",monospace;color:var(--lg-muted);border-bottom:1px solid var(--lg-border);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.lg-chrono-waves{flex:1;overflow-x:auto;overflow-y:hidden}.lg-chrono-waves svg{display:block}.lg-sim-mode .lg-canvas-wrap{border-top:2px solid rgba(34,197,94,.25)}@media (max-width:900px){.lg-analysis{width:260px}.lg-library{width:160px}.lg-tb-btn span{display:none}.lg-tb-select{max-width:100px}}@media (max-width:768px){.lg-library{width:140px}.lg-hero-bar{justify-content:center;padding:4px 8px}.lg-hero-h1{font-size:13px}.ad-lg-hero{display:none}.lg-adsense-bar{height:60px;--lg-ad-bottom-h:60px}.lg-app{height:calc(100vh - var(--header-height-desktop,72px) - 32px - 60px)}.lg-circuit-tabs{display:none}.lg-analysis{display:none}.lg-chrono{height:120px}}@media (max-width:540px){.lg-library{display:none}.lg-toolbar{overflow-x:auto;gap:0;padding:0 4px}.lg-toolbar .lg-tb-group{padding:0 2px}}